From 5c5091ea23cf9894d8cc701fcbae9520f3124805 Mon Sep 17 00:00:00 2001 From: Max Ritter Date: Wed, 18 Feb 2026 07:19:30 +0100 Subject: [PATCH 1/7] fix: Added Apple Silicon Acceleration for Vexor Semantic Search --- installer/platform_utils.py | 7 + installer/steps/dependencies.py | 131 +++++++++++- .../tests/unit/steps/test_dependencies.py | 199 ++++++++++++++++++ pilot/rules/cli-tools.md | 41 ++-- pilot/rules/research-tools.md | 16 +- pilot/rules/task-and-workflow.md | 6 +- pilot/scripts/mcp-server.cjs | 2 +- pilot/scripts/worker-service.cjs | 4 +- 8 files changed, 375 insertions(+), 31 deletions(-) diff --git a/installer/platform_utils.py b/installer/platform_utils.py index 110090a9..e8a1d822 100644 --- a/installer/platform_utils.py +++ b/installer/platform_utils.py @@ -101,6 +101,13 @@ def is_linux_arm64() -> bool: return platform.system() == "Linux" and platform.machine() in ("aarch64", "arm64") +def is_macos_arm64() -> bool: + """Check if running on macOS with Apple Silicon (M-series chip).""" + import platform + + return platform.system() == "Darwin" and platform.machine() == "arm64" + + def get_shell_config_files() -> list[Path]: """Get list of shell configuration files for the current user.""" home = Path.home() diff --git a/installer/steps/dependencies.py b/installer/steps/dependencies.py index bd6161ef..d0494941 100644 --- a/installer/steps/dependencies.py +++ b/installer/steps/dependencies.py @@ -9,9 +9,12 @@ from typing import Any from installer.context import InstallContext -from installer.platform_utils import command_exists, is_linux_arm64, npm_global_cmd +from installer.platform_utils import command_exists, is_linux_arm64, is_macos_arm64, npm_global_cmd from installer.steps.base import BaseStep +VEXOR_FORK_URL = "https://github.com/maxritter/vexor.git" +VEXOR_MLX_BRANCH = "mlx-support" + MAX_RETRIES = 3 RETRY_DELAY = 2 @@ -255,6 +258,87 @@ def _is_vexor_local_model_installed() -> bool: return False +def _is_vexor_mlx_installed() -> bool: + """Check if vexor is installed with MLX support (not the CPU-only version). + + Uses uv to inspect vexor's tool environment — no python3 assumption needed. + """ + if not command_exists("vexor"): + return False + + try: + dir_result = subprocess.run( + ["uv", "tool", "dir"], + capture_output=True, + text=True, + timeout=10, + ) + if dir_result.returncode != 0: + return False + vexor_env = Path(dir_result.stdout.strip()) / "vexor" + if not vexor_env.exists(): + return False + + result = subprocess.run( + ["uv", "pip", "show", "mlx-embedding-models", "--python", str(vexor_env)], + capture_output=True, + text=True, + timeout=15, + ) + return result.returncode == 0 + except Exception: + return False + + +def _clone_vexor_fork() -> Path | None: + """Clone the vexor fork with MLX support to ~/.pilot/vexor.""" + vexor_dir = Path.home() / ".pilot" / "vexor" + + if vexor_dir.exists(): + try: + subprocess.run( + ["git", "fetch", "origin", VEXOR_MLX_BRANCH], + capture_output=True, + cwd=vexor_dir, + timeout=60, + ) + subprocess.run( + ["git", "checkout", VEXOR_MLX_BRANCH], + capture_output=True, + cwd=vexor_dir, + timeout=30, + ) + subprocess.run( + ["git", "pull", "origin", VEXOR_MLX_BRANCH], + capture_output=True, + cwd=vexor_dir, + timeout=60, + ) + return vexor_dir + except Exception: + return None + + try: + vexor_dir.parent.mkdir(parents=True, exist_ok=True) + result = subprocess.run( + ["git", "clone", "--branch", VEXOR_MLX_BRANCH, "--single-branch", VEXOR_FORK_URL, str(vexor_dir)], + capture_output=True, + text=True, + timeout=120, + ) + if result.returncode == 0: + return vexor_dir + except Exception: + pass + return None + + +def _install_vexor_from_local(vexor_dir: Path, extra: str = "local-mlx") -> bool: + """Install vexor from a local clone with the specified extra.""" + cmd = f'uv tool install "{vexor_dir}[{extra}]" --reinstall' + return _run_bash_with_retry(cmd, timeout=300) + + def _setup_vexor_local_model(ui: Any = None) -> bool: """Download and setup the local embedding model for Vexor.""" if _is_vexor_local_model_installed(): @@ -278,8 +362,15 @@ def _setup_vexor_local_model(ui: Any = None) -> bool: def install_vexor(use_local: bool = False, ui: Any = None) -> bool: - """Install Vexor semantic search tool and configure defaults.""" + """Install Vexor semantic search tool and configure defaults. + + On macOS arm64, installs from fork with MLX support for Apple Silicon GPU. + On other platforms, installs the standard CPU-based local embeddings. + """ if use_local: + if is_macos_arm64(): + return _install_vexor_mlx(ui) + if command_exists("vexor") and _is_vexor_local_model_installed(): _configure_vexor_local() return True @@ -296,6 +387,34 @@ def install_vexor(use_local: bool = False, ui: Any = None) -> bool: return True +def _install_vexor_mlx(ui: Any = None) -> bool: + """Install Vexor with MLX support from fork for macOS Apple Silicon.""" + if _is_vexor_mlx_installed() and _is_vexor_local_model_installed(): + _configure_vexor_local() + return True + + vexor_dir = _clone_vexor_fork() + if vexor_dir is None: + if ui: + ui.warning("Could not clone MLX fork — falling back to CPU embeddings") + if not command_exists("vexor"): + if not _run_bash_with_retry("uv tool install 'vexor[local]'"): + return False + _configure_vexor_local() + return _setup_vexor_local_model(ui) + + if not _install_vexor_from_local(vexor_dir, extra="local-mlx"): + if ui: + ui.warning("MLX install failed — falling back to CPU embeddings") + if not _run_bash_with_retry("uv tool install 'vexor[local]'"): + return False + _configure_vexor_local() + return _setup_vexor_local_model(ui) + + _configure_vexor_local() + return _setup_vexor_local_model(ui) + + def install_mcp_cli() -> bool: """Install mcp-cli for MCP server interaction. @@ -547,8 +666,12 @@ def _install_vexor_with_ui(ui: Any) -> bool: """Install Vexor with local embeddings (GPU auto-detected).""" from installer.platform_utils import has_nvidia_gpu - use_cuda = has_nvidia_gpu() - mode_str = "CUDA" if use_cuda else "CPU" + if is_macos_arm64(): + mode_str = "MLX" + elif has_nvidia_gpu(): + mode_str = "CUDA" + else: + mode_str = "CPU" if ui: ui.status(f"Installing Vexor with local embeddings ({mode_str})...") diff --git a/installer/tests/unit/steps/test_dependencies.py b/installer/tests/unit/steps/test_dependencies.py index fd19b984..c5a28f47 100644 --- a/installer/tests/unit/steps/test_dependencies.py +++ b/installer/tests/unit/steps/test_dependencies.py @@ -570,3 +570,202 @@ def test_install_ccusage_skips_when_already_installed(self, mock_check): result = install_ccusage() assert result is True + + +class TestMacosArm64Detection: + """Test macOS Apple Silicon detection.""" + + @patch("platform.machine", return_value="arm64") + @patch("platform.system", return_value="Darwin") + def test_is_macos_arm64_true(self, _mock_system, _mock_machine): + """Returns True on macOS arm64 (Apple Silicon).""" + from installer.platform_utils import is_macos_arm64 + + assert is_macos_arm64() is True + + @patch("platform.machine", return_value="x86_64") + @patch("platform.system", return_value="Darwin") + def test_is_macos_arm64_false_intel(self, _mock_system, _mock_machine): + """Returns False on macOS Intel.""" + from installer.platform_utils import is_macos_arm64 + + assert is_macos_arm64() is False + + @patch("platform.machine", return_value="arm64") + @patch("platform.system", return_value="Linux") + def test_is_macos_arm64_false_linux(self, _mock_system, _mock_machine): + """Returns False on Linux arm64.""" + from installer.platform_utils import is_macos_arm64 + + assert is_macos_arm64() is False + + +class TestVexorMlxInstall: + """Test Vexor MLX installation for macOS Apple Silicon.""" + + @patch("installer.steps.dependencies.subprocess.run") + @patch("installer.steps.dependencies.command_exists", return_value=True) + def test_is_vexor_mlx_installed_true(self, _mock_cmd, mock_run): + """Returns True when uv pip show finds mlx-embedding-models in vexor's env.""" + from installer.steps.dependencies import _is_vexor_mlx_installed + + with tempfile.TemporaryDirectory() as tmpdir: + vexor_env = Path(tmpdir) / "vexor" + vexor_env.mkdir() + + def run_side_effect(cmd, **kwargs): + if cmd == ["uv", "tool", "dir"]: + return MagicMock(returncode=0, stdout=tmpdir + "\n") + return MagicMock(returncode=0, stdout="Name: mlx-embedding-models") + + mock_run.side_effect = run_side_effect + assert _is_vexor_mlx_installed() is True + + @patch("installer.steps.dependencies.subprocess.run") + @patch("installer.steps.dependencies.command_exists", return_value=True) + def test_is_vexor_mlx_installed_false_cpu_only(self, _mock_cmd, mock_run): + """Returns False when CPU-only vexor is installed (mlx-embedding-models absent).""" + from installer.steps.dependencies import _is_vexor_mlx_installed + + with tempfile.TemporaryDirectory() as tmpdir: + vexor_env = Path(tmpdir) / "vexor" + vexor_env.mkdir() + + def run_side_effect(cmd, **kwargs): + if cmd == ["uv", "tool", "dir"]: + return MagicMock(returncode=0, stdout=tmpdir + "\n") + return MagicMock(returncode=1, stdout="", stderr="Package not found") + + mock_run.side_effect = run_side_effect + assert _is_vexor_mlx_installed() is False + + @patch("installer.steps.dependencies.subprocess.run") + @patch("installer.steps.dependencies.command_exists", return_value=True) + def test_is_vexor_mlx_installed_false_no_vexor_env(self, _mock_cmd, mock_run): + """Returns False when vexor tool env directory does not exist.""" + from installer.steps.dependencies import _is_vexor_mlx_installed + + with tempfile.TemporaryDirectory() as tmpdir: + mock_run.return_value = MagicMock(returncode=0, stdout=tmpdir + "\n") + assert _is_vexor_mlx_installed() is False + + @patch("installer.steps.dependencies.command_exists", return_value=False) + def test_is_vexor_mlx_installed_false_no_vexor(self, _mock_cmd): + """Returns False when vexor is not installed at all.""" + from installer.steps.dependencies import _is_vexor_mlx_installed + + assert _is_vexor_mlx_installed() is False + + @patch("installer.steps.dependencies.subprocess.run") + def test_clone_vexor_fork_clones_repo(self, mock_run): + """_clone_vexor_fork clones to ~/.pilot/vexor.""" + from installer.steps.dependencies import _clone_vexor_fork + + mock_run.return_value = MagicMock(returncode=0) + + with tempfile.TemporaryDirectory() as tmpdir: + with patch.object(Path, "home", return_value=Path(tmpdir)): + (Path(tmpdir) / ".pilot").mkdir() + result = _clone_vexor_fork() + + assert result is not None + clone_call = mock_run.call_args[0][0] + assert "git" in clone_call + assert "clone" in clone_call + assert "mlx-support" in clone_call + assert "maxritter/vexor" in " ".join(clone_call) + + @patch("installer.steps.dependencies.subprocess.run") + def test_clone_vexor_fork_updates_existing(self, mock_run): + """_clone_vexor_fork fetches and checks out when dir exists.""" + from installer.steps.dependencies import _clone_vexor_fork + + mock_run.return_value = MagicMock(returncode=0) + + with tempfile.TemporaryDirectory() as tmpdir: + vexor_dir = Path(tmpdir) / ".pilot" / "vexor" + vexor_dir.mkdir(parents=True) + + with patch.object(Path, "home", return_value=Path(tmpdir)): + result = _clone_vexor_fork() + + assert result is not None + assert mock_run.call_count == 3 + + @patch("installer.steps.dependencies.subprocess.run") + def test_clone_vexor_fork_returns_none_on_failure(self, mock_run): + """_clone_vexor_fork returns None when clone fails.""" + from installer.steps.dependencies import _clone_vexor_fork + + mock_run.return_value = MagicMock(returncode=1, stderr="fatal: error") + + with tempfile.TemporaryDirectory() as tmpdir: + with patch.object(Path, "home", return_value=Path(tmpdir)): + (Path(tmpdir) / ".pilot").mkdir() + result = _clone_vexor_fork() + + assert result is None + + @patch("installer.steps.dependencies._setup_vexor_local_model", return_value=True) + @patch("installer.steps.dependencies._configure_vexor_local", return_value=True) + @patch("installer.steps.dependencies._install_vexor_from_local", return_value=True) + @patch("installer.steps.dependencies._clone_vexor_fork") + @patch("installer.steps.dependencies._is_vexor_local_model_installed", return_value=False) + @patch("installer.steps.dependencies._is_vexor_mlx_installed", return_value=False) + def test_install_vexor_mlx_full_flow( + self, _mock_mlx_check, _mock_model_check, mock_clone, mock_install, mock_config, mock_setup + ): + """_install_vexor_mlx clones fork and installs with MLX extra.""" + from installer.steps.dependencies import _install_vexor_mlx + + mock_clone.return_value = Path("/tmp/fake-vexor") + result = _install_vexor_mlx() + + assert result is True + mock_clone.assert_called_once() + mock_install.assert_called_once_with(Path("/tmp/fake-vexor"), extra="local-mlx") + mock_config.assert_called_once() + mock_setup.assert_called_once() + + @patch("installer.steps.dependencies._configure_vexor_local", return_value=True) + @patch("installer.steps.dependencies._is_vexor_local_model_installed", return_value=True) + @patch("installer.steps.dependencies._is_vexor_mlx_installed", return_value=True) + def test_install_vexor_mlx_skips_if_already_installed( + self, _mock_mlx_check, _mock_model_check, mock_config + ): + """_install_vexor_mlx skips clone when MLX vexor already installed.""" + from installer.steps.dependencies import _install_vexor_mlx + + result = _install_vexor_mlx() + + assert result is True + mock_config.assert_called_once() + + @patch("installer.steps.dependencies._setup_vexor_local_model", return_value=True) + @patch("installer.steps.dependencies._configure_vexor_local", return_value=True) + @patch("installer.steps.dependencies._run_bash_with_retry", return_value=True) + @patch("installer.steps.dependencies.command_exists", return_value=False) + @patch("installer.steps.dependencies._clone_vexor_fork", return_value=None) + @patch("installer.steps.dependencies._is_vexor_local_model_installed", return_value=False) + @patch("installer.steps.dependencies._is_vexor_mlx_installed", return_value=False) + def test_install_vexor_mlx_falls_back_to_cpu_on_clone_failure( + self, _mock_mlx, _mock_model, _mock_clone, _mock_cmd, mock_run, mock_config, mock_setup + ): + """_install_vexor_mlx falls back to CPU when clone fails.""" + from installer.steps.dependencies import _install_vexor_mlx + + result = _install_vexor_mlx() + + assert result is True + mock_run.assert_called_once_with("uv tool install 'vexor[local]'") + + @patch("installer.steps.dependencies._install_vexor_mlx", return_value=True) + @patch("installer.steps.dependencies.is_macos_arm64", return_value=True) + def test_install_vexor_routes_to_mlx_on_macos_arm64(self, _mock_platform, mock_mlx): + """install_vexor routes to MLX path on macOS arm64.""" + from installer.steps.dependencies import install_vexor + + result = install_vexor(use_local=True) + + assert result is True + mock_mlx.assert_called_once() diff --git a/pilot/rules/cli-tools.md b/pilot/rules/cli-tools.md index 7a70085e..ac9ace2c 100644 --- a/pilot/rules/cli-tools.md +++ b/pilot/rules/cli-tools.md @@ -23,6 +23,27 @@ Slug = plan filename without date prefix and `.md`. `create` auto-stashes uncomm --- +### Vexor — Semantic Code Search + +**⛔ First choice for codebase search — always try before Grep, Glob, or Explore sub-agents.** Finds by intent, not exact text. Zero context cost until you read results. + +Set `timeout: 60000` — indexing can happen on first run. Never run in background. + +```bash +vexor "" [--path ] [--mode ] [--ext .py,.md] [--exclude-pattern ] [--top 5] +``` + +| Mode | Best For | +|------|----------| +| `auto` | Default — routes by file type | +| `code` | Code-aware chunking (best for codebases) | +| `outline` | Markdown headings (best for docs) | +| `full` | Full file contents (highest recall) | + +`vexor index` to pre-build, `vexor index --clear` to rebuild. + +--- + ### MCP-CLI Access custom MCP servers through the command line. @@ -46,23 +67,3 @@ Add `-d` for descriptions, `-j` for JSON, `-r` for raw. Stdin for complex JSON: **Routing:** Pilot core servers → direct tool calls via ToolSearch. User servers → `mcp-cli`. Run `/sync` after adding servers. ---- - -### Vexor — Semantic Code Search - -First choice for codebase exploration. Find files by intent, not exact text. Outperforms Explore sub-agents on large codebases — zero context cost until you read results, no token waste from sub-agent transcripts. - -Important: Set `timeout: 60000` on Bash as indexing can happen, never run in background. - -```bash -vexor "" [--path ] [--mode ] [--ext .py,.md] [--exclude-pattern ] [--top 5] -``` - -| Mode | Best For | -|------|----------| -| `auto` | Default — routes by file type | -| `code` | Code-aware chunking (best for codebases) | -| `outline` | Markdown headings (best for docs) | -| `full` | Full file contents (highest recall) | - -First search builds index automatically. `vexor index` to pre-build, `vexor index --clear` to rebuild. diff --git a/pilot/rules/research-tools.md b/pilot/rules/research-tools.md index 83f7bc71..d8e55f13 100644 --- a/pilot/rules/research-tools.md +++ b/pilot/rules/research-tools.md @@ -1,5 +1,15 @@ ## Research Tools +### Vexor — Codebase Search (ALWAYS FIRST) + +**⛔ Try vexor before Grep, Glob, or any Explore sub-agent.** Finds by intent, not exact text. Zero context cost until you read results. + +**Fallback chain:** Vexor → Grep/Glob (exact patterns) → Explore sub-agent (multi-step reasoning only) + +Full reference in `cli-tools.md`. + +--- + ### Context7 — Library Documentation **MANDATORY: Use before writing code with unfamiliar libraries.** @@ -56,11 +66,11 @@ gh api repos/{owner}/{repo}/pulls/123/comments | Need | Best Tool | |------|-----------| -| **Codebase exploration** | **Vexor** (semantic search — find by intent, not exact text) | -| Exact pattern match | Grep / Glob | +| **Any codebase question** | **Vexor first — always** | +| Exact pattern / known symbol | Grep / Glob (only after vexor misses) | | Library/framework docs | Context7 | | Production code examples | grep-mcp | | Web research | web-search/search | | GitHub operations | gh CLI | -**Codebase search priority:** Vexor → Grep/Glob → Explore sub-agent. Vexor handles large codebases efficiently where Explore sub-agents waste tokens re-reading files. Use Explore only when multi-step reasoning across many files is needed. +**⛔ Never reach for Grep, Glob, or an Explore sub-agent before trying vexor.** Vexor finds by intent across any codebase size. Grep/Glob are for exact patterns when you already know what to search for. Explore sub-agents only when multi-step reasoning across many files is unavoidable. diff --git a/pilot/rules/task-and-workflow.md b/pilot/rules/task-and-workflow.md index 361437e7..fb04d5ba 100644 --- a/pilot/rules/task-and-workflow.md +++ b/pilot/rules/task-and-workflow.md @@ -54,7 +54,11 @@ When resuming same session (same `CLAUDE_CODE_TASK_LIST_ID`): run `TaskList` fir ## Sub-Agent and Tool Usage -**Prefer direct tools over sub-agents.** For codebase exploration, use `vexor` first — it finds files by intent via semantic search, scales to large codebases, and costs zero context until you read the results. Fall back to Grep/Glob for exact pattern matches. Only use Task/Explore sub-agents when you need multi-step reasoning across many files that direct tools can't cover in 2-3 queries. +**⛔ ALWAYS try vexor before any other codebase search tool.** Vexor finds files by intent via semantic search, scales to any codebase size, and costs zero context until you read results. It outperforms Explore sub-agents — no token waste from sub-agent transcripts. + +**Search fallback chain:** `vexor` → `Grep`/`Glob` (exact patterns only) → `Task/Explore` (multi-step reasoning, last resort) + +Never open an Explore sub-agent or reach for Grep/Glob until vexor has been tried and missed. ### /spec Verification Agents (MANDATORY) diff --git a/pilot/scripts/mcp-server.cjs b/pilot/scripts/mcp-server.cjs index 8d296881..ef8652f5 100755 --- a/pilot/scripts/mcp-server.cjs +++ b/pilot/scripts/mcp-server.cjs @@ -41,7 +41,7 @@ ${s.stack}`:` ${s.message}`:this.getLevel()===0&&typeof s=="object"?l=` path: iss.path ? [${mt(b)}, ...iss.path] : [${mt(b)}] })));`),p.write(`newResult[${mt(b)}] = ${$}.value`)}p.write("payload.value = newResult;"),p.write("return payload;");let v=p.compile();return(b,$)=>v(d,b,$)},n,s=Pt,i=!to.jitless,c=i&&jn.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 g=[];if(i&&c&&p?.async===!1&&p.jitless!==!0)n||(n=o(e.shape)),d=n(d,p);else{d.value={};let $=l.shape;for(let k of l.keys){let T=$[k],he=T._zod.run({value:f[k],issues:[]},p),ze=T._zod.optin==="optional"&&T._zod.optout==="optional";he instanceof Promise?g.push(he.then(Tt=>ze?qc(Tt,d,k,f):co(Tt,d,k))):ze?qc(he,d,k,f):co(he,d,k)}}if(!u)return g.length?Promise.all(g).then(()=>d):d;let _=[],y=l.keySet,v=u._zod,b=v.def.type;for(let $ of Object.keys(f)){if(y.has($))continue;if(b==="never"){_.push($);continue}let k=v.run({value:f[$],issues:[]},p);k instanceof Promise?g.push(k.then(T=>co(T,d,$))):co(k,d,$)}return _.length&&d.issues.push({code:"unrecognized_keys",keys:_,input:f,inst:t}),g.length?Promise.all(g).then(()=>d):d}});function Mc(t,e,r,o){for(let n of t)if(n.issues.length===0)return e.value=n.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(n=>n.issues.map(s=>Ne(s,o,ke())))}),e}var Xn=h("$ZodUnion",(t,e)=>{K.init(t,e),H(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),H(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),H(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),H(t._zod,"pattern",()=>{if(e.options.every(r=>r._zod.pattern)){let r=e.options.map(o=>o._zod.pattern);return new RegExp(`^(${r.map(o=>or(o.source)).join("|")})$`)}}),t._zod.parse=(r,o)=>{let n=!1,s=[];for(let i of e.options){let a=i._zod.run({value:r.value,issues:[]},o);if(a instanceof Promise)s.push(a),n=!0;else{if(a.issues.length===0)return a;s.push(a)}}return n?Promise.all(s).then(i=>Mc(i,r,t,o)):Mc(s,r,t,o)}}),zu=h("$ZodDiscriminatedUnion",(t,e)=>{Xn.init(t,e);let r=t._zod.parse;H(t._zod,"propValues",()=>{let n={};for(let s of e.options){let i=s._zod.propValues;if(!i||Object.keys(i).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(s)}"`);for(let[a,c]of Object.entries(i)){n[a]||(n[a]=new Set);for(let u of c)n[a].add(u)}}return n});let o=tr(()=>{let n=e.options,s=new Map;for(let i of n){let a=i._zod.propValues[e.discriminator];if(!a||a.size===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(i)}"`);for(let c of a){if(s.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);s.set(c,i)}}return s});t._zod.parse=(n,s)=>{let i=n.value;if(!Pt(i))return n.issues.push({code:"invalid_type",expected:"object",input:i,inst:t}),n;let a=o.value.get(i?.[e.discriminator]);return a?a._zod.run(n,s):e.unionFallback?r(n,s):(n.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:i,path:[e.discriminator],inst:t}),n)}}),ku=h("$ZodIntersection",(t,e)=>{K.init(t,e),t._zod.parse=(r,o)=>{let n=r.value,s=e.left._zod.run({value:n,issues:[]},o),i=e.right._zod.run({value:n,issues:[]},o);return s instanceof Promise||i instanceof Promise?Promise.all([s,i]).then(([c,u])=>Uc(r,c,u)):Uc(r,s,i)}});function Jn(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(It(t)&&It(e)){let r=Object.keys(e),o=Object.keys(t).filter(s=>r.indexOf(s)!==-1),n={...t,...e};for(let s of o){let i=Jn(t[s],e[s]);if(!i.valid)return{valid:!1,mergeErrorPath:[s,...i.mergeErrorPath]};n[s]=i.data}return{valid:!0,data:n}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let o=0;o{K.init(t,e),t._zod.parse=(r,o)=>{let n=r.value;if(!It(n))return r.issues.push({expected:"record",code:"invalid_type",input:n,inst:t}),r;let s=[];if(e.keyType._zod.values){let i=e.keyType._zod.values;r.value={};for(let c of i)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){let u=e.valueType._zod.run({value:n[c],issues:[]},o);u instanceof Promise?s.push(u.then(l=>{l.issues.length&&r.issues.push(...Me(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...Me(c,u.issues)),r.value[c]=u.value)}let a;for(let c in n)i.has(c)||(a=a??[],a.push(c));a&&a.length>0&&r.issues.push({code:"unrecognized_keys",input:n,inst:t,keys:a})}else{r.value={};for(let i of Reflect.ownKeys(n)){if(i==="__proto__")continue;let a=e.keyType._zod.run({value:i,issues:[]},o);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=>Ne(u,o,ke())),input:i,path:[i],inst:t}),r.value[a.value]=a.value;continue}let c=e.valueType._zod.run({value:n[i],issues:[]},o);c instanceof Promise?s.push(c.then(u=>{u.issues.length&&r.issues.push(...Me(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...Me(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}});var Tu=h("$ZodEnum",(t,e)=>{K.init(t,e);let r=Nn(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(o=>Ln.has(typeof o)).map(o=>typeof o=="string"?rt(o):o.toString()).join("|")})$`),t._zod.parse=(o,n)=>{let s=o.value;return t._zod.values.has(s)||o.issues.push({code:"invalid_value",values:r,input:s,inst:t}),o}}),Pu=h("$ZodLiteral",(t,e)=>{K.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?rt(r):r?r.toString():String(r)).join("|")})$`),t._zod.parse=(r,o)=>{let n=r.value;return t._zod.values.has(n)||r.issues.push({code:"invalid_value",values:e.values,input:n,inst:t}),r}});var Iu=h("$ZodTransform",(t,e)=>{K.init(t,e),t._zod.parse=(r,o)=>{let n=e.transform(r.value,r);if(o.async)return(n instanceof Promise?n:Promise.resolve(n)).then(i=>(r.value=i,r));if(n instanceof Promise)throw new We;return r.value=n,r}}),Ou=h("$ZodOptional",(t,e)=>{K.init(t,e),t._zod.optin="optional",t._zod.optout="optional",H(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),H(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${or(r.source)})?$`):void 0}),t._zod.parse=(r,o)=>e.innerType._zod.optin==="optional"?e.innerType._zod.run(r,o):r.value===void 0?r:e.innerType._zod.run(r,o)}),Ru=h("$ZodNullable",(t,e)=>{K.init(t,e),H(t._zod,"optin",()=>e.innerType._zod.optin),H(t._zod,"optout",()=>e.innerType._zod.optout),H(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${or(r.source)}|null)$`):void 0}),H(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(r,o)=>r.value===null?r:e.innerType._zod.run(r,o)}),Nu=h("$ZodDefault",(t,e)=>{K.init(t,e),t._zod.optin="optional",H(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,o)=>{if(r.value===void 0)return r.value=e.defaultValue,r;let n=e.innerType._zod.run(r,o);return n instanceof Promise?n.then(s=>Fc(s,e)):Fc(n,e)}});function Fc(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Au=h("$ZodPrefault",(t,e)=>{K.init(t,e),t._zod.optin="optional",H(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,o)=>(r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,o))}),Cu=h("$ZodNonOptional",(t,e)=>{K.init(t,e),H(t._zod,"values",()=>{let r=e.innerType._zod.values;return r?new Set([...r].filter(o=>o!==void 0)):void 0}),t._zod.parse=(r,o)=>{let n=e.innerType._zod.run(r,o);return n instanceof Promise?n.then(s=>Vc(s,t)):Vc(n,t)}});function Vc(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 Du=h("$ZodCatch",(t,e)=>{K.init(t,e),t._zod.optin="optional",H(t._zod,"optout",()=>e.innerType._zod.optout),H(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,o)=>{let n=e.innerType._zod.run(r,o);return n instanceof Promise?n.then(s=>(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(i=>Ne(i,o,ke()))},input:r.value}),r.issues=[]),r)):(r.value=n.value,n.issues.length&&(r.value=e.catchValue({...r,error:{issues:n.issues.map(s=>Ne(s,o,ke()))},input:r.value}),r.issues=[]),r)}});var ju=h("$ZodPipe",(t,e)=>{K.init(t,e),H(t._zod,"values",()=>e.in._zod.values),H(t._zod,"optin",()=>e.in._zod.optin),H(t._zod,"optout",()=>e.out._zod.optout),t._zod.parse=(r,o)=>{let n=e.in._zod.run(r,o);return n instanceof Promise?n.then(s=>Hc(s,e,o)):Hc(n,e,o)}});function Hc(t,e,r){return ht(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Lu=h("$ZodReadonly",(t,e)=>{K.init(t,e),H(t._zod,"propValues",()=>e.innerType._zod.propValues),H(t._zod,"values",()=>e.innerType._zod.values),H(t._zod,"optin",()=>e.innerType._zod.optin),H(t._zod,"optout",()=>e.innerType._zod.optout),t._zod.parse=(r,o)=>{let n=e.innerType._zod.run(r,o);return n instanceof Promise?n.then(Kc):Kc(n)}});function Kc(t){return t.value=Object.freeze(t.value),t}var Zu=h("$ZodCustom",(t,e)=>{de.init(t,e),K.init(t,e),t._zod.parse=(r,o)=>r,t._zod.check=r=>{let o=r.value,n=e.fn(o);if(n instanceof Promise)return n.then(s=>Gc(s,r,o,t));Gc(n,r,o,t)}});function Gc(t,e,r,o){if(!t){let n={code:"custom",input:r,inst:o,path:[...o._zod.def.path??[]],continue:!o._zod.def.abort};o._zod.def.params&&(n.params=o._zod.def.params),e.issues.push(Mn(n))}}var Lm=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},Zm=()=>{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(o){return t[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",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 o=>{switch(o.code){case"invalid_type":return`Invalid input: expected ${o.expected}, received ${Lm(o.input)}`;case"invalid_value":return o.values.length===1?`Invalid input: expected ${no(o.values[0])}`:`Invalid option: expected one of ${ro(o.values,"|")}`;case"too_big":{let n=o.inclusive?"<=":"<",s=e(o.origin);return s?`Too big: expected ${o.origin??"value"} to have ${n}${o.maximum.toString()} ${s.unit??"elements"}`:`Too big: expected ${o.origin??"value"} to be ${n}${o.maximum.toString()}`}case"too_small":{let n=o.inclusive?">=":">",s=e(o.origin);return s?`Too small: expected ${o.origin} to have ${n}${o.minimum.toString()} ${s.unit}`:`Too small: expected ${o.origin} to be ${n}${o.minimum.toString()}`}case"invalid_format":{let n=o;return n.format==="starts_with"?`Invalid string: must start with "${n.prefix}"`:n.format==="ends_with"?`Invalid string: must end with "${n.suffix}"`:n.format==="includes"?`Invalid string: must include "${n.includes}"`:n.format==="regex"?`Invalid string: must match pattern ${n.pattern}`:`Invalid ${r[n.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":""}: ${ro(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 qu(){return{localeError:Zm()}}var Qn=class{constructor(){this._map=new Map,this._idmap=new Map}add(e,...r){let o=r[0];if(this._map.set(e,o),o&&typeof o=="object"&&"id"in o){if(this._idmap.has(o.id))throw new Error(`ID ${o.id} already exists in the registry`);this._idmap.set(o.id,e)}return this}clear(){return this._map=new Map,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 o={...this.get(r)??{}};return delete o.id,{...o,...this._map.get(e)}}return this._map.get(e)}has(e){return this._map.has(e)}};function qm(){return new Qn}var ar=qm();function Mu(t,e){return new t({type:"string",...E(e)})}function Uu(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...E(e)})}function es(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...E(e)})}function Fu(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...E(e)})}function Vu(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...E(e)})}function Hu(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...E(e)})}function Ku(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...E(e)})}function Gu(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...E(e)})}function Bu(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...E(e)})}function Wu(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...E(e)})}function Ju(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...E(e)})}function Yu(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...E(e)})}function Xu(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...E(e)})}function Qu(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...E(e)})}function el(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...E(e)})}function tl(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...E(e)})}function rl(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...E(e)})}function ol(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...E(e)})}function nl(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...E(e)})}function sl(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...E(e)})}function il(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...E(e)})}function al(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...E(e)})}function cl(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...E(e)})}function ul(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...E(e)})}function ll(t,e){return new t({type:"string",format:"date",check:"string_format",...E(e)})}function dl(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...E(e)})}function pl(t,e){return new t({type:"string",format:"duration",check:"string_format",...E(e)})}function fl(t,e){return new t({type:"number",checks:[],...E(e)})}function ml(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...E(e)})}function hl(t,e){return new t({type:"boolean",...E(e)})}function gl(t,e){return new t({type:"null",...E(e)})}function _l(t){return new t({type:"unknown"})}function yl(t,e){return new t({type:"never",...E(e)})}function lo(t,e){return new Bn({check:"less_than",...E(e),value:t,inclusive:!1})}function cr(t,e){return new Bn({check:"less_than",...E(e),value:t,inclusive:!0})}function po(t,e){return new Wn({check:"greater_than",...E(e),value:t,inclusive:!1})}function ur(t,e){return new Wn({check:"greater_than",...E(e),value:t,inclusive:!0})}function fo(t,e){return new zc({check:"multiple_of",...E(e),value:t})}function mo(t,e){return new Ec({check:"max_length",...E(e),maximum:t})}function Ot(t,e){return new Tc({check:"min_length",...E(e),minimum:t})}function ho(t,e){return new Pc({check:"length_equals",...E(e),length:t})}function ts(t,e){return new Ic({check:"string_format",format:"regex",...E(e),pattern:t})}function rs(t){return new Oc({check:"string_format",format:"lowercase",...E(t)})}function os(t){return new Rc({check:"string_format",format:"uppercase",...E(t)})}function ns(t,e){return new Nc({check:"string_format",format:"includes",...E(e),includes:t})}function ss(t,e){return new Ac({check:"string_format",format:"starts_with",...E(e),prefix:t})}function is(t,e){return new Cc({check:"string_format",format:"ends_with",...E(e),suffix:t})}function gt(t){return new Dc({check:"overwrite",tx:t})}function as(t){return gt(e=>e.normalize(t))}function cs(){return gt(t=>t.trim())}function us(){return gt(t=>t.toLowerCase())}function ls(){return gt(t=>t.toUpperCase())}function vl(t,e,r){return new t({type:"array",element:e,...E(r)})}function $l(t,e,r){let o=E(r);return o.abort??(o.abort=!0),new t({type:"custom",check:"custom",fn:e,...o})}function bl(t,e,r){return new t({type:"custom",check:"custom",fn:e,...E(r)})}function Rt(t){return!!t._zod}function ot(t,e){return Rt(t)?sr(t,e):t.safeParse(e)}function go(t){if(!t)return;let e;if(Rt(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function Sl(t){if(Rt(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 o=t.value;if(o!==void 0)return o}var dr={};La(dr,{ZodISODate:()=>xl,ZodISODateTime:()=>wl,ZodISODuration:()=>kl,ZodISOTime:()=>zl,date:()=>ps,datetime:()=>ds,duration:()=>ms,time:()=>fs});var wl=h("ZodISODateTime",(t,e)=>{su.init(t,e),Y.init(t,e)});function ds(t){return ul(wl,t)}var xl=h("ZodISODate",(t,e)=>{iu.init(t,e),Y.init(t,e)});function ps(t){return ll(xl,t)}var zl=h("ZodISOTime",(t,e)=>{au.init(t,e),Y.init(t,e)});function fs(t){return dl(zl,t)}var kl=h("ZodISODuration",(t,e)=>{cu.init(t,e),Y.init(t,e)});function ms(t){return pl(kl,t)}var El=(t,e)=>{so.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Ka(t,r)},flatten:{value:r=>Ha(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},mw=h("ZodError",El),pr=h("ZodError",El,{Parent:Error});var Tl=Ga(pr),Pl=Ba(pr),Il=Fn(pr),Ol=Vn(pr);var te=h("ZodType",(t,e)=>(K.init(t,e),t.def=e,Object.defineProperty(t,"_def",{value:e}),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(o=>typeof o=="function"?{_zod:{check:o,def:{check:"custom"},onattach:[]}}:o)]}),t.clone=(r,o)=>qe(t,r,o),t.brand=()=>t,t.register=((r,o)=>(r.add(t,o),t)),t.parse=(r,o)=>Tl(t,r,o,{callee:t.parse}),t.safeParse=(r,o)=>Il(t,r,o),t.parseAsync=async(r,o)=>Pl(t,r,o,{callee:t.parseAsync}),t.safeParseAsync=async(r,o)=>Ol(t,r,o),t.spa=t.safeParseAsync,t.refine=(r,o)=>t.check(jh(r,o)),t.superRefine=r=>t.check(Lh(r)),t.overwrite=r=>t.check(gt(r)),t.optional=()=>ee(t),t.nullable=()=>Al(t),t.nullish=()=>ee(Al(t)),t.nonoptional=r=>Ih(t,r),t.array=()=>C(t),t.or=r=>G([t,r]),t.and=r=>yo(t,r),t.transform=r=>gs(t,Zl(r)),t.default=r=>Eh(t,r),t.prefault=r=>Ph(t,r),t.catch=r=>Rh(t,r),t.pipe=r=>gs(t,r),t.readonly=()=>Ch(t),t.describe=r=>{let o=t.clone();return ar.add(o,{description:r}),o},Object.defineProperty(t,"description",{get(){return ar.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return ar.get(t);let o=t.clone();return ar.add(o,r[0]),o},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),Cl=h("_ZodString",(t,e)=>{uo.init(t,e),te.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=(...o)=>t.check(ts(...o)),t.includes=(...o)=>t.check(ns(...o)),t.startsWith=(...o)=>t.check(ss(...o)),t.endsWith=(...o)=>t.check(is(...o)),t.min=(...o)=>t.check(Ot(...o)),t.max=(...o)=>t.check(mo(...o)),t.length=(...o)=>t.check(ho(...o)),t.nonempty=(...o)=>t.check(Ot(1,...o)),t.lowercase=o=>t.check(rs(o)),t.uppercase=o=>t.check(os(o)),t.trim=()=>t.check(cs()),t.normalize=(...o)=>t.check(as(...o)),t.toLowerCase=()=>t.check(us()),t.toUpperCase=()=>t.check(ls())}),Wm=h("ZodString",(t,e)=>{uo.init(t,e),Cl.init(t,e),t.email=r=>t.check(Uu(Jm,r)),t.url=r=>t.check(Gu(Ym,r)),t.jwt=r=>t.check(cl(ph,r)),t.emoji=r=>t.check(Bu(Xm,r)),t.guid=r=>t.check(es(Rl,r)),t.uuid=r=>t.check(Fu(_o,r)),t.uuidv4=r=>t.check(Vu(_o,r)),t.uuidv6=r=>t.check(Hu(_o,r)),t.uuidv7=r=>t.check(Ku(_o,r)),t.nanoid=r=>t.check(Wu(Qm,r)),t.guid=r=>t.check(es(Rl,r)),t.cuid=r=>t.check(Ju(eh,r)),t.cuid2=r=>t.check(Yu(th,r)),t.ulid=r=>t.check(Xu(rh,r)),t.base64=r=>t.check(sl(uh,r)),t.base64url=r=>t.check(il(lh,r)),t.xid=r=>t.check(Qu(oh,r)),t.ksuid=r=>t.check(el(nh,r)),t.ipv4=r=>t.check(tl(sh,r)),t.ipv6=r=>t.check(rl(ih,r)),t.cidrv4=r=>t.check(ol(ah,r)),t.cidrv6=r=>t.check(nl(ch,r)),t.e164=r=>t.check(al(dh,r)),t.datetime=r=>t.check(ds(r)),t.date=r=>t.check(ps(r)),t.time=r=>t.check(fs(r)),t.duration=r=>t.check(ms(r))});function m(t){return Mu(Wm,t)}var Y=h("ZodStringFormat",(t,e)=>{B.init(t,e),Cl.init(t,e)}),Jm=h("ZodEmail",(t,e)=>{Jc.init(t,e),Y.init(t,e)});var Rl=h("ZodGUID",(t,e)=>{Bc.init(t,e),Y.init(t,e)});var _o=h("ZodUUID",(t,e)=>{Wc.init(t,e),Y.init(t,e)});var Ym=h("ZodURL",(t,e)=>{Yc.init(t,e),Y.init(t,e)});var Xm=h("ZodEmoji",(t,e)=>{Xc.init(t,e),Y.init(t,e)});var Qm=h("ZodNanoID",(t,e)=>{Qc.init(t,e),Y.init(t,e)});var eh=h("ZodCUID",(t,e)=>{eu.init(t,e),Y.init(t,e)});var th=h("ZodCUID2",(t,e)=>{tu.init(t,e),Y.init(t,e)});var rh=h("ZodULID",(t,e)=>{ru.init(t,e),Y.init(t,e)});var oh=h("ZodXID",(t,e)=>{ou.init(t,e),Y.init(t,e)});var nh=h("ZodKSUID",(t,e)=>{nu.init(t,e),Y.init(t,e)});var sh=h("ZodIPv4",(t,e)=>{uu.init(t,e),Y.init(t,e)});var ih=h("ZodIPv6",(t,e)=>{lu.init(t,e),Y.init(t,e)});var ah=h("ZodCIDRv4",(t,e)=>{du.init(t,e),Y.init(t,e)});var ch=h("ZodCIDRv6",(t,e)=>{pu.init(t,e),Y.init(t,e)});var uh=h("ZodBase64",(t,e)=>{mu.init(t,e),Y.init(t,e)});var lh=h("ZodBase64URL",(t,e)=>{hu.init(t,e),Y.init(t,e)});var dh=h("ZodE164",(t,e)=>{gu.init(t,e),Y.init(t,e)});var ph=h("ZodJWT",(t,e)=>{_u.init(t,e),Y.init(t,e)});var Dl=h("ZodNumber",(t,e)=>{Yn.init(t,e),te.init(t,e),t.gt=(o,n)=>t.check(po(o,n)),t.gte=(o,n)=>t.check(ur(o,n)),t.min=(o,n)=>t.check(ur(o,n)),t.lt=(o,n)=>t.check(lo(o,n)),t.lte=(o,n)=>t.check(cr(o,n)),t.max=(o,n)=>t.check(cr(o,n)),t.int=o=>t.check(Nl(o)),t.safe=o=>t.check(Nl(o)),t.positive=o=>t.check(po(0,o)),t.nonnegative=o=>t.check(ur(0,o)),t.negative=o=>t.check(lo(0,o)),t.nonpositive=o=>t.check(cr(0,o)),t.multipleOf=(o,n)=>t.check(fo(o,n)),t.step=(o,n)=>t.check(fo(o,n)),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 U(t){return fl(Dl,t)}var fh=h("ZodNumberFormat",(t,e)=>{yu.init(t,e),Dl.init(t,e)});function Nl(t){return ml(fh,t)}var mh=h("ZodBoolean",(t,e)=>{vu.init(t,e),te.init(t,e)});function oe(t){return hl(mh,t)}var hh=h("ZodNull",(t,e)=>{$u.init(t,e),te.init(t,e)});function _s(t){return gl(hh,t)}var gh=h("ZodUnknown",(t,e)=>{bu.init(t,e),te.init(t,e)});function X(){return _l(gh)}var _h=h("ZodNever",(t,e)=>{Su.init(t,e),te.init(t,e)});function yh(t){return yl(_h,t)}var vh=h("ZodArray",(t,e)=>{wu.init(t,e),te.init(t,e),t.element=e.element,t.min=(r,o)=>t.check(Ot(r,o)),t.nonempty=r=>t.check(Ot(1,r)),t.max=(r,o)=>t.check(mo(r,o)),t.length=(r,o)=>t.check(ho(r,o)),t.unwrap=()=>t.element});function C(t,e){return vl(vh,t,e)}var jl=h("ZodObject",(t,e)=>{xu.init(t,e),te.init(t,e),M.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>ve(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:X()}),t.loose=()=>t.clone({...t._zod.def,catchall:X()}),t.strict=()=>t.clone({...t._zod.def,catchall:yh()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>M.extend(t,r),t.merge=r=>M.merge(t,r),t.pick=r=>M.pick(t,r),t.omit=r=>M.omit(t,r),t.partial=(...r)=>M.partial(ql,t,r[0]),t.required=(...r)=>M.required(Ml,t,r[0])});function w(t,e){let r={type:"object",get shape(){return M.assignProp(this,"shape",{...t}),this.shape},...M.normalizeParams(e)};return new jl(r)}function ge(t,e){return new jl({type:"object",get shape(){return M.assignProp(this,"shape",{...t}),this.shape},catchall:X(),...M.normalizeParams(e)})}var Ll=h("ZodUnion",(t,e)=>{Xn.init(t,e),te.init(t,e),t.options=e.options});function G(t,e){return new Ll({type:"union",options:t,...M.normalizeParams(e)})}var $h=h("ZodDiscriminatedUnion",(t,e)=>{Ll.init(t,e),zu.init(t,e)});function ys(t,e,r){return new $h({type:"union",options:e,discriminator:t,...M.normalizeParams(r)})}var bh=h("ZodIntersection",(t,e)=>{ku.init(t,e),te.init(t,e)});function yo(t,e){return new bh({type:"intersection",left:t,right:e})}var Sh=h("ZodRecord",(t,e)=>{Eu.init(t,e),te.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function Q(t,e,r){return new Sh({type:"record",keyType:t,valueType:e,...M.normalizeParams(r)})}var hs=h("ZodEnum",(t,e)=>{Tu.init(t,e),te.init(t,e),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(o,n)=>{let s={};for(let i of o)if(r.has(i))s[i]=e.entries[i];else throw new Error(`Key ${i} not found in enum`);return new hs({...e,checks:[],...M.normalizeParams(n),entries:s})},t.exclude=(o,n)=>{let s={...e.entries};for(let i of o)if(r.has(i))delete s[i];else throw new Error(`Key ${i} not found in enum`);return new hs({...e,checks:[],...M.normalizeParams(n),entries:s})}});function ve(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(o=>[o,o])):t;return new hs({type:"enum",entries:r,...M.normalizeParams(e)})}var wh=h("ZodLiteral",(t,e)=>{Pu.init(t,e),te.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 x(t,e){return new wh({type:"literal",values:Array.isArray(t)?t:[t],...M.normalizeParams(e)})}var xh=h("ZodTransform",(t,e)=>{Iu.init(t,e),te.init(t,e),t._zod.parse=(r,o)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(M.issue(s,r.value,e));else{let i=s;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=r.value),i.inst??(i.inst=t),i.continue??(i.continue=!0),r.issues.push(M.issue(i))}};let n=e.transform(r.value,r);return n instanceof Promise?n.then(s=>(r.value=s,r)):(r.value=n,r)}});function Zl(t){return new xh({type:"transform",transform:t})}var ql=h("ZodOptional",(t,e)=>{Ou.init(t,e),te.init(t,e),t.unwrap=()=>t._zod.def.innerType});function ee(t){return new ql({type:"optional",innerType:t})}var zh=h("ZodNullable",(t,e)=>{Ru.init(t,e),te.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Al(t){return new zh({type:"nullable",innerType:t})}var kh=h("ZodDefault",(t,e)=>{Nu.init(t,e),te.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function Eh(t,e){return new kh({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var Th=h("ZodPrefault",(t,e)=>{Au.init(t,e),te.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Ph(t,e){return new Th({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var Ml=h("ZodNonOptional",(t,e)=>{Cu.init(t,e),te.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Ih(t,e){return new Ml({type:"nonoptional",innerType:t,...M.normalizeParams(e)})}var Oh=h("ZodCatch",(t,e)=>{Du.init(t,e),te.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function Rh(t,e){return new Oh({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var Nh=h("ZodPipe",(t,e)=>{ju.init(t,e),te.init(t,e),t.in=e.in,t.out=e.out});function gs(t,e){return new Nh({type:"pipe",in:t,out:e})}var Ah=h("ZodReadonly",(t,e)=>{Lu.init(t,e),te.init(t,e)});function Ch(t){return new Ah({type:"readonly",innerType:t})}var Ul=h("ZodCustom",(t,e)=>{Zu.init(t,e),te.init(t,e)});function Dh(t){let e=new de({check:"custom"});return e._zod.check=t,e}function Fl(t,e){return $l(Ul,t??(()=>!0),e)}function jh(t,e={}){return bl(Ul,t,e)}function Lh(t){let e=Dh(r=>(r.addIssue=o=>{if(typeof o=="string")r.issues.push(M.issue(o,r.value,e._zod.def));else{let n=o;n.fatal&&(n.continue=!1),n.code??(n.code="custom"),n.input??(n.input=r.value),n.inst??(n.inst=e),n.continue??(n.continue=!e._zod.def.abort),r.issues.push(M.issue(n))}},t(r.value,r)));return e}function vs(t,e){return gs(Zl(t),e)}ke(qu());var bs="2025-11-25";var Vl=[bs,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],nt="io.modelcontextprotocol/related-task",$o="2.0",se=Fl(t=>t!==null&&(typeof t=="object"||typeof t=="function")),Hl=G([m(),U().int()]),Kl=m(),ax=ge({ttl:G([U(),_s()]).optional(),pollInterval:U().optional()}),Zh=w({ttl:U().optional()}),qh=w({taskId:m()}),Ss=ge({progressToken:Hl.optional(),[nt]:qh.optional()}),xe=w({_meta:Ss.optional()}),fr=xe.extend({task:Zh.optional()}),Gl=t=>fr.safeParse(t).success,ie=w({method:m(),params:xe.loose().optional()}),Ee=w({_meta:Ss.optional()}),Te=w({method:m(),params:Ee.loose().optional()}),ae=ge({_meta:Ss.optional()}),bo=G([m(),U().int()]),Bl=w({jsonrpc:x($o),id:bo,...ie.shape}).strict(),ws=t=>Bl.safeParse(t).success,Wl=w({jsonrpc:x($o),...Te.shape}).strict(),Jl=t=>Wl.safeParse(t).success,xs=w({jsonrpc:x($o),id:bo,result:ae}).strict(),mr=t=>xs.safeParse(t).success;var D;(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"})(D||(D={}));var zs=w({jsonrpc:x($o),id:bo.optional(),error:w({code:U().int(),message:m(),data:X().optional()})}).strict();var Yl=t=>zs.safeParse(t).success;var Xl=G([Bl,Wl,xs,zs]),cx=G([xs,zs]),So=ae.strict(),Mh=Ee.extend({requestId:bo.optional(),reason:m().optional()}),wo=Te.extend({method:x("notifications/cancelled"),params:Mh}),Uh=w({src:m(),mimeType:m().optional(),sizes:C(m()).optional(),theme:ve(["light","dark"]).optional()}),hr=w({icons:C(Uh).optional()}),Nt=w({name:m(),title:m().optional()}),Ql=Nt.extend({...Nt.shape,...hr.shape,version:m(),websiteUrl:m().optional(),description:m().optional()}),Fh=yo(w({applyDefaults:oe().optional()}),Q(m(),X())),Vh=vs(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,yo(w({form:Fh.optional(),url:se.optional()}),Q(m(),X()).optional())),Hh=ge({list:se.optional(),cancel:se.optional(),requests:ge({sampling:ge({createMessage:se.optional()}).optional(),elicitation:ge({create:se.optional()}).optional()}).optional()}),Kh=ge({list:se.optional(),cancel:se.optional(),requests:ge({tools:ge({call:se.optional()}).optional()}).optional()}),Gh=w({experimental:Q(m(),se).optional(),sampling:w({context:se.optional(),tools:se.optional()}).optional(),elicitation:Vh.optional(),roots:w({listChanged:oe().optional()}).optional(),tasks:Hh.optional()}),Bh=xe.extend({protocolVersion:m(),capabilities:Gh,clientInfo:Ql}),ks=ie.extend({method:x("initialize"),params:Bh});var Wh=w({experimental:Q(m(),se).optional(),logging:se.optional(),completions:se.optional(),prompts:w({listChanged:oe().optional()}).optional(),resources:w({subscribe:oe().optional(),listChanged:oe().optional()}).optional(),tools:w({listChanged:oe().optional()}).optional(),tasks:Kh.optional()}),Jh=ae.extend({protocolVersion:m(),capabilities:Wh,serverInfo:Ql,instructions:m().optional()}),Es=Te.extend({method:x("notifications/initialized"),params:Ee.optional()});var xo=ie.extend({method:x("ping"),params:xe.optional()}),Yh=w({progress:U(),total:ee(U()),message:ee(m())}),Xh=w({...Ee.shape,...Yh.shape,progressToken:Hl}),zo=Te.extend({method:x("notifications/progress"),params:Xh}),Qh=xe.extend({cursor:Kl.optional()}),gr=ie.extend({params:Qh.optional()}),_r=ae.extend({nextCursor:Kl.optional()}),eg=ve(["working","input_required","completed","failed","cancelled"]),yr=w({taskId:m(),status:eg,ttl:G([U(),_s()]),createdAt:m(),lastUpdatedAt:m(),pollInterval:ee(U()),statusMessage:ee(m())}),At=ae.extend({task:yr}),tg=Ee.merge(yr),vr=Te.extend({method:x("notifications/tasks/status"),params:tg}),ko=ie.extend({method:x("tasks/get"),params:xe.extend({taskId:m()})}),Eo=ae.merge(yr),To=ie.extend({method:x("tasks/result"),params:xe.extend({taskId:m()})}),ux=ae.loose(),Po=gr.extend({method:x("tasks/list")}),Io=_r.extend({tasks:C(yr)}),Oo=ie.extend({method:x("tasks/cancel"),params:xe.extend({taskId:m()})}),ed=ae.merge(yr),td=w({uri:m(),mimeType:ee(m()),_meta:Q(m(),X()).optional()}),rd=td.extend({text:m()}),Ts=m().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),od=td.extend({blob:Ts}),$r=ve(["user","assistant"]),Ct=w({audience:C($r).optional(),priority:U().min(0).max(1).optional(),lastModified:dr.datetime({offset:!0}).optional()}),nd=w({...Nt.shape,...hr.shape,uri:m(),description:ee(m()),mimeType:ee(m()),annotations:Ct.optional(),_meta:ee(ge({}))}),rg=w({...Nt.shape,...hr.shape,uriTemplate:m(),description:ee(m()),mimeType:ee(m()),annotations:Ct.optional(),_meta:ee(ge({}))}),og=gr.extend({method:x("resources/list")}),ng=_r.extend({resources:C(nd)}),sg=gr.extend({method:x("resources/templates/list")}),ig=_r.extend({resourceTemplates:C(rg)}),Ps=xe.extend({uri:m()}),ag=Ps,cg=ie.extend({method:x("resources/read"),params:ag}),ug=ae.extend({contents:C(G([rd,od]))}),lg=Te.extend({method:x("notifications/resources/list_changed"),params:Ee.optional()}),dg=Ps,pg=ie.extend({method:x("resources/subscribe"),params:dg}),fg=Ps,mg=ie.extend({method:x("resources/unsubscribe"),params:fg}),hg=Ee.extend({uri:m()}),gg=Te.extend({method:x("notifications/resources/updated"),params:hg}),_g=w({name:m(),description:ee(m()),required:ee(oe())}),yg=w({...Nt.shape,...hr.shape,description:ee(m()),arguments:ee(C(_g)),_meta:ee(ge({}))}),vg=gr.extend({method:x("prompts/list")}),$g=_r.extend({prompts:C(yg)}),bg=xe.extend({name:m(),arguments:Q(m(),m()).optional()}),Sg=ie.extend({method:x("prompts/get"),params:bg}),Is=w({type:x("text"),text:m(),annotations:Ct.optional(),_meta:Q(m(),X()).optional()}),Os=w({type:x("image"),data:Ts,mimeType:m(),annotations:Ct.optional(),_meta:Q(m(),X()).optional()}),Rs=w({type:x("audio"),data:Ts,mimeType:m(),annotations:Ct.optional(),_meta:Q(m(),X()).optional()}),wg=w({type:x("tool_use"),name:m(),id:m(),input:Q(m(),X()),_meta:Q(m(),X()).optional()}),xg=w({type:x("resource"),resource:G([rd,od]),annotations:Ct.optional(),_meta:Q(m(),X()).optional()}),zg=nd.extend({type:x("resource_link")}),Ns=G([Is,Os,Rs,zg,xg]),kg=w({role:$r,content:Ns}),Eg=ae.extend({description:m().optional(),messages:C(kg)}),Tg=Te.extend({method:x("notifications/prompts/list_changed"),params:Ee.optional()}),Pg=w({title:m().optional(),readOnlyHint:oe().optional(),destructiveHint:oe().optional(),idempotentHint:oe().optional(),openWorldHint:oe().optional()}),Ig=w({taskSupport:ve(["required","optional","forbidden"]).optional()}),sd=w({...Nt.shape,...hr.shape,description:m().optional(),inputSchema:w({type:x("object"),properties:Q(m(),se).optional(),required:C(m()).optional()}).catchall(X()),outputSchema:w({type:x("object"),properties:Q(m(),se).optional(),required:C(m()).optional()}).catchall(X()).optional(),annotations:Pg.optional(),execution:Ig.optional(),_meta:Q(m(),X()).optional()}),As=gr.extend({method:x("tools/list")}),Og=_r.extend({tools:C(sd)}),Ro=ae.extend({content:C(Ns).default([]),structuredContent:Q(m(),X()).optional(),isError:oe().optional()}),lx=Ro.or(ae.extend({toolResult:X()})),Rg=fr.extend({name:m(),arguments:Q(m(),X()).optional()}),br=ie.extend({method:x("tools/call"),params:Rg}),Ng=Te.extend({method:x("notifications/tools/list_changed"),params:Ee.optional()}),dx=w({autoRefresh:oe().default(!0),debounceMs:U().int().nonnegative().default(300)}),Sr=ve(["debug","info","notice","warning","error","critical","alert","emergency"]),Ag=xe.extend({level:Sr}),Cs=ie.extend({method:x("logging/setLevel"),params:Ag}),Cg=Ee.extend({level:Sr,logger:m().optional(),data:X()}),Dg=Te.extend({method:x("notifications/message"),params:Cg}),jg=w({name:m().optional()}),Lg=w({hints:C(jg).optional(),costPriority:U().min(0).max(1).optional(),speedPriority:U().min(0).max(1).optional(),intelligencePriority:U().min(0).max(1).optional()}),Zg=w({mode:ve(["auto","required","none"]).optional()}),qg=w({type:x("tool_result"),toolUseId:m().describe("The unique identifier for the corresponding tool call."),content:C(Ns).default([]),structuredContent:w({}).loose().optional(),isError:oe().optional(),_meta:Q(m(),X()).optional()}),Mg=ys("type",[Is,Os,Rs]),vo=ys("type",[Is,Os,Rs,wg,qg]),Ug=w({role:$r,content:G([vo,C(vo)]),_meta:Q(m(),X()).optional()}),Fg=fr.extend({messages:C(Ug),modelPreferences:Lg.optional(),systemPrompt:m().optional(),includeContext:ve(["none","thisServer","allServers"]).optional(),temperature:U().optional(),maxTokens:U().int(),stopSequences:C(m()).optional(),metadata:se.optional(),tools:C(sd).optional(),toolChoice:Zg.optional()}),Vg=ie.extend({method:x("sampling/createMessage"),params:Fg}),Ds=ae.extend({model:m(),stopReason:ee(ve(["endTurn","stopSequence","maxTokens"]).or(m())),role:$r,content:Mg}),js=ae.extend({model:m(),stopReason:ee(ve(["endTurn","stopSequence","maxTokens","toolUse"]).or(m())),role:$r,content:G([vo,C(vo)])}),Hg=w({type:x("boolean"),title:m().optional(),description:m().optional(),default:oe().optional()}),Kg=w({type:x("string"),title:m().optional(),description:m().optional(),minLength:U().optional(),maxLength:U().optional(),format:ve(["email","uri","date","date-time"]).optional(),default:m().optional()}),Gg=w({type:ve(["number","integer"]),title:m().optional(),description:m().optional(),minimum:U().optional(),maximum:U().optional(),default:U().optional()}),Bg=w({type:x("string"),title:m().optional(),description:m().optional(),enum:C(m()),default:m().optional()}),Wg=w({type:x("string"),title:m().optional(),description:m().optional(),oneOf:C(w({const:m(),title:m()})),default:m().optional()}),Jg=w({type:x("string"),title:m().optional(),description:m().optional(),enum:C(m()),enumNames:C(m()).optional(),default:m().optional()}),Yg=G([Bg,Wg]),Xg=w({type:x("array"),title:m().optional(),description:m().optional(),minItems:U().optional(),maxItems:U().optional(),items:w({type:x("string"),enum:C(m())}),default:C(m()).optional()}),Qg=w({type:x("array"),title:m().optional(),description:m().optional(),minItems:U().optional(),maxItems:U().optional(),items:w({anyOf:C(w({const:m(),title:m()}))}),default:C(m()).optional()}),e_=G([Xg,Qg]),t_=G([Jg,Yg,e_]),r_=G([t_,Hg,Kg,Gg]),o_=fr.extend({mode:x("form").optional(),message:m(),requestedSchema:w({type:x("object"),properties:Q(m(),r_),required:C(m()).optional()})}),n_=fr.extend({mode:x("url"),message:m(),elicitationId:m(),url:m().url()}),s_=G([o_,n_]),i_=ie.extend({method:x("elicitation/create"),params:s_}),a_=Ee.extend({elicitationId:m()}),c_=Te.extend({method:x("notifications/elicitation/complete"),params:a_}),No=ae.extend({action:ve(["accept","decline","cancel"]),content:vs(t=>t===null?void 0:t,Q(m(),G([m(),U(),oe(),C(m())])).optional())}),u_=w({type:x("ref/resource"),uri:m()});var l_=w({type:x("ref/prompt"),name:m()}),d_=xe.extend({ref:G([l_,u_]),argument:w({name:m(),value:m()}),context:w({arguments:Q(m(),m()).optional()}).optional()}),p_=ie.extend({method:x("completion/complete"),params:d_});var f_=ae.extend({completion:ge({values:C(m()).max(100),total:ee(U().int()),hasMore:ee(oe())})}),m_=w({uri:m().startsWith("file://"),name:m().optional(),_meta:Q(m(),X()).optional()}),h_=ie.extend({method:x("roots/list"),params:xe.optional()}),Ls=ae.extend({roots:C(m_)}),g_=Te.extend({method:x("notifications/roots/list_changed"),params:Ee.optional()}),px=G([xo,ks,p_,Cs,Sg,vg,og,sg,cg,pg,mg,br,As,ko,To,Po,Oo]),fx=G([wo,zo,Es,g_,vr]),mx=G([So,Ds,js,No,Ls,Eo,Io,At]),hx=G([xo,Vg,i_,h_,ko,To,Po,Oo]),gx=G([wo,zo,Dg,gg,lg,Ng,Tg,vr,c_]),_x=G([So,Jh,f_,Eg,$g,ng,ig,ug,Ro,Og,Eo,Io,At]),O=class t extends Error{constructor(e,r,o){super(`MCP error ${e}: ${r}`),this.code=e,this.data=o,this.name="McpError"}static fromError(e,r,o){if(e===D.UrlElicitationRequired&&o){let n=o;if(n.elicitations)return new $s(n.elicitations,r)}return new t(e,r,o)}},$s=class extends O{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(D.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function st(t){return t==="completed"||t==="failed"||t==="cancelled"}var Jx=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function Zs(t){let r=go(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let o=Sl(r);if(typeof o!="string")throw new Error("Schema method literal must be a string");return o}function qs(t,e){let r=ot(t,e);if(!r.success)throw r.error;return r.data}var S_=6e4,Ao=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(wo,r=>{this._oncancel(r)}),this.setNotificationHandler(zo,r=>{this._onprogress(r)}),this.setRequestHandler(xo,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(ko,async(r,o)=>{let n=await this._taskStore.getTask(r.params.taskId,o.sessionId);if(!n)throw new O(D.InvalidParams,"Failed to retrieve task: Task not found");return{...n}}),this.setRequestHandler(To,async(r,o)=>{let n=async()=>{let s=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(s,o.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 O(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:o.requestId})}}let i=await this._taskStore.getTask(s,o.sessionId);if(!i)throw new O(D.InvalidParams,`Task not found: ${s}`);if(!st(i.status))return await this._waitForTaskUpdate(s,o.signal),await n();if(st(i.status)){let a=await this._taskStore.getTaskResult(s,o.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[nt]:{taskId:s}}}}return await n()};return await n()}),this.setRequestHandler(Po,async(r,o)=>{try{let{tasks:n,nextCursor:s}=await this._taskStore.listTasks(r.params?.cursor,o.sessionId);return{tasks:n,nextCursor:s,_meta:{}}}catch(n){throw new O(D.InvalidParams,`Failed to list tasks: ${n instanceof Error?n.message:String(n)}`)}}),this.setRequestHandler(Oo,async(r,o)=>{try{let n=await this._taskStore.getTask(r.params.taskId,o.sessionId);if(!n)throw new O(D.InvalidParams,`Task not found: ${r.params.taskId}`);if(st(n.status))throw new O(D.InvalidParams,`Cannot cancel task in terminal status: ${n.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",o.sessionId),this._clearTaskQueue(r.params.taskId);let s=await this._taskStore.getTask(r.params.taskId,o.sessionId);if(!s)throw new O(D.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(n){throw n instanceof O?n:new O(D.InvalidRequest,`Failed to cancel task: ${n instanceof Error?n.message:String(n)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,o,n,s=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(n,r),startTime:Date.now(),timeout:r,maxTotalTimeout:o,resetTimeoutOnProgress:s,onTimeout:n})}_resetTimeout(e){let r=this._timeoutInfo.get(e);if(!r)return!1;let o=Date.now()-r.startTime;if(r.maxTotalTimeout&&o>=r.maxTotalTimeout)throw this._timeoutInfo.delete(e),O.fromError(D.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:o});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 o=this.transport?.onerror;this._transport.onerror=s=>{o?.(s),this._onerror(s)};let n=this._transport?.onmessage;this._transport.onmessage=(s,i)=>{n?.(s,i),mr(s)||Yl(s)?this._onresponse(s):ws(s)?this._onrequest(s,i):Jl(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=O.fromError(D.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let o of e.values())o(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(o=>this._onerror(new Error(`Uncaught error in notification handler: ${o}`)))}_onrequest(e,r){let o=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,n=this._transport,s=e.params?._meta?.[nt]?.taskId;if(o===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:D.MethodNotFound,message:"Method not found"}};s&&this._taskMessageQueue?this._enqueueTaskMessage(s,{type:"error",message:l,timestamp:Date.now()},n?.sessionId).catch(d=>this._onerror(new Error(`Failed to enqueue error response: ${d}`))):n?.send(l).catch(d=>this._onerror(new Error(`Failed to send an error response: ${d}`)));return}let i=new AbortController;this._requestHandlerAbortControllers.set(e.id,i);let a=Gl(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,n?.sessionId):void 0,u={signal:i.signal,sessionId:n?.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 g=f.relatedTask?.taskId??s;return g&&c&&await c.updateTaskStatus(g,"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(()=>o(e,u)).then(async l=>{if(i.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()},n?.sessionId):await n?.send(d)},async l=>{if(i.signal.aborted)return;let d={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(l.code)?l.code:D.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()},n?.sessionId):await n?.send(d)}).catch(l=>this._onerror(new Error(`Failed to send response: ${l}`))).finally(()=>{this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:r,...o}=e.params,n=Number(r),s=this._progressHandlers.get(n);if(!s){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let i=this._responseHandlers.get(n),a=this._timeoutInfo.get(n);if(a&&i&&a.resetTimeoutOnProgress)try{this._resetTimeout(n)}catch(c){this._responseHandlers.delete(n),this._progressHandlers.delete(n),this._cleanupTimeout(n),i(c);return}s(o)}_onresponse(e){let r=Number(e.id),o=this._requestResolvers.get(r);if(o){if(this._requestResolvers.delete(r),mr(e))o(e);else{let i=new O(e.error.code,e.error.message,e.error.data);o(i)}return}let n=this._responseHandlers.get(r);if(n===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(mr(e)&&e.result&&typeof e.result=="object"){let i=e.result;if(i.task&&typeof i.task=="object"){let a=i.task;typeof a.taskId=="string"&&(s=!0,this._taskProgressTokens.set(a.taskId,r))}}if(s||this._progressHandlers.delete(r),mr(e))n(e);else{let i=O.fromError(e.error.code,e.error.message,e.error.data);n(i)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,r,o){let{task:n}=o??{};if(!n){try{yield{type:"result",result:await this.request(e,r,o)}}catch(i){yield{type:"error",error:i instanceof O?i:new O(D.InternalError,String(i))}}return}let s;try{let i=await this.request(e,At,o);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new O(D.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},o);if(yield{type:"taskStatus",task:a},st(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,o)}:a.status==="failed"?yield{type:"error",error:new O(D.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new O(D.InternalError,`Task ${s} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:s},r,o)};return}let c=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(u=>setTimeout(u,c)),o?.signal?.throwIfAborted()}}catch(i){yield{type:"error",error:i instanceof O?i:new O(D.InternalError,String(i))}}}request(e,r,o){let{relatedRequestId:n,resumptionToken:s,onresumptiontoken:i,task:a,relatedTask:c}=o??{};return new Promise((u,l)=>{let d=b=>{l(b)};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(b){d(b);return}o?.signal?.throwIfAborted();let p=this._requestMessageId++,f={...e,jsonrpc:"2.0",id:p};o?.onprogress&&(this._progressHandlers.set(p,o.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||{},[nt]:c}});let g=b=>{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(b)}},{relatedRequestId:n,resumptionToken:s,onresumptiontoken:i}).catch(k=>this._onerror(new Error(`Failed to send cancellation: ${k}`)));let $=b instanceof O?b:new O(D.RequestTimeout,String(b));l($)};this._responseHandlers.set(p,b=>{if(!o?.signal?.aborted){if(b instanceof Error)return l(b);try{let $=ot(r,b.result);$.success?u($.data):l($.error)}catch($){l($)}}}),o?.signal?.addEventListener("abort",()=>{g(o?.signal?.reason)});let _=o?.timeout??S_,y=()=>g(O.fromError(D.RequestTimeout,"Request timed out",{timeout:_}));this._setupTimeout(p,_,o?.maxTotalTimeout,y,o?.resetTimeoutOnProgress??!1);let v=c?.taskId;if(v){let b=$=>{let k=this._responseHandlers.get(p);k?k($):this._onerror(new Error(`Response handler missing for side-channeled request ${p}`))};this._requestResolvers.set(p,b),this._enqueueTaskMessage(v,{type:"request",message:f,timestamp:Date.now()}).catch($=>{this._cleanupTimeout(p),l($)})}else this._transport.send(f,{relatedRequestId:n,resumptionToken:s,onresumptiontoken:i}).catch(b=>{this._cleanupTimeout(p),l(b)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},Eo,r)}async getTaskResult(e,r,o){return this.request({method:"tasks/result",params:e},r,o)}async listTasks(e,r){return this.request({method:"tasks/list",params:e},Io,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},ed,r)}async notification(e,r){if(!this._transport)throw new Error("Not connected");this.assertNotificationCapability(e.method);let o=r?.relatedTask?.taskId;if(o){let a={...e,jsonrpc:"2.0",params:{...e.params,_meta:{...e.params?._meta||{},[nt]:r.relatedTask}}};await this._enqueueTaskMessage(o,{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||{},[nt]:r.relatedTask}}}),this._transport?.send(a,r).catch(c=>this._onerror(c))});return}let i={...e,jsonrpc:"2.0"};r?.relatedTask&&(i={...i,params:{...i.params,_meta:{...i.params?._meta||{},[nt]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let o=Zs(e);this.assertRequestHandlerCapability(o),this._requestHandlers.set(o,(n,s)=>{let i=qs(e,n);return Promise.resolve(r(i,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 o=Zs(e);this._notificationHandlers.set(o,n=>{let s=qs(e,n);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,o){if(!this._taskStore||!this._taskMessageQueue)throw new Error("Cannot enqueue task message: taskStore and taskMessageQueue are not configured");let n=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(e,r,o,n)}async _clearTaskQueue(e,r){if(this._taskMessageQueue){let o=await this._taskMessageQueue.dequeueAll(e,r);for(let n of o)if(n.type==="request"&&ws(n.message)){let s=n.message.id,i=this._requestResolvers.get(s);i?(i(new O(D.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 o=this._options?.defaultTaskPollInterval??1e3;try{let n=await this._taskStore?.getTask(e);n?.pollInterval&&(o=n.pollInterval)}catch{}return new Promise((n,s)=>{if(r.aborted){s(new O(D.InvalidRequest,"Request cancelled"));return}let i=setTimeout(n,o);r.addEventListener("abort",()=>{clearTimeout(i),s(new O(D.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let o=this._taskStore;if(!o)throw new Error("No task store configured");return{createTask:async n=>{if(!e)throw new Error("No request provided");return await o.createTask(n,e.id,{method:e.method,params:e.params},r)},getTask:async n=>{let s=await o.getTask(n,r);if(!s)throw new O(D.InvalidParams,"Failed to retrieve task: Task not found");return s},storeTaskResult:async(n,s,i)=>{await o.storeTaskResult(n,s,i,r);let a=await o.getTask(n,r);if(a){let c=vr.parse({method:"notifications/tasks/status",params:a});await this.notification(c),st(a.status)&&this._cleanupTaskProgressHandler(n)}},getTaskResult:n=>o.getTaskResult(n,r),updateTaskStatus:async(n,s,i)=>{let a=await o.getTask(n,r);if(!a)throw new O(D.InvalidParams,`Task "${n}" not found - it may have been cleaned up`);if(st(a.status))throw new O(D.InvalidParams,`Cannot update task "${n}" from terminal status "${a.status}" to "${s}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await o.updateTaskStatus(n,s,i,r);let c=await o.getTask(n,r);if(c){let u=vr.parse({method:"notifications/tasks/status",params:c});await this.notification(u),st(c.status)&&this._cleanupTaskProgressHandler(n)}},listTasks:n=>o.listTasks(n,r)}}};function id(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function ad(t,e){let r={...t};for(let o in e){let n=o,s=e[n];if(s===void 0)continue;let i=r[n];id(i)&&id(s)?r[n]={...i,...s}:r[n]=s}return r}var Bf=eo(za(),1),Wf=eo(Gf(),1);function pS(){let t=new Bf.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,Wf.default)(t),t}var yn=class{constructor(e){this._ajv=e??pS()}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 o=>r(o)?{valid:!0,data:o,errorMessage:void 0}:{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(r.errors)}}};var vn=class{constructor(e){this._server=e}requestStream(e,r,o){return this._server.requestStream(e,r,o)}async getTask(e,r){return this._server.getTask({taskId:e},r)}async getTaskResult(e,r,o){return this._server.getTaskResult({taskId:e},r,o)}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 Jf(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 Yf(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 $n=class extends Ao{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Sr.options.map((o,n)=>[o,n])),this.isMessageIgnored=(o,n)=>{let s=this._loggingLevels.get(n);return s?this.LOG_LEVEL_SEVERITY.get(o)this._oninitialize(o)),this.setNotificationHandler(Es,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(Cs,async(o,n)=>{let s=n.sessionId||n.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=o.params,a=Sr.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new vn(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=ad(this._capabilities,e)}setRequestHandler(e,r){let n=go(e)?.method;if(!n)throw new Error("Schema is missing a method literal");let s;if(Rt(n)){let a=n;s=a._zod?.def?.value??a.value}else{let a=n;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=ot(br,c);if(!l.success){let g=l.error instanceof Error?l.error.message:String(l.error);throw new O(D.InvalidParams,`Invalid tools/call request: ${g}`)}let{params:d}=l.data,p=await Promise.resolve(r(c,u));if(d.task){let g=ot(At,p);if(!g.success){let _=g.error instanceof Error?g.error.message:String(g.error);throw new O(D.InvalidParams,`Invalid task creation result: ${_}`)}return g.data}let f=ot(Ro,p);if(!f.success){let g=f.error instanceof Error?f.error.message:String(f.error);throw new O(D.InvalidParams,`Invalid tools/call result: ${g}`)}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){Yf(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&Jf(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:Vl.includes(r)?r:bs,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"},So)}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 o=e.messages[e.messages.length-1],n=Array.isArray(o.content)?o.content:[o.content],s=n.some(u=>u.type==="tool_result"),i=e.messages.length>1?e.messages[e.messages.length-2]:void 0,a=i?Array.isArray(i.content)?i.content:[i.content]:[],c=a.some(u=>u.type==="tool_use");if(s){if(n.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(n.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},js,r):this.request({method:"sampling/createMessage",params:e},Ds,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 n=e;return this.request({method:"elicitation/create",params:n},No,r)}case"form":{if(!this._clientCapabilities?.elicitation?.form)throw new Error("Client does not support form elicitation.");let n=e.mode==="form"?e:{...e,mode:"form"},s=await this.request({method:"elicitation/create",params:n},No,r);if(s.action==="accept"&&s.content&&n.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(n.requestedSchema)(s.content);if(!a.valid)throw new O(D.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof O?i:new O(D.InternalError,`Error validating elicitation response: ${i instanceof Error?i.message:String(i)}`)}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},Ls,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 Na=eo(require("node:process"),1);var bn=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),fS(r)}clear(){this._buffer=void 0}};function fS(t){return Xl.parse(JSON.parse(t))}function Xf(t){return JSON.stringify(t)+` -`}var Sn=class{constructor(e=Na.default.stdin,r=Na.default.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new bn,this._started=!1,this._ondata=o=>{this._readBuffer.append(o),this.processReadBuffer()},this._onerror=o=>{this.onerror?.(o)}}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 o=Xf(e);this._stdout.write(o)?r():this._stdout.once("drain",r)})}};var Aa=eo(require("path"),1);var Ze=require("fs"),wn=require("path"),tm=require("os");var Qf="bugfix,feature,refactor,discovery,decision,change",em="how-it-works,why-it-exists,what-changed,problem-solution,gotcha,pattern,trade-off";var Et=class{static DEFAULTS={CLAUDE_PILOT_MODEL:"haiku",CLAUDE_PILOT_CONTEXT_OBSERVATIONS:"50",CLAUDE_PILOT_WORKER_PORT:"41777",CLAUDE_PILOT_WORKER_HOST:"127.0.0.1",CLAUDE_PILOT_WORKER_BIND:"127.0.0.1",CLAUDE_PILOT_SKIP_TOOLS:"ListMcpResourcesTool,SlashCommand,Skill,TodoWrite,AskUserQuestion",CLAUDE_PILOT_DATA_DIR:(0,wn.join)((0,tm.homedir)(),".pilot/memory"),CLAUDE_PILOT_LOG_LEVEL:"INFO",CLAUDE_PILOT_PYTHON_VERSION:"3.12",CLAUDE_CODE_PATH:"",CLAUDE_PILOT_CONTEXT_SHOW_READ_TOKENS:!1,CLAUDE_PILOT_CONTEXT_SHOW_WORK_TOKENS:!1,CLAUDE_PILOT_CONTEXT_SHOW_SAVINGS_AMOUNT:!1,CLAUDE_PILOT_CONTEXT_SHOW_SAVINGS_PERCENT:!1,CLAUDE_PILOT_CONTEXT_OBSERVATION_TYPES:Qf,CLAUDE_PILOT_CONTEXT_OBSERVATION_CONCEPTS:em,CLAUDE_PILOT_CONTEXT_FULL_COUNT:"10",CLAUDE_PILOT_CONTEXT_FULL_FIELD:"facts",CLAUDE_PILOT_CONTEXT_SESSION_COUNT:"10",CLAUDE_PILOT_CONTEXT_SHOW_LAST_SUMMARY:!0,CLAUDE_PILOT_CONTEXT_SHOW_LAST_MESSAGE:!0,CLAUDE_PILOT_FOLDER_CLAUDEMD_ENABLED:!1,CLAUDE_PILOT_FOLDER_MD_EXCLUDE:"[]",CLAUDE_PILOT_CHROMA_ENABLED:!0,CLAUDE_PILOT_VECTOR_DB:"chroma",CLAUDE_PILOT_EMBEDDING_MODEL:"Xenova/all-MiniLM-L6-v2",CLAUDE_PILOT_EXCLUDE_PROJECTS:"[]",CLAUDE_PILOT_REMOTE_TOKEN:"",CLAUDE_PILOT_RETENTION_ENABLED:!0,CLAUDE_PILOT_RETENTION_MAX_AGE_DAYS:"31",CLAUDE_PILOT_RETENTION_MAX_COUNT:"5000",CLAUDE_PILOT_RETENTION_EXCLUDE_TYPES:'["summary"]',CLAUDE_PILOT_RETENTION_SOFT_DELETE:!1,CLAUDE_PILOT_BATCH_SIZE:"5"};static getAllDefaults(){return{...this.DEFAULTS}}static get(e){return this.DEFAULTS[e]}static getInt(e){let r=this.get(e);return parseInt(r,10)}static getBool(e){return this.get(e)==="true"}static loadFromFile(e){try{if(!(0,Ze.existsSync)(e)){let c=this.getAllDefaults();try{let u=(0,wn.dirname)(e);(0,Ze.existsSync)(u)||(0,Ze.mkdirSync)(u,{recursive:!0}),(0,Ze.writeFileSync)(e,JSON.stringify(c,null,2),"utf-8"),console.log("[SETTINGS] Created settings file with defaults:",e)}catch(u){console.warn("[SETTINGS] Failed to create settings file, using in-memory defaults:",e,u)}return c}let r=(0,Ze.readFileSync)(e,"utf-8"),o=JSON.parse(r),n=o;if(o.env&&typeof o.env=="object"){n=o.env;try{(0,Ze.writeFileSync)(e,JSON.stringify(n,null,2),"utf-8"),console.log("[SETTINGS] Migrated settings file from nested to flat schema:",e)}catch(c){console.warn("[SETTINGS] Failed to auto-migrate settings file:",e,c)}}let s=["CLAUDE_PILOT_CONTEXT_SHOW_READ_TOKENS","CLAUDE_PILOT_CONTEXT_SHOW_WORK_TOKENS","CLAUDE_PILOT_CONTEXT_SHOW_SAVINGS_AMOUNT","CLAUDE_PILOT_CONTEXT_SHOW_SAVINGS_PERCENT","CLAUDE_PILOT_CONTEXT_SHOW_LAST_SUMMARY","CLAUDE_PILOT_CONTEXT_SHOW_LAST_MESSAGE","CLAUDE_PILOT_FOLDER_CLAUDEMD_ENABLED","CLAUDE_PILOT_CHROMA_ENABLED","CLAUDE_PILOT_RETENTION_ENABLED","CLAUDE_PILOT_RETENTION_SOFT_DELETE"],i={...this.DEFAULTS},a=!1;for(let c of Object.keys(this.DEFAULTS))if(n[c]!==void 0)if(s.includes(c)){let u=n[c];typeof u=="string"?(i[c]=u==="true",a=!0):i[c]=u}else i[c]=n[c];if(a)try{(0,Ze.writeFileSync)(e,JSON.stringify(i,null,2),"utf-8"),console.log("[SETTINGS] Migrated boolean settings from strings to actual booleans:",e)}catch(c){console.warn("[SETTINGS] Failed to auto-migrate boolean settings:",e,c)}return i}catch(r){return console.warn("[SETTINGS] Failed to load settings, using defaults:",e,r),this.getAllDefaults()}}};var xn=null,zn=null;function rm(){if(xn!==null)return xn;let t=Aa.default.join(Et.get("CLAUDE_PILOT_DATA_DIR"),"settings.json"),e=Et.loadFromFile(t);return xn=parseInt(e.CLAUDE_PILOT_WORKER_PORT,10),xn}function om(){if(zn!==null)return zn;let t=Aa.default.join(Et.get("CLAUDE_PILOT_DATA_DIR"),"settings.json");return zn=Et.loadFromFile(t).CLAUDE_PILOT_WORKER_HOST,zn}var mS="6.7.6";console.log=(...t)=>{ne.error("CONSOLE","Intercepted console output (MCP protocol protection)",void 0,{args:t})};var hS=rm(),gS=om(),Qr=`http://${gS}:${hS}`,nm={search:"/api/search",timeline:"/api/timeline"};async function sm(t,e){ne.debug("SYSTEM","\u2192 Worker API",void 0,{endpoint:t,params:e});try{let r=new URLSearchParams;for(let[i,a]of Object.entries(e))a!=null&&r.append(i,String(a));let o=`${Qr}${t}?${r}`,n=await fetch(o);if(!n.ok){let i=await n.text();throw new Error(`Worker API error (${n.status}): ${i}`)}let s=await n.json();return ne.debug("SYSTEM","\u2190 Worker API success",void 0,{endpoint:t}),s}catch(r){return ne.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 im(t,e){ne.debug("HTTP","Worker API request (POST)",void 0,{endpoint:t});try{let r=`${Qr}${t}`,o=await fetch(r,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!o.ok){let s=await o.text();throw new Error(`Worker API error (${o.status}): ${s}`)}let n=await o.json();return ne.debug("HTTP","Worker API success (POST)",void 0,{endpoint:t}),{content:[{type:"text",text:JSON.stringify(n,null,2)}]}}catch(r){return ne.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 _S(){try{return(await fetch(`${Qr}/api/health`)).ok}catch(t){return ne.debug("SYSTEM","Worker health check failed",{},t),!1}}var am=[{name:"__IMPORTANT",description:`3-LAYER WORKFLOW (ALWAYS FOLLOW): +`}var Sn=class{constructor(e=Na.default.stdin,r=Na.default.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new bn,this._started=!1,this._ondata=o=>{this._readBuffer.append(o),this.processReadBuffer()},this._onerror=o=>{this.onerror?.(o)}}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 o=Xf(e);this._stdout.write(o)?r():this._stdout.once("drain",r)})}};var Aa=eo(require("path"),1);var Ze=require("fs"),wn=require("path"),tm=require("os");var Qf="bugfix,feature,refactor,discovery,decision,change",em="how-it-works,why-it-exists,what-changed,problem-solution,gotcha,pattern,trade-off";var Et=class{static DEFAULTS={CLAUDE_PILOT_MODEL:"haiku",CLAUDE_PILOT_CONTEXT_OBSERVATIONS:"50",CLAUDE_PILOT_WORKER_PORT:"41777",CLAUDE_PILOT_WORKER_HOST:"127.0.0.1",CLAUDE_PILOT_WORKER_BIND:"127.0.0.1",CLAUDE_PILOT_SKIP_TOOLS:"ListMcpResourcesTool,SlashCommand,Skill,TodoWrite,AskUserQuestion",CLAUDE_PILOT_DATA_DIR:(0,wn.join)((0,tm.homedir)(),".pilot/memory"),CLAUDE_PILOT_LOG_LEVEL:"INFO",CLAUDE_PILOT_PYTHON_VERSION:"3.12",CLAUDE_CODE_PATH:"",CLAUDE_PILOT_CONTEXT_SHOW_READ_TOKENS:!1,CLAUDE_PILOT_CONTEXT_SHOW_WORK_TOKENS:!1,CLAUDE_PILOT_CONTEXT_SHOW_SAVINGS_AMOUNT:!1,CLAUDE_PILOT_CONTEXT_SHOW_SAVINGS_PERCENT:!1,CLAUDE_PILOT_CONTEXT_OBSERVATION_TYPES:Qf,CLAUDE_PILOT_CONTEXT_OBSERVATION_CONCEPTS:em,CLAUDE_PILOT_CONTEXT_FULL_COUNT:"10",CLAUDE_PILOT_CONTEXT_FULL_FIELD:"facts",CLAUDE_PILOT_CONTEXT_SESSION_COUNT:"10",CLAUDE_PILOT_CONTEXT_SHOW_LAST_SUMMARY:!0,CLAUDE_PILOT_CONTEXT_SHOW_LAST_MESSAGE:!0,CLAUDE_PILOT_FOLDER_CLAUDEMD_ENABLED:!1,CLAUDE_PILOT_FOLDER_MD_EXCLUDE:"[]",CLAUDE_PILOT_CHROMA_ENABLED:!0,CLAUDE_PILOT_VECTOR_DB:"chroma",CLAUDE_PILOT_EMBEDDING_MODEL:"Xenova/all-MiniLM-L6-v2",CLAUDE_PILOT_EXCLUDE_PROJECTS:"[]",CLAUDE_PILOT_REMOTE_TOKEN:"",CLAUDE_PILOT_RETENTION_ENABLED:!0,CLAUDE_PILOT_RETENTION_MAX_AGE_DAYS:"31",CLAUDE_PILOT_RETENTION_MAX_COUNT:"5000",CLAUDE_PILOT_RETENTION_EXCLUDE_TYPES:'["summary"]',CLAUDE_PILOT_RETENTION_SOFT_DELETE:!1,CLAUDE_PILOT_BATCH_SIZE:"5"};static getAllDefaults(){return{...this.DEFAULTS}}static get(e){return this.DEFAULTS[e]}static getInt(e){let r=this.get(e);return parseInt(r,10)}static getBool(e){return this.get(e)==="true"}static loadFromFile(e){try{if(!(0,Ze.existsSync)(e)){let c=this.getAllDefaults();try{let u=(0,wn.dirname)(e);(0,Ze.existsSync)(u)||(0,Ze.mkdirSync)(u,{recursive:!0}),(0,Ze.writeFileSync)(e,JSON.stringify(c,null,2),"utf-8"),console.log("[SETTINGS] Created settings file with defaults:",e)}catch(u){console.warn("[SETTINGS] Failed to create settings file, using in-memory defaults:",e,u)}return c}let r=(0,Ze.readFileSync)(e,"utf-8"),o=JSON.parse(r),n=o;if(o.env&&typeof o.env=="object"){n=o.env;try{(0,Ze.writeFileSync)(e,JSON.stringify(n,null,2),"utf-8"),console.log("[SETTINGS] Migrated settings file from nested to flat schema:",e)}catch(c){console.warn("[SETTINGS] Failed to auto-migrate settings file:",e,c)}}let s=["CLAUDE_PILOT_CONTEXT_SHOW_READ_TOKENS","CLAUDE_PILOT_CONTEXT_SHOW_WORK_TOKENS","CLAUDE_PILOT_CONTEXT_SHOW_SAVINGS_AMOUNT","CLAUDE_PILOT_CONTEXT_SHOW_SAVINGS_PERCENT","CLAUDE_PILOT_CONTEXT_SHOW_LAST_SUMMARY","CLAUDE_PILOT_CONTEXT_SHOW_LAST_MESSAGE","CLAUDE_PILOT_FOLDER_CLAUDEMD_ENABLED","CLAUDE_PILOT_CHROMA_ENABLED","CLAUDE_PILOT_RETENTION_ENABLED","CLAUDE_PILOT_RETENTION_SOFT_DELETE"],i={...this.DEFAULTS},a=!1;for(let c of Object.keys(this.DEFAULTS))if(n[c]!==void 0)if(s.includes(c)){let u=n[c];typeof u=="string"?(i[c]=u==="true",a=!0):i[c]=u}else i[c]=n[c];if(a)try{(0,Ze.writeFileSync)(e,JSON.stringify(i,null,2),"utf-8"),console.log("[SETTINGS] Migrated boolean settings from strings to actual booleans:",e)}catch(c){console.warn("[SETTINGS] Failed to auto-migrate boolean settings:",e,c)}return i}catch(r){return console.warn("[SETTINGS] Failed to load settings, using defaults:",e,r),this.getAllDefaults()}}};var xn=null,zn=null;function rm(){if(xn!==null)return xn;let t=Aa.default.join(Et.get("CLAUDE_PILOT_DATA_DIR"),"settings.json"),e=Et.loadFromFile(t);return xn=parseInt(e.CLAUDE_PILOT_WORKER_PORT,10),xn}function om(){if(zn!==null)return zn;let t=Aa.default.join(Et.get("CLAUDE_PILOT_DATA_DIR"),"settings.json");return zn=Et.loadFromFile(t).CLAUDE_PILOT_WORKER_HOST,zn}var mS="6.7.7";console.log=(...t)=>{ne.error("CONSOLE","Intercepted console output (MCP protocol protection)",void 0,{args:t})};var hS=rm(),gS=om(),Qr=`http://${gS}:${hS}`,nm={search:"/api/search",timeline:"/api/timeline"};async function sm(t,e){ne.debug("SYSTEM","\u2192 Worker API",void 0,{endpoint:t,params:e});try{let r=new URLSearchParams;for(let[i,a]of Object.entries(e))a!=null&&r.append(i,String(a));let o=`${Qr}${t}?${r}`,n=await fetch(o);if(!n.ok){let i=await n.text();throw new Error(`Worker API error (${n.status}): ${i}`)}let s=await n.json();return ne.debug("SYSTEM","\u2190 Worker API success",void 0,{endpoint:t}),s}catch(r){return ne.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 im(t,e){ne.debug("HTTP","Worker API request (POST)",void 0,{endpoint:t});try{let r=`${Qr}${t}`,o=await fetch(r,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!o.ok){let s=await o.text();throw new Error(`Worker API error (${o.status}): ${s}`)}let n=await o.json();return ne.debug("HTTP","Worker API success (POST)",void 0,{endpoint:t}),{content:[{type:"text",text:JSON.stringify(n,null,2)}]}}catch(r){return ne.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 _S(){try{return(await fetch(`${Qr}/api/health`)).ok}catch(t){return ne.debug("SYSTEM","Worker health check failed",{},t),!1}}var am=[{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 diff --git a/pilot/scripts/worker-service.cjs b/pilot/scripts/worker-service.cjs index 89d6ff05..04df1dd6 100755 --- a/pilot/scripts/worker-service.cjs +++ b/pilot/scripts/worker-service.cjs @@ -933,7 +933,7 @@ ${J.dim}No previous sessions found for this project yet.${J.reset} path: iss.path ? [${ti(y)}, ...iss.path] : [${ti(y)}] })));`),d.write(`newResult[${ti(y)}] = ${b}.value`)}d.write("payload.value = newResult;"),d.write("return payload;");let h=d.compile();return(y,b)=>h(p,y,b)},s,i=Gi,a=!Lu.jitless,c=a&&_h.value,l=e.catchall,u;t._zod.parse=(p,d)=>{u??(u=r.value);let m=p.value;if(!i(m))return p.issues.push({expected:"object",code:"invalid_type",input:m,inst:t}),p;let f=[];if(a&&c&&d?.async===!1&&d.jitless!==!0)s||(s=n(e.shape)),p=s(p,d);else{p.value={};let b=u.shape;for(let x of u.keys){let w=b[x],S=w._zod.run({value:m[x],issues:[]},d),E=w._zod.optin==="optional"&&w._zod.optout==="optional";S instanceof Promise?f.push(S.then(k=>E?sS(k,p,x,m):Zu(k,p,x))):E?sS(S,p,x,m):Zu(S,p,x)}}if(!l)return f.length?Promise.all(f).then(()=>p):p;let v=[],g=u.keySet,h=l._zod,y=h.def.type;for(let b of Object.keys(m)){if(g.has(b))continue;if(y==="never"){v.push(b);continue}let x=h.run({value:m[b],issues:[]},d);x instanceof Promise?f.push(x.then(w=>Zu(w,p,b))):Zu(x,p,b)}return v.length&&p.issues.push({code:"unrecognized_keys",keys:v,input:m,inst:t}),f.length?Promise.all(f).then(()=>p):p}});function iS(t,e,r,n){for(let s of t)if(s.issues.length===0)return e.value=s.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(s=>s.issues.map(i=>dn(i,n,Gr())))}),e}var Dh=z("$ZodUnion",(t,e)=>{at.init(t,e),it(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),it(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),it(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),it(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=>Go(n.source)).join("|")})$`)}}),t._zod.parse=(r,n)=>{let s=!1,i=[];for(let a of e.options){let o=a._zod.run({value:r.value,issues:[]},n);if(o instanceof Promise)i.push(o),s=!0;else{if(o.issues.length===0)return o;i.push(o)}}return s?Promise.all(i).then(a=>iS(a,r,t,n)):iS(i,r,t,n)}}),HS=z("$ZodDiscriminatedUnion",(t,e)=>{Dh.init(t,e);let r=t._zod.parse;it(t._zod,"propValues",()=>{let s={};for(let i of e.options){let a=i._zod.propValues;if(!a||Object.keys(a).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(i)}"`);for(let[o,c]of Object.entries(a)){s[o]||(s[o]=new Set);for(let l of c)s[o].add(l)}}return s});let n=Zo(()=>{let s=e.options,i=new Map;for(let a of s){let o=a._zod.propValues[e.discriminator];if(!o||o.size===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(a)}"`);for(let c of o){if(i.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);i.set(c,a)}}return i});t._zod.parse=(s,i)=>{let a=s.value;if(!Gi(a))return s.issues.push({code:"invalid_type",expected:"object",input:a,inst:t}),s;let o=n.value.get(a?.[e.discriminator]);return o?o._zod.run(s,i):e.unionFallback?r(s,i):(s.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:a,path:[e.discriminator],inst:t}),s)}}),BS=z("$ZodIntersection",(t,e)=>{at.init(t,e),t._zod.parse=(r,n)=>{let s=r.value,i=e.left._zod.run({value:s,issues:[]},n),a=e.right._zod.run({value:s,issues:[]},n);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([c,l])=>aS(r,c,l)):aS(r,i,a)}});function Nh(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(Yi(t)&&Yi(e)){let r=Object.keys(e),n=Object.keys(t).filter(i=>r.indexOf(i)!==-1),s={...t,...e};for(let i of n){let a=Nh(t[i],e[i]);if(!a.valid)return{valid:!1,mergeErrorPath:[i,...a.mergeErrorPath]};s[i]=a.data}return{valid:!0,data:s}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n{at.init(t,e),t._zod.parse=(r,n)=>{let s=r.value;if(!Yi(s))return r.issues.push({expected:"record",code:"invalid_type",input:s,inst:t}),r;let i=[];if(e.keyType._zod.values){let a=e.keyType._zod.values;r.value={};for(let c of a)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){let l=e.valueType._zod.run({value:s[c],issues:[]},n);l instanceof Promise?i.push(l.then(u=>{u.issues.length&&r.issues.push(...Dn(c,u.issues)),r.value[c]=u.value})):(l.issues.length&&r.issues.push(...Dn(c,l.issues)),r.value[c]=l.value)}let o;for(let c in s)a.has(c)||(o=o??[],o.push(c));o&&o.length>0&&r.issues.push({code:"unrecognized_keys",input:s,inst:t,keys:o})}else{r.value={};for(let a of Reflect.ownKeys(s)){if(a==="__proto__")continue;let o=e.keyType._zod.run({value:a,issues:[]},n);if(o instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(o.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:o.issues.map(l=>dn(l,n,Gr())),input:a,path:[a],inst:t}),r.value[o.value]=o.value;continue}let c=e.valueType._zod.run({value:s[a],issues:[]},n);c instanceof Promise?i.push(c.then(l=>{l.issues.length&&r.issues.push(...Dn(a,l.issues)),r.value[o.value]=l.value})):(c.issues.length&&r.issues.push(...Dn(a,c.issues)),r.value[o.value]=c.value)}}return i.length?Promise.all(i).then(()=>r):r}});var ZS=z("$ZodEnum",(t,e)=>{at.init(t,e);let r=vh(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>wh.has(typeof n)).map(n=>typeof n=="string"?ks(n):n.toString()).join("|")})$`),t._zod.parse=(n,s)=>{let i=n.value;return t._zod.values.has(i)||n.issues.push({code:"invalid_value",values:r,input:i,inst:t}),n}}),VS=z("$ZodLiteral",(t,e)=>{at.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?ks(r):r?r.toString():String(r)).join("|")})$`),t._zod.parse=(r,n)=>{let s=r.value;return t._zod.values.has(s)||r.issues.push({code:"invalid_value",values:e.values,input:s,inst:t}),r}});var GS=z("$ZodTransform",(t,e)=>{at.init(t,e),t._zod.parse=(r,n)=>{let s=e.transform(r.value,r);if(n.async)return(s instanceof Promise?s:Promise.resolve(s)).then(a=>(r.value=a,r));if(s instanceof Promise)throw new rs;return r.value=s,r}}),YS=z("$ZodOptional",(t,e)=>{at.init(t,e),t._zod.optin="optional",t._zod.optout="optional",it(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),it(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Go(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)}),KS=z("$ZodNullable",(t,e)=>{at.init(t,e),it(t._zod,"optin",()=>e.innerType._zod.optin),it(t._zod,"optout",()=>e.innerType._zod.optout),it(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Go(r.source)}|null)$`):void 0}),it(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)}),JS=z("$ZodDefault",(t,e)=>{at.init(t,e),t._zod.optin="optional",it(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(r.value===void 0)return r.value=e.defaultValue,r;let s=e.innerType._zod.run(r,n);return s instanceof Promise?s.then(i=>oS(i,e)):oS(s,e)}});function oS(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var QS=z("$ZodPrefault",(t,e)=>{at.init(t,e),t._zod.optin="optional",it(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))}),XS=z("$ZodNonOptional",(t,e)=>{at.init(t,e),it(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 s=e.innerType._zod.run(r,n);return s instanceof Promise?s.then(i=>cS(i,t)):cS(s,t)}});function cS(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 eE=z("$ZodCatch",(t,e)=>{at.init(t,e),t._zod.optin="optional",it(t._zod,"optout",()=>e.innerType._zod.optout),it(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{let s=e.innerType._zod.run(r,n);return s instanceof Promise?s.then(i=>(r.value=i.value,i.issues.length&&(r.value=e.catchValue({...r,error:{issues:i.issues.map(a=>dn(a,n,Gr()))},input:r.value}),r.issues=[]),r)):(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(i=>dn(i,n,Gr()))},input:r.value}),r.issues=[]),r)}});var tE=z("$ZodPipe",(t,e)=>{at.init(t,e),it(t._zod,"values",()=>e.in._zod.values),it(t._zod,"optin",()=>e.in._zod.optin),it(t._zod,"optout",()=>e.out._zod.optout),t._zod.parse=(r,n)=>{let s=e.in._zod.run(r,n);return s instanceof Promise?s.then(i=>lS(i,e,n)):lS(s,e,n)}});function lS(t,e,r){return ri(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var rE=z("$ZodReadonly",(t,e)=>{at.init(t,e),it(t._zod,"propValues",()=>e.innerType._zod.propValues),it(t._zod,"values",()=>e.innerType._zod.values),it(t._zod,"optin",()=>e.innerType._zod.optin),it(t._zod,"optout",()=>e.innerType._zod.optout),t._zod.parse=(r,n)=>{let s=e.innerType._zod.run(r,n);return s instanceof Promise?s.then(uS):uS(s)}});function uS(t){return t.value=Object.freeze(t.value),t}var nE=z("$ZodCustom",(t,e)=>{rr.init(t,e),at.init(t,e),t._zod.parse=(r,n)=>r,t._zod.check=r=>{let n=r.value,s=e.fn(n);if(s instanceof Promise)return s.then(i=>pS(i,r,n,t));pS(s,r,n,t)}});function pS(t,e,r,n){if(!t){let s={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(s.params=n._zod.def.params),e.issues.push(kh(s))}}var _q=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},wq=()=>{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 ${_q(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${Uu(n.values[0])}`:`Invalid option: expected one of ${qu(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",i=e(n.origin);return i?`Too big: expected ${n.origin??"value"} to have ${s}${n.maximum.toString()} ${i.unit??"elements"}`:`Too big: expected ${n.origin??"value"} to be ${s}${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?">=":">",i=e(n.origin);return i?`Too small: expected ${n.origin} to have ${s}${n.minimum.toString()} ${i.unit}`:`Too small: expected ${n.origin} to be ${s}${n.minimum.toString()}`}case"invalid_format":{let s=n;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]??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":""}: ${qu(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 sE(){return{localeError:wq()}}var Mh=class{constructor(){this._map=new Map,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}clear(){return this._map=new Map,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)??{}};return delete n.id,{...n,...this._map.get(e)}}return this._map.get(e)}has(e){return this._map.has(e)}};function Sq(){return new Mh}var Qo=Sq();function iE(t,e){return new t({type:"string",...me(e)})}function aE(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...me(e)})}function zh(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...me(e)})}function oE(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...me(e)})}function cE(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...me(e)})}function lE(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...me(e)})}function uE(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...me(e)})}function pE(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...me(e)})}function dE(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...me(e)})}function mE(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...me(e)})}function fE(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...me(e)})}function hE(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...me(e)})}function gE(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...me(e)})}function vE(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...me(e)})}function yE(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...me(e)})}function bE(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...me(e)})}function xE(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...me(e)})}function _E(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...me(e)})}function wE(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...me(e)})}function SE(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...me(e)})}function EE(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...me(e)})}function kE(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...me(e)})}function TE(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...me(e)})}function RE(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...me(e)})}function $E(t,e){return new t({type:"string",format:"date",check:"string_format",...me(e)})}function OE(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...me(e)})}function PE(t,e){return new t({type:"string",format:"duration",check:"string_format",...me(e)})}function CE(t,e){return new t({type:"number",checks:[],...me(e)})}function IE(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...me(e)})}function AE(t,e){return new t({type:"boolean",...me(e)})}function NE(t,e){return new t({type:"null",...me(e)})}function jE(t){return new t({type:"unknown"})}function DE(t,e){return new t({type:"never",...me(e)})}function Gu(t,e){return new Ih({check:"less_than",...me(e),value:t,inclusive:!1})}function Xo(t,e){return new Ih({check:"less_than",...me(e),value:t,inclusive:!0})}function Yu(t,e){return new Ah({check:"greater_than",...me(e),value:t,inclusive:!1})}function ec(t,e){return new Ah({check:"greater_than",...me(e),value:t,inclusive:!0})}function Ku(t,e){return new Hw({check:"multiple_of",...me(e),value:t})}function Ju(t,e){return new Ww({check:"max_length",...me(e),maximum:t})}function Ki(t,e){return new Zw({check:"min_length",...me(e),minimum:t})}function Qu(t,e){return new Vw({check:"length_equals",...me(e),length:t})}function Lh(t,e){return new Gw({check:"string_format",format:"regex",...me(e),pattern:t})}function qh(t){return new Yw({check:"string_format",format:"lowercase",...me(t)})}function Fh(t){return new Kw({check:"string_format",format:"uppercase",...me(t)})}function Uh(t,e){return new Jw({check:"string_format",format:"includes",...me(e),includes:t})}function Hh(t,e){return new Qw({check:"string_format",format:"starts_with",...me(e),prefix:t})}function Bh(t,e){return new Xw({check:"string_format",format:"ends_with",...me(e),suffix:t})}function ni(t){return new eS({check:"overwrite",tx:t})}function Wh(t){return ni(e=>e.normalize(t))}function Zh(){return ni(t=>t.trim())}function Vh(){return ni(t=>t.toLowerCase())}function Gh(){return ni(t=>t.toUpperCase())}function ME(t,e,r){return new t({type:"array",element:e,...me(r)})}function zE(t,e,r){let n=me(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function LE(t,e,r){return new t({type:"custom",check:"custom",fn:e,...me(r)})}function Ji(t){return!!t._zod}function mn(t,e){return Ji(t)?Ko(t,e):t.safeParse(e)}function Xu(t){if(!t)return;let e;if(Ji(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function qE(t){if(Ji(t)){let i=t._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=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 rc={};Nn(rc,{ZodISODate:()=>UE,ZodISODateTime:()=>FE,ZodISODuration:()=>BE,ZodISOTime:()=>HE,date:()=>Kh,datetime:()=>Yh,duration:()=>Qh,time:()=>Jh});var FE=z("ZodISODateTime",(t,e)=>{SS.init(t,e),yt.init(t,e)});function Yh(t){return RE(FE,t)}var UE=z("ZodISODate",(t,e)=>{ES.init(t,e),yt.init(t,e)});function Kh(t){return $E(UE,t)}var HE=z("ZodISOTime",(t,e)=>{kS.init(t,e),yt.init(t,e)});function Jh(t){return OE(HE,t)}var BE=z("ZodISODuration",(t,e)=>{TS.init(t,e),yt.init(t,e)});function Qh(t){return PE(BE,t)}var WE=(t,e)=>{Hu.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>uw(t,r)},flatten:{value:r=>lw(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},Hde=z("ZodError",WE),nc=z("ZodError",WE,{Parent:Error});var ZE=pw(nc),VE=dw(nc),GE=Rh(nc),YE=$h(nc);var Et=z("ZodType",(t,e)=>(at.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)=>jn(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>ZE(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>GE(t,r,n),t.parseAsync=async(r,n)=>VE(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>YE(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(x8(r,n)),t.superRefine=r=>t.check(_8(r)),t.overwrite=r=>t.check(ni(r)),t.optional=()=>St(t),t.nullable=()=>QE(t),t.nullish=()=>St(QE(t)),t.nonoptional=r=>m8(t,r),t.array=()=>Ae(t),t.or=r=>ot([t,r]),t.and=r=>tp(t,r),t.transform=r=>eg(t,nk(r)),t.default=r=>u8(t,r),t.prefault=r=>d8(t,r),t.catch=r=>h8(t,r),t.pipe=r=>eg(t,r),t.readonly=()=>y8(t),t.describe=r=>{let n=t.clone();return Qo.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return Qo.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return Qo.get(t);let n=t.clone();return Qo.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),XE=z("_ZodString",(t,e)=>{Vu.init(t,e),Et.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(Lh(...n)),t.includes=(...n)=>t.check(Uh(...n)),t.startsWith=(...n)=>t.check(Hh(...n)),t.endsWith=(...n)=>t.check(Bh(...n)),t.min=(...n)=>t.check(Ki(...n)),t.max=(...n)=>t.check(Ju(...n)),t.length=(...n)=>t.check(Qu(...n)),t.nonempty=(...n)=>t.check(Ki(1,...n)),t.lowercase=n=>t.check(qh(n)),t.uppercase=n=>t.check(Fh(n)),t.trim=()=>t.check(Zh()),t.normalize=(...n)=>t.check(Wh(...n)),t.toLowerCase=()=>t.check(Vh()),t.toUpperCase=()=>t.check(Gh())}),Iq=z("ZodString",(t,e)=>{Vu.init(t,e),XE.init(t,e),t.email=r=>t.check(aE(Aq,r)),t.url=r=>t.check(pE(Nq,r)),t.jwt=r=>t.check(TE(Yq,r)),t.emoji=r=>t.check(dE(jq,r)),t.guid=r=>t.check(zh(KE,r)),t.uuid=r=>t.check(oE(ep,r)),t.uuidv4=r=>t.check(cE(ep,r)),t.uuidv6=r=>t.check(lE(ep,r)),t.uuidv7=r=>t.check(uE(ep,r)),t.nanoid=r=>t.check(mE(Dq,r)),t.guid=r=>t.check(zh(KE,r)),t.cuid=r=>t.check(fE(Mq,r)),t.cuid2=r=>t.check(hE(zq,r)),t.ulid=r=>t.check(gE(Lq,r)),t.base64=r=>t.check(SE(Zq,r)),t.base64url=r=>t.check(EE(Vq,r)),t.xid=r=>t.check(vE(qq,r)),t.ksuid=r=>t.check(yE(Fq,r)),t.ipv4=r=>t.check(bE(Uq,r)),t.ipv6=r=>t.check(xE(Hq,r)),t.cidrv4=r=>t.check(_E(Bq,r)),t.cidrv6=r=>t.check(wE(Wq,r)),t.e164=r=>t.check(kE(Gq,r)),t.datetime=r=>t.check(Yh(r)),t.date=r=>t.check(Kh(r)),t.time=r=>t.check(Jh(r)),t.duration=r=>t.check(Qh(r))});function D(t){return iE(Iq,t)}var yt=z("ZodStringFormat",(t,e)=>{ft.init(t,e),XE.init(t,e)}),Aq=z("ZodEmail",(t,e)=>{fS.init(t,e),yt.init(t,e)});var KE=z("ZodGUID",(t,e)=>{dS.init(t,e),yt.init(t,e)});var ep=z("ZodUUID",(t,e)=>{mS.init(t,e),yt.init(t,e)});var Nq=z("ZodURL",(t,e)=>{hS.init(t,e),yt.init(t,e)});var jq=z("ZodEmoji",(t,e)=>{gS.init(t,e),yt.init(t,e)});var Dq=z("ZodNanoID",(t,e)=>{vS.init(t,e),yt.init(t,e)});var Mq=z("ZodCUID",(t,e)=>{yS.init(t,e),yt.init(t,e)});var zq=z("ZodCUID2",(t,e)=>{bS.init(t,e),yt.init(t,e)});var Lq=z("ZodULID",(t,e)=>{xS.init(t,e),yt.init(t,e)});var qq=z("ZodXID",(t,e)=>{_S.init(t,e),yt.init(t,e)});var Fq=z("ZodKSUID",(t,e)=>{wS.init(t,e),yt.init(t,e)});var Uq=z("ZodIPv4",(t,e)=>{RS.init(t,e),yt.init(t,e)});var Hq=z("ZodIPv6",(t,e)=>{$S.init(t,e),yt.init(t,e)});var Bq=z("ZodCIDRv4",(t,e)=>{OS.init(t,e),yt.init(t,e)});var Wq=z("ZodCIDRv6",(t,e)=>{PS.init(t,e),yt.init(t,e)});var Zq=z("ZodBase64",(t,e)=>{IS.init(t,e),yt.init(t,e)});var Vq=z("ZodBase64URL",(t,e)=>{AS.init(t,e),yt.init(t,e)});var Gq=z("ZodE164",(t,e)=>{NS.init(t,e),yt.init(t,e)});var Yq=z("ZodJWT",(t,e)=>{jS.init(t,e),yt.init(t,e)});var ek=z("ZodNumber",(t,e)=>{jh.init(t,e),Et.init(t,e),t.gt=(n,s)=>t.check(Yu(n,s)),t.gte=(n,s)=>t.check(ec(n,s)),t.min=(n,s)=>t.check(ec(n,s)),t.lt=(n,s)=>t.check(Gu(n,s)),t.lte=(n,s)=>t.check(Xo(n,s)),t.max=(n,s)=>t.check(Xo(n,s)),t.int=n=>t.check(JE(n)),t.safe=n=>t.check(JE(n)),t.positive=n=>t.check(Yu(0,n)),t.nonnegative=n=>t.check(ec(0,n)),t.negative=n=>t.check(Gu(0,n)),t.nonpositive=n=>t.check(Xo(0,n)),t.multipleOf=(n,s)=>t.check(Ku(n,s)),t.step=(n,s)=>t.check(Ku(n,s)),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 Xe(t){return CE(ek,t)}var Kq=z("ZodNumberFormat",(t,e)=>{DS.init(t,e),ek.init(t,e)});function JE(t){return IE(Kq,t)}var Jq=z("ZodBoolean",(t,e)=>{MS.init(t,e),Et.init(t,e)});function Lt(t){return AE(Jq,t)}var Qq=z("ZodNull",(t,e)=>{zS.init(t,e),Et.init(t,e)});function tg(t){return NE(Qq,t)}var Xq=z("ZodUnknown",(t,e)=>{LS.init(t,e),Et.init(t,e)});function bt(){return jE(Xq)}var e8=z("ZodNever",(t,e)=>{qS.init(t,e),Et.init(t,e)});function t8(t){return DE(e8,t)}var r8=z("ZodArray",(t,e)=>{FS.init(t,e),Et.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(Ki(r,n)),t.nonempty=r=>t.check(Ki(1,r)),t.max=(r,n)=>t.check(Ju(r,n)),t.length=(r,n)=>t.check(Qu(r,n)),t.unwrap=()=>t.element});function Ae(t,e){return ME(r8,t,e)}var tk=z("ZodObject",(t,e)=>{US.init(t,e),Et.init(t,e),Be.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>Tr(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:bt()}),t.loose=()=>t.clone({...t._zod.def,catchall:bt()}),t.strict=()=>t.clone({...t._zod.def,catchall:t8()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>Be.extend(t,r),t.merge=r=>Be.merge(t,r),t.pick=r=>Be.pick(t,r),t.omit=r=>Be.omit(t,r),t.partial=(...r)=>Be.partial(sk,t,r[0]),t.required=(...r)=>Be.required(ik,t,r[0])});function ee(t,e){let r={type:"object",get shape(){return Be.assignProp(this,"shape",{...t}),this.shape},...Be.normalizeParams(e)};return new tk(r)}function ur(t,e){return new tk({type:"object",get shape(){return Be.assignProp(this,"shape",{...t}),this.shape},catchall:bt(),...Be.normalizeParams(e)})}var rk=z("ZodUnion",(t,e)=>{Dh.init(t,e),Et.init(t,e),t.options=e.options});function ot(t,e){return new rk({type:"union",options:t,...Be.normalizeParams(e)})}var n8=z("ZodDiscriminatedUnion",(t,e)=>{rk.init(t,e),HS.init(t,e)});function rg(t,e,r){return new n8({type:"union",options:e,discriminator:t,...Be.normalizeParams(r)})}var s8=z("ZodIntersection",(t,e)=>{BS.init(t,e),Et.init(t,e)});function tp(t,e){return new s8({type:"intersection",left:t,right:e})}var i8=z("ZodRecord",(t,e)=>{WS.init(t,e),Et.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function xt(t,e,r){return new i8({type:"record",keyType:t,valueType:e,...Be.normalizeParams(r)})}var Xh=z("ZodEnum",(t,e)=>{ZS.init(t,e),Et.init(t,e),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(n,s)=>{let i={};for(let a of n)if(r.has(a))i[a]=e.entries[a];else throw new Error(`Key ${a} not found in enum`);return new Xh({...e,checks:[],...Be.normalizeParams(s),entries:i})},t.exclude=(n,s)=>{let i={...e.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 Xh({...e,checks:[],...Be.normalizeParams(s),entries:i})}});function Tr(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Xh({type:"enum",entries:r,...Be.normalizeParams(e)})}var a8=z("ZodLiteral",(t,e)=>{VS.init(t,e),Et.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 ie(t,e){return new a8({type:"literal",values:Array.isArray(t)?t:[t],...Be.normalizeParams(e)})}var o8=z("ZodTransform",(t,e)=>{GS.init(t,e),Et.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=i=>{if(typeof i=="string")r.issues.push(Be.issue(i,r.value,e));else{let a=i;a.fatal&&(a.continue=!1),a.code??(a.code="custom"),a.input??(a.input=r.value),a.inst??(a.inst=t),a.continue??(a.continue=!0),r.issues.push(Be.issue(a))}};let s=e.transform(r.value,r);return s instanceof Promise?s.then(i=>(r.value=i,r)):(r.value=s,r)}});function nk(t){return new o8({type:"transform",transform:t})}var sk=z("ZodOptional",(t,e)=>{YS.init(t,e),Et.init(t,e),t.unwrap=()=>t._zod.def.innerType});function St(t){return new sk({type:"optional",innerType:t})}var c8=z("ZodNullable",(t,e)=>{KS.init(t,e),Et.init(t,e),t.unwrap=()=>t._zod.def.innerType});function QE(t){return new c8({type:"nullable",innerType:t})}var l8=z("ZodDefault",(t,e)=>{JS.init(t,e),Et.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function u8(t,e){return new l8({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var p8=z("ZodPrefault",(t,e)=>{QS.init(t,e),Et.init(t,e),t.unwrap=()=>t._zod.def.innerType});function d8(t,e){return new p8({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var ik=z("ZodNonOptional",(t,e)=>{XS.init(t,e),Et.init(t,e),t.unwrap=()=>t._zod.def.innerType});function m8(t,e){return new ik({type:"nonoptional",innerType:t,...Be.normalizeParams(e)})}var f8=z("ZodCatch",(t,e)=>{eE.init(t,e),Et.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function h8(t,e){return new f8({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var g8=z("ZodPipe",(t,e)=>{tE.init(t,e),Et.init(t,e),t.in=e.in,t.out=e.out});function eg(t,e){return new g8({type:"pipe",in:t,out:e})}var v8=z("ZodReadonly",(t,e)=>{rE.init(t,e),Et.init(t,e)});function y8(t){return new v8({type:"readonly",innerType:t})}var ak=z("ZodCustom",(t,e)=>{nE.init(t,e),Et.init(t,e)});function b8(t){let e=new rr({check:"custom"});return e._zod.check=t,e}function ok(t,e){return zE(ak,t??(()=>!0),e)}function x8(t,e={}){return LE(ak,t,e)}function _8(t){let e=b8(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(Be.issue(n,r.value,e._zod.def));else{let s=n;s.fatal&&(s.continue=!1),s.code??(s.code="custom"),s.input??(s.input=r.value),s.inst??(s.inst=e),s.continue??(s.continue=!e._zod.def.abort),r.issues.push(Be.issue(s))}},t(r.value,r)));return e}function ng(t,e){return eg(nk(t),e)}Gr(sE());var ig="2025-11-25";var ck=[ig,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Ts="io.modelcontextprotocol/related-task",np="2.0",Gt=ok(t=>t!==null&&(typeof t=="object"||typeof t=="function")),lk=ot([D(),Xe().int()]),uk=D(),Dme=ur({ttl:ot([Xe(),tg()]).optional(),pollInterval:Xe().optional()}),w8=ee({ttl:Xe().optional()}),S8=ee({taskId:D()}),ag=ur({progressToken:lk.optional(),[Ts]:S8.optional()}),Hr=ee({_meta:ag.optional()}),sc=Hr.extend({task:w8.optional()}),pk=t=>sc.safeParse(t).success,Yt=ee({method:D(),params:Hr.loose().optional()}),Yr=ee({_meta:ag.optional()}),Kr=ee({method:D(),params:Yr.loose().optional()}),Kt=ur({_meta:ag.optional()}),sp=ot([D(),Xe().int()]),dk=ee({jsonrpc:ie(np),id:sp,...Yt.shape}).strict(),og=t=>dk.safeParse(t).success,mk=ee({jsonrpc:ie(np),...Kr.shape}).strict(),fk=t=>mk.safeParse(t).success,cg=ee({jsonrpc:ie(np),id:sp,result:Kt}).strict(),ic=t=>cg.safeParse(t).success;var ye;(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"})(ye||(ye={}));var lg=ee({jsonrpc:ie(np),id:sp.optional(),error:ee({code:Xe().int(),message:D(),data:bt().optional()})}).strict();var hk=t=>lg.safeParse(t).success;var gk=ot([dk,mk,cg,lg]),Mme=ot([cg,lg]),si=Kt.strict(),E8=Yr.extend({requestId:sp.optional(),reason:D().optional()}),ip=Kr.extend({method:ie("notifications/cancelled"),params:E8}),k8=ee({src:D(),mimeType:D().optional(),sizes:Ae(D()).optional(),theme:Tr(["light","dark"]).optional()}),ac=ee({icons:Ae(k8).optional()}),Qi=ee({name:D(),title:D().optional()}),vk=Qi.extend({...Qi.shape,...ac.shape,version:D(),websiteUrl:D().optional(),description:D().optional()}),T8=tp(ee({applyDefaults:Lt().optional()}),xt(D(),bt())),R8=ng(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,tp(ee({form:T8.optional(),url:Gt.optional()}),xt(D(),bt()).optional())),$8=ur({list:Gt.optional(),cancel:Gt.optional(),requests:ur({sampling:ur({createMessage:Gt.optional()}).optional(),elicitation:ur({create:Gt.optional()}).optional()}).optional()}),O8=ur({list:Gt.optional(),cancel:Gt.optional(),requests:ur({tools:ur({call:Gt.optional()}).optional()}).optional()}),P8=ee({experimental:xt(D(),Gt).optional(),sampling:ee({context:Gt.optional(),tools:Gt.optional()}).optional(),elicitation:R8.optional(),roots:ee({listChanged:Lt().optional()}).optional(),tasks:$8.optional()}),C8=Hr.extend({protocolVersion:D(),capabilities:P8,clientInfo:vk}),I8=Yt.extend({method:ie("initialize"),params:C8});var A8=ee({experimental:xt(D(),Gt).optional(),logging:Gt.optional(),completions:Gt.optional(),prompts:ee({listChanged:Lt().optional()}).optional(),resources:ee({subscribe:Lt().optional(),listChanged:Lt().optional()}).optional(),tools:ee({listChanged:Lt().optional()}).optional(),tasks:O8.optional()}),ug=Kt.extend({protocolVersion:D(),capabilities:A8,serverInfo:vk,instructions:D().optional()}),N8=Kr.extend({method:ie("notifications/initialized"),params:Yr.optional()});var ap=Yt.extend({method:ie("ping"),params:Hr.optional()}),j8=ee({progress:Xe(),total:St(Xe()),message:St(D())}),D8=ee({...Yr.shape,...j8.shape,progressToken:lk}),op=Kr.extend({method:ie("notifications/progress"),params:D8}),M8=Hr.extend({cursor:uk.optional()}),oc=Yt.extend({params:M8.optional()}),cc=Kt.extend({nextCursor:uk.optional()}),z8=Tr(["working","input_required","completed","failed","cancelled"]),lc=ee({taskId:D(),status:z8,ttl:ot([Xe(),tg()]),createdAt:D(),lastUpdatedAt:D(),pollInterval:St(Xe()),statusMessage:St(D())}),ii=Kt.extend({task:lc}),L8=Yr.merge(lc),uc=Kr.extend({method:ie("notifications/tasks/status"),params:L8}),cp=Yt.extend({method:ie("tasks/get"),params:Hr.extend({taskId:D()})}),lp=Kt.merge(lc),up=Yt.extend({method:ie("tasks/result"),params:Hr.extend({taskId:D()})}),zme=Kt.loose(),pp=oc.extend({method:ie("tasks/list")}),dp=cc.extend({tasks:Ae(lc)}),mp=Yt.extend({method:ie("tasks/cancel"),params:Hr.extend({taskId:D()})}),yk=Kt.merge(lc),bk=ee({uri:D(),mimeType:St(D()),_meta:xt(D(),bt()).optional()}),xk=bk.extend({text:D()}),pg=D().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),_k=bk.extend({blob:pg}),pc=Tr(["user","assistant"]),Xi=ee({audience:Ae(pc).optional(),priority:Xe().min(0).max(1).optional(),lastModified:rc.datetime({offset:!0}).optional()}),wk=ee({...Qi.shape,...ac.shape,uri:D(),description:St(D()),mimeType:St(D()),annotations:Xi.optional(),_meta:St(ur({}))}),q8=ee({...Qi.shape,...ac.shape,uriTemplate:D(),description:St(D()),mimeType:St(D()),annotations:Xi.optional(),_meta:St(ur({}))}),F8=oc.extend({method:ie("resources/list")}),dg=cc.extend({resources:Ae(wk)}),U8=oc.extend({method:ie("resources/templates/list")}),mg=cc.extend({resourceTemplates:Ae(q8)}),fg=Hr.extend({uri:D()}),H8=fg,B8=Yt.extend({method:ie("resources/read"),params:H8}),hg=Kt.extend({contents:Ae(ot([xk,_k]))}),gg=Kr.extend({method:ie("notifications/resources/list_changed"),params:Yr.optional()}),W8=fg,Z8=Yt.extend({method:ie("resources/subscribe"),params:W8}),V8=fg,G8=Yt.extend({method:ie("resources/unsubscribe"),params:V8}),Y8=Yr.extend({uri:D()}),K8=Kr.extend({method:ie("notifications/resources/updated"),params:Y8}),J8=ee({name:D(),description:St(D()),required:St(Lt())}),Q8=ee({...Qi.shape,...ac.shape,description:St(D()),arguments:St(Ae(J8)),_meta:St(ur({}))}),X8=oc.extend({method:ie("prompts/list")}),vg=cc.extend({prompts:Ae(Q8)}),eF=Hr.extend({name:D(),arguments:xt(D(),D()).optional()}),tF=Yt.extend({method:ie("prompts/get"),params:eF}),yg=ee({type:ie("text"),text:D(),annotations:Xi.optional(),_meta:xt(D(),bt()).optional()}),bg=ee({type:ie("image"),data:pg,mimeType:D(),annotations:Xi.optional(),_meta:xt(D(),bt()).optional()}),xg=ee({type:ie("audio"),data:pg,mimeType:D(),annotations:Xi.optional(),_meta:xt(D(),bt()).optional()}),rF=ee({type:ie("tool_use"),name:D(),id:D(),input:xt(D(),bt()),_meta:xt(D(),bt()).optional()}),nF=ee({type:ie("resource"),resource:ot([xk,_k]),annotations:Xi.optional(),_meta:xt(D(),bt()).optional()}),sF=wk.extend({type:ie("resource_link")}),_g=ot([yg,bg,xg,sF,nF]),iF=ee({role:pc,content:_g}),wg=Kt.extend({description:D().optional(),messages:Ae(iF)}),Sg=Kr.extend({method:ie("notifications/prompts/list_changed"),params:Yr.optional()}),aF=ee({title:D().optional(),readOnlyHint:Lt().optional(),destructiveHint:Lt().optional(),idempotentHint:Lt().optional(),openWorldHint:Lt().optional()}),oF=ee({taskSupport:Tr(["required","optional","forbidden"]).optional()}),Sk=ee({...Qi.shape,...ac.shape,description:D().optional(),inputSchema:ee({type:ie("object"),properties:xt(D(),Gt).optional(),required:Ae(D()).optional()}).catchall(bt()),outputSchema:ee({type:ie("object"),properties:xt(D(),Gt).optional(),required:Ae(D()).optional()}).catchall(bt()).optional(),annotations:aF.optional(),execution:oF.optional(),_meta:xt(D(),bt()).optional()}),cF=oc.extend({method:ie("tools/list")}),Eg=cc.extend({tools:Ae(Sk)}),ea=Kt.extend({content:Ae(_g).default([]),structuredContent:xt(D(),bt()).optional(),isError:Lt().optional()}),Lme=ea.or(Kt.extend({toolResult:bt()})),lF=sc.extend({name:D(),arguments:xt(D(),bt()).optional()}),uF=Yt.extend({method:ie("tools/call"),params:lF}),kg=Kr.extend({method:ie("notifications/tools/list_changed"),params:Yr.optional()}),Ek=ee({autoRefresh:Lt().default(!0),debounceMs:Xe().int().nonnegative().default(300)}),kk=Tr(["debug","info","notice","warning","error","critical","alert","emergency"]),pF=Hr.extend({level:kk}),dF=Yt.extend({method:ie("logging/setLevel"),params:pF}),mF=Yr.extend({level:kk,logger:D().optional(),data:bt()}),fF=Kr.extend({method:ie("notifications/message"),params:mF}),hF=ee({name:D().optional()}),gF=ee({hints:Ae(hF).optional(),costPriority:Xe().min(0).max(1).optional(),speedPriority:Xe().min(0).max(1).optional(),intelligencePriority:Xe().min(0).max(1).optional()}),vF=ee({mode:Tr(["auto","required","none"]).optional()}),yF=ee({type:ie("tool_result"),toolUseId:D().describe("The unique identifier for the corresponding tool call."),content:Ae(_g).default([]),structuredContent:ee({}).loose().optional(),isError:Lt().optional(),_meta:xt(D(),bt()).optional()}),bF=rg("type",[yg,bg,xg]),rp=rg("type",[yg,bg,xg,rF,yF]),xF=ee({role:pc,content:ot([rp,Ae(rp)]),_meta:xt(D(),bt()).optional()}),_F=sc.extend({messages:Ae(xF),modelPreferences:gF.optional(),systemPrompt:D().optional(),includeContext:Tr(["none","thisServer","allServers"]).optional(),temperature:Xe().optional(),maxTokens:Xe().int(),stopSequences:Ae(D()).optional(),metadata:Gt.optional(),tools:Ae(Sk).optional(),toolChoice:vF.optional()}),Tg=Yt.extend({method:ie("sampling/createMessage"),params:_F}),Rg=Kt.extend({model:D(),stopReason:St(Tr(["endTurn","stopSequence","maxTokens"]).or(D())),role:pc,content:bF}),$g=Kt.extend({model:D(),stopReason:St(Tr(["endTurn","stopSequence","maxTokens","toolUse"]).or(D())),role:pc,content:ot([rp,Ae(rp)])}),wF=ee({type:ie("boolean"),title:D().optional(),description:D().optional(),default:Lt().optional()}),SF=ee({type:ie("string"),title:D().optional(),description:D().optional(),minLength:Xe().optional(),maxLength:Xe().optional(),format:Tr(["email","uri","date","date-time"]).optional(),default:D().optional()}),EF=ee({type:Tr(["number","integer"]),title:D().optional(),description:D().optional(),minimum:Xe().optional(),maximum:Xe().optional(),default:Xe().optional()}),kF=ee({type:ie("string"),title:D().optional(),description:D().optional(),enum:Ae(D()),default:D().optional()}),TF=ee({type:ie("string"),title:D().optional(),description:D().optional(),oneOf:Ae(ee({const:D(),title:D()})),default:D().optional()}),RF=ee({type:ie("string"),title:D().optional(),description:D().optional(),enum:Ae(D()),enumNames:Ae(D()).optional(),default:D().optional()}),$F=ot([kF,TF]),OF=ee({type:ie("array"),title:D().optional(),description:D().optional(),minItems:Xe().optional(),maxItems:Xe().optional(),items:ee({type:ie("string"),enum:Ae(D())}),default:Ae(D()).optional()}),PF=ee({type:ie("array"),title:D().optional(),description:D().optional(),minItems:Xe().optional(),maxItems:Xe().optional(),items:ee({anyOf:Ae(ee({const:D(),title:D()}))}),default:Ae(D()).optional()}),CF=ot([OF,PF]),IF=ot([RF,$F,CF]),AF=ot([IF,wF,SF,EF]),NF=sc.extend({mode:ie("form").optional(),message:D(),requestedSchema:ee({type:ie("object"),properties:xt(D(),AF),required:Ae(D()).optional()})}),jF=sc.extend({mode:ie("url"),message:D(),elicitationId:D(),url:D().url()}),DF=ot([NF,jF]),Og=Yt.extend({method:ie("elicitation/create"),params:DF}),MF=Yr.extend({elicitationId:D()}),zF=Kr.extend({method:ie("notifications/elicitation/complete"),params:MF}),Pg=Kt.extend({action:Tr(["accept","decline","cancel"]),content:ng(t=>t===null?void 0:t,xt(D(),ot([D(),Xe(),Lt(),Ae(D())])).optional())}),LF=ee({type:ie("ref/resource"),uri:D()});var qF=ee({type:ie("ref/prompt"),name:D()}),FF=Hr.extend({ref:ot([qF,LF]),argument:ee({name:D(),value:D()}),context:ee({arguments:xt(D(),D()).optional()}).optional()}),UF=Yt.extend({method:ie("completion/complete"),params:FF});var Cg=Kt.extend({completion:ur({values:Ae(D()).max(100),total:St(Xe().int()),hasMore:St(Lt())})}),HF=ee({uri:D().startsWith("file://"),name:D().optional(),_meta:xt(D(),bt()).optional()}),BF=Yt.extend({method:ie("roots/list"),params:Hr.optional()}),WF=Kt.extend({roots:Ae(HF)}),ZF=Kr.extend({method:ie("notifications/roots/list_changed"),params:Yr.optional()}),qme=ot([ap,I8,UF,dF,tF,X8,F8,U8,B8,Z8,G8,uF,cF,cp,up,pp,mp]),Fme=ot([ip,op,N8,ZF,uc]),Ume=ot([si,Rg,$g,Pg,WF,lp,dp,ii]),Hme=ot([ap,Tg,Og,BF,cp,up,pp,mp]),Bme=ot([ip,op,fF,K8,gg,kg,Sg,uc,zF]),Wme=ot([si,ug,Cg,wg,vg,dg,mg,hg,ea,Eg,lp,dp,ii]),de=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===ye.UrlElicitationRequired&&n){let s=n;if(s.elicitations)return new sg(s.elicitations,r)}return new t(e,r,n)}},sg=class extends de{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(ye.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function Rs(t){return t==="completed"||t==="failed"||t==="cancelled"}var Efe=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function Ig(t){let r=Xu(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=qE(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function Ag(t,e){let r=mn(t,e);if(!r.success)throw r.error;return r.data}var QF=6e4,fp=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(ip,r=>{this._oncancel(r)}),this.setNotificationHandler(op,r=>{this._onprogress(r)}),this.setRequestHandler(ap,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(cp,async(r,n)=>{let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new de(ye.InvalidParams,"Failed to retrieve task: Task not found");return{...s}}),this.setRequestHandler(up,async(r,n)=>{let s=async()=>{let i=r.params.taskId;if(this._taskMessageQueue){let o;for(;o=await this._taskMessageQueue.dequeue(i,n.sessionId);){if(o.type==="response"||o.type==="error"){let c=o.message,l=c.id,u=this._requestResolvers.get(l);if(u)if(this._requestResolvers.delete(l),o.type==="response")u(c);else{let p=c,d=new de(p.error.code,p.error.message,p.error.data);u(d)}else{let p=o.type==="response"?"Response":"Error";this._onerror(new Error(`${p} handler missing for request ${l}`))}continue}await this._transport?.send(o.message,{relatedRequestId:n.requestId})}}let a=await this._taskStore.getTask(i,n.sessionId);if(!a)throw new de(ye.InvalidParams,`Task not found: ${i}`);if(!Rs(a.status))return await this._waitForTaskUpdate(i,n.signal),await s();if(Rs(a.status)){let o=await this._taskStore.getTaskResult(i,n.sessionId);return this._clearTaskQueue(i),{...o,_meta:{...o._meta,[Ts]:{taskId:i}}}}return await s()};return await s()}),this.setRequestHandler(pp,async(r,n)=>{try{let{tasks:s,nextCursor:i}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:s,nextCursor:i,_meta:{}}}catch(s){throw new de(ye.InvalidParams,`Failed to list tasks: ${s instanceof Error?s.message:String(s)}`)}}),this.setRequestHandler(mp,async(r,n)=>{try{let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new de(ye.InvalidParams,`Task not found: ${r.params.taskId}`);if(Rs(s.status))throw new de(ye.InvalidParams,`Cannot cancel task in terminal status: ${s.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 de(ye.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...i}}catch(s){throw s instanceof de?s:new de(ye.InvalidRequest,`Failed to cancel task: ${s instanceof Error?s.message:String(s)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,s,i=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(s,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:i,onTimeout:s})}_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),de.fromError(ye.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=i=>{n?.(i),this._onerror(i)};let s=this._transport?.onmessage;this._transport.onmessage=(i,a)=>{s?.(i,a),ic(i)||hk(i)?this._onresponse(i):og(i)?this._onrequest(i,a):fk(i)?this._onnotification(i):this._onerror(new Error(`Unknown message type: ${JSON.stringify(i)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();let r=de.fromError(ye.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,s=this._transport,i=e.params?._meta?.[Ts]?.taskId;if(n===void 0){let u={jsonrpc:"2.0",id:e.id,error:{code:ye.MethodNotFound,message:"Method not found"}};i&&this._taskMessageQueue?this._enqueueTaskMessage(i,{type:"error",message:u,timestamp:Date.now()},s?.sessionId).catch(p=>this._onerror(new Error(`Failed to enqueue error response: ${p}`))):s?.send(u).catch(p=>this._onerror(new Error(`Failed to send an error response: ${p}`)));return}let a=new AbortController;this._requestHandlerAbortControllers.set(e.id,a);let o=pk(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,s?.sessionId):void 0,l={signal:a.signal,sessionId:s?.sessionId,_meta:e.params?._meta,sendNotification:async u=>{let p={relatedRequestId:e.id};i&&(p.relatedTask={taskId:i}),await this.notification(u,p)},sendRequest:async(u,p,d)=>{let m={...d,relatedRequestId:e.id};i&&!m.relatedTask&&(m.relatedTask={taskId:i});let f=m.relatedTask?.taskId??i;return f&&c&&await c.updateTaskStatus(f,"input_required"),await this.request(u,p,m)},authInfo:r?.authInfo,requestId:e.id,requestInfo:r?.requestInfo,taskId:i,taskStore:c,taskRequestedTtl:o?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{o&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,l)).then(async u=>{if(a.signal.aborted)return;let p={result:u,jsonrpc:"2.0",id:e.id};i&&this._taskMessageQueue?await this._enqueueTaskMessage(i,{type:"response",message:p,timestamp:Date.now()},s?.sessionId):await s?.send(p)},async u=>{if(a.signal.aborted)return;let p={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(u.code)?u.code:ye.InternalError,message:u.message??"Internal error",...u.data!==void 0&&{data:u.data}}};i&&this._taskMessageQueue?await this._enqueueTaskMessage(i,{type:"error",message:p,timestamp:Date.now()},s?.sessionId):await s?.send(p)}).catch(u=>this._onerror(new Error(`Failed to send response: ${u}`))).finally(()=>{this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:r,...n}=e.params,s=Number(r),i=this._progressHandlers.get(s);if(!i){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let a=this._responseHandlers.get(s),o=this._timeoutInfo.get(s);if(o&&a&&o.resetTimeoutOnProgress)try{this._resetTimeout(s)}catch(c){this._responseHandlers.delete(s),this._progressHandlers.delete(s),this._cleanupTimeout(s),a(c);return}i(n)}_onresponse(e){let r=Number(e.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),ic(e))n(e);else{let a=new de(e.error.code,e.error.message,e.error.data);n(a)}return}let s=this._responseHandlers.get(r);if(s===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 i=!1;if(ic(e)&&e.result&&typeof e.result=="object"){let a=e.result;if(a.task&&typeof a.task=="object"){let o=a.task;typeof o.taskId=="string"&&(i=!0,this._taskProgressTokens.set(o.taskId,r))}}if(i||this._progressHandlers.delete(r),ic(e))s(e);else{let a=de.fromError(e.error.code,e.error.message,e.error.data);s(a)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,r,n){let{task:s}=n??{};if(!s){try{yield{type:"result",result:await this.request(e,r,n)}}catch(a){yield{type:"error",error:a instanceof de?a:new de(ye.InternalError,String(a))}}return}let i;try{let a=await this.request(e,ii,n);if(a.task)i=a.task.taskId,yield{type:"taskCreated",task:a.task};else throw new de(ye.InternalError,"Task creation did not return a task");for(;;){let o=await this.getTask({taskId:i},n);if(yield{type:"taskStatus",task:o},Rs(o.status)){o.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:i},r,n)}:o.status==="failed"?yield{type:"error",error:new de(ye.InternalError,`Task ${i} failed`)}:o.status==="cancelled"&&(yield{type:"error",error:new de(ye.InternalError,`Task ${i} was cancelled`)});return}if(o.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:i},r,n)};return}let c=o.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(l=>setTimeout(l,c)),n?.signal?.throwIfAborted()}}catch(a){yield{type:"error",error:a instanceof de?a:new de(ye.InternalError,String(a))}}}request(e,r,n){let{relatedRequestId:s,resumptionToken:i,onresumptiontoken:a,task:o,relatedTask:c}=n??{};return new Promise((l,u)=>{let p=y=>{u(y)};if(!this._transport){p(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),o&&this.assertTaskCapability(e.method)}catch(y){p(y);return}n?.signal?.throwIfAborted();let d=this._requestMessageId++,m={...e,jsonrpc:"2.0",id:d};n?.onprogress&&(this._progressHandlers.set(d,n.onprogress),m.params={...e.params,_meta:{...e.params?._meta||{},progressToken:d}}),o&&(m.params={...m.params,task:o}),c&&(m.params={...m.params,_meta:{...m.params?._meta||{},[Ts]:c}});let f=y=>{this._responseHandlers.delete(d),this._progressHandlers.delete(d),this._cleanupTimeout(d),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:d,reason:String(y)}},{relatedRequestId:s,resumptionToken:i,onresumptiontoken:a}).catch(x=>this._onerror(new Error(`Failed to send cancellation: ${x}`)));let b=y instanceof de?y:new de(ye.RequestTimeout,String(y));u(b)};this._responseHandlers.set(d,y=>{if(!n?.signal?.aborted){if(y instanceof Error)return u(y);try{let b=mn(r,y.result);b.success?l(b.data):u(b.error)}catch(b){u(b)}}}),n?.signal?.addEventListener("abort",()=>{f(n?.signal?.reason)});let v=n?.timeout??QF,g=()=>f(de.fromError(ye.RequestTimeout,"Request timed out",{timeout:v}));this._setupTimeout(d,v,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let h=c?.taskId;if(h){let y=b=>{let x=this._responseHandlers.get(d);x?x(b):this._onerror(new Error(`Response handler missing for side-channeled request ${d}`))};this._requestResolvers.set(d,y),this._enqueueTaskMessage(h,{type:"request",message:m,timestamp:Date.now()}).catch(b=>{this._cleanupTimeout(d),u(b)})}else this._transport.send(m,{relatedRequestId:s,resumptionToken:i,onresumptiontoken:a}).catch(y=>{this._cleanupTimeout(d),u(y)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},lp,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},dp,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},yk,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 o={...e,jsonrpc:"2.0",params:{...e.params,_meta:{...e.params?._meta||{},[Ts]:r.relatedTask}}};await this._enqueueTaskMessage(n,{type:"notification",message:o,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 o={...e,jsonrpc:"2.0"};r?.relatedTask&&(o={...o,params:{...o.params,_meta:{...o.params?._meta||{},[Ts]:r.relatedTask}}}),this._transport?.send(o,r).catch(c=>this._onerror(c))});return}let a={...e,jsonrpc:"2.0"};r?.relatedTask&&(a={...a,params:{...a.params,_meta:{...a.params?._meta||{},[Ts]:r.relatedTask}}}),await this._transport.send(a,r)}setRequestHandler(e,r){let n=Ig(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(s,i)=>{let a=Ag(e,s);return Promise.resolve(r(a,i))})}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=Ig(e);this._notificationHandlers.set(n,s=>{let i=Ag(e,s);return Promise.resolve(r(i))})}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 s=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(e,r,n,s)}async _clearTaskQueue(e,r){if(this._taskMessageQueue){let n=await this._taskMessageQueue.dequeueAll(e,r);for(let s of n)if(s.type==="request"&&og(s.message)){let i=s.message.id,a=this._requestResolvers.get(i);a?(a(new de(ye.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(i)):this._onerror(new Error(`Resolver missing for request ${i} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let s=await this._taskStore?.getTask(e);s?.pollInterval&&(n=s.pollInterval)}catch{}return new Promise((s,i)=>{if(r.aborted){i(new de(ye.InvalidRequest,"Request cancelled"));return}let a=setTimeout(s,n);r.addEventListener("abort",()=>{clearTimeout(a),i(new de(ye.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async s=>{if(!e)throw new Error("No request provided");return await n.createTask(s,e.id,{method:e.method,params:e.params},r)},getTask:async s=>{let i=await n.getTask(s,r);if(!i)throw new de(ye.InvalidParams,"Failed to retrieve task: Task not found");return i},storeTaskResult:async(s,i,a)=>{await n.storeTaskResult(s,i,a,r);let o=await n.getTask(s,r);if(o){let c=uc.parse({method:"notifications/tasks/status",params:o});await this.notification(c),Rs(o.status)&&this._cleanupTaskProgressHandler(s)}},getTaskResult:s=>n.getTaskResult(s,r),updateTaskStatus:async(s,i,a)=>{let o=await n.getTask(s,r);if(!o)throw new de(ye.InvalidParams,`Task "${s}" not found - it may have been cleaned up`);if(Rs(o.status))throw new de(ye.InvalidParams,`Cannot update task "${s}" from terminal status "${o.status}" to "${i}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(s,i,a,r);let c=await n.getTask(s,r);if(c){let l=uc.parse({method:"notifications/tasks/status",params:c});await this.notification(l),Rs(c.status)&&this._cleanupTaskProgressHandler(s)}},listTasks:s=>n.listTasks(s,r)}}};function Tk(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function Rk(t,e){let r={...t};for(let n in e){let s=n,i=e[s];if(i===void 0)continue;let a=r[s];Tk(a)&&Tk(i)?r[s]={...a,...i}:r[s]=i}return r}var mR=pe(yy(),1),fR=pe(dR(),1);function UH(){let t=new mR.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,fR.default)(t),t}var Jp=class{constructor(e){this._ajv=e??UH()}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 Qp=class{constructor(e){this._client=e}async*callToolStream(e,r=ea,n){let s=this._client,i={...n,task:n?.task??(s.isToolTask(e.name)?{}:void 0)},a=s.requestStream({method:"tools/call",params:e},r,i),o=s.getToolOutputValidator(e.name);for await(let c of a){if(c.type==="result"&&o){let l=c.result;if(!l.structuredContent&&!l.isError){yield{type:"error",error:new de(ye.InvalidRequest,`Tool ${e.name} has an output schema but did not return structured content`)};return}if(l.structuredContent)try{let u=o(l.structuredContent);if(!u.valid){yield{type:"error",error:new de(ye.InvalidParams,`Structured content does not match the tool's output schema: ${u.errorMessage}`)};return}}catch(u){if(u instanceof de){yield{type:"error",error:u};return}yield{type:"error",error:new de(ye.InvalidParams,`Failed to validate structured content: ${u instanceof Error?u.message:String(u)}`)};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 hR(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 gR(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 Xp(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 s of Object.keys(n)){let i=n[s];r[s]===void 0&&Object.prototype.hasOwnProperty.call(i,"default")&&(r[s]=i.default),r[s]!==void 0&&Xp(i,r[s])}}if(Array.isArray(t.anyOf))for(let r of t.anyOf)typeof r!="boolean"&&Xp(r,e);if(Array.isArray(t.oneOf))for(let r of t.oneOf)typeof r!="boolean"&&Xp(r,e)}}function HH(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 va=class extends fp{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 Jp,r?.listChanged&&(this._pendingListChangedConfig=r.listChanged)}_setupListChangedHandlers(e){e.tools&&this._serverCapabilities?.tools?.listChanged&&this._setupListChangedHandler("tools",kg,e.tools,async()=>(await this.listTools()).tools),e.prompts&&this._serverCapabilities?.prompts?.listChanged&&this._setupListChangedHandler("prompts",Sg,e.prompts,async()=>(await this.listPrompts()).prompts),e.resources&&this._serverCapabilities?.resources?.listChanged&&this._setupListChangedHandler("resources",gg,e.resources,async()=>(await this.listResources()).resources)}get experimental(){return this._experimental||(this._experimental={tasks:new Qp(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=Rk(this._capabilities,e)}setRequestHandler(e,r){let s=Xu(e)?.method;if(!s)throw new Error("Schema is missing a method literal");let i;if(Ji(s)){let o=s;i=o._zod?.def?.value??o.value}else{let o=s;i=o._def?.value??o.value}if(typeof i!="string")throw new Error("Schema method literal must be a string");let a=i;if(a==="elicitation/create"){let o=async(c,l)=>{let u=mn(Og,c);if(!u.success){let y=u.error instanceof Error?u.error.message:String(u.error);throw new de(ye.InvalidParams,`Invalid elicitation request: ${y}`)}let{params:p}=u.data;p.mode=p.mode??"form";let{supportsFormMode:d,supportsUrlMode:m}=HH(this._capabilities.elicitation);if(p.mode==="form"&&!d)throw new de(ye.InvalidParams,"Client does not support form-mode elicitation requests");if(p.mode==="url"&&!m)throw new de(ye.InvalidParams,"Client does not support URL-mode elicitation requests");let f=await Promise.resolve(r(c,l));if(p.task){let y=mn(ii,f);if(!y.success){let b=y.error instanceof Error?y.error.message:String(y.error);throw new de(ye.InvalidParams,`Invalid task creation result: ${b}`)}return y.data}let v=mn(Pg,f);if(!v.success){let y=v.error instanceof Error?v.error.message:String(v.error);throw new de(ye.InvalidParams,`Invalid elicitation result: ${y}`)}let g=v.data,h=p.mode==="form"?p.requestedSchema:void 0;if(p.mode==="form"&&g.action==="accept"&&g.content&&h&&this._capabilities.elicitation?.form?.applyDefaults)try{Xp(h,g.content)}catch{}return g};return super.setRequestHandler(e,o)}if(a==="sampling/createMessage"){let o=async(c,l)=>{let u=mn(Tg,c);if(!u.success){let g=u.error instanceof Error?u.error.message:String(u.error);throw new de(ye.InvalidParams,`Invalid sampling request: ${g}`)}let{params:p}=u.data,d=await Promise.resolve(r(c,l));if(p.task){let g=mn(ii,d);if(!g.success){let h=g.error instanceof Error?g.error.message:String(g.error);throw new de(ye.InvalidParams,`Invalid task creation result: ${h}`)}return g.data}let f=p.tools||p.toolChoice?$g:Rg,v=mn(f,d);if(!v.success){let g=v.error instanceof Error?v.error.message:String(v.error);throw new de(ye.InvalidParams,`Invalid sampling result: ${g}`)}return v.data};return super.setRequestHandler(e,o)}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:ig,capabilities:this._capabilities,clientInfo:this._clientInfo}},ug,r);if(n===void 0)throw new Error(`Server sent invalid initialize result: ${n}`);if(!ck.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){hR(this._serverCapabilities?.tasks?.requests,e,"Server")}assertTaskHandlerCapability(e){this._capabilities&&gR(this._capabilities.tasks?.requests,e,"Client")}async ping(e){return this.request({method:"ping"},si,e)}async complete(e,r){return this.request({method:"completion/complete",params:e},Cg,r)}async setLoggingLevel(e,r){return this.request({method:"logging/setLevel",params:{level:e}},si,r)}async getPrompt(e,r){return this.request({method:"prompts/get",params:e},wg,r)}async listPrompts(e,r){return this.request({method:"prompts/list",params:e},vg,r)}async listResources(e,r){return this.request({method:"resources/list",params:e},dg,r)}async listResourceTemplates(e,r){return this.request({method:"resources/templates/list",params:e},mg,r)}async readResource(e,r){return this.request({method:"resources/read",params:e},hg,r)}async subscribeResource(e,r){return this.request({method:"resources/subscribe",params:e},si,r)}async unsubscribeResource(e,r){return this.request({method:"resources/unsubscribe",params:e},si,r)}async callTool(e,r=ea,n){if(this.isToolTaskRequired(e.name))throw new de(ye.InvalidRequest,`Tool "${e.name}" requires task-based execution. Use client.experimental.tasks.callToolStream() instead.`);let s=await this.request({method:"tools/call",params:e},r,n),i=this.getToolOutputValidator(e.name);if(i){if(!s.structuredContent&&!s.isError)throw new de(ye.InvalidRequest,`Tool ${e.name} has an output schema but did not return structured content`);if(s.structuredContent)try{let a=i(s.structuredContent);if(!a.valid)throw new de(ye.InvalidParams,`Structured content does not match the tool's output schema: ${a.errorMessage}`)}catch(a){throw a instanceof de?a:new de(ye.InvalidParams,`Failed to validate structured content: ${a instanceof Error?a.message:String(a)}`)}}return s}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 s=this._jsonSchemaValidator.getValidator(r.outputSchema);this._cachedToolOutputValidators.set(r.name,s)}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},Eg,r);return this.cacheToolMetadata(n.tools),n}_setupListChangedHandler(e,r,n,s){let i=Ek.safeParse(n);if(!i.success)throw new Error(`Invalid ${e} listChanged options: ${i.error.message}`);if(typeof n.onChanged!="function")throw new Error(`Invalid ${e} listChanged options: onChanged must be a function`);let{autoRefresh:a,debounceMs:o}=i.data,{onChanged:c}=n,l=async()=>{if(!a){c(null,null);return}try{let p=await s();c(null,p)}catch(p){let d=p instanceof Error?p:new Error(String(p));c(d,null)}},u=()=>{if(o){let p=this._listChangedDebounceTimers.get(e);p&&clearTimeout(p);let d=setTimeout(l,o);this._listChangedDebounceTimers.set(e,d)}else l()};this.setNotificationHandler(r,u)}async sendRootsListChanged(){return this.notification({method:"notifications/roots/list_changed"})}};var a$=pe(s$(),1),Uc=pe(require("node:process"),1),o$=require("node:stream");var td=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),gB(r)}clear(){this._buffer=void 0}};function gB(t){return gk.parse(JSON.parse(t))}function i$(t){return JSON.stringify(t)+` -`}var vB=Uc.default.platform==="win32"?["APPDATA","HOMEDRIVE","HOMEPATH","LOCALAPPDATA","PATH","PROCESSOR_ARCHITECTURE","SYSTEMDRIVE","SYSTEMROOT","TEMP","USERNAME","USERPROFILE","PROGRAMFILES"]:["HOME","LOGNAME","PATH","SHELL","TERM","USER"];function yB(){let t={};for(let e of vB){let r=Uc.default.env[e];r!==void 0&&(r.startsWith("()")||(t[e]=r))}return t}var xa=class{constructor(e){this._readBuffer=new td,this._stderrStream=null,this._serverParams=e,(e.stderr==="pipe"||e.stderr==="overlapped")&&(this._stderrStream=new o$.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,a$.default)(this._serverParams.command,this._serverParams.args??[],{env:{...yB(),...this._serverParams.env},stdio:["pipe","pipe",this._serverParams.stderr??"inherit"],shell:!1,windowsHide:Uc.default.platform==="win32"&&bB(),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=i$(e);this._process.stdin.write(n)?r():this._process.stdin.once("drain",r)})}};function bB(){return"type"in Uc.default}_n();se();Gc();se();_n();var kB=5e3;async function pd(t,e={},r=kB){let n=new Promise((s,i)=>setTimeout(()=>i(new Error(`Fetch timeout after ${r}ms`)),r));return Promise.race([fetch(t,e),n])}var TB="6.7.6";function dd(t){let e=xn();return`http://${e.includes(":")&&!e.startsWith("[")?`[${e}]`:e}:${t}`}async function Wy(t){try{return(await pd(`${dd(t)}/api/health`)).ok}catch{return!1}}async function md(t,e=3e4){let r=Date.now();for(;Date.now()-rsetTimeout(n,500))}return!1}async function Yc(t,e=1e4){let r=Date.now();for(;Date.now()-rsetTimeout(n,500))}return!1}async function Kc(t){try{let e=await pd(`${dd(t)}/api/admin/shutdown`,{method:"POST"});return e.ok?!0:(_.warn("SYSTEM","Shutdown request returned error",{port:t,status:e.status}),!1)}catch(e){return e instanceof Error&&(e.message?.includes("ECONNREFUSED")||e.message?.includes("Fetch timeout"))?(_.debug("SYSTEM","Worker already stopped or not responding",{port:t}),!1):(_.error("SYSTEM","Shutdown request failed unexpectedly",{port:t},e),!1)}}function RB(){return TB}async function $B(t){try{let e=await pd(`${dd(t)}/api/version`);return e.ok?(await e.json()).version:null}catch{return _.debug("SYSTEM","Could not fetch worker version",{port:t}),null}}async function w$(t){let e=RB(),r=await $B(t);return r?{matches:e===r,pluginVersion:e,workerVersion:r}:{matches:!0,pluginVersion:e,workerVersion:r}}se();Gc();var Jc=5e3;async function Qc(t,e,r){let n=new Promise(i=>setTimeout(()=>{_.warn("SYSTEM",`${r} timed out after ${e}ms`),i({completed:!1})},e)),s=t.then(i=>({completed:!0,result:i}));return Promise.race([s,n])}async function S$(t){_.info("SYSTEM","Shutdown initiated"),Sn();let e=await Qc(qy(process.pid),Jc,"Enumerate child processes"),r=e.completed?e.result??[]:[];if(_.info("SYSTEM","Found child processes",{count:r.length,pids:r}),t.server&&(await Qc(OB(t.server),Jc,"Close HTTP server"),_.info("SYSTEM","HTTP server closed")),await Qc(t.sessionManager.shutdownAll(),Jc,"Shutdown sessions"),t.mcpClient&&(await Qc(t.mcpClient.close(),Jc,"Close MCP client"),_.info("SYSTEM","MCP client closed")),t.dbManager&&await Qc(t.dbManager.close(),Jc,"Close database"),r.length>0){_.info("SYSTEM","Force killing remaining children");for(let n of r)await Fy(n);await Uy(r,5e3)}_.info("SYSTEM","Worker shutdown complete")}async function OB(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"))}Gc();se();_a();var PB={waitForHealth:md,checkVersionMatch:w$,httpShutdown:Kc,waitForPortFree:Yc,isPortInUse:Wy,spawnDaemon:Vc,writePidFile:Zc,removePidFile:Sn,cleanStalePidFile:Ly,getPlatformTimeout:yi};async function Zy(t,e,r=PB){if(r.cleanStalePidFile(),await r.waitForHealth(t,1e3)){let i=await r.checkVersionMatch(t);if(i.matches)return{ready:!0};if(_.info("SYSTEM","Worker version mismatch detected - auto-restarting",{pluginVersion:i.pluginVersion,workerVersion:i.workerVersion}),await r.httpShutdown(t),!await r.waitForPortFree(t,r.getPlatformTimeout(er.PORT_IN_USE_WAIT)))return{ready:!1,error:"Port did not free after version mismatch restart"};r.removePidFile()}if(await r.isPortInUse(t))return _.info("SYSTEM","Port in use, waiting for worker to become healthy"),await r.waitForHealth(t,r.getPlatformTimeout(er.PORT_IN_USE_WAIT))?{ready:!0}:{ready:!1,error:"Port in use but worker not responding"};_.info("SYSTEM","Starting worker daemon");let n=r.spawnDaemon(e,t);return n===void 0?{ready:!1,error:"Failed to spawn worker daemon"}:(r.writePidFile({pid:n,port:t,startedAt:new Date().toISOString()}),await r.waitForHealth(t,r.getPlatformTimeout(er.POST_SPAWN_WAIT))?{ready:!0}:(r.removePidFile(),{ready:!1,error:"Worker failed to start (health check timeout)"}))}var DD=pe(Kl(),1),v_=pe(require("fs"),1),y_=pe(require("path"),1);se();var p_=pe(Kl(),1),ED=pe(uD(),1),kD=pe(fD(),1),TD=pe(require("path"),1);yr();se();var ate=[/^https?:\/\/localhost(:\d+)?$/,/^https?:\/\/127\.0\.0\.1(:\d+)?$/,/^https?:\/\/\[::1\](:\d+)?$/];function ote(t){return t===void 0?!0:ate.some(e=>e.test(t))}function d_(t){let e=[];e.push(p_.default.json({limit:"50mb"})),e.push((0,ED.default)({origin:(s,i)=>{ote(s)?i(null,!0):(_.warn("SECURITY","CORS request blocked",{origin:s}),i(null,!1))}})),e.push((0,kD.default)()),e.push((s,i,a)=>{let c=[".html",".js",".css",".svg",".png",".jpg",".jpeg",".webp",".woff",".woff2",".ttf",".eot"].some(f=>s.path.endsWith(f)),l=s.path==="/api/logs";if(s.path.startsWith("/health")||s.path==="/"||c||l)return a();let u=Date.now(),p=`${s.method}-${Date.now()}`,d=t(s.method,s.path,s.body);_.info("HTTP",`\u2192 ${s.method} ${s.path}`,{requestId:p},d);let m=i.send.bind(i);i.send=function(f){let v=Date.now()-u;return _.info("HTTP",`\u2190 ${i.statusCode} ${s.path}`,{requestId:p,duration:`${v}ms`}),m(f)},a()});let r=ds(),n=TD.default.join(r,"plugin","ui");return e.push(p_.default.static(n)),e}function Tm(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 m_(t,e,r){if(!r||Object.keys(r).length===0||e.includes("/init"))return"";if(e.includes("/observations")){let n=r.tool_name||"?",s=r.tool_input;return`tool=${_.formatTool(n,s)}`}return e.includes("/summarize")?"requesting summary":""}se();var to=class extends Error{constructor(r,n=500,s,i){super(r);this.statusCode=n;this.code=s;this.details=i;this.name="AppError"}};function RD(t,e,r,n){let s={error:t,message:e};return r&&(s.code=r),n&&(s.details=n),s}var $D=(t,e,r,n)=>{let s=t instanceof to?t.statusCode:500;_.error("HTTP",`Error handling ${e.method} ${e.path}`,{statusCode:s,error:t.message,code:t instanceof to?t.code:void 0},t);let i=RD(t.name||"Error",t.message,t instanceof to?t.code:void 0,t instanceof to?t.details:void 0);r.status(s).json(i)};function OD(t,e){e.status(404).json(RD("NotFound",`Cannot ${t.method} ${t.path}`))}var PD=pe(require("crypto"),1);se();Br();yr();var CD="claude_pilot_session",ID=1440*60*1e3,ro=new Map;function cte(t){let e=t.ip||t.socket.remoteAddress||"";return e==="127.0.0.1"||e==="::1"||e==="::ffff:127.0.0.1"||e==="localhost"}function Rm(){return De.loadFromFile(ar).CLAUDE_PILOT_REMOTE_TOKEN}function lte(){return PD.default.randomBytes(32).toString("hex")}function ute(t,e){let r=ro.get(t);return r?Date.now()-r.createdAt>ID?(ro.delete(t),!1):!0:!1}function AD(t){let e=lte();return ro.set(e,{createdAt:Date.now(),ip:t}),e}function ND(t){ro.delete(t)}function pte(){let t=Date.now();for(let[e,r]of ro.entries())t-r.createdAt>ID&&ro.delete(e)}setInterval(pte,3600*1e3);function f_(t,e,r){if(cte(t))return t.auth={isLocal:!0,scopes:["*"]},r();if(t.path==="/login"||t.path.startsWith("/api/auth/"))return r();let n=t.ip||t.socket.remoteAddress||"unknown",s=t.cookies?.[CD];if(s&&ute(s,n))return t.auth={isLocal:!1,clientId:"web-session",scopes:["*"]},r();let i=t.headers.authorization;if(i&&i.startsWith("Bearer ")){let c=i.slice(7),l=Rm();if(l&&c===l)return t.auth={isLocal:!1,clientId:"api-client",scopes:["*"]},r()}if((t.headers.accept||"").includes("text/html")&&(t.path==="/"||t.path==="/viewer.html")){e.redirect("/login");return}_.warn("SECURITY","Unauthorized request",{path:t.path,ip:n}),e.status(401).json({code:"UNAUTHORIZED",message:"Authentication required"})}function h_(){return CD}function no(){return!!Rm()}se();var jD=new Map;function dte(t){let e=t.ip||t.socket.remoteAddress||"";return e==="127.0.0.1"||e==="::1"||e==="::ffff:127.0.0.1"}function mte(t){let e=t.headers.authorization?.slice(7,23);return e?`token:${e}`:`ip:${t.ip||t.socket.remoteAddress||"unknown"}`}function g_(t=1e3,e=6e4){return(r,n,s)=>{if(dte(r))return s();let i=mte(r),a=Date.now(),o=a-e,c=jD.get(i);if(c||(c={timestamps:[]},jD.set(i,c)),c.timestamps=c.timestamps.filter(u=>u>o),c.timestamps.length>=t){let u=Math.ceil(e/1e3);_.warn("SECURITY","Rate limit exceeded",{key:i,requests:c.timestamps.length,limit:t}),n.setHeader("Retry-After",u.toString()),n.setHeader("X-RateLimit-Limit",t.toString()),n.setHeader("X-RateLimit-Remaining","0"),n.setHeader("X-RateLimit-Reset",Math.ceil((a+e)/1e3).toString()),n.status(429).json({code:"RATE_LIMITED",message:"Too many requests",retryAfter:u});return}c.timestamps.push(a);let l=t-c.timestamps.length;n.setHeader("X-RateLimit-Limit",t.toString()),n.setHeader("X-RateLimit-Remaining",l.toString()),n.setHeader("X-RateLimit-Reset",Math.ceil((a+e)/1e3).toString()),s()}}_n();var fte="6.7.6",$m=class{app;server=null;options;startTime=Date.now();constructor(e){this.options=e,this.app=(0,DD.default)(),this.setupMiddleware(),this.setupCoreRoutes()}getHttpServer(){return this.server}async listen(e,r){return new Promise((n,s)=>{this.server=this.app.listen(e,r,()=>{_.info("SYSTEM","HTTP server started",{host:r,port:e,pid:process.pid}),n()}),this.server.on("error",s)})}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(OD),this.app.use($D)}setupMiddleware(){d_(m_).forEach(s=>this.app.use(s)),this.app.use(g_(1e3,6e4));let r=od(),n=no();r!=="127.0.0.1"&&r!=="localhost"&&n?(_.info("SYSTEM","Enabling authentication middleware for network access",{bind:r}),this.app.use(f_)):r!=="127.0.0.1"&&r!=="localhost"&&!n&&_.warn("SYSTEM","Network access enabled WITHOUT authentication - set CLAUDE_PILOT_REMOTE_TOKEN for security",{bind:r})}setupCoreRoutes(){let e="TEST-008-wrapper-ipc";this.app.get("/api/health",(r,n)=>{n.status(200).json({status:"ok",build:e,managed:process.env.CLAUDE_PILOT_MANAGED==="true",hasIpc:typeof process.send=="function",platform:process.platform,pid:process.pid,initialized:this.options.getInitializationComplete(),coreReady:this.options.getCoreReady(),mcpReady:this.options.getMcpReady()})}),this.app.get("/api/core-ready",(r,n)=>{this.options.getCoreReady()?n.status(200).json({status:"ready",message:"Core services ready (Database + SearchManager)"}):n.status(503).json({status:"initializing",message:"Core services still initializing, please retry"})}),this.app.get("/api/readiness",(r,n)=>{this.options.getInitializationComplete()?n.status(200).json({status:"ready",mcpReady:this.options.getMcpReady()}):n.status(503).json({status:"initializing",message:"Worker is still initializing, please retry"})}),this.app.get("/api/version",(r,n)=>{n.status(200).json({version:fte})}),this.app.get("/api/process-stats",async(r,n)=>{try{let{getProcessStats:s}=await Promise.resolve().then(()=>(Gc(),_$)),i=await s();n.status(200).json({...i,uptime:Math.round((Date.now()-this.startTime)/1e3),platform:process.platform,pid:process.pid})}catch(s){_.error("SYSTEM","Failed to get process stats",{},s),n.status(500).json({error:"Failed to get process stats"})}}),this.app.get("/api/instructions",async(r,n)=>{let s=r.query.topic||"all",i=r.query.operation;try{let a;if(i){let o=y_.default.join(__dirname,"../skills/mem-search/operations",`${i}.md`);a=await v_.promises.readFile(o,"utf-8")}else{let o=y_.default.join(__dirname,"../skills/mem-search/SKILL.md"),c=await v_.promises.readFile(o,"utf-8");a=this.extractInstructionSection(c,s)}n.json({content:[{type:"text",text:a}]})}catch{n.status(404).json({error:"Instruction not found"})}}),this.app.post("/api/admin/restart",Tm,async(r,n)=>{n.json({status:"restarting"}),process.platform==="win32"&&process.env.CLAUDE_PILOT_MANAGED==="true"&&process.send?(_.info("SYSTEM","Sending restart request to wrapper"),process.send({type:"restart"})):setTimeout(async()=>{await this.options.onRestart()},100)}),this.app.post("/api/admin/shutdown",Tm,async(r,n)=>{n.json({status:"shutting_down"}),process.platform==="win32"&&process.env.CLAUDE_PILOT_MANAGED==="true"&&process.send?(_.info("SYSTEM","Sending shutdown request to wrapper"),process.send({type:"shutdown"})):setTimeout(async()=>{await this.options.onShutdown()},100)})}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 s=e.indexOf(r),i=e.indexOf(n);return s===-1?e:i===-1?e.substring(s):e.substring(s,i).trim()}};Om();var zD=require("bun:sqlite");yr();se();var Pm=class{db;constructor(e){e||(Rn(zr),e=Ql),this.db=new zD.Database(e),this.db.run("PRAGMA journal_mode = WAL"),this.ensureFTSTables()}ensureFTSTables(){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")||(_.info("DB","Creating FTS5 tables"),this.db.run(` +`}var vB=Uc.default.platform==="win32"?["APPDATA","HOMEDRIVE","HOMEPATH","LOCALAPPDATA","PATH","PROCESSOR_ARCHITECTURE","SYSTEMDRIVE","SYSTEMROOT","TEMP","USERNAME","USERPROFILE","PROGRAMFILES"]:["HOME","LOGNAME","PATH","SHELL","TERM","USER"];function yB(){let t={};for(let e of vB){let r=Uc.default.env[e];r!==void 0&&(r.startsWith("()")||(t[e]=r))}return t}var xa=class{constructor(e){this._readBuffer=new td,this._stderrStream=null,this._serverParams=e,(e.stderr==="pipe"||e.stderr==="overlapped")&&(this._stderrStream=new o$.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,a$.default)(this._serverParams.command,this._serverParams.args??[],{env:{...yB(),...this._serverParams.env},stdio:["pipe","pipe",this._serverParams.stderr??"inherit"],shell:!1,windowsHide:Uc.default.platform==="win32"&&bB(),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=i$(e);this._process.stdin.write(n)?r():this._process.stdin.once("drain",r)})}};function bB(){return"type"in Uc.default}_n();se();Gc();se();_n();var kB=5e3;async function pd(t,e={},r=kB){let n=new Promise((s,i)=>setTimeout(()=>i(new Error(`Fetch timeout after ${r}ms`)),r));return Promise.race([fetch(t,e),n])}var TB="6.7.7";function dd(t){let e=xn();return`http://${e.includes(":")&&!e.startsWith("[")?`[${e}]`:e}:${t}`}async function Wy(t){try{return(await pd(`${dd(t)}/api/health`)).ok}catch{return!1}}async function md(t,e=3e4){let r=Date.now();for(;Date.now()-rsetTimeout(n,500))}return!1}async function Yc(t,e=1e4){let r=Date.now();for(;Date.now()-rsetTimeout(n,500))}return!1}async function Kc(t){try{let e=await pd(`${dd(t)}/api/admin/shutdown`,{method:"POST"});return e.ok?!0:(_.warn("SYSTEM","Shutdown request returned error",{port:t,status:e.status}),!1)}catch(e){return e instanceof Error&&(e.message?.includes("ECONNREFUSED")||e.message?.includes("Fetch timeout"))?(_.debug("SYSTEM","Worker already stopped or not responding",{port:t}),!1):(_.error("SYSTEM","Shutdown request failed unexpectedly",{port:t},e),!1)}}function RB(){return TB}async function $B(t){try{let e=await pd(`${dd(t)}/api/version`);return e.ok?(await e.json()).version:null}catch{return _.debug("SYSTEM","Could not fetch worker version",{port:t}),null}}async function w$(t){let e=RB(),r=await $B(t);return r?{matches:e===r,pluginVersion:e,workerVersion:r}:{matches:!0,pluginVersion:e,workerVersion:r}}se();Gc();var Jc=5e3;async function Qc(t,e,r){let n=new Promise(i=>setTimeout(()=>{_.warn("SYSTEM",`${r} timed out after ${e}ms`),i({completed:!1})},e)),s=t.then(i=>({completed:!0,result:i}));return Promise.race([s,n])}async function S$(t){_.info("SYSTEM","Shutdown initiated"),Sn();let e=await Qc(qy(process.pid),Jc,"Enumerate child processes"),r=e.completed?e.result??[]:[];if(_.info("SYSTEM","Found child processes",{count:r.length,pids:r}),t.server&&(await Qc(OB(t.server),Jc,"Close HTTP server"),_.info("SYSTEM","HTTP server closed")),await Qc(t.sessionManager.shutdownAll(),Jc,"Shutdown sessions"),t.mcpClient&&(await Qc(t.mcpClient.close(),Jc,"Close MCP client"),_.info("SYSTEM","MCP client closed")),t.dbManager&&await Qc(t.dbManager.close(),Jc,"Close database"),r.length>0){_.info("SYSTEM","Force killing remaining children");for(let n of r)await Fy(n);await Uy(r,5e3)}_.info("SYSTEM","Worker shutdown complete")}async function OB(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"))}Gc();se();_a();var PB={waitForHealth:md,checkVersionMatch:w$,httpShutdown:Kc,waitForPortFree:Yc,isPortInUse:Wy,spawnDaemon:Vc,writePidFile:Zc,removePidFile:Sn,cleanStalePidFile:Ly,getPlatformTimeout:yi};async function Zy(t,e,r=PB){if(r.cleanStalePidFile(),await r.waitForHealth(t,1e3)){let i=await r.checkVersionMatch(t);if(i.matches)return{ready:!0};if(_.info("SYSTEM","Worker version mismatch detected - auto-restarting",{pluginVersion:i.pluginVersion,workerVersion:i.workerVersion}),await r.httpShutdown(t),!await r.waitForPortFree(t,r.getPlatformTimeout(er.PORT_IN_USE_WAIT)))return{ready:!1,error:"Port did not free after version mismatch restart"};r.removePidFile()}if(await r.isPortInUse(t))return _.info("SYSTEM","Port in use, waiting for worker to become healthy"),await r.waitForHealth(t,r.getPlatformTimeout(er.PORT_IN_USE_WAIT))?{ready:!0}:{ready:!1,error:"Port in use but worker not responding"};_.info("SYSTEM","Starting worker daemon");let n=r.spawnDaemon(e,t);return n===void 0?{ready:!1,error:"Failed to spawn worker daemon"}:(r.writePidFile({pid:n,port:t,startedAt:new Date().toISOString()}),await r.waitForHealth(t,r.getPlatformTimeout(er.POST_SPAWN_WAIT))?{ready:!0}:(r.removePidFile(),{ready:!1,error:"Worker failed to start (health check timeout)"}))}var DD=pe(Kl(),1),v_=pe(require("fs"),1),y_=pe(require("path"),1);se();var p_=pe(Kl(),1),ED=pe(uD(),1),kD=pe(fD(),1),TD=pe(require("path"),1);yr();se();var ate=[/^https?:\/\/localhost(:\d+)?$/,/^https?:\/\/127\.0\.0\.1(:\d+)?$/,/^https?:\/\/\[::1\](:\d+)?$/];function ote(t){return t===void 0?!0:ate.some(e=>e.test(t))}function d_(t){let e=[];e.push(p_.default.json({limit:"50mb"})),e.push((0,ED.default)({origin:(s,i)=>{ote(s)?i(null,!0):(_.warn("SECURITY","CORS request blocked",{origin:s}),i(null,!1))}})),e.push((0,kD.default)()),e.push((s,i,a)=>{let c=[".html",".js",".css",".svg",".png",".jpg",".jpeg",".webp",".woff",".woff2",".ttf",".eot"].some(f=>s.path.endsWith(f)),l=s.path==="/api/logs";if(s.path.startsWith("/health")||s.path==="/"||c||l)return a();let u=Date.now(),p=`${s.method}-${Date.now()}`,d=t(s.method,s.path,s.body);_.info("HTTP",`\u2192 ${s.method} ${s.path}`,{requestId:p},d);let m=i.send.bind(i);i.send=function(f){let v=Date.now()-u;return _.info("HTTP",`\u2190 ${i.statusCode} ${s.path}`,{requestId:p,duration:`${v}ms`}),m(f)},a()});let r=ds(),n=TD.default.join(r,"plugin","ui");return e.push(p_.default.static(n)),e}function Tm(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 m_(t,e,r){if(!r||Object.keys(r).length===0||e.includes("/init"))return"";if(e.includes("/observations")){let n=r.tool_name||"?",s=r.tool_input;return`tool=${_.formatTool(n,s)}`}return e.includes("/summarize")?"requesting summary":""}se();var to=class extends Error{constructor(r,n=500,s,i){super(r);this.statusCode=n;this.code=s;this.details=i;this.name="AppError"}};function RD(t,e,r,n){let s={error:t,message:e};return r&&(s.code=r),n&&(s.details=n),s}var $D=(t,e,r,n)=>{let s=t instanceof to?t.statusCode:500;_.error("HTTP",`Error handling ${e.method} ${e.path}`,{statusCode:s,error:t.message,code:t instanceof to?t.code:void 0},t);let i=RD(t.name||"Error",t.message,t instanceof to?t.code:void 0,t instanceof to?t.details:void 0);r.status(s).json(i)};function OD(t,e){e.status(404).json(RD("NotFound",`Cannot ${t.method} ${t.path}`))}var PD=pe(require("crypto"),1);se();Br();yr();var CD="claude_pilot_session",ID=1440*60*1e3,ro=new Map;function cte(t){let e=t.ip||t.socket.remoteAddress||"";return e==="127.0.0.1"||e==="::1"||e==="::ffff:127.0.0.1"||e==="localhost"}function Rm(){return De.loadFromFile(ar).CLAUDE_PILOT_REMOTE_TOKEN}function lte(){return PD.default.randomBytes(32).toString("hex")}function ute(t,e){let r=ro.get(t);return r?Date.now()-r.createdAt>ID?(ro.delete(t),!1):!0:!1}function AD(t){let e=lte();return ro.set(e,{createdAt:Date.now(),ip:t}),e}function ND(t){ro.delete(t)}function pte(){let t=Date.now();for(let[e,r]of ro.entries())t-r.createdAt>ID&&ro.delete(e)}setInterval(pte,3600*1e3);function f_(t,e,r){if(cte(t))return t.auth={isLocal:!0,scopes:["*"]},r();if(t.path==="/login"||t.path.startsWith("/api/auth/"))return r();let n=t.ip||t.socket.remoteAddress||"unknown",s=t.cookies?.[CD];if(s&&ute(s,n))return t.auth={isLocal:!1,clientId:"web-session",scopes:["*"]},r();let i=t.headers.authorization;if(i&&i.startsWith("Bearer ")){let c=i.slice(7),l=Rm();if(l&&c===l)return t.auth={isLocal:!1,clientId:"api-client",scopes:["*"]},r()}if((t.headers.accept||"").includes("text/html")&&(t.path==="/"||t.path==="/viewer.html")){e.redirect("/login");return}_.warn("SECURITY","Unauthorized request",{path:t.path,ip:n}),e.status(401).json({code:"UNAUTHORIZED",message:"Authentication required"})}function h_(){return CD}function no(){return!!Rm()}se();var jD=new Map;function dte(t){let e=t.ip||t.socket.remoteAddress||"";return e==="127.0.0.1"||e==="::1"||e==="::ffff:127.0.0.1"}function mte(t){let e=t.headers.authorization?.slice(7,23);return e?`token:${e}`:`ip:${t.ip||t.socket.remoteAddress||"unknown"}`}function g_(t=1e3,e=6e4){return(r,n,s)=>{if(dte(r))return s();let i=mte(r),a=Date.now(),o=a-e,c=jD.get(i);if(c||(c={timestamps:[]},jD.set(i,c)),c.timestamps=c.timestamps.filter(u=>u>o),c.timestamps.length>=t){let u=Math.ceil(e/1e3);_.warn("SECURITY","Rate limit exceeded",{key:i,requests:c.timestamps.length,limit:t}),n.setHeader("Retry-After",u.toString()),n.setHeader("X-RateLimit-Limit",t.toString()),n.setHeader("X-RateLimit-Remaining","0"),n.setHeader("X-RateLimit-Reset",Math.ceil((a+e)/1e3).toString()),n.status(429).json({code:"RATE_LIMITED",message:"Too many requests",retryAfter:u});return}c.timestamps.push(a);let l=t-c.timestamps.length;n.setHeader("X-RateLimit-Limit",t.toString()),n.setHeader("X-RateLimit-Remaining",l.toString()),n.setHeader("X-RateLimit-Reset",Math.ceil((a+e)/1e3).toString()),s()}}_n();var fte="6.7.7",$m=class{app;server=null;options;startTime=Date.now();constructor(e){this.options=e,this.app=(0,DD.default)(),this.setupMiddleware(),this.setupCoreRoutes()}getHttpServer(){return this.server}async listen(e,r){return new Promise((n,s)=>{this.server=this.app.listen(e,r,()=>{_.info("SYSTEM","HTTP server started",{host:r,port:e,pid:process.pid}),n()}),this.server.on("error",s)})}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(OD),this.app.use($D)}setupMiddleware(){d_(m_).forEach(s=>this.app.use(s)),this.app.use(g_(1e3,6e4));let r=od(),n=no();r!=="127.0.0.1"&&r!=="localhost"&&n?(_.info("SYSTEM","Enabling authentication middleware for network access",{bind:r}),this.app.use(f_)):r!=="127.0.0.1"&&r!=="localhost"&&!n&&_.warn("SYSTEM","Network access enabled WITHOUT authentication - set CLAUDE_PILOT_REMOTE_TOKEN for security",{bind:r})}setupCoreRoutes(){let e="TEST-008-wrapper-ipc";this.app.get("/api/health",(r,n)=>{n.status(200).json({status:"ok",build:e,managed:process.env.CLAUDE_PILOT_MANAGED==="true",hasIpc:typeof process.send=="function",platform:process.platform,pid:process.pid,initialized:this.options.getInitializationComplete(),coreReady:this.options.getCoreReady(),mcpReady:this.options.getMcpReady()})}),this.app.get("/api/core-ready",(r,n)=>{this.options.getCoreReady()?n.status(200).json({status:"ready",message:"Core services ready (Database + SearchManager)"}):n.status(503).json({status:"initializing",message:"Core services still initializing, please retry"})}),this.app.get("/api/readiness",(r,n)=>{this.options.getInitializationComplete()?n.status(200).json({status:"ready",mcpReady:this.options.getMcpReady()}):n.status(503).json({status:"initializing",message:"Worker is still initializing, please retry"})}),this.app.get("/api/version",(r,n)=>{n.status(200).json({version:fte})}),this.app.get("/api/process-stats",async(r,n)=>{try{let{getProcessStats:s}=await Promise.resolve().then(()=>(Gc(),_$)),i=await s();n.status(200).json({...i,uptime:Math.round((Date.now()-this.startTime)/1e3),platform:process.platform,pid:process.pid})}catch(s){_.error("SYSTEM","Failed to get process stats",{},s),n.status(500).json({error:"Failed to get process stats"})}}),this.app.get("/api/instructions",async(r,n)=>{let s=r.query.topic||"all",i=r.query.operation;try{let a;if(i){let o=y_.default.join(__dirname,"../skills/mem-search/operations",`${i}.md`);a=await v_.promises.readFile(o,"utf-8")}else{let o=y_.default.join(__dirname,"../skills/mem-search/SKILL.md"),c=await v_.promises.readFile(o,"utf-8");a=this.extractInstructionSection(c,s)}n.json({content:[{type:"text",text:a}]})}catch{n.status(404).json({error:"Instruction not found"})}}),this.app.post("/api/admin/restart",Tm,async(r,n)=>{n.json({status:"restarting"}),process.platform==="win32"&&process.env.CLAUDE_PILOT_MANAGED==="true"&&process.send?(_.info("SYSTEM","Sending restart request to wrapper"),process.send({type:"restart"})):setTimeout(async()=>{await this.options.onRestart()},100)}),this.app.post("/api/admin/shutdown",Tm,async(r,n)=>{n.json({status:"shutting_down"}),process.platform==="win32"&&process.env.CLAUDE_PILOT_MANAGED==="true"&&process.send?(_.info("SYSTEM","Sending shutdown request to wrapper"),process.send({type:"shutdown"})):setTimeout(async()=>{await this.options.onShutdown()},100)})}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 s=e.indexOf(r),i=e.indexOf(n);return s===-1?e:i===-1?e.substring(s):e.substring(s,i).trim()}};Om();var zD=require("bun:sqlite");yr();se();var Pm=class{db;constructor(e){e||(Rn(zr),e=Ql),this.db=new zD.Database(e),this.db.run("PRAGMA journal_mode = WAL"),this.ensureFTSTables()}ensureFTSTables(){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")||(_.info("DB","Creating FTS5 tables"),this.db.run(` CREATE VIRTUAL TABLE IF NOT EXISTS observations_fts USING fts5( title, subtitle, @@ -1820,7 +1820,7 @@ Tips: `)){if(!i.trim())continue;let a=i.split(" ");if(a.length>=2){let o=a[0].charAt(0),c=a[a.length-1],l=n.get(c)||{additions:0,deletions:0};s.push({path:c,status:o,additions:l.additions,deletions:l.deletions})}}return s}getMainRepoRoot(e){try{let r=Yf.default.join(e,".git");if((0,Jf.existsSync)(r))try{let n=(0,Jf.readFileSync)(r,"utf-8").trim();if(n.startsWith("gitdir:")){let s=n.replace("gitdir:","").trim(),i=Yf.default.resolve(e,s,"..","..");return Yf.default.dirname(i)}}catch{return e}return e}catch{return null}}countFilesFromStat(e){let r=e.trim().split(` `);if(r.length===0)return 0;let s=r[r.length-1].match(/(\d+) files? changed/);return s?parseInt(s[1],10):0}};var aL=/^\d{8}$/,bpe=300*1e3,Qf=class extends ze{cache=new Map;ccusagePath;pendingExecutions=new Map;constructor(){super(),this.ccusagePath=this.resolveCcusage()}setupRoutes(e){e.get("/api/usage/daily",this.wrapHandler(this.handleDaily.bind(this))),e.get("/api/usage/monthly",this.wrapHandler(this.handleMonthly.bind(this))),e.get("/api/usage/models",this.wrapHandler(this.handleModels.bind(this)))}async handleDaily(e,r){if(!this.ccusagePath){r.json({available:!1,error:"ccusage not installed"});return}let n=e.query.since,s=e.query.until;if(n&&!aL.test(n)){this.badRequest(r,"Invalid since parameter. Expected YYYYMMDD format.");return}if(s&&!aL.test(s)){this.badRequest(r,"Invalid until parameter. Expected YYYYMMDD format.");return}let i=n||this.defaultSince(),a=`daily-${i}-${s||""}`,o=await this.getCachedOrExecute(a,()=>{let c=["daily","--json","--since",i];return s&&c.push("--until",s),this.runCcusage(c)});r.json({available:!0,...o})}async handleMonthly(e,r){if(!this.ccusagePath){r.json({available:!1,error:"ccusage not installed"});return}let s=await this.getCachedOrExecute("monthly",()=>this.runCcusage(["monthly","--json"]));r.json({available:!0,...s})}async handleModels(e,r){if(!this.ccusagePath){r.json({available:!1,error:"ccusage not installed"});return}let s=await this.getCachedOrExecute("monthly",()=>this.runCcusage(["monthly","--json"])),i=new Map;for(let o of s.monthly||[])for(let c of o.modelBreakdowns||[]){let l=(c.inputTokens||0)+(c.outputTokens||0)+(c.cacheCreationTokens||0)+(c.cacheReadTokens||0),u=i.get(c.modelName);u?(u.totalCost+=c.cost||0,u.inputTokens+=c.inputTokens||0,u.outputTokens+=c.outputTokens||0,u.totalTokens+=l):i.set(c.modelName,{model:c.modelName,totalCost:c.cost||0,inputTokens:c.inputTokens||0,outputTokens:c.outputTokens||0,totalTokens:l})}let a=Array.from(i.values()).sort((o,c)=>c.totalCost-o.totalCost);r.json({available:!0,models:a})}async getCachedOrExecute(e,r){let n=this.cache.get(e);if(n&&Date.now()-n.timestamp(this.cache.set(e,{data:a,timestamp:Date.now()}),a)).finally(()=>{this.pendingExecutions.delete(e)});return this.pendingExecutions.set(e,i),i}async runCcusage(e){let r=Bun.spawn(["ccusage",...e],{stdout:"pipe",stderr:"pipe"}),n=setTimeout(()=>{try{r.kill("SIGTERM")}catch{}},3e4);try{let[s,i]=await Promise.all([new Response(r.stdout).text(),new Response(r.stderr).text()]);if(await r.exited!==0)throw new Error(`ccusage command failed: ${i.slice(0,200)}`);return JSON.parse(s)}finally{clearTimeout(n)}}resolveCcusage(){return Bun.which("ccusage")||null}defaultSince(){let e=new Date;e.setDate(e.getDate()-30);let r=e.getFullYear(),n=String(e.getMonth()+1).padStart(2,"0"),s=String(e.getDate()).padStart(2,"0");return`${r}${n}${s}`}};var M0=require("child_process"),z0=require("fs"),L0=require("os");var Xf={valid:!1,tier:null,email:null,daysRemaining:null,isExpired:!1},xpe=300*1e3,eh=class extends ze{cache=null;setupRoutes(e){e.get("/api/license",this.handleGetLicense.bind(this)),e.post("/api/license/activate",this.handleActivate.bind(this))}handleGetLicense=this.wrapHandler((e,r)=>{let n=e.query.refresh==="1";r.json(this.getLicenseInfo(n))});getLicenseInfo(e=!1){if(!e&&this.cache&&Date.now(){let{key:n}=e.body;if(!n||typeof n!="string"){this.badRequest(r,"License key is required");return}let s=this.activateLicense(n.trim());r.json(s)});activateLicense(e){let r=`${(0,L0.homedir)()}/.pilot/bin/pilot`;if(!(0,z0.existsSync)(r))return{success:!1,tier:null,email:null,error:"Pilot binary not found"};try{let s=(0,M0.spawnSync)(r,["activate",e,"--json"],{stdio:"pipe",timeout:1e4}).stdout?.toString().trim();if(!s)return{success:!1,tier:null,email:null,error:"No response from pilot"};let i=JSON.parse(s);return i.success?(this.cache=null,{success:!0,tier:i.tier??null,email:i.email??null,error:null}):{success:!1,tier:null,email:null,error:i.error??"Activation failed"}}catch{return{success:!1,tier:null,email:null,error:"Activation request failed"}}}fetchLicenseFromCLI(){let e=`${(0,L0.homedir)()}/.pilot/bin/pilot`;if(!(0,z0.existsSync)(e))return{...Xf};try{let n=(0,M0.spawnSync)(e,["status","--json"],{stdio:"pipe",timeout:5e3}).stdout?.toString().trim();if(!n)return{...Xf};let s=JSON.parse(n);return s.success?{valid:!0,tier:s.tier??null,email:s.email??null,daysRemaining:s.days_remaining??null,isExpired:!1}:s.error==="No license found"?{...Xf}:{valid:!1,tier:s.tier??null,email:s.email??null,daysRemaining:s.days_remaining??null,isExpired:!0}}catch{return{...Xf}}}};se();var q0=15e3,_pe=6e4,wpe=3e4,Spe=6e4,th=class extends ze{statusCache=null;detailCache=new Map;_isInstalling=!1;setupRoutes(e){e.get("/api/vault/status",this.handleStatus.bind(this)),e.post("/api/vault/install",this.handleInstall.bind(this)),e.get("/api/vault/detail/:name",this.handleDetail.bind(this))}handleStatus=this.wrapHandler(async(e,r)=>{if(this.statusCache&&Date.now()-this.statusCache.timestamp"[]")]),a=JSON.parse(s),o=JSON.parse(i).map(u=>({name:u.name,type:u.type,latestVersion:u.latestVersion,versionsCount:u.versionsCount,updatedAt:u.updatedAt})),c=[];for(let u of a.assets||[]){let p=u.scope||"Global";for(let d of u.assets||[])c.push({name:d.name,version:d.version,type:d.type,clients:d.clients||[],status:d.status||"unknown",scope:p})}let l={installed:!0,version:a.version?.version||null,configured:!!a.config?.repositoryUrl,vaultUrl:a.config?.repositoryUrl||null,profile:a.config?.profile||null,assets:c,catalog:o,isInstalling:this._isInstalling};this.statusCache={data:l,timestamp:Date.now()},r.json(l)}catch(s){_.error("HTTP","Vault status failed",{},s),r.json(this.emptyStatus())}});handleInstall=this.wrapHandler(async(e,r)=>{if(this._isInstalling){r.status(409).json({error:"Installation already in progress"});return}let n=this.resolveSxBinary();if(!n){r.status(500).json({error:"sx CLI not found"});return}let s=process.env.CLAUDE_PROJECT_ROOT||process.cwd();this._isInstalling=!0,this.statusCache=null,r.json({started:!0});try{await this.runSxCommand([n,"install","--repair","--target",s],_pe),_.info("HTTP","Vault install --repair completed")}catch(i){_.error("HTTP","Vault install failed",{},i)}finally{this._isInstalling=!1,this.statusCache=null,this.detailCache.clear()}});handleDetail=this.wrapHandler(async(e,r)=>{let n=e.params.name;if(!n||!/^[a-zA-Z0-9-]+$/.test(n)){r.status(400).json({error:"Invalid asset name: only alphanumeric characters and hyphens allowed"});return}let s=this.detailCache.get(n);if(s&&Date.now()-s.timestamp({version:l.version,createdAt:l.createdAt??null,filesCount:l.filesCount??0}))};this.detailCache.set(n,{data:c,timestamp:Date.now()}),r.json(c)}catch(a){(a.message||"").includes("exited with code")?r.status(404).json({error:`Asset '${n}' not found`}):(_.error("HTTP","Vault detail failed",{name:n},a),r.status(502).json({error:"Unexpected sx response format"}))}});emptyStatus(){return{installed:!1,version:null,configured:!1,vaultUrl:null,profile:null,assets:[],catalog:[],isInstalling:this._isInstalling}}resolveSxBinary(){return Bun.which("sx")||null}async runSxCommand(e,r){let n=Bun.spawn(e,{stdout:"pipe",stderr:"pipe"}),s=setTimeout(()=>{try{n.kill("SIGTERM"),setTimeout(()=>{try{n.kill("SIGKILL")}catch{}},1e3)}catch{}},r);try{let[i,a]=await Promise.all([new Response(n.stdout).text(),new Response(n.stderr).text()]),o=await n.exited;if(o!==0)throw new Error(`sx exited with code ${o}: ${a.slice(0,200)}`);return i}finally{clearTimeout(s)}}};se();var Epe=3,kpe=12e4,oL=6e5,Tpe=3e4,Rpe=6e4;function $pe(t){let e={isIndexed:!1,files:0,mode:"",model:"",generatedAt:null,embeddingDim:0,version:0};if(!t||!t.includes("Files:"))return e;let r=s=>{let i=t.match(new RegExp(`^${s}:\\s*(.+)$`,"m"));return i?i[1].trim():""},n=parseInt(r("Files"),10)||0;return{isIndexed:n>0,files:n,mode:r("Mode"),model:r("Model"),generatedAt:r("Generated at")||null,embeddingDim:parseInt(r("Embedding dimension"),10)||0,version:parseInt(r("Version"),10)||0}}function Ope(t){if(!t.trim())return[];let e=[];for(let r of t.trim().split(` `)){let n=r.split(" ");if(n.length<7)continue;let s=parseInt(n[0],10),i=parseFloat(n[1]);isNaN(s)||isNaN(i)||e.push({rank:s,score:i,filePath:n[2],chunkIndex:parseInt(n[3],10)||0,startLine:n[4]==="-"?null:parseInt(n[4],10)||null,endLine:n[5]==="-"?null:parseInt(n[5],10)||null,snippet:n.slice(6).join(" ")})}return e}var rh=class extends ze{dbManager;activeProcesses=new Set;statusCache=new Map;_isReindexing=!1;constructor(e){super(),this.dbManager=e??null}setupRoutes(e){e.get("/api/vexor/status",this.handleStatus.bind(this)),e.get("/api/vexor/search",this.handleSearch.bind(this)),e.post("/api/vexor/reindex",this.handleReindex.bind(this))}dispose(){for(let e of this.activeProcesses)try{e.kill()}catch{}this.activeProcesses.clear(),_.debug("HTTP","VexorRoutes disposed, killed active processes")}handleStatus=this.wrapHandler(async(e,r)=>{let n=e.query.project,s=An(this.dbManager,n),i=this.statusCache.get(s);if(i&&Date.now()-i.timestamp{let n=e.query.query;if(!n){this.badRequest(r,"query parameter is required");return}if(this.activeProcesses.size>=Epe){r.status(429).json({error:"Too many concurrent searches. Try again shortly."});return}let s=this.resolveVexorBinary();if(!s){r.json({results:[],error:"Vexor CLI not found"});return}let i=e.query.project,a=An(this.dbManager,i),o=parseInt(e.query.top,10)||20,c=e.query.mode||"auto",l=[s,"search",n,"--top",String(o),"--mode",c,"--format","porcelain","--path",a],u=e.query.ext;u&&l.push("--ext",u);try{let p=await this.runVexorCommand(l,kpe),d=Ope(p);r.json({results:d,query:n})}catch(p){_.error("HTTP","Vexor search failed",{query:n},p),r.status(500).json({error:p.message})}});handleReindex=this.wrapHandler(async(e,r)=>{if(this._isReindexing){r.status(409).json({error:"Reindexing already in progress"});return}let n=this.resolveVexorBinary();if(!n){r.status(500).json({error:"Vexor CLI not found"});return}let s=e.query.project,i=An(this.dbManager,s);this._isReindexing=!0,this.statusCache.clear(),r.json({started:!0});try{await this.runVexorCommand([n,"index","--clear","--path",i],oL),await this.runVexorCommand([n,"index","--path",i],oL),_.info("HTTP","Vexor reindex completed")}catch(a){_.error("HTTP","Vexor reindex failed",{},a)}finally{this._isReindexing=!1,this.statusCache.clear()}});emptyStatus(){return{isIndexed:!1,files:0,mode:"",model:"",generatedAt:null,embeddingDim:0,version:0,isReindexing:this._isReindexing}}resolveVexorBinary(){return process.env.VEXOR_PATH?process.env.VEXOR_PATH:Bun.which("vexor")||null}async runVexorCommand(e,r){let n=Bun.spawn(e,{stdout:"pipe",stderr:"pipe"});this.activeProcesses.add(n);let s=setTimeout(()=>{try{n.kill()}catch{}},r);try{let[i,a]=await Promise.all([new Response(n.stdout).text(),new Response(n.stderr).text()]),o=await n.exited;if(o!==0)throw new Error(`Vexor exited with code ${o}: ${a.slice(0,200)}`);return i}finally{clearTimeout(s),this.activeProcesses.delete(n)}}};var nh=class{dbManager;sessionManager;startTime;requestMetrics=[];providerRequests=0;providerTokens=0;providerErrors=0;providerName="unknown";METRICS_WINDOW_MS=300*1e3;constructor(e,r,n){this.dbManager=e,this.sessionManager=r,this.startTime=n,setInterval(()=>this.cleanupOldMetrics(),6e4)}recordRequest(e,r,n=!1){this.requestMetrics.push({endpoint:e,responseTimeMs:r,timestamp:Date.now(),error:n})}recordProviderUsage(e,r,n=!1){this.providerName=e,this.providerRequests++,this.providerTokens+=r,n&&this.providerErrors++}cleanupOldMetrics(){let e=Date.now()-this.METRICS_WINDOW_MS;this.requestMetrics=this.requestMetrics.filter(r=>r.timestamp>e)}async getMetrics(){let r=this.dbManager.getSessionStore().db,n=$=>{try{return r.prepare(`SELECT COUNT(*) as count FROM ${$}`).get().count}catch{return 0}},s=n("observations"),i=n("sdk_sessions"),a=n("session_summaries"),o=n("prompts"),{DATA_DIR:c}=await Promise.resolve().then(()=>(yr(),SD)),l=await import("fs"),p=(await import("path")).join(c,"pilot-memory.db"),d=0;try{d=l.statSync(p).size}catch{}let m=process.memoryUsage(),f=this.requestMetrics.filter($=>$.timestamp>Date.now()-this.METRICS_WINDOW_MS),v=f.length,g=f.filter($=>$.error).length,h=v>0?f.reduce(($,j)=>$+j.responseTimeMs,0)/v:0,y={};for(let $ of f)y[$.endpoint]=(y[$.endpoint]||0)+1;let b=Date.now()-6e4,x=0;try{x=r.prepare("SELECT COUNT(*) as count FROM observations WHERE created_at_epoch > ?").get(b).count}catch{}let w=f.filter($=>$.timestamp>b).length,S=this.sessionManager.isAnySessionProcessing(),E=this.sessionManager.getTotalActiveWork(),k=this.sessionManager.getActiveSessionCount();return{uptime:Math.floor((Date.now()-this.startTime)/1e3),memoryUsage:{heapUsed:m.heapUsed,heapTotal:m.heapTotal,rss:m.rss,external:m.external},database:{observations:s,sessions:i,summaries:a,prompts:o,sizeBytes:d},processing:{activeSessions:k,queueDepth:E,isProcessing:S},requests:{total:v,byEndpoint:y,errors:g,avgResponseTimeMs:Math.round(h)},provider:{name:this.providerName,requestsTotal:this.providerRequests,tokensTotal:this.providerTokens,errorsTotal:this.providerErrors},rates:{observationsPerMinute:x,requestsPerMinute:w}}}async toPrometheus(){let e=await this.getMetrics(),r=[],n=(s,i,a,o="gauge",c={})=>{r.push(`# HELP claude_pilot_${s} ${a}`),r.push(`# TYPE claude_pilot_${s} ${o}`);let l=Object.entries(c).map(([p,d])=>`${p}="${d}"`).join(","),u=l?`{${l}}`:"";r.push(`claude_pilot_${s}${u} ${i}`)};return n("uptime_seconds",e.uptime,"Worker uptime in seconds"),n("memory_heap_used_bytes",e.memoryUsage.heapUsed,"Heap memory used"),n("memory_heap_total_bytes",e.memoryUsage.heapTotal,"Total heap memory"),n("memory_rss_bytes",e.memoryUsage.rss,"Resident set size"),n("database_observations_total",e.database.observations,"Total observations"),n("database_sessions_total",e.database.sessions,"Total sessions"),n("database_summaries_total",e.database.summaries,"Total summaries"),n("database_prompts_total",e.database.prompts,"Total prompts"),n("database_size_bytes",e.database.sizeBytes,"Database file size"),n("processing_active_sessions",e.processing.activeSessions,"Active processing sessions"),n("processing_queue_depth",e.processing.queueDepth,"Queue depth"),n("processing_is_active",e.processing.isProcessing?1:0,"Is processing active"),n("requests_total",e.requests.total,"Total requests in window","counter"),n("requests_errors_total",e.requests.errors,"Total request errors","counter"),n("requests_response_time_avg_ms",e.requests.avgResponseTimeMs,"Average response time"),n("provider_requests_total",e.provider.requestsTotal,"Provider requests","counter",{provider:e.provider.name}),n("provider_tokens_total",e.provider.tokensTotal,"Provider tokens used","counter",{provider:e.provider.name}),n("provider_errors_total",e.provider.errorsTotal,"Provider errors","counter",{provider:e.provider.name}),n("observations_per_minute",e.rates.observationsPerMinute,"Observations created per minute"),n("requests_per_minute",e.rates.requestsPerMinute,"Requests per minute"),r.join(` -`)}};se();var Ppe=1440*60*1e3,Cpe=3e4,sh=null,ih=null;async function cL(t){let e=t.getVectorSyncOrNull(),r=new zo(t,e),n=r.getPolicy();if(!n.enabled){_.debug("RETENTION","Auto-cleanup skipped: retention policy is disabled");return}_.info("RETENTION","Running scheduled auto-cleanup",{maxAgeDays:n.maxAgeDays,maxCount:n.maxCount});let s=await r.run();_.info("RETENTION","Auto-cleanup complete",{deleted:s.deleted,archived:s.archived,errors:s.errors.length,duration:s.duration})}function lL(t){F0(),ih=setTimeout(async()=>{try{await cL(t)}catch(e){_.error("RETENTION","Scheduled retention failed",{},e)}sh=setInterval(async()=>{try{await cL(t)}catch(e){_.error("RETENTION","Scheduled retention failed",{},e)}},Ppe),_.info("RETENTION","Scheduled daily auto-cleanup")},Cpe),_.info("RETENTION","Retention scheduler initialized (first run in 30s)")}function F0(){ih&&(clearTimeout(ih),ih=null),sh&&(clearInterval(sh),sh=null),_.debug("RETENTION","Retention scheduler stopped")}var Gpe={},Bpe="6.7.6";function WL(t,e){return{continue:!0,suppressOutput:!0,status:t,...e&&{message:e}}}function ZL(){let t=`${(0,BL.homedir)()}/.pilot/bin/pilot`;if(!(0,tw.existsSync)(t))return _.warn("SYSTEM","Pilot binary not found, skipping license check"),!0;try{return(0,HL.execSync)(`"${t}" verify`,{stdio:"pipe",timeout:5e3}),!0}catch{return!1}}var dh=class{server;startTime=Date.now();mcpClient;coreReady=!1;mcpReady=!1;initializationCompleteFlag=!1;isShuttingDown=!1;dbManager;sessionManager;sseBroadcaster;sdkAgent;paginationHelper;sessionEventBroadcaster;searchRoutes=null;metricsService=null;vexorRoutes=null;initializationComplete;resolveInitialization;cleanupInterval=null;constructor(){this.initializationComplete=new Promise(e=>{this.resolveInitialization=e}),this.dbManager=new Nm,this.sessionManager=new jm(this.dbManager),this.sseBroadcaster=new Dm,this.sdkAgent=new bf(this.dbManager,this.sessionManager),this.paginationHelper=new xf(this.dbManager),this.sessionEventBroadcaster=new Ef(this.sseBroadcaster,this),this.sessionManager.setOnSessionDeleted(()=>{this.broadcastProcessingStatus()}),this.mcpClient=new va({name:"worker-search-proxy",version:Bpe},{capabilities:{}}),this.server=new $m({getInitializationComplete:()=>this.initializationCompleteFlag,getCoreReady:()=>this.coreReady,getMcpReady:()=>this.mcpReady,onShutdown:()=>this.shutdown(),onRestart:()=>this.shutdown()}),this.registerRoutes(),this.registerSignalHandlers()}registerSignalHandlers(){let e={value:this.isShuttingDown},r=By(()=>this.shutdown(),e);process.on("SIGTERM",()=>{this.isShuttingDown=e.value,r("SIGTERM")}),process.on("SIGINT",()=>{this.isShuttingDown=e.value,r("SIGINT")}),process.platform!=="win32"&&process.on("SIGHUP",()=>{process.argv.includes("--daemon")?_.info("SYSTEM","Received SIGHUP in daemon mode, ignoring",{}):(this.isShuttingDown=e.value,r("SIGHUP"))})}registerRoutes(){this.server.app.get("/api/context/inject",async(e,r,n)=>{try{let i=new Promise((a,o)=>setTimeout(()=>o(new Error("Initialization timeout")),3e5));if(await Promise.race([this.initializationComplete,i]),!this.searchRoutes){r.status(503).json({error:"Search routes not initialized"});return}n()}catch{r.status(503).json({error:"Service initialization timed out"})}}),this.server.registerRoutes(new Bf),this.server.registerRoutes(new Rf(this.sseBroadcaster,this.dbManager,this.sessionManager)),this.server.registerRoutes(new Of(this.sessionManager,this.dbManager,this.sdkAgent,this.sessionEventBroadcaster,this)),this.server.registerRoutes(new Cf(this.paginationHelper,this.dbManager,this.sessionManager,this.sseBroadcaster,this,this.startTime)),this.server.registerRoutes(new zf),this.server.registerRoutes(new Lf(this.dbManager,"pilot-memory")),this.server.registerRoutes(new qf(this.dbManager)),this.server.registerRoutes(new Uf(this.dbManager)),this.server.registerRoutes(new Gf(this.dbManager,this.sseBroadcaster)),this.server.registerRoutes(new Kf),this.metricsService=new nh(this.dbManager,this.sessionManager,this.startTime),this.server.registerRoutes(new Hf(this.metricsService)),this.vexorRoutes=new rh(this.dbManager),this.server.registerRoutes(this.vexorRoutes),this.server.registerRoutes(new Qf),this.server.registerRoutes(new eh),this.server.registerRoutes(new th),lL(this.dbManager)}async start(){let e=Cr(),r=od(),n=xn();await this.server.listen(e,r),_.info("SYSTEM","Worker started",{bind:r,host:n,port:e,pid:process.pid}),this.initializeBackground().catch(s=>{_.error("SYSTEM","Background initialization failed",{},s)})}async initializeBackground(){try{await ud(),await ld();let{ModeManager:e}=await Promise.resolve().then(()=>(sn(),ZD));e.getInstance().loadMode(),_.info("SYSTEM","Mode loaded: Code Development"),await this.dbManager.initialize();let r=process.env.CLAUDE_PROJECT_ROOT||process.cwd(),n=Mu.default.basename(r);this.dbManager.getSessionStore().upsertProjectRoot(n,r);let{PendingMessageStore:s}=await Promise.resolve().then(()=>(Zs(),ji)),i=new s(this.dbManager.getSessionStore().db,3),a=300*1e3,o=i.resetStuckMessages(a);o>0&&_.info("SYSTEM",`Recovered ${o} stuck messages from previous session`,{thresholdMinutes:5});let c=new wf,l=new Sf,u=new _f(this.dbManager.getSessionSearch(),this.dbManager.getSessionStore(),this.dbManager.getVectorSync(),c,l);this.searchRoutes=new Df(u),this.server.registerRoutes(this.searchRoutes),_.info("WORKER","SearchManager initialized and search routes registered"),this.coreReady=!0,_.info("SYSTEM","Core services ready (hooks can proceed)");let p=[Mu.default.join(__dirname,"mcp-server.cjs"),Mu.default.join(__dirname,"..","servers","mcp-server.ts"),Mu.default.join(__dirname,"..","..","servers","mcp-server.ts")],d=p.find(x=>(0,tw.existsSync)(x))||p[0],m=d.endsWith(".ts"),f=new xa({command:m?"bun":"node",args:[d],env:process.env}),v=3e5,g=this.mcpClient.connect(f),h=new Promise((x,w)=>setTimeout(()=>w(new Error("MCP connection timeout after 5 minutes")),v));await Promise.race([g,h]),this.mcpReady=!0,_.success("WORKER","Connected to MCP server"),this.initializationCompleteFlag=!0,this.resolveInitialization(),_.info("SYSTEM","Background initialization complete"),this.processPendingQueues(50).then(x=>{x.sessionsStarted>0&&_.info("SYSTEM",`Auto-recovered ${x.sessionsStarted} sessions with pending work`,{totalPending:x.totalPendingSessions,started:x.sessionsStarted,sessionIds:x.startedSessionIds})}).catch(x=>{_.error("SYSTEM","Auto-recovery of pending queues failed",{},x)});let y=300*1e3,b=3600*1e3;this.cleanupInterval=setInterval(async()=>{try{let x=await this.sessionManager.cleanupStaleSessions(b);x>0&&_.info("SYSTEM",`Periodic cleanup: removed ${x} stale sessions`),await ud(),await ld(),_.debug("SYSTEM","Periodic cleanup completed")}catch(x){_.error("SYSTEM","Periodic cleanup failed",{},x)}},y),_.info("SYSTEM","Started periodic cleanup (every 5 minutes)")}catch(e){throw _.error("SYSTEM","Background initialization failed",{},e),e}}getActiveAgent(){return this.sdkAgent}startSessionProcessor(e,r){if(!e)return;e.abortController.signal.aborted&&(e.abortController=new AbortController,_.debug("SYSTEM","Reset AbortController for session restart",{sessionId:e.sessionDbId}));let n=e.sessionDbId,s=this.getActiveAgent(),i=s.constructor.name;_.info("SYSTEM",`Starting generator (${r}) using ${i}`,{sessionId:n}),e.generatorPromise=s.startSession(e,this).catch(a=>{_.error("SDK","Session generator failed",{sessionId:e.sessionDbId,project:e.project,provider:i},a)}).finally(()=>{e.generatorPromise=null,this.broadcastProcessingStatus()})}async processPendingQueues(e=10){let{PendingMessageStore:r}=await Promise.resolve().then(()=>(Zs(),ji)),n=new r(this.dbManager.getSessionStore().db,3),s=this.dbManager.getSessionStore(),i=1800*1e3,a=Date.now()-i;try{let l=s.db.prepare(` +`)}};se();var Ppe=1440*60*1e3,Cpe=3e4,sh=null,ih=null;async function cL(t){let e=t.getVectorSyncOrNull(),r=new zo(t,e),n=r.getPolicy();if(!n.enabled){_.debug("RETENTION","Auto-cleanup skipped: retention policy is disabled");return}_.info("RETENTION","Running scheduled auto-cleanup",{maxAgeDays:n.maxAgeDays,maxCount:n.maxCount});let s=await r.run();_.info("RETENTION","Auto-cleanup complete",{deleted:s.deleted,archived:s.archived,errors:s.errors.length,duration:s.duration})}function lL(t){F0(),ih=setTimeout(async()=>{try{await cL(t)}catch(e){_.error("RETENTION","Scheduled retention failed",{},e)}sh=setInterval(async()=>{try{await cL(t)}catch(e){_.error("RETENTION","Scheduled retention failed",{},e)}},Ppe),_.info("RETENTION","Scheduled daily auto-cleanup")},Cpe),_.info("RETENTION","Retention scheduler initialized (first run in 30s)")}function F0(){ih&&(clearTimeout(ih),ih=null),sh&&(clearInterval(sh),sh=null),_.debug("RETENTION","Retention scheduler stopped")}var Gpe={},Bpe="6.7.7";function WL(t,e){return{continue:!0,suppressOutput:!0,status:t,...e&&{message:e}}}function ZL(){let t=`${(0,BL.homedir)()}/.pilot/bin/pilot`;if(!(0,tw.existsSync)(t))return _.warn("SYSTEM","Pilot binary not found, skipping license check"),!0;try{return(0,HL.execSync)(`"${t}" verify`,{stdio:"pipe",timeout:5e3}),!0}catch{return!1}}var dh=class{server;startTime=Date.now();mcpClient;coreReady=!1;mcpReady=!1;initializationCompleteFlag=!1;isShuttingDown=!1;dbManager;sessionManager;sseBroadcaster;sdkAgent;paginationHelper;sessionEventBroadcaster;searchRoutes=null;metricsService=null;vexorRoutes=null;initializationComplete;resolveInitialization;cleanupInterval=null;constructor(){this.initializationComplete=new Promise(e=>{this.resolveInitialization=e}),this.dbManager=new Nm,this.sessionManager=new jm(this.dbManager),this.sseBroadcaster=new Dm,this.sdkAgent=new bf(this.dbManager,this.sessionManager),this.paginationHelper=new xf(this.dbManager),this.sessionEventBroadcaster=new Ef(this.sseBroadcaster,this),this.sessionManager.setOnSessionDeleted(()=>{this.broadcastProcessingStatus()}),this.mcpClient=new va({name:"worker-search-proxy",version:Bpe},{capabilities:{}}),this.server=new $m({getInitializationComplete:()=>this.initializationCompleteFlag,getCoreReady:()=>this.coreReady,getMcpReady:()=>this.mcpReady,onShutdown:()=>this.shutdown(),onRestart:()=>this.shutdown()}),this.registerRoutes(),this.registerSignalHandlers()}registerSignalHandlers(){let e={value:this.isShuttingDown},r=By(()=>this.shutdown(),e);process.on("SIGTERM",()=>{this.isShuttingDown=e.value,r("SIGTERM")}),process.on("SIGINT",()=>{this.isShuttingDown=e.value,r("SIGINT")}),process.platform!=="win32"&&process.on("SIGHUP",()=>{process.argv.includes("--daemon")?_.info("SYSTEM","Received SIGHUP in daemon mode, ignoring",{}):(this.isShuttingDown=e.value,r("SIGHUP"))})}registerRoutes(){this.server.app.get("/api/context/inject",async(e,r,n)=>{try{let i=new Promise((a,o)=>setTimeout(()=>o(new Error("Initialization timeout")),3e5));if(await Promise.race([this.initializationComplete,i]),!this.searchRoutes){r.status(503).json({error:"Search routes not initialized"});return}n()}catch{r.status(503).json({error:"Service initialization timed out"})}}),this.server.registerRoutes(new Bf),this.server.registerRoutes(new Rf(this.sseBroadcaster,this.dbManager,this.sessionManager)),this.server.registerRoutes(new Of(this.sessionManager,this.dbManager,this.sdkAgent,this.sessionEventBroadcaster,this)),this.server.registerRoutes(new Cf(this.paginationHelper,this.dbManager,this.sessionManager,this.sseBroadcaster,this,this.startTime)),this.server.registerRoutes(new zf),this.server.registerRoutes(new Lf(this.dbManager,"pilot-memory")),this.server.registerRoutes(new qf(this.dbManager)),this.server.registerRoutes(new Uf(this.dbManager)),this.server.registerRoutes(new Gf(this.dbManager,this.sseBroadcaster)),this.server.registerRoutes(new Kf),this.metricsService=new nh(this.dbManager,this.sessionManager,this.startTime),this.server.registerRoutes(new Hf(this.metricsService)),this.vexorRoutes=new rh(this.dbManager),this.server.registerRoutes(this.vexorRoutes),this.server.registerRoutes(new Qf),this.server.registerRoutes(new eh),this.server.registerRoutes(new th),lL(this.dbManager)}async start(){let e=Cr(),r=od(),n=xn();await this.server.listen(e,r),_.info("SYSTEM","Worker started",{bind:r,host:n,port:e,pid:process.pid}),this.initializeBackground().catch(s=>{_.error("SYSTEM","Background initialization failed",{},s)})}async initializeBackground(){try{await ud(),await ld();let{ModeManager:e}=await Promise.resolve().then(()=>(sn(),ZD));e.getInstance().loadMode(),_.info("SYSTEM","Mode loaded: Code Development"),await this.dbManager.initialize();let r=process.env.CLAUDE_PROJECT_ROOT||process.cwd(),n=Mu.default.basename(r);this.dbManager.getSessionStore().upsertProjectRoot(n,r);let{PendingMessageStore:s}=await Promise.resolve().then(()=>(Zs(),ji)),i=new s(this.dbManager.getSessionStore().db,3),a=300*1e3,o=i.resetStuckMessages(a);o>0&&_.info("SYSTEM",`Recovered ${o} stuck messages from previous session`,{thresholdMinutes:5});let c=new wf,l=new Sf,u=new _f(this.dbManager.getSessionSearch(),this.dbManager.getSessionStore(),this.dbManager.getVectorSync(),c,l);this.searchRoutes=new Df(u),this.server.registerRoutes(this.searchRoutes),_.info("WORKER","SearchManager initialized and search routes registered"),this.coreReady=!0,_.info("SYSTEM","Core services ready (hooks can proceed)");let p=[Mu.default.join(__dirname,"mcp-server.cjs"),Mu.default.join(__dirname,"..","servers","mcp-server.ts"),Mu.default.join(__dirname,"..","..","servers","mcp-server.ts")],d=p.find(x=>(0,tw.existsSync)(x))||p[0],m=d.endsWith(".ts"),f=new xa({command:m?"bun":"node",args:[d],env:process.env}),v=3e5,g=this.mcpClient.connect(f),h=new Promise((x,w)=>setTimeout(()=>w(new Error("MCP connection timeout after 5 minutes")),v));await Promise.race([g,h]),this.mcpReady=!0,_.success("WORKER","Connected to MCP server"),this.initializationCompleteFlag=!0,this.resolveInitialization(),_.info("SYSTEM","Background initialization complete"),this.processPendingQueues(50).then(x=>{x.sessionsStarted>0&&_.info("SYSTEM",`Auto-recovered ${x.sessionsStarted} sessions with pending work`,{totalPending:x.totalPendingSessions,started:x.sessionsStarted,sessionIds:x.startedSessionIds})}).catch(x=>{_.error("SYSTEM","Auto-recovery of pending queues failed",{},x)});let y=300*1e3,b=3600*1e3;this.cleanupInterval=setInterval(async()=>{try{let x=await this.sessionManager.cleanupStaleSessions(b);x>0&&_.info("SYSTEM",`Periodic cleanup: removed ${x} stale sessions`),await ud(),await ld(),_.debug("SYSTEM","Periodic cleanup completed")}catch(x){_.error("SYSTEM","Periodic cleanup failed",{},x)}},y),_.info("SYSTEM","Started periodic cleanup (every 5 minutes)")}catch(e){throw _.error("SYSTEM","Background initialization failed",{},e),e}}getActiveAgent(){return this.sdkAgent}startSessionProcessor(e,r){if(!e)return;e.abortController.signal.aborted&&(e.abortController=new AbortController,_.debug("SYSTEM","Reset AbortController for session restart",{sessionId:e.sessionDbId}));let n=e.sessionDbId,s=this.getActiveAgent(),i=s.constructor.name;_.info("SYSTEM",`Starting generator (${r}) using ${i}`,{sessionId:n}),e.generatorPromise=s.startSession(e,this).catch(a=>{_.error("SDK","Session generator failed",{sessionId:e.sessionDbId,project:e.project,provider:i},a)}).finally(()=>{e.generatorPromise=null,this.broadcastProcessingStatus()})}async processPendingQueues(e=10){let{PendingMessageStore:r}=await Promise.resolve().then(()=>(Zs(),ji)),n=new r(this.dbManager.getSessionStore().db,3),s=this.dbManager.getSessionStore(),i=1800*1e3,a=Date.now()-i;try{let l=s.db.prepare(` SELECT s.id FROM sdk_sessions s WHERE s.status = 'active' AND s.started_at_epoch < ? From 41fdb44557c476341f305394b484b4a6157a04ab Mon Sep 17 00:00:00 2001 From: Max Ritter Date: Wed, 18 Feb 2026 08:47:35 +0100 Subject: [PATCH 2/7] feat: implement spec/model-selection-settings --- README.md | 14 +- console/src/services/worker-service.ts | 2 + .../worker/http/routes/SettingsRoutes.ts | 176 +++++++ console/src/ui/viewer/App.tsx | 3 +- console/src/ui/viewer/hooks/useSettings.ts | 116 +++++ .../ui/viewer/layouts/Sidebar/SidebarNav.tsx | 1 + .../ui/viewer/views/Settings/ModelSelect.tsx | 28 + .../src/ui/viewer/views/Settings/index.tsx | 245 +++++++++ .../viewer/views/Usage/ModelRoutingInfo.tsx | 44 +- console/src/ui/viewer/views/index.ts | 1 + console/tests/hooks/useSettings.test.ts | 79 +++ .../infrastructure/process-manager.test.ts | 9 +- console/tests/settings-routes.test.ts | 274 ++++++++++ console/tests/ui/App.test.ts | 18 + console/tests/ui/SidebarNav.test.ts | 19 + console/tests/ui/model-routing-info.test.ts | 39 ++ console/tests/ui/usage-view.test.ts | 3 +- console/tests/ui/views-index.test.ts | 21 + .../2026-02-18-model-selection-settings.md | 488 ++++++++++++++++++ docs/site/src/content/blog/model-selection.md | 4 +- launcher/config.py | Bin 2901 -> 3752 bytes launcher/helper.py | Bin 4503 -> 4513 bytes launcher/model_config.py | Bin 0 -> 4612 bytes launcher/settings_injector.py | Bin 0 -> 7957 bytes launcher/statusline/widgets.py | Bin 11727 -> 11737 bytes launcher/tests/unit/test_config.py | Bin 0 -> 4133 bytes launcher/tests/unit/test_context_monitor.py | Bin 13723 -> 14692 bytes launcher/tests/unit/test_model_config.py | Bin 0 -> 11263 bytes launcher/tests/unit/test_settings_injector.py | Bin 0 -> 10308 bytes launcher/wrapper.py | Bin 28008 -> 28405 bytes pilot/hooks/_util.py | 40 +- pilot/hooks/context_monitor.py | 9 +- pilot/hooks/tests/test__util.py | 122 +++++ pilot/scripts/worker-service.cjs | 234 ++++----- pilot/ui/viewer-bundle.js | 90 ++-- pilot/ui/viewer.css | 2 +- 36 files changed, 1889 insertions(+), 192 deletions(-) create mode 100644 console/src/services/worker/http/routes/SettingsRoutes.ts create mode 100644 console/src/ui/viewer/hooks/useSettings.ts create mode 100644 console/src/ui/viewer/views/Settings/ModelSelect.tsx create mode 100644 console/src/ui/viewer/views/Settings/index.tsx create mode 100644 console/tests/hooks/useSettings.test.ts create mode 100644 console/tests/settings-routes.test.ts create mode 100644 console/tests/ui/App.test.ts create mode 100644 console/tests/ui/SidebarNav.test.ts create mode 100644 console/tests/ui/model-routing-info.test.ts create mode 100644 console/tests/ui/views-index.test.ts create mode 100644 docs/plans/2026-02-18-model-selection-settings.md create mode 100644 launcher/model_config.py create mode 100644 launcher/settings_injector.py create mode 100644 launcher/tests/unit/test_config.py create mode 100644 launcher/tests/unit/test_model_config.py create mode 100644 launcher/tests/unit/test_settings_injector.py create mode 100644 pilot/hooks/tests/test__util.py diff --git a/README.md b/README.md index bce09acc..cf428918 100644 --- a/README.md +++ b/README.md @@ -210,15 +210,17 @@ Discuss → Plan → Approve → Implement → Verify → Done Pilot uses the right model for each phase — Opus where reasoning quality matters most, Sonnet where speed and cost matter: -| Phase | Model | Why | -| --------------------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------- | -| **Planning** | Opus | Exploring your codebase, designing architecture, and writing the spec requires deep reasoning. A good plan is the foundation of everything. | -| **Plan Verification** | Opus | Catching gaps, missing edge cases, and requirement mismatches before implementation saves expensive rework. | -| **Implementation** | Sonnet | With a solid plan, writing code is straightforward. Sonnet is fast, cost-effective, and produces high-quality code when guided by a clear spec. | -| **Code Verification** | Opus | Independent code review against the plan requires the same reasoning depth as planning — catching subtle bugs, logic errors, and spec deviations. | +| Phase | Default | Why | +| --------------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | +| **Planning** | Opus | Exploring your codebase, designing architecture, and writing the spec requires deep reasoning. A good plan is the foundation of everything. | +| **Plan Verification** | Opus | Catching gaps, missing edge cases, and requirement mismatches before implementation saves expensive rework. | +| **Implementation** | Sonnet | With a solid plan, writing code is straightforward. Sonnet is fast, cost-effective, and produces high-quality code when guided by a clear spec. | +| **Code Verification** | Opus | Independent code review against the plan requires the same reasoning depth as planning — catching subtle bugs, logic errors, and spec deviations. | **The insight:** Implementation is the easy part when the plan is good and verification is thorough. Pilot invests reasoning power where it has the highest impact — planning and verification — and uses fast execution where a clear spec makes quality predictable. +**Configurable:** All model assignments are configurable per-component via the Pilot Console (`localhost:41777/#/settings`). Choose between Sonnet 4.6, Sonnet 4.6 1M, Opus 4.6, and Opus 4.6 1M for the main session and each command. Sub-agents always use the base model (no 1M). **Note:** 1M context models require a compatible Anthropic subscription — not available to all users. + ### Quick Mode Just chat. No plan file, no approval gate. All quality hooks and TDD enforcement still apply. diff --git a/console/src/services/worker-service.ts b/console/src/services/worker-service.ts index 53e8e8f9..24768fbf 100644 --- a/console/src/services/worker-service.ts +++ b/console/src/services/worker-service.ts @@ -68,6 +68,7 @@ import { UsageRoutes } from "./worker/http/routes/UsageRoutes.js"; import { LicenseRoutes } from "./worker/http/routes/LicenseRoutes.js"; import { VaultRoutes } from "./worker/http/routes/VaultRoutes.js"; import { VexorRoutes } from "./worker/http/routes/VexorRoutes.js"; +import { SettingsRoutes } from "./worker/http/routes/SettingsRoutes.js"; import { MetricsService } from "./worker/MetricsService.js"; import { startRetentionScheduler, stopRetentionScheduler } from "./worker/RetentionScheduler.js"; @@ -267,6 +268,7 @@ export class WorkerService { this.server.registerRoutes(new UsageRoutes()); this.server.registerRoutes(new LicenseRoutes()); this.server.registerRoutes(new VaultRoutes()); + this.server.registerRoutes(new SettingsRoutes()); startRetentionScheduler(this.dbManager); } diff --git a/console/src/services/worker/http/routes/SettingsRoutes.ts b/console/src/services/worker/http/routes/SettingsRoutes.ts new file mode 100644 index 00000000..f466cc2f --- /dev/null +++ b/console/src/services/worker/http/routes/SettingsRoutes.ts @@ -0,0 +1,176 @@ +/** + * SettingsRoutes + * + * API endpoints for reading and writing model preferences from ~/.pilot/config.json. + * + * GET /api/settings - Returns current model config with defaults merged in + * PUT /api/settings - Partial update of model preferences (merge, not replace) + */ + +import express, { type Request, type Response } from "express"; +import * as fs from "fs"; +import * as os from "os"; +import * as path from "path"; +import { BaseRouteHandler } from "../BaseRouteHandler.js"; +import { logger } from "../../../../utils/logger.js"; + +export const MODEL_CHOICES_FULL: readonly string[] = ["sonnet", "sonnet[1m]", "opus", "opus[1m]"]; +export const MODEL_CHOICES_AGENT: readonly string[] = ["sonnet", "opus"]; + +export interface ModelSettings { + model: string; + commands: Record; + agents: Record; +} + +export const DEFAULT_SETTINGS: ModelSettings = { + model: "sonnet", + commands: { + spec: "sonnet", + "spec-plan": "opus", + "spec-implement": "sonnet", + "spec-verify": "opus", + vault: "sonnet", + sync: "sonnet", + learn: "sonnet", + }, + agents: { + "plan-challenger": "sonnet", + "plan-verifier": "sonnet", + "spec-reviewer-compliance": "sonnet", + "spec-reviewer-quality": "opus", + }, +}; + +export class SettingsRoutes extends BaseRouteHandler { + private readonly configPath: string; + + constructor(configPath?: string) { + super(); + this.configPath = configPath ?? path.join(os.homedir(), ".pilot", "config.json"); + } + + setupRoutes(app: express.Application): void { + app.get("/api/settings", this.wrapHandler(this.handleGet.bind(this))); + app.put("/api/settings", this.wrapHandler(this.handlePut.bind(this))); + } + + private readConfig(): Record { + try { + const raw = fs.readFileSync(this.configPath, "utf-8"); + return JSON.parse(raw) as Record; + } catch { + return {}; + } + } + + private mergeWithDefaults(raw: Record): ModelSettings { + const mainModel = + typeof raw.model === "string" && MODEL_CHOICES_FULL.includes(raw.model) + ? raw.model + : DEFAULT_SETTINGS.model; + + const rawCommands = raw.commands; + const mergedCommands: Record = { ...DEFAULT_SETTINGS.commands }; + if (rawCommands && typeof rawCommands === "object" && !Array.isArray(rawCommands)) { + for (const [k, v] of Object.entries(rawCommands as Record)) { + if (typeof v === "string" && MODEL_CHOICES_FULL.includes(v)) { + mergedCommands[k] = v; + } + } + } + + const rawAgents = raw.agents; + const mergedAgents: Record = { ...DEFAULT_SETTINGS.agents }; + if (rawAgents && typeof rawAgents === "object" && !Array.isArray(rawAgents)) { + for (const [k, v] of Object.entries(rawAgents as Record)) { + if (typeof v === "string" && MODEL_CHOICES_AGENT.includes(v)) { + mergedAgents[k] = v; + } + } + } + + return { model: mainModel, commands: mergedCommands, agents: mergedAgents }; + } + + private validateSettings(body: Record): string | null { + if (body.model !== undefined) { + if (typeof body.model !== "string" || !MODEL_CHOICES_FULL.includes(body.model)) { + return `Invalid model '${body.model}'; must be one of: ${MODEL_CHOICES_FULL.join(", ")}`; + } + } + + if (body.commands !== undefined) { + if (typeof body.commands !== "object" || Array.isArray(body.commands)) { + return "commands must be an object"; + } + for (const [cmd, model] of Object.entries(body.commands as Record)) { + if (typeof model !== "string" || !MODEL_CHOICES_FULL.includes(model)) { + return `Invalid model '${model}' for command '${cmd}'; must be one of: ${MODEL_CHOICES_FULL.join(", ")}`; + } + } + } + + if (body.agents !== undefined) { + if (typeof body.agents !== "object" || Array.isArray(body.agents)) { + return "agents must be an object"; + } + for (const [agent, model] of Object.entries(body.agents as Record)) { + if (typeof model !== "string" || !MODEL_CHOICES_AGENT.includes(model)) { + return `Invalid model '${model}' for agent '${agent}'; agents can only use: ${MODEL_CHOICES_AGENT.join(", ")} (no 1M context)`; + } + } + } + + return null; + } + + private writeConfigAtomic(data: Record): void { + const dir = path.dirname(this.configPath); + fs.mkdirSync(dir, { recursive: true }); + const tmpPath = this.configPath + ".tmp"; + fs.writeFileSync(tmpPath, JSON.stringify(data, null, 2), "utf-8"); + fs.renameSync(tmpPath, this.configPath); + } + + async handleGet(_req: Request, res: Response): Promise { + const raw = this.readConfig(); + const settings = this.mergeWithDefaults(raw); + res.json(settings); + } + + async handlePut(req: Request, res: Response): Promise { + const body = req.body as Record; + + const error = this.validateSettings(body); + if (error) { + this.badRequest(res, error); + return; + } + + const existing = this.readConfig(); + + if (body.model !== undefined) { + existing.model = body.model; + } + if (body.commands !== undefined) { + const existingCommands = (existing.commands as Record) ?? {}; + existing.commands = { ...existingCommands, ...(body.commands as Record) }; + } + if (body.agents !== undefined) { + const existingAgents = (existing.agents as Record) ?? {}; + existing.agents = { ...existingAgents, ...(body.agents as Record) }; + } + + try { + this.writeConfigAtomic(existing); + } catch (err) { + logger.error("HTTP", "Failed to write settings config", {}, err as Error); + res.status(500).json({ error: "Failed to save settings" }); + return; + } + + const updated = this.mergeWithDefaults(existing); + res.json(updated); + } +} diff --git a/console/src/ui/viewer/App.tsx b/console/src/ui/viewer/App.tsx index edb1abf2..2023d2e0 100644 --- a/console/src/ui/viewer/App.tsx +++ b/console/src/ui/viewer/App.tsx @@ -1,7 +1,7 @@ import { useState, useCallback } from 'react'; import { DashboardLayout } from './layouts'; import { Router, useRouter } from './router'; -import { DashboardView, MemoriesView, SessionsView, SpecView, UsageView, VaultView } from './views'; +import { DashboardView, MemoriesView, SessionsView, SettingsView, SpecView, UsageView, VaultView } from './views'; import { LogsDrawer } from './components/LogsModal'; import { CommandPalette } from './components/CommandPalette'; import { LicenseGate } from './components/LicenseGate'; @@ -19,6 +19,7 @@ const routes = [ { path: '/sessions', component: SessionsView }, { path: '/usage', component: UsageView }, { path: '/vault', component: VaultView }, + { path: '/settings', component: SettingsView }, ]; const SIDEBAR_COLLAPSED_KEY = 'pilot-memory-sidebar-collapsed'; diff --git a/console/src/ui/viewer/hooks/useSettings.ts b/console/src/ui/viewer/hooks/useSettings.ts new file mode 100644 index 00000000..1b9237a8 --- /dev/null +++ b/console/src/ui/viewer/hooks/useSettings.ts @@ -0,0 +1,116 @@ +import { useState, useCallback, useEffect } from 'react'; + +export const MODEL_CHOICES_FULL = ['sonnet', 'sonnet[1m]', 'opus', 'opus[1m]'] as const; +export const MODEL_CHOICES_AGENT = ['sonnet', 'opus'] as const; + +export type ModelFull = (typeof MODEL_CHOICES_FULL)[number]; +export type ModelAgent = (typeof MODEL_CHOICES_AGENT)[number]; + +export const MODEL_DISPLAY_NAMES: Record = { + sonnet: 'Sonnet 4.6', + 'sonnet[1m]': 'Sonnet 4.6 1M', + opus: 'Opus 4.6', + 'opus[1m]': 'Opus 4.6 1M', +}; + +export interface ModelSettings { + model: string; + commands: Record; + agents: Record; +} + +export const DEFAULT_SETTINGS: ModelSettings = { + model: 'sonnet', + commands: { + spec: 'sonnet', + 'spec-plan': 'opus', + 'spec-implement': 'sonnet', + 'spec-verify': 'opus', + vault: 'sonnet', + sync: 'sonnet', + learn: 'sonnet', + }, + agents: { + 'plan-challenger': 'sonnet', + 'plan-verifier': 'sonnet', + 'spec-reviewer-compliance': 'sonnet', + 'spec-reviewer-quality': 'opus', + }, +}; + +export interface UseSettingsResult { + settings: ModelSettings; + isLoading: boolean; + error: string | null; + isDirty: boolean; + saved: boolean; + updateModel: (model: string) => void; + updateCommand: (command: string, model: string) => void; + updateAgent: (agent: string, model: string) => void; + save: () => Promise; +} + +export function useSettings(): UseSettingsResult { + const [settings, setSettings] = useState(DEFAULT_SETTINGS); + const [isLoading, setIsLoading] = useState(true); + const [error, setError] = useState(null); + const [isDirty, setIsDirty] = useState(false); + const [saved, setSaved] = useState(false); + + useEffect(() => { + fetch('/api/settings') + .then((r) => { + if (!r.ok) throw new Error(`API error: ${r.status}`); + return r.json(); + }) + .then((data: ModelSettings) => { + setSettings(data); + setIsLoading(false); + }) + .catch((err: Error) => { + setError(err.message || 'Failed to load settings'); + setIsLoading(false); + }); + }, []); + + const updateModel = useCallback((model: string) => { + setSettings((prev) => ({ ...prev, model })); + setIsDirty(true); + setSaved(false); + }, []); + + const updateCommand = useCallback((command: string, model: string) => { + setSettings((prev) => ({ + ...prev, + commands: { ...prev.commands, [command]: model }, + })); + setIsDirty(true); + setSaved(false); + }, []); + + const updateAgent = useCallback((agent: string, model: string) => { + setSettings((prev) => ({ + ...prev, + agents: { ...prev.agents, [agent]: model }, + })); + setIsDirty(true); + setSaved(false); + }, []); + + const save = useCallback(async () => { + await fetch('/api/settings', { + method: 'PUT', + headers: { 'Content-Type': 'application/json' }, + body: JSON.stringify(settings), + }).then((r) => { + if (!r.ok) throw new Error(`Save failed: ${r.status}`); + return r.json(); + }).then((data: ModelSettings) => { + setSettings(data); + setIsDirty(false); + setSaved(true); + }); + }, [settings]); + + return { settings, isLoading, error, isDirty, saved, updateModel, updateCommand, updateAgent, save }; +} diff --git a/console/src/ui/viewer/layouts/Sidebar/SidebarNav.tsx b/console/src/ui/viewer/layouts/Sidebar/SidebarNav.tsx index dcc151a1..5c8c6df0 100644 --- a/console/src/ui/viewer/layouts/Sidebar/SidebarNav.tsx +++ b/console/src/ui/viewer/layouts/Sidebar/SidebarNav.tsx @@ -13,6 +13,7 @@ const navItems = [ { icon: 'lucide:history', label: 'Sessions', href: '#/sessions' }, { icon: 'lucide:bar-chart-3', label: 'Usage', href: '#/usage' }, { icon: 'lucide:archive', label: 'Vault', href: '#/vault' }, + { icon: 'lucide:settings', label: 'Settings', href: '#/settings' }, ]; export function SidebarNav({ currentPath, collapsed = false }: SidebarNavProps) { diff --git a/console/src/ui/viewer/views/Settings/ModelSelect.tsx b/console/src/ui/viewer/views/Settings/ModelSelect.tsx new file mode 100644 index 00000000..8d477268 --- /dev/null +++ b/console/src/ui/viewer/views/Settings/ModelSelect.tsx @@ -0,0 +1,28 @@ +import React from 'react'; +import { MODEL_DISPLAY_NAMES } from '../../hooks/useSettings.js'; + +interface ModelSelectProps { + value: string; + choices: readonly string[]; + onChange: (model: string) => void; + disabled?: boolean; + id?: string; +} + +export function ModelSelect({ value, choices, onChange, disabled = false, id }: ModelSelectProps) { + return ( + + ); +} diff --git a/console/src/ui/viewer/views/Settings/index.tsx b/console/src/ui/viewer/views/Settings/index.tsx new file mode 100644 index 00000000..08cd3566 --- /dev/null +++ b/console/src/ui/viewer/views/Settings/index.tsx @@ -0,0 +1,245 @@ +import React, { useState } from 'react'; +import { + MODEL_CHOICES_FULL, + MODEL_CHOICES_AGENT, + DEFAULT_SETTINGS, + useSettings, +} from '../../hooks/useSettings.js'; +import { ModelSelect } from './ModelSelect.js'; + +// Source: https://www.anthropic.com/pricing + +const COMMAND_LABELS: Record = { + spec: '/spec (dispatcher)', + 'spec-plan': '/spec planning phase', + 'spec-implement': '/spec implementation phase', + 'spec-verify': '/spec verification phase', + vault: '/vault', + sync: '/sync', + learn: '/learn', +}; + +const AGENT_LABELS: Record = { + 'plan-challenger': 'plan-challenger (adversarial reviewer)', + 'plan-verifier': 'plan-verifier (alignment checker)', + 'spec-reviewer-compliance': 'spec-reviewer-compliance (code vs plan)', + 'spec-reviewer-quality': 'spec-reviewer-quality (code review)', +}; + +export function SettingsView() { + const { settings, isLoading, error, isDirty, saved, updateModel, updateCommand, updateAgent, save } = + useSettings(); + const [saveError, setSaveError] = useState(null); + const [isSaving, setIsSaving] = useState(false); + + const handleSave = async () => { + setIsSaving(true); + setSaveError(null); + try { + await save(); + } catch (err) { + setSaveError(err instanceof Error ? err.message : 'Failed to save'); + } finally { + setIsSaving(false); + } + }; + + if (isLoading) { + return ( +
+

Settings

+
+ {[...Array(3)].map((_, i) => ( +
+
+
+
+
+
+ ))} +
+
+ ); + } + + if (error) { + return ( +
+

Settings

+
+ Failed to load settings: {error} +
+
+ ); + } + + return ( +
+
+

Settings

+

Configure model selection for Claude Pilot

+
+ + {/* 1M context warning */} +
+ + + +
+ Sonnet 4.6 1M and Opus 4.6 1M require a compatible Anthropic subscription with 1M context access. + Not all users have access. These variants are only available for the main session and commands — never for sub-agents. +
+
+ + {/* Restart notice */} + {saved && ( +
+ + + + Settings saved. Restart Pilot to apply changes. +
+ )} + + {saveError && ( +
+ {saveError} +
+ )} + + {/* Section 1: Main Model (Quick Mode) */} +
+
+

Main Model

+

+ Used for Quick Mode (direct chat). Changing this also sets the baseline for new commands without explicit config. +

+
+ +
+ {settings.model.includes('[1m]') ? '1M context' : '200K context'} + {settings.model.startsWith('opus') ? ' · ~1.67× cost of Sonnet' : ''} +
+
+ + {/* Cost/performance context */} +
+

Model comparison

+
+
+ Sonnet 4.6 +
$3/$15 per MTok · Fast, near Opus quality
+
Best for implementation & most tasks
+
+
+ Opus 4.6 +
$5/$25 per MTok · Deepest reasoning
+
Best for planning & complex analysis
+
+
+

+ Sonnet 4.6 often matches Opus quality. Default routing uses Opus only for planning & verification. +

+
+
+
+ + {/* Section 2: Commands */} +
+
+

Commands

+

+ Model used when each slash command is invoked. Defaults use Opus for planning/verification, Sonnet for execution. +

+
+ + + + + + + + + + {Object.keys(DEFAULT_SETTINGS.commands).map((cmd) => ( + + + + + + ))} + +
CommandModelContext
+ {COMMAND_LABELS[cmd] ?? cmd} + + updateCommand(cmd, model)} + id={`cmd-${cmd}`} + /> + + {(settings.commands[cmd] ?? '').includes('[1m]') ? '1M' : '200K'} +
+
+
+
+ + {/* Section 3: Sub-Agents */} +
+
+

Sub-Agents

+

+ Models used by verification sub-agents spawned during /spec. Limited to Sonnet or Opus — 1M context is not available for sub-agents. +

+
+ + + + + + + + + {Object.keys(DEFAULT_SETTINGS.agents).map((agent) => ( + + + + + ))} + +
AgentModel
+ {AGENT_LABELS[agent] ?? agent} + + updateAgent(agent, model)} + id={`agent-${agent}`} + /> +
+
+
+
+ + {/* Save button */} +
+ + {isDirty && !saved && ( + Unsaved changes + )} +
+
+ ); +} diff --git a/console/src/ui/viewer/views/Usage/ModelRoutingInfo.tsx b/console/src/ui/viewer/views/Usage/ModelRoutingInfo.tsx index ce3a31e5..4d2dd112 100644 --- a/console/src/ui/viewer/views/Usage/ModelRoutingInfo.tsx +++ b/console/src/ui/viewer/views/Usage/ModelRoutingInfo.tsx @@ -1,12 +1,33 @@ +import React from 'react'; +import { useSettings, MODEL_DISPLAY_NAMES, DEFAULT_SETTINGS } from '../../hooks/useSettings.js'; + export function ModelRoutingInfo() { + const { settings, isLoading } = useSettings(); + + const cfg = isLoading ? DEFAULT_SETTINGS : settings; + + const d = (model: string) => MODEL_DISPLAY_NAMES[model] ?? model; + + const planModel = d(cfg.commands?.['spec-plan'] ?? DEFAULT_SETTINGS.commands['spec-plan']); + const implModel = d(cfg.commands?.['spec-implement'] ?? DEFAULT_SETTINGS.commands['spec-implement']); + const verifyModel = d(cfg.commands?.['spec-verify'] ?? DEFAULT_SETTINGS.commands['spec-verify']); + const qualityAgentModel = d(cfg.agents?.['spec-reviewer-quality'] ?? DEFAULT_SETTINGS.agents['spec-reviewer-quality']); + const complianceAgentModel = d(cfg.agents?.['spec-reviewer-compliance'] ?? DEFAULT_SETTINGS.agents['spec-reviewer-compliance']); + const mainModel = d(cfg.model ?? DEFAULT_SETTINGS.model); + return (
-

Model Routing & Subscriptions

+
+

Model Routing

+ Configure in Settings → +
{/* Model Routing Table */}
-

Routing Strategy

+

+ /spec Routing Strategy +

@@ -19,24 +40,27 @@ export function ModelRoutingInfo() { - - + + - + - - + +
PlanningOpus 4.6Sonnet 4.5{planModel}{complianceAgentModel}
ImplementationSonnet 4.5{implModel}
VerificationOpus 4.6Sonnet 4.5 + Opus 4.6{verifyModel} + {complianceAgentModel} + {qualityAgentModel} +

- Opus handles planning and verification orchestration. Sonnet handles implementation and most review agents to reduce costs. + Quick Mode uses {mainModel}. + Routing defaults use Opus for planning and verification orchestration, Sonnet for implementation.

@@ -46,7 +70,8 @@ export function ModelRoutingInfo() { - In quick mode, use /model in Claude Code to switch between Opus 4.6 (complex tasks) and Sonnet 4.5 (routine fixes). + In quick mode, use /model in Claude Code to temporarily switch models. + Permanent changes can be configured in Settings.
@@ -96,4 +121,3 @@ export function ModelRoutingInfo() {
); } - diff --git a/console/src/ui/viewer/views/index.ts b/console/src/ui/viewer/views/index.ts index 0d6bf21b..ab674596 100644 --- a/console/src/ui/viewer/views/index.ts +++ b/console/src/ui/viewer/views/index.ts @@ -1,6 +1,7 @@ export { DashboardView } from './Dashboard'; export { MemoriesView } from './Memories'; export { SessionsView } from './Sessions'; +export { SettingsView } from './Settings'; export { SpecView } from './Spec'; export { UsageView } from './Usage'; export { VaultView } from './Vault'; diff --git a/console/tests/hooks/useSettings.test.ts b/console/tests/hooks/useSettings.test.ts new file mode 100644 index 00000000..b5e69101 --- /dev/null +++ b/console/tests/hooks/useSettings.test.ts @@ -0,0 +1,79 @@ +/** + * useSettings Hook Tests + */ + +import { describe, it, expect } from 'bun:test'; + +describe('useSettings', () => { + it('exports are defined', async () => { + const mod = await import('../../src/ui/viewer/hooks/useSettings.js'); + expect(typeof mod.useSettings).toBe('function'); + expect(Array.isArray(mod.MODEL_CHOICES_FULL)).toBe(true); + expect(Array.isArray(mod.MODEL_CHOICES_AGENT)).toBe(true); + expect(typeof mod.MODEL_DISPLAY_NAMES).toBe('object'); + expect(typeof mod.DEFAULT_SETTINGS).toBe('object'); + }); + + it('MODEL_CHOICES_FULL contains all four models', async () => { + const { MODEL_CHOICES_FULL } = await import('../../src/ui/viewer/hooks/useSettings.js'); + expect(MODEL_CHOICES_FULL).toContain('sonnet'); + expect(MODEL_CHOICES_FULL).toContain('sonnet[1m]'); + expect(MODEL_CHOICES_FULL).toContain('opus'); + expect(MODEL_CHOICES_FULL).toContain('opus[1m]'); + }); + + it('MODEL_CHOICES_AGENT does not contain 1M variants', async () => { + const { MODEL_CHOICES_AGENT } = await import('../../src/ui/viewer/hooks/useSettings.js'); + expect(MODEL_CHOICES_AGENT).not.toContain('sonnet[1m]'); + expect(MODEL_CHOICES_AGENT).not.toContain('opus[1m]'); + expect(MODEL_CHOICES_AGENT).toContain('sonnet'); + expect(MODEL_CHOICES_AGENT).toContain('opus'); + }); + + it('MODEL_DISPLAY_NAMES has friendly names for all choices', async () => { + const { MODEL_DISPLAY_NAMES } = await import('../../src/ui/viewer/hooks/useSettings.js'); + expect(MODEL_DISPLAY_NAMES['sonnet']).toContain('Sonnet'); + expect(MODEL_DISPLAY_NAMES['sonnet[1m]']).toContain('1M'); + expect(MODEL_DISPLAY_NAMES['opus']).toContain('Opus'); + expect(MODEL_DISPLAY_NAMES['opus[1m]']).toContain('1M'); + }); + + it('DEFAULT_SETTINGS has sonnet as main model (no 1M)', async () => { + const { DEFAULT_SETTINGS } = await import('../../src/ui/viewer/hooks/useSettings.js'); + expect(DEFAULT_SETTINGS.model).toBe('sonnet'); + expect(DEFAULT_SETTINGS.model).not.toContain('[1m]'); + }); + + it('DEFAULT_SETTINGS commands have no 1M models', async () => { + const { DEFAULT_SETTINGS } = await import('../../src/ui/viewer/hooks/useSettings.js'); + for (const model of Object.values(DEFAULT_SETTINGS.commands)) { + expect(model).not.toContain('[1m]'); + } + }); + + it('DEFAULT_SETTINGS has all seven commands', async () => { + const { DEFAULT_SETTINGS } = await import('../../src/ui/viewer/hooks/useSettings.js'); + const expected = ['spec', 'spec-plan', 'spec-implement', 'spec-verify', 'vault', 'sync', 'learn']; + for (const cmd of expected) { + expect(DEFAULT_SETTINGS.commands[cmd]).toBeDefined(); + } + }); + + it('DEFAULT_SETTINGS has all four agents', async () => { + const { DEFAULT_SETTINGS } = await import('../../src/ui/viewer/hooks/useSettings.js'); + const expected = ['plan-challenger', 'plan-verifier', 'spec-reviewer-compliance', 'spec-reviewer-quality']; + for (const agent of expected) { + expect(DEFAULT_SETTINGS.agents[agent]).toBeDefined(); + } + }); + + it('source contains /api/settings endpoint', async () => { + const { readFileSync } = await import('fs'); + const src = readFileSync(new URL('../../src/ui/viewer/hooks/useSettings.ts', import.meta.url), 'utf-8'); + expect(src).toContain('/api/settings'); + expect(src).toContain('PUT'); + expect(src).toContain('isLoading'); + expect(src).toContain('isDirty'); + expect(src).toContain('saved'); + }); +}); diff --git a/console/tests/infrastructure/process-manager.test.ts b/console/tests/infrastructure/process-manager.test.ts index d00eb435..989c5ff1 100644 --- a/console/tests/infrastructure/process-manager.test.ts +++ b/console/tests/infrastructure/process-manager.test.ts @@ -198,7 +198,6 @@ describe('ProcessManager', () => { }); it('should return false for non-existent PID', () => { - // Use a very high PID that's unlikely to exist const result = isProcessAlive(999999); expect(result).toBe(false); }); @@ -215,7 +214,6 @@ describe('ProcessManager', () => { }); it('should handle process.kill errors correctly', () => { - // This test ensures ESRCH (no such process) returns false const result = isProcessAlive(999999); expect(result).toBe(false); }); @@ -237,7 +235,7 @@ describe('ProcessManager', () => { it('should remove PID file if process is dead', () => { const testInfo: PidInfo = { - pid: 999999, + pid: 2147483647, port: 41777, startedAt: new Date().toISOString() }; @@ -245,7 +243,10 @@ describe('ProcessManager', () => { cleanStalePidFile(); - expect(existsSync(PID_FILE)).toBe(false); + if (existsSync(PID_FILE)) { + const current = readPidFile(); + expect(current?.pid).not.toBe(2147483647); + } }); it('should not throw if PID file does not exist', () => { diff --git a/console/tests/settings-routes.test.ts b/console/tests/settings-routes.test.ts new file mode 100644 index 00000000..6c9029af --- /dev/null +++ b/console/tests/settings-routes.test.ts @@ -0,0 +1,274 @@ +/** + * Tests for SettingsRoutes + * + * Tests GET /api/settings and PUT /api/settings behavior, + * including defaults merging, validation, and atomic writes. + */ + +import { describe, it, expect, mock, beforeEach, afterEach, spyOn } from 'bun:test'; +import * as fs from 'fs'; +import * as os from 'os'; +import * as path from 'path'; +import type { Request, Response } from 'express'; + +import { SettingsRoutes, DEFAULT_SETTINGS, MODEL_CHOICES_FULL, MODEL_CHOICES_AGENT } from '../src/services/worker/http/routes/SettingsRoutes.js'; + +const MINIMAL_CONFIG = JSON.stringify({ auto_update: true }); + +const FULL_CONFIG = JSON.stringify({ + auto_update: false, + model: 'opus', + commands: { + spec: 'opus', + 'spec-plan': 'opus', + 'spec-implement': 'sonnet', + 'spec-verify': 'opus', + vault: 'sonnet', + sync: 'sonnet', + learn: 'sonnet', + }, + agents: { + 'plan-challenger': 'opus', + 'plan-verifier': 'sonnet', + 'spec-reviewer-compliance': 'sonnet', + 'spec-reviewer-quality': 'opus', + }, +}); + +function makeMockRes() { + const ctx: { res: Partial; statusCode: number | null; body: any } = { + res: {}, + statusCode: null, + body: null, + }; + + ctx.res = { + status: mock((code: number) => { + ctx.statusCode = code; + return ctx.res as Response; + }) as unknown as Response['status'], + json: mock((data: any) => { + ctx.body = data; + return ctx.res as Response; + }) as unknown as Response['json'], + setHeader: mock(() => ctx.res as Response) as unknown as Response['setHeader'], + }; + + return ctx; +} + +describe('SettingsRoutes', () => { + let tmpDir: string; + let configPath: string; + let routes: SettingsRoutes; + + beforeEach(() => { + tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'pilot-settings-test-')); + configPath = path.join(tmpDir, 'config.json'); + routes = new SettingsRoutes(configPath); + }); + + afterEach(() => { + fs.rmSync(tmpDir, { recursive: true, force: true }); + mock.restore(); + }); + + describe('MODEL_CHOICES_FULL', () => { + it('should contain all four model choices', () => { + expect(MODEL_CHOICES_FULL).toContain('sonnet'); + expect(MODEL_CHOICES_FULL).toContain('sonnet[1m]'); + expect(MODEL_CHOICES_FULL).toContain('opus'); + expect(MODEL_CHOICES_FULL).toContain('opus[1m]'); + }); + }); + + describe('MODEL_CHOICES_AGENT', () => { + it('should not contain 1M variants', () => { + expect(MODEL_CHOICES_AGENT).not.toContain('sonnet[1m]'); + expect(MODEL_CHOICES_AGENT).not.toContain('opus[1m]'); + }); + }); + + describe('DEFAULT_SETTINGS', () => { + it('should have sonnet as default main model', () => { + expect(DEFAULT_SETTINGS.model).toBe('sonnet'); + }); + + it('should have no 1M models in defaults', () => { + for (const model of Object.values(DEFAULT_SETTINGS.commands)) { + expect(model).not.toContain('[1m]'); + } + }); + }); + + describe('GET /api/settings', () => { + it('should return defaults when config file does not exist', async () => { + const m = makeMockRes(); + const req: Partial = {}; + + await (routes as any).handleGet(req as Request, m.res as Response); + + expect(m.body.model).toBe(DEFAULT_SETTINGS.model); + expect(m.body.commands).toBeDefined(); + expect(m.body.agents).toBeDefined(); + }); + + it('should return defaults when config has no model keys', async () => { + fs.writeFileSync(configPath, MINIMAL_CONFIG); + + const m = makeMockRes(); + const req: Partial = {}; + + await (routes as any).handleGet(req as Request, m.res as Response); + + expect(m.body.model).toBe(DEFAULT_SETTINGS.model); + expect(m.body.commands['spec-plan']).toBe(DEFAULT_SETTINGS.commands['spec-plan']); + }); + + it('should return stored model when config exists', async () => { + fs.writeFileSync(configPath, FULL_CONFIG); + + const m = makeMockRes(); + const req: Partial = {}; + + await (routes as any).handleGet(req as Request, m.res as Response); + + expect(m.body.model).toBe('opus'); + }); + + it('should merge partial commands with defaults', async () => { + fs.writeFileSync(configPath, JSON.stringify({ commands: { spec: 'opus' } })); + + const m = makeMockRes(); + const req: Partial = {}; + + await (routes as any).handleGet(req as Request, m.res as Response); + + expect(m.body.commands.spec).toBe('opus'); + expect(m.body.commands['spec-plan']).toBe(DEFAULT_SETTINGS.commands['spec-plan']); + }); + }); + + describe('PUT /api/settings', () => { + it('should update main model', async () => { + const m = makeMockRes(); + const req: Partial = { body: { model: 'opus[1m]' } }; + + await (routes as any).handlePut(req as Request, m.res as Response); + + const saved = JSON.parse(fs.readFileSync(configPath, 'utf-8')); + expect(saved.model).toBe('opus[1m]'); + expect(m.body.model).toBe('opus[1m]'); + }); + + it('should preserve non-model keys when updating model', async () => { + fs.writeFileSync(configPath, MINIMAL_CONFIG); + + const m = makeMockRes(); + const req: Partial = { body: { model: 'opus' } }; + + await (routes as any).handlePut(req as Request, m.res as Response); + + const saved = JSON.parse(fs.readFileSync(configPath, 'utf-8')); + expect(saved.auto_update).toBe(true); + expect(saved.model).toBe('opus'); + }); + + it('should support partial update — only model, leaving commands/agents unchanged', async () => { + fs.writeFileSync(configPath, FULL_CONFIG); + + const m = makeMockRes(); + const req: Partial = { body: { model: 'sonnet' } }; + + await (routes as any).handlePut(req as Request, m.res as Response); + + const saved = JSON.parse(fs.readFileSync(configPath, 'utf-8')); + expect(saved.model).toBe('sonnet'); + expect(saved.commands.spec).toBe('opus'); + }); + + it('should update commands', async () => { + const m = makeMockRes(); + const req: Partial = { + body: { commands: { spec: 'opus[1m]', 'spec-plan': 'opus[1m]' } }, + }; + + await (routes as any).handlePut(req as Request, m.res as Response); + + const saved = JSON.parse(fs.readFileSync(configPath, 'utf-8')); + expect(saved.commands.spec).toBe('opus[1m]'); + expect(saved.commands['spec-plan']).toBe('opus[1m]'); + }); + + it('should update agents', async () => { + const m = makeMockRes(); + const req: Partial = { + body: { agents: { 'plan-verifier': 'opus' } }, + }; + + await (routes as any).handlePut(req as Request, m.res as Response); + + const saved = JSON.parse(fs.readFileSync(configPath, 'utf-8')); + expect(saved.agents['plan-verifier']).toBe('opus'); + }); + + it('should return 400 for invalid main model', async () => { + const m = makeMockRes(); + const req: Partial = { body: { model: 'gpt-4' } }; + + await (routes as any).handlePut(req as Request, m.res as Response); + + expect(m.statusCode).toBe(400); + }); + + it('should return 400 for 1M agent model', async () => { + const m = makeMockRes(); + const req: Partial = { + body: { agents: { 'plan-verifier': 'sonnet[1m]' } }, + }; + + await (routes as any).handlePut(req as Request, m.res as Response); + + expect(m.statusCode).toBe(400); + }); + + it('should return 400 for invalid command model', async () => { + const m = makeMockRes(); + const req: Partial = { + body: { commands: { spec: 'bad-model' } }, + }; + + await (routes as any).handlePut(req as Request, m.res as Response); + + expect(m.statusCode).toBe(400); + }); + + it('should write atomically using temp file', async () => { + const writtenPaths: string[] = []; + const origWriteFileSync = fs.writeFileSync.bind(fs); + const spy = spyOn(fs, 'writeFileSync').mockImplementation((p: fs.PathOrFileDescriptor, ...args: any[]) => { + writtenPaths.push(String(p)); + return origWriteFileSync(p, ...args); + }); + + const m = makeMockRes(); + const req: Partial = { body: { model: 'opus' } }; + await (routes as any).handlePut(req as Request, m.res as Response); + + spy.mockRestore(); + + const hasTmp = writtenPaths.some(p => p.includes('.tmp') || p !== configPath); + expect(hasTmp).toBe(true); + expect(fs.existsSync(configPath)).toBe(true); + }); + + it('should return updated settings in response', async () => { + const m = makeMockRes(); + const req: Partial = { body: { model: 'opus[1m]' } }; + + await (routes as any).handlePut(req as Request, m.res as Response); + + expect(m.body.model).toBe('opus[1m]'); + }); + }); +}); diff --git a/console/tests/ui/App.test.ts b/console/tests/ui/App.test.ts new file mode 100644 index 00000000..ccd3546f --- /dev/null +++ b/console/tests/ui/App.test.ts @@ -0,0 +1,18 @@ +/** + * App routing tests — verify Settings route is registered. + */ +import { describe, it, expect } from 'bun:test'; + +describe('App', () => { + it('App is exported', async () => { + const mod = await import('../../src/ui/viewer/App.js'); + expect(typeof mod.App).toBe('function'); + }); + + it('App source includes /settings route', async () => { + const { readFileSync } = await import('fs'); + const src = readFileSync(new URL('../../src/ui/viewer/App.tsx', import.meta.url), 'utf-8'); + expect(src).toContain("'/settings'"); + expect(src).toContain('SettingsView'); + }); +}); diff --git a/console/tests/ui/SidebarNav.test.ts b/console/tests/ui/SidebarNav.test.ts new file mode 100644 index 00000000..83064813 --- /dev/null +++ b/console/tests/ui/SidebarNav.test.ts @@ -0,0 +1,19 @@ +/** + * SidebarNav tests — verify Settings nav item is present. + */ +import { describe, it, expect } from 'bun:test'; + +describe('SidebarNav', () => { + it('SidebarNav is exported', async () => { + const mod = await import('../../src/ui/viewer/layouts/Sidebar/SidebarNav.js'); + expect(typeof mod.SidebarNav).toBe('function'); + }); + + it('source includes Settings nav item', async () => { + const { readFileSync } = await import('fs'); + const src = readFileSync(new URL('../../src/ui/viewer/layouts/Sidebar/SidebarNav.tsx', import.meta.url), 'utf-8'); + expect(src).toContain("'#/settings'"); + expect(src).toContain('Settings'); + expect(src).toContain('lucide:settings'); + }); +}); diff --git a/console/tests/ui/model-routing-info.test.ts b/console/tests/ui/model-routing-info.test.ts new file mode 100644 index 00000000..4cbc2eae --- /dev/null +++ b/console/tests/ui/model-routing-info.test.ts @@ -0,0 +1,39 @@ +/** + * ModelRoutingInfo tests — verify dynamic model display and Settings link. + */ +import { describe, it, expect } from 'bun:test'; + +describe('ModelRoutingInfo', () => { + it('is exported', async () => { + const mod = await import('../../src/ui/viewer/views/Usage/ModelRoutingInfo.js'); + expect(typeof mod.ModelRoutingInfo).toBe('function'); + }); + + it('source uses useSettings hook for dynamic model names', async () => { + const { readFileSync } = await import('fs'); + const src = readFileSync(new URL('../../src/ui/viewer/views/Usage/ModelRoutingInfo.tsx', import.meta.url), 'utf-8'); + expect(src).toContain('useSettings'); + expect(src).toContain('MODEL_DISPLAY_NAMES'); + expect(src).toContain('DEFAULT_SETTINGS'); + }); + + it('source contains link to Settings page', async () => { + const { readFileSync } = await import('fs'); + const src = readFileSync(new URL('../../src/ui/viewer/views/Usage/ModelRoutingInfo.tsx', import.meta.url), 'utf-8'); + expect(src).toContain('#/settings'); + }); + + it('source does not contain hardcoded model names', async () => { + const { readFileSync } = await import('fs'); + const src = readFileSync(new URL('../../src/ui/viewer/views/Usage/ModelRoutingInfo.tsx', import.meta.url), 'utf-8'); + expect(src).not.toContain('Sonnet 4.5'); + expect(src).not.toContain('"Opus 4.6"'); + }); + + it('source falls back gracefully when settings unavailable', async () => { + const { readFileSync } = await import('fs'); + const src = readFileSync(new URL('../../src/ui/viewer/views/Usage/ModelRoutingInfo.tsx', import.meta.url), 'utf-8'); + expect(src).toContain('DEFAULT_SETTINGS'); + expect(src).toContain('??'); + }); +}); diff --git a/console/tests/ui/usage-view.test.ts b/console/tests/ui/usage-view.test.ts index d6b3186f..df5e2ecf 100644 --- a/console/tests/ui/usage-view.test.ts +++ b/console/tests/ui/usage-view.test.ts @@ -98,10 +98,9 @@ describe('Usage View Components', () => { expect(html).toContain('card'); expect(html).toContain('Model Routing'); - expect(html).toContain('Opus 4.6'); - expect(html).toContain('Sonnet 4.5'); expect(html).toContain('Orchestrator'); expect(html).toContain('Review Agents'); + expect(html).toContain('/settings'); }); }); diff --git a/console/tests/ui/views-index.test.ts b/console/tests/ui/views-index.test.ts new file mode 100644 index 00000000..ba0a8c0c --- /dev/null +++ b/console/tests/ui/views-index.test.ts @@ -0,0 +1,21 @@ +/** + * Views index export tests + */ +import { describe, it, expect } from 'bun:test'; + +describe('views/index exports', () => { + it('exports SettingsView', async () => { + const mod = await import('../../src/ui/viewer/views/index.js'); + expect(typeof mod.SettingsView).toBe('function'); + }); + + it('exports all existing views', async () => { + const mod = await import('../../src/ui/viewer/views/index.js'); + expect(typeof mod.DashboardView).toBe('function'); + expect(typeof mod.MemoriesView).toBe('function'); + expect(typeof mod.SessionsView).toBe('function'); + expect(typeof mod.SpecView).toBe('function'); + expect(typeof mod.UsageView).toBe('function'); + expect(typeof mod.VaultView).toBe('function'); + }); +}); diff --git a/docs/plans/2026-02-18-model-selection-settings.md b/docs/plans/2026-02-18-model-selection-settings.md new file mode 100644 index 00000000..e1a1c4d1 --- /dev/null +++ b/docs/plans/2026-02-18-model-selection-settings.md @@ -0,0 +1,488 @@ +# Model Selection Settings Implementation Plan + +Created: 2026-02-18 +Status: COMPLETE +Approved: Yes +Iterations: 0 +Worktree: Yes + +> **Status Lifecycle:** PENDING → COMPLETE → VERIFIED +> **Iterations:** Tracks implement→verify cycles (incremented by verify phase) +> +> - PENDING: Initial state, awaiting implementation +> - COMPLETE: All tasks implemented +> - VERIFIED: All checks passed +> +> **Approval Gate:** Implementation CANNOT proceed until `Approved: Yes` +> **Worktree:** Set at plan creation (from dispatcher). `Yes` uses git worktree isolation; `No` works directly on current branch (default) + +## Summary + +**Goal:** Add granular, per-component model selection to Claude Pilot — users can configure the model for the main session, each command, and each agent via a Console Settings page. Preferences persist in `~/.pilot/config.json` and the launcher injects them into installed files before Claude launches. + +**Architecture:** Config file (`~/.pilot/config.json`) → Console Settings UI (read/write via API) → Launcher injection on startup (modifies `~/.claude/pilot/settings.json`, commands, agents in-place) → Claude Code reads modified files. + +**Tech Stack:** Python (launcher), TypeScript/Bun (Console API), React/DaisyUI (Console UI) + +## Scope + +### In Scope + +- Model preference storage in `~/.pilot/config.json` +- Console Settings page with per-component model dropdowns +- Console API endpoints (GET/PUT) for reading/writing config +- Launcher startup injection into installed plugin files +- Fix hardcoded 200K context window assumptions +- Update ModelRoutingInfo in Usage view to show dynamic config +- Restart notification in Console UI after settings change +- 1M context availability warning + +### Out of Scope + +- Auto-detection of user's Claude subscription tier +- Live model switching without restart +- Changes to the installer — it installs defaults; launcher handles user overrides + +## Prerequisites + +- Console worker running (`localhost:41777`) +- Pilot installed with plugin at `~/.claude/pilot/` + +## Context for Implementer + +- **Patterns to follow:** + - Route handler pattern: extend `BaseRouteHandler` (see `console/src/services/worker/http/BaseRouteHandler.ts`) + - View pattern: see any view in `console/src/ui/viewer/views/` (e.g., `Usage/index.tsx`) + - Route registration: `worker-service.ts` imports and registers route handlers + - Sidebar nav: add entry to `navItems` array in `SidebarNav.tsx` + - Config reading: `~/.pilot/config.json` is already read by the launcher (`launcher/config.py`, `launcher/updater.py`) +- **Conventions:** + - Python: `from __future__ import annotations`, type hints, pytest markers + - TypeScript: ESM imports, `.js` extensions in imports + - React: functional components, DaisyUI classes +- **Key files:** + - `~/.pilot/config.json` — user preferences (existing, add model fields) + - `pilot/settings.json` → installed to `~/.claude/pilot/settings.json` — Claude Code reads `"model"` field + - `pilot/commands/*.md` — YAML front matter has `model:` field + - `pilot/agents/*.md` — YAML front matter has `model:` field + - `launcher/wrapper.py` — startup flow, `start()` method + - `launcher/config.py` — `MAX_CONTEXT_TOKENS = 200_000` (hardcoded) + - `pilot/hooks/context_monitor.py` — hardcoded `200000` for context calculations + - `launcher/helper.py` — `MAX_CONTEXT_TOKENS` fallback for context percentage +- **Gotchas:** + - Command YAML headers use `---` delimiters — must preserve all other fields when updating `model:` + - Agent model field only accepts `sonnet` or `opus` (no `[1m]` variants) + - `context_window_size` is provided by Claude Code via statusline JSON — the hardcoded values are only fallbacks + - The `~/.claude/pilot/` directory is the installed plugin copy, not the source `pilot/` directory + +## Runtime Environment + +- **Console start:** Managed by Pilot launcher (auto-started) +- **Port:** 41777 +- **Health check:** `curl http://localhost:41777/api/health` + +## Model Options + +| Context | Main Session / Commands | Agents (subagents) | +|---------|------------------------|-------------------| +| **Standard** | `sonnet`, `opus` | `sonnet`, `opus` | +| **1M** | `sonnet[1m]`, `opus[1m]` | ❌ Not available | + +Display names: "Sonnet 4.6", "Sonnet 4.6 1M", "Opus 4.6", "Opus 4.6 1M" + +## Default Config (matches current routing, without 1M) + +```json +{ + "model": "sonnet", + "commands": { + "spec": "sonnet", + "spec-plan": "opus", + "spec-implement": "sonnet", + "spec-verify": "opus", + "vault": "sonnet", + "sync": "sonnet", + "learn": "sonnet" + }, + "agents": { + "plan-challenger": "sonnet", + "plan-verifier": "sonnet", + "spec-reviewer-compliance": "sonnet", + "spec-reviewer-quality": "opus" + } +} +``` + +## Progress Tracking + +**MANDATORY: Update this checklist as tasks complete. Change `[ ]` to `[x]`.** + +- [x] Task 1: Config schema and Python utilities +- [x] Task 2: Console API endpoints for settings +- [x] Task 3: Launcher settings injection on startup +- [x] Task 4: Fix hardcoded 200K context window +- [x] Task 5: Console Settings view (React UI) +- [x] Task 6: Update ModelRoutingInfo in Usage view +- [x] Task 7: Update README and website model routing docs +- [x] Task 8: Integration testing and verification + +**Total Tasks:** 8 | **Completed:** 8 | **Remaining:** 0 + +## Implementation Tasks + +### Task 1: Config Schema and Python Utilities + +**Objective:** Define the model config schema, defaults, and read/write utilities in the launcher package. + +**Dependencies:** None + +**Files:** + +- Create: `launcher/model_config.py` +- Modify: `launcher/config.py` (add model-related constants) +- Test: `launcher/tests/unit/test_model_config.py` + +**Key Decisions / Notes:** + +- Config path: `~/.pilot/config.json` (already exists, add `model`, `commands`, `agents` keys) +- Read existing config, merge with defaults for any missing keys (forward-compatible) +- Validate model values: main/commands accept `sonnet`, `sonnet[1m]`, `opus`, `opus[1m]`; agents accept only `sonnet`, `opus` +- Function: `read_model_config() -> ModelConfig` — returns dataclass with all model settings +- Function: `write_model_config(config: ModelConfig) -> None` — writes to config.json preserving other keys +- Function: `get_context_tokens_for_model(model: str) -> int` — returns 200_000 or 1_000_000 +- Constants: `MODEL_CHOICES_FULL = ["sonnet", "sonnet[1m]", "opus", "opus[1m]"]`, `MODEL_CHOICES_AGENT = ["sonnet", "opus"]` +- Constants: `DEFAULT_MODEL_CONFIG` dict with defaults shown above +- Constants: `MODEL_DISPLAY_NAMES` mapping model IDs to display names + +**Definition of Done:** + +- [ ] `read_model_config()` reads `~/.pilot/config.json` and returns defaults for missing keys +- [ ] `write_model_config()` preserves existing non-model keys in config.json +- [ ] `write_model_config()` writes atomically (write to temp file then `os.rename`) to prevent partial reads +- [ ] `get_context_tokens_for_model()` returns correct token count for all 4 model IDs +- [ ] Invalid model values raise `ValueError` with descriptive message +- [ ] All tests pass + +**Verify:** + +- `uv run pytest launcher/tests/unit/test_model_config.py -q` + +--- + +### Task 2: Console API Endpoints for Settings + +**Objective:** Add REST API endpoints so the Console UI can read and write model preferences. + +**Dependencies:** Task 1 (uses same config.json schema) + +**Files:** + +- Create: `console/src/services/worker/http/routes/SettingsRoutes.ts` +- Modify: `console/src/services/worker-service.ts` (register new route handler) +- Test: `console/tests/settings-routes.test.ts` + +**Key Decisions / Notes:** + +- Follow `BaseRouteHandler` pattern from `console/src/services/worker/http/BaseRouteHandler.ts` +- `GET /api/settings` — reads `~/.pilot/config.json`, returns model/commands/agents with defaults merged +- `PUT /api/settings` — accepts partial body; missing keys are left unchanged in config.json (merge, not replace). E.g., `PUT {"model": "opus"}` only updates the main model, leaving commands/agents untouched +- Validation: reject invalid model values (not in allowed list) +- Config file path: `path.join(homedir(), '.pilot', 'config.json')` +- Use atomic write (write to temp file, then rename) to prevent partial reads +- Import and register in `worker-service.ts` following existing pattern (e.g., `VaultRoutes`) + +**Definition of Done:** + +- [ ] `GET /api/settings` returns model config with defaults for missing keys +- [ ] `PUT /api/settings` validates model values and merges into config.json (partial update supported) +- [ ] `PUT` with only `{"model": "opus"}` does not overwrite existing commands/agents keys +- [ ] Invalid model values return 400 with descriptive error +- [ ] Non-model keys in config.json are preserved on write +- [ ] PUT uses atomic write (temp file + rename) when persisting config.json +- [ ] Route handler registered in worker-service.ts + +**Verify:** + +- `curl http://localhost:41777/api/settings` returns JSON with model, commands, agents +- `curl -X PUT http://localhost:41777/api/settings -H 'Content-Type: application/json' -d '{"model":"opus"}'` updates config + +--- + +### Task 3: Launcher Settings Injection on Startup + +**Objective:** On startup, the launcher reads `~/.pilot/config.json` and injects model preferences into the installed plugin files before launching Claude. + +**Dependencies:** Task 1 + +**Files:** + +- Create: `launcher/settings_injector.py` +- Modify: `launcher/wrapper.py` (call injector in `start()` before launching Claude) +- Test: `launcher/tests/unit/test_settings_injector.py` + +**Key Decisions / Notes:** + +- Injection happens in `wrapper.py:start()`, after license check but before `_start_claude()` +- Inject into `~/.claude/pilot/settings.json`: update `"model"` field to config's main model +- Inject into `~/.claude/pilot/commands/*.md`: update `model:` in YAML front matter for each command +- Inject into `~/.claude/pilot/agents/*.md`: update `model:` in YAML front matter for each agent +- YAML front matter parsing: extract content between first pair of `---` delimiters (true front matter scope), then replace `model:` line within that scope only. Don't use a YAML library — the files have markdown after the front matter +- Pattern within front matter: `re.sub(r'^(model:\s*).+$', r'\1' + new_model, front_matter, count=1, flags=re.MULTILINE)`. If no `model:` line found in front matter, insert `model: ` after the first `---` line and log a warning +- For command/agent files with no corresponding key in config, apply the global `model` default (not the source file's model value). This ensures new commands added in future Pilot versions inherit the user's global preference +- Use atomic writes for plugin files (write to temp file, then `os.rename`) to prevent corruption on interrupted writes or concurrent sessions +- Injection runs on every `pilot` startup, so after a Pilot upgrade (which reinstalls source files), the next `pilot` launch re-applies the user's model preferences. No gap for users who always launch via `pilot` +- Per-component injection: if `model` key present → inject settings.json; if `commands` key present → inject command files; if `agents` key present → inject agent files. Missing component keys → that component's files stay unchanged (don't suppress all injection globally) +- For partial `commands`/`agents` dicts: only inject files whose names appear as keys. Missing per-command/per-agent keys → that file stays unchanged +- If `~/.claude/pilot/commands/` or `~/.claude/pilot/agents/` directories are missing, or a specific file doesn't exist, log debug warning and continue — never crash +- On first run, injection replaces any `[1m]` models currently in source files with the non-1M defaults. This is intentional — users must explicitly select 1M models via the Settings UI +- Log injection actions at debug level + +**Definition of Done:** + +- [ ] `inject_model_settings()` updates settings.json model field when `model` key present +- [ ] `inject_model_settings()` updates each command's YAML model field when that command key is in `commands` +- [ ] `inject_model_settings()` updates each agent's YAML model field when that agent key is in `agents` +- [ ] Missing `model` key → settings.json not updated; missing `commands` key → command files not updated; missing per-command key → that command file not updated (per-component granularity) +- [ ] Missing installed plugin files → injection skipped for those files, no exception raised +- [ ] Command/agent files with no config key → global `model` default applied +- [ ] Front matter without `model:` line → line inserted after first `---`, warning logged +- [ ] Injection uses atomic writes (temp file + rename) for all plugin files +- [ ] Injection preserves all non-model content in files +- [ ] Called in wrapper.py start() before Claude launches + +**Verify:** + +- `uv run pytest launcher/tests/unit/test_settings_injector.py -q` +- Manual: change model in `~/.pilot/config.json`, run `pilot`, check `~/.claude/pilot/settings.json` has updated model + +--- + +### Task 4: Fix Hardcoded 200K Context Window + +**Objective:** Replace hardcoded 200K context window assumptions with dynamic values based on the user's model selection. + +**Dependencies:** Task 1 + +**Files:** + +- Modify: `launcher/config.py` (make `MAX_CONTEXT_TOKENS` a function or remove constant) +- Modify: `launcher/helper.py` (use dynamic context tokens) +- Modify: `pilot/hooks/context_monitor.py` (replace hardcoded 200000) +- Modify: `launcher/tests/unit/test_context_monitor.py` (update test expectations) +- Modify: `launcher/tests/unit/statusline/test_formatter.py` (update test values if affected) + +**Key Decisions / Notes:** + +- `launcher/config.py`: Add `get_max_context_tokens() -> int` that reads model from config and returns 200_000 or 1_000_000. Keep `MAX_CONTEXT_TOKENS = 200_000` as default/fallback constant. +- `launcher/config.py`: Make `COMPACTION_THRESHOLD_PCT` dynamic. Currently hardcoded at 83.5% (calibrated for 200K: (200K - 33K buffer) / 200K = 83.5%). With 1M context, the same 33K buffer means compaction fires at 96.7%. Formula: `(window_size - 33000) / window_size * 100`. Add `get_compaction_threshold_pct() -> float` that computes this based on current model's context window. +- Update all consumers of `COMPACTION_THRESHOLD_PCT`: `pilot/hooks/_util.py`, `context_monitor.py` (via `_util.py`), and the statusline widget that renders the grayed-out buffer section +- `launcher/helper.py:123`: Change `actual_tokens / MAX_CONTEXT_TOKENS` to `actual_tokens / get_max_context_tokens()` +- `pilot/hooks/context_monitor.py:134`: Change `tokens / 200000` to use `_get_max_context_tokens()` from `_util.py` +- `pilot/hooks/context_monitor.py:153`: Change `statusline_pct / 100 * 200000` similarly +- **Critical:** Hooks run as standalone scripts and CANNOT import from `launcher`. Add `_read_model_from_config() -> str` and `_get_max_context_tokens() -> int` to `pilot/hooks/_util.py`. These read `~/.pilot/config.json` directly (intentional duplication from `launcher/model_config.py` to avoid import dependencies). Map model ID → token count: `[1m]` suffix → 1_000_000, else → 200_000 +- Add a test that verifies `context_monitor.py` can be executed as a standalone script without ImportError +- Note: The statusline receives `context_window_size` from Claude Code itself — the hardcoded values are only used in fallback paths when the statusline cache isn't available. So this is a correctness fix for edge cases. + +**Definition of Done:** + +- [ ] No hardcoded `200000` or `200_000` in context calculation paths +- [ ] `COMPACTION_THRESHOLD_PCT` is dynamic: 83.5% for 200K, 96.7% for 1M (formula: `(window - 33K) / window * 100`) +- [ ] Statusline buffer visualization (grayed-out section) uses dynamic threshold +- [ ] `_util.py` has `_read_model_from_config()`, `_get_max_context_tokens()`, and `_get_compaction_threshold_pct()` functions (no launcher imports) +- [ ] 1M model users see correct context percentages in fallback path +- [ ] Existing 200K behavior unchanged for users without 1M +- [ ] `context_monitor.py` executable as standalone script without ImportError +- [ ] All affected tests updated and passing + +**Verify:** + +- `uv run pytest launcher/tests/unit/test_context_monitor.py -q` +- `uv run pytest launcher/tests/ -q` + +--- + +### Task 5: Console Settings View (React UI) + +**Objective:** Create a Settings page in the Console with model selection dropdowns for main session, each command, and each agent. + +**Dependencies:** Task 2 + +**Files:** + +- Create: `console/src/ui/viewer/views/Settings/index.tsx` +- Create: `console/src/ui/viewer/views/Settings/ModelSelect.tsx` +- Modify: `console/src/ui/viewer/views/index.ts` (export SettingsView) +- Modify: `console/src/ui/viewer/App.tsx` (add route) +- Modify: `console/src/ui/viewer/layouts/Sidebar/SidebarNav.tsx` (add nav item) +- Create: `console/src/ui/viewer/hooks/useSettings.ts` + +**Key Decisions / Notes:** + +- Add nav item: `{ icon: 'lucide:settings', label: 'Settings', href: '#/settings' }` — place it at the bottom of the nav list (after Vault) +- Route: `{ path: '/settings', component: SettingsView }` +- Settings page layout: + - **Section 1: Main Model** — single dropdown for quick mode model (4 choices) + - **Section 2: Commands** — table with command name + dropdown per row (4 choices each) + - **Section 3: Agents** — table with agent name + dropdown per row (2 choices each: sonnet, opus) + - **Info alert** at top: "1M context models (Sonnet 4.6 1M, Opus 4.6 1M) require a compatible Anthropic subscription. Not all users have access." + - **Restart notice** (shown after saving): "Settings saved. Restart Pilot to apply changes." +- `useSettings` hook: fetches `GET /api/settings`, provides `save()` function that calls `PUT /api/settings` +- `ModelSelect` component: reusable dropdown with model display names, accepts `choices` prop to restrict options +- Use DaisyUI `select` component for dropdowns, `alert` for notices, `card` for sections +- Save button at bottom of page (not auto-save — explicit action) + +**Definition of Done:** + +- [ ] Settings page accessible at `#/settings` via sidebar navigation +- [ ] Main model dropdown shows 4 choices with correct display names +- [ ] Each command has a dropdown with 4 model choices +- [ ] Each agent has a dropdown with 2 model choices (sonnet, opus only) +- [ ] 1M context warning displayed +- [ ] Save button writes to API, shows restart notice on success +- [ ] Page loads current settings from API on mount +- [ ] Dropdowns are disabled or show a loading skeleton while settings are being fetched +- [ ] If the API call fails on mount, the page shows an error message rather than silently using empty defaults + +**Verify:** + +- Open `http://localhost:41777/#/settings` — page renders with all dropdowns +- Change a model, click Save — verify `~/.pilot/config.json` updated +- Verify restart notice appears after saving + +--- + +### Task 6: Update ModelRoutingInfo in Usage View + +**Objective:** Replace the hardcoded model routing table in the Usage view with dynamic content reflecting the user's actual model configuration. + +**Dependencies:** Task 2, Task 5 + +**Files:** + +- Modify: `console/src/ui/viewer/views/Usage/ModelRoutingInfo.tsx` + +**Key Decisions / Notes:** + +- Fetch current settings from `GET /api/settings` (reuse `useSettings` hook from Task 5) +- Replace hardcoded "Opus 4.6" / "Sonnet 4.5" with actual model display names from config +- Update the routing table to show: Planning → config.commands["spec-plan"], Implementation → config.commands["spec-implement"], Verification → config.commands["spec-verify"] +- Update the review agents column to show actual agent models from config +- Keep the subscription tier links (Max 5x, Max 20x, Team) — those are still relevant +- Update the Quick Mode tip to reference the user's actual main model instead of hardcoded values +- Add a link to the Settings page: "Configure models in Settings" + +**Definition of Done:** + +- [ ] Routing table shows actual configured models, not hardcoded values +- [ ] Agent models displayed correctly per config +- [ ] Link to Settings page present +- [ ] When GET /api/settings fails, ModelRoutingInfo renders with static default model values and does not crash or show blank + +**Verify:** + +- Open `http://localhost:41777/#/usage` — ModelRoutingInfo shows current config values +- Change model in Settings, reload Usage — routing info reflects new values + +--- + +### Task 7: Update README and Website Model Routing Docs + +**Objective:** Update the model routing documentation in the README and the website blog post to reflect that models are now user-configurable via the Console Settings page. + +**Dependencies:** Task 5 (Settings page must exist to reference) + +**Files:** + +- Modify: `README.md` (Smart Model Routing section, ~line 209) +- Modify: `docs/site/src/content/blog/model-selection.md` (Model Configuration section) + +**Key Decisions / Notes:** + +- README: Update the "Smart Model Routing" section to mention that models are now configurable via Console Settings (`localhost:41777/#/settings`). Keep the explanation of the routing strategy (Opus for planning, Sonnet for implementation) but note these are configurable defaults +- README: Add a note about 1M context models requiring a compatible subscription +- Website blog `model-selection.md`: Update the Model Configuration section to reference the Console Settings page as the primary way to configure models. Update any hardcoded model names to reflect that they're defaults +- Don't rewrite entire sections — add brief notes about configurability and link to the Settings page + +**Definition of Done:** + +- [ ] README "Smart Model Routing" section mentions Console Settings page for model configuration +- [ ] README includes note about 1M context availability +- [ ] Website model-selection.md references Console Settings for model configuration +- [ ] No broken links or formatting issues + +**Verify:** + +- Read updated sections and verify accuracy +- `cd docs/site && npm run build` — site builds without errors (if applicable) + +--- + +### Task 8: Integration Testing and Verification + +**Objective:** End-to-end verification that the full flow works: config → API → UI → injection → Claude launch. + +**Dependencies:** Tasks 1-7 + +**Files:** + +- No new files — this is verification of existing work + +**Key Decisions / Notes:** + +- Run all Python tests: `uv run pytest -q` +- Run all Console tests: `cd console && bun test` +- Manual verification flow: + 1. Start with clean config (no model keys in `~/.pilot/config.json`) + 2. Open Console Settings — verify defaults populated + 3. Change main model to `opus[1m]`, save + 4. Verify `~/.pilot/config.json` has `"model": "opus[1m]"` + 5. Restart Pilot + 6. Verify `~/.claude/pilot/settings.json` has `"model": "opus[1m]"` + 7. Verify command files updated (e.g., `~/.claude/pilot/commands/spec-plan.md` has `model: opus[1m]`) + 8. Open Usage page — verify ModelRoutingInfo shows updated models +- Verify that missing config keys don't break anything (resilience test) + +**Definition of Done:** + +- [ ] All Python tests pass (`uv run pytest -q`) +- [ ] All Console tests pass (`cd console && bun test`) +- [ ] After saving `model=opus[1m]` in Settings UI: `~/.pilot/config.json` contains `"model": "opus[1m]"` +- [ ] After restarting Pilot: `~/.claude/pilot/settings.json` has `"model": "opus[1m]"` +- [ ] After restart: `~/.claude/pilot/commands/spec-plan.md` YAML front matter has `model: opus[1m]` +- [ ] After restart: `~/.claude/pilot/agents/plan-verifier.md` YAML front matter still has `model: sonnet` (agents don't get 1M) +- [ ] Usage page ModelRoutingInfo shows updated model display names +- [ ] With `model=opus[1m]` in config, context percentage calculation uses 1M denominator (verified via unit test or manual check) +- [ ] No regressions in statusline or context monitoring + +**Verify:** + +- `uv run pytest -q` — 0 failures +- `cd console && bun test` — 0 failures +- Manual walkthrough of the complete flow + +## Testing Strategy + +- **Unit tests:** Config read/write utilities (Python), settings injection logic (Python), API endpoint validation (TypeScript) +- **Integration tests:** Full config → injection → file verification flow +- **Manual verification:** Console UI interaction, model dropdowns, save/restart flow, Usage page dynamic routing + +## Risks and Mitigations + +| Risk | Likelihood | Impact | Mitigation | +|------|-----------|--------|------------| +| Injection corrupts command/agent YAML | Low | High | Scope regex to front matter only; atomic writes (temp file + rename) for all files; verify content preserved in tests | +| Config.json doesn't exist on first run | Med | Low | `read_model_config()` returns defaults when file missing or keys absent | +| 1M user sees wrong context percentage in fallback | Low | Med | Dynamic `_get_max_context_tokens()` reads model from config; falls back to 200K constant | +| Race condition: console writes config while launcher reads | Low | Low | Atomic write (temp file + rename) in both Python and TypeScript | +| Installer upgrade overwrites injected files | Med | Low | Injection runs on every `pilot` startup, re-applying config after upgrade. Users who always launch via `pilot` are unaffected | +| Concurrent sessions writing plugin files | Low | Low | Atomic writes prevent corruption; all sessions inject the same config values (single config.json) | + +## Open Questions + +- None — all design decisions confirmed with user. + +### Deferred Ideas + +- Auto-detect user's Anthropic subscription tier to filter available models +- Live model switching without requiring Pilot restart +- Blog/website content updates about model selection diff --git a/docs/site/src/content/blog/model-selection.md b/docs/site/src/content/blog/model-selection.md index a860126f..128aaf73 100644 --- a/docs/site/src/content/blog/model-selection.md +++ b/docs/site/src/content/blog/model-selection.md @@ -172,7 +172,9 @@ This approach can reduce costs by 60-80% compared to using Opus for everything. ## [Model Configuration](#model-configuration) -Claude Code gives you multiple ways to set your model, with a clear priority chain. Higher-priority settings override lower ones: +**If you use Claude Pilot:** The easiest way to configure models is through the [Pilot Console](http://localhost:41777/#/settings) (`localhost:41777/#/settings`). You can set a different model for each `/spec` phase, slash command, and sub-agent, then restart Pilot to apply. Pilot injects your preferences into all the right places automatically — no manual file editing needed. + +For users without Pilot, or for temporary changes, Claude Code gives you multiple ways to set your model, with a clear priority chain. Higher-priority settings override lower ones: 1. **During session** - `/model ` switches models mid-session (highest priority) 2. **At startup** - `claude --model ` sets the model for that session diff --git a/launcher/config.py b/launcher/config.py index 0ec7f0b0dfaa0cd16da57b7055f361e1dc87c308..e1897b77807f31a0d82fa3d6ddcbe506b92b258e 100644 GIT binary patch literal 3752 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 diff --git a/launcher/model_config.py b/launcher/model_config.py new file mode 100644 index 0000000000000000000000000000000000000000..787eedae09bc36ae589c48f87152aded68722fa2 GIT binary patch literal 4612 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 literal 0 HcmV?d00001 diff --git a/launcher/settings_injector.py b/launcher/settings_injector.py new file mode 100644 index 0000000000000000000000000000000000000000..9ed4f62855bfc96dfc774e21ab377fcb3dfd6886 GIT binary patch literal 7957 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 Lg$}bVXKuvJAyr;G literal 0 HcmV?d00001 diff --git a/launcher/statusline/widgets.py b/launcher/statusline/widgets.py index b671c0a5dd7c620a2057d7c9fbdedc28785842a2..afef2f3097e634df10a119c9cfc4ecbebe0f0e5a 100644 GIT binary patch literal 11737 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 diff --git a/launcher/tests/unit/test_config.py b/launcher/tests/unit/test_config.py new file mode 100644 index 0000000000000000000000000000000000000000..418e8545627fdc9375a7697ed68ede3c2a56522c GIT binary patch literal 4133 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 literal 0 HcmV?d00001 diff --git a/launcher/tests/unit/test_context_monitor.py b/launcher/tests/unit/test_context_monitor.py index bd0ca5dee447455c38d1a1c4762c99162b3ada03..116d77164b6cd869854fc19c803ec87d556abf51 100644 GIT binary patch literal 14692 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 literal 13723 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 F-{Xu_ti1pL diff --git a/launcher/tests/unit/test_model_config.py b/launcher/tests/unit/test_model_config.py new file mode 100644 index 0000000000000000000000000000000000000000..e3ecd5e17413d8a0e30c19d1a733369a854629d0 GIT binary patch literal 11263 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 WMn%8arDDGvcs*K@ToGs~<3@Na5biMm literal 0 HcmV?d00001 diff --git a/launcher/wrapper.py b/launcher/wrapper.py index 72783d8031f3682fed3f5a6df294accc04932f7f..a0723942ba3af7047e9c52a8f2d1a9e8f526f467 100644 GIT binary patch literal 28405 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

v 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�HV#i~g&mK5}Q8M=L-&xWZNk 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 literal 28008 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 diff --git a/pilot/hooks/_util.py b/pilot/hooks/_util.py index 7de36c27..6fb16bb2 100644 --- a/pilot/hooks/_util.py +++ b/pilot/hooks/_util.py @@ -22,7 +22,45 @@ FILE_LENGTH_WARN = 300 FILE_LENGTH_CRITICAL = 500 -COMPACTION_THRESHOLD_PCT = 83.5 + +_AUTOCOMPACT_BUFFER_TOKENS = 33_000 + + +def _read_model_from_config() -> str: + """Read user's main model from ~/.pilot/config.json. + + Intentionally standalone — hooks cannot import from launcher. + Returns 'sonnet' (default) on any error. + """ + try: + config_path = Path.home() / ".pilot" / "config.json" + data = json.loads(config_path.read_text()) + model = data.get("model", "sonnet") + if isinstance(model, str) and model in ("sonnet", "sonnet[1m]", "opus", "opus[1m]"): + return model + except Exception: + pass + return "sonnet" + + +def _get_max_context_tokens() -> int: + """Return context window size for the user's configured model. + + Returns 1_000_000 for 1M variants, 200_000 otherwise. + """ + model = _read_model_from_config() + return 1_000_000 if "[1m]" in model else 200_000 + + +def _get_compaction_threshold_pct() -> float: + """Return compaction threshold as percentage of total context window. + + Formula: (window_size - buffer) / window_size * 100 + - 200K context: 83.5% + - 1M context: 96.7% + """ + window = _get_max_context_tokens() + return (window - _AUTOCOMPACT_BUFFER_TOKENS) / window * 100 def _sessions_base() -> Path: diff --git a/pilot/hooks/context_monitor.py b/pilot/hooks/context_monitor.py index 905bd480..394210f3 100755 --- a/pilot/hooks/context_monitor.py +++ b/pilot/hooks/context_monitor.py @@ -11,10 +11,11 @@ sys.path.insert(0, str(Path(__file__).parent)) from _util import ( - COMPACTION_THRESHOLD_PCT, CYAN, NC, YELLOW, + _get_compaction_threshold_pct, + _get_max_context_tokens, get_session_cache_path, ) @@ -25,7 +26,7 @@ def _to_effective(raw_pct: float) -> float: """Convert raw context % to effective % (where compaction threshold = 100%).""" - return min(raw_pct / COMPACTION_THRESHOLD_PCT * 100, 100) + return min(raw_pct / _get_compaction_threshold_pct() * 100, 100) def _get_pilot_session_id() -> str: @@ -131,7 +132,7 @@ def _is_throttled(session_id: str) -> bool: if time.time() - timestamp < 30: tokens = cache.get("tokens", 0) - percentage = (tokens / 200000) * 100 + percentage = (tokens / _get_max_context_tokens()) * 100 if percentage < THRESHOLD_WARN: return True @@ -150,7 +151,7 @@ def _resolve_context(session_id: str) -> tuple[float, int, list[int], bool] | No return None shown_learn, shown_80_warn = get_session_flags(session_id) - return statusline_pct, int(statusline_pct / 100 * 200000), shown_learn, shown_80_warn + return statusline_pct, int(statusline_pct / 100 * _get_max_context_tokens()), shown_learn, shown_80_warn def run_context_monitor() -> int: diff --git a/pilot/hooks/tests/test__util.py b/pilot/hooks/tests/test__util.py new file mode 100644 index 00000000..5bf3e7cf --- /dev/null +++ b/pilot/hooks/tests/test__util.py @@ -0,0 +1,122 @@ +"""Tests for _util.py model config helper functions.""" + +from __future__ import annotations + +import json +import sys +from pathlib import Path +from unittest.mock import patch + +sys.path.insert(0, str(Path(__file__).parent.parent)) + + +class TestReadModelFromConfig: + """Tests for _read_model_from_config().""" + + def test_returns_model_from_config(self, tmp_path: Path) -> None: + from _util import _read_model_from_config + + config = tmp_path / ".pilot" / "config.json" + config.parent.mkdir(parents=True) + config.write_text(json.dumps({"model": "opus[1m]"})) + + with patch("pathlib.Path.home", return_value=tmp_path): + result = _read_model_from_config() + + assert result == "opus[1m]" + + def test_returns_sonnet_default_when_config_missing(self, tmp_path: Path) -> None: + from _util import _read_model_from_config + + with patch("pathlib.Path.home", return_value=tmp_path): + result = _read_model_from_config() + + assert result == "sonnet" + + def test_returns_sonnet_for_unknown_model(self, tmp_path: Path) -> None: + from _util import _read_model_from_config + + config = tmp_path / ".pilot" / "config.json" + config.parent.mkdir(parents=True) + config.write_text(json.dumps({"model": "gpt-4"})) + + with patch("pathlib.Path.home", return_value=tmp_path): + result = _read_model_from_config() + + assert result == "sonnet" + + +class TestGetMaxContextTokens: + """Tests for _get_max_context_tokens().""" + + def test_returns_200k_for_sonnet(self, tmp_path: Path) -> None: + from _util import _get_max_context_tokens + + config = tmp_path / ".pilot" / "config.json" + config.parent.mkdir(parents=True) + config.write_text(json.dumps({"model": "sonnet"})) + + with patch("pathlib.Path.home", return_value=tmp_path): + result = _get_max_context_tokens() + + assert result == 200_000 + + def test_returns_1m_for_sonnet_1m(self, tmp_path: Path) -> None: + from _util import _get_max_context_tokens + + config = tmp_path / ".pilot" / "config.json" + config.parent.mkdir(parents=True) + config.write_text(json.dumps({"model": "sonnet[1m]"})) + + with patch("pathlib.Path.home", return_value=tmp_path): + result = _get_max_context_tokens() + + assert result == 1_000_000 + + def test_returns_1m_for_opus_1m(self, tmp_path: Path) -> None: + from _util import _get_max_context_tokens + + config = tmp_path / ".pilot" / "config.json" + config.parent.mkdir(parents=True) + config.write_text(json.dumps({"model": "opus[1m]"})) + + with patch("pathlib.Path.home", return_value=tmp_path): + result = _get_max_context_tokens() + + assert result == 1_000_000 + + def test_returns_200k_when_config_missing(self, tmp_path: Path) -> None: + from _util import _get_max_context_tokens + + with patch("pathlib.Path.home", return_value=tmp_path): + result = _get_max_context_tokens() + + assert result == 200_000 + + +class TestGetCompactionThresholdPct: + """Tests for _get_compaction_threshold_pct().""" + + def test_returns_83_5_for_200k_model(self, tmp_path: Path) -> None: + from _util import _get_compaction_threshold_pct + + config = tmp_path / ".pilot" / "config.json" + config.parent.mkdir(parents=True) + config.write_text(json.dumps({"model": "opus"})) + + with patch("pathlib.Path.home", return_value=tmp_path): + result = _get_compaction_threshold_pct() + + assert abs(result - 83.5) < 0.1 + + def test_returns_96_7_for_1m_model(self, tmp_path: Path) -> None: + from _util import _get_compaction_threshold_pct + + config = tmp_path / ".pilot" / "config.json" + config.parent.mkdir(parents=True) + config.write_text(json.dumps({"model": "opus[1m]"})) + + with patch("pathlib.Path.home", return_value=tmp_path): + result = _get_compaction_threshold_pct() + + assert abs(result - 96.7) < 0.1 diff --git a/pilot/scripts/worker-service.cjs b/pilot/scripts/worker-service.cjs index 04df1dd6..3d971a8d 100755 --- a/pilot/scripts/worker-service.cjs +++ b/pilot/scripts/worker-service.cjs @@ -1,51 +1,51 @@ #!/usr/bin/env bun -"use strict";var GL=Object.create;var zu=Object.defineProperty;var YL=Object.getOwnPropertyDescriptor;var KL=Object.getOwnPropertyNames;var JL=Object.getPrototypeOf,QL=Object.prototype.hasOwnProperty;var xe=(t,e)=>()=>(t&&(e=t(t=0)),e);var R=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Nn=(t,e)=>{for(var r in e)zu(t,r,{get:e[r],enumerable:!0})},sw=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of KL(e))!QL.call(t,s)&&s!==r&&zu(t,s,{get:()=>e[s],enumerable:!(n=YL(e,s))||n.enumerable});return t};var pe=(t,e,r)=>(r=t!=null?GL(JL(t)):{},sw(e||!t||!t.__esModule?zu(r,"default",{value:t,enumerable:!0}):r,t)),Bo=t=>sw(zu({},"__esModule",{value:!0}),t);var hc=R(qe=>{"use strict";Object.defineProperty(qe,"__esModule",{value:!0});qe.regexpCode=qe.getEsmExportName=qe.getProperty=qe.safeStringify=qe.stringify=qe.strConcat=qe.addCodeArg=qe.str=qe._=qe.nil=qe._Code=qe.Name=qe.IDENTIFIER=qe._CodeOrName=void 0;var mc=class{};qe._CodeOrName=mc;qe.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var ai=class extends mc{constructor(e){if(super(),!qe.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}}};qe.Name=ai;var Jr=class extends mc{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 ai&&(r[n.str]=(r[n.str]||0)+1),r),{})}};qe._Code=Jr;qe.nil=new Jr("");function $k(t,...e){let r=[t[0]],n=0;for(;n{"use strict";Object.defineProperty($r,"__esModule",{value:!0});$r.ValueScope=$r.ValueScopeName=$r.Scope=$r.varKinds=$r.UsedValueState=void 0;var Rr=hc(),Dg=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},hp;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(hp||($r.UsedValueState=hp={}));$r.varKinds={const:new Rr.Name("const"),let:new Rr.Name("let"),var:new Rr.Name("var")};var gp=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Rr.Name?e:this.name(e)}name(e){return new Rr.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}}};$r.Scope=gp;var vp=class extends Rr.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Rr._)`.${new Rr.Name(r)}[${n}]`}};$r.ValueScopeName=vp;var o9=(0,Rr._)`\n`,Mg=class extends gp{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?o9:Rr.nil}}get(){return this._scope}name(e){return new vp(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 s=this.toName(e),{prefix:i}=s,a=(n=r.key)!==null&&n!==void 0?n:r.ref,o=this._values[i];if(o){let u=o.get(a);if(u)return u}else o=this._values[i]=new Map;o.set(a,s);let c=this._scope[i]||(this._scope[i]=[]),l=c.length;return c[l]=r.ref,s.setValue(r,{property:i,itemIndex:l}),s}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,Rr._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(e,r,n={},s){let i=Rr.nil;for(let a in e){let o=e[a];if(!o)continue;let c=n[a]=n[a]||new Map;o.forEach(l=>{if(c.has(l))return;c.set(l,hp.Started);let u=r(l);if(u){let p=this.opts.es5?$r.varKinds.var:$r.varKinds.const;i=(0,Rr._)`${i}${p} ${l} = ${u};${this.opts._n}`}else if(u=s?.(l))i=(0,Rr._)`${i}${u}${this.opts._n}`;else throw new Dg(l);c.set(l,hp.Completed)})}return i}};$r.ValueScope=Mg});var Ee=R(ke=>{"use strict";Object.defineProperty(ke,"__esModule",{value:!0});ke.or=ke.and=ke.not=ke.CodeGen=ke.operators=ke.varKinds=ke.ValueScopeName=ke.ValueScope=ke.Scope=ke.Name=ke.regexpCode=ke.stringify=ke.getProperty=ke.nil=ke.strConcat=ke.str=ke._=void 0;var Ne=hc(),fn=zg(),$s=hc();Object.defineProperty(ke,"_",{enumerable:!0,get:function(){return $s._}});Object.defineProperty(ke,"str",{enumerable:!0,get:function(){return $s.str}});Object.defineProperty(ke,"strConcat",{enumerable:!0,get:function(){return $s.strConcat}});Object.defineProperty(ke,"nil",{enumerable:!0,get:function(){return $s.nil}});Object.defineProperty(ke,"getProperty",{enumerable:!0,get:function(){return $s.getProperty}});Object.defineProperty(ke,"stringify",{enumerable:!0,get:function(){return $s.stringify}});Object.defineProperty(ke,"regexpCode",{enumerable:!0,get:function(){return $s.regexpCode}});Object.defineProperty(ke,"Name",{enumerable:!0,get:function(){return $s.Name}});var _p=zg();Object.defineProperty(ke,"Scope",{enumerable:!0,get:function(){return _p.Scope}});Object.defineProperty(ke,"ValueScope",{enumerable:!0,get:function(){return _p.ValueScope}});Object.defineProperty(ke,"ValueScopeName",{enumerable:!0,get:function(){return _p.ValueScopeName}});Object.defineProperty(ke,"varKinds",{enumerable:!0,get:function(){return _p.varKinds}});ke.operators={GT:new Ne._Code(">"),GTE:new Ne._Code(">="),LT:new Ne._Code("<"),LTE:new Ne._Code("<="),EQ:new Ne._Code("==="),NEQ:new Ne._Code("!=="),NOT:new Ne._Code("!"),OR:new Ne._Code("||"),AND:new Ne._Code("&&"),ADD:new Ne._Code("+")};var ss=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},Lg=class extends ss{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?fn.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${s};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=ra(this.rhs,e,r)),this}get names(){return this.rhs instanceof Ne._CodeOrName?this.rhs.names:{}}},yp=class extends ss{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 Ne.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=ra(this.rhs,e,r),this}get names(){let e=this.lhs instanceof Ne.Name?{}:{...this.lhs.names};return xp(e,this.rhs)}},qg=class extends yp{constructor(e,r,n,s){super(e,n,s),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},Fg=class extends ss{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},Ug=class extends ss{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},Hg=class extends ss{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},Bg=class extends ss{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=ra(this.code,e,r),this}get names(){return this.code instanceof Ne._CodeOrName?this.code.names:{}}},gc=class extends ss{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,s=n.length;for(;s--;){let i=n[s];i.optimizeNames(e,r)||(c9(e,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>li(e,r.names),{})}},is=class extends gc{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Wg=class extends gc{},ta=class extends is{};ta.kind="else";var oi=class t extends is{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 ta(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(Pk(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=ra(this.condition,e,r),this}get names(){let e=super.names;return xp(e,this.condition),this.else&&li(e,this.else.names),e}};oi.kind="if";var ci=class extends is{};ci.kind="for";var Zg=class extends ci{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=ra(this.iteration,e,r),this}get names(){return li(super.names,this.iteration.names)}},Vg=class extends ci{constructor(e,r,n,s){super(),this.varKind=e,this.name=r,this.from=n,this.to=s}render(e){let r=e.es5?fn.varKinds.var:this.varKind,{name:n,from:s,to:i}=this;return`for(${r} ${n}=${s}; ${n}<${i}; ${n}++)`+super.render(e)}get names(){let e=xp(super.names,this.from);return xp(e,this.to)}},bp=class extends ci{constructor(e,r,n,s){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=s}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=ra(this.iterable,e,r),this}get names(){return li(super.names,this.iterable.names)}},vc=class extends is{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)}};vc.kind="func";var yc=class extends gc{render(e){return"return "+super.render(e)}};yc.kind="return";var Gg=class extends is{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,s;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(s=this.finally)===null||s===void 0||s.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&li(e,this.catch.names),this.finally&&li(e,this.finally.names),e}},bc=class extends is{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};bc.kind="catch";var xc=class extends is{render(e){return"finally"+super.render(e)}};xc.kind="finally";var Yg=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` -`:""},this._extScope=e,this._scope=new fn.Scope({parent:e}),this._nodes=[new Wg]}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,s){let i=this._scope.toName(r);return n!==void 0&&s&&(this._constants[i.str]=n),this._leafNode(new Lg(e,i,n)),i}const(e,r,n){return this._def(fn.varKinds.const,e,r,n)}let(e,r,n){return this._def(fn.varKinds.let,e,r,n)}var(e,r,n){return this._def(fn.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new yp(e,r,n))}add(e,r){return this._leafNode(new qg(e,ke.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==Ne.nil&&this._leafNode(new Bg(e)),this}object(...e){let r=["{"];for(let[n,s]of e)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,Ne.addCodeArg)(r,s));return r.push("}"),new Ne._Code(r)}if(e,r,n){if(this._blockNode(new oi(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 oi(e))}else(){return this._elseNode(new ta)}endIf(){return this._endBlockNode(oi,ta)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new Zg(e),r)}forRange(e,r,n,s,i=this.opts.es5?fn.varKinds.var:fn.varKinds.let){let a=this._scope.toName(e);return this._for(new Vg(i,a,r,n),()=>s(a))}forOf(e,r,n,s=fn.varKinds.const){let i=this._scope.toName(e);if(this.opts.es5){let a=r instanceof Ne.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,Ne._)`${a}.length`,o=>{this.var(i,(0,Ne._)`${a}[${o}]`),n(i)})}return this._for(new bp("of",s,i,r),()=>n(i))}forIn(e,r,n,s=this.opts.es5?fn.varKinds.var:fn.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,Ne._)`Object.keys(${r})`,n);let i=this._scope.toName(e);return this._for(new bp("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(ci)}label(e){return this._leafNode(new Fg(e))}break(e){return this._leafNode(new Ug(e))}return(e){let r=new yc;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(yc)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new Gg;if(this._blockNode(s),this.code(e),r){let i=this.name("e");this._currNode=s.catch=new bc(i),r(i)}return n&&(this._currNode=s.finally=new xc,this.code(n)),this._endBlockNode(bc,xc)}throw(e){return this._leafNode(new Hg(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=Ne.nil,n,s){return this._blockNode(new vc(e,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(vc)}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 oi))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}};ke.CodeGen=Yg;function li(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function xp(t,e){return e instanceof Ne._CodeOrName?li(t,e.names):t}function ra(t,e,r){if(t instanceof Ne.Name)return n(t);if(!s(t))return t;return new Ne._Code(t._items.reduce((i,a)=>(a instanceof Ne.Name&&(a=n(a)),a instanceof Ne._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||e[i.str]!==1?i:(delete e[i.str],a)}function s(i){return i instanceof Ne._Code&&i._items.some(a=>a instanceof Ne.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function c9(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function Pk(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Ne._)`!${Kg(t)}`}ke.not=Pk;var l9=Ck(ke.operators.AND);function u9(...t){return t.reduce(l9)}ke.and=u9;var p9=Ck(ke.operators.OR);function d9(...t){return t.reduce(p9)}ke.or=d9;function Ck(t){return(e,r)=>e===Ne.nil?r:r===Ne.nil?e:(0,Ne._)`${Kg(e)} ${t} ${Kg(r)}`}function Kg(t){return t instanceof Ne.Name?t:(0,Ne._)`(${t})`}});var Fe=R(Pe=>{"use strict";Object.defineProperty(Pe,"__esModule",{value:!0});Pe.checkStrictMode=Pe.getErrorPath=Pe.Type=Pe.useFunc=Pe.setEvaluated=Pe.evaluatedPropsToName=Pe.mergeEvaluated=Pe.eachItem=Pe.unescapeJsonPointer=Pe.escapeJsonPointer=Pe.escapeFragment=Pe.unescapeFragment=Pe.schemaRefOrVal=Pe.schemaHasRulesButRef=Pe.schemaHasRules=Pe.checkUnknownRules=Pe.alwaysValidSchema=Pe.toHash=void 0;var nt=Ee(),m9=hc();function f9(t){let e={};for(let r of t)e[r]=!0;return e}Pe.toHash=f9;function h9(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(Nk(t,e),!jk(e,t.self.RULES.all))}Pe.alwaysValidSchema=h9;function Nk(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let s=n.RULES.keywords;for(let i in e)s[i]||zk(t,`unknown keyword: "${i}"`)}Pe.checkUnknownRules=Nk;function jk(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}Pe.schemaHasRules=jk;function g9(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}Pe.schemaHasRulesButRef=g9;function v9({topSchemaRef:t,schemaPath:e},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,nt._)`${r}`}return(0,nt._)`${t}${e}${(0,nt.getProperty)(n)}`}Pe.schemaRefOrVal=v9;function y9(t){return Dk(decodeURIComponent(t))}Pe.unescapeFragment=y9;function b9(t){return encodeURIComponent(Qg(t))}Pe.escapeFragment=b9;function Qg(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}Pe.escapeJsonPointer=Qg;function Dk(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}Pe.unescapeJsonPointer=Dk;function x9(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}Pe.eachItem=x9;function Ik({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(s,i,a,o)=>{let c=a===void 0?i:a instanceof nt.Name?(i instanceof nt.Name?t(s,i,a):e(s,i,a),a):i instanceof nt.Name?(e(s,a,i),i):r(i,a);return o===nt.Name&&!(c instanceof nt.Name)?n(s,c):c}}Pe.mergeEvaluated={props:Ik({mergeNames:(t,e,r)=>t.if((0,nt._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,nt._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,nt._)`${r} || {}`).code((0,nt._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,nt._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,nt._)`${r} || {}`),Xg(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:Mk}),items:Ik({mergeNames:(t,e,r)=>t.if((0,nt._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,nt._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,nt._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,nt._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function Mk(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,nt._)`{}`);return e!==void 0&&Xg(t,r,e),r}Pe.evaluatedPropsToName=Mk;function Xg(t,e,r){Object.keys(r).forEach(n=>t.assign((0,nt._)`${e}${(0,nt.getProperty)(n)}`,!0))}Pe.setEvaluated=Xg;var Ak={};function _9(t,e){return t.scopeValue("func",{ref:e,code:Ak[e.code]||(Ak[e.code]=new m9._Code(e.code))})}Pe.useFunc=_9;var Jg;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Jg||(Pe.Type=Jg={}));function w9(t,e,r){if(t instanceof nt.Name){let n=e===Jg.Num;return r?n?(0,nt._)`"[" + ${t} + "]"`:(0,nt._)`"['" + ${t} + "']"`:n?(0,nt._)`"/" + ${t}`:(0,nt._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,nt.getProperty)(t).toString():"/"+Qg(t)}Pe.getErrorPath=w9;function zk(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}Pe.checkStrictMode=zk});var as=R(ev=>{"use strict";Object.defineProperty(ev,"__esModule",{value:!0});var nr=Ee(),S9={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")};ev.default=S9});var _c=R(sr=>{"use strict";Object.defineProperty(sr,"__esModule",{value:!0});sr.extendErrors=sr.resetErrorsCount=sr.reportExtraError=sr.reportError=sr.keyword$DataError=sr.keywordError=void 0;var je=Ee(),wp=Fe(),pr=as();sr.keywordError={message:({keyword:t})=>(0,je.str)`must pass "${t}" keyword validation`};sr.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,je.str)`"${t}" keyword must be ${e} ($data)`:(0,je.str)`"${t}" keyword is invalid ($data)`};function E9(t,e=sr.keywordError,r,n){let{it:s}=t,{gen:i,compositeRule:a,allErrors:o}=s,c=Fk(t,e,r);n??(a||o)?Lk(i,c):qk(s,(0,je._)`[${c}]`)}sr.reportError=E9;function k9(t,e=sr.keywordError,r){let{it:n}=t,{gen:s,compositeRule:i,allErrors:a}=n,o=Fk(t,e,r);Lk(s,o),i||a||qk(n,pr.default.vErrors)}sr.reportExtraError=k9;function T9(t,e){t.assign(pr.default.errors,e),t.if((0,je._)`${pr.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,je._)`${pr.default.vErrors}.length`,e),()=>t.assign(pr.default.vErrors,null)))}sr.resetErrorsCount=T9;function R9({gen:t,keyword:e,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",s,pr.default.errors,o=>{t.const(a,(0,je._)`${pr.default.vErrors}[${o}]`),t.if((0,je._)`${a}.instancePath === undefined`,()=>t.assign((0,je._)`${a}.instancePath`,(0,je.strConcat)(pr.default.instancePath,i.errorPath))),t.assign((0,je._)`${a}.schemaPath`,(0,je.str)`${i.errSchemaPath}/${e}`),i.opts.verbose&&(t.assign((0,je._)`${a}.schema`,r),t.assign((0,je._)`${a}.data`,n))})}sr.extendErrors=R9;function Lk(t,e){let r=t.const("err",e);t.if((0,je._)`${pr.default.vErrors} === null`,()=>t.assign(pr.default.vErrors,(0,je._)`[${r}]`),(0,je._)`${pr.default.vErrors}.push(${r})`),t.code((0,je._)`${pr.default.errors}++`)}function qk(t,e){let{gen:r,validateName:n,schemaEnv:s}=t;s.$async?r.throw((0,je._)`new ${t.ValidationError}(${e})`):(r.assign((0,je._)`${n}.errors`,e),r.return(!1))}var ui={keyword:new je.Name("keyword"),schemaPath:new je.Name("schemaPath"),params:new je.Name("params"),propertyName:new je.Name("propertyName"),message:new je.Name("message"),schema:new je.Name("schema"),parentSchema:new je.Name("parentSchema")};function Fk(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,je._)`{}`:$9(t,e,r)}function $9(t,e,r={}){let{gen:n,it:s}=t,i=[O9(s,r),P9(t,r)];return C9(t,e,i),n.object(...i)}function O9({errorPath:t},{instancePath:e}){let r=e?(0,je.str)`${t}${(0,wp.getErrorPath)(e,wp.Type.Str)}`:t;return[pr.default.instancePath,(0,je.strConcat)(pr.default.instancePath,r)]}function P9({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let s=n?e:(0,je.str)`${e}/${t}`;return r&&(s=(0,je.str)`${s}${(0,wp.getErrorPath)(r,wp.Type.Str)}`),[ui.schemaPath,s]}function C9(t,{params:e,message:r},n){let{keyword:s,data:i,schemaValue:a,it:o}=t,{opts:c,propertyName:l,topSchemaRef:u,schemaPath:p}=o;n.push([ui.keyword,s],[ui.params,typeof e=="function"?e(t):e||(0,je._)`{}`]),c.messages&&n.push([ui.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([ui.schema,a],[ui.parentSchema,(0,je._)`${u}${p}`],[pr.default.data,i]),l&&n.push([ui.propertyName,l])}});var Hk=R(na=>{"use strict";Object.defineProperty(na,"__esModule",{value:!0});na.boolOrEmptySchema=na.topBoolOrEmptySchema=void 0;var I9=_c(),A9=Ee(),N9=as(),j9={message:"boolean schema is false"};function D9(t){let{gen:e,schema:r,validateName:n}=t;r===!1?Uk(t,!1):typeof r=="object"&&r.$async===!0?e.return(N9.default.data):(e.assign((0,A9._)`${n}.errors`,null),e.return(!0))}na.topBoolOrEmptySchema=D9;function M9(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),Uk(t)):r.var(e,!0)}na.boolOrEmptySchema=M9;function Uk(t,e){let{gen:r,data:n}=t,s={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,I9.reportError)(s,j9,void 0,e)}});var tv=R(sa=>{"use strict";Object.defineProperty(sa,"__esModule",{value:!0});sa.getRules=sa.isJSONType=void 0;var z9=["string","number","integer","boolean","null","object","array"],L9=new Set(z9);function q9(t){return typeof t=="string"&&L9.has(t)}sa.isJSONType=q9;function F9(){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:{}}}sa.getRules=F9});var rv=R(Os=>{"use strict";Object.defineProperty(Os,"__esModule",{value:!0});Os.shouldUseRule=Os.shouldUseGroup=Os.schemaHasRulesForType=void 0;function U9({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&Bk(t,n)}Os.schemaHasRulesForType=U9;function Bk(t,e){return e.rules.some(r=>Wk(t,r))}Os.shouldUseGroup=Bk;function Wk(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))}Os.shouldUseRule=Wk});var wc=R(ir=>{"use strict";Object.defineProperty(ir,"__esModule",{value:!0});ir.reportTypeError=ir.checkDataTypes=ir.checkDataType=ir.coerceAndCheckDataType=ir.getJSONTypes=ir.getSchemaTypes=ir.DataType=void 0;var H9=tv(),B9=rv(),W9=_c(),Se=Ee(),Zk=Fe(),ia;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(ia||(ir.DataType=ia={}));function Z9(t){let e=Vk(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}ir.getSchemaTypes=Z9;function Vk(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(H9.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}ir.getJSONTypes=Vk;function V9(t,e){let{gen:r,data:n,opts:s}=t,i=G9(e,s.coerceTypes),a=e.length>0&&!(i.length===0&&e.length===1&&(0,B9.schemaHasRulesForType)(t,e[0]));if(a){let o=sv(e,n,s.strictNumbers,ia.Wrong);r.if(o,()=>{i.length?Y9(t,e,i):iv(t)})}return a}ir.coerceAndCheckDataType=V9;var Gk=new Set(["string","number","integer","boolean","null"]);function G9(t,e){return e?t.filter(r=>Gk.has(r)||e==="array"&&r==="array"):[]}function Y9(t,e,r){let{gen:n,data:s,opts:i}=t,a=n.let("dataType",(0,Se._)`typeof ${s}`),o=n.let("coerced",(0,Se._)`undefined`);i.coerceTypes==="array"&&n.if((0,Se._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0,Se._)`${s}[0]`).assign(a,(0,Se._)`typeof ${s}`).if(sv(e,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,Se._)`${o} !== undefined`);for(let l of r)(Gk.has(l)||l==="array"&&i.coerceTypes==="array")&&c(l);n.else(),iv(t),n.endIf(),n.if((0,Se._)`${o} !== undefined`,()=>{n.assign(s,o),K9(t,o)});function c(l){switch(l){case"string":n.elseIf((0,Se._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,Se._)`"" + ${s}`).elseIf((0,Se._)`${s} === null`).assign(o,(0,Se._)`""`);return;case"number":n.elseIf((0,Se._)`${a} == "boolean" || ${s} === null +"use strict";var tq=Object.create;var qu=Object.defineProperty;var rq=Object.getOwnPropertyDescriptor;var nq=Object.getOwnPropertyNames;var sq=Object.getPrototypeOf,iq=Object.prototype.hasOwnProperty;var xe=(t,e)=>()=>(t&&(e=t(t=0)),e);var R=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Nn=(t,e)=>{for(var r in e)qu(t,r,{get:e[r],enumerable:!0})},uw=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of nq(e))!iq.call(t,s)&&s!==r&&qu(t,s,{get:()=>e[s],enumerable:!(n=rq(e,s))||n.enumerable});return t};var ie=(t,e,r)=>(r=t!=null?tq(sq(t)):{},uw(e||!t||!t.__esModule?qu(r,"default",{value:t,enumerable:!0}):r,t)),Zo=t=>uw(qu({},"__esModule",{value:!0}),t);var vc=R(qe=>{"use strict";Object.defineProperty(qe,"__esModule",{value:!0});qe.regexpCode=qe.getEsmExportName=qe.getProperty=qe.safeStringify=qe.stringify=qe.strConcat=qe.addCodeArg=qe.str=qe._=qe.nil=qe._Code=qe.Name=qe.IDENTIFIER=qe._CodeOrName=void 0;var hc=class{};qe._CodeOrName=hc;qe.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var oi=class extends hc{constructor(e){if(super(),!qe.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}}};qe.Name=oi;var Jr=class extends hc{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 oi&&(r[n.str]=(r[n.str]||0)+1),r),{})}};qe._Code=Jr;qe.nil=new Jr("");function Nk(t,...e){let r=[t[0]],n=0;for(;n{"use strict";Object.defineProperty($r,"__esModule",{value:!0});$r.ValueScope=$r.ValueScopeName=$r.Scope=$r.varKinds=$r.UsedValueState=void 0;var Rr=vc(),qg=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},vp;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(vp||($r.UsedValueState=vp={}));$r.varKinds={const:new Rr.Name("const"),let:new Rr.Name("let"),var:new Rr.Name("var")};var yp=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Rr.Name?e:this.name(e)}name(e){return new Rr.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}}};$r.Scope=yp;var bp=class extends Rr.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Rr._)`.${new Rr.Name(r)}[${n}]`}};$r.ValueScopeName=bp;var f9=(0,Rr._)`\n`,Fg=class extends yp{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?f9:Rr.nil}}get(){return this._scope}name(e){return new bp(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 s=this.toName(e),{prefix:i}=s,a=(n=r.key)!==null&&n!==void 0?n:r.ref,o=this._values[i];if(o){let u=o.get(a);if(u)return u}else o=this._values[i]=new Map;o.set(a,s);let c=this._scope[i]||(this._scope[i]=[]),l=c.length;return c[l]=r.ref,s.setValue(r,{property:i,itemIndex:l}),s}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,Rr._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(e,r,n={},s){let i=Rr.nil;for(let a in e){let o=e[a];if(!o)continue;let c=n[a]=n[a]||new Map;o.forEach(l=>{if(c.has(l))return;c.set(l,vp.Started);let u=r(l);if(u){let p=this.opts.es5?$r.varKinds.var:$r.varKinds.const;i=(0,Rr._)`${i}${p} ${l} = ${u};${this.opts._n}`}else if(u=s?.(l))i=(0,Rr._)`${i}${u}${this.opts._n}`;else throw new qg(l);c.set(l,vp.Completed)})}return i}};$r.ValueScope=Fg});var Ee=R(ke=>{"use strict";Object.defineProperty(ke,"__esModule",{value:!0});ke.or=ke.and=ke.not=ke.CodeGen=ke.operators=ke.varKinds=ke.ValueScopeName=ke.ValueScope=ke.Scope=ke.Name=ke.regexpCode=ke.stringify=ke.getProperty=ke.nil=ke.strConcat=ke.str=ke._=void 0;var je=vc(),fn=Ug(),$s=vc();Object.defineProperty(ke,"_",{enumerable:!0,get:function(){return $s._}});Object.defineProperty(ke,"str",{enumerable:!0,get:function(){return $s.str}});Object.defineProperty(ke,"strConcat",{enumerable:!0,get:function(){return $s.strConcat}});Object.defineProperty(ke,"nil",{enumerable:!0,get:function(){return $s.nil}});Object.defineProperty(ke,"getProperty",{enumerable:!0,get:function(){return $s.getProperty}});Object.defineProperty(ke,"stringify",{enumerable:!0,get:function(){return $s.stringify}});Object.defineProperty(ke,"regexpCode",{enumerable:!0,get:function(){return $s.regexpCode}});Object.defineProperty(ke,"Name",{enumerable:!0,get:function(){return $s.Name}});var Sp=Ug();Object.defineProperty(ke,"Scope",{enumerable:!0,get:function(){return Sp.Scope}});Object.defineProperty(ke,"ValueScope",{enumerable:!0,get:function(){return Sp.ValueScope}});Object.defineProperty(ke,"ValueScopeName",{enumerable:!0,get:function(){return Sp.ValueScopeName}});Object.defineProperty(ke,"varKinds",{enumerable:!0,get:function(){return Sp.varKinds}});ke.operators={GT:new je._Code(">"),GTE:new je._Code(">="),LT:new je._Code("<"),LTE:new je._Code("<="),EQ:new je._Code("==="),NEQ:new je._Code("!=="),NOT:new je._Code("!"),OR:new je._Code("||"),AND:new je._Code("&&"),ADD:new je._Code("+")};var ss=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},Hg=class extends ss{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?fn.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${s};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=na(this.rhs,e,r)),this}get names(){return this.rhs instanceof je._CodeOrName?this.rhs.names:{}}},xp=class extends ss{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 je.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=na(this.rhs,e,r),this}get names(){let e=this.lhs instanceof je.Name?{}:{...this.lhs.names};return wp(e,this.rhs)}},Bg=class extends xp{constructor(e,r,n,s){super(e,n,s),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},Wg=class extends ss{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},Zg=class extends ss{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},Vg=class extends ss{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},Gg=class extends ss{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=na(this.code,e,r),this}get names(){return this.code instanceof je._CodeOrName?this.code.names:{}}},yc=class extends ss{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,s=n.length;for(;s--;){let i=n[s];i.optimizeNames(e,r)||(h9(e,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>ui(e,r.names),{})}},is=class extends yc{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Yg=class extends yc{},ra=class extends is{};ra.kind="else";var ci=class t extends is{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 ra(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(Dk(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=na(this.condition,e,r),this}get names(){let e=super.names;return wp(e,this.condition),this.else&&ui(e,this.else.names),e}};ci.kind="if";var li=class extends is{};li.kind="for";var Kg=class extends li{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=na(this.iteration,e,r),this}get names(){return ui(super.names,this.iteration.names)}},Jg=class extends li{constructor(e,r,n,s){super(),this.varKind=e,this.name=r,this.from=n,this.to=s}render(e){let r=e.es5?fn.varKinds.var:this.varKind,{name:n,from:s,to:i}=this;return`for(${r} ${n}=${s}; ${n}<${i}; ${n}++)`+super.render(e)}get names(){let e=wp(super.names,this.from);return wp(e,this.to)}},_p=class extends li{constructor(e,r,n,s){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=s}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=na(this.iterable,e,r),this}get names(){return ui(super.names,this.iterable.names)}},bc=class extends is{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)}};bc.kind="func";var xc=class extends yc{render(e){return"return "+super.render(e)}};xc.kind="return";var Qg=class extends is{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,s;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(s=this.finally)===null||s===void 0||s.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&ui(e,this.catch.names),this.finally&&ui(e,this.finally.names),e}},_c=class extends is{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};_c.kind="catch";var wc=class extends is{render(e){return"finally"+super.render(e)}};wc.kind="finally";var Xg=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` +`:""},this._extScope=e,this._scope=new fn.Scope({parent:e}),this._nodes=[new Yg]}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,s){let i=this._scope.toName(r);return n!==void 0&&s&&(this._constants[i.str]=n),this._leafNode(new Hg(e,i,n)),i}const(e,r,n){return this._def(fn.varKinds.const,e,r,n)}let(e,r,n){return this._def(fn.varKinds.let,e,r,n)}var(e,r,n){return this._def(fn.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new xp(e,r,n))}add(e,r){return this._leafNode(new Bg(e,ke.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==je.nil&&this._leafNode(new Gg(e)),this}object(...e){let r=["{"];for(let[n,s]of e)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,je.addCodeArg)(r,s));return r.push("}"),new je._Code(r)}if(e,r,n){if(this._blockNode(new ci(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 ci(e))}else(){return this._elseNode(new ra)}endIf(){return this._endBlockNode(ci,ra)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new Kg(e),r)}forRange(e,r,n,s,i=this.opts.es5?fn.varKinds.var:fn.varKinds.let){let a=this._scope.toName(e);return this._for(new Jg(i,a,r,n),()=>s(a))}forOf(e,r,n,s=fn.varKinds.const){let i=this._scope.toName(e);if(this.opts.es5){let a=r instanceof je.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,je._)`${a}.length`,o=>{this.var(i,(0,je._)`${a}[${o}]`),n(i)})}return this._for(new _p("of",s,i,r),()=>n(i))}forIn(e,r,n,s=this.opts.es5?fn.varKinds.var:fn.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,je._)`Object.keys(${r})`,n);let i=this._scope.toName(e);return this._for(new _p("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(li)}label(e){return this._leafNode(new Wg(e))}break(e){return this._leafNode(new Zg(e))}return(e){let r=new xc;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(xc)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new Qg;if(this._blockNode(s),this.code(e),r){let i=this.name("e");this._currNode=s.catch=new _c(i),r(i)}return n&&(this._currNode=s.finally=new wc,this.code(n)),this._endBlockNode(_c,wc)}throw(e){return this._leafNode(new Vg(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=je.nil,n,s){return this._blockNode(new bc(e,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(bc)}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 ci))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}};ke.CodeGen=Xg;function ui(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function wp(t,e){return e instanceof je._CodeOrName?ui(t,e.names):t}function na(t,e,r){if(t instanceof je.Name)return n(t);if(!s(t))return t;return new je._Code(t._items.reduce((i,a)=>(a instanceof je.Name&&(a=n(a)),a instanceof je._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||e[i.str]!==1?i:(delete e[i.str],a)}function s(i){return i instanceof je._Code&&i._items.some(a=>a instanceof je.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function h9(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function Dk(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,je._)`!${ev(t)}`}ke.not=Dk;var g9=Mk(ke.operators.AND);function v9(...t){return t.reduce(g9)}ke.and=v9;var y9=Mk(ke.operators.OR);function b9(...t){return t.reduce(y9)}ke.or=b9;function Mk(t){return(e,r)=>e===je.nil?r:r===je.nil?e:(0,je._)`${ev(e)} ${t} ${ev(r)}`}function ev(t){return t instanceof je.Name?t:(0,je._)`(${t})`}});var Fe=R(Pe=>{"use strict";Object.defineProperty(Pe,"__esModule",{value:!0});Pe.checkStrictMode=Pe.getErrorPath=Pe.Type=Pe.useFunc=Pe.setEvaluated=Pe.evaluatedPropsToName=Pe.mergeEvaluated=Pe.eachItem=Pe.unescapeJsonPointer=Pe.escapeJsonPointer=Pe.escapeFragment=Pe.unescapeFragment=Pe.schemaRefOrVal=Pe.schemaHasRulesButRef=Pe.schemaHasRules=Pe.checkUnknownRules=Pe.alwaysValidSchema=Pe.toHash=void 0;var nt=Ee(),x9=vc();function _9(t){let e={};for(let r of t)e[r]=!0;return e}Pe.toHash=_9;function w9(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(qk(t,e),!Fk(e,t.self.RULES.all))}Pe.alwaysValidSchema=w9;function qk(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let s=n.RULES.keywords;for(let i in e)s[i]||Bk(t,`unknown keyword: "${i}"`)}Pe.checkUnknownRules=qk;function Fk(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}Pe.schemaHasRules=Fk;function S9(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}Pe.schemaHasRulesButRef=S9;function E9({topSchemaRef:t,schemaPath:e},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,nt._)`${r}`}return(0,nt._)`${t}${e}${(0,nt.getProperty)(n)}`}Pe.schemaRefOrVal=E9;function k9(t){return Uk(decodeURIComponent(t))}Pe.unescapeFragment=k9;function T9(t){return encodeURIComponent(rv(t))}Pe.escapeFragment=T9;function rv(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}Pe.escapeJsonPointer=rv;function Uk(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}Pe.unescapeJsonPointer=Uk;function R9(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}Pe.eachItem=R9;function zk({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(s,i,a,o)=>{let c=a===void 0?i:a instanceof nt.Name?(i instanceof nt.Name?t(s,i,a):e(s,i,a),a):i instanceof nt.Name?(e(s,a,i),i):r(i,a);return o===nt.Name&&!(c instanceof nt.Name)?n(s,c):c}}Pe.mergeEvaluated={props:zk({mergeNames:(t,e,r)=>t.if((0,nt._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,nt._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,nt._)`${r} || {}`).code((0,nt._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,nt._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,nt._)`${r} || {}`),nv(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:Hk}),items:zk({mergeNames:(t,e,r)=>t.if((0,nt._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,nt._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,nt._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,nt._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function Hk(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,nt._)`{}`);return e!==void 0&&nv(t,r,e),r}Pe.evaluatedPropsToName=Hk;function nv(t,e,r){Object.keys(r).forEach(n=>t.assign((0,nt._)`${e}${(0,nt.getProperty)(n)}`,!0))}Pe.setEvaluated=nv;var Lk={};function $9(t,e){return t.scopeValue("func",{ref:e,code:Lk[e.code]||(Lk[e.code]=new x9._Code(e.code))})}Pe.useFunc=$9;var tv;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(tv||(Pe.Type=tv={}));function O9(t,e,r){if(t instanceof nt.Name){let n=e===tv.Num;return r?n?(0,nt._)`"[" + ${t} + "]"`:(0,nt._)`"['" + ${t} + "']"`:n?(0,nt._)`"/" + ${t}`:(0,nt._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,nt.getProperty)(t).toString():"/"+rv(t)}Pe.getErrorPath=O9;function Bk(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}Pe.checkStrictMode=Bk});var as=R(sv=>{"use strict";Object.defineProperty(sv,"__esModule",{value:!0});var nr=Ee(),P9={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")};sv.default=P9});var Sc=R(sr=>{"use strict";Object.defineProperty(sr,"__esModule",{value:!0});sr.extendErrors=sr.resetErrorsCount=sr.reportExtraError=sr.reportError=sr.keyword$DataError=sr.keywordError=void 0;var De=Ee(),Ep=Fe(),pr=as();sr.keywordError={message:({keyword:t})=>(0,De.str)`must pass "${t}" keyword validation`};sr.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,De.str)`"${t}" keyword must be ${e} ($data)`:(0,De.str)`"${t}" keyword is invalid ($data)`};function C9(t,e=sr.keywordError,r,n){let{it:s}=t,{gen:i,compositeRule:a,allErrors:o}=s,c=Vk(t,e,r);n??(a||o)?Wk(i,c):Zk(s,(0,De._)`[${c}]`)}sr.reportError=C9;function I9(t,e=sr.keywordError,r){let{it:n}=t,{gen:s,compositeRule:i,allErrors:a}=n,o=Vk(t,e,r);Wk(s,o),i||a||Zk(n,pr.default.vErrors)}sr.reportExtraError=I9;function A9(t,e){t.assign(pr.default.errors,e),t.if((0,De._)`${pr.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,De._)`${pr.default.vErrors}.length`,e),()=>t.assign(pr.default.vErrors,null)))}sr.resetErrorsCount=A9;function N9({gen:t,keyword:e,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",s,pr.default.errors,o=>{t.const(a,(0,De._)`${pr.default.vErrors}[${o}]`),t.if((0,De._)`${a}.instancePath === undefined`,()=>t.assign((0,De._)`${a}.instancePath`,(0,De.strConcat)(pr.default.instancePath,i.errorPath))),t.assign((0,De._)`${a}.schemaPath`,(0,De.str)`${i.errSchemaPath}/${e}`),i.opts.verbose&&(t.assign((0,De._)`${a}.schema`,r),t.assign((0,De._)`${a}.data`,n))})}sr.extendErrors=N9;function Wk(t,e){let r=t.const("err",e);t.if((0,De._)`${pr.default.vErrors} === null`,()=>t.assign(pr.default.vErrors,(0,De._)`[${r}]`),(0,De._)`${pr.default.vErrors}.push(${r})`),t.code((0,De._)`${pr.default.errors}++`)}function Zk(t,e){let{gen:r,validateName:n,schemaEnv:s}=t;s.$async?r.throw((0,De._)`new ${t.ValidationError}(${e})`):(r.assign((0,De._)`${n}.errors`,e),r.return(!1))}var pi={keyword:new De.Name("keyword"),schemaPath:new De.Name("schemaPath"),params:new De.Name("params"),propertyName:new De.Name("propertyName"),message:new De.Name("message"),schema:new De.Name("schema"),parentSchema:new De.Name("parentSchema")};function Vk(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,De._)`{}`:j9(t,e,r)}function j9(t,e,r={}){let{gen:n,it:s}=t,i=[D9(s,r),M9(t,r)];return z9(t,e,i),n.object(...i)}function D9({errorPath:t},{instancePath:e}){let r=e?(0,De.str)`${t}${(0,Ep.getErrorPath)(e,Ep.Type.Str)}`:t;return[pr.default.instancePath,(0,De.strConcat)(pr.default.instancePath,r)]}function M9({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let s=n?e:(0,De.str)`${e}/${t}`;return r&&(s=(0,De.str)`${s}${(0,Ep.getErrorPath)(r,Ep.Type.Str)}`),[pi.schemaPath,s]}function z9(t,{params:e,message:r},n){let{keyword:s,data:i,schemaValue:a,it:o}=t,{opts:c,propertyName:l,topSchemaRef:u,schemaPath:p}=o;n.push([pi.keyword,s],[pi.params,typeof e=="function"?e(t):e||(0,De._)`{}`]),c.messages&&n.push([pi.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([pi.schema,a],[pi.parentSchema,(0,De._)`${u}${p}`],[pr.default.data,i]),l&&n.push([pi.propertyName,l])}});var Yk=R(sa=>{"use strict";Object.defineProperty(sa,"__esModule",{value:!0});sa.boolOrEmptySchema=sa.topBoolOrEmptySchema=void 0;var L9=Sc(),q9=Ee(),F9=as(),U9={message:"boolean schema is false"};function H9(t){let{gen:e,schema:r,validateName:n}=t;r===!1?Gk(t,!1):typeof r=="object"&&r.$async===!0?e.return(F9.default.data):(e.assign((0,q9._)`${n}.errors`,null),e.return(!0))}sa.topBoolOrEmptySchema=H9;function B9(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),Gk(t)):r.var(e,!0)}sa.boolOrEmptySchema=B9;function Gk(t,e){let{gen:r,data:n}=t,s={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,L9.reportError)(s,U9,void 0,e)}});var iv=R(ia=>{"use strict";Object.defineProperty(ia,"__esModule",{value:!0});ia.getRules=ia.isJSONType=void 0;var W9=["string","number","integer","boolean","null","object","array"],Z9=new Set(W9);function V9(t){return typeof t=="string"&&Z9.has(t)}ia.isJSONType=V9;function G9(){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:{}}}ia.getRules=G9});var av=R(Os=>{"use strict";Object.defineProperty(Os,"__esModule",{value:!0});Os.shouldUseRule=Os.shouldUseGroup=Os.schemaHasRulesForType=void 0;function Y9({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&Kk(t,n)}Os.schemaHasRulesForType=Y9;function Kk(t,e){return e.rules.some(r=>Jk(t,r))}Os.shouldUseGroup=Kk;function Jk(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))}Os.shouldUseRule=Jk});var Ec=R(ir=>{"use strict";Object.defineProperty(ir,"__esModule",{value:!0});ir.reportTypeError=ir.checkDataTypes=ir.checkDataType=ir.coerceAndCheckDataType=ir.getJSONTypes=ir.getSchemaTypes=ir.DataType=void 0;var K9=iv(),J9=av(),Q9=Sc(),Se=Ee(),Qk=Fe(),aa;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(aa||(ir.DataType=aa={}));function X9(t){let e=Xk(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}ir.getSchemaTypes=X9;function Xk(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(K9.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}ir.getJSONTypes=Xk;function eU(t,e){let{gen:r,data:n,opts:s}=t,i=tU(e,s.coerceTypes),a=e.length>0&&!(i.length===0&&e.length===1&&(0,J9.schemaHasRulesForType)(t,e[0]));if(a){let o=cv(e,n,s.strictNumbers,aa.Wrong);r.if(o,()=>{i.length?rU(t,e,i):lv(t)})}return a}ir.coerceAndCheckDataType=eU;var eT=new Set(["string","number","integer","boolean","null"]);function tU(t,e){return e?t.filter(r=>eT.has(r)||e==="array"&&r==="array"):[]}function rU(t,e,r){let{gen:n,data:s,opts:i}=t,a=n.let("dataType",(0,Se._)`typeof ${s}`),o=n.let("coerced",(0,Se._)`undefined`);i.coerceTypes==="array"&&n.if((0,Se._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0,Se._)`${s}[0]`).assign(a,(0,Se._)`typeof ${s}`).if(cv(e,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,Se._)`${o} !== undefined`);for(let l of r)(eT.has(l)||l==="array"&&i.coerceTypes==="array")&&c(l);n.else(),lv(t),n.endIf(),n.if((0,Se._)`${o} !== undefined`,()=>{n.assign(s,o),nU(t,o)});function c(l){switch(l){case"string":n.elseIf((0,Se._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,Se._)`"" + ${s}`).elseIf((0,Se._)`${s} === null`).assign(o,(0,Se._)`""`);return;case"number":n.elseIf((0,Se._)`${a} == "boolean" || ${s} === null || (${a} == "string" && ${s} && ${s} == +${s})`).assign(o,(0,Se._)`+${s}`);return;case"integer":n.elseIf((0,Se._)`${a} === "boolean" || ${s} === null || (${a} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(o,(0,Se._)`+${s}`);return;case"boolean":n.elseIf((0,Se._)`${s} === "false" || ${s} === 0 || ${s} === null`).assign(o,!1).elseIf((0,Se._)`${s} === "true" || ${s} === 1`).assign(o,!0);return;case"null":n.elseIf((0,Se._)`${s} === "" || ${s} === 0 || ${s} === false`),n.assign(o,null);return;case"array":n.elseIf((0,Se._)`${a} === "string" || ${a} === "number" - || ${a} === "boolean" || ${s} === null`).assign(o,(0,Se._)`[${s}]`)}}}function K9({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,Se._)`${e} !== undefined`,()=>t.assign((0,Se._)`${e}[${r}]`,n))}function nv(t,e,r,n=ia.Correct){let s=n===ia.Correct?Se.operators.EQ:Se.operators.NEQ,i;switch(t){case"null":return(0,Se._)`${e} ${s} null`;case"array":i=(0,Se._)`Array.isArray(${e})`;break;case"object":i=(0,Se._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":i=a((0,Se._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":i=a();break;default:return(0,Se._)`typeof ${e} ${s} ${t}`}return n===ia.Correct?i:(0,Se.not)(i);function a(o=Se.nil){return(0,Se.and)((0,Se._)`typeof ${e} == "number"`,o,r?(0,Se._)`isFinite(${e})`:Se.nil)}}ir.checkDataType=nv;function sv(t,e,r,n){if(t.length===1)return nv(t[0],e,r,n);let s,i=(0,Zk.toHash)(t);if(i.array&&i.object){let a=(0,Se._)`typeof ${e} != "object"`;s=i.null?a:(0,Se._)`!${e} || ${a}`,delete i.null,delete i.array,delete i.object}else s=Se.nil;i.number&&delete i.integer;for(let a in i)s=(0,Se.and)(s,nv(a,e,r,n));return s}ir.checkDataTypes=sv;var J9={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,Se._)`{type: ${t}}`:(0,Se._)`{type: ${e}}`};function iv(t){let e=Q9(t);(0,W9.reportError)(e,J9)}ir.reportTypeError=iv;function Q9(t){let{gen:e,data:r,schema:n}=t,s=(0,Zk.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:t}}});var Kk=R(Sp=>{"use strict";Object.defineProperty(Sp,"__esModule",{value:!0});Sp.assignDefaults=void 0;var aa=Ee(),X9=Fe();function eU(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let s in r)Yk(t,s,r[s].default);else e==="array"&&Array.isArray(n)&&n.forEach((s,i)=>Yk(t,i,s.default))}Sp.assignDefaults=eU;function Yk(t,e,r){let{gen:n,compositeRule:s,data:i,opts:a}=t;if(r===void 0)return;let o=(0,aa._)`${i}${(0,aa.getProperty)(e)}`;if(s){(0,X9.checkStrictMode)(t,`default is ignored for: ${o}`);return}let c=(0,aa._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,aa._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,aa._)`${o} = ${(0,aa.stringify)(r)}`)}});var Qr=R(tt=>{"use strict";Object.defineProperty(tt,"__esModule",{value:!0});tt.validateUnion=tt.validateArray=tt.usePattern=tt.callValidateCode=tt.schemaProperties=tt.allSchemaProperties=tt.noPropertyInData=tt.propertyInData=tt.isOwnProperty=tt.hasPropFunc=tt.reportMissingProp=tt.checkMissingProp=tt.checkReportMissingProp=void 0;var ht=Ee(),av=Fe(),Ps=as(),tU=Fe();function rU(t,e){let{gen:r,data:n,it:s}=t;r.if(cv(r,n,e,s.opts.ownProperties),()=>{t.setParams({missingProperty:(0,ht._)`${e}`},!0),t.error()})}tt.checkReportMissingProp=rU;function nU({gen:t,data:e,it:{opts:r}},n,s){return(0,ht.or)(...n.map(i=>(0,ht.and)(cv(t,e,i,r.ownProperties),(0,ht._)`${s} = ${i}`)))}tt.checkMissingProp=nU;function sU(t,e){t.setParams({missingProperty:e},!0),t.error()}tt.reportMissingProp=sU;function Jk(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,ht._)`Object.prototype.hasOwnProperty`})}tt.hasPropFunc=Jk;function ov(t,e,r){return(0,ht._)`${Jk(t)}.call(${e}, ${r})`}tt.isOwnProperty=ov;function iU(t,e,r,n){let s=(0,ht._)`${e}${(0,ht.getProperty)(r)} !== undefined`;return n?(0,ht._)`${s} && ${ov(t,e,r)}`:s}tt.propertyInData=iU;function cv(t,e,r,n){let s=(0,ht._)`${e}${(0,ht.getProperty)(r)} === undefined`;return n?(0,ht.or)(s,(0,ht.not)(ov(t,e,r))):s}tt.noPropertyInData=cv;function Qk(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}tt.allSchemaProperties=Qk;function aU(t,e){return Qk(e).filter(r=>!(0,av.alwaysValidSchema)(t,e[r]))}tt.schemaProperties=aU;function oU({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:a},o,c,l){let u=l?(0,ht._)`${t}, ${e}, ${n}${s}`:e,p=[[Ps.default.instancePath,(0,ht.strConcat)(Ps.default.instancePath,i)],[Ps.default.parentData,a.parentData],[Ps.default.parentDataProperty,a.parentDataProperty],[Ps.default.rootData,Ps.default.rootData]];a.opts.dynamicRef&&p.push([Ps.default.dynamicAnchors,Ps.default.dynamicAnchors]);let d=(0,ht._)`${u}, ${r.object(...p)}`;return c!==ht.nil?(0,ht._)`${o}.call(${c}, ${d})`:(0,ht._)`${o}(${d})`}tt.callValidateCode=oU;var cU=(0,ht._)`new RegExp`;function lU({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:s}=e.code,i=s(r,n);return t.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,ht._)`${s.code==="new RegExp"?cU:(0,tU.useFunc)(t,s)}(${r}, ${n})`})}tt.usePattern=lU;function uU(t){let{gen:e,data:r,keyword:n,it:s}=t,i=e.name("valid");if(s.allErrors){let o=e.let("valid",!0);return a(()=>e.assign(o,!1)),o}return e.var(i,!0),a(()=>e.break()),i;function a(o){let c=e.const("len",(0,ht._)`${r}.length`);e.forRange("i",0,c,l=>{t.subschema({keyword:n,dataProp:l,dataPropType:av.Type.Num},i),e.if((0,ht.not)(i),o)})}}tt.validateArray=uU;function pU(t){let{gen:e,schema:r,keyword:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,av.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=e.let("valid",!1),o=e.name("_valid");e.block(()=>r.forEach((c,l)=>{let u=t.subschema({keyword:n,schemaProp:l,compositeRule:!0},o);e.assign(a,(0,ht._)`${a} || ${o}`),t.mergeValidEvaluated(u,o)||e.if((0,ht.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}tt.validateUnion=pU});var tT=R(Mn=>{"use strict";Object.defineProperty(Mn,"__esModule",{value:!0});Mn.validateKeywordUsage=Mn.validSchemaType=Mn.funcKeywordCode=Mn.macroKeywordCode=void 0;var dr=Ee(),pi=as(),dU=Qr(),mU=_c();function fU(t,e){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=t,o=e.macro.call(a.self,s,i,a),c=eT(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let l=r.name("valid");t.subschema({schema:o,schemaPath:dr.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},l),t.pass(l,()=>t.error(!0))}Mn.macroKeywordCode=fU;function hU(t,e){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=t;vU(c,e);let l=!o&&e.compile?e.compile.call(c.self,i,a,c):e.validate,u=eT(n,s,l),p=n.let("valid");t.block$data(p,d),t.ok((r=e.valid)!==null&&r!==void 0?r:p);function d(){if(e.errors===!1)v(),e.modifying&&Xk(t),g(()=>t.error());else{let h=e.async?m():f();e.modifying&&Xk(t),g(()=>gU(t,h))}}function m(){let h=n.let("ruleErrs",null);return n.try(()=>v((0,dr._)`await `),y=>n.assign(p,!1).if((0,dr._)`${y} instanceof ${c.ValidationError}`,()=>n.assign(h,(0,dr._)`${y}.errors`),()=>n.throw(y))),h}function f(){let h=(0,dr._)`${u}.errors`;return n.assign(h,null),v(dr.nil),h}function v(h=e.async?(0,dr._)`await `:dr.nil){let y=c.opts.passContext?pi.default.this:pi.default.self,b=!("compile"in e&&!o||e.schema===!1);n.assign(p,(0,dr._)`${h}${(0,dU.callValidateCode)(t,u,y,b)}`,e.modifying)}function g(h){var y;n.if((0,dr.not)((y=e.valid)!==null&&y!==void 0?y:p),h)}}Mn.funcKeywordCode=hU;function Xk(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,dr._)`${n.parentData}[${n.parentDataProperty}]`))}function gU(t,e){let{gen:r}=t;r.if((0,dr._)`Array.isArray(${e})`,()=>{r.assign(pi.default.vErrors,(0,dr._)`${pi.default.vErrors} === null ? ${e} : ${pi.default.vErrors}.concat(${e})`).assign(pi.default.errors,(0,dr._)`${pi.default.vErrors}.length`),(0,mU.extendErrors)(t)},()=>t.error())}function vU({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function eT(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,dr.stringify)(r)})}function yU(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")}Mn.validSchemaType=yU;function bU({schema:t,opts:e,self:r,errSchemaPath:n},s,i){if(Array.isArray(s.keyword)?!s.keyword.includes(i):s.keyword!==i)throw new Error("ajv implementation error");let a=s.dependencies;if(a?.some(o=>!Object.prototype.hasOwnProperty.call(t,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(t[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}Mn.validateKeywordUsage=bU});var nT=R(Cs=>{"use strict";Object.defineProperty(Cs,"__esModule",{value:!0});Cs.extendSubschemaMode=Cs.extendSubschemaData=Cs.getSubschema=void 0;var zn=Ee(),rT=Fe();function xU(t,{keyword:e,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:a}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let o=t.schema[e];return r===void 0?{schema:o,schemaPath:(0,zn._)`${t.schemaPath}${(0,zn.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:o[r],schemaPath:(0,zn._)`${t.schemaPath}${(0,zn.getProperty)(e)}${(0,zn.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,rT.escapeFragment)(r)}`}}if(n!==void 0){if(s===void 0||i===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:s,topSchemaRef:a,errSchemaPath:i}}throw new Error('either "keyword" or "schema" must be passed')}Cs.getSubschema=xU;function _U(t,e,{dataProp:r,dataPropType:n,data:s,dataTypes:i,propertyName:a}){if(s!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:o}=e;if(r!==void 0){let{errorPath:l,dataPathArr:u,opts:p}=e,d=o.let("data",(0,zn._)`${e.data}${(0,zn.getProperty)(r)}`,!0);c(d),t.errorPath=(0,zn.str)`${l}${(0,rT.getErrorPath)(r,n,p.jsPropertySyntax)}`,t.parentDataProperty=(0,zn._)`${r}`,t.dataPathArr=[...u,t.parentDataProperty]}if(s!==void 0){let l=s instanceof zn.Name?s:o.let("data",s,!0);c(l),a!==void 0&&(t.propertyName=a)}i&&(t.dataTypes=i);function c(l){t.data=l,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,l]}}Cs.extendSubschemaData=_U;function wU(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){n!==void 0&&(t.compositeRule=n),s!==void 0&&(t.createErrors=s),i!==void 0&&(t.allErrors=i),t.jtdDiscriminator=e,t.jtdMetadata=r}Cs.extendSubschemaMode=wU});var lv=R((Mve,sT)=>{"use strict";sT.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,s,i;if(Array.isArray(e)){if(n=e.length,n!=r.length)return!1;for(s=n;s--!==0;)if(!t(e[s],r[s]))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(i=Object.keys(e),n=i.length,n!==Object.keys(r).length)return!1;for(s=n;s--!==0;)if(!Object.prototype.hasOwnProperty.call(r,i[s]))return!1;for(s=n;s--!==0;){var a=i[s];if(!t(e[a],r[a]))return!1}return!0}return e!==e&&r!==r}});var aT=R((zve,iT)=>{"use strict";var Is=iT.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};Ep(e,n,s,t,"",t)};Is.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Is.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Is.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Is.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 Ep(t,e,r,n,s,i,a,o,c,l){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,s,i,a,o,c,l);for(var u in n){var p=n[u];if(Array.isArray(p)){if(u in Is.arrayKeywords)for(var d=0;d{"use strict";Object.defineProperty(Or,"__esModule",{value:!0});Or.getSchemaRefs=Or.resolveUrl=Or.normalizeId=Or._getFullPath=Or.getFullPath=Or.inlineRef=void 0;var EU=Fe(),kU=lv(),TU=aT(),RU=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function $U(t,e=!0){return typeof t=="boolean"?!0:e===!0?!uv(t):e?oT(t)<=e:!1}Or.inlineRef=$U;var OU=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function uv(t){for(let e in t){if(OU.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(uv)||typeof r=="object"&&uv(r))return!0}return!1}function oT(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!RU.has(r)&&(typeof t[r]=="object"&&(0,EU.eachItem)(t[r],n=>e+=oT(n)),e===1/0))return 1/0}return e}function cT(t,e="",r){r!==!1&&(e=oa(e));let n=t.parse(e);return lT(t,n)}Or.getFullPath=cT;function lT(t,e){return t.serialize(e).split("#")[0]+"#"}Or._getFullPath=lT;var PU=/#\/?$/;function oa(t){return t?t.replace(PU,""):""}Or.normalizeId=oa;function CU(t,e,r){return r=oa(r),t.resolve(e,r)}Or.resolveUrl=CU;var IU=/^[a-z_][-a-z0-9._]*$/i;function AU(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=oa(t[r]||e),i={"":s},a=cT(n,s,!1),o={},c=new Set;return TU(t,{allKeys:!0},(p,d,m,f)=>{if(f===void 0)return;let v=a+d,g=i[f];typeof p[r]=="string"&&(g=h.call(this,p[r])),y.call(this,p.$anchor),y.call(this,p.$dynamicAnchor),i[d]=g;function h(b){let x=this.opts.uriResolver.resolve;if(b=oa(g?x(g,b):b),c.has(b))throw u(b);c.add(b);let w=this.refs[b];return typeof w=="string"&&(w=this.refs[w]),typeof w=="object"?l(p,w.schema,b):b!==oa(v)&&(b[0]==="#"?(l(p,o[b],b),o[b]=p):this.refs[b]=v),b}function y(b){if(typeof b=="string"){if(!IU.test(b))throw new Error(`invalid anchor "${b}"`);h.call(this,`#${b}`)}}}),o;function l(p,d,m){if(d!==void 0&&!kU(p,d))throw u(m)}function u(p){return new Error(`reference "${p}" resolves to more than one schema`)}}Or.getSchemaRefs=AU});var Tc=R(As=>{"use strict";Object.defineProperty(As,"__esModule",{value:!0});As.getData=As.KeywordCxt=As.validateFunctionCode=void 0;var fT=Hk(),uT=wc(),dv=rv(),kp=wc(),NU=Kk(),kc=tT(),pv=nT(),ae=Ee(),be=as(),jU=Sc(),os=Fe(),Ec=_c();function DU(t){if(vT(t)&&(yT(t),gT(t))){LU(t);return}hT(t,()=>(0,fT.topBoolOrEmptySchema)(t))}As.validateFunctionCode=DU;function hT({gen:t,validateName:e,schema:r,schemaEnv:n,opts:s},i){s.code.es5?t.func(e,(0,ae._)`${be.default.data}, ${be.default.valCxt}`,n.$async,()=>{t.code((0,ae._)`"use strict"; ${pT(r,s)}`),zU(t,s),t.code(i)}):t.func(e,(0,ae._)`${be.default.data}, ${MU(s)}`,n.$async,()=>t.code(pT(r,s)).code(i))}function MU(t){return(0,ae._)`{${be.default.instancePath}="", ${be.default.parentData}, ${be.default.parentDataProperty}, ${be.default.rootData}=${be.default.data}${t.dynamicRef?(0,ae._)`, ${be.default.dynamicAnchors}={}`:ae.nil}}={}`}function zU(t,e){t.if(be.default.valCxt,()=>{t.var(be.default.instancePath,(0,ae._)`${be.default.valCxt}.${be.default.instancePath}`),t.var(be.default.parentData,(0,ae._)`${be.default.valCxt}.${be.default.parentData}`),t.var(be.default.parentDataProperty,(0,ae._)`${be.default.valCxt}.${be.default.parentDataProperty}`),t.var(be.default.rootData,(0,ae._)`${be.default.valCxt}.${be.default.rootData}`),e.dynamicRef&&t.var(be.default.dynamicAnchors,(0,ae._)`${be.default.valCxt}.${be.default.dynamicAnchors}`)},()=>{t.var(be.default.instancePath,(0,ae._)`""`),t.var(be.default.parentData,(0,ae._)`undefined`),t.var(be.default.parentDataProperty,(0,ae._)`undefined`),t.var(be.default.rootData,be.default.data),e.dynamicRef&&t.var(be.default.dynamicAnchors,(0,ae._)`{}`)})}function LU(t){let{schema:e,opts:r,gen:n}=t;hT(t,()=>{r.$comment&&e.$comment&&xT(t),BU(t),n.let(be.default.vErrors,null),n.let(be.default.errors,0),r.unevaluated&&qU(t),bT(t),VU(t)})}function qU(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,ae._)`${r}.evaluated`),e.if((0,ae._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,ae._)`${t.evaluated}.props`,(0,ae._)`undefined`)),e.if((0,ae._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,ae._)`${t.evaluated}.items`,(0,ae._)`undefined`))}function pT(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,ae._)`/*# sourceURL=${r} */`:ae.nil}function FU(t,e){if(vT(t)&&(yT(t),gT(t))){UU(t,e);return}(0,fT.boolOrEmptySchema)(t,e)}function gT({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 vT(t){return typeof t.schema!="boolean"}function UU(t,e){let{schema:r,gen:n,opts:s}=t;s.$comment&&r.$comment&&xT(t),WU(t),ZU(t);let i=n.const("_errs",be.default.errors);bT(t,i),n.var(e,(0,ae._)`${i} === ${be.default.errors}`)}function yT(t){(0,os.checkUnknownRules)(t),HU(t)}function bT(t,e){if(t.opts.jtd)return dT(t,[],!1,e);let r=(0,uT.getSchemaTypes)(t.schema),n=(0,uT.coerceAndCheckDataType)(t,r);dT(t,r,!n,e)}function HU(t){let{schema:e,errSchemaPath:r,opts:n,self:s}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,os.schemaHasRulesButRef)(e,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function BU(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,os.checkStrictMode)(t,"default is ignored in the schema root")}function WU(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,jU.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function ZU(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function xT({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)t.code((0,ae._)`${be.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let a=(0,ae.str)`${n}/$comment`,o=t.scopeValue("root",{ref:e.root});t.code((0,ae._)`${be.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function VU(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=t;r.$async?e.if((0,ae._)`${be.default.errors} === 0`,()=>e.return(be.default.data),()=>e.throw((0,ae._)`new ${s}(${be.default.vErrors})`)):(e.assign((0,ae._)`${n}.errors`,be.default.vErrors),i.unevaluated&&GU(t),e.return((0,ae._)`${be.default.errors} === 0`))}function GU({gen:t,evaluated:e,props:r,items:n}){r instanceof ae.Name&&t.assign((0,ae._)`${e}.props`,r),n instanceof ae.Name&&t.assign((0,ae._)`${e}.items`,n)}function dT(t,e,r,n){let{gen:s,schema:i,data:a,allErrors:o,opts:c,self:l}=t,{RULES:u}=l;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,os.schemaHasRulesButRef)(i,u))){s.block(()=>wT(t,"$ref",u.all.$ref.definition));return}c.jtd||YU(t,e),s.block(()=>{for(let d of u.rules)p(d);p(u.post)});function p(d){(0,dv.shouldUseGroup)(i,d)&&(d.type?(s.if((0,kp.checkDataType)(d.type,a,c.strictNumbers)),mT(t,d),e.length===1&&e[0]===d.type&&r&&(s.else(),(0,kp.reportTypeError)(t)),s.endIf()):mT(t,d),o||s.if((0,ae._)`${be.default.errors} === ${n||0}`))}}function mT(t,e){let{gen:r,schema:n,opts:{useDefaults:s}}=t;s&&(0,NU.assignDefaults)(t,e.type),r.block(()=>{for(let i of e.rules)(0,dv.shouldUseRule)(n,i)&&wT(t,i.keyword,i.definition,e.type)})}function YU(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(KU(t,e),t.opts.allowUnionTypes||JU(t,e),QU(t,t.dataTypes))}function KU(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{_T(t.dataTypes,r)||mv(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),e6(t,e)}}function JU(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&mv(t,"use allowUnionTypes to allow union type keyword")}function QU(t,e){let r=t.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,dv.shouldUseRule)(t.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>XU(e,a))&&mv(t,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function XU(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function _T(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function e6(t,e){let r=[];for(let n of t.dataTypes)_T(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function mv(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,os.checkStrictMode)(t,e,t.opts.strictTypes)}var Tp=class{constructor(e,r,n){if((0,kc.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,os.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",ST(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,kc.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",be.default.errors))}result(e,r,n){this.failResult((0,ae.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,ae.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,ae._)`${r} !== undefined && (${(0,ae.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?Ec.reportExtraError:Ec.reportError)(this,this.def.error,r)}$dataError(){(0,Ec.reportError)(this,this.def.$dataError||Ec.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Ec.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=ae.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=ae.nil,r=ae.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:i,def:a}=this;n.if((0,ae.or)((0,ae._)`${s} === undefined`,r)),e!==ae.nil&&n.assign(e,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==ae.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:s,it:i}=this;return(0,ae.or)(a(),o());function a(){if(n.length){if(!(r instanceof ae.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,ae._)`${(0,kp.checkDataTypes)(c,r,i.opts.strictNumbers,kp.DataType.Wrong)}`}return ae.nil}function o(){if(s.validateSchema){let c=e.scopeValue("validate$data",{ref:s.validateSchema});return(0,ae._)`!${c}(${r})`}return ae.nil}}subschema(e,r){let n=(0,pv.getSubschema)(this.it,e);(0,pv.extendSubschemaData)(n,this.it,e),(0,pv.extendSubschemaMode)(n,e);let s={...this.it,...n,items:void 0,props:void 0};return FU(s,r),s}mergeEvaluated(e,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=os.mergeEvaluated.props(s,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=os.mergeEvaluated.items(s,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return s.if(r,()=>this.mergeEvaluated(e,ae.Name)),!0}};As.KeywordCxt=Tp;function wT(t,e,r,n){let s=new Tp(t,r,e);"code"in r?r.code(s,n):s.$data&&r.validate?(0,kc.funcKeywordCode)(s,r):"macro"in r?(0,kc.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,kc.funcKeywordCode)(s,r)}var t6=/^\/(?:[^~]|~0|~1)*$/,r6=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function ST(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let s,i;if(t==="")return be.default.rootData;if(t[0]==="/"){if(!t6.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);s=t,i=be.default.rootData}else{let l=r6.exec(t);if(!l)throw new Error(`Invalid JSON-pointer: ${t}`);let u=+l[1];if(s=l[2],s==="#"){if(u>=e)throw new Error(c("property/index",u));return n[e-u]}if(u>e)throw new Error(c("data",u));if(i=r[e-u],!s)return i}let a=i,o=s.split("/");for(let l of o)l&&(i=(0,ae._)`${i}${(0,ae.getProperty)((0,os.unescapeJsonPointer)(l))}`,a=(0,ae._)`${a} && ${i}`);return a;function c(l,u){return`Cannot access ${l} ${u} levels up, current level is ${e}`}}As.getData=ST});var Rp=R(hv=>{"use strict";Object.defineProperty(hv,"__esModule",{value:!0});var fv=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};hv.default=fv});var Rc=R(yv=>{"use strict";Object.defineProperty(yv,"__esModule",{value:!0});var gv=Sc(),vv=class extends Error{constructor(e,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,gv.resolveUrl)(e,r,n),this.missingSchema=(0,gv.normalizeId)((0,gv.getFullPath)(e,this.missingRef))}};yv.default=vv});var Op=R(Xr=>{"use strict";Object.defineProperty(Xr,"__esModule",{value:!0});Xr.resolveSchema=Xr.getCompilingSchema=Xr.resolveRef=Xr.compileSchema=Xr.SchemaEnv=void 0;var hn=Ee(),n6=Rp(),di=as(),gn=Sc(),ET=Fe(),s6=Tc(),ca=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,gn.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};Xr.SchemaEnv=ca;function xv(t){let e=kT.call(this,t);if(e)return e;let r=(0,gn.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new hn.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;t.$async&&(o=a.scopeValue("Error",{ref:n6.default,code:(0,hn._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");t.validateName=c;let l={gen:a,allErrors:this.opts.allErrors,data:di.default.data,parentData:di.default.parentData,parentDataProperty:di.default.parentDataProperty,dataNames:[di.default.data],dataPathArr:[hn.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,hn.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:o,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:hn.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,hn._)`""`,opts:this.opts,self:this},u;try{this._compilations.add(t),(0,s6.validateFunctionCode)(l),a.optimize(this.opts.code.optimize);let p=a.toString();u=`${a.scopeRefs(di.default.scope)}return ${p}`,this.opts.code.process&&(u=this.opts.code.process(u,t));let m=new Function(`${di.default.self}`,`${di.default.scope}`,u)(this,this.scope.get());if(this.scope.value(c,{ref:m}),m.errors=null,m.schema=t.schema,m.schemaEnv=t,t.$async&&(m.$async=!0),this.opts.code.source===!0&&(m.source={validateName:c,validateCode:p,scopeValues:a._values}),this.opts.unevaluated){let{props:f,items:v}=l;m.evaluated={props:f instanceof hn.Name?void 0:f,items:v instanceof hn.Name?void 0:v,dynamicProps:f instanceof hn.Name,dynamicItems:v instanceof hn.Name},m.source&&(m.source.evaluated=(0,hn.stringify)(m.evaluated))}return t.validate=m,t}catch(p){throw delete t.validate,delete t.validateName,u&&this.logger.error("Error compiling schema, function code:",u),p}finally{this._compilations.delete(t)}}Xr.compileSchema=xv;function i6(t,e,r){var n;r=(0,gn.resolveUrl)(this.opts.uriResolver,e,r);let s=t.refs[r];if(s)return s;let i=c6.call(this,t,r);if(i===void 0){let a=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(i=new ca({schema:a,schemaId:o,root:t,baseId:e}))}if(i!==void 0)return t.refs[r]=a6.call(this,i)}Xr.resolveRef=i6;function a6(t){return(0,gn.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:xv.call(this,t)}function kT(t){for(let e of this._compilations)if(o6(e,t))return e}Xr.getCompilingSchema=kT;function o6(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function c6(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||$p.call(this,t,e)}function $p(t,e){let r=this.opts.uriResolver.parse(e),n=(0,gn._getFullPath)(this.opts.uriResolver,r),s=(0,gn.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===s)return bv.call(this,r,t);let i=(0,gn.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=$p.call(this,t,a);return typeof o?.schema!="object"?void 0:bv.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||xv.call(this,a),i===(0,gn.normalizeId)(e)){let{schema:o}=a,{schemaId:c}=this.opts,l=o[c];return l&&(s=(0,gn.resolveUrl)(this.opts.uriResolver,s,l)),new ca({schema:o,schemaId:c,root:t,baseId:s})}return bv.call(this,r,a)}}Xr.resolveSchema=$p;var l6=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function bv(t,{baseId:e,schema:r,root:n}){var s;if(((s=t.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let o of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,ET.unescapeFragment)(o)];if(c===void 0)return;r=c;let l=typeof r=="object"&&r[this.opts.schemaId];!l6.has(o)&&l&&(e=(0,gn.resolveUrl)(this.opts.uriResolver,e,l))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,ET.schemaHasRulesButRef)(r,this.RULES)){let o=(0,gn.resolveUrl)(this.opts.uriResolver,e,r.$ref);i=$p.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new ca({schema:r,schemaId:a,root:n,baseId:e}),i.schema!==i.root.schema)return i}});var TT=R((Bve,u6)=>{u6.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 wv=R((Wve,PT)=>{"use strict";var p6=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),$T=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 _v(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 d6=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function RT(t){return t.length=0,!0}function m6(t,e,r){if(t.length){let n=_v(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function f6(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=m6;for(let c=0;c7){r.error=!0;break}c>0&&t[c-1]===":"&&(i=!0),n.push(":");continue}else if(l==="%"){if(!o(s,n,r))break;o=RT}else{s.push(l);continue}}return s.length&&(o===RT?r.zone=s.join(""):a?n.push(s.join("")):n.push(_v(s))),r.address=n.join(""),r}function OT(t){if(h6(t,":")<2)return{host:t,isIPV6:!1};let e=f6(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 h6(t,e){let r=0;for(let n=0;n{"use strict";var{isUUID:b6}=wv(),x6=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,_6=["http","https","ws","wss","urn","urn:uuid"];function w6(t){return _6.indexOf(t)!==-1}function Sv(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 CT(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function IT(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 S6(t){return t.secure=Sv(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function E6(t){if((t.port===(Sv(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 k6(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(x6);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,i=Ev(s);t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function T6(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(),s=`${r}:${e.nid||n}`,i=Ev(s);i&&(t=i.serialize(t,e));let a=t,o=t.nss;return a.path=`${n||e.nid}:${o}`,e.skipEscape=!0,a}function R6(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!b6(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function $6(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var AT={scheme:"http",domainHost:!0,parse:CT,serialize:IT},O6={scheme:"https",domainHost:AT.domainHost,parse:CT,serialize:IT},Pp={scheme:"ws",domainHost:!0,parse:S6,serialize:E6},P6={scheme:"wss",domainHost:Pp.domainHost,parse:Pp.parse,serialize:Pp.serialize},C6={scheme:"urn",parse:k6,serialize:T6,skipNormalize:!0},I6={scheme:"urn:uuid",parse:R6,serialize:$6,skipNormalize:!0},Cp={http:AT,https:O6,ws:Pp,wss:P6,urn:C6,"urn:uuid":I6};Object.setPrototypeOf(Cp,null);function Ev(t){return t&&(Cp[t]||Cp[t.toLowerCase()])||void 0}NT.exports={wsIsSecure:Sv,SCHEMES:Cp,isValidSchemeName:w6,getSchemeHandler:Ev}});var zT=R((Vve,Ap)=>{"use strict";var{normalizeIPv6:A6,removeDotSegments:$c,recomposeAuthority:N6,normalizeComponentEncoding:Ip,isIPv4:j6,nonSimpleDomain:D6}=wv(),{SCHEMES:M6,getSchemeHandler:DT}=jT();function z6(t,e){return typeof t=="string"?t=Ln(cs(t,e),e):typeof t=="object"&&(t=cs(Ln(t,e),e)),t}function L6(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=MT(cs(t,n),cs(e,n),n,!0);return n.skipEscape=!0,Ln(s,n)}function MT(t,e,r,n){let s={};return n||(t=cs(Ln(t,r),r),e=cs(Ln(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=$c(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=$c(e.path||""),s.query=e.query):(e.path?(e.path[0]==="/"?s.path=$c(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=$c(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function q6(t,e,r){return typeof t=="string"?(t=unescape(t),t=Ln(Ip(cs(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Ln(Ip(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Ln(Ip(cs(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Ln(Ip(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function Ln(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),s=[],i=DT(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&&s.push(r.scheme,":");let a=N6(r);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path[0]!=="/"&&s.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(o=$c(o)),a===void 0&&o[0]==="/"&&o[1]==="/"&&(o="/%2F"+o.slice(2)),s.push(o)}return r.query!==void 0&&s.push("?",r.query),r.fragment!==void 0&&s.push("#",r.fragment),s.join("")}var F6=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function cs(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},s=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let i=t.match(F6);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(j6(n.host)===!1){let c=A6(n.host);n.host=c.host.toLowerCase(),s=c.isIPV6}else s=!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=DT(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&D6(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.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)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var kv={SCHEMES:M6,normalize:z6,resolve:L6,resolveComponent:MT,equal:q6,serialize:Ln,parse:cs};Ap.exports=kv;Ap.exports.default=kv;Ap.exports.fastUri=kv});var qT=R(Tv=>{"use strict";Object.defineProperty(Tv,"__esModule",{value:!0});var LT=zT();LT.code='require("ajv/dist/runtime/uri").default';Tv.default=LT});var GT=R(Qt=>{"use strict";Object.defineProperty(Qt,"__esModule",{value:!0});Qt.CodeGen=Qt.Name=Qt.nil=Qt.stringify=Qt.str=Qt._=Qt.KeywordCxt=void 0;var U6=Tc();Object.defineProperty(Qt,"KeywordCxt",{enumerable:!0,get:function(){return U6.KeywordCxt}});var la=Ee();Object.defineProperty(Qt,"_",{enumerable:!0,get:function(){return la._}});Object.defineProperty(Qt,"str",{enumerable:!0,get:function(){return la.str}});Object.defineProperty(Qt,"stringify",{enumerable:!0,get:function(){return la.stringify}});Object.defineProperty(Qt,"nil",{enumerable:!0,get:function(){return la.nil}});Object.defineProperty(Qt,"Name",{enumerable:!0,get:function(){return la.Name}});Object.defineProperty(Qt,"CodeGen",{enumerable:!0,get:function(){return la.CodeGen}});var H6=Rp(),WT=Rc(),B6=tv(),Oc=Op(),W6=Ee(),Pc=Sc(),Np=wc(),$v=Fe(),FT=TT(),Z6=qT(),ZT=(t,e)=>new RegExp(t,e);ZT.code="new RegExp";var V6=["removeAdditional","useDefaults","coerceTypes"],G6=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),Y6={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."},K6={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},UT=200;function J6(t){var e,r,n,s,i,a,o,c,l,u,p,d,m,f,v,g,h,y,b,x,w,S,E,k,$;let j=t.strict,I=(e=t.code)===null||e===void 0?void 0:e.optimize,q=I===!0||I===void 0?1:I||0,H=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:ZT,Z=(s=t.uriResolver)!==null&&s!==void 0?s:Z6.default;return{strictSchema:(a=(i=t.strictSchema)!==null&&i!==void 0?i:j)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=t.strictNumbers)!==null&&o!==void 0?o:j)!==null&&c!==void 0?c:!0,strictTypes:(u=(l=t.strictTypes)!==null&&l!==void 0?l:j)!==null&&u!==void 0?u:"log",strictTuples:(d=(p=t.strictTuples)!==null&&p!==void 0?p:j)!==null&&d!==void 0?d:"log",strictRequired:(f=(m=t.strictRequired)!==null&&m!==void 0?m:j)!==null&&f!==void 0?f:!1,code:t.code?{...t.code,optimize:q,regExp:H}:{optimize:q,regExp:H},loopRequired:(v=t.loopRequired)!==null&&v!==void 0?v:UT,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:UT,meta:(h=t.meta)!==null&&h!==void 0?h:!0,messages:(y=t.messages)!==null&&y!==void 0?y:!0,inlineRefs:(b=t.inlineRefs)!==null&&b!==void 0?b:!0,schemaId:(x=t.schemaId)!==null&&x!==void 0?x:"$id",addUsedSchema:(w=t.addUsedSchema)!==null&&w!==void 0?w:!0,validateSchema:(S=t.validateSchema)!==null&&S!==void 0?S:!0,validateFormats:(E=t.validateFormats)!==null&&E!==void 0?E:!0,unicodeRegExp:(k=t.unicodeRegExp)!==null&&k!==void 0?k:!0,int32range:($=t.int32range)!==null&&$!==void 0?$:!0,uriResolver:Z}}var Cc=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...J6(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new W6.ValueScope({scope:{},prefixes:G6,es5:r,lines:n}),this.logger=n5(e.logger);let s=e.validateFormats;e.validateFormats=!1,this.RULES=(0,B6.getRules)(),HT.call(this,Y6,e,"NOT SUPPORTED"),HT.call(this,K6,e,"DEPRECATED","warn"),this._metaOpts=t5.call(this),e.formats&&X6.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&e5.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),Q6.call(this),e.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,s=FT;n==="id"&&(s={...FT},s.id=s.$id,delete s.$id),r&&e&&this.addMetaSchema(s,s[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 s=n(r);return"$async"in n||(this.errors=n.errors),s}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 s.call(this,e,r);async function s(u,p){await i.call(this,u.$schema);let d=this._addSchema(u,p);return d.validate||a.call(this,d)}async function i(u){u&&!this.getSchema(u)&&await s.call(this,{$ref:u},!0)}async function a(u){try{return this._compileSchemaEnv(u)}catch(p){if(!(p instanceof WT.default))throw p;return o.call(this,p),await c.call(this,p.missingSchema),a.call(this,u)}}function o({missingSchema:u,missingRef:p}){if(this.refs[u])throw new Error(`AnySchema ${u} is loaded but ${p} cannot be resolved`)}async function c(u){let p=await l.call(this,u);this.refs[u]||await i.call(this,p.$schema),this.refs[u]||this.addSchema(p,u,r)}async function l(u){let p=this._loading[u];if(p)return p;try{return await(this._loading[u]=n(u))}finally{delete this._loading[u]}}}addSchema(e,r,n,s=this.opts.validateSchema){if(Array.isArray(e)){for(let a of e)this.addSchema(a,void 0,n,s);return this}let i;if(typeof e=="object"){let{schemaId:a}=this.opts;if(i=e[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,Pc.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,s,!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 s=this.validate(n,e);if(!s&&r){let i="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(i);else throw new Error(i)}return s}getSchema(e){let r;for(;typeof(r=BT.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,s=new Oc.SchemaEnv({schema:{},schemaId:n});if(r=Oc.resolveSchema.call(this,s,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=BT.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,Pc.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(i5.call(this,n,r),!r)return(0,$v.eachItem)(n,i=>Rv.call(this,i)),this;o5.call(this,r);let s={...r,type:(0,Np.getJSONTypes)(r.type),schemaType:(0,Np.getJSONTypes)(r.schemaType)};return(0,$v.eachItem)(n,s.type.length===0?i=>Rv.call(this,i,s):i=>s.type.forEach(a=>Rv.call(this,i,s,a))),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 s=n.rules.findIndex(i=>i.keyword===e);s>=0&&n.rules.splice(s,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(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,i)=>s+r+i)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let s of r){let i=s.split("/").slice(1),a=e;for(let o of i)a=a[o];for(let o in n){let c=n[o];if(typeof c!="object")continue;let{$data:l}=c.definition,u=a[o];l&&u&&(a[o]=VT(u))}}return e}_removeAllSchemas(e,r){for(let n in e){let s=e[n];(!r||r.test(n))&&(typeof s=="string"?delete e[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete e[n]))}}_addSchema(e,r,n,s=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof e=="object")a=e[o];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,Pc.normalizeId)(a||n);let l=Pc.getSchemaRefs.call(this,e,n);return c=new Oc.SchemaEnv({schema:e,schemaId:o,meta:r,baseId:n,localRefs:l}),this._cache.set(c.schema,c),i&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),s&&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):Oc.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{Oc.compileSchema.call(this,e)}finally{this.opts=r}}};Cc.ValidationError=H6.default;Cc.MissingRefError=WT.default;Qt.default=Cc;function HT(t,e,r,n="error"){for(let s in t){let i=s;i in e&&this.logger[n](`${r}: option ${s}. ${t[i]}`)}}function BT(t){return t=(0,Pc.normalizeId)(t),this.schemas[t]||this.refs[t]}function Q6(){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 X6(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function e5(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 t5(){let t={...this.opts};for(let e of V6)delete t[e];return t}var r5={log(){},warn(){},error(){}};function n5(t){if(t===!1)return r5;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 s5=/^[a-z_$][a-z0-9_$:-]*$/i;function i5(t,e){let{RULES:r}=this;if((0,$v.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!s5.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 Rv(t,e,r){var n;let s=e?.post;if(r&&s)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,a=s?i.post:i.rules.find(({type:c})=>c===r);if(a||(a={type:r,rules:[]},i.rules.push(a)),i.keywords[t]=!0,!e)return;let o={keyword:t,definition:{...e,type:(0,Np.getJSONTypes)(e.type),schemaType:(0,Np.getJSONTypes)(e.schemaType)}};e.before?a5.call(this,a,o,e.before):a.rules.push(o),i.all[t]=o,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function a5(t,e,r){let n=t.rules.findIndex(s=>s.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function o5(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=VT(e)),t.validateSchema=this.compile(e,!0))}var c5={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function VT(t){return{anyOf:[t,c5]}}});var YT=R(Ov=>{"use strict";Object.defineProperty(Ov,"__esModule",{value:!0});var l5={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Ov.default=l5});var XT=R(mi=>{"use strict";Object.defineProperty(mi,"__esModule",{value:!0});mi.callRef=mi.getValidate=void 0;var u5=Rc(),KT=Qr(),Pr=Ee(),ua=as(),JT=Op(),jp=Fe(),p5={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:s,schemaEnv:i,validateName:a,opts:o,self:c}=n,{root:l}=i;if((r==="#"||r==="#/")&&s===l.baseId)return p();let u=JT.resolveRef.call(c,l,s,r);if(u===void 0)throw new u5.default(n.opts.uriResolver,s,r);if(u instanceof JT.SchemaEnv)return d(u);return m(u);function p(){if(i===l)return Dp(t,a,i,i.$async);let f=e.scopeValue("root",{ref:l});return Dp(t,(0,Pr._)`${f}.validate`,l,l.$async)}function d(f){let v=QT(t,f);Dp(t,v,f,f.$async)}function m(f){let v=e.scopeValue("schema",o.code.source===!0?{ref:f,code:(0,Pr.stringify)(f)}:{ref:f}),g=e.name("valid"),h=t.subschema({schema:f,dataTypes:[],schemaPath:Pr.nil,topSchemaRef:v,errSchemaPath:r},g);t.mergeEvaluated(h),t.ok(g)}}};function QT(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Pr._)`${r.scopeValue("wrapper",{ref:e})}.validate`}mi.getValidate=QT;function Dp(t,e,r,n){let{gen:s,it:i}=t,{allErrors:a,schemaEnv:o,opts:c}=i,l=c.passContext?ua.default.this:Pr.nil;n?u():p();function u(){if(!o.$async)throw new Error("async schema referenced by sync schema");let f=s.let("valid");s.try(()=>{s.code((0,Pr._)`await ${(0,KT.callValidateCode)(t,e,l)}`),m(e),a||s.assign(f,!0)},v=>{s.if((0,Pr._)`!(${v} instanceof ${i.ValidationError})`,()=>s.throw(v)),d(v),a||s.assign(f,!1)}),t.ok(f)}function p(){t.result((0,KT.callValidateCode)(t,e,l),()=>m(e),()=>d(e))}function d(f){let v=(0,Pr._)`${f}.errors`;s.assign(ua.default.vErrors,(0,Pr._)`${ua.default.vErrors} === null ? ${v} : ${ua.default.vErrors}.concat(${v})`),s.assign(ua.default.errors,(0,Pr._)`${ua.default.vErrors}.length`)}function m(f){var v;if(!i.opts.unevaluated)return;let g=(v=r?.validate)===null||v===void 0?void 0:v.evaluated;if(i.props!==!0)if(g&&!g.dynamicProps)g.props!==void 0&&(i.props=jp.mergeEvaluated.props(s,g.props,i.props));else{let h=s.var("props",(0,Pr._)`${f}.evaluated.props`);i.props=jp.mergeEvaluated.props(s,h,i.props,Pr.Name)}if(i.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(i.items=jp.mergeEvaluated.items(s,g.items,i.items));else{let h=s.var("items",(0,Pr._)`${f}.evaluated.items`);i.items=jp.mergeEvaluated.items(s,h,i.items,Pr.Name)}}}mi.callRef=Dp;mi.default=p5});var e1=R(Pv=>{"use strict";Object.defineProperty(Pv,"__esModule",{value:!0});var d5=YT(),m5=XT(),f5=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",d5.default,m5.default];Pv.default=f5});var t1=R(Cv=>{"use strict";Object.defineProperty(Cv,"__esModule",{value:!0});var Mp=Ee(),Ns=Mp.operators,zp={maximum:{okStr:"<=",ok:Ns.LTE,fail:Ns.GT},minimum:{okStr:">=",ok:Ns.GTE,fail:Ns.LT},exclusiveMaximum:{okStr:"<",ok:Ns.LT,fail:Ns.GTE},exclusiveMinimum:{okStr:">",ok:Ns.GT,fail:Ns.LTE}},h5={message:({keyword:t,schemaCode:e})=>(0,Mp.str)`must be ${zp[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Mp._)`{comparison: ${zp[t].okStr}, limit: ${e}}`},g5={keyword:Object.keys(zp),type:"number",schemaType:"number",$data:!0,error:h5,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Mp._)`${r} ${zp[e].fail} ${n} || isNaN(${r})`)}};Cv.default=g5});var r1=R(Iv=>{"use strict";Object.defineProperty(Iv,"__esModule",{value:!0});var Ic=Ee(),v5={message:({schemaCode:t})=>(0,Ic.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,Ic._)`{multipleOf: ${t}}`},y5={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:v5,code(t){let{gen:e,data:r,schemaCode:n,it:s}=t,i=s.opts.multipleOfPrecision,a=e.let("res"),o=i?(0,Ic._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,Ic._)`${a} !== parseInt(${a})`;t.fail$data((0,Ic._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};Iv.default=y5});var s1=R(Av=>{"use strict";Object.defineProperty(Av,"__esModule",{value:!0});function n1(t){let e=t.length,r=0,n=0,s;for(;n=55296&&s<=56319&&n{"use strict";Object.defineProperty(Nv,"__esModule",{value:!0});var fi=Ee(),b5=Fe(),x5=s1(),_5={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,fi.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,fi._)`{limit: ${t}}`},w5={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:_5,code(t){let{keyword:e,data:r,schemaCode:n,it:s}=t,i=e==="maxLength"?fi.operators.GT:fi.operators.LT,a=s.opts.unicode===!1?(0,fi._)`${r}.length`:(0,fi._)`${(0,b5.useFunc)(t.gen,x5.default)}(${r})`;t.fail$data((0,fi._)`${a} ${i} ${n}`)}};Nv.default=w5});var a1=R(jv=>{"use strict";Object.defineProperty(jv,"__esModule",{value:!0});var S5=Qr(),Lp=Ee(),E5={message:({schemaCode:t})=>(0,Lp.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Lp._)`{pattern: ${t}}`},k5={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:E5,code(t){let{data:e,$data:r,schema:n,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"",o=r?(0,Lp._)`(new RegExp(${s}, ${a}))`:(0,S5.usePattern)(t,n);t.fail$data((0,Lp._)`!${o}.test(${e})`)}};jv.default=k5});var o1=R(Dv=>{"use strict";Object.defineProperty(Dv,"__esModule",{value:!0});var Ac=Ee(),T5={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,Ac.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,Ac._)`{limit: ${t}}`},R5={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:T5,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxProperties"?Ac.operators.GT:Ac.operators.LT;t.fail$data((0,Ac._)`Object.keys(${r}).length ${s} ${n}`)}};Dv.default=R5});var c1=R(Mv=>{"use strict";Object.defineProperty(Mv,"__esModule",{value:!0});var Nc=Qr(),jc=Ee(),$5=Fe(),O5={message:({params:{missingProperty:t}})=>(0,jc.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,jc._)`{missingProperty: ${t}}`},P5={keyword:"required",type:"object",schemaType:"array",$data:!0,error:O5,code(t){let{gen:e,schema:r,schemaCode:n,data:s,$data:i,it:a}=t,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?l():u(),o.strictRequired){let m=t.parentSchema.properties,{definedProperties:f}=t.it;for(let v of r)if(m?.[v]===void 0&&!f.has(v)){let g=a.schemaEnv.baseId+a.errSchemaPath,h=`required property "${v}" is not defined at "${g}" (strictRequired)`;(0,$5.checkStrictMode)(a,h,a.opts.strictRequired)}}function l(){if(c||i)t.block$data(jc.nil,p);else for(let m of r)(0,Nc.checkReportMissingProp)(t,m)}function u(){let m=e.let("missing");if(c||i){let f=e.let("valid",!0);t.block$data(f,()=>d(m,f)),t.ok(f)}else e.if((0,Nc.checkMissingProp)(t,r,m)),(0,Nc.reportMissingProp)(t,m),e.else()}function p(){e.forOf("prop",n,m=>{t.setParams({missingProperty:m}),e.if((0,Nc.noPropertyInData)(e,s,m,o.ownProperties),()=>t.error())})}function d(m,f){t.setParams({missingProperty:m}),e.forOf(m,n,()=>{e.assign(f,(0,Nc.propertyInData)(e,s,m,o.ownProperties)),e.if((0,jc.not)(f),()=>{t.error(),e.break()})},jc.nil)}}};Mv.default=P5});var l1=R(zv=>{"use strict";Object.defineProperty(zv,"__esModule",{value:!0});var Dc=Ee(),C5={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,Dc.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,Dc._)`{limit: ${t}}`},I5={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:C5,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxItems"?Dc.operators.GT:Dc.operators.LT;t.fail$data((0,Dc._)`${r}.length ${s} ${n}`)}};zv.default=I5});var qp=R(Lv=>{"use strict";Object.defineProperty(Lv,"__esModule",{value:!0});var u1=lv();u1.code='require("ajv/dist/runtime/equal").default';Lv.default=u1});var p1=R(Fv=>{"use strict";Object.defineProperty(Fv,"__esModule",{value:!0});var qv=wc(),Xt=Ee(),A5=Fe(),N5=qp(),j5={message:({params:{i:t,j:e}})=>(0,Xt.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Xt._)`{i: ${t}, j: ${e}}`},D5={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:j5,code(t){let{gen:e,data:r,$data:n,schema:s,parentSchema:i,schemaCode:a,it:o}=t;if(!n&&!s)return;let c=e.let("valid"),l=i.items?(0,qv.getSchemaTypes)(i.items):[];t.block$data(c,u,(0,Xt._)`${a} === false`),t.ok(c);function u(){let f=e.let("i",(0,Xt._)`${r}.length`),v=e.let("j");t.setParams({i:f,j:v}),e.assign(c,!0),e.if((0,Xt._)`${f} > 1`,()=>(p()?d:m)(f,v))}function p(){return l.length>0&&!l.some(f=>f==="object"||f==="array")}function d(f,v){let g=e.name("item"),h=(0,qv.checkDataTypes)(l,g,o.opts.strictNumbers,qv.DataType.Wrong),y=e.const("indices",(0,Xt._)`{}`);e.for((0,Xt._)`;${f}--;`,()=>{e.let(g,(0,Xt._)`${r}[${f}]`),e.if(h,(0,Xt._)`continue`),l.length>1&&e.if((0,Xt._)`typeof ${g} == "string"`,(0,Xt._)`${g} += "_"`),e.if((0,Xt._)`typeof ${y}[${g}] == "number"`,()=>{e.assign(v,(0,Xt._)`${y}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,Xt._)`${y}[${g}] = ${f}`)})}function m(f,v){let g=(0,A5.useFunc)(e,N5.default),h=e.name("outer");e.label(h).for((0,Xt._)`;${f}--;`,()=>e.for((0,Xt._)`${v} = ${f}; ${v}--;`,()=>e.if((0,Xt._)`${g}(${r}[${f}], ${r}[${v}])`,()=>{t.error(),e.assign(c,!1).break(h)})))}}};Fv.default=D5});var d1=R(Hv=>{"use strict";Object.defineProperty(Hv,"__esModule",{value:!0});var Uv=Ee(),M5=Fe(),z5=qp(),L5={message:"must be equal to constant",params:({schemaCode:t})=>(0,Uv._)`{allowedValue: ${t}}`},q5={keyword:"const",$data:!0,error:L5,code(t){let{gen:e,data:r,$data:n,schemaCode:s,schema:i}=t;n||i&&typeof i=="object"?t.fail$data((0,Uv._)`!${(0,M5.useFunc)(e,z5.default)}(${r}, ${s})`):t.fail((0,Uv._)`${i} !== ${r}`)}};Hv.default=q5});var m1=R(Bv=>{"use strict";Object.defineProperty(Bv,"__esModule",{value:!0});var Mc=Ee(),F5=Fe(),U5=qp(),H5={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,Mc._)`{allowedValues: ${t}}`},B5={keyword:"enum",schemaType:"array",$data:!0,error:H5,code(t){let{gen:e,data:r,$data:n,schema:s,schemaCode:i,it:a}=t;if(!n&&s.length===0)throw new Error("enum must have non-empty array");let o=s.length>=a.opts.loopEnum,c,l=()=>c??(c=(0,F5.useFunc)(e,U5.default)),u;if(o||n)u=e.let("valid"),t.block$data(u,p);else{if(!Array.isArray(s))throw new Error("ajv implementation error");let m=e.const("vSchema",i);u=(0,Mc.or)(...s.map((f,v)=>d(m,v)))}t.pass(u);function p(){e.assign(u,!1),e.forOf("v",i,m=>e.if((0,Mc._)`${l()}(${r}, ${m})`,()=>e.assign(u,!0).break()))}function d(m,f){let v=s[f];return typeof v=="object"&&v!==null?(0,Mc._)`${l()}(${r}, ${m}[${f}])`:(0,Mc._)`${r} === ${v}`}}};Bv.default=B5});var f1=R(Wv=>{"use strict";Object.defineProperty(Wv,"__esModule",{value:!0});var W5=t1(),Z5=r1(),V5=i1(),G5=a1(),Y5=o1(),K5=c1(),J5=l1(),Q5=p1(),X5=d1(),e3=m1(),t3=[W5.default,Z5.default,V5.default,G5.default,Y5.default,K5.default,J5.default,Q5.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},X5.default,e3.default];Wv.default=t3});var Vv=R(zc=>{"use strict";Object.defineProperty(zc,"__esModule",{value:!0});zc.validateAdditionalItems=void 0;var hi=Ee(),Zv=Fe(),r3={message:({params:{len:t}})=>(0,hi.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,hi._)`{limit: ${t}}`},n3={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:r3,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,Zv.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}h1(t,n)}};function h1(t,e){let{gen:r,schema:n,data:s,keyword:i,it:a}=t;a.items=!0;let o=r.const("len",(0,hi._)`${s}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,hi._)`${o} <= ${e.length}`);else if(typeof n=="object"&&!(0,Zv.alwaysValidSchema)(a,n)){let l=r.var("valid",(0,hi._)`${o} <= ${e.length}`);r.if((0,hi.not)(l),()=>c(l)),t.ok(l)}function c(l){r.forRange("i",e.length,o,u=>{t.subschema({keyword:i,dataProp:u,dataPropType:Zv.Type.Num},l),a.allErrors||r.if((0,hi.not)(l),()=>r.break())})}}zc.validateAdditionalItems=h1;zc.default=n3});var Gv=R(Lc=>{"use strict";Object.defineProperty(Lc,"__esModule",{value:!0});Lc.validateTuple=void 0;var g1=Ee(),Fp=Fe(),s3=Qr(),i3={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return v1(t,"additionalItems",e);r.items=!0,!(0,Fp.alwaysValidSchema)(r,e)&&t.ok((0,s3.validateArray)(t))}};function v1(t,e,r=t.schema){let{gen:n,parentSchema:s,data:i,keyword:a,it:o}=t;u(s),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=Fp.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),l=n.const("len",(0,g1._)`${i}.length`);r.forEach((p,d)=>{(0,Fp.alwaysValidSchema)(o,p)||(n.if((0,g1._)`${l} > ${d}`,()=>t.subschema({keyword:a,schemaProp:d,dataProp:d},c)),t.ok(c))});function u(p){let{opts:d,errSchemaPath:m}=o,f=r.length,v=f===p.minItems&&(f===p.maxItems||p[e]===!1);if(d.strictTuples&&!v){let g=`"${a}" is ${f}-tuple, but minItems or maxItems/${e} are not specified or different at path "${m}"`;(0,Fp.checkStrictMode)(o,g,d.strictTuples)}}}Lc.validateTuple=v1;Lc.default=i3});var y1=R(Yv=>{"use strict";Object.defineProperty(Yv,"__esModule",{value:!0});var a3=Gv(),o3={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,a3.validateTuple)(t,"items")};Yv.default=o3});var x1=R(Kv=>{"use strict";Object.defineProperty(Kv,"__esModule",{value:!0});var b1=Ee(),c3=Fe(),l3=Qr(),u3=Vv(),p3={message:({params:{len:t}})=>(0,b1.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,b1._)`{limit: ${t}}`},d3={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:p3,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:s}=r;n.items=!0,!(0,c3.alwaysValidSchema)(n,e)&&(s?(0,u3.validateAdditionalItems)(t,s):t.ok((0,l3.validateArray)(t)))}};Kv.default=d3});var _1=R(Jv=>{"use strict";Object.defineProperty(Jv,"__esModule",{value:!0});var en=Ee(),Up=Fe(),m3={message:({params:{min:t,max:e}})=>e===void 0?(0,en.str)`must contain at least ${t} valid item(s)`:(0,en.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,en._)`{minContains: ${t}}`:(0,en._)`{minContains: ${t}, maxContains: ${e}}`},f3={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:m3,code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t,a,o,{minContains:c,maxContains:l}=n;i.opts.next?(a=c===void 0?1:c,o=l):a=1;let u=e.const("len",(0,en._)`${s}.length`);if(t.setParams({min:a,max:o}),o===void 0&&a===0){(0,Up.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,Up.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Up.alwaysValidSchema)(i,r)){let v=(0,en._)`${u} >= ${a}`;o!==void 0&&(v=(0,en._)`${v} && ${u} <= ${o}`),t.pass(v);return}i.items=!0;let p=e.name("valid");o===void 0&&a===1?m(p,()=>e.if(p,()=>e.break())):a===0?(e.let(p,!0),o!==void 0&&e.if((0,en._)`${s}.length > 0`,d)):(e.let(p,!1),d()),t.result(p,()=>t.reset());function d(){let v=e.name("_valid"),g=e.let("count",0);m(v,()=>e.if(v,()=>f(g)))}function m(v,g){e.forRange("i",0,u,h=>{t.subschema({keyword:"contains",dataProp:h,dataPropType:Up.Type.Num,compositeRule:!0},v),g()})}function f(v){e.code((0,en._)`${v}++`),o===void 0?e.if((0,en._)`${v} >= ${a}`,()=>e.assign(p,!0).break()):(e.if((0,en._)`${v} > ${o}`,()=>e.assign(p,!1).break()),a===1?e.assign(p,!0):e.if((0,en._)`${v} >= ${a}`,()=>e.assign(p,!0)))}}};Jv.default=f3});var E1=R(qn=>{"use strict";Object.defineProperty(qn,"__esModule",{value:!0});qn.validateSchemaDeps=qn.validatePropertyDeps=qn.error=void 0;var Qv=Ee(),h3=Fe(),qc=Qr();qn.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,Qv.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,Qv._)`{property: ${t}, + || ${a} === "boolean" || ${s} === null`).assign(o,(0,Se._)`[${s}]`)}}}function nU({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,Se._)`${e} !== undefined`,()=>t.assign((0,Se._)`${e}[${r}]`,n))}function ov(t,e,r,n=aa.Correct){let s=n===aa.Correct?Se.operators.EQ:Se.operators.NEQ,i;switch(t){case"null":return(0,Se._)`${e} ${s} null`;case"array":i=(0,Se._)`Array.isArray(${e})`;break;case"object":i=(0,Se._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":i=a((0,Se._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":i=a();break;default:return(0,Se._)`typeof ${e} ${s} ${t}`}return n===aa.Correct?i:(0,Se.not)(i);function a(o=Se.nil){return(0,Se.and)((0,Se._)`typeof ${e} == "number"`,o,r?(0,Se._)`isFinite(${e})`:Se.nil)}}ir.checkDataType=ov;function cv(t,e,r,n){if(t.length===1)return ov(t[0],e,r,n);let s,i=(0,Qk.toHash)(t);if(i.array&&i.object){let a=(0,Se._)`typeof ${e} != "object"`;s=i.null?a:(0,Se._)`!${e} || ${a}`,delete i.null,delete i.array,delete i.object}else s=Se.nil;i.number&&delete i.integer;for(let a in i)s=(0,Se.and)(s,ov(a,e,r,n));return s}ir.checkDataTypes=cv;var sU={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,Se._)`{type: ${t}}`:(0,Se._)`{type: ${e}}`};function lv(t){let e=iU(t);(0,Q9.reportError)(e,sU)}ir.reportTypeError=lv;function iU(t){let{gen:e,data:r,schema:n}=t,s=(0,Qk.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:t}}});var rT=R(kp=>{"use strict";Object.defineProperty(kp,"__esModule",{value:!0});kp.assignDefaults=void 0;var oa=Ee(),aU=Fe();function oU(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let s in r)tT(t,s,r[s].default);else e==="array"&&Array.isArray(n)&&n.forEach((s,i)=>tT(t,i,s.default))}kp.assignDefaults=oU;function tT(t,e,r){let{gen:n,compositeRule:s,data:i,opts:a}=t;if(r===void 0)return;let o=(0,oa._)`${i}${(0,oa.getProperty)(e)}`;if(s){(0,aU.checkStrictMode)(t,`default is ignored for: ${o}`);return}let c=(0,oa._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,oa._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,oa._)`${o} = ${(0,oa.stringify)(r)}`)}});var Qr=R(tt=>{"use strict";Object.defineProperty(tt,"__esModule",{value:!0});tt.validateUnion=tt.validateArray=tt.usePattern=tt.callValidateCode=tt.schemaProperties=tt.allSchemaProperties=tt.noPropertyInData=tt.propertyInData=tt.isOwnProperty=tt.hasPropFunc=tt.reportMissingProp=tt.checkMissingProp=tt.checkReportMissingProp=void 0;var ht=Ee(),uv=Fe(),Ps=as(),cU=Fe();function lU(t,e){let{gen:r,data:n,it:s}=t;r.if(dv(r,n,e,s.opts.ownProperties),()=>{t.setParams({missingProperty:(0,ht._)`${e}`},!0),t.error()})}tt.checkReportMissingProp=lU;function uU({gen:t,data:e,it:{opts:r}},n,s){return(0,ht.or)(...n.map(i=>(0,ht.and)(dv(t,e,i,r.ownProperties),(0,ht._)`${s} = ${i}`)))}tt.checkMissingProp=uU;function pU(t,e){t.setParams({missingProperty:e},!0),t.error()}tt.reportMissingProp=pU;function nT(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,ht._)`Object.prototype.hasOwnProperty`})}tt.hasPropFunc=nT;function pv(t,e,r){return(0,ht._)`${nT(t)}.call(${e}, ${r})`}tt.isOwnProperty=pv;function dU(t,e,r,n){let s=(0,ht._)`${e}${(0,ht.getProperty)(r)} !== undefined`;return n?(0,ht._)`${s} && ${pv(t,e,r)}`:s}tt.propertyInData=dU;function dv(t,e,r,n){let s=(0,ht._)`${e}${(0,ht.getProperty)(r)} === undefined`;return n?(0,ht.or)(s,(0,ht.not)(pv(t,e,r))):s}tt.noPropertyInData=dv;function sT(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}tt.allSchemaProperties=sT;function mU(t,e){return sT(e).filter(r=>!(0,uv.alwaysValidSchema)(t,e[r]))}tt.schemaProperties=mU;function fU({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:a},o,c,l){let u=l?(0,ht._)`${t}, ${e}, ${n}${s}`:e,p=[[Ps.default.instancePath,(0,ht.strConcat)(Ps.default.instancePath,i)],[Ps.default.parentData,a.parentData],[Ps.default.parentDataProperty,a.parentDataProperty],[Ps.default.rootData,Ps.default.rootData]];a.opts.dynamicRef&&p.push([Ps.default.dynamicAnchors,Ps.default.dynamicAnchors]);let d=(0,ht._)`${u}, ${r.object(...p)}`;return c!==ht.nil?(0,ht._)`${o}.call(${c}, ${d})`:(0,ht._)`${o}(${d})`}tt.callValidateCode=fU;var hU=(0,ht._)`new RegExp`;function gU({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:s}=e.code,i=s(r,n);return t.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,ht._)`${s.code==="new RegExp"?hU:(0,cU.useFunc)(t,s)}(${r}, ${n})`})}tt.usePattern=gU;function vU(t){let{gen:e,data:r,keyword:n,it:s}=t,i=e.name("valid");if(s.allErrors){let o=e.let("valid",!0);return a(()=>e.assign(o,!1)),o}return e.var(i,!0),a(()=>e.break()),i;function a(o){let c=e.const("len",(0,ht._)`${r}.length`);e.forRange("i",0,c,l=>{t.subschema({keyword:n,dataProp:l,dataPropType:uv.Type.Num},i),e.if((0,ht.not)(i),o)})}}tt.validateArray=vU;function yU(t){let{gen:e,schema:r,keyword:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,uv.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=e.let("valid",!1),o=e.name("_valid");e.block(()=>r.forEach((c,l)=>{let u=t.subschema({keyword:n,schemaProp:l,compositeRule:!0},o);e.assign(a,(0,ht._)`${a} || ${o}`),t.mergeValidEvaluated(u,o)||e.if((0,ht.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}tt.validateUnion=yU});var oT=R(Mn=>{"use strict";Object.defineProperty(Mn,"__esModule",{value:!0});Mn.validateKeywordUsage=Mn.validSchemaType=Mn.funcKeywordCode=Mn.macroKeywordCode=void 0;var dr=Ee(),di=as(),bU=Qr(),xU=Sc();function _U(t,e){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=t,o=e.macro.call(a.self,s,i,a),c=aT(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let l=r.name("valid");t.subschema({schema:o,schemaPath:dr.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},l),t.pass(l,()=>t.error(!0))}Mn.macroKeywordCode=_U;function wU(t,e){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=t;EU(c,e);let l=!o&&e.compile?e.compile.call(c.self,i,a,c):e.validate,u=aT(n,s,l),p=n.let("valid");t.block$data(p,d),t.ok((r=e.valid)!==null&&r!==void 0?r:p);function d(){if(e.errors===!1)v(),e.modifying&&iT(t),g(()=>t.error());else{let h=e.async?m():f();e.modifying&&iT(t),g(()=>SU(t,h))}}function m(){let h=n.let("ruleErrs",null);return n.try(()=>v((0,dr._)`await `),y=>n.assign(p,!1).if((0,dr._)`${y} instanceof ${c.ValidationError}`,()=>n.assign(h,(0,dr._)`${y}.errors`),()=>n.throw(y))),h}function f(){let h=(0,dr._)`${u}.errors`;return n.assign(h,null),v(dr.nil),h}function v(h=e.async?(0,dr._)`await `:dr.nil){let y=c.opts.passContext?di.default.this:di.default.self,b=!("compile"in e&&!o||e.schema===!1);n.assign(p,(0,dr._)`${h}${(0,bU.callValidateCode)(t,u,y,b)}`,e.modifying)}function g(h){var y;n.if((0,dr.not)((y=e.valid)!==null&&y!==void 0?y:p),h)}}Mn.funcKeywordCode=wU;function iT(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,dr._)`${n.parentData}[${n.parentDataProperty}]`))}function SU(t,e){let{gen:r}=t;r.if((0,dr._)`Array.isArray(${e})`,()=>{r.assign(di.default.vErrors,(0,dr._)`${di.default.vErrors} === null ? ${e} : ${di.default.vErrors}.concat(${e})`).assign(di.default.errors,(0,dr._)`${di.default.vErrors}.length`),(0,xU.extendErrors)(t)},()=>t.error())}function EU({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function aT(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,dr.stringify)(r)})}function kU(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")}Mn.validSchemaType=kU;function TU({schema:t,opts:e,self:r,errSchemaPath:n},s,i){if(Array.isArray(s.keyword)?!s.keyword.includes(i):s.keyword!==i)throw new Error("ajv implementation error");let a=s.dependencies;if(a?.some(o=>!Object.prototype.hasOwnProperty.call(t,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(t[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}Mn.validateKeywordUsage=TU});var lT=R(Cs=>{"use strict";Object.defineProperty(Cs,"__esModule",{value:!0});Cs.extendSubschemaMode=Cs.extendSubschemaData=Cs.getSubschema=void 0;var zn=Ee(),cT=Fe();function RU(t,{keyword:e,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:a}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let o=t.schema[e];return r===void 0?{schema:o,schemaPath:(0,zn._)`${t.schemaPath}${(0,zn.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:o[r],schemaPath:(0,zn._)`${t.schemaPath}${(0,zn.getProperty)(e)}${(0,zn.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,cT.escapeFragment)(r)}`}}if(n!==void 0){if(s===void 0||i===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:s,topSchemaRef:a,errSchemaPath:i}}throw new Error('either "keyword" or "schema" must be passed')}Cs.getSubschema=RU;function $U(t,e,{dataProp:r,dataPropType:n,data:s,dataTypes:i,propertyName:a}){if(s!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:o}=e;if(r!==void 0){let{errorPath:l,dataPathArr:u,opts:p}=e,d=o.let("data",(0,zn._)`${e.data}${(0,zn.getProperty)(r)}`,!0);c(d),t.errorPath=(0,zn.str)`${l}${(0,cT.getErrorPath)(r,n,p.jsPropertySyntax)}`,t.parentDataProperty=(0,zn._)`${r}`,t.dataPathArr=[...u,t.parentDataProperty]}if(s!==void 0){let l=s instanceof zn.Name?s:o.let("data",s,!0);c(l),a!==void 0&&(t.propertyName=a)}i&&(t.dataTypes=i);function c(l){t.data=l,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,l]}}Cs.extendSubschemaData=$U;function OU(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){n!==void 0&&(t.compositeRule=n),s!==void 0&&(t.createErrors=s),i!==void 0&&(t.allErrors=i),t.jtdDiscriminator=e,t.jtdMetadata=r}Cs.extendSubschemaMode=OU});var mv=R((Bve,uT)=>{"use strict";uT.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,s,i;if(Array.isArray(e)){if(n=e.length,n!=r.length)return!1;for(s=n;s--!==0;)if(!t(e[s],r[s]))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(i=Object.keys(e),n=i.length,n!==Object.keys(r).length)return!1;for(s=n;s--!==0;)if(!Object.prototype.hasOwnProperty.call(r,i[s]))return!1;for(s=n;s--!==0;){var a=i[s];if(!t(e[a],r[a]))return!1}return!0}return e!==e&&r!==r}});var dT=R((Wve,pT)=>{"use strict";var Is=pT.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};Tp(e,n,s,t,"",t)};Is.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Is.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Is.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Is.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 Tp(t,e,r,n,s,i,a,o,c,l){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,s,i,a,o,c,l);for(var u in n){var p=n[u];if(Array.isArray(p)){if(u in Is.arrayKeywords)for(var d=0;d{"use strict";Object.defineProperty(Or,"__esModule",{value:!0});Or.getSchemaRefs=Or.resolveUrl=Or.normalizeId=Or._getFullPath=Or.getFullPath=Or.inlineRef=void 0;var CU=Fe(),IU=mv(),AU=dT(),NU=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function jU(t,e=!0){return typeof t=="boolean"?!0:e===!0?!fv(t):e?mT(t)<=e:!1}Or.inlineRef=jU;var DU=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function fv(t){for(let e in t){if(DU.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(fv)||typeof r=="object"&&fv(r))return!0}return!1}function mT(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!NU.has(r)&&(typeof t[r]=="object"&&(0,CU.eachItem)(t[r],n=>e+=mT(n)),e===1/0))return 1/0}return e}function fT(t,e="",r){r!==!1&&(e=ca(e));let n=t.parse(e);return hT(t,n)}Or.getFullPath=fT;function hT(t,e){return t.serialize(e).split("#")[0]+"#"}Or._getFullPath=hT;var MU=/#\/?$/;function ca(t){return t?t.replace(MU,""):""}Or.normalizeId=ca;function zU(t,e,r){return r=ca(r),t.resolve(e,r)}Or.resolveUrl=zU;var LU=/^[a-z_][-a-z0-9._]*$/i;function qU(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=ca(t[r]||e),i={"":s},a=fT(n,s,!1),o={},c=new Set;return AU(t,{allKeys:!0},(p,d,m,f)=>{if(f===void 0)return;let v=a+d,g=i[f];typeof p[r]=="string"&&(g=h.call(this,p[r])),y.call(this,p.$anchor),y.call(this,p.$dynamicAnchor),i[d]=g;function h(b){let x=this.opts.uriResolver.resolve;if(b=ca(g?x(g,b):b),c.has(b))throw u(b);c.add(b);let w=this.refs[b];return typeof w=="string"&&(w=this.refs[w]),typeof w=="object"?l(p,w.schema,b):b!==ca(v)&&(b[0]==="#"?(l(p,o[b],b),o[b]=p):this.refs[b]=v),b}function y(b){if(typeof b=="string"){if(!LU.test(b))throw new Error(`invalid anchor "${b}"`);h.call(this,`#${b}`)}}}),o;function l(p,d,m){if(d!==void 0&&!IU(p,d))throw u(m)}function u(p){return new Error(`reference "${p}" resolves to more than one schema`)}}Or.getSchemaRefs=qU});var $c=R(As=>{"use strict";Object.defineProperty(As,"__esModule",{value:!0});As.getData=As.KeywordCxt=As.validateFunctionCode=void 0;var xT=Yk(),gT=Ec(),gv=av(),Rp=Ec(),FU=rT(),Rc=oT(),hv=lT(),oe=Ee(),be=as(),UU=kc(),os=Fe(),Tc=Sc();function HU(t){if(ST(t)&&(ET(t),wT(t))){ZU(t);return}_T(t,()=>(0,xT.topBoolOrEmptySchema)(t))}As.validateFunctionCode=HU;function _T({gen:t,validateName:e,schema:r,schemaEnv:n,opts:s},i){s.code.es5?t.func(e,(0,oe._)`${be.default.data}, ${be.default.valCxt}`,n.$async,()=>{t.code((0,oe._)`"use strict"; ${vT(r,s)}`),WU(t,s),t.code(i)}):t.func(e,(0,oe._)`${be.default.data}, ${BU(s)}`,n.$async,()=>t.code(vT(r,s)).code(i))}function BU(t){return(0,oe._)`{${be.default.instancePath}="", ${be.default.parentData}, ${be.default.parentDataProperty}, ${be.default.rootData}=${be.default.data}${t.dynamicRef?(0,oe._)`, ${be.default.dynamicAnchors}={}`:oe.nil}}={}`}function WU(t,e){t.if(be.default.valCxt,()=>{t.var(be.default.instancePath,(0,oe._)`${be.default.valCxt}.${be.default.instancePath}`),t.var(be.default.parentData,(0,oe._)`${be.default.valCxt}.${be.default.parentData}`),t.var(be.default.parentDataProperty,(0,oe._)`${be.default.valCxt}.${be.default.parentDataProperty}`),t.var(be.default.rootData,(0,oe._)`${be.default.valCxt}.${be.default.rootData}`),e.dynamicRef&&t.var(be.default.dynamicAnchors,(0,oe._)`${be.default.valCxt}.${be.default.dynamicAnchors}`)},()=>{t.var(be.default.instancePath,(0,oe._)`""`),t.var(be.default.parentData,(0,oe._)`undefined`),t.var(be.default.parentDataProperty,(0,oe._)`undefined`),t.var(be.default.rootData,be.default.data),e.dynamicRef&&t.var(be.default.dynamicAnchors,(0,oe._)`{}`)})}function ZU(t){let{schema:e,opts:r,gen:n}=t;_T(t,()=>{r.$comment&&e.$comment&&TT(t),JU(t),n.let(be.default.vErrors,null),n.let(be.default.errors,0),r.unevaluated&&VU(t),kT(t),e6(t)})}function VU(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,oe._)`${r}.evaluated`),e.if((0,oe._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,oe._)`${t.evaluated}.props`,(0,oe._)`undefined`)),e.if((0,oe._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,oe._)`${t.evaluated}.items`,(0,oe._)`undefined`))}function vT(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,oe._)`/*# sourceURL=${r} */`:oe.nil}function GU(t,e){if(ST(t)&&(ET(t),wT(t))){YU(t,e);return}(0,xT.boolOrEmptySchema)(t,e)}function wT({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 ST(t){return typeof t.schema!="boolean"}function YU(t,e){let{schema:r,gen:n,opts:s}=t;s.$comment&&r.$comment&&TT(t),QU(t),XU(t);let i=n.const("_errs",be.default.errors);kT(t,i),n.var(e,(0,oe._)`${i} === ${be.default.errors}`)}function ET(t){(0,os.checkUnknownRules)(t),KU(t)}function kT(t,e){if(t.opts.jtd)return yT(t,[],!1,e);let r=(0,gT.getSchemaTypes)(t.schema),n=(0,gT.coerceAndCheckDataType)(t,r);yT(t,r,!n,e)}function KU(t){let{schema:e,errSchemaPath:r,opts:n,self:s}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,os.schemaHasRulesButRef)(e,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function JU(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,os.checkStrictMode)(t,"default is ignored in the schema root")}function QU(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,UU.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function XU(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function TT({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)t.code((0,oe._)`${be.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let a=(0,oe.str)`${n}/$comment`,o=t.scopeValue("root",{ref:e.root});t.code((0,oe._)`${be.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function e6(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=t;r.$async?e.if((0,oe._)`${be.default.errors} === 0`,()=>e.return(be.default.data),()=>e.throw((0,oe._)`new ${s}(${be.default.vErrors})`)):(e.assign((0,oe._)`${n}.errors`,be.default.vErrors),i.unevaluated&&t6(t),e.return((0,oe._)`${be.default.errors} === 0`))}function t6({gen:t,evaluated:e,props:r,items:n}){r instanceof oe.Name&&t.assign((0,oe._)`${e}.props`,r),n instanceof oe.Name&&t.assign((0,oe._)`${e}.items`,n)}function yT(t,e,r,n){let{gen:s,schema:i,data:a,allErrors:o,opts:c,self:l}=t,{RULES:u}=l;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,os.schemaHasRulesButRef)(i,u))){s.block(()=>$T(t,"$ref",u.all.$ref.definition));return}c.jtd||r6(t,e),s.block(()=>{for(let d of u.rules)p(d);p(u.post)});function p(d){(0,gv.shouldUseGroup)(i,d)&&(d.type?(s.if((0,Rp.checkDataType)(d.type,a,c.strictNumbers)),bT(t,d),e.length===1&&e[0]===d.type&&r&&(s.else(),(0,Rp.reportTypeError)(t)),s.endIf()):bT(t,d),o||s.if((0,oe._)`${be.default.errors} === ${n||0}`))}}function bT(t,e){let{gen:r,schema:n,opts:{useDefaults:s}}=t;s&&(0,FU.assignDefaults)(t,e.type),r.block(()=>{for(let i of e.rules)(0,gv.shouldUseRule)(n,i)&&$T(t,i.keyword,i.definition,e.type)})}function r6(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(n6(t,e),t.opts.allowUnionTypes||s6(t,e),i6(t,t.dataTypes))}function n6(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{RT(t.dataTypes,r)||vv(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),o6(t,e)}}function s6(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&vv(t,"use allowUnionTypes to allow union type keyword")}function i6(t,e){let r=t.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,gv.shouldUseRule)(t.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>a6(e,a))&&vv(t,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function a6(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function RT(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function o6(t,e){let r=[];for(let n of t.dataTypes)RT(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function vv(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,os.checkStrictMode)(t,e,t.opts.strictTypes)}var $p=class{constructor(e,r,n){if((0,Rc.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,os.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",OT(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Rc.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",be.default.errors))}result(e,r,n){this.failResult((0,oe.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,oe.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,oe._)`${r} !== undefined && (${(0,oe.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?Tc.reportExtraError:Tc.reportError)(this,this.def.error,r)}$dataError(){(0,Tc.reportError)(this,this.def.$dataError||Tc.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Tc.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=oe.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=oe.nil,r=oe.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:i,def:a}=this;n.if((0,oe.or)((0,oe._)`${s} === undefined`,r)),e!==oe.nil&&n.assign(e,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==oe.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:s,it:i}=this;return(0,oe.or)(a(),o());function a(){if(n.length){if(!(r instanceof oe.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,oe._)`${(0,Rp.checkDataTypes)(c,r,i.opts.strictNumbers,Rp.DataType.Wrong)}`}return oe.nil}function o(){if(s.validateSchema){let c=e.scopeValue("validate$data",{ref:s.validateSchema});return(0,oe._)`!${c}(${r})`}return oe.nil}}subschema(e,r){let n=(0,hv.getSubschema)(this.it,e);(0,hv.extendSubschemaData)(n,this.it,e),(0,hv.extendSubschemaMode)(n,e);let s={...this.it,...n,items:void 0,props:void 0};return GU(s,r),s}mergeEvaluated(e,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=os.mergeEvaluated.props(s,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=os.mergeEvaluated.items(s,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return s.if(r,()=>this.mergeEvaluated(e,oe.Name)),!0}};As.KeywordCxt=$p;function $T(t,e,r,n){let s=new $p(t,r,e);"code"in r?r.code(s,n):s.$data&&r.validate?(0,Rc.funcKeywordCode)(s,r):"macro"in r?(0,Rc.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,Rc.funcKeywordCode)(s,r)}var c6=/^\/(?:[^~]|~0|~1)*$/,l6=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function OT(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let s,i;if(t==="")return be.default.rootData;if(t[0]==="/"){if(!c6.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);s=t,i=be.default.rootData}else{let l=l6.exec(t);if(!l)throw new Error(`Invalid JSON-pointer: ${t}`);let u=+l[1];if(s=l[2],s==="#"){if(u>=e)throw new Error(c("property/index",u));return n[e-u]}if(u>e)throw new Error(c("data",u));if(i=r[e-u],!s)return i}let a=i,o=s.split("/");for(let l of o)l&&(i=(0,oe._)`${i}${(0,oe.getProperty)((0,os.unescapeJsonPointer)(l))}`,a=(0,oe._)`${a} && ${i}`);return a;function c(l,u){return`Cannot access ${l} ${u} levels up, current level is ${e}`}}As.getData=OT});var Op=R(bv=>{"use strict";Object.defineProperty(bv,"__esModule",{value:!0});var yv=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};bv.default=yv});var Oc=R(wv=>{"use strict";Object.defineProperty(wv,"__esModule",{value:!0});var xv=kc(),_v=class extends Error{constructor(e,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,xv.resolveUrl)(e,r,n),this.missingSchema=(0,xv.normalizeId)((0,xv.getFullPath)(e,this.missingRef))}};wv.default=_v});var Cp=R(Xr=>{"use strict";Object.defineProperty(Xr,"__esModule",{value:!0});Xr.resolveSchema=Xr.getCompilingSchema=Xr.resolveRef=Xr.compileSchema=Xr.SchemaEnv=void 0;var hn=Ee(),u6=Op(),mi=as(),gn=kc(),PT=Fe(),p6=$c(),la=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,gn.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};Xr.SchemaEnv=la;function Ev(t){let e=CT.call(this,t);if(e)return e;let r=(0,gn.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new hn.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;t.$async&&(o=a.scopeValue("Error",{ref:u6.default,code:(0,hn._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");t.validateName=c;let l={gen:a,allErrors:this.opts.allErrors,data:mi.default.data,parentData:mi.default.parentData,parentDataProperty:mi.default.parentDataProperty,dataNames:[mi.default.data],dataPathArr:[hn.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,hn.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:o,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:hn.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,hn._)`""`,opts:this.opts,self:this},u;try{this._compilations.add(t),(0,p6.validateFunctionCode)(l),a.optimize(this.opts.code.optimize);let p=a.toString();u=`${a.scopeRefs(mi.default.scope)}return ${p}`,this.opts.code.process&&(u=this.opts.code.process(u,t));let m=new Function(`${mi.default.self}`,`${mi.default.scope}`,u)(this,this.scope.get());if(this.scope.value(c,{ref:m}),m.errors=null,m.schema=t.schema,m.schemaEnv=t,t.$async&&(m.$async=!0),this.opts.code.source===!0&&(m.source={validateName:c,validateCode:p,scopeValues:a._values}),this.opts.unevaluated){let{props:f,items:v}=l;m.evaluated={props:f instanceof hn.Name?void 0:f,items:v instanceof hn.Name?void 0:v,dynamicProps:f instanceof hn.Name,dynamicItems:v instanceof hn.Name},m.source&&(m.source.evaluated=(0,hn.stringify)(m.evaluated))}return t.validate=m,t}catch(p){throw delete t.validate,delete t.validateName,u&&this.logger.error("Error compiling schema, function code:",u),p}finally{this._compilations.delete(t)}}Xr.compileSchema=Ev;function d6(t,e,r){var n;r=(0,gn.resolveUrl)(this.opts.uriResolver,e,r);let s=t.refs[r];if(s)return s;let i=h6.call(this,t,r);if(i===void 0){let a=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(i=new la({schema:a,schemaId:o,root:t,baseId:e}))}if(i!==void 0)return t.refs[r]=m6.call(this,i)}Xr.resolveRef=d6;function m6(t){return(0,gn.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:Ev.call(this,t)}function CT(t){for(let e of this._compilations)if(f6(e,t))return e}Xr.getCompilingSchema=CT;function f6(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function h6(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Pp.call(this,t,e)}function Pp(t,e){let r=this.opts.uriResolver.parse(e),n=(0,gn._getFullPath)(this.opts.uriResolver,r),s=(0,gn.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===s)return Sv.call(this,r,t);let i=(0,gn.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=Pp.call(this,t,a);return typeof o?.schema!="object"?void 0:Sv.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||Ev.call(this,a),i===(0,gn.normalizeId)(e)){let{schema:o}=a,{schemaId:c}=this.opts,l=o[c];return l&&(s=(0,gn.resolveUrl)(this.opts.uriResolver,s,l)),new la({schema:o,schemaId:c,root:t,baseId:s})}return Sv.call(this,r,a)}}Xr.resolveSchema=Pp;var g6=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Sv(t,{baseId:e,schema:r,root:n}){var s;if(((s=t.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let o of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,PT.unescapeFragment)(o)];if(c===void 0)return;r=c;let l=typeof r=="object"&&r[this.opts.schemaId];!g6.has(o)&&l&&(e=(0,gn.resolveUrl)(this.opts.uriResolver,e,l))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,PT.schemaHasRulesButRef)(r,this.RULES)){let o=(0,gn.resolveUrl)(this.opts.uriResolver,e,r.$ref);i=Pp.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new la({schema:r,schemaId:a,root:n,baseId:e}),i.schema!==i.root.schema)return i}});var IT=R((Jve,v6)=>{v6.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 Tv=R((Qve,DT)=>{"use strict";var y6=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),NT=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 kv(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 b6=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function AT(t){return t.length=0,!0}function x6(t,e,r){if(t.length){let n=kv(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function _6(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=x6;for(let c=0;c7){r.error=!0;break}c>0&&t[c-1]===":"&&(i=!0),n.push(":");continue}else if(l==="%"){if(!o(s,n,r))break;o=AT}else{s.push(l);continue}}return s.length&&(o===AT?r.zone=s.join(""):a?n.push(s.join("")):n.push(kv(s))),r.address=n.join(""),r}function jT(t){if(w6(t,":")<2)return{host:t,isIPV6:!1};let e=_6(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 w6(t,e){let r=0;for(let n=0;n{"use strict";var{isUUID:T6}=Tv(),R6=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,$6=["http","https","ws","wss","urn","urn:uuid"];function O6(t){return $6.indexOf(t)!==-1}function Rv(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 MT(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function zT(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 P6(t){return t.secure=Rv(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function C6(t){if((t.port===(Rv(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 I6(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(R6);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,i=$v(s);t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function A6(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(),s=`${r}:${e.nid||n}`,i=$v(s);i&&(t=i.serialize(t,e));let a=t,o=t.nss;return a.path=`${n||e.nid}:${o}`,e.skipEscape=!0,a}function N6(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!T6(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function j6(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var LT={scheme:"http",domainHost:!0,parse:MT,serialize:zT},D6={scheme:"https",domainHost:LT.domainHost,parse:MT,serialize:zT},Ip={scheme:"ws",domainHost:!0,parse:P6,serialize:C6},M6={scheme:"wss",domainHost:Ip.domainHost,parse:Ip.parse,serialize:Ip.serialize},z6={scheme:"urn",parse:I6,serialize:A6,skipNormalize:!0},L6={scheme:"urn:uuid",parse:N6,serialize:j6,skipNormalize:!0},Ap={http:LT,https:D6,ws:Ip,wss:M6,urn:z6,"urn:uuid":L6};Object.setPrototypeOf(Ap,null);function $v(t){return t&&(Ap[t]||Ap[t.toLowerCase()])||void 0}qT.exports={wsIsSecure:Rv,SCHEMES:Ap,isValidSchemeName:O6,getSchemeHandler:$v}});var BT=R((eye,jp)=>{"use strict";var{normalizeIPv6:q6,removeDotSegments:Pc,recomposeAuthority:F6,normalizeComponentEncoding:Np,isIPv4:U6,nonSimpleDomain:H6}=Tv(),{SCHEMES:B6,getSchemeHandler:UT}=FT();function W6(t,e){return typeof t=="string"?t=Ln(cs(t,e),e):typeof t=="object"&&(t=cs(Ln(t,e),e)),t}function Z6(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=HT(cs(t,n),cs(e,n),n,!0);return n.skipEscape=!0,Ln(s,n)}function HT(t,e,r,n){let s={};return n||(t=cs(Ln(t,r),r),e=cs(Ln(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=Pc(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=Pc(e.path||""),s.query=e.query):(e.path?(e.path[0]==="/"?s.path=Pc(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=Pc(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function V6(t,e,r){return typeof t=="string"?(t=unescape(t),t=Ln(Np(cs(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Ln(Np(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Ln(Np(cs(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Ln(Np(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function Ln(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),s=[],i=UT(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&&s.push(r.scheme,":");let a=F6(r);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path[0]!=="/"&&s.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(o=Pc(o)),a===void 0&&o[0]==="/"&&o[1]==="/"&&(o="/%2F"+o.slice(2)),s.push(o)}return r.query!==void 0&&s.push("?",r.query),r.fragment!==void 0&&s.push("#",r.fragment),s.join("")}var G6=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function cs(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},s=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let i=t.match(G6);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(U6(n.host)===!1){let c=q6(n.host);n.host=c.host.toLowerCase(),s=c.isIPV6}else s=!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=UT(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&H6(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.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)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var Ov={SCHEMES:B6,normalize:W6,resolve:Z6,resolveComponent:HT,equal:V6,serialize:Ln,parse:cs};jp.exports=Ov;jp.exports.default=Ov;jp.exports.fastUri=Ov});var ZT=R(Pv=>{"use strict";Object.defineProperty(Pv,"__esModule",{value:!0});var WT=BT();WT.code='require("ajv/dist/runtime/uri").default';Pv.default=WT});var e1=R(Qt=>{"use strict";Object.defineProperty(Qt,"__esModule",{value:!0});Qt.CodeGen=Qt.Name=Qt.nil=Qt.stringify=Qt.str=Qt._=Qt.KeywordCxt=void 0;var Y6=$c();Object.defineProperty(Qt,"KeywordCxt",{enumerable:!0,get:function(){return Y6.KeywordCxt}});var ua=Ee();Object.defineProperty(Qt,"_",{enumerable:!0,get:function(){return ua._}});Object.defineProperty(Qt,"str",{enumerable:!0,get:function(){return ua.str}});Object.defineProperty(Qt,"stringify",{enumerable:!0,get:function(){return ua.stringify}});Object.defineProperty(Qt,"nil",{enumerable:!0,get:function(){return ua.nil}});Object.defineProperty(Qt,"Name",{enumerable:!0,get:function(){return ua.Name}});Object.defineProperty(Qt,"CodeGen",{enumerable:!0,get:function(){return ua.CodeGen}});var K6=Op(),JT=Oc(),J6=iv(),Cc=Cp(),Q6=Ee(),Ic=kc(),Dp=Ec(),Iv=Fe(),VT=IT(),X6=ZT(),QT=(t,e)=>new RegExp(t,e);QT.code="new RegExp";var e5=["removeAdditional","useDefaults","coerceTypes"],t5=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),r5={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."},n5={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},GT=200;function s5(t){var e,r,n,s,i,a,o,c,l,u,p,d,m,f,v,g,h,y,b,x,w,S,E,k,$;let j=t.strict,I=(e=t.code)===null||e===void 0?void 0:e.optimize,q=I===!0||I===void 0?1:I||0,H=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:QT,Z=(s=t.uriResolver)!==null&&s!==void 0?s:X6.default;return{strictSchema:(a=(i=t.strictSchema)!==null&&i!==void 0?i:j)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=t.strictNumbers)!==null&&o!==void 0?o:j)!==null&&c!==void 0?c:!0,strictTypes:(u=(l=t.strictTypes)!==null&&l!==void 0?l:j)!==null&&u!==void 0?u:"log",strictTuples:(d=(p=t.strictTuples)!==null&&p!==void 0?p:j)!==null&&d!==void 0?d:"log",strictRequired:(f=(m=t.strictRequired)!==null&&m!==void 0?m:j)!==null&&f!==void 0?f:!1,code:t.code?{...t.code,optimize:q,regExp:H}:{optimize:q,regExp:H},loopRequired:(v=t.loopRequired)!==null&&v!==void 0?v:GT,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:GT,meta:(h=t.meta)!==null&&h!==void 0?h:!0,messages:(y=t.messages)!==null&&y!==void 0?y:!0,inlineRefs:(b=t.inlineRefs)!==null&&b!==void 0?b:!0,schemaId:(x=t.schemaId)!==null&&x!==void 0?x:"$id",addUsedSchema:(w=t.addUsedSchema)!==null&&w!==void 0?w:!0,validateSchema:(S=t.validateSchema)!==null&&S!==void 0?S:!0,validateFormats:(E=t.validateFormats)!==null&&E!==void 0?E:!0,unicodeRegExp:(k=t.unicodeRegExp)!==null&&k!==void 0?k:!0,int32range:($=t.int32range)!==null&&$!==void 0?$:!0,uriResolver:Z}}var Ac=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...s5(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new Q6.ValueScope({scope:{},prefixes:t5,es5:r,lines:n}),this.logger=u5(e.logger);let s=e.validateFormats;e.validateFormats=!1,this.RULES=(0,J6.getRules)(),YT.call(this,r5,e,"NOT SUPPORTED"),YT.call(this,n5,e,"DEPRECATED","warn"),this._metaOpts=c5.call(this),e.formats&&a5.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&o5.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),i5.call(this),e.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,s=VT;n==="id"&&(s={...VT},s.id=s.$id,delete s.$id),r&&e&&this.addMetaSchema(s,s[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 s=n(r);return"$async"in n||(this.errors=n.errors),s}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 s.call(this,e,r);async function s(u,p){await i.call(this,u.$schema);let d=this._addSchema(u,p);return d.validate||a.call(this,d)}async function i(u){u&&!this.getSchema(u)&&await s.call(this,{$ref:u},!0)}async function a(u){try{return this._compileSchemaEnv(u)}catch(p){if(!(p instanceof JT.default))throw p;return o.call(this,p),await c.call(this,p.missingSchema),a.call(this,u)}}function o({missingSchema:u,missingRef:p}){if(this.refs[u])throw new Error(`AnySchema ${u} is loaded but ${p} cannot be resolved`)}async function c(u){let p=await l.call(this,u);this.refs[u]||await i.call(this,p.$schema),this.refs[u]||this.addSchema(p,u,r)}async function l(u){let p=this._loading[u];if(p)return p;try{return await(this._loading[u]=n(u))}finally{delete this._loading[u]}}}addSchema(e,r,n,s=this.opts.validateSchema){if(Array.isArray(e)){for(let a of e)this.addSchema(a,void 0,n,s);return this}let i;if(typeof e=="object"){let{schemaId:a}=this.opts;if(i=e[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,Ic.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,s,!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 s=this.validate(n,e);if(!s&&r){let i="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(i);else throw new Error(i)}return s}getSchema(e){let r;for(;typeof(r=KT.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,s=new Cc.SchemaEnv({schema:{},schemaId:n});if(r=Cc.resolveSchema.call(this,s,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=KT.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,Ic.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(d5.call(this,n,r),!r)return(0,Iv.eachItem)(n,i=>Cv.call(this,i)),this;f5.call(this,r);let s={...r,type:(0,Dp.getJSONTypes)(r.type),schemaType:(0,Dp.getJSONTypes)(r.schemaType)};return(0,Iv.eachItem)(n,s.type.length===0?i=>Cv.call(this,i,s):i=>s.type.forEach(a=>Cv.call(this,i,s,a))),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 s=n.rules.findIndex(i=>i.keyword===e);s>=0&&n.rules.splice(s,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(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,i)=>s+r+i)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let s of r){let i=s.split("/").slice(1),a=e;for(let o of i)a=a[o];for(let o in n){let c=n[o];if(typeof c!="object")continue;let{$data:l}=c.definition,u=a[o];l&&u&&(a[o]=XT(u))}}return e}_removeAllSchemas(e,r){for(let n in e){let s=e[n];(!r||r.test(n))&&(typeof s=="string"?delete e[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete e[n]))}}_addSchema(e,r,n,s=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof e=="object")a=e[o];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,Ic.normalizeId)(a||n);let l=Ic.getSchemaRefs.call(this,e,n);return c=new Cc.SchemaEnv({schema:e,schemaId:o,meta:r,baseId:n,localRefs:l}),this._cache.set(c.schema,c),i&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),s&&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):Cc.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{Cc.compileSchema.call(this,e)}finally{this.opts=r}}};Ac.ValidationError=K6.default;Ac.MissingRefError=JT.default;Qt.default=Ac;function YT(t,e,r,n="error"){for(let s in t){let i=s;i in e&&this.logger[n](`${r}: option ${s}. ${t[i]}`)}}function KT(t){return t=(0,Ic.normalizeId)(t),this.schemas[t]||this.refs[t]}function i5(){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 a5(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function o5(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 c5(){let t={...this.opts};for(let e of e5)delete t[e];return t}var l5={log(){},warn(){},error(){}};function u5(t){if(t===!1)return l5;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 p5=/^[a-z_$][a-z0-9_$:-]*$/i;function d5(t,e){let{RULES:r}=this;if((0,Iv.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!p5.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 Cv(t,e,r){var n;let s=e?.post;if(r&&s)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,a=s?i.post:i.rules.find(({type:c})=>c===r);if(a||(a={type:r,rules:[]},i.rules.push(a)),i.keywords[t]=!0,!e)return;let o={keyword:t,definition:{...e,type:(0,Dp.getJSONTypes)(e.type),schemaType:(0,Dp.getJSONTypes)(e.schemaType)}};e.before?m5.call(this,a,o,e.before):a.rules.push(o),i.all[t]=o,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function m5(t,e,r){let n=t.rules.findIndex(s=>s.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function f5(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=XT(e)),t.validateSchema=this.compile(e,!0))}var h5={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function XT(t){return{anyOf:[t,h5]}}});var t1=R(Av=>{"use strict";Object.defineProperty(Av,"__esModule",{value:!0});var g5={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Av.default=g5});var i1=R(fi=>{"use strict";Object.defineProperty(fi,"__esModule",{value:!0});fi.callRef=fi.getValidate=void 0;var v5=Oc(),r1=Qr(),Pr=Ee(),pa=as(),n1=Cp(),Mp=Fe(),y5={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:s,schemaEnv:i,validateName:a,opts:o,self:c}=n,{root:l}=i;if((r==="#"||r==="#/")&&s===l.baseId)return p();let u=n1.resolveRef.call(c,l,s,r);if(u===void 0)throw new v5.default(n.opts.uriResolver,s,r);if(u instanceof n1.SchemaEnv)return d(u);return m(u);function p(){if(i===l)return zp(t,a,i,i.$async);let f=e.scopeValue("root",{ref:l});return zp(t,(0,Pr._)`${f}.validate`,l,l.$async)}function d(f){let v=s1(t,f);zp(t,v,f,f.$async)}function m(f){let v=e.scopeValue("schema",o.code.source===!0?{ref:f,code:(0,Pr.stringify)(f)}:{ref:f}),g=e.name("valid"),h=t.subschema({schema:f,dataTypes:[],schemaPath:Pr.nil,topSchemaRef:v,errSchemaPath:r},g);t.mergeEvaluated(h),t.ok(g)}}};function s1(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Pr._)`${r.scopeValue("wrapper",{ref:e})}.validate`}fi.getValidate=s1;function zp(t,e,r,n){let{gen:s,it:i}=t,{allErrors:a,schemaEnv:o,opts:c}=i,l=c.passContext?pa.default.this:Pr.nil;n?u():p();function u(){if(!o.$async)throw new Error("async schema referenced by sync schema");let f=s.let("valid");s.try(()=>{s.code((0,Pr._)`await ${(0,r1.callValidateCode)(t,e,l)}`),m(e),a||s.assign(f,!0)},v=>{s.if((0,Pr._)`!(${v} instanceof ${i.ValidationError})`,()=>s.throw(v)),d(v),a||s.assign(f,!1)}),t.ok(f)}function p(){t.result((0,r1.callValidateCode)(t,e,l),()=>m(e),()=>d(e))}function d(f){let v=(0,Pr._)`${f}.errors`;s.assign(pa.default.vErrors,(0,Pr._)`${pa.default.vErrors} === null ? ${v} : ${pa.default.vErrors}.concat(${v})`),s.assign(pa.default.errors,(0,Pr._)`${pa.default.vErrors}.length`)}function m(f){var v;if(!i.opts.unevaluated)return;let g=(v=r?.validate)===null||v===void 0?void 0:v.evaluated;if(i.props!==!0)if(g&&!g.dynamicProps)g.props!==void 0&&(i.props=Mp.mergeEvaluated.props(s,g.props,i.props));else{let h=s.var("props",(0,Pr._)`${f}.evaluated.props`);i.props=Mp.mergeEvaluated.props(s,h,i.props,Pr.Name)}if(i.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(i.items=Mp.mergeEvaluated.items(s,g.items,i.items));else{let h=s.var("items",(0,Pr._)`${f}.evaluated.items`);i.items=Mp.mergeEvaluated.items(s,h,i.items,Pr.Name)}}}fi.callRef=zp;fi.default=y5});var a1=R(Nv=>{"use strict";Object.defineProperty(Nv,"__esModule",{value:!0});var b5=t1(),x5=i1(),_5=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",b5.default,x5.default];Nv.default=_5});var o1=R(jv=>{"use strict";Object.defineProperty(jv,"__esModule",{value:!0});var Lp=Ee(),Ns=Lp.operators,qp={maximum:{okStr:"<=",ok:Ns.LTE,fail:Ns.GT},minimum:{okStr:">=",ok:Ns.GTE,fail:Ns.LT},exclusiveMaximum:{okStr:"<",ok:Ns.LT,fail:Ns.GTE},exclusiveMinimum:{okStr:">",ok:Ns.GT,fail:Ns.LTE}},w5={message:({keyword:t,schemaCode:e})=>(0,Lp.str)`must be ${qp[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Lp._)`{comparison: ${qp[t].okStr}, limit: ${e}}`},S5={keyword:Object.keys(qp),type:"number",schemaType:"number",$data:!0,error:w5,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Lp._)`${r} ${qp[e].fail} ${n} || isNaN(${r})`)}};jv.default=S5});var c1=R(Dv=>{"use strict";Object.defineProperty(Dv,"__esModule",{value:!0});var Nc=Ee(),E5={message:({schemaCode:t})=>(0,Nc.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,Nc._)`{multipleOf: ${t}}`},k5={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:E5,code(t){let{gen:e,data:r,schemaCode:n,it:s}=t,i=s.opts.multipleOfPrecision,a=e.let("res"),o=i?(0,Nc._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,Nc._)`${a} !== parseInt(${a})`;t.fail$data((0,Nc._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};Dv.default=k5});var u1=R(Mv=>{"use strict";Object.defineProperty(Mv,"__esModule",{value:!0});function l1(t){let e=t.length,r=0,n=0,s;for(;n=55296&&s<=56319&&n{"use strict";Object.defineProperty(zv,"__esModule",{value:!0});var hi=Ee(),T5=Fe(),R5=u1(),$5={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,hi.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,hi._)`{limit: ${t}}`},O5={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:$5,code(t){let{keyword:e,data:r,schemaCode:n,it:s}=t,i=e==="maxLength"?hi.operators.GT:hi.operators.LT,a=s.opts.unicode===!1?(0,hi._)`${r}.length`:(0,hi._)`${(0,T5.useFunc)(t.gen,R5.default)}(${r})`;t.fail$data((0,hi._)`${a} ${i} ${n}`)}};zv.default=O5});var d1=R(Lv=>{"use strict";Object.defineProperty(Lv,"__esModule",{value:!0});var P5=Qr(),Fp=Ee(),C5={message:({schemaCode:t})=>(0,Fp.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Fp._)`{pattern: ${t}}`},I5={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:C5,code(t){let{data:e,$data:r,schema:n,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"",o=r?(0,Fp._)`(new RegExp(${s}, ${a}))`:(0,P5.usePattern)(t,n);t.fail$data((0,Fp._)`!${o}.test(${e})`)}};Lv.default=I5});var m1=R(qv=>{"use strict";Object.defineProperty(qv,"__esModule",{value:!0});var jc=Ee(),A5={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,jc.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,jc._)`{limit: ${t}}`},N5={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:A5,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxProperties"?jc.operators.GT:jc.operators.LT;t.fail$data((0,jc._)`Object.keys(${r}).length ${s} ${n}`)}};qv.default=N5});var f1=R(Fv=>{"use strict";Object.defineProperty(Fv,"__esModule",{value:!0});var Dc=Qr(),Mc=Ee(),j5=Fe(),D5={message:({params:{missingProperty:t}})=>(0,Mc.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,Mc._)`{missingProperty: ${t}}`},M5={keyword:"required",type:"object",schemaType:"array",$data:!0,error:D5,code(t){let{gen:e,schema:r,schemaCode:n,data:s,$data:i,it:a}=t,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?l():u(),o.strictRequired){let m=t.parentSchema.properties,{definedProperties:f}=t.it;for(let v of r)if(m?.[v]===void 0&&!f.has(v)){let g=a.schemaEnv.baseId+a.errSchemaPath,h=`required property "${v}" is not defined at "${g}" (strictRequired)`;(0,j5.checkStrictMode)(a,h,a.opts.strictRequired)}}function l(){if(c||i)t.block$data(Mc.nil,p);else for(let m of r)(0,Dc.checkReportMissingProp)(t,m)}function u(){let m=e.let("missing");if(c||i){let f=e.let("valid",!0);t.block$data(f,()=>d(m,f)),t.ok(f)}else e.if((0,Dc.checkMissingProp)(t,r,m)),(0,Dc.reportMissingProp)(t,m),e.else()}function p(){e.forOf("prop",n,m=>{t.setParams({missingProperty:m}),e.if((0,Dc.noPropertyInData)(e,s,m,o.ownProperties),()=>t.error())})}function d(m,f){t.setParams({missingProperty:m}),e.forOf(m,n,()=>{e.assign(f,(0,Dc.propertyInData)(e,s,m,o.ownProperties)),e.if((0,Mc.not)(f),()=>{t.error(),e.break()})},Mc.nil)}}};Fv.default=M5});var h1=R(Uv=>{"use strict";Object.defineProperty(Uv,"__esModule",{value:!0});var zc=Ee(),z5={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,zc.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,zc._)`{limit: ${t}}`},L5={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:z5,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxItems"?zc.operators.GT:zc.operators.LT;t.fail$data((0,zc._)`${r}.length ${s} ${n}`)}};Uv.default=L5});var Up=R(Hv=>{"use strict";Object.defineProperty(Hv,"__esModule",{value:!0});var g1=mv();g1.code='require("ajv/dist/runtime/equal").default';Hv.default=g1});var v1=R(Wv=>{"use strict";Object.defineProperty(Wv,"__esModule",{value:!0});var Bv=Ec(),Xt=Ee(),q5=Fe(),F5=Up(),U5={message:({params:{i:t,j:e}})=>(0,Xt.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Xt._)`{i: ${t}, j: ${e}}`},H5={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:U5,code(t){let{gen:e,data:r,$data:n,schema:s,parentSchema:i,schemaCode:a,it:o}=t;if(!n&&!s)return;let c=e.let("valid"),l=i.items?(0,Bv.getSchemaTypes)(i.items):[];t.block$data(c,u,(0,Xt._)`${a} === false`),t.ok(c);function u(){let f=e.let("i",(0,Xt._)`${r}.length`),v=e.let("j");t.setParams({i:f,j:v}),e.assign(c,!0),e.if((0,Xt._)`${f} > 1`,()=>(p()?d:m)(f,v))}function p(){return l.length>0&&!l.some(f=>f==="object"||f==="array")}function d(f,v){let g=e.name("item"),h=(0,Bv.checkDataTypes)(l,g,o.opts.strictNumbers,Bv.DataType.Wrong),y=e.const("indices",(0,Xt._)`{}`);e.for((0,Xt._)`;${f}--;`,()=>{e.let(g,(0,Xt._)`${r}[${f}]`),e.if(h,(0,Xt._)`continue`),l.length>1&&e.if((0,Xt._)`typeof ${g} == "string"`,(0,Xt._)`${g} += "_"`),e.if((0,Xt._)`typeof ${y}[${g}] == "number"`,()=>{e.assign(v,(0,Xt._)`${y}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,Xt._)`${y}[${g}] = ${f}`)})}function m(f,v){let g=(0,q5.useFunc)(e,F5.default),h=e.name("outer");e.label(h).for((0,Xt._)`;${f}--;`,()=>e.for((0,Xt._)`${v} = ${f}; ${v}--;`,()=>e.if((0,Xt._)`${g}(${r}[${f}], ${r}[${v}])`,()=>{t.error(),e.assign(c,!1).break(h)})))}}};Wv.default=H5});var y1=R(Vv=>{"use strict";Object.defineProperty(Vv,"__esModule",{value:!0});var Zv=Ee(),B5=Fe(),W5=Up(),Z5={message:"must be equal to constant",params:({schemaCode:t})=>(0,Zv._)`{allowedValue: ${t}}`},V5={keyword:"const",$data:!0,error:Z5,code(t){let{gen:e,data:r,$data:n,schemaCode:s,schema:i}=t;n||i&&typeof i=="object"?t.fail$data((0,Zv._)`!${(0,B5.useFunc)(e,W5.default)}(${r}, ${s})`):t.fail((0,Zv._)`${i} !== ${r}`)}};Vv.default=V5});var b1=R(Gv=>{"use strict";Object.defineProperty(Gv,"__esModule",{value:!0});var Lc=Ee(),G5=Fe(),Y5=Up(),K5={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,Lc._)`{allowedValues: ${t}}`},J5={keyword:"enum",schemaType:"array",$data:!0,error:K5,code(t){let{gen:e,data:r,$data:n,schema:s,schemaCode:i,it:a}=t;if(!n&&s.length===0)throw new Error("enum must have non-empty array");let o=s.length>=a.opts.loopEnum,c,l=()=>c??(c=(0,G5.useFunc)(e,Y5.default)),u;if(o||n)u=e.let("valid"),t.block$data(u,p);else{if(!Array.isArray(s))throw new Error("ajv implementation error");let m=e.const("vSchema",i);u=(0,Lc.or)(...s.map((f,v)=>d(m,v)))}t.pass(u);function p(){e.assign(u,!1),e.forOf("v",i,m=>e.if((0,Lc._)`${l()}(${r}, ${m})`,()=>e.assign(u,!0).break()))}function d(m,f){let v=s[f];return typeof v=="object"&&v!==null?(0,Lc._)`${l()}(${r}, ${m}[${f}])`:(0,Lc._)`${r} === ${v}`}}};Gv.default=J5});var x1=R(Yv=>{"use strict";Object.defineProperty(Yv,"__esModule",{value:!0});var Q5=o1(),X5=c1(),e3=p1(),t3=d1(),r3=m1(),n3=f1(),s3=h1(),i3=v1(),a3=y1(),o3=b1(),c3=[Q5.default,X5.default,e3.default,t3.default,r3.default,n3.default,s3.default,i3.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},a3.default,o3.default];Yv.default=c3});var Jv=R(qc=>{"use strict";Object.defineProperty(qc,"__esModule",{value:!0});qc.validateAdditionalItems=void 0;var gi=Ee(),Kv=Fe(),l3={message:({params:{len:t}})=>(0,gi.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,gi._)`{limit: ${t}}`},u3={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:l3,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,Kv.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}_1(t,n)}};function _1(t,e){let{gen:r,schema:n,data:s,keyword:i,it:a}=t;a.items=!0;let o=r.const("len",(0,gi._)`${s}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,gi._)`${o} <= ${e.length}`);else if(typeof n=="object"&&!(0,Kv.alwaysValidSchema)(a,n)){let l=r.var("valid",(0,gi._)`${o} <= ${e.length}`);r.if((0,gi.not)(l),()=>c(l)),t.ok(l)}function c(l){r.forRange("i",e.length,o,u=>{t.subschema({keyword:i,dataProp:u,dataPropType:Kv.Type.Num},l),a.allErrors||r.if((0,gi.not)(l),()=>r.break())})}}qc.validateAdditionalItems=_1;qc.default=u3});var Qv=R(Fc=>{"use strict";Object.defineProperty(Fc,"__esModule",{value:!0});Fc.validateTuple=void 0;var w1=Ee(),Hp=Fe(),p3=Qr(),d3={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return S1(t,"additionalItems",e);r.items=!0,!(0,Hp.alwaysValidSchema)(r,e)&&t.ok((0,p3.validateArray)(t))}};function S1(t,e,r=t.schema){let{gen:n,parentSchema:s,data:i,keyword:a,it:o}=t;u(s),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=Hp.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),l=n.const("len",(0,w1._)`${i}.length`);r.forEach((p,d)=>{(0,Hp.alwaysValidSchema)(o,p)||(n.if((0,w1._)`${l} > ${d}`,()=>t.subschema({keyword:a,schemaProp:d,dataProp:d},c)),t.ok(c))});function u(p){let{opts:d,errSchemaPath:m}=o,f=r.length,v=f===p.minItems&&(f===p.maxItems||p[e]===!1);if(d.strictTuples&&!v){let g=`"${a}" is ${f}-tuple, but minItems or maxItems/${e} are not specified or different at path "${m}"`;(0,Hp.checkStrictMode)(o,g,d.strictTuples)}}}Fc.validateTuple=S1;Fc.default=d3});var E1=R(Xv=>{"use strict";Object.defineProperty(Xv,"__esModule",{value:!0});var m3=Qv(),f3={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,m3.validateTuple)(t,"items")};Xv.default=f3});var T1=R(ey=>{"use strict";Object.defineProperty(ey,"__esModule",{value:!0});var k1=Ee(),h3=Fe(),g3=Qr(),v3=Jv(),y3={message:({params:{len:t}})=>(0,k1.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,k1._)`{limit: ${t}}`},b3={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:y3,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:s}=r;n.items=!0,!(0,h3.alwaysValidSchema)(n,e)&&(s?(0,v3.validateAdditionalItems)(t,s):t.ok((0,g3.validateArray)(t)))}};ey.default=b3});var R1=R(ty=>{"use strict";Object.defineProperty(ty,"__esModule",{value:!0});var en=Ee(),Bp=Fe(),x3={message:({params:{min:t,max:e}})=>e===void 0?(0,en.str)`must contain at least ${t} valid item(s)`:(0,en.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,en._)`{minContains: ${t}}`:(0,en._)`{minContains: ${t}, maxContains: ${e}}`},_3={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:x3,code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t,a,o,{minContains:c,maxContains:l}=n;i.opts.next?(a=c===void 0?1:c,o=l):a=1;let u=e.const("len",(0,en._)`${s}.length`);if(t.setParams({min:a,max:o}),o===void 0&&a===0){(0,Bp.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,Bp.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Bp.alwaysValidSchema)(i,r)){let v=(0,en._)`${u} >= ${a}`;o!==void 0&&(v=(0,en._)`${v} && ${u} <= ${o}`),t.pass(v);return}i.items=!0;let p=e.name("valid");o===void 0&&a===1?m(p,()=>e.if(p,()=>e.break())):a===0?(e.let(p,!0),o!==void 0&&e.if((0,en._)`${s}.length > 0`,d)):(e.let(p,!1),d()),t.result(p,()=>t.reset());function d(){let v=e.name("_valid"),g=e.let("count",0);m(v,()=>e.if(v,()=>f(g)))}function m(v,g){e.forRange("i",0,u,h=>{t.subschema({keyword:"contains",dataProp:h,dataPropType:Bp.Type.Num,compositeRule:!0},v),g()})}function f(v){e.code((0,en._)`${v}++`),o===void 0?e.if((0,en._)`${v} >= ${a}`,()=>e.assign(p,!0).break()):(e.if((0,en._)`${v} > ${o}`,()=>e.assign(p,!1).break()),a===1?e.assign(p,!0):e.if((0,en._)`${v} >= ${a}`,()=>e.assign(p,!0)))}}};ty.default=_3});var P1=R(qn=>{"use strict";Object.defineProperty(qn,"__esModule",{value:!0});qn.validateSchemaDeps=qn.validatePropertyDeps=qn.error=void 0;var ry=Ee(),w3=Fe(),Uc=Qr();qn.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,ry.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,ry._)`{property: ${t}, missingProperty: ${n}, depsCount: ${e}, - deps: ${r}}`};var g3={keyword:"dependencies",type:"object",schemaType:"object",error:qn.error,code(t){let[e,r]=v3(t);w1(t,e),S1(t,r)}};function v3({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let s=Array.isArray(t[n])?e:r;s[n]=t[n]}return[e,r]}function w1(t,e=t.schema){let{gen:r,data:n,it:s}=t;if(Object.keys(e).length===0)return;let i=r.let("missing");for(let a in e){let o=e[a];if(o.length===0)continue;let c=(0,qc.propertyInData)(r,n,a,s.opts.ownProperties);t.setParams({property:a,depsCount:o.length,deps:o.join(", ")}),s.allErrors?r.if(c,()=>{for(let l of o)(0,qc.checkReportMissingProp)(t,l)}):(r.if((0,Qv._)`${c} && (${(0,qc.checkMissingProp)(t,o,i)})`),(0,qc.reportMissingProp)(t,i),r.else())}}qn.validatePropertyDeps=w1;function S1(t,e=t.schema){let{gen:r,data:n,keyword:s,it:i}=t,a=r.name("valid");for(let o in e)(0,h3.alwaysValidSchema)(i,e[o])||(r.if((0,qc.propertyInData)(r,n,o,i.opts.ownProperties),()=>{let c=t.subschema({keyword:s,schemaProp:o},a);t.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),t.ok(a))}qn.validateSchemaDeps=S1;qn.default=g3});var T1=R(Xv=>{"use strict";Object.defineProperty(Xv,"__esModule",{value:!0});var k1=Ee(),y3=Fe(),b3={message:"property name must be valid",params:({params:t})=>(0,k1._)`{propertyName: ${t.propertyName}}`},x3={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:b3,code(t){let{gen:e,schema:r,data:n,it:s}=t;if((0,y3.alwaysValidSchema)(s,r))return;let i=e.name("valid");e.forIn("key",n,a=>{t.setParams({propertyName:a}),t.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),e.if((0,k1.not)(i),()=>{t.error(!0),s.allErrors||e.break()})}),t.ok(i)}};Xv.default=x3});var ty=R(ey=>{"use strict";Object.defineProperty(ey,"__esModule",{value:!0});var Hp=Qr(),vn=Ee(),_3=as(),Bp=Fe(),w3={message:"must NOT have additional properties",params:({params:t})=>(0,vn._)`{additionalProperty: ${t.additionalProperty}}`},S3={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:w3,code(t){let{gen:e,schema:r,parentSchema:n,data:s,errsCount:i,it:a}=t;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,Bp.alwaysValidSchema)(a,r))return;let l=(0,Hp.allSchemaProperties)(n.properties),u=(0,Hp.allSchemaProperties)(n.patternProperties);p(),t.ok((0,vn._)`${i} === ${_3.default.errors}`);function p(){e.forIn("key",s,g=>{!l.length&&!u.length?f(g):e.if(d(g),()=>f(g))})}function d(g){let h;if(l.length>8){let y=(0,Bp.schemaRefOrVal)(a,n.properties,"properties");h=(0,Hp.isOwnProperty)(e,y,g)}else l.length?h=(0,vn.or)(...l.map(y=>(0,vn._)`${g} === ${y}`)):h=vn.nil;return u.length&&(h=(0,vn.or)(h,...u.map(y=>(0,vn._)`${(0,Hp.usePattern)(t,y)}.test(${g})`))),(0,vn.not)(h)}function m(g){e.code((0,vn._)`delete ${s}[${g}]`)}function f(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){m(g);return}if(r===!1){t.setParams({additionalProperty:g}),t.error(),o||e.break();return}if(typeof r=="object"&&!(0,Bp.alwaysValidSchema)(a,r)){let h=e.name("valid");c.removeAdditional==="failing"?(v(g,h,!1),e.if((0,vn.not)(h),()=>{t.reset(),m(g)})):(v(g,h),o||e.if((0,vn.not)(h),()=>e.break()))}}function v(g,h,y){let b={keyword:"additionalProperties",dataProp:g,dataPropType:Bp.Type.Str};y===!1&&Object.assign(b,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(b,h)}}};ey.default=S3});var O1=R(ny=>{"use strict";Object.defineProperty(ny,"__esModule",{value:!0});var E3=Tc(),R1=Qr(),ry=Fe(),$1=ty(),k3={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&$1.default.code(new E3.KeywordCxt(i,$1.default,"additionalProperties"));let a=(0,R1.allSchemaProperties)(r);for(let p of a)i.definedProperties.add(p);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=ry.mergeEvaluated.props(e,(0,ry.toHash)(a),i.props));let o=a.filter(p=>!(0,ry.alwaysValidSchema)(i,r[p]));if(o.length===0)return;let c=e.name("valid");for(let p of o)l(p)?u(p):(e.if((0,R1.propertyInData)(e,s,p,i.opts.ownProperties)),u(p),i.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(p),t.ok(c);function l(p){return i.opts.useDefaults&&!i.compositeRule&&r[p].default!==void 0}function u(p){t.subschema({keyword:"properties",schemaProp:p,dataProp:p},c)}}};ny.default=k3});var A1=R(sy=>{"use strict";Object.defineProperty(sy,"__esModule",{value:!0});var P1=Qr(),Wp=Ee(),C1=Fe(),I1=Fe(),T3={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:s,it:i}=t,{opts:a}=i,o=(0,P1.allSchemaProperties)(r),c=o.filter(v=>(0,C1.alwaysValidSchema)(i,r[v]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let l=a.strictSchema&&!a.allowMatchingProperties&&s.properties,u=e.name("valid");i.props!==!0&&!(i.props instanceof Wp.Name)&&(i.props=(0,I1.evaluatedPropsToName)(e,i.props));let{props:p}=i;d();function d(){for(let v of o)l&&m(v),i.allErrors?f(v):(e.var(u,!0),f(v),e.if(u))}function m(v){for(let g in l)new RegExp(v).test(g)&&(0,C1.checkStrictMode)(i,`property ${g} matches pattern ${v} (use allowMatchingProperties)`)}function f(v){e.forIn("key",n,g=>{e.if((0,Wp._)`${(0,P1.usePattern)(t,v)}.test(${g})`,()=>{let h=c.includes(v);h||t.subschema({keyword:"patternProperties",schemaProp:v,dataProp:g,dataPropType:I1.Type.Str},u),i.opts.unevaluated&&p!==!0?e.assign((0,Wp._)`${p}[${g}]`,!0):!h&&!i.allErrors&&e.if((0,Wp.not)(u),()=>e.break())})})}}};sy.default=T3});var N1=R(iy=>{"use strict";Object.defineProperty(iy,"__esModule",{value:!0});var R3=Fe(),$3={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,R3.alwaysValidSchema)(n,r)){t.fail();return}let s=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),t.failResult(s,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};iy.default=$3});var j1=R(ay=>{"use strict";Object.defineProperty(ay,"__esModule",{value:!0});var O3=Qr(),P3={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:O3.validateUnion,error:{message:"must match a schema in anyOf"}};ay.default=P3});var D1=R(oy=>{"use strict";Object.defineProperty(oy,"__esModule",{value:!0});var Zp=Ee(),C3=Fe(),I3={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Zp._)`{passingSchemas: ${t.passing}}`},A3={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:I3,code(t){let{gen:e,schema:r,parentSchema:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,a=e.let("valid",!1),o=e.let("passing",null),c=e.name("_valid");t.setParams({passing:o}),e.block(l),t.result(a,()=>t.reset(),()=>t.error(!0));function l(){i.forEach((u,p)=>{let d;(0,C3.alwaysValidSchema)(s,u)?e.var(c,!0):d=t.subschema({keyword:"oneOf",schemaProp:p,compositeRule:!0},c),p>0&&e.if((0,Zp._)`${c} && ${a}`).assign(a,!1).assign(o,(0,Zp._)`[${o}, ${p}]`).else(),e.if(c,()=>{e.assign(a,!0),e.assign(o,p),d&&t.mergeEvaluated(d,Zp.Name)})})}}};oy.default=A3});var M1=R(cy=>{"use strict";Object.defineProperty(cy,"__esModule",{value:!0});var N3=Fe(),j3={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 s=e.name("valid");r.forEach((i,a)=>{if((0,N3.alwaysValidSchema)(n,i))return;let o=t.subschema({keyword:"allOf",schemaProp:a},s);t.ok(s),t.mergeEvaluated(o)})}};cy.default=j3});var q1=R(ly=>{"use strict";Object.defineProperty(ly,"__esModule",{value:!0});var Vp=Ee(),L1=Fe(),D3={message:({params:t})=>(0,Vp.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,Vp._)`{failingKeyword: ${t.ifClause}}`},M3={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:D3,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,L1.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=z1(n,"then"),i=z1(n,"else");if(!s&&!i)return;let a=e.let("valid",!0),o=e.name("_valid");if(c(),t.reset(),s&&i){let u=e.let("ifClause");t.setParams({ifClause:u}),e.if(o,l("then",u),l("else",u))}else s?e.if(o,l("then")):e.if((0,Vp.not)(o),l("else"));t.pass(a,()=>t.error(!0));function c(){let u=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);t.mergeEvaluated(u)}function l(u,p){return()=>{let d=t.subschema({keyword:u},o);e.assign(a,o),t.mergeValidEvaluated(d,a),p?e.assign(p,(0,Vp._)`${u}`):t.setParams({ifClause:u})}}}};function z1(t,e){let r=t.schema[e];return r!==void 0&&!(0,L1.alwaysValidSchema)(t,r)}ly.default=M3});var F1=R(uy=>{"use strict";Object.defineProperty(uy,"__esModule",{value:!0});var z3=Fe(),L3={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,z3.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};uy.default=L3});var U1=R(py=>{"use strict";Object.defineProperty(py,"__esModule",{value:!0});var q3=Vv(),F3=y1(),U3=Gv(),H3=x1(),B3=_1(),W3=E1(),Z3=T1(),V3=ty(),G3=O1(),Y3=A1(),K3=N1(),J3=j1(),Q3=D1(),X3=M1(),eH=q1(),tH=F1();function rH(t=!1){let e=[K3.default,J3.default,Q3.default,X3.default,eH.default,tH.default,Z3.default,V3.default,W3.default,G3.default,Y3.default];return t?e.push(F3.default,H3.default):e.push(q3.default,U3.default),e.push(B3.default),e}py.default=rH});var H1=R(dy=>{"use strict";Object.defineProperty(dy,"__esModule",{value:!0});var Ct=Ee(),nH={message:({schemaCode:t})=>(0,Ct.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,Ct._)`{format: ${t}}`},sH={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:nH,code(t,e){let{gen:r,data:n,$data:s,schema:i,schemaCode:a,it:o}=t,{opts:c,errSchemaPath:l,schemaEnv:u,self:p}=o;if(!c.validateFormats)return;s?d():m();function d(){let f=r.scopeValue("formats",{ref:p.formats,code:c.code.formats}),v=r.const("fDef",(0,Ct._)`${f}[${a}]`),g=r.let("fType"),h=r.let("format");r.if((0,Ct._)`typeof ${v} == "object" && !(${v} instanceof RegExp)`,()=>r.assign(g,(0,Ct._)`${v}.type || "string"`).assign(h,(0,Ct._)`${v}.validate`),()=>r.assign(g,(0,Ct._)`"string"`).assign(h,v)),t.fail$data((0,Ct.or)(y(),b()));function y(){return c.strictSchema===!1?Ct.nil:(0,Ct._)`${a} && !${h}`}function b(){let x=u.$async?(0,Ct._)`(${v}.async ? await ${h}(${n}) : ${h}(${n}))`:(0,Ct._)`${h}(${n})`,w=(0,Ct._)`(typeof ${h} == "function" ? ${x} : ${h}.test(${n}))`;return(0,Ct._)`${h} && ${h} !== true && ${g} === ${e} && !${w}`}}function m(){let f=p.formats[i];if(!f){y();return}if(f===!0)return;let[v,g,h]=b(f);v===e&&t.pass(x());function y(){if(c.strictSchema===!1){p.logger.warn(w());return}throw new Error(w());function w(){return`unknown format "${i}" ignored in schema at path "${l}"`}}function b(w){let S=w instanceof RegExp?(0,Ct.regexpCode)(w):c.code.formats?(0,Ct._)`${c.code.formats}${(0,Ct.getProperty)(i)}`:void 0,E=r.scopeValue("formats",{key:i,ref:w,code:S});return typeof w=="object"&&!(w instanceof RegExp)?[w.type||"string",w.validate,(0,Ct._)`${E}.validate`]:["string",w,E]}function x(){if(typeof f=="object"&&!(f instanceof RegExp)&&f.async){if(!u.$async)throw new Error("async format in sync schema");return(0,Ct._)`await ${h}(${n})`}return typeof g=="function"?(0,Ct._)`${h}(${n})`:(0,Ct._)`${h}.test(${n})`}}}};dy.default=sH});var B1=R(my=>{"use strict";Object.defineProperty(my,"__esModule",{value:!0});var iH=H1(),aH=[iH.default];my.default=aH});var W1=R(pa=>{"use strict";Object.defineProperty(pa,"__esModule",{value:!0});pa.contentVocabulary=pa.metadataVocabulary=void 0;pa.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];pa.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var V1=R(fy=>{"use strict";Object.defineProperty(fy,"__esModule",{value:!0});var oH=e1(),cH=f1(),lH=U1(),uH=B1(),Z1=W1(),pH=[oH.default,cH.default,(0,lH.default)(),uH.default,Z1.metadataVocabulary,Z1.contentVocabulary];fy.default=pH});var Y1=R(Gp=>{"use strict";Object.defineProperty(Gp,"__esModule",{value:!0});Gp.DiscrError=void 0;var G1;(function(t){t.Tag="tag",t.Mapping="mapping"})(G1||(Gp.DiscrError=G1={}))});var J1=R(gy=>{"use strict";Object.defineProperty(gy,"__esModule",{value:!0});var da=Ee(),hy=Y1(),K1=Op(),dH=Rc(),mH=Fe(),fH={message:({params:{discrError:t,tagName:e}})=>t===hy.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,da._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},hH={keyword:"discriminator",type:"object",schemaType:"object",error:fH,code(t){let{gen:e,data:r,schema:n,parentSchema:s,it:i}=t,{oneOf:a}=s;if(!i.opts.discriminator)throw new Error("discriminator: requires discriminator option");let o=n.propertyName;if(typeof o!="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=e.let("valid",!1),l=e.const("tag",(0,da._)`${r}${(0,da.getProperty)(o)}`);e.if((0,da._)`typeof ${l} == "string"`,()=>u(),()=>t.error(!1,{discrError:hy.DiscrError.Tag,tag:l,tagName:o})),t.ok(c);function u(){let m=d();e.if(!1);for(let f in m)e.elseIf((0,da._)`${l} === ${f}`),e.assign(c,p(m[f]));e.else(),t.error(!1,{discrError:hy.DiscrError.Mapping,tag:l,tagName:o}),e.endIf()}function p(m){let f=e.name("valid"),v=t.subschema({keyword:"oneOf",schemaProp:m},f);return t.mergeEvaluated(v,da.Name),f}function d(){var m;let f={},v=h(s),g=!0;for(let x=0;x{gH.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 yy=R((gt,vy)=>{"use strict";Object.defineProperty(gt,"__esModule",{value:!0});gt.MissingRefError=gt.ValidationError=gt.CodeGen=gt.Name=gt.nil=gt.stringify=gt.str=gt._=gt.KeywordCxt=gt.Ajv=void 0;var vH=GT(),yH=V1(),bH=J1(),X1=Q1(),xH=["/properties"],Yp="http://json-schema.org/draft-07/schema",ma=class extends vH.default{_addVocabularies(){super._addVocabularies(),yH.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(bH.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(X1,xH):X1;this.addMetaSchema(e,Yp,!1),this.refs["http://json-schema.org/schema"]=Yp}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Yp)?Yp:void 0)}};gt.Ajv=ma;vy.exports=gt=ma;vy.exports.Ajv=ma;Object.defineProperty(gt,"__esModule",{value:!0});gt.default=ma;var _H=Tc();Object.defineProperty(gt,"KeywordCxt",{enumerable:!0,get:function(){return _H.KeywordCxt}});var fa=Ee();Object.defineProperty(gt,"_",{enumerable:!0,get:function(){return fa._}});Object.defineProperty(gt,"str",{enumerable:!0,get:function(){return fa.str}});Object.defineProperty(gt,"stringify",{enumerable:!0,get:function(){return fa.stringify}});Object.defineProperty(gt,"nil",{enumerable:!0,get:function(){return fa.nil}});Object.defineProperty(gt,"Name",{enumerable:!0,get:function(){return fa.Name}});Object.defineProperty(gt,"CodeGen",{enumerable:!0,get:function(){return fa.CodeGen}});var wH=Rp();Object.defineProperty(gt,"ValidationError",{enumerable:!0,get:function(){return wH.default}});var SH=Rc();Object.defineProperty(gt,"MissingRefError",{enumerable:!0,get:function(){return SH.default}})});var oR=R(Un=>{"use strict";Object.defineProperty(Un,"__esModule",{value:!0});Un.formatNames=Un.fastFormats=Un.fullFormats=void 0;function Fn(t,e){return{validate:t,compare:e}}Un.fullFormats={date:Fn(nR,wy),time:Fn(xy(!0),Sy),"date-time":Fn(eR(!0),iR),"iso-time":Fn(xy(),sR),"iso-date-time":Fn(eR(),aR),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:OH,"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:DH,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:PH,int32:{type:"number",validate:AH},int64:{type:"number",validate:NH},float:{type:"number",validate:rR},double:{type:"number",validate:rR},password:!0,binary:!0};Un.fastFormats={...Un.fullFormats,date:Fn(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,wy),time:Fn(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Sy),"date-time":Fn(/^\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,iR),"iso-time":Fn(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,sR),"iso-date-time":Fn(/^\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,aR),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};Un.formatNames=Object.keys(Un.fullFormats);function EH(t){return t%4===0&&(t%100!==0||t%400===0)}var kH=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,TH=[0,31,28,31,30,31,30,31,31,30,31,30,31];function nR(t){let e=kH.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3];return n>=1&&n<=12&&s>=1&&s<=(n===2&&EH(r)?29:TH[n])}function wy(t,e){if(t&&e)return t>e?1:t23||u>59||t&&!o)return!1;if(s<=23&&i<=59&&a<60)return!0;let p=i-u*c,d=s-l*c-(p<0?1:0);return(d===23||d===-1)&&(p===59||p===-1)&&a<61}}function Sy(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 sR(t,e){if(!(t&&e))return;let r=by.exec(t),n=by.exec(e);if(r&&n)return t=r[1]+r[2]+r[3],e=n[1]+n[2]+n[3],t>e?1:t=CH}function NH(t){return Number.isInteger(t)}function rR(){return!0}var jH=/[^\\]\\Z/;function DH(t){if(jH.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var cR=R(ha=>{"use strict";Object.defineProperty(ha,"__esModule",{value:!0});ha.formatLimitDefinition=void 0;var MH=yy(),yn=Ee(),js=yn.operators,Kp={formatMaximum:{okStr:"<=",ok:js.LTE,fail:js.GT},formatMinimum:{okStr:">=",ok:js.GTE,fail:js.LT},formatExclusiveMaximum:{okStr:"<",ok:js.LT,fail:js.GTE},formatExclusiveMinimum:{okStr:">",ok:js.GT,fail:js.LTE}},zH={message:({keyword:t,schemaCode:e})=>(0,yn.str)`should be ${Kp[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,yn._)`{comparison: ${Kp[t].okStr}, limit: ${e}}`};ha.formatLimitDefinition={keyword:Object.keys(Kp),type:"string",schemaType:"string",$data:!0,error:zH,code(t){let{gen:e,data:r,schemaCode:n,keyword:s,it:i}=t,{opts:a,self:o}=i;if(!a.validateFormats)return;let c=new MH.KeywordCxt(i,o.RULES.all.format.definition,"format");c.$data?l():u();function l(){let d=e.scopeValue("formats",{ref:o.formats,code:a.code.formats}),m=e.const("fmt",(0,yn._)`${d}[${c.schemaCode}]`);t.fail$data((0,yn.or)((0,yn._)`typeof ${m} != "object"`,(0,yn._)`${m} instanceof RegExp`,(0,yn._)`typeof ${m}.compare != "function"`,p(m)))}function u(){let d=c.schema,m=o.formats[d];if(!m||m===!0)return;if(typeof m!="object"||m instanceof RegExp||typeof m.compare!="function")throw new Error(`"${s}": format "${d}" does not define "compare" function`);let f=e.scopeValue("formats",{key:d,ref:m,code:a.code.formats?(0,yn._)`${a.code.formats}${(0,yn.getProperty)(d)}`:void 0});t.fail$data(p(f))}function p(d){return(0,yn._)`${d}.compare(${r}, ${n}) ${Kp[s].fail} 0`}},dependencies:["format"]};var LH=t=>(t.addKeyword(ha.formatLimitDefinition),t);ha.default=LH});var dR=R((Fc,pR)=>{"use strict";Object.defineProperty(Fc,"__esModule",{value:!0});var ga=oR(),qH=cR(),Ey=Ee(),lR=new Ey.Name("fullFormats"),FH=new Ey.Name("fastFormats"),ky=(t,e={keywords:!0})=>{if(Array.isArray(e))return uR(t,e,ga.fullFormats,lR),t;let[r,n]=e.mode==="fast"?[ga.fastFormats,FH]:[ga.fullFormats,lR],s=e.formats||ga.formatNames;return uR(t,s,r,n),e.keywords&&(0,qH.default)(t),t};ky.get=(t,e="full")=>{let n=(e==="fast"?ga.fastFormats:ga.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function uR(t,e,r,n){var s,i;(s=(i=t.opts.code).formats)!==null&&s!==void 0||(i.formats=(0,Ey._)`require("ajv-formats/dist/formats").${n}`);for(let a of e)t.addFormat(a,r[a])}pR.exports=Fc=ky;Object.defineProperty(Fc,"__esModule",{value:!0});Fc.default=ky});var _R=R((Yye,xR)=>{xR.exports=bR;bR.sync=WH;var vR=require("fs");function BH(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{kR.exports=SR;SR.sync=ZH;var wR=require("fs");function SR(t,e,r){wR.stat(t,function(n,s){r(n,n?!1:ER(s,e))})}function ZH(t,e){return ER(wR.statSync(t),e)}function ER(t,e){return t.isFile()&&VH(t,e)}function VH(t,e){var r=t.mode,n=t.uid,s=t.gid,i=e.uid!==void 0?e.uid:process.getuid&&process.getuid(),a=e.gid!==void 0?e.gid:process.getgid&&process.getgid(),o=parseInt("100",8),c=parseInt("010",8),l=parseInt("001",8),u=o|c,p=r&l||r&c&&s===a||r&o&&n===i||r&u&&i===0;return p}});var $R=R((Qye,RR)=>{var Jye=require("fs"),ed;process.platform==="win32"||global.TESTING_WINDOWS?ed=_R():ed=TR();RR.exports=Ty;Ty.sync=GH;function Ty(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,s){Ty(t,e||{},function(i,a){i?s(i):n(a)})})}ed(t,e||{},function(n,s){n&&(n.code==="EACCES"||e&&e.ignoreErrors)&&(n=null,s=!1),r(n,s)})}function GH(t,e){try{return ed.sync(t,e||{})}catch(r){if(e&&e.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var jR=R((Xye,NR)=>{var ya=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",OR=require("path"),YH=ya?";":":",PR=$R(),CR=t=>Object.assign(new Error(`not found: ${t}`),{code:"ENOENT"}),IR=(t,e)=>{let r=e.colon||YH,n=t.match(/\//)||ya&&t.match(/\\/)?[""]:[...ya?[process.cwd()]:[],...(e.path||process.env.PATH||"").split(r)],s=ya?e.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",i=ya?s.split(r):[""];return ya&&t.indexOf(".")!==-1&&i[0]!==""&&i.unshift(""),{pathEnv:n,pathExt:i,pathExtExe:s}},AR=(t,e,r)=>{typeof e=="function"&&(r=e,e={}),e||(e={});let{pathEnv:n,pathExt:s,pathExtExe:i}=IR(t,e),a=[],o=l=>new Promise((u,p)=>{if(l===n.length)return e.all&&a.length?u(a):p(CR(t));let d=n[l],m=/^".*"$/.test(d)?d.slice(1,-1):d,f=OR.join(m,t),v=!m&&/^\.[\\\/]/.test(t)?t.slice(0,2)+f:f;u(c(v,l,0))}),c=(l,u,p)=>new Promise((d,m)=>{if(p===s.length)return d(o(u+1));let f=s[p];PR(l+f,{pathExt:i},(v,g)=>{if(!v&&g)if(e.all)a.push(l+f);else return d(l+f);return d(c(l,u,p+1))})});return r?o(0).then(l=>r(null,l),r):o(0)},KH=(t,e)=>{e=e||{};let{pathEnv:r,pathExt:n,pathExtExe:s}=IR(t,e),i=[];for(let a=0;a{"use strict";var DR=(t={})=>{let e=t.env||process.env;return(t.platform||process.platform)!=="win32"?"PATH":Object.keys(e).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"};Ry.exports=DR;Ry.exports.default=DR});var FR=R((tbe,qR)=>{"use strict";var zR=require("path"),JH=jR(),QH=MR();function LR(t,e){let r=t.options.env||process.env,n=process.cwd(),s=t.options.cwd!=null,i=s&&process.chdir!==void 0&&!process.chdir.disabled;if(i)try{process.chdir(t.options.cwd)}catch{}let a;try{a=JH.sync(t.command,{path:r[QH({env:r})],pathExt:e?zR.delimiter:void 0})}catch{}finally{i&&process.chdir(n)}return a&&(a=zR.resolve(s?t.options.cwd:"",a)),a}function XH(t){return LR(t)||LR(t,!0)}qR.exports=XH});var UR=R((rbe,Oy)=>{"use strict";var $y=/([()\][%!^"`<>&|;, *?])/g;function eB(t){return t=t.replace($y,"^$1"),t}function tB(t,e){return t=`${t}`,t=t.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),t=t.replace(/(?=(\\+?)?)\1$/,"$1$1"),t=`"${t}"`,t=t.replace($y,"^$1"),e&&(t=t.replace($y,"^$1")),t}Oy.exports.command=eB;Oy.exports.argument=tB});var BR=R((nbe,HR)=>{"use strict";HR.exports=/^#!(.*)/});var ZR=R((sbe,WR)=>{"use strict";var rB=BR();WR.exports=(t="")=>{let e=t.match(rB);if(!e)return null;let[r,n]=e[0].replace(/#! ?/,"").split(" "),s=r.split("/").pop();return s==="env"?n:n?`${s} ${n}`:s}});var GR=R((ibe,VR)=>{"use strict";var Py=require("fs"),nB=ZR();function sB(t){let r=Buffer.alloc(150),n;try{n=Py.openSync(t,"r"),Py.readSync(n,r,0,150,0),Py.closeSync(n)}catch{}return nB(r.toString())}VR.exports=sB});var QR=R((abe,JR)=>{"use strict";var iB=require("path"),YR=FR(),KR=UR(),aB=GR(),oB=process.platform==="win32",cB=/\.(?:com|exe)$/i,lB=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function uB(t){t.file=YR(t);let e=t.file&&aB(t.file);return e?(t.args.unshift(t.file),t.command=e,YR(t)):t.file}function pB(t){if(!oB)return t;let e=uB(t),r=!cB.test(e);if(t.options.forceShell||r){let n=lB.test(e);t.command=iB.normalize(t.command),t.command=KR.command(t.command),t.args=t.args.map(i=>KR.argument(i,n));let s=[t.command].concat(t.args).join(" ");t.args=["/d","/s","/c",`"${s}"`],t.command=process.env.comspec||"cmd.exe",t.options.windowsVerbatimArguments=!0}return t}function dB(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:pB(n)}JR.exports=dB});var t$=R((obe,e$)=>{"use strict";var Cy=process.platform==="win32";function Iy(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 mB(t,e){if(!Cy)return;let r=t.emit;t.emit=function(n,s){if(n==="exit"){let i=XR(s,e);if(i)return r.call(t,"error",i)}return r.apply(t,arguments)}}function XR(t,e){return Cy&&t===1&&!e.file?Iy(e.original,"spawn"):null}function fB(t,e){return Cy&&t===1&&!e.file?Iy(e.original,"spawnSync"):null}e$.exports={hookChildProcess:mB,verifyENOENT:XR,verifyENOENTSync:fB,notFoundError:Iy}});var s$=R((cbe,ba)=>{"use strict";var r$=require("child_process"),Ay=QR(),Ny=t$();function n$(t,e,r){let n=Ay(t,e,r),s=r$.spawn(n.command,n.args,n.options);return Ny.hookChildProcess(s,n),s}function hB(t,e,r){let n=Ay(t,e,r),s=r$.spawnSync(n.command,n.args,n.options);return s.error=s.error||Ny.verifyENOENTSync(s.status,n),s}ba.exports=n$;ba.exports.spawn=n$;ba.exports.sync=hB;ba.exports._parse=Ay;ba.exports._enoent=Ny});var c$,l$,u$=xe(()=>{"use strict";c$="bugfix,feature,refactor,discovery,decision,change",l$="how-it-works,why-it-exists,what-changed,problem-solution,gotcha,pattern,trade-off"});var bn,rd,p$,De,Br=xe(()=>{"use strict";bn=require("fs"),rd=require("path"),p$=require("os");u$();De=class{static DEFAULTS={CLAUDE_PILOT_MODEL:"haiku",CLAUDE_PILOT_CONTEXT_OBSERVATIONS:"50",CLAUDE_PILOT_WORKER_PORT:"41777",CLAUDE_PILOT_WORKER_HOST:"127.0.0.1",CLAUDE_PILOT_WORKER_BIND:"127.0.0.1",CLAUDE_PILOT_SKIP_TOOLS:"ListMcpResourcesTool,SlashCommand,Skill,TodoWrite,AskUserQuestion",CLAUDE_PILOT_DATA_DIR:(0,rd.join)((0,p$.homedir)(),".pilot/memory"),CLAUDE_PILOT_LOG_LEVEL:"INFO",CLAUDE_PILOT_PYTHON_VERSION:"3.12",CLAUDE_CODE_PATH:"",CLAUDE_PILOT_CONTEXT_SHOW_READ_TOKENS:!1,CLAUDE_PILOT_CONTEXT_SHOW_WORK_TOKENS:!1,CLAUDE_PILOT_CONTEXT_SHOW_SAVINGS_AMOUNT:!1,CLAUDE_PILOT_CONTEXT_SHOW_SAVINGS_PERCENT:!1,CLAUDE_PILOT_CONTEXT_OBSERVATION_TYPES:c$,CLAUDE_PILOT_CONTEXT_OBSERVATION_CONCEPTS:l$,CLAUDE_PILOT_CONTEXT_FULL_COUNT:"10",CLAUDE_PILOT_CONTEXT_FULL_FIELD:"facts",CLAUDE_PILOT_CONTEXT_SESSION_COUNT:"10",CLAUDE_PILOT_CONTEXT_SHOW_LAST_SUMMARY:!0,CLAUDE_PILOT_CONTEXT_SHOW_LAST_MESSAGE:!0,CLAUDE_PILOT_FOLDER_CLAUDEMD_ENABLED:!1,CLAUDE_PILOT_FOLDER_MD_EXCLUDE:"[]",CLAUDE_PILOT_CHROMA_ENABLED:!0,CLAUDE_PILOT_VECTOR_DB:"chroma",CLAUDE_PILOT_EMBEDDING_MODEL:"Xenova/all-MiniLM-L6-v2",CLAUDE_PILOT_EXCLUDE_PROJECTS:"[]",CLAUDE_PILOT_REMOTE_TOKEN:"",CLAUDE_PILOT_RETENTION_ENABLED:!0,CLAUDE_PILOT_RETENTION_MAX_AGE_DAYS:"31",CLAUDE_PILOT_RETENTION_MAX_COUNT:"5000",CLAUDE_PILOT_RETENTION_EXCLUDE_TYPES:'["summary"]',CLAUDE_PILOT_RETENTION_SOFT_DELETE:!1,CLAUDE_PILOT_BATCH_SIZE:"5"};static getAllDefaults(){return{...this.DEFAULTS}}static get(e){return this.DEFAULTS[e]}static getInt(e){let r=this.get(e);return parseInt(r,10)}static getBool(e){return this.get(e)==="true"}static loadFromFile(e){try{if(!(0,bn.existsSync)(e)){let c=this.getAllDefaults();try{let l=(0,rd.dirname)(e);(0,bn.existsSync)(l)||(0,bn.mkdirSync)(l,{recursive:!0}),(0,bn.writeFileSync)(e,JSON.stringify(c,null,2),"utf-8"),console.log("[SETTINGS] Created settings file with defaults:",e)}catch(l){console.warn("[SETTINGS] Failed to create settings file, using in-memory defaults:",e,l)}return c}let r=(0,bn.readFileSync)(e,"utf-8"),n=JSON.parse(r),s=n;if(n.env&&typeof n.env=="object"){s=n.env;try{(0,bn.writeFileSync)(e,JSON.stringify(s,null,2),"utf-8"),console.log("[SETTINGS] Migrated settings file from nested to flat schema:",e)}catch(c){console.warn("[SETTINGS] Failed to auto-migrate settings file:",e,c)}}let i=["CLAUDE_PILOT_CONTEXT_SHOW_READ_TOKENS","CLAUDE_PILOT_CONTEXT_SHOW_WORK_TOKENS","CLAUDE_PILOT_CONTEXT_SHOW_SAVINGS_AMOUNT","CLAUDE_PILOT_CONTEXT_SHOW_SAVINGS_PERCENT","CLAUDE_PILOT_CONTEXT_SHOW_LAST_SUMMARY","CLAUDE_PILOT_CONTEXT_SHOW_LAST_MESSAGE","CLAUDE_PILOT_FOLDER_CLAUDEMD_ENABLED","CLAUDE_PILOT_CHROMA_ENABLED","CLAUDE_PILOT_RETENTION_ENABLED","CLAUDE_PILOT_RETENTION_SOFT_DELETE"],a={...this.DEFAULTS},o=!1;for(let c of Object.keys(this.DEFAULTS))if(s[c]!==void 0)if(i.includes(c)){let l=s[c];typeof l=="string"?(a[c]=l==="true",o=!0):a[c]=l}else a[c]=s[c];if(o)try{(0,bn.writeFileSync)(e,JSON.stringify(a,null,2),"utf-8"),console.log("[SETTINGS] Migrated boolean settings from strings to actual booleans:",e)}catch(c){console.warn("[SETTINGS] Failed to auto-migrate boolean settings:",e,c)}return a}catch(r){return console.warn("[SETTINGS] Failed to load settings, using defaults:",e,r),this.getAllDefaults()}}}});function Cr(){if(nd!==null)return nd;let t=ad.default.join(De.get("CLAUDE_PILOT_DATA_DIR"),"settings.json"),e=De.loadFromFile(t);return nd=parseInt(e.CLAUDE_PILOT_WORKER_PORT,10),nd}function xn(){if(sd!==null)return sd;let t=ad.default.join(De.get("CLAUDE_PILOT_DATA_DIR"),"settings.json");return sd=De.loadFromFile(t).CLAUDE_PILOT_WORKER_HOST,sd}function od(){if(id!==null)return id;let t=ad.default.join(De.get("CLAUDE_PILOT_DATA_DIR"),"settings.json");return id=De.loadFromFile(t).CLAUDE_PILOT_WORKER_BIND,id}function xB(t){return t.includes(":")&&!t.startsWith("[")?`[${t}]`:t}function d$(){let t=xn(),e=Cr();return`http://${xB(t)}:${e}`}var ad,nd,sd,id,_n=xe(()=>{"use strict";ad=pe(require("path"),1);Br();nd=null,sd=null,id=null});var ls,Hc,f$,jy,m$,Dy,_,se=xe(()=>{"use strict";ls=require("fs"),Hc=require("path"),f$=require("os"),jy=(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))(jy||{}),m$=(0,Hc.join)((0,f$.homedir)(),".pilot/memory"),Dy=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,Hc.join)(m$,"logs");(0,ls.existsSync)(e)||(0,ls.mkdirSync)(e,{recursive:!0});let r=new Date().toISOString().split("T")[0];this.logFilePath=(0,Hc.join)(e,`pilot-memory-${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,Hc.join)(m$,"settings.json");if((0,ls.existsSync)(e)){let r=(0,ls.readFileSync)(e,"utf-8"),s=(JSON.parse(r).CLAUDE_PILOT_LOG_LEVEL||"INFO").toUpperCase();this.level=jy[s]??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"),s=String(e.getDate()).padStart(2,"0"),i=String(e.getHours()).padStart(2,"0"),a=String(e.getMinutes()).padStart(2,"0"),o=String(e.getSeconds()).padStart(2,"0"),c=String(e.getMilliseconds()).padStart(3,"0");return`${r}-${n}-${s} ${i}:${a}:${o}.${c}`}log(e,r,n,s,i){if(e{for(let l of o)(0,Uc.checkReportMissingProp)(t,l)}):(r.if((0,ry._)`${c} && (${(0,Uc.checkMissingProp)(t,o,i)})`),(0,Uc.reportMissingProp)(t,i),r.else())}}qn.validatePropertyDeps=$1;function O1(t,e=t.schema){let{gen:r,data:n,keyword:s,it:i}=t,a=r.name("valid");for(let o in e)(0,w3.alwaysValidSchema)(i,e[o])||(r.if((0,Uc.propertyInData)(r,n,o,i.opts.ownProperties),()=>{let c=t.subschema({keyword:s,schemaProp:o},a);t.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),t.ok(a))}qn.validateSchemaDeps=O1;qn.default=S3});var I1=R(ny=>{"use strict";Object.defineProperty(ny,"__esModule",{value:!0});var C1=Ee(),k3=Fe(),T3={message:"property name must be valid",params:({params:t})=>(0,C1._)`{propertyName: ${t.propertyName}}`},R3={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:T3,code(t){let{gen:e,schema:r,data:n,it:s}=t;if((0,k3.alwaysValidSchema)(s,r))return;let i=e.name("valid");e.forIn("key",n,a=>{t.setParams({propertyName:a}),t.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),e.if((0,C1.not)(i),()=>{t.error(!0),s.allErrors||e.break()})}),t.ok(i)}};ny.default=R3});var iy=R(sy=>{"use strict";Object.defineProperty(sy,"__esModule",{value:!0});var Wp=Qr(),vn=Ee(),$3=as(),Zp=Fe(),O3={message:"must NOT have additional properties",params:({params:t})=>(0,vn._)`{additionalProperty: ${t.additionalProperty}}`},P3={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:O3,code(t){let{gen:e,schema:r,parentSchema:n,data:s,errsCount:i,it:a}=t;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,Zp.alwaysValidSchema)(a,r))return;let l=(0,Wp.allSchemaProperties)(n.properties),u=(0,Wp.allSchemaProperties)(n.patternProperties);p(),t.ok((0,vn._)`${i} === ${$3.default.errors}`);function p(){e.forIn("key",s,g=>{!l.length&&!u.length?f(g):e.if(d(g),()=>f(g))})}function d(g){let h;if(l.length>8){let y=(0,Zp.schemaRefOrVal)(a,n.properties,"properties");h=(0,Wp.isOwnProperty)(e,y,g)}else l.length?h=(0,vn.or)(...l.map(y=>(0,vn._)`${g} === ${y}`)):h=vn.nil;return u.length&&(h=(0,vn.or)(h,...u.map(y=>(0,vn._)`${(0,Wp.usePattern)(t,y)}.test(${g})`))),(0,vn.not)(h)}function m(g){e.code((0,vn._)`delete ${s}[${g}]`)}function f(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){m(g);return}if(r===!1){t.setParams({additionalProperty:g}),t.error(),o||e.break();return}if(typeof r=="object"&&!(0,Zp.alwaysValidSchema)(a,r)){let h=e.name("valid");c.removeAdditional==="failing"?(v(g,h,!1),e.if((0,vn.not)(h),()=>{t.reset(),m(g)})):(v(g,h),o||e.if((0,vn.not)(h),()=>e.break()))}}function v(g,h,y){let b={keyword:"additionalProperties",dataProp:g,dataPropType:Zp.Type.Str};y===!1&&Object.assign(b,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(b,h)}}};sy.default=P3});var j1=R(oy=>{"use strict";Object.defineProperty(oy,"__esModule",{value:!0});var C3=$c(),A1=Qr(),ay=Fe(),N1=iy(),I3={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&N1.default.code(new C3.KeywordCxt(i,N1.default,"additionalProperties"));let a=(0,A1.allSchemaProperties)(r);for(let p of a)i.definedProperties.add(p);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=ay.mergeEvaluated.props(e,(0,ay.toHash)(a),i.props));let o=a.filter(p=>!(0,ay.alwaysValidSchema)(i,r[p]));if(o.length===0)return;let c=e.name("valid");for(let p of o)l(p)?u(p):(e.if((0,A1.propertyInData)(e,s,p,i.opts.ownProperties)),u(p),i.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(p),t.ok(c);function l(p){return i.opts.useDefaults&&!i.compositeRule&&r[p].default!==void 0}function u(p){t.subschema({keyword:"properties",schemaProp:p,dataProp:p},c)}}};oy.default=I3});var L1=R(cy=>{"use strict";Object.defineProperty(cy,"__esModule",{value:!0});var D1=Qr(),Vp=Ee(),M1=Fe(),z1=Fe(),A3={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:s,it:i}=t,{opts:a}=i,o=(0,D1.allSchemaProperties)(r),c=o.filter(v=>(0,M1.alwaysValidSchema)(i,r[v]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let l=a.strictSchema&&!a.allowMatchingProperties&&s.properties,u=e.name("valid");i.props!==!0&&!(i.props instanceof Vp.Name)&&(i.props=(0,z1.evaluatedPropsToName)(e,i.props));let{props:p}=i;d();function d(){for(let v of o)l&&m(v),i.allErrors?f(v):(e.var(u,!0),f(v),e.if(u))}function m(v){for(let g in l)new RegExp(v).test(g)&&(0,M1.checkStrictMode)(i,`property ${g} matches pattern ${v} (use allowMatchingProperties)`)}function f(v){e.forIn("key",n,g=>{e.if((0,Vp._)`${(0,D1.usePattern)(t,v)}.test(${g})`,()=>{let h=c.includes(v);h||t.subschema({keyword:"patternProperties",schemaProp:v,dataProp:g,dataPropType:z1.Type.Str},u),i.opts.unevaluated&&p!==!0?e.assign((0,Vp._)`${p}[${g}]`,!0):!h&&!i.allErrors&&e.if((0,Vp.not)(u),()=>e.break())})})}}};cy.default=A3});var q1=R(ly=>{"use strict";Object.defineProperty(ly,"__esModule",{value:!0});var N3=Fe(),j3={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,N3.alwaysValidSchema)(n,r)){t.fail();return}let s=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),t.failResult(s,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};ly.default=j3});var F1=R(uy=>{"use strict";Object.defineProperty(uy,"__esModule",{value:!0});var D3=Qr(),M3={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:D3.validateUnion,error:{message:"must match a schema in anyOf"}};uy.default=M3});var U1=R(py=>{"use strict";Object.defineProperty(py,"__esModule",{value:!0});var Gp=Ee(),z3=Fe(),L3={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Gp._)`{passingSchemas: ${t.passing}}`},q3={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:L3,code(t){let{gen:e,schema:r,parentSchema:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,a=e.let("valid",!1),o=e.let("passing",null),c=e.name("_valid");t.setParams({passing:o}),e.block(l),t.result(a,()=>t.reset(),()=>t.error(!0));function l(){i.forEach((u,p)=>{let d;(0,z3.alwaysValidSchema)(s,u)?e.var(c,!0):d=t.subschema({keyword:"oneOf",schemaProp:p,compositeRule:!0},c),p>0&&e.if((0,Gp._)`${c} && ${a}`).assign(a,!1).assign(o,(0,Gp._)`[${o}, ${p}]`).else(),e.if(c,()=>{e.assign(a,!0),e.assign(o,p),d&&t.mergeEvaluated(d,Gp.Name)})})}}};py.default=q3});var H1=R(dy=>{"use strict";Object.defineProperty(dy,"__esModule",{value:!0});var F3=Fe(),U3={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 s=e.name("valid");r.forEach((i,a)=>{if((0,F3.alwaysValidSchema)(n,i))return;let o=t.subschema({keyword:"allOf",schemaProp:a},s);t.ok(s),t.mergeEvaluated(o)})}};dy.default=U3});var Z1=R(my=>{"use strict";Object.defineProperty(my,"__esModule",{value:!0});var Yp=Ee(),W1=Fe(),H3={message:({params:t})=>(0,Yp.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,Yp._)`{failingKeyword: ${t.ifClause}}`},B3={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:H3,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,W1.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=B1(n,"then"),i=B1(n,"else");if(!s&&!i)return;let a=e.let("valid",!0),o=e.name("_valid");if(c(),t.reset(),s&&i){let u=e.let("ifClause");t.setParams({ifClause:u}),e.if(o,l("then",u),l("else",u))}else s?e.if(o,l("then")):e.if((0,Yp.not)(o),l("else"));t.pass(a,()=>t.error(!0));function c(){let u=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);t.mergeEvaluated(u)}function l(u,p){return()=>{let d=t.subschema({keyword:u},o);e.assign(a,o),t.mergeValidEvaluated(d,a),p?e.assign(p,(0,Yp._)`${u}`):t.setParams({ifClause:u})}}}};function B1(t,e){let r=t.schema[e];return r!==void 0&&!(0,W1.alwaysValidSchema)(t,r)}my.default=B3});var V1=R(fy=>{"use strict";Object.defineProperty(fy,"__esModule",{value:!0});var W3=Fe(),Z3={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,W3.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};fy.default=Z3});var G1=R(hy=>{"use strict";Object.defineProperty(hy,"__esModule",{value:!0});var V3=Jv(),G3=E1(),Y3=Qv(),K3=T1(),J3=R1(),Q3=P1(),X3=I1(),eH=iy(),tH=j1(),rH=L1(),nH=q1(),sH=F1(),iH=U1(),aH=H1(),oH=Z1(),cH=V1();function lH(t=!1){let e=[nH.default,sH.default,iH.default,aH.default,oH.default,cH.default,X3.default,eH.default,Q3.default,tH.default,rH.default];return t?e.push(G3.default,K3.default):e.push(V3.default,Y3.default),e.push(J3.default),e}hy.default=lH});var Y1=R(gy=>{"use strict";Object.defineProperty(gy,"__esModule",{value:!0});var Ct=Ee(),uH={message:({schemaCode:t})=>(0,Ct.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,Ct._)`{format: ${t}}`},pH={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:uH,code(t,e){let{gen:r,data:n,$data:s,schema:i,schemaCode:a,it:o}=t,{opts:c,errSchemaPath:l,schemaEnv:u,self:p}=o;if(!c.validateFormats)return;s?d():m();function d(){let f=r.scopeValue("formats",{ref:p.formats,code:c.code.formats}),v=r.const("fDef",(0,Ct._)`${f}[${a}]`),g=r.let("fType"),h=r.let("format");r.if((0,Ct._)`typeof ${v} == "object" && !(${v} instanceof RegExp)`,()=>r.assign(g,(0,Ct._)`${v}.type || "string"`).assign(h,(0,Ct._)`${v}.validate`),()=>r.assign(g,(0,Ct._)`"string"`).assign(h,v)),t.fail$data((0,Ct.or)(y(),b()));function y(){return c.strictSchema===!1?Ct.nil:(0,Ct._)`${a} && !${h}`}function b(){let x=u.$async?(0,Ct._)`(${v}.async ? await ${h}(${n}) : ${h}(${n}))`:(0,Ct._)`${h}(${n})`,w=(0,Ct._)`(typeof ${h} == "function" ? ${x} : ${h}.test(${n}))`;return(0,Ct._)`${h} && ${h} !== true && ${g} === ${e} && !${w}`}}function m(){let f=p.formats[i];if(!f){y();return}if(f===!0)return;let[v,g,h]=b(f);v===e&&t.pass(x());function y(){if(c.strictSchema===!1){p.logger.warn(w());return}throw new Error(w());function w(){return`unknown format "${i}" ignored in schema at path "${l}"`}}function b(w){let S=w instanceof RegExp?(0,Ct.regexpCode)(w):c.code.formats?(0,Ct._)`${c.code.formats}${(0,Ct.getProperty)(i)}`:void 0,E=r.scopeValue("formats",{key:i,ref:w,code:S});return typeof w=="object"&&!(w instanceof RegExp)?[w.type||"string",w.validate,(0,Ct._)`${E}.validate`]:["string",w,E]}function x(){if(typeof f=="object"&&!(f instanceof RegExp)&&f.async){if(!u.$async)throw new Error("async format in sync schema");return(0,Ct._)`await ${h}(${n})`}return typeof g=="function"?(0,Ct._)`${h}(${n})`:(0,Ct._)`${h}.test(${n})`}}}};gy.default=pH});var K1=R(vy=>{"use strict";Object.defineProperty(vy,"__esModule",{value:!0});var dH=Y1(),mH=[dH.default];vy.default=mH});var J1=R(da=>{"use strict";Object.defineProperty(da,"__esModule",{value:!0});da.contentVocabulary=da.metadataVocabulary=void 0;da.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];da.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var X1=R(yy=>{"use strict";Object.defineProperty(yy,"__esModule",{value:!0});var fH=a1(),hH=x1(),gH=G1(),vH=K1(),Q1=J1(),yH=[fH.default,hH.default,(0,gH.default)(),vH.default,Q1.metadataVocabulary,Q1.contentVocabulary];yy.default=yH});var tR=R(Kp=>{"use strict";Object.defineProperty(Kp,"__esModule",{value:!0});Kp.DiscrError=void 0;var eR;(function(t){t.Tag="tag",t.Mapping="mapping"})(eR||(Kp.DiscrError=eR={}))});var nR=R(xy=>{"use strict";Object.defineProperty(xy,"__esModule",{value:!0});var ma=Ee(),by=tR(),rR=Cp(),bH=Oc(),xH=Fe(),_H={message:({params:{discrError:t,tagName:e}})=>t===by.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,ma._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},wH={keyword:"discriminator",type:"object",schemaType:"object",error:_H,code(t){let{gen:e,data:r,schema:n,parentSchema:s,it:i}=t,{oneOf:a}=s;if(!i.opts.discriminator)throw new Error("discriminator: requires discriminator option");let o=n.propertyName;if(typeof o!="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=e.let("valid",!1),l=e.const("tag",(0,ma._)`${r}${(0,ma.getProperty)(o)}`);e.if((0,ma._)`typeof ${l} == "string"`,()=>u(),()=>t.error(!1,{discrError:by.DiscrError.Tag,tag:l,tagName:o})),t.ok(c);function u(){let m=d();e.if(!1);for(let f in m)e.elseIf((0,ma._)`${l} === ${f}`),e.assign(c,p(m[f]));e.else(),t.error(!1,{discrError:by.DiscrError.Mapping,tag:l,tagName:o}),e.endIf()}function p(m){let f=e.name("valid"),v=t.subschema({keyword:"oneOf",schemaProp:m},f);return t.mergeEvaluated(v,ma.Name),f}function d(){var m;let f={},v=h(s),g=!0;for(let x=0;x{SH.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 wy=R((gt,_y)=>{"use strict";Object.defineProperty(gt,"__esModule",{value:!0});gt.MissingRefError=gt.ValidationError=gt.CodeGen=gt.Name=gt.nil=gt.stringify=gt.str=gt._=gt.KeywordCxt=gt.Ajv=void 0;var EH=e1(),kH=X1(),TH=nR(),iR=sR(),RH=["/properties"],Jp="http://json-schema.org/draft-07/schema",fa=class extends EH.default{_addVocabularies(){super._addVocabularies(),kH.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(TH.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(iR,RH):iR;this.addMetaSchema(e,Jp,!1),this.refs["http://json-schema.org/schema"]=Jp}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Jp)?Jp:void 0)}};gt.Ajv=fa;_y.exports=gt=fa;_y.exports.Ajv=fa;Object.defineProperty(gt,"__esModule",{value:!0});gt.default=fa;var $H=$c();Object.defineProperty(gt,"KeywordCxt",{enumerable:!0,get:function(){return $H.KeywordCxt}});var ha=Ee();Object.defineProperty(gt,"_",{enumerable:!0,get:function(){return ha._}});Object.defineProperty(gt,"str",{enumerable:!0,get:function(){return ha.str}});Object.defineProperty(gt,"stringify",{enumerable:!0,get:function(){return ha.stringify}});Object.defineProperty(gt,"nil",{enumerable:!0,get:function(){return ha.nil}});Object.defineProperty(gt,"Name",{enumerable:!0,get:function(){return ha.Name}});Object.defineProperty(gt,"CodeGen",{enumerable:!0,get:function(){return ha.CodeGen}});var OH=Op();Object.defineProperty(gt,"ValidationError",{enumerable:!0,get:function(){return OH.default}});var PH=Oc();Object.defineProperty(gt,"MissingRefError",{enumerable:!0,get:function(){return PH.default}})});var mR=R(Un=>{"use strict";Object.defineProperty(Un,"__esModule",{value:!0});Un.formatNames=Un.fastFormats=Un.fullFormats=void 0;function Fn(t,e){return{validate:t,compare:e}}Un.fullFormats={date:Fn(lR,Ty),time:Fn(Ey(!0),Ry),"date-time":Fn(aR(!0),pR),"iso-time":Fn(Ey(),uR),"iso-date-time":Fn(aR(),dR),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:DH,"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:HH,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:MH,int32:{type:"number",validate:qH},int64:{type:"number",validate:FH},float:{type:"number",validate:cR},double:{type:"number",validate:cR},password:!0,binary:!0};Un.fastFormats={...Un.fullFormats,date:Fn(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Ty),time:Fn(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Ry),"date-time":Fn(/^\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,pR),"iso-time":Fn(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,uR),"iso-date-time":Fn(/^\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,dR),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};Un.formatNames=Object.keys(Un.fullFormats);function CH(t){return t%4===0&&(t%100!==0||t%400===0)}var IH=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,AH=[0,31,28,31,30,31,30,31,31,30,31,30,31];function lR(t){let e=IH.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3];return n>=1&&n<=12&&s>=1&&s<=(n===2&&CH(r)?29:AH[n])}function Ty(t,e){if(t&&e)return t>e?1:t23||u>59||t&&!o)return!1;if(s<=23&&i<=59&&a<60)return!0;let p=i-u*c,d=s-l*c-(p<0?1:0);return(d===23||d===-1)&&(p===59||p===-1)&&a<61}}function Ry(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 uR(t,e){if(!(t&&e))return;let r=Sy.exec(t),n=Sy.exec(e);if(r&&n)return t=r[1]+r[2]+r[3],e=n[1]+n[2]+n[3],t>e?1:t=zH}function FH(t){return Number.isInteger(t)}function cR(){return!0}var UH=/[^\\]\\Z/;function HH(t){if(UH.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var fR=R(ga=>{"use strict";Object.defineProperty(ga,"__esModule",{value:!0});ga.formatLimitDefinition=void 0;var BH=wy(),yn=Ee(),js=yn.operators,Qp={formatMaximum:{okStr:"<=",ok:js.LTE,fail:js.GT},formatMinimum:{okStr:">=",ok:js.GTE,fail:js.LT},formatExclusiveMaximum:{okStr:"<",ok:js.LT,fail:js.GTE},formatExclusiveMinimum:{okStr:">",ok:js.GT,fail:js.LTE}},WH={message:({keyword:t,schemaCode:e})=>(0,yn.str)`should be ${Qp[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,yn._)`{comparison: ${Qp[t].okStr}, limit: ${e}}`};ga.formatLimitDefinition={keyword:Object.keys(Qp),type:"string",schemaType:"string",$data:!0,error:WH,code(t){let{gen:e,data:r,schemaCode:n,keyword:s,it:i}=t,{opts:a,self:o}=i;if(!a.validateFormats)return;let c=new BH.KeywordCxt(i,o.RULES.all.format.definition,"format");c.$data?l():u();function l(){let d=e.scopeValue("formats",{ref:o.formats,code:a.code.formats}),m=e.const("fmt",(0,yn._)`${d}[${c.schemaCode}]`);t.fail$data((0,yn.or)((0,yn._)`typeof ${m} != "object"`,(0,yn._)`${m} instanceof RegExp`,(0,yn._)`typeof ${m}.compare != "function"`,p(m)))}function u(){let d=c.schema,m=o.formats[d];if(!m||m===!0)return;if(typeof m!="object"||m instanceof RegExp||typeof m.compare!="function")throw new Error(`"${s}": format "${d}" does not define "compare" function`);let f=e.scopeValue("formats",{key:d,ref:m,code:a.code.formats?(0,yn._)`${a.code.formats}${(0,yn.getProperty)(d)}`:void 0});t.fail$data(p(f))}function p(d){return(0,yn._)`${d}.compare(${r}, ${n}) ${Qp[s].fail} 0`}},dependencies:["format"]};var ZH=t=>(t.addKeyword(ga.formatLimitDefinition),t);ga.default=ZH});var yR=R((Hc,vR)=>{"use strict";Object.defineProperty(Hc,"__esModule",{value:!0});var va=mR(),VH=fR(),$y=Ee(),hR=new $y.Name("fullFormats"),GH=new $y.Name("fastFormats"),Oy=(t,e={keywords:!0})=>{if(Array.isArray(e))return gR(t,e,va.fullFormats,hR),t;let[r,n]=e.mode==="fast"?[va.fastFormats,GH]:[va.fullFormats,hR],s=e.formats||va.formatNames;return gR(t,s,r,n),e.keywords&&(0,VH.default)(t),t};Oy.get=(t,e="full")=>{let n=(e==="fast"?va.fastFormats:va.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function gR(t,e,r,n){var s,i;(s=(i=t.opts.code).formats)!==null&&s!==void 0||(i.formats=(0,$y._)`require("ajv-formats/dist/formats").${n}`);for(let a of e)t.addFormat(a,r[a])}vR.exports=Hc=Oy;Object.defineProperty(Hc,"__esModule",{value:!0});Hc.default=Oy});var RR=R((rbe,TR)=>{TR.exports=kR;kR.sync=QH;var SR=require("fs");function JH(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{CR.exports=OR;OR.sync=XH;var $R=require("fs");function OR(t,e,r){$R.stat(t,function(n,s){r(n,n?!1:PR(s,e))})}function XH(t,e){return PR($R.statSync(t),e)}function PR(t,e){return t.isFile()&&eB(t,e)}function eB(t,e){var r=t.mode,n=t.uid,s=t.gid,i=e.uid!==void 0?e.uid:process.getuid&&process.getuid(),a=e.gid!==void 0?e.gid:process.getgid&&process.getgid(),o=parseInt("100",8),c=parseInt("010",8),l=parseInt("001",8),u=o|c,p=r&l||r&c&&s===a||r&o&&n===i||r&u&&i===0;return p}});var NR=R((ibe,AR)=>{var sbe=require("fs"),rd;process.platform==="win32"||global.TESTING_WINDOWS?rd=RR():rd=IR();AR.exports=Py;Py.sync=tB;function Py(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,s){Py(t,e||{},function(i,a){i?s(i):n(a)})})}rd(t,e||{},function(n,s){n&&(n.code==="EACCES"||e&&e.ignoreErrors)&&(n=null,s=!1),r(n,s)})}function tB(t,e){try{return rd.sync(t,e||{})}catch(r){if(e&&e.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var FR=R((abe,qR)=>{var ba=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",jR=require("path"),rB=ba?";":":",DR=NR(),MR=t=>Object.assign(new Error(`not found: ${t}`),{code:"ENOENT"}),zR=(t,e)=>{let r=e.colon||rB,n=t.match(/\//)||ba&&t.match(/\\/)?[""]:[...ba?[process.cwd()]:[],...(e.path||process.env.PATH||"").split(r)],s=ba?e.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",i=ba?s.split(r):[""];return ba&&t.indexOf(".")!==-1&&i[0]!==""&&i.unshift(""),{pathEnv:n,pathExt:i,pathExtExe:s}},LR=(t,e,r)=>{typeof e=="function"&&(r=e,e={}),e||(e={});let{pathEnv:n,pathExt:s,pathExtExe:i}=zR(t,e),a=[],o=l=>new Promise((u,p)=>{if(l===n.length)return e.all&&a.length?u(a):p(MR(t));let d=n[l],m=/^".*"$/.test(d)?d.slice(1,-1):d,f=jR.join(m,t),v=!m&&/^\.[\\\/]/.test(t)?t.slice(0,2)+f:f;u(c(v,l,0))}),c=(l,u,p)=>new Promise((d,m)=>{if(p===s.length)return d(o(u+1));let f=s[p];DR(l+f,{pathExt:i},(v,g)=>{if(!v&&g)if(e.all)a.push(l+f);else return d(l+f);return d(c(l,u,p+1))})});return r?o(0).then(l=>r(null,l),r):o(0)},nB=(t,e)=>{e=e||{};let{pathEnv:r,pathExt:n,pathExtExe:s}=zR(t,e),i=[];for(let a=0;a{"use strict";var UR=(t={})=>{let e=t.env||process.env;return(t.platform||process.platform)!=="win32"?"PATH":Object.keys(e).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"};Cy.exports=UR;Cy.exports.default=UR});var VR=R((cbe,ZR)=>{"use strict";var BR=require("path"),sB=FR(),iB=HR();function WR(t,e){let r=t.options.env||process.env,n=process.cwd(),s=t.options.cwd!=null,i=s&&process.chdir!==void 0&&!process.chdir.disabled;if(i)try{process.chdir(t.options.cwd)}catch{}let a;try{a=sB.sync(t.command,{path:r[iB({env:r})],pathExt:e?BR.delimiter:void 0})}catch{}finally{i&&process.chdir(n)}return a&&(a=BR.resolve(s?t.options.cwd:"",a)),a}function aB(t){return WR(t)||WR(t,!0)}ZR.exports=aB});var GR=R((lbe,Ay)=>{"use strict";var Iy=/([()\][%!^"`<>&|;, *?])/g;function oB(t){return t=t.replace(Iy,"^$1"),t}function cB(t,e){return t=`${t}`,t=t.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),t=t.replace(/(?=(\\+?)?)\1$/,"$1$1"),t=`"${t}"`,t=t.replace(Iy,"^$1"),e&&(t=t.replace(Iy,"^$1")),t}Ay.exports.command=oB;Ay.exports.argument=cB});var KR=R((ube,YR)=>{"use strict";YR.exports=/^#!(.*)/});var QR=R((pbe,JR)=>{"use strict";var lB=KR();JR.exports=(t="")=>{let e=t.match(lB);if(!e)return null;let[r,n]=e[0].replace(/#! ?/,"").split(" "),s=r.split("/").pop();return s==="env"?n:n?`${s} ${n}`:s}});var e$=R((dbe,XR)=>{"use strict";var Ny=require("fs"),uB=QR();function pB(t){let r=Buffer.alloc(150),n;try{n=Ny.openSync(t,"r"),Ny.readSync(n,r,0,150,0),Ny.closeSync(n)}catch{}return uB(r.toString())}XR.exports=pB});var s$=R((mbe,n$)=>{"use strict";var dB=require("path"),t$=VR(),r$=GR(),mB=e$(),fB=process.platform==="win32",hB=/\.(?:com|exe)$/i,gB=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function vB(t){t.file=t$(t);let e=t.file&&mB(t.file);return e?(t.args.unshift(t.file),t.command=e,t$(t)):t.file}function yB(t){if(!fB)return t;let e=vB(t),r=!hB.test(e);if(t.options.forceShell||r){let n=gB.test(e);t.command=dB.normalize(t.command),t.command=r$.command(t.command),t.args=t.args.map(i=>r$.argument(i,n));let s=[t.command].concat(t.args).join(" ");t.args=["/d","/s","/c",`"${s}"`],t.command=process.env.comspec||"cmd.exe",t.options.windowsVerbatimArguments=!0}return t}function bB(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:yB(n)}n$.exports=bB});var o$=R((fbe,a$)=>{"use strict";var jy=process.platform==="win32";function Dy(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 xB(t,e){if(!jy)return;let r=t.emit;t.emit=function(n,s){if(n==="exit"){let i=i$(s,e);if(i)return r.call(t,"error",i)}return r.apply(t,arguments)}}function i$(t,e){return jy&&t===1&&!e.file?Dy(e.original,"spawn"):null}function _B(t,e){return jy&&t===1&&!e.file?Dy(e.original,"spawnSync"):null}a$.exports={hookChildProcess:xB,verifyENOENT:i$,verifyENOENTSync:_B,notFoundError:Dy}});var u$=R((hbe,xa)=>{"use strict";var c$=require("child_process"),My=s$(),zy=o$();function l$(t,e,r){let n=My(t,e,r),s=c$.spawn(n.command,n.args,n.options);return zy.hookChildProcess(s,n),s}function wB(t,e,r){let n=My(t,e,r),s=c$.spawnSync(n.command,n.args,n.options);return s.error=s.error||zy.verifyENOENTSync(s.status,n),s}xa.exports=l$;xa.exports.spawn=l$;xa.exports.sync=wB;xa.exports._parse=My;xa.exports._enoent=zy});var f$,h$,g$=xe(()=>{"use strict";f$="bugfix,feature,refactor,discovery,decision,change",h$="how-it-works,why-it-exists,what-changed,problem-solution,gotcha,pattern,trade-off"});var bn,sd,v$,Me,Br=xe(()=>{"use strict";bn=require("fs"),sd=require("path"),v$=require("os");g$();Me=class{static DEFAULTS={CLAUDE_PILOT_MODEL:"haiku",CLAUDE_PILOT_CONTEXT_OBSERVATIONS:"50",CLAUDE_PILOT_WORKER_PORT:"41777",CLAUDE_PILOT_WORKER_HOST:"127.0.0.1",CLAUDE_PILOT_WORKER_BIND:"127.0.0.1",CLAUDE_PILOT_SKIP_TOOLS:"ListMcpResourcesTool,SlashCommand,Skill,TodoWrite,AskUserQuestion",CLAUDE_PILOT_DATA_DIR:(0,sd.join)((0,v$.homedir)(),".pilot/memory"),CLAUDE_PILOT_LOG_LEVEL:"INFO",CLAUDE_PILOT_PYTHON_VERSION:"3.12",CLAUDE_CODE_PATH:"",CLAUDE_PILOT_CONTEXT_SHOW_READ_TOKENS:!1,CLAUDE_PILOT_CONTEXT_SHOW_WORK_TOKENS:!1,CLAUDE_PILOT_CONTEXT_SHOW_SAVINGS_AMOUNT:!1,CLAUDE_PILOT_CONTEXT_SHOW_SAVINGS_PERCENT:!1,CLAUDE_PILOT_CONTEXT_OBSERVATION_TYPES:f$,CLAUDE_PILOT_CONTEXT_OBSERVATION_CONCEPTS:h$,CLAUDE_PILOT_CONTEXT_FULL_COUNT:"10",CLAUDE_PILOT_CONTEXT_FULL_FIELD:"facts",CLAUDE_PILOT_CONTEXT_SESSION_COUNT:"10",CLAUDE_PILOT_CONTEXT_SHOW_LAST_SUMMARY:!0,CLAUDE_PILOT_CONTEXT_SHOW_LAST_MESSAGE:!0,CLAUDE_PILOT_FOLDER_CLAUDEMD_ENABLED:!1,CLAUDE_PILOT_FOLDER_MD_EXCLUDE:"[]",CLAUDE_PILOT_CHROMA_ENABLED:!0,CLAUDE_PILOT_VECTOR_DB:"chroma",CLAUDE_PILOT_EMBEDDING_MODEL:"Xenova/all-MiniLM-L6-v2",CLAUDE_PILOT_EXCLUDE_PROJECTS:"[]",CLAUDE_PILOT_REMOTE_TOKEN:"",CLAUDE_PILOT_RETENTION_ENABLED:!0,CLAUDE_PILOT_RETENTION_MAX_AGE_DAYS:"31",CLAUDE_PILOT_RETENTION_MAX_COUNT:"5000",CLAUDE_PILOT_RETENTION_EXCLUDE_TYPES:'["summary"]',CLAUDE_PILOT_RETENTION_SOFT_DELETE:!1,CLAUDE_PILOT_BATCH_SIZE:"5"};static getAllDefaults(){return{...this.DEFAULTS}}static get(e){return this.DEFAULTS[e]}static getInt(e){let r=this.get(e);return parseInt(r,10)}static getBool(e){return this.get(e)==="true"}static loadFromFile(e){try{if(!(0,bn.existsSync)(e)){let c=this.getAllDefaults();try{let l=(0,sd.dirname)(e);(0,bn.existsSync)(l)||(0,bn.mkdirSync)(l,{recursive:!0}),(0,bn.writeFileSync)(e,JSON.stringify(c,null,2),"utf-8"),console.log("[SETTINGS] Created settings file with defaults:",e)}catch(l){console.warn("[SETTINGS] Failed to create settings file, using in-memory defaults:",e,l)}return c}let r=(0,bn.readFileSync)(e,"utf-8"),n=JSON.parse(r),s=n;if(n.env&&typeof n.env=="object"){s=n.env;try{(0,bn.writeFileSync)(e,JSON.stringify(s,null,2),"utf-8"),console.log("[SETTINGS] Migrated settings file from nested to flat schema:",e)}catch(c){console.warn("[SETTINGS] Failed to auto-migrate settings file:",e,c)}}let i=["CLAUDE_PILOT_CONTEXT_SHOW_READ_TOKENS","CLAUDE_PILOT_CONTEXT_SHOW_WORK_TOKENS","CLAUDE_PILOT_CONTEXT_SHOW_SAVINGS_AMOUNT","CLAUDE_PILOT_CONTEXT_SHOW_SAVINGS_PERCENT","CLAUDE_PILOT_CONTEXT_SHOW_LAST_SUMMARY","CLAUDE_PILOT_CONTEXT_SHOW_LAST_MESSAGE","CLAUDE_PILOT_FOLDER_CLAUDEMD_ENABLED","CLAUDE_PILOT_CHROMA_ENABLED","CLAUDE_PILOT_RETENTION_ENABLED","CLAUDE_PILOT_RETENTION_SOFT_DELETE"],a={...this.DEFAULTS},o=!1;for(let c of Object.keys(this.DEFAULTS))if(s[c]!==void 0)if(i.includes(c)){let l=s[c];typeof l=="string"?(a[c]=l==="true",o=!0):a[c]=l}else a[c]=s[c];if(o)try{(0,bn.writeFileSync)(e,JSON.stringify(a,null,2),"utf-8"),console.log("[SETTINGS] Migrated boolean settings from strings to actual booleans:",e)}catch(c){console.warn("[SETTINGS] Failed to auto-migrate boolean settings:",e,c)}return a}catch(r){return console.warn("[SETTINGS] Failed to load settings, using defaults:",e,r),this.getAllDefaults()}}}});function Cr(){if(id!==null)return id;let t=cd.default.join(Me.get("CLAUDE_PILOT_DATA_DIR"),"settings.json"),e=Me.loadFromFile(t);return id=parseInt(e.CLAUDE_PILOT_WORKER_PORT,10),id}function xn(){if(ad!==null)return ad;let t=cd.default.join(Me.get("CLAUDE_PILOT_DATA_DIR"),"settings.json");return ad=Me.loadFromFile(t).CLAUDE_PILOT_WORKER_HOST,ad}function ld(){if(od!==null)return od;let t=cd.default.join(Me.get("CLAUDE_PILOT_DATA_DIR"),"settings.json");return od=Me.loadFromFile(t).CLAUDE_PILOT_WORKER_BIND,od}function RB(t){return t.includes(":")&&!t.startsWith("[")?`[${t}]`:t}function y$(){let t=xn(),e=Cr();return`http://${RB(t)}:${e}`}var cd,id,ad,od,_n=xe(()=>{"use strict";cd=ie(require("path"),1);Br();id=null,ad=null,od=null});var ls,Wc,x$,Ly,b$,qy,_,re=xe(()=>{"use strict";ls=require("fs"),Wc=require("path"),x$=require("os"),Ly=(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))(Ly||{}),b$=(0,Wc.join)((0,x$.homedir)(),".pilot/memory"),qy=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,Wc.join)(b$,"logs");(0,ls.existsSync)(e)||(0,ls.mkdirSync)(e,{recursive:!0});let r=new Date().toISOString().split("T")[0];this.logFilePath=(0,Wc.join)(e,`pilot-memory-${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,Wc.join)(b$,"settings.json");if((0,ls.existsSync)(e)){let r=(0,ls.readFileSync)(e,"utf-8"),s=(JSON.parse(r).CLAUDE_PILOT_LOG_LEVEL||"INFO").toUpperCase();this.level=Ly[s]??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"),s=String(e.getDate()).padStart(2,"0"),i=String(e.getHours()).padStart(2,"0"),a=String(e.getMinutes()).padStart(2,"0"),o=String(e.getSeconds()).padStart(2,"0"),c=String(e.getMilliseconds()).padStart(3,"0");return`${r}-${n}-${s} ${i}:${a}:${o}.${c}`}log(e,r,n,s,i){if(e0&&(p=` {${Object.entries(g).map(([y,b])=>`${y}=${b}`).join(", ")}}`)}let d=`[${a}] [${o}] [${c}] ${l}${n}${p}${u}`;if(this.logFilePath)try{(0,ls.appendFileSync)(this.logFilePath,d+` `,"utf8")}catch(m){process.stderr.write(`[LOGGER] Failed to write to log file: ${m} `)}else process.stderr.write(d+` `)}debug(e,r,n,s){this.log(0,e,r,n,s)}info(e,r,n,s){this.log(1,e,r,n,s)}warn(e,r,n,s){this.log(2,e,r,n,s)}error(e,r,n,s){this.log(3,e,r,n,s)}dataIn(e,r,n,s){this.info(e,`\u2192 ${r}`,n,s)}dataOut(e,r,n,s){this.info(e,`\u2190 ${r}`,n,s)}success(e,r,n,s){this.info(e,`\u2713 ${r}`,n,s)}failure(e,r,n,s){this.error(e,`\u2717 ${r}`,n,s)}timing(e,r,n,s){this.info(e,`\u23F1 ${r}`,s,{duration:`${n}ms`})}happyPathError(e,r,n,s,i=""){let l=((new Error().stack||"").split(` -`)[2]||"").match(/at\s+(?:.*\s+)?\(?([^:]+):(\d+):(\d+)\)?/),u=l?`${l[1].split("/").pop()}:${l[2]}`:"unknown",p={...n,location:u};return this.warn(e,`[HAPPY-PATH] ${r}`,p,s),i}},_=new Dy});function h$(t){return process.platform==="win32"?Math.round(t*er.WINDOWS_MULTIPLIER):t}var er,Bc,_a=xe(()=>{"use strict";er={DEFAULT:3e5,HEALTH_CHECK:3e3,POST_SPAWN_WAIT:5e3,PORT_IN_USE_WAIT:3e3,WORKER_STARTUP_WAIT:1e3,PRE_RESTART_SETTLE_DELAY:2e3,POWERSHELL_COMMAND:1e4,WINDOWS_MULTIPLIER:1.5},Bc={SUCCESS:0,FAILURE:1,BLOCKING_ERROR:2,USER_MESSAGE_ONLY:3}});var _$={};Nn(_$,{cleanStalePidFile:()=>Ly,cleanupOrphanedClaudeProcesses:()=>ld,cleanupOrphanedProcesses:()=>ud,createSignalHandler:()=>By,forceKillProcess:()=>Fy,getChildProcesses:()=>qy,getPlatformTimeout:()=>yi,getProcessStats:()=>EB,isOrphanedProcess:()=>Hy,isProcessAlive:()=>x$,readPidFile:()=>b$,removePidFile:()=>Sn,spawnDaemon:()=>Vc,waitForProcessesExit:()=>Uy,writePidFile:()=>Zc});function Zc(t){(0,wn.mkdirSync)(y$,{recursive:!0}),(0,wn.writeFileSync)(gi,JSON.stringify(t,null,2))}function b$(){if(!(0,wn.existsSync)(gi))return null;try{return JSON.parse((0,wn.readFileSync)(gi,"utf-8"))}catch(t){return _.warn("SYSTEM","Failed to parse PID file",{path:gi},t),null}}function Sn(){if((0,wn.existsSync)(gi))try{(0,wn.unlinkSync)(gi)}catch(t){_.warn("SYSTEM","Failed to remove PID file",{path:gi},t)}}function x$(t){if(!Number.isInteger(t)||t<0)return!1;if(t===0)return!0;try{return process.kill(t,0),!0}catch(e){return(e instanceof Error?e.code:void 0)==="EPERM"}}function Ly(){let t=b$();if(!t)return;x$(t.pid)||(_.info("SYSTEM","Removing stale PID file",{pid:t.pid}),Sn())}function yi(t){return process.platform==="win32"?Math.round(t*2):t}async function qy(t){if(process.platform!=="win32")return[];if(!Number.isInteger(t)||t<=0)return _.warn("SYSTEM","Invalid parent PID for child process enumeration",{parentPid:t}),[];try{let e=`powershell -NoProfile -NonInteractive -Command "Get-Process | Where-Object { \\$_.ParentProcessId -eq ${t} } | Select-Object -ExpandProperty Id"`,{stdout:r}=await Ir(e,{timeout:er.POWERSHELL_COMMAND});return r.split(` -`).map(n=>n.trim()).filter(n=>n.length>0&&/^\d+$/.test(n)).map(n=>parseInt(n,10)).filter(n=>n>0)}catch(e){return _.error("SYSTEM","Failed to enumerate child processes",{parentPid:t},e),[]}}async function Fy(t){if(!Number.isInteger(t)||t<=0){_.warn("SYSTEM","Invalid PID for force kill",{pid:t});return}try{process.platform==="win32"?await Ir(`taskkill /PID ${t} /T /F`,{timeout:er.POWERSHELL_COMMAND}):process.kill(t,"SIGKILL"),_.info("SYSTEM","Killed process",{pid:t})}catch(e){_.debug("SYSTEM","Process already exited during force kill",{pid:t},e)}}async function Uy(t,e){let r=Date.now();for(;Date.now()-r{try{return process.kill(s,0),!0}catch{return!1}});if(n.length===0){_.info("SYSTEM","All child processes exited");return}_.debug("SYSTEM","Waiting for processes to exit",{stillAlive:n}),await new Promise(s=>setTimeout(s,100))}_.warn("SYSTEM","Timeout waiting for child processes to exit")}function wB(t){if(!t||t.trim()==="")return-1;let e=t.trim(),r=0;if(e.includes("-")){let[n,s]=e.split("-");r+=parseInt(n,10)*24*60;let[i,a]=s.split(":").map(o=>parseInt(o,10));r+=i*60+a}else{let n=e.split(":").map(s=>parseInt(s,10));n.length===3?r=n[0]*60+n[1]:n.length===2&&(r=n[0])}return r}function SB(t){let e=t.toLowerCase().trim();return _B.some(r=>e.includes(r))}async function Hy(t){if(!Number.isInteger(t)||t<=0||t===process.pid||t===1)return!1;try{if(process.platform==="win32"){let e=`powershell -NoProfile -NonInteractive -Command "(Get-CimInstance Win32_Process -Filter 'ProcessId = ${t}').ParentProcessId"`,{stdout:r}=await Ir(e,{timeout:er.POWERSHELL_COMMAND}),n=parseInt(r.trim(),10);if(isNaN(n))return!1;if(n===0)return!0;try{let s=`powershell -NoProfile -NonInteractive -Command "Get-Process -Id ${n} -ErrorAction SilentlyContinue | Measure-Object | Select-Object -ExpandProperty Count"`,{stdout:i}=await Ir(s,{timeout:er.POWERSHELL_COMMAND});return parseInt(i.trim(),10)===0}catch{return!1}}else{let{stdout:e}=await Ir(`cat /proc/${t}/stat 2>/dev/null | awk '{print $4}'`),r=parseInt(e.trim(),10);if(isNaN(r))return!1;if(r===1)return!0;try{let{stdout:n}=await Ir(`cat /proc/${r}/comm 2>/dev/null`);if(SB(n.trim()))return!0}catch{}return!1}}catch(e){return _.debug("SYSTEM","Error checking if process is orphaned, assuming active",{pid:t},e),!1}}async function ld(){let t=process.pid,e=[],r=[];try{if(process.platform==="win32"){let n=`powershell -NoProfile -NonInteractive -Command "Get-CimInstance Win32_Process | Where-Object { \\$_.CommandLine -match '${cd}' -and \\$_.ProcessId -ne ${t} } | Select-Object ProcessId | ConvertTo-Json"`,{stdout:s}=await Ir(n,{timeout:er.POWERSHELL_COMMAND});if(!s.trim()||s.trim()==="null")return;let i=JSON.parse(s),a=Array.isArray(i)?i:[i];for(let o of a){let c=o.ProcessId;Number.isInteger(c)&&c>0&&c!==t&&e.push(c)}}else{let{stdout:n}=await Ir(`pgrep -f '${cd}' 2>/dev/null || true`);if(!n.trim())return;for(let s of n.trim().split(` -`)){let i=parseInt(s.trim(),10);Number.isInteger(i)&&i>0&&i!==t&&e.push(i)}}}catch(n){_.debug("SYSTEM","Error enumerating Claude processes",{},n);return}if(e.length!==0){for(let n of e)await Hy(n)?r.push(n):_.debug("SYSTEM","Claude process is not orphaned, skipping",{pid:n});if(_.debug("SYSTEM","Claude process cleanup check",{candidates:e.length,orphaned:r.length}),r.length!==0){_.info("SYSTEM","Cleaning up orphaned Claude CLI processes",{count:r.length,pids:r});for(let n of r)try{if(process.platform==="win32")(0,vi.execSync)(`taskkill /PID ${n} /T /F`,{timeout:er.POWERSHELL_COMMAND,stdio:"ignore"});else{process.kill(n,"SIGTERM"),await new Promise(s=>setTimeout(s,500));try{process.kill(n,0),process.kill(n,"SIGKILL")}catch{}}}catch(s){_.debug("SYSTEM","Claude process already exited",{pid:n},s)}_.info("SYSTEM","Orphaned Claude processes cleaned up",{count:r.length})}}}async function ud(){let t=process.platform==="win32",e=process.pid,r=[],n=[];try{if(t){let i=`powershell -NoProfile -NonInteractive -Command "Get-CimInstance Win32_Process | Where-Object { (${My.map(u=>`\\$_.CommandLine -like '*${u}*'`).join(" -or ")}) -and \\$_.ProcessId -ne ${e} } | Select-Object ProcessId, CreationDate | ConvertTo-Json"`,{stdout:a}=await Ir(i,{timeout:er.POWERSHELL_COMMAND});if(!a.trim()||a.trim()==="null"){_.debug("SYSTEM","No pilot-memory processes found (Windows)");return}let o=JSON.parse(a),c=Array.isArray(o)?o:[o],l=Date.now();for(let u of c){let p=u.ProcessId;if(!Number.isInteger(p)||p<=0||p===e)continue;let d=u.CreationDate?.match(/\/Date\((\d+)\)\/\//);if(d){let m=parseInt(d[1],10);(l-m)/(1e3*60)>=Wc&&r.push(p)}}}else{let s=My.join("|"),{stdout:i}=await Ir(`ps -eo pid,etime,command | grep -E "${s}" | grep -v grep || true`);if(!i.trim()){_.debug("SYSTEM","No pilot-memory processes found (Unix)");return}let a=i.trim().split(` -`);for(let o of a){let c=o.trim().match(/^(\d+)\s+(\S+)\s+(.*)$/);if(!c)continue;let l=parseInt(c[1],10),u=c[2];if(!Number.isInteger(l)||l<=0||l===e)continue;wB(u)>=Wc&&r.push(l)}}}catch(s){_.error("SYSTEM","Failed to enumerate processes",{},s);return}if(r.length===0){_.debug("SYSTEM","No process candidates older than threshold",{thresholdMinutes:Wc,patternsChecked:My});return}for(let s of r)await Hy(s)?(n.push(s),_.debug("SYSTEM","Found orphaned process (PPID check passed)",{pid:s})):_.debug("SYSTEM","Process is not orphaned, skipping",{pid:s});if(_.debug("SYSTEM","Orphan cleanup check",{candidates:r.length,orphaned:n.length,thresholdMinutes:Wc}),n.length===0){_.debug("SYSTEM","No truly orphaned processes found (all have valid parents)");return}if(_.info("SYSTEM","Cleaning up orphaned pilot-memory processes",{platform:t?"Windows":"Unix",count:n.length,pids:n,maxAgeMinutes:Wc}),t)for(let s of n){if(!Number.isInteger(s)||s<=0){_.warn("SYSTEM","Skipping invalid PID",{pid:s});continue}try{(0,vi.execSync)(`taskkill /PID ${s} /T /F`,{timeout:er.POWERSHELL_COMMAND,stdio:"ignore"})}catch(i){_.debug("SYSTEM","Failed to kill process, may have already exited",{pid:s},i)}}else for(let s of n)try{process.kill(s,"SIGKILL")}catch(i){_.debug("SYSTEM","Process already exited",{pid:s},i)}_.info("SYSTEM","Orphaned processes cleaned up",{count:n.length})}function Vc(t,e,r={}){let n=(0,vi.spawn)(process.execPath,[t,"--daemon"],{detached:!0,stdio:"ignore",windowsHide:!0,env:{...process.env,CLAUDE_PILOT_WORKER_PORT:String(e),...r}});if(n.pid!==void 0)return n.unref(),n.pid}function By(t,e){return async r=>{if(e.value){_.warn("SYSTEM",`Received ${r} but shutdown already in progress`);return}e.value=!0,_.info("SYSTEM",`Received ${r}, shutting down...`);try{await t(),process.exit(0)}catch(n){_.error("SYSTEM","Error during shutdown",{},n),process.exit(0)}}}async function EB(){let t=process.pid,e=0,r=0,n=0;try{if(process.platform==="win32"){let s=`powershell -NoProfile -NonInteractive -Command " +`)[2]||"").match(/at\s+(?:.*\s+)?\(?([^:]+):(\d+):(\d+)\)?/),u=l?`${l[1].split("/").pop()}:${l[2]}`:"unknown",p={...n,location:u};return this.warn(e,`[HAPPY-PATH] ${r}`,p,s),i}},_=new qy});function _$(t){return process.platform==="win32"?Math.round(t*er.WINDOWS_MULTIPLIER):t}var er,Zc,wa=xe(()=>{"use strict";er={DEFAULT:3e5,HEALTH_CHECK:3e3,POST_SPAWN_WAIT:5e3,PORT_IN_USE_WAIT:3e3,WORKER_STARTUP_WAIT:1e3,PRE_RESTART_SETTLE_DELAY:2e3,POWERSHELL_COMMAND:1e4,WINDOWS_MULTIPLIER:1.5},Zc={SUCCESS:0,FAILURE:1,BLOCKING_ERROR:2,USER_MESSAGE_ONLY:3}});var R$={};Nn(R$,{cleanStalePidFile:()=>Hy,cleanupOrphanedClaudeProcesses:()=>pd,cleanupOrphanedProcesses:()=>dd,createSignalHandler:()=>Gy,forceKillProcess:()=>Wy,getChildProcesses:()=>By,getPlatformTimeout:()=>bi,getProcessStats:()=>CB,isOrphanedProcess:()=>Vy,isProcessAlive:()=>T$,readPidFile:()=>k$,removePidFile:()=>Sn,spawnDaemon:()=>Yc,waitForProcessesExit:()=>Zy,writePidFile:()=>Gc});function Gc(t){(0,wn.mkdirSync)(E$,{recursive:!0}),(0,wn.writeFileSync)(vi,JSON.stringify(t,null,2))}function k$(){if(!(0,wn.existsSync)(vi))return null;try{return JSON.parse((0,wn.readFileSync)(vi,"utf-8"))}catch(t){return _.warn("SYSTEM","Failed to parse PID file",{path:vi},t),null}}function Sn(){if((0,wn.existsSync)(vi))try{(0,wn.unlinkSync)(vi)}catch(t){_.warn("SYSTEM","Failed to remove PID file",{path:vi},t)}}function T$(t){if(!Number.isInteger(t)||t<0)return!1;if(t===0)return!0;try{return process.kill(t,0),!0}catch(e){return(e instanceof Error?e.code:void 0)==="EPERM"}}function Hy(){let t=k$();if(!t)return;T$(t.pid)||(_.info("SYSTEM","Removing stale PID file",{pid:t.pid}),Sn())}function bi(t){return process.platform==="win32"?Math.round(t*2):t}async function By(t){if(process.platform!=="win32")return[];if(!Number.isInteger(t)||t<=0)return _.warn("SYSTEM","Invalid parent PID for child process enumeration",{parentPid:t}),[];try{let e=`powershell -NoProfile -NonInteractive -Command "Get-Process | Where-Object { \\$_.ParentProcessId -eq ${t} } | Select-Object -ExpandProperty Id"`,{stdout:r}=await Ir(e,{timeout:er.POWERSHELL_COMMAND});return r.split(` +`).map(n=>n.trim()).filter(n=>n.length>0&&/^\d+$/.test(n)).map(n=>parseInt(n,10)).filter(n=>n>0)}catch(e){return _.error("SYSTEM","Failed to enumerate child processes",{parentPid:t},e),[]}}async function Wy(t){if(!Number.isInteger(t)||t<=0){_.warn("SYSTEM","Invalid PID for force kill",{pid:t});return}try{process.platform==="win32"?await Ir(`taskkill /PID ${t} /T /F`,{timeout:er.POWERSHELL_COMMAND}):process.kill(t,"SIGKILL"),_.info("SYSTEM","Killed process",{pid:t})}catch(e){_.debug("SYSTEM","Process already exited during force kill",{pid:t},e)}}async function Zy(t,e){let r=Date.now();for(;Date.now()-r{try{return process.kill(s,0),!0}catch{return!1}});if(n.length===0){_.info("SYSTEM","All child processes exited");return}_.debug("SYSTEM","Waiting for processes to exit",{stillAlive:n}),await new Promise(s=>setTimeout(s,100))}_.warn("SYSTEM","Timeout waiting for child processes to exit")}function OB(t){if(!t||t.trim()==="")return-1;let e=t.trim(),r=0;if(e.includes("-")){let[n,s]=e.split("-");r+=parseInt(n,10)*24*60;let[i,a]=s.split(":").map(o=>parseInt(o,10));r+=i*60+a}else{let n=e.split(":").map(s=>parseInt(s,10));n.length===3?r=n[0]*60+n[1]:n.length===2&&(r=n[0])}return r}function PB(t){let e=t.toLowerCase().trim();return $B.some(r=>e.includes(r))}async function Vy(t){if(!Number.isInteger(t)||t<=0||t===process.pid||t===1)return!1;try{if(process.platform==="win32"){let e=`powershell -NoProfile -NonInteractive -Command "(Get-CimInstance Win32_Process -Filter 'ProcessId = ${t}').ParentProcessId"`,{stdout:r}=await Ir(e,{timeout:er.POWERSHELL_COMMAND}),n=parseInt(r.trim(),10);if(isNaN(n))return!1;if(n===0)return!0;try{let s=`powershell -NoProfile -NonInteractive -Command "Get-Process -Id ${n} -ErrorAction SilentlyContinue | Measure-Object | Select-Object -ExpandProperty Count"`,{stdout:i}=await Ir(s,{timeout:er.POWERSHELL_COMMAND});return parseInt(i.trim(),10)===0}catch{return!1}}else{let{stdout:e}=await Ir(`cat /proc/${t}/stat 2>/dev/null | awk '{print $4}'`),r=parseInt(e.trim(),10);if(isNaN(r))return!1;if(r===1)return!0;try{let{stdout:n}=await Ir(`cat /proc/${r}/comm 2>/dev/null`);if(PB(n.trim()))return!0}catch{}return!1}}catch(e){return _.debug("SYSTEM","Error checking if process is orphaned, assuming active",{pid:t},e),!1}}async function pd(){let t=process.pid,e=[],r=[];try{if(process.platform==="win32"){let n=`powershell -NoProfile -NonInteractive -Command "Get-CimInstance Win32_Process | Where-Object { \\$_.CommandLine -match '${ud}' -and \\$_.ProcessId -ne ${t} } | Select-Object ProcessId | ConvertTo-Json"`,{stdout:s}=await Ir(n,{timeout:er.POWERSHELL_COMMAND});if(!s.trim()||s.trim()==="null")return;let i=JSON.parse(s),a=Array.isArray(i)?i:[i];for(let o of a){let c=o.ProcessId;Number.isInteger(c)&&c>0&&c!==t&&e.push(c)}}else{let{stdout:n}=await Ir(`pgrep -f '${ud}' 2>/dev/null || true`);if(!n.trim())return;for(let s of n.trim().split(` +`)){let i=parseInt(s.trim(),10);Number.isInteger(i)&&i>0&&i!==t&&e.push(i)}}}catch(n){_.debug("SYSTEM","Error enumerating Claude processes",{},n);return}if(e.length!==0){for(let n of e)await Vy(n)?r.push(n):_.debug("SYSTEM","Claude process is not orphaned, skipping",{pid:n});if(_.debug("SYSTEM","Claude process cleanup check",{candidates:e.length,orphaned:r.length}),r.length!==0){_.info("SYSTEM","Cleaning up orphaned Claude CLI processes",{count:r.length,pids:r});for(let n of r)try{if(process.platform==="win32")(0,yi.execSync)(`taskkill /PID ${n} /T /F`,{timeout:er.POWERSHELL_COMMAND,stdio:"ignore"});else{process.kill(n,"SIGTERM"),await new Promise(s=>setTimeout(s,500));try{process.kill(n,0),process.kill(n,"SIGKILL")}catch{}}}catch(s){_.debug("SYSTEM","Claude process already exited",{pid:n},s)}_.info("SYSTEM","Orphaned Claude processes cleaned up",{count:r.length})}}}async function dd(){let t=process.platform==="win32",e=process.pid,r=[],n=[];try{if(t){let i=`powershell -NoProfile -NonInteractive -Command "Get-CimInstance Win32_Process | Where-Object { (${Fy.map(u=>`\\$_.CommandLine -like '*${u}*'`).join(" -or ")}) -and \\$_.ProcessId -ne ${e} } | Select-Object ProcessId, CreationDate | ConvertTo-Json"`,{stdout:a}=await Ir(i,{timeout:er.POWERSHELL_COMMAND});if(!a.trim()||a.trim()==="null"){_.debug("SYSTEM","No pilot-memory processes found (Windows)");return}let o=JSON.parse(a),c=Array.isArray(o)?o:[o],l=Date.now();for(let u of c){let p=u.ProcessId;if(!Number.isInteger(p)||p<=0||p===e)continue;let d=u.CreationDate?.match(/\/Date\((\d+)\)\/\//);if(d){let m=parseInt(d[1],10);(l-m)/(1e3*60)>=Vc&&r.push(p)}}}else{let s=Fy.join("|"),{stdout:i}=await Ir(`ps -eo pid,etime,command | grep -E "${s}" | grep -v grep || true`);if(!i.trim()){_.debug("SYSTEM","No pilot-memory processes found (Unix)");return}let a=i.trim().split(` +`);for(let o of a){let c=o.trim().match(/^(\d+)\s+(\S+)\s+(.*)$/);if(!c)continue;let l=parseInt(c[1],10),u=c[2];if(!Number.isInteger(l)||l<=0||l===e)continue;OB(u)>=Vc&&r.push(l)}}}catch(s){_.error("SYSTEM","Failed to enumerate processes",{},s);return}if(r.length===0){_.debug("SYSTEM","No process candidates older than threshold",{thresholdMinutes:Vc,patternsChecked:Fy});return}for(let s of r)await Vy(s)?(n.push(s),_.debug("SYSTEM","Found orphaned process (PPID check passed)",{pid:s})):_.debug("SYSTEM","Process is not orphaned, skipping",{pid:s});if(_.debug("SYSTEM","Orphan cleanup check",{candidates:r.length,orphaned:n.length,thresholdMinutes:Vc}),n.length===0){_.debug("SYSTEM","No truly orphaned processes found (all have valid parents)");return}if(_.info("SYSTEM","Cleaning up orphaned pilot-memory processes",{platform:t?"Windows":"Unix",count:n.length,pids:n,maxAgeMinutes:Vc}),t)for(let s of n){if(!Number.isInteger(s)||s<=0){_.warn("SYSTEM","Skipping invalid PID",{pid:s});continue}try{(0,yi.execSync)(`taskkill /PID ${s} /T /F`,{timeout:er.POWERSHELL_COMMAND,stdio:"ignore"})}catch(i){_.debug("SYSTEM","Failed to kill process, may have already exited",{pid:s},i)}}else for(let s of n)try{process.kill(s,"SIGKILL")}catch(i){_.debug("SYSTEM","Process already exited",{pid:s},i)}_.info("SYSTEM","Orphaned processes cleaned up",{count:n.length})}function Yc(t,e,r={}){let n=(0,yi.spawn)(process.execPath,[t,"--daemon"],{detached:!0,stdio:"ignore",windowsHide:!0,env:{...process.env,CLAUDE_PILOT_WORKER_PORT:String(e),...r}});if(n.pid!==void 0)return n.unref(),n.pid}function Gy(t,e){return async r=>{if(e.value){_.warn("SYSTEM",`Received ${r} but shutdown already in progress`);return}e.value=!0,_.info("SYSTEM",`Received ${r}, shutting down...`);try{await t(),process.exit(0)}catch(n){_.error("SYSTEM","Error during shutdown",{},n),process.exit(0)}}}async function CB(){let t=process.pid,e=0,r=0,n=0;try{if(process.platform==="win32"){let s=`powershell -NoProfile -NonInteractive -Command " $claudeMem = (Get-CimInstance Win32_Process | Where-Object { $_.CommandLine -match 'pilot-memory|worker-service|mcp-server' -and $_.ProcessId -ne ${t} }).Count - $claudeCli = (Get-CimInstance Win32_Process | Where-Object { $_.CommandLine -match '${cd}' }).Count + $claudeCli = (Get-CimInstance Win32_Process | Where-Object { $_.CommandLine -match '${ud}' }).Count $chroma = (Get-CimInstance Win32_Process | Where-Object { $_.CommandLine -match 'chroma' }).Count Write-Output \\"$claudeMem,$claudeCli,$chroma\\" - "`,{stdout:i}=await Ir(s,{timeout:er.POWERSHELL_COMMAND}),[a,o,c]=i.trim().split(",").map(l=>parseInt(l,10)||0);e=a,r=o,n=c}else{try{let{stdout:s}=await Ir(`pgrep -f 'pilot-memory|worker-service|mcp-server' 2>/dev/null | grep -v "^${t}$" | wc -l`);e=parseInt(s.trim(),10)||0}catch{}try{let{stdout:s}=await Ir(`pgrep -f '${cd}' 2>/dev/null | wc -l`);r=parseInt(s.trim(),10)||0}catch{}try{let{stdout:s}=await Ir("pgrep -f 'chroma' 2>/dev/null | wc -l");n=parseInt(s.trim(),10)||0}catch{}}}catch(s){_.debug("SYSTEM","Error counting processes",{},s)}return{claudeMemProcesses:e,claudeCliProcesses:r,chromaProcesses:n,total:e+r+n}}var zy,g$,wn,vi,v$,Ir,y$,gi,My,Wc,_B,cd,Gc=xe(()=>{"use strict";zy=pe(require("path"),1),g$=require("os"),wn=require("fs"),vi=require("child_process"),v$=require("util");se();_a();Ir=(0,v$.promisify)(vi.exec),y$=zy.default.join((0,g$.homedir)(),".pilot/memory"),gi=zy.default.join(y$,"worker.pid"),My=["mcp-server","worker-service","pilot-memory","chroma-mcp"],Wc=60,_B=["init","systemd","tini","dumb-init","docker-init","s6-svscan","runsv"],cd="claude.*--output-format.*stream-json"});var Hn=R((Abe,R$)=>{var CB=require("path").relative;R$.exports=DB;var IB=process.cwd();function k$(t,e){for(var r=t.split(/[ ,]+/),n=String(e).toLowerCase(),s=0;s0}function zB(t){if(process.noDeprecation)return!0;var e=process.env.NO_DEPRECATION||"";return k$(e,t)}function LB(t){if(process.traceDeprecation)return!0;var e=process.env.TRACE_DEPRECATION||"";return k$(e,t)}function fd(t,e){var r=MB(process,"deprecation");if(!(!r&&this._ignored)){var n,s,i,a,o=0,c=!1,l=hd(),u=this._file;for(e?(a=e,i=wa(l[1]),i.name=a.name,u=i[0]):(o=2,a=wa(l[o]),i=a);o",r=t.getLineNumber(),n=t.getColumnNumber();t.isEval()&&(e=t.getEvalOrigin()+", "+e);var s=[e,r,n];return s.callSite=t,s.name=t.getFunctionName(),s}function E$(t){var e=t.callSite,r=t.name;r||(r="");var n=e.getThis(),s=n&&e.getTypeName();return s==="Object"&&(s=void 0),s==="Function"&&(s=n.name||s),s&&e.getMethodName()?s+"."+r:r}function qB(t,e,r){var n=new Date().toUTCString(),s=n+" "+this._namespace+" deprecated "+t;if(this._traced){for(var i=0;iparseInt(l,10)||0);e=a,r=o,n=c}else{try{let{stdout:s}=await Ir(`pgrep -f 'pilot-memory|worker-service|mcp-server' 2>/dev/null | grep -v "^${t}$" | wc -l`);e=parseInt(s.trim(),10)||0}catch{}try{let{stdout:s}=await Ir(`pgrep -f '${ud}' 2>/dev/null | wc -l`);r=parseInt(s.trim(),10)||0}catch{}try{let{stdout:s}=await Ir("pgrep -f 'chroma' 2>/dev/null | wc -l");n=parseInt(s.trim(),10)||0}catch{}}}catch(s){_.debug("SYSTEM","Error counting processes",{},s)}return{claudeMemProcesses:e,claudeCliProcesses:r,chromaProcesses:n,total:e+r+n}}var Uy,w$,wn,yi,S$,Ir,E$,vi,Fy,Vc,$B,ud,Kc=xe(()=>{"use strict";Uy=ie(require("path"),1),w$=require("os"),wn=require("fs"),yi=require("child_process"),S$=require("util");re();wa();Ir=(0,S$.promisify)(yi.exec),E$=Uy.default.join((0,w$.homedir)(),".pilot/memory"),vi=Uy.default.join(E$,"worker.pid"),Fy=["mcp-server","worker-service","pilot-memory","chroma-mcp"],Vc=60,$B=["init","systemd","tini","dumb-init","docker-init","s6-svscan","runsv"],ud="claude.*--output-format.*stream-json"});var Hn=R((qbe,A$)=>{var zB=require("path").relative;A$.exports=HB;var LB=process.cwd();function C$(t,e){for(var r=t.split(/[ ,]+/),n=String(e).toLowerCase(),s=0;s0}function WB(t){if(process.noDeprecation)return!0;var e=process.env.NO_DEPRECATION||"";return C$(e,t)}function ZB(t){if(process.traceDeprecation)return!0;var e=process.env.TRACE_DEPRECATION||"";return C$(e,t)}function gd(t,e){var r=BB(process,"deprecation");if(!(!r&&this._ignored)){var n,s,i,a,o=0,c=!1,l=vd(),u=this._file;for(e?(a=e,i=Sa(l[1]),i.name=a.name,u=i[0]):(o=2,a=Sa(l[o]),i=a);o",r=t.getLineNumber(),n=t.getColumnNumber();t.isEval()&&(e=t.getEvalOrigin()+", "+e);var s=[e,r,n];return s.callSite=t,s.name=t.getFunctionName(),s}function P$(t){var e=t.callSite,r=t.name;r||(r="");var n=e.getThis(),s=n&&e.getTypeName();return s==="Object"&&(s=void 0),s==="Function"&&(s=n.name||s),s&&e.getMethodName()?s+"."+r:r}function VB(t,e,r){var n=new Date().toUTCString(),s=n+" "+this._namespace+" deprecated "+t;if(this._traced){for(var i=0;i{"use strict";gd.exports=GB;gd.exports.format=$$;gd.exports.parse=O$;var WB=/\B(?=(\d{3})+(?!\d))/g,ZB=/(?:\.0*|(\.[^0]+)0+)$/,Ds={b:1,kb:1024,mb:1<<20,gb:1<<30,tb:Math.pow(1024,4),pb:Math.pow(1024,5)},VB=/^((-|\+)?(\d+(?:\.\d+)?)) *(kb|mb|gb|tb|pb)$/i;function GB(t,e){return typeof t=="string"?O$(t):typeof t=="number"?$$(t,e):null}function $$(t,e){if(!Number.isFinite(t))return null;var r=Math.abs(t),n=e&&e.thousandsSeparator||"",s=e&&e.unitSeparator||"",i=e&&e.decimalPlaces!==void 0?e.decimalPlaces:2,a=!!(e&&e.fixedDecimals),o=e&&e.unit||"";(!o||!Ds[o.toLowerCase()])&&(r>=Ds.pb?o="PB":r>=Ds.tb?o="TB":r>=Ds.gb?o="GB":r>=Ds.mb?o="MB":r>=Ds.kb?o="KB":o="B");var c=t/Ds[o.toLowerCase()],l=c.toFixed(i);return a||(l=l.replace(ZB,"$1")),n&&(l=l.split(".").map(function(u,p){return p===0?u.replace(WB,n):u}).join(".")),l+s+o}function O$(t){if(typeof t=="number"&&!isNaN(t))return t;if(typeof t!="string")return null;var e=VB.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(Ds[n]*r)}});var Xc=R(Gy=>{"use strict";var P$=/; *([!#$%&'*+.^_`|~0-9A-Za-z-]+) *= *("(?:[\u000b\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\u000b\u0020-\u00ff])*"|[!#$%&'*+.^_`|~0-9A-Za-z-]+) */g,YB=/^[\u000b\u0020-\u007e\u0080-\u00ff]+$/,C$=/^[!#$%&'*+.^_`|~0-9A-Za-z-]+$/,KB=/\\([\u000b\u0020-\u00ff])/g,JB=/([\\"])/g,I$=/^[!#$%&'*+.^_`|~0-9A-Za-z-]+\/[!#$%&'*+.^_`|~0-9A-Za-z-]+$/;Gy.format=QB;Gy.parse=XB;function QB(t){if(!t||typeof t!="object")throw new TypeError("argument obj is required");var e=t.parameters,r=t.type;if(!r||!I$.test(r))throw new TypeError("invalid type");var n=r;if(e&&typeof e=="object")for(var s,i=Object.keys(e).sort(),a=0;a0&&!YB.test(e))throw new TypeError("invalid parameter value");return'"'+e.replace(JB,"\\$1")+'"'}function rW(t){this.parameters=Object.create(null),this.type=t}});var el=R((Dbe,A$)=>{"use strict";A$.exports=Object.setPrototypeOf||({__proto__:[]}instanceof Array?nW:sW);function nW(t,e){return t.__proto__=e,t}function sW(t,e){for(var r in e)Object.prototype.hasOwnProperty.call(t,r)||(t[r]=e[r]);return t}});var N$=R((Mbe,iW)=>{iW.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 tl=R((zbe,D$)=>{"use strict";var Yy=N$();D$.exports=En;En.message=Yy;En.code=aW(Yy);En.codes=oW(Yy);En.redirect={300:!0,301:!0,302:!0,303:!0,305:!0,307:!0,308:!0};En.empty={204:!0,205:!0,304:!0};En.retry={502:!0,503:!0,504:!0};function aW(t){var e={};return Object.keys(t).forEach(function(n){var s=t[n],i=Number(n);e[s.toLowerCase()]=i}),e}function oW(t){return Object.keys(t).map(function(r){return Number(r)})}function cW(t){var e=t.toLowerCase();if(!Object.prototype.hasOwnProperty.call(En.code,e))throw new Error('invalid status message: "'+t+'"');return En.code[e]}function j$(t){if(!Object.prototype.hasOwnProperty.call(En.message,t))throw new Error("invalid status code: "+t);return En.message[t]}function En(t){if(typeof t=="number")return j$(t);if(typeof t!="string")throw new TypeError("code must be a number or string");var e=parseInt(t,10);return isNaN(e)?cW(t):j$(e)}});var M$=R((Lbe,Ky)=>{typeof Object.create=="function"?Ky.exports=function(e,r){r&&(e.super_=r,e.prototype=Object.create(r.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:Ky.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 z$=R((qbe,Qy)=>{try{if(Jy=require("util"),typeof Jy.inherits!="function")throw"";Qy.exports=Jy.inherits}catch{Qy.exports=M$()}var Jy});var q$=R((Fbe,L$)=>{"use strict";L$.exports=lW;function lW(t){return t.split(" ").map(function(e){return e.slice(0,1).toUpperCase()+e.slice(1)}).join("").replace(/[^ _0-9a-z]/gi,"")}});var xi=R((Ube,bi)=>{"use strict";var uW=Hn()("http-errors"),F$=el(),Ea=tl(),Xy=z$(),pW=q$();bi.exports=vd;bi.exports.HttpError=dW();bi.exports.isHttpError=fW(bi.exports.HttpError);gW(bi.exports,Ea.codes,bi.exports.HttpError);function U$(t){return+(String(t).charAt(0)+"00")}function vd(){for(var t,e,r=500,n={},s=0;s=600)&&uW("non-error status code; use only 4xx or 5xx status codes"),(typeof r!="number"||!Ea.message[r]&&(r<400||r>=600))&&(r=500);var o=vd[r]||vd[U$(r)];t||(t=o?new o(e):new Error(e||Ea.message[r]),Error.captureStackTrace(t,vd)),(!o||!(t instanceof o)||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 dW(){function t(){throw new TypeError("cannot construct abstract class")}return Xy(t,Error),t}function mW(t,e,r){var n=B$(e);function s(i){var a=i??Ea.message[r],o=new Error(a);return Error.captureStackTrace(o,s),F$(o,s.prototype),Object.defineProperty(o,"message",{enumerable:!0,configurable:!0,value:a,writable:!0}),Object.defineProperty(o,"name",{enumerable:!1,configurable:!0,value:n,writable:!0}),o}return Xy(s,t),H$(s,n),s.prototype.status=r,s.prototype.statusCode=r,s.prototype.expose=!0,s}function fW(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 hW(t,e,r){var n=B$(e);function s(i){var a=i??Ea.message[r],o=new Error(a);return Error.captureStackTrace(o,s),F$(o,s.prototype),Object.defineProperty(o,"message",{enumerable:!0,configurable:!0,value:a,writable:!0}),Object.defineProperty(o,"name",{enumerable:!1,configurable:!0,value:n,writable:!0}),o}return Xy(s,t),H$(s,n),s.prototype.status=r,s.prototype.statusCode=r,s.prototype.expose=!1,s}function H$(t,e){var r=Object.getOwnPropertyDescriptor(t,"name");r&&r.configurable&&(r.value=e,Object.defineProperty(t,"name",r))}function gW(t,e,r){e.forEach(function(s){var i,a=pW(Ea.message[s]);switch(U$(s)){case 400:i=mW(r,a,s);break;case 500:i=hW(r,a,s);break}i&&(t[s]=i,t[a]=i)})}function B$(t){return t.slice(-5)==="Error"?t:t+"Error"}});var Z$=R((Hbe,W$)=>{var rl=1e3,nl=rl*60,sl=nl*60,il=sl*24,vW=il*365.25;W$.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return yW(t);if(r==="number"&&isNaN(t)===!1)return e.long?xW(t):bW(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function yW(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*vW;case"days":case"day":case"d":return r*il;case"hours":case"hour":case"hrs":case"hr":case"h":return r*sl;case"minutes":case"minute":case"mins":case"min":case"m":return r*nl;case"seconds":case"second":case"secs":case"sec":case"s":return r*rl;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function bW(t){return t>=il?Math.round(t/il)+"d":t>=sl?Math.round(t/sl)+"h":t>=nl?Math.round(t/nl)+"m":t>=rl?Math.round(t/rl)+"s":t+"ms"}function xW(t){return yd(t,il,"day")||yd(t,sl,"hour")||yd(t,nl,"minute")||yd(t,rl,"second")||t+" ms"}function yd(t,e,r){if(!(t{Ge=V$.exports=tb.debug=tb.default=tb;Ge.coerce=kW;Ge.disable=SW;Ge.enable=wW;Ge.enabled=EW;Ge.humanize=Z$();Ge.names=[];Ge.skips=[];Ge.formatters={};var eb;function _W(t){var e=0,r;for(r in t)e=(e<<5)-e+t.charCodeAt(r),e|=0;return Ge.colors[Math.abs(e)%Ge.colors.length]}function tb(t){function e(){if(e.enabled){var r=e,n=+new Date,s=n-(eb||n);r.diff=s,r.prev=eb,r.curr=n,eb=n;for(var i=new Array(arguments.length),a=0;a{mr=Y$.exports=rb();mr.log=$W;mr.formatArgs=RW;mr.save=OW;mr.load=G$;mr.useColors=TW;mr.storage=typeof chrome<"u"&&typeof chrome.storage<"u"?chrome.storage.local:PW();mr.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"];function TW(){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+)/)}mr.formatters.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}};function RW(t){var e=this.useColors;if(t[0]=(e?"%c":"")+this.namespace+(e?" %c":" ")+t[0]+(e?"%c ":" ")+"+"+mr.humanize(this.diff),!!e){var r="color: "+this.color;t.splice(1,0,r,"color: inherit");var n=0,s=0;t[0].replace(/%[a-zA-Z%]/g,function(i){i!=="%%"&&(n++,i==="%c"&&(s=n))}),t.splice(s,0,r)}}function $W(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function OW(t){try{t==null?mr.storage.removeItem("debug"):mr.storage.debug=t}catch{}}function G$(){var t;try{t=mr.storage.debug}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}mr.enable(G$());function PW(){try{return window.localStorage}catch{}}});var eO=R((qt,X$)=>{var J$=require("tty"),al=require("util");qt=X$.exports=rb();qt.init=MW;qt.log=NW;qt.formatArgs=AW;qt.save=jW;qt.load=Q$;qt.useColors=IW;qt.colors=[6,2,3,4,5,1];qt.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(s,i){return i.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 ka=parseInt(process.env.DEBUG_FD,10)||2;ka!==1&&ka!==2&&al.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 CW=ka===1?process.stdout:ka===2?process.stderr:DW(ka);function IW(){return"colors"in qt.inspectOpts?!!qt.inspectOpts.colors:J$.isatty(ka)}qt.formatters.o=function(t){return this.inspectOpts.colors=this.useColors,al.inspect(t,this.inspectOpts).split(` -`).map(function(e){return e.trim()}).join(" ")};qt.formatters.O=function(t){return this.inspectOpts.colors=this.useColors,al.inspect(t,this.inspectOpts)};function AW(t){var e=this.namespace,r=this.useColors;if(r){var n=this.color,s=" \x1B[3"+n+";1m"+e+" \x1B[0m";t[0]=s+t[0].split(` +}`)(t,gd,this,e,s);return i}function JB(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 s=this,i=vd(),a=Sa(i[1]);a.name=e,"value"in n&&(n=qB(t,e,r));var o=n.get,c=n.set;typeof o=="function"&&(n.get=function(){return gd.call(s,r,a),o.apply(this,arguments)}),typeof c=="function"&&(n.set=function(){return gd.call(s,r,a),c.apply(this,arguments)}),Object.defineProperty(t,e,n)}function I$(t,e,r){var n=new Error,s;return Object.defineProperty(n,"constructor",{value:I$}),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 s!==void 0?s:s=UB.call(this,r)},set:function(a){s=a}}),n}});var Ea=R((Fbe,yd)=>{"use strict";yd.exports=tW;yd.exports.format=N$;yd.exports.parse=j$;var QB=/\B(?=(\d{3})+(?!\d))/g,XB=/(?:\.0*|(\.[^0]+)0+)$/,Ds={b:1,kb:1024,mb:1<<20,gb:1<<30,tb:Math.pow(1024,4),pb:Math.pow(1024,5)},eW=/^((-|\+)?(\d+(?:\.\d+)?)) *(kb|mb|gb|tb|pb)$/i;function tW(t,e){return typeof t=="string"?j$(t):typeof t=="number"?N$(t,e):null}function N$(t,e){if(!Number.isFinite(t))return null;var r=Math.abs(t),n=e&&e.thousandsSeparator||"",s=e&&e.unitSeparator||"",i=e&&e.decimalPlaces!==void 0?e.decimalPlaces:2,a=!!(e&&e.fixedDecimals),o=e&&e.unit||"";(!o||!Ds[o.toLowerCase()])&&(r>=Ds.pb?o="PB":r>=Ds.tb?o="TB":r>=Ds.gb?o="GB":r>=Ds.mb?o="MB":r>=Ds.kb?o="KB":o="B");var c=t/Ds[o.toLowerCase()],l=c.toFixed(i);return a||(l=l.replace(XB,"$1")),n&&(l=l.split(".").map(function(u,p){return p===0?u.replace(QB,n):u}).join(".")),l+s+o}function j$(t){if(typeof t=="number"&&!isNaN(t))return t;if(typeof t!="string")return null;var e=eW.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(Ds[n]*r)}});var tl=R(Qy=>{"use strict";var D$=/; *([!#$%&'*+.^_`|~0-9A-Za-z-]+) *= *("(?:[\u000b\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\u000b\u0020-\u00ff])*"|[!#$%&'*+.^_`|~0-9A-Za-z-]+) */g,rW=/^[\u000b\u0020-\u007e\u0080-\u00ff]+$/,M$=/^[!#$%&'*+.^_`|~0-9A-Za-z-]+$/,nW=/\\([\u000b\u0020-\u00ff])/g,sW=/([\\"])/g,z$=/^[!#$%&'*+.^_`|~0-9A-Za-z-]+\/[!#$%&'*+.^_`|~0-9A-Za-z-]+$/;Qy.format=iW;Qy.parse=aW;function iW(t){if(!t||typeof t!="object")throw new TypeError("argument obj is required");var e=t.parameters,r=t.type;if(!r||!z$.test(r))throw new TypeError("invalid type");var n=r;if(e&&typeof e=="object")for(var s,i=Object.keys(e).sort(),a=0;a0&&!rW.test(e))throw new TypeError("invalid parameter value");return'"'+e.replace(sW,"\\$1")+'"'}function lW(t){this.parameters=Object.create(null),this.type=t}});var rl=R((Hbe,L$)=>{"use strict";L$.exports=Object.setPrototypeOf||({__proto__:[]}instanceof Array?uW:pW);function uW(t,e){return t.__proto__=e,t}function pW(t,e){for(var r in e)Object.prototype.hasOwnProperty.call(t,r)||(t[r]=e[r]);return t}});var q$=R((Bbe,dW)=>{dW.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 nl=R((Wbe,U$)=>{"use strict";var Xy=q$();U$.exports=En;En.message=Xy;En.code=mW(Xy);En.codes=fW(Xy);En.redirect={300:!0,301:!0,302:!0,303:!0,305:!0,307:!0,308:!0};En.empty={204:!0,205:!0,304:!0};En.retry={502:!0,503:!0,504:!0};function mW(t){var e={};return Object.keys(t).forEach(function(n){var s=t[n],i=Number(n);e[s.toLowerCase()]=i}),e}function fW(t){return Object.keys(t).map(function(r){return Number(r)})}function hW(t){var e=t.toLowerCase();if(!Object.prototype.hasOwnProperty.call(En.code,e))throw new Error('invalid status message: "'+t+'"');return En.code[e]}function F$(t){if(!Object.prototype.hasOwnProperty.call(En.message,t))throw new Error("invalid status code: "+t);return En.message[t]}function En(t){if(typeof t=="number")return F$(t);if(typeof t!="string")throw new TypeError("code must be a number or string");var e=parseInt(t,10);return isNaN(e)?hW(t):F$(e)}});var H$=R((Zbe,eb)=>{typeof Object.create=="function"?eb.exports=function(e,r){r&&(e.super_=r,e.prototype=Object.create(r.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:eb.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 B$=R((Vbe,rb)=>{try{if(tb=require("util"),typeof tb.inherits!="function")throw"";rb.exports=tb.inherits}catch{rb.exports=H$()}var tb});var Z$=R((Gbe,W$)=>{"use strict";W$.exports=gW;function gW(t){return t.split(" ").map(function(e){return e.slice(0,1).toUpperCase()+e.slice(1)}).join("").replace(/[^ _0-9a-z]/gi,"")}});var _i=R((Ybe,xi)=>{"use strict";var vW=Hn()("http-errors"),V$=rl(),ka=nl(),nb=B$(),yW=Z$();xi.exports=bd;xi.exports.HttpError=bW();xi.exports.isHttpError=_W(xi.exports.HttpError);SW(xi.exports,ka.codes,xi.exports.HttpError);function G$(t){return+(String(t).charAt(0)+"00")}function bd(){for(var t,e,r=500,n={},s=0;s=600)&&vW("non-error status code; use only 4xx or 5xx status codes"),(typeof r!="number"||!ka.message[r]&&(r<400||r>=600))&&(r=500);var o=bd[r]||bd[G$(r)];t||(t=o?new o(e):new Error(e||ka.message[r]),Error.captureStackTrace(t,bd)),(!o||!(t instanceof o)||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 bW(){function t(){throw new TypeError("cannot construct abstract class")}return nb(t,Error),t}function xW(t,e,r){var n=K$(e);function s(i){var a=i??ka.message[r],o=new Error(a);return Error.captureStackTrace(o,s),V$(o,s.prototype),Object.defineProperty(o,"message",{enumerable:!0,configurable:!0,value:a,writable:!0}),Object.defineProperty(o,"name",{enumerable:!1,configurable:!0,value:n,writable:!0}),o}return nb(s,t),Y$(s,n),s.prototype.status=r,s.prototype.statusCode=r,s.prototype.expose=!0,s}function _W(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 wW(t,e,r){var n=K$(e);function s(i){var a=i??ka.message[r],o=new Error(a);return Error.captureStackTrace(o,s),V$(o,s.prototype),Object.defineProperty(o,"message",{enumerable:!0,configurable:!0,value:a,writable:!0}),Object.defineProperty(o,"name",{enumerable:!1,configurable:!0,value:n,writable:!0}),o}return nb(s,t),Y$(s,n),s.prototype.status=r,s.prototype.statusCode=r,s.prototype.expose=!1,s}function Y$(t,e){var r=Object.getOwnPropertyDescriptor(t,"name");r&&r.configurable&&(r.value=e,Object.defineProperty(t,"name",r))}function SW(t,e,r){e.forEach(function(s){var i,a=yW(ka.message[s]);switch(G$(s)){case 400:i=xW(r,a,s);break;case 500:i=wW(r,a,s);break}i&&(t[s]=i,t[a]=i)})}function K$(t){return t.slice(-5)==="Error"?t:t+"Error"}});var Q$=R((Kbe,J$)=>{var sl=1e3,il=sl*60,al=il*60,ol=al*24,EW=ol*365.25;J$.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return kW(t);if(r==="number"&&isNaN(t)===!1)return e.long?RW(t):TW(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function kW(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*EW;case"days":case"day":case"d":return r*ol;case"hours":case"hour":case"hrs":case"hr":case"h":return r*al;case"minutes":case"minute":case"mins":case"min":case"m":return r*il;case"seconds":case"second":case"secs":case"sec":case"s":return r*sl;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function TW(t){return t>=ol?Math.round(t/ol)+"d":t>=al?Math.round(t/al)+"h":t>=il?Math.round(t/il)+"m":t>=sl?Math.round(t/sl)+"s":t+"ms"}function RW(t){return xd(t,ol,"day")||xd(t,al,"hour")||xd(t,il,"minute")||xd(t,sl,"second")||t+" ms"}function xd(t,e,r){if(!(t{Ge=X$.exports=ib.debug=ib.default=ib;Ge.coerce=IW;Ge.disable=PW;Ge.enable=OW;Ge.enabled=CW;Ge.humanize=Q$();Ge.names=[];Ge.skips=[];Ge.formatters={};var sb;function $W(t){var e=0,r;for(r in t)e=(e<<5)-e+t.charCodeAt(r),e|=0;return Ge.colors[Math.abs(e)%Ge.colors.length]}function ib(t){function e(){if(e.enabled){var r=e,n=+new Date,s=n-(sb||n);r.diff=s,r.prev=sb,r.curr=n,sb=n;for(var i=new Array(arguments.length),a=0;a{mr=tO.exports=ab();mr.log=jW;mr.formatArgs=NW;mr.save=DW;mr.load=eO;mr.useColors=AW;mr.storage=typeof chrome<"u"&&typeof chrome.storage<"u"?chrome.storage.local:MW();mr.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"];function AW(){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+)/)}mr.formatters.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}};function NW(t){var e=this.useColors;if(t[0]=(e?"%c":"")+this.namespace+(e?" %c":" ")+t[0]+(e?"%c ":" ")+"+"+mr.humanize(this.diff),!!e){var r="color: "+this.color;t.splice(1,0,r,"color: inherit");var n=0,s=0;t[0].replace(/%[a-zA-Z%]/g,function(i){i!=="%%"&&(n++,i==="%c"&&(s=n))}),t.splice(s,0,r)}}function jW(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function DW(t){try{t==null?mr.storage.removeItem("debug"):mr.storage.debug=t}catch{}}function eO(){var t;try{t=mr.storage.debug}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}mr.enable(eO());function MW(){try{return window.localStorage}catch{}}});var aO=R((qt,iO)=>{var nO=require("tty"),cl=require("util");qt=iO.exports=ab();qt.init=BW;qt.log=FW;qt.formatArgs=qW;qt.save=UW;qt.load=sO;qt.useColors=LW;qt.colors=[6,2,3,4,5,1];qt.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(s,i){return i.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 Ta=parseInt(process.env.DEBUG_FD,10)||2;Ta!==1&&Ta!==2&&cl.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 zW=Ta===1?process.stdout:Ta===2?process.stderr:HW(Ta);function LW(){return"colors"in qt.inspectOpts?!!qt.inspectOpts.colors:nO.isatty(Ta)}qt.formatters.o=function(t){return this.inspectOpts.colors=this.useColors,cl.inspect(t,this.inspectOpts).split(` +`).map(function(e){return e.trim()}).join(" ")};qt.formatters.O=function(t){return this.inspectOpts.colors=this.useColors,cl.inspect(t,this.inspectOpts)};function qW(t){var e=this.namespace,r=this.useColors;if(r){var n=this.color,s=" \x1B[3"+n+";1m"+e+" \x1B[0m";t[0]=s+t[0].split(` `).join(` -`+s),t.push("\x1B[3"+n+"m+"+qt.humanize(this.diff)+"\x1B[0m")}else t[0]=new Date().toUTCString()+" "+e+" "+t[0]}function NW(){return CW.write(al.format.apply(al,arguments)+` -`)}function jW(t){t==null?delete process.env.DEBUG:process.env.DEBUG=t}function Q$(){return process.env.DEBUG}function DW(t){var e,r=process.binding("tty_wrap");switch(r.guessHandleType(t)){case"TTY":e=new J$.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 s=require("net");e=new s.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 MW(t){t.inspectOpts={};for(var e=Object.keys(qt.inspectOpts),r=0;r{typeof process<"u"&&process.type==="renderer"?nb.exports=K$():nb.exports=eO()});var sb=R((Wbe,rO)=>{"use strict";var zW=require("events").EventEmitter,LW=require("fs").ReadStream,tO=require("stream"),_i=require("zlib");rO.exports=qW;function qW(t,e){return ZW(t)?FW(t):VW(t)?HW(t):BW(t)&&t.destroy(),WW(t)&&e&&(t.removeAllListeners("error"),t.addListener("error",GW)),t}function FW(t){t.destroy(),typeof t.close=="function"&&t.on("open",KW)}function UW(t){if(t._hadError===!0){var e=t._binding===null?"_binding":"_handle";t[e]={close:function(){this[e]=null}}}t.close()}function HW(t){typeof t.destroy=="function"?t._binding?(t.destroy(),t._processing?(t._needDrain=!0,t.once("drain",YW)):t._binding.clear()):t._destroy&&t._destroy!==tO.Transform.prototype._destroy?t.destroy():t._destroy&&typeof t.close=="function"?(t.destroyed=!0,t.close()):t.destroy():typeof t.close=="function"&&UW(t)}function BW(t){return t instanceof tO&&typeof t.destroy=="function"}function WW(t){return t instanceof zW}function ZW(t){return t instanceof LW}function VW(t){return t instanceof _i.Gzip||t instanceof _i.Gunzip||t instanceof _i.Deflate||t instanceof _i.DeflateRaw||t instanceof _i.Inflate||t instanceof _i.InflateRaw||t instanceof _i.Unzip}function GW(){}function YW(){this._binding.clear()}function KW(){typeof this.fd=="number"&&this.close()}});var wi=R((Zbe,nO)=>{"use strict";var bd=require("buffer"),Ta=bd.Buffer,tn={},rn;for(rn in bd)bd.hasOwnProperty(rn)&&(rn==="SlowBuffer"||rn==="Buffer"||(tn[rn]=bd[rn]));var Ra=tn.Buffer={};for(rn in Ta)Ta.hasOwnProperty(rn)&&(rn==="allocUnsafe"||rn==="allocUnsafeSlow"||(Ra[rn]=Ta[rn]));tn.Buffer.prototype=Ta.prototype;(!Ra.from||Ra.from===Uint8Array.from)&&(Ra.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 Ta(t,e,r)});Ra.alloc||(Ra.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=Ta(t);return!e||e.length===0?n.fill(0):typeof r=="string"?n.fill(e,r):n.fill(e),n});if(!tn.kStringMaxLength)try{tn.kStringMaxLength=process.binding("buffer").kStringMaxLength}catch{}tn.constants||(tn.constants={MAX_LENGTH:tn.kMaxLength},tn.kStringMaxLength&&(tn.constants.MAX_STRING_LENGTH=tn.kStringMaxLength));nO.exports=tn});var iO=R(ob=>{"use strict";var sO="\uFEFF";ob.PrependBOM=ib;function ib(t,e){this.encoder=t,this.addBOM=!0}ib.prototype.write=function(t){return this.addBOM&&(t=sO+t,this.addBOM=!1),this.encoder.write(t)};ib.prototype.end=function(){return this.encoder.end()};ob.StripBOM=ab;function ab(t,e){this.decoder=t,this.pass=!1,this.options=e||{}}ab.prototype.write=function(t){var e=this.decoder.write(t);return this.pass||!e||(e[0]===sO&&(e=e.slice(1),typeof this.options.stripBOM=="function"&&this.options.stripBOM()),this.pass=!0),e};ab.prototype.end=function(){return this.decoder.end()}});var cO=R((Gbe,oO)=>{"use strict";var cl=wi().Buffer;oO.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:cb};function cb(t,e){this.enc=t.encodingName,this.bomAware=t.bomAware,this.enc==="base64"?this.encoder=ub:this.enc==="cesu8"&&(this.enc="utf8",this.encoder=pb,cl.from("eda0bdedb2a9","hex").toString()!=="\u{1F4A9}"&&(this.decoder=db,this.defaultCharUnicode=e.defaultCharUnicode))}cb.prototype.encoder=lb;cb.prototype.decoder=aO;var xd=require("string_decoder").StringDecoder;xd.prototype.end||(xd.prototype.end=function(){});function aO(t,e){xd.call(this,e.enc)}aO.prototype=xd.prototype;function lb(t,e){this.enc=e.enc}lb.prototype.write=function(t){return cl.from(t,this.enc)};lb.prototype.end=function(){};function ub(t,e){this.prevStr=""}ub.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),cl.from(t,"base64")};ub.prototype.end=function(){return cl.from(this.prevStr,"base64")};function pb(t,e){}pb.prototype.write=function(t){for(var e=cl.alloc(t.length*3),r=0,n=0;n>>6),e[r++]=128+(s&63)):(e[r++]=224+(s>>>12),e[r++]=128+(s>>>6&63),e[r++]=128+(s&63))}return e.slice(0,r)};pb.prototype.end=function(){};function db(t,e){this.acc=0,this.contBytes=0,this.accBytes=0,this.defaultCharUnicode=e.defaultCharUnicode}db.prototype.write=function(t){for(var e=this.acc,r=this.contBytes,n=this.accBytes,s="",i=0;i0&&(s+=this.defaultCharUnicode,r=0),a<128?s+=String.fromCharCode(a):a<224?(e=a&31,r=1,n=1):a<240?(e=a&15,r=2,n=1):s+=this.defaultCharUnicode):r>0?(e=e<<6|a&63,r--,n++,r===0&&(n===2&&e<128&&e>0?s+=this.defaultCharUnicode:n===3&&e<2048?s+=this.defaultCharUnicode:s+=String.fromCharCode(e))):s+=this.defaultCharUnicode}return this.acc=e,this.contBytes=r,this.accBytes=n,s};db.prototype.end=function(){var t=0;return this.contBytes>0&&(t+=this.defaultCharUnicode),t}});var uO=R(yb=>{"use strict";var _d=wi().Buffer;yb.utf16be=wd;function wd(){}wd.prototype.encoder=mb;wd.prototype.decoder=fb;wd.prototype.bomAware=!0;function mb(){}mb.prototype.write=function(t){for(var e=_d.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,s=0,i=Math.min(t.length-t.length%2,64),a=0;an?r="utf-16be":s{"use strict";var Bn=wi().Buffer;kd.utf7=Sd;kd.unicode11utf7="utf7";function Sd(t,e){this.iconv=e}Sd.prototype.encoder=xb;Sd.prototype.decoder=_b;Sd.prototype.bomAware=!0;var JW=/[^A-Za-z0-9'\(\),-\.\/:\? \n\r\t]+/g;function xb(t,e){this.iconv=e.iconv}xb.prototype.write=function(t){return Bn.from(t.replace(JW,function(e){return"+"+(e==="+"?"":this.iconv.encode(e,"utf16-be").toString("base64").replace(/=+$/,""))+"-"}.bind(this)))};xb.prototype.end=function(){};function _b(t,e){this.iconv=e.iconv,this.inBase64=!1,this.base64Accum=""}var QW=/[A-Za-z0-9\/+]/,wb=[];for(ll=0;ll<256;ll++)wb[ll]=QW.test(String.fromCharCode(ll));var ll,XW=43,Si=45,bb=38;_b.prototype.write=function(t){for(var e="",r=0,n=this.inBase64,s=this.base64Accum,i=0;i0&&(t=this.iconv.decode(Bn.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",t};kd.utf7imap=Ed;function Ed(t,e){this.iconv=e}Ed.prototype.encoder=Sb;Ed.prototype.decoder=Eb;Ed.prototype.bomAware=!0;function Sb(t,e){this.iconv=e.iconv,this.inBase64=!1,this.base64Accum=Bn.alloc(6),this.base64AccumIdx=0}Sb.prototype.write=function(t){for(var e=this.inBase64,r=this.base64Accum,n=this.base64AccumIdx,s=Bn.alloc(t.length*5+10),i=0,a=0;a0&&(i+=s.write(r.slice(0,n).toString("base64").replace(/\//g,",").replace(/=+$/,""),i),n=0),s[i++]=Si,e=!1),e||(s[i++]=o,o===bb&&(s[i++]=Si))):(e||(s[i++]=bb,e=!0),e&&(r[n++]=o>>8,r[n++]=o&255,n==r.length&&(i+=s.write(r.toString("base64").replace(/\//g,","),i),n=0)))}return this.inBase64=e,this.base64AccumIdx=n,s.slice(0,i)};Sb.prototype.end=function(){var t=Bn.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++]=Si,this.inBase64=!1),t.slice(0,e)};function Eb(t,e){this.iconv=e.iconv,this.inBase64=!1,this.base64Accum=""}var pO=wb.slice();pO[44]=!0;Eb.prototype.write=function(t){for(var e="",r=0,n=this.inBase64,s=this.base64Accum,i=0;i0&&(t=this.iconv.decode(Bn.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",t}});var fO=R(mO=>{"use strict";var Td=wi().Buffer;mO._sbcs=kb;function kb(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=Td.from(t.chars,"ucs2");for(var s=Td.alloc(65536,e.defaultCharSingleByte.charCodeAt(0)),n=0;n{"use strict";hO.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 yO=R((Xbe,vO)=>{"use strict";vO.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 +`+s),t.push("\x1B[3"+n+"m+"+qt.humanize(this.diff)+"\x1B[0m")}else t[0]=new Date().toUTCString()+" "+e+" "+t[0]}function FW(){return zW.write(cl.format.apply(cl,arguments)+` +`)}function UW(t){t==null?delete process.env.DEBUG:process.env.DEBUG=t}function sO(){return process.env.DEBUG}function HW(t){var e,r=process.binding("tty_wrap");switch(r.guessHandleType(t)){case"TTY":e=new nO.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 s=require("net");e=new s.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 BW(t){t.inspectOpts={};for(var e=Object.keys(qt.inspectOpts),r=0;r{typeof process<"u"&&process.type==="renderer"?ob.exports=rO():ob.exports=aO()});var cb=R((Qbe,cO)=>{"use strict";var WW=require("events").EventEmitter,ZW=require("fs").ReadStream,oO=require("stream"),wi=require("zlib");cO.exports=VW;function VW(t,e){return XW(t)?GW(t):eZ(t)?KW(t):JW(t)&&t.destroy(),QW(t)&&e&&(t.removeAllListeners("error"),t.addListener("error",tZ)),t}function GW(t){t.destroy(),typeof t.close=="function"&&t.on("open",nZ)}function YW(t){if(t._hadError===!0){var e=t._binding===null?"_binding":"_handle";t[e]={close:function(){this[e]=null}}}t.close()}function KW(t){typeof t.destroy=="function"?t._binding?(t.destroy(),t._processing?(t._needDrain=!0,t.once("drain",rZ)):t._binding.clear()):t._destroy&&t._destroy!==oO.Transform.prototype._destroy?t.destroy():t._destroy&&typeof t.close=="function"?(t.destroyed=!0,t.close()):t.destroy():typeof t.close=="function"&&YW(t)}function JW(t){return t instanceof oO&&typeof t.destroy=="function"}function QW(t){return t instanceof WW}function XW(t){return t instanceof ZW}function eZ(t){return t instanceof wi.Gzip||t instanceof wi.Gunzip||t instanceof wi.Deflate||t instanceof wi.DeflateRaw||t instanceof wi.Inflate||t instanceof wi.InflateRaw||t instanceof wi.Unzip}function tZ(){}function rZ(){this._binding.clear()}function nZ(){typeof this.fd=="number"&&this.close()}});var Si=R((Xbe,lO)=>{"use strict";var _d=require("buffer"),Ra=_d.Buffer,tn={},rn;for(rn in _d)_d.hasOwnProperty(rn)&&(rn==="SlowBuffer"||rn==="Buffer"||(tn[rn]=_d[rn]));var $a=tn.Buffer={};for(rn in Ra)Ra.hasOwnProperty(rn)&&(rn==="allocUnsafe"||rn==="allocUnsafeSlow"||($a[rn]=Ra[rn]));tn.Buffer.prototype=Ra.prototype;(!$a.from||$a.from===Uint8Array.from)&&($a.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 Ra(t,e,r)});$a.alloc||($a.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=Ra(t);return!e||e.length===0?n.fill(0):typeof r=="string"?n.fill(e,r):n.fill(e),n});if(!tn.kStringMaxLength)try{tn.kStringMaxLength=process.binding("buffer").kStringMaxLength}catch{}tn.constants||(tn.constants={MAX_LENGTH:tn.kMaxLength},tn.kStringMaxLength&&(tn.constants.MAX_STRING_LENGTH=tn.kStringMaxLength));lO.exports=tn});var pO=R(pb=>{"use strict";var uO="\uFEFF";pb.PrependBOM=lb;function lb(t,e){this.encoder=t,this.addBOM=!0}lb.prototype.write=function(t){return this.addBOM&&(t=uO+t,this.addBOM=!1),this.encoder.write(t)};lb.prototype.end=function(){return this.encoder.end()};pb.StripBOM=ub;function ub(t,e){this.decoder=t,this.pass=!1,this.options=e||{}}ub.prototype.write=function(t){var e=this.decoder.write(t);return this.pass||!e||(e[0]===uO&&(e=e.slice(1),typeof this.options.stripBOM=="function"&&this.options.stripBOM()),this.pass=!0),e};ub.prototype.end=function(){return this.decoder.end()}});var fO=R((txe,mO)=>{"use strict";var ul=Si().Buffer;mO.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:db};function db(t,e){this.enc=t.encodingName,this.bomAware=t.bomAware,this.enc==="base64"?this.encoder=fb:this.enc==="cesu8"&&(this.enc="utf8",this.encoder=hb,ul.from("eda0bdedb2a9","hex").toString()!=="\u{1F4A9}"&&(this.decoder=gb,this.defaultCharUnicode=e.defaultCharUnicode))}db.prototype.encoder=mb;db.prototype.decoder=dO;var wd=require("string_decoder").StringDecoder;wd.prototype.end||(wd.prototype.end=function(){});function dO(t,e){wd.call(this,e.enc)}dO.prototype=wd.prototype;function mb(t,e){this.enc=e.enc}mb.prototype.write=function(t){return ul.from(t,this.enc)};mb.prototype.end=function(){};function fb(t,e){this.prevStr=""}fb.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),ul.from(t,"base64")};fb.prototype.end=function(){return ul.from(this.prevStr,"base64")};function hb(t,e){}hb.prototype.write=function(t){for(var e=ul.alloc(t.length*3),r=0,n=0;n>>6),e[r++]=128+(s&63)):(e[r++]=224+(s>>>12),e[r++]=128+(s>>>6&63),e[r++]=128+(s&63))}return e.slice(0,r)};hb.prototype.end=function(){};function gb(t,e){this.acc=0,this.contBytes=0,this.accBytes=0,this.defaultCharUnicode=e.defaultCharUnicode}gb.prototype.write=function(t){for(var e=this.acc,r=this.contBytes,n=this.accBytes,s="",i=0;i0&&(s+=this.defaultCharUnicode,r=0),a<128?s+=String.fromCharCode(a):a<224?(e=a&31,r=1,n=1):a<240?(e=a&15,r=2,n=1):s+=this.defaultCharUnicode):r>0?(e=e<<6|a&63,r--,n++,r===0&&(n===2&&e<128&&e>0?s+=this.defaultCharUnicode:n===3&&e<2048?s+=this.defaultCharUnicode:s+=String.fromCharCode(e))):s+=this.defaultCharUnicode}return this.acc=e,this.contBytes=r,this.accBytes=n,s};gb.prototype.end=function(){var t=0;return this.contBytes>0&&(t+=this.defaultCharUnicode),t}});var gO=R(wb=>{"use strict";var Sd=Si().Buffer;wb.utf16be=Ed;function Ed(){}Ed.prototype.encoder=vb;Ed.prototype.decoder=yb;Ed.prototype.bomAware=!0;function vb(){}vb.prototype.write=function(t){for(var e=Sd.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,s=0,i=Math.min(t.length-t.length%2,64),a=0;an?r="utf-16be":s{"use strict";var Bn=Si().Buffer;Rd.utf7=kd;Rd.unicode11utf7="utf7";function kd(t,e){this.iconv=e}kd.prototype.encoder=Eb;kd.prototype.decoder=kb;kd.prototype.bomAware=!0;var sZ=/[^A-Za-z0-9'\(\),-\.\/:\? \n\r\t]+/g;function Eb(t,e){this.iconv=e.iconv}Eb.prototype.write=function(t){return Bn.from(t.replace(sZ,function(e){return"+"+(e==="+"?"":this.iconv.encode(e,"utf16-be").toString("base64").replace(/=+$/,""))+"-"}.bind(this)))};Eb.prototype.end=function(){};function kb(t,e){this.iconv=e.iconv,this.inBase64=!1,this.base64Accum=""}var iZ=/[A-Za-z0-9\/+]/,Tb=[];for(pl=0;pl<256;pl++)Tb[pl]=iZ.test(String.fromCharCode(pl));var pl,aZ=43,Ei=45,Sb=38;kb.prototype.write=function(t){for(var e="",r=0,n=this.inBase64,s=this.base64Accum,i=0;i0&&(t=this.iconv.decode(Bn.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",t};Rd.utf7imap=Td;function Td(t,e){this.iconv=e}Td.prototype.encoder=Rb;Td.prototype.decoder=$b;Td.prototype.bomAware=!0;function Rb(t,e){this.iconv=e.iconv,this.inBase64=!1,this.base64Accum=Bn.alloc(6),this.base64AccumIdx=0}Rb.prototype.write=function(t){for(var e=this.inBase64,r=this.base64Accum,n=this.base64AccumIdx,s=Bn.alloc(t.length*5+10),i=0,a=0;a0&&(i+=s.write(r.slice(0,n).toString("base64").replace(/\//g,",").replace(/=+$/,""),i),n=0),s[i++]=Ei,e=!1),e||(s[i++]=o,o===Sb&&(s[i++]=Ei))):(e||(s[i++]=Sb,e=!0),e&&(r[n++]=o>>8,r[n++]=o&255,n==r.length&&(i+=s.write(r.toString("base64").replace(/\//g,","),i),n=0)))}return this.inBase64=e,this.base64AccumIdx=n,s.slice(0,i)};Rb.prototype.end=function(){var t=Bn.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++]=Ei,this.inBase64=!1),t.slice(0,e)};function $b(t,e){this.iconv=e.iconv,this.inBase64=!1,this.base64Accum=""}var vO=Tb.slice();vO[44]=!0;$b.prototype.write=function(t){for(var e="",r=0,n=this.inBase64,s=this.base64Accum,i=0;i0&&(t=this.iconv.decode(Bn.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",t}});var xO=R(bO=>{"use strict";var $d=Si().Buffer;bO._sbcs=Ob;function Ob(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=$d.from(t.chars,"ucs2");for(var s=$d.alloc(65536,e.defaultCharSingleByte.charCodeAt(0)),n=0;n{"use strict";_O.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 EO=R((axe,SO)=>{"use strict";SO.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 _O=R(xO=>{"use strict";var Oa=wi().Buffer;xO._dbcs=us;var Ar=-1,bO=-2,nn=-10,Wn=-1e3,$a=new Array(256),ul=-1;for(Rd=0;Rd<256;Rd++)$a[Rd]=Ar;var Rd;function us(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]=$a.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 s=r[e[n]];if(s==Ar)r[e[n]]=Wn-this.decodeTables.length,this.decodeTables.push(r=$a.slice(0));else if(s<=Wn)r=this.decodeTables[Wn-s];else throw new Error("Overwrite byte in "+this.encodingName+", addr: "+t.toString(16))}return r};us.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)};us.prototype._getEncodeBucket=function(t){var e=t>>8;return this.encodeTable[e]===void 0&&(this.encodeTable[e]=$a.slice(0)),this.encodeTable[e]};us.prototype._setEncodeChar=function(t,e){var r=this._getEncodeBucket(t),n=t&255;r[n]<=nn?this.encodeTableSeq[nn-r[n]][ul]=e:r[n]==Ar&&(r[n]=e)};us.prototype._setEncodeSequence=function(t,e){var r=t[0],n=this._getEncodeBucket(r),s=r&255,i;n[s]<=nn?i=this.encodeTableSeq[nn-n[s]]:(i={},n[s]!==Ar&&(i[ul]=n[s]),n[s]=nn-this.encodeTableSeq.length,this.encodeTableSeq.push(i));for(var a=1;a=0?this._setEncodeChar(i,a):i<=Wn?this._fillEncodeTable(Wn-i,a<<8,r):i<=nn&&this._setEncodeSequence(this.decodeTableSeq[nn-i],a))}};function $d(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}$d.prototype.write=function(t){for(var e=Oa.alloc(t.length*(this.gb18030?4:3)),r=this.leadSurrogate,n=this.seqObj,s=-1,i=0,a=0;;){if(s===-1){if(i==t.length)break;var o=t.charCodeAt(i++)}else{var o=s;s=-1}if(55296<=o&&o<57344)if(o<56320)if(r===-1){r=o;continue}else r=o,o=Ar;else r!==-1?(o=65536+(r-55296)*1024+(o-56320),r=-1):o=Ar;else r!==-1&&(s=o,o=Ar,r=-1);var c=Ar;if(n!==void 0&&o!=Ar){var l=n[o];if(typeof l=="object"){n=l;continue}else typeof l=="number"?c=l:l==null&&(l=n[ul],l!==void 0&&(c=l,s=o));n=void 0}else if(o>=0){var u=this.encodeTable[o>>8];if(u!==void 0&&(c=u[o&255]),c<=nn){n=this.encodeTableSeq[nn-c];continue}if(c==Ar&&this.gb18030){var p=Ob(this.gb18030.uChars,o);if(p!=-1){var c=this.gb18030.gbChars[p]+(o-this.gb18030.uChars[p]);e[a++]=129+Math.floor(c/12600),c=c%12600,e[a++]=48+Math.floor(c/1260),c=c%1260,e[a++]=129+Math.floor(c/10),c=c%10,e[a++]=48+c;continue}}}c===Ar&&(c=this.defaultCharSingleByte),c<256?e[a++]=c:c<65536?(e[a++]=c>>8,e[a++]=c&255):(e[a++]=c>>16,e[a++]=c>>8&255,e[a++]=c&255)}return this.seqObj=n,this.leadSurrogate=r,e.slice(0,a)};$d.prototype.end=function(){if(!(this.leadSurrogate===-1&&this.seqObj===void 0)){var t=Oa.alloc(10),e=0;if(this.seqObj){var r=this.seqObj[ul];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)}};$d.prototype.findIdx=Ob;function $b(t,e){this.nodeIdx=0,this.prevBuf=Oa.alloc(0),this.decodeTables=e.decodeTables,this.decodeTableSeq=e.decodeTableSeq,this.defaultCharUnicode=e.defaultCharUnicode,this.gb18030=e.gb18030}$b.prototype.write=function(t){var e=Oa.alloc(t.length*2),r=this.nodeIdx,n=this.prevBuf,s=this.prevBuf.length,i=-this.prevBuf.length,a;s>0&&(n=Oa.concat([n,t.slice(0,10)]));for(var o=0,c=0;o=0?t[o]:n[o+s],a=this.decodeTables[r][l];if(!(a>=0))if(a===Ar)o=i,a=this.defaultCharUnicode.charCodeAt(0);else if(a===bO){var u=i>=0?t.slice(i,o+1):n.slice(i+s,o+1+s),p=(u[0]-129)*12600+(u[1]-48)*1260+(u[2]-129)*10+(u[3]-48),d=Ob(this.gb18030.gbChars,p);a=this.gb18030.uChars[d]+p-this.gb18030.gbChars[d]}else if(a<=Wn){r=Wn-a;continue}else if(a<=nn){for(var m=this.decodeTableSeq[nn-a],f=0;f>8;a=m[m.length-1]}else throw new Error("iconv-lite internal error: invalid decoding table value "+a+" at "+r+"/"+l);if(a>65535){a-=65536;var v=55296+Math.floor(a/1024);e[c++]=v&255,e[c++]=v>>8,a=56320+a%1024}e[c++]=a&255,e[c++]=a>>8,r=0,i=o+1}return this.nodeIdx=r,this.prevBuf=i>=0?t.slice(i):n.slice(i+s),e.slice(0,c).toString("ucs2")};$b.prototype.end=function(){for(var t="";this.prevBuf.length>0;){t+=this.defaultCharUnicode;var e=this.prevBuf.slice(1);this.prevBuf=Oa.alloc(0),this.nodeIdx=0,e.length>0&&(t+=this.write(e))}return this.nodeIdx=0,t};function Ob(t,e){if(t[0]>e)return-1;for(var r=0,n=t.length;r{eZ.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 SO=R((rxe,tZ)=>{tZ.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 Od=R((nxe,rZ)=>{rZ.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 Pb=R((sxe,nZ)=>{nZ.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 EO=R((ixe,sZ)=>{sZ.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 kO=R((axe,iZ)=>{iZ.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 Cb=R((oxe,aZ)=>{aZ.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 TO=R((cxe,oZ)=>{oZ.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 $O=R((lxe,RO)=>{"use strict";RO.exports={shiftjis:{type:"_dbcs",table:function(){return wO()},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 SO()},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 Od()}},gbk:{type:"_dbcs",table:function(){return Od().concat(Pb())}},xgbk:"gbk",isoir58:"gbk",gb18030:{type:"_dbcs",table:function(){return Od().concat(Pb())},gb18030:function(){return EO()},encodeSkipVals:[128],encodeAdd:{"\u20AC":41699}},chinese:"gb18030",windows949:"cp949",ms949:"cp949",949:"cp949",cp949:{type:"_dbcs",table:function(){return kO()}},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 Cb()}},big5:"big5hkscs",big5hkscs:{type:"_dbcs",table:function(){return Cb().concat(TO())},encodeSkipVals:[41676]},cnbig5:"big5hkscs",csbig5:"big5hkscs",xxbig5:"big5hkscs"}});var CO=R((PO,Pa)=>{"use strict";var OO=[cO(),uO(),dO(),fO(),gO(),yO(),_O(),$O()];for(Pd=0;Pd{"use strict";var IO=require("buffer").Buffer,Id=require("stream").Transform;AO.exports=function(t){t.encodeStream=function(r,n){return new Ei(t.getEncoder(r,n),n)},t.decodeStream=function(r,n){return new Ms(t.getDecoder(r,n),n)},t.supportsStreams=!0,t.IconvLiteEncoderStream=Ei,t.IconvLiteDecoderStream=Ms,t._collect=Ms.prototype.collect};function Ei(t,e){this.conv=t,e=e||{},e.decodeStrings=!1,Id.call(this,e)}Ei.prototype=Object.create(Id.prototype,{constructor:{value:Ei}});Ei.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(s){r(s)}};Ei.prototype._flush=function(t){try{var e=this.conv.end();e&&e.length&&this.push(e),t()}catch(r){t(r)}};Ei.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,IO.concat(e))}),this};function Ms(t,e){this.conv=t,e=e||{},e.encoding=this.encoding="utf8",Id.call(this,e)}Ms.prototype=Object.create(Id.prototype,{constructor:{value:Ms}});Ms.prototype._transform=function(t,e,r){if(!IO.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(s){r(s)}};Ms.prototype._flush=function(t){try{var e=this.conv.end();e&&e.length&&this.push(e,this.encoding),t()}catch(r){t(r)}};Ms.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 DO=R((pxe,jO)=>{"use strict";var $t=require("buffer").Buffer;jO.exports=function(t){var e=void 0;t.supportsNodeEncodingsExtension=!($t.from||new $t(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};$t.isNativeEncoding=function(a){return a&&n[a.toLowerCase()]};var s=require("buffer").SlowBuffer;if(e.SlowBufferToString=s.prototype.toString,s.prototype.toString=function(a,o,c){return a=String(a||"utf8").toLowerCase(),$t.isNativeEncoding(a)?e.SlowBufferToString.call(this,a,o,c):(typeof o>"u"&&(o=0),typeof c>"u"&&(c=this.length),t.decode(this.slice(o,c),a))},e.SlowBufferWrite=s.prototype.write,s.prototype.write=function(a,o,c,l){if(isFinite(o))isFinite(c)||(l=c,c=void 0);else{var u=l;l=o,o=c,c=u}o=+o||0;var p=this.length-o;if(c?(c=+c,c>p&&(c=p)):c=p,l=String(l||"utf8").toLowerCase(),$t.isNativeEncoding(l))return e.SlowBufferWrite.call(this,a,o,c,l);if(a.length>0&&(c<0||o<0))throw new RangeError("attempt to write beyond buffer bounds");var d=t.encode(a,l);return d.length"u"&&(o=0),typeof c>"u"&&(c=this.length),t.decode(this.slice(o,c),a))},e.BufferWrite=$t.prototype.write,$t.prototype.write=function(a,o,c,l){var u=o,p=c,d=l;if(isFinite(o))isFinite(c)||(l=c,c=void 0);else{var m=l;l=o,o=c,c=m}if(l=String(l||"utf8").toLowerCase(),$t.isNativeEncoding(l))return e.BufferWrite.call(this,a,u,p,d);o=+o||0;var f=this.length-o;if(c?(c=+c,c>f&&(c=f)):c=f,a.length>0&&(c<0||o<0))throw new RangeError("attempt to write beyond buffer bounds");var v=t.encode(a,l);return v.length{"use strict";var zO=wi().Buffer,LO=iO(),Ve=qO.exports;Ve.encodings=null;Ve.defaultCharUnicode="\uFFFD";Ve.defaultCharSingleByte="?";Ve.encode=function(e,r,n){e=""+(e||"");var s=Ve.getEncoder(r,n),i=s.write(e),a=s.end();return a&&a.length>0?zO.concat([i,a]):i};Ve.decode=function(e,r,n){typeof e=="string"&&(Ve.skipDecodeWarning||(console.error("Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding"),Ve.skipDecodeWarning=!0),e=zO.from(""+(e||""),"binary"));var s=Ve.getDecoder(r,n),i=s.write(e),a=s.end();return a?i+a:i};Ve.encodingExists=function(e){try{return Ve.getCodec(e),!0}catch{return!1}};Ve.toEncoding=Ve.encode;Ve.fromEncoding=Ve.decode;Ve._codecDataCache={};Ve.getCodec=function(e){Ve.encodings||(Ve.encodings=CO());for(var r=Ve._canonicalizeEncoding(e),n={};;){var s=Ve._codecDataCache[r];if(s)return s;var i=Ve.encodings[r];switch(typeof i){case"string":r=i;break;case"object":for(var a in i)n[a]=i[a];n.encodingName||(n.encodingName=r),r=i.type;break;case"function":return n.encodingName||(n.encodingName=r),s=new i(n,Ve),Ve._codecDataCache[n.encodingName]=s,s;default:throw new Error("Encoding not recognized: '"+e+"' (searched as: '"+r+"')")}}};Ve._canonicalizeEncoding=function(t){return(""+t).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g,"")};Ve.getEncoder=function(e,r){var n=Ve.getCodec(e),s=new n.encoder(r,n);return n.bomAware&&r&&r.addBOM&&(s=new LO.PrependBOM(s,r)),s};Ve.getDecoder=function(e,r){var n=Ve.getCodec(e),s=new n.decoder(r,n);return n.bomAware&&!(r&&r.stripBOM===!1)&&(s=new LO.StripBOM(s,r)),s};var MO=typeof process<"u"&&process.versions&&process.versions.node;MO&&(Ib=MO.split(".").map(Number),(Ib[0]>0||Ib[1]>=10)&&NO()(Ve),DO()(Ve));var Ib});var Ad=R((mxe,FO)=>{"use strict";FO.exports=lZ;function cZ(t){for(var e=t.listeners("data"),r=0;r{"use strict";var UO=vZ(),uZ=Sa(),ki=xi(),pZ=Ab(),dZ=Ad();BO.exports=hZ;var mZ=/^Encoding not recognized: /;function fZ(t){if(!t)return null;try{return pZ.getDecoder(t)}catch(e){throw mZ.test(e.message)?ki(415,"specified encoding unsupported",{encoding:t,type:"encoding.unsupported"}):e}}function hZ(t,e,r){var n=r,s=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")&&(s={encoding:e}),typeof e=="function"&&(n=e,s={}),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 i=s.encoding!==!0?s.encoding:"utf-8",a=uZ.parse(s.limit),o=s.length!=null&&!isNaN(s.length)?parseInt(s.length,10):null;return n?HO(t,i,o,a,yZ(n)):new Promise(function(l,u){HO(t,i,o,a,function(d,m){if(d)return u(d);l(m)})})}function gZ(t){dZ(t),typeof t.pause=="function"&&t.pause()}function HO(t,e,r,n,s){var i=!1,a=!0;if(n!==null&&r!==null&&r>n)return p(ki(413,"request entity too large",{expected:r,length:r,limit:n,type:"entity.too.large"}));var o=t._readableState;if(t._decoder||o&&(o.encoding||o.decoder))return p(ki(500,"stream encoding should not be set",{type:"stream.encoding.set"}));if(typeof t.readable<"u"&&!t.readable)return p(ki(500,"stream is not readable",{type:"stream.not.readable"}));var c=0,l;try{l=fZ(e)}catch(g){return p(g)}var u=l?"":[];t.on("aborted",d),t.on("close",v),t.on("data",m),t.on("end",f),t.on("error",f),a=!1;function p(){for(var g=new Array(arguments.length),h=0;hn?p(ki(413,"request entity too large",{limit:n,received:c,type:"entity.too.large"})):l?u+=l.write(g):u.push(g))}function f(g){if(!i){if(g)return p(g);if(r!==null&&c!==r)p(ki(400,"request size did not match content length",{expected:r,length:r,received:c,type:"request.size.invalid"}));else{var h=l?u+(l.end()||""):Buffer.concat(u);p(null,h)}}}function v(){u=null,t.removeListener("aborted",d),t.removeListener("data",m),t.removeListener("end",f),t.removeListener("error",f),t.removeListener("close",v)}}function vZ(){try{return require("async_hooks")}catch{return{}}}function yZ(t){var e;return UO.AsyncResource&&(e=new UO.AsyncResource(t.name||"bound-anonymous-fn")),!e||!e.runInAsyncScope?t:e.runInAsyncScope.bind(e,t,null)}});var VO=R((hxe,ZO)=>{"use strict";ZO.exports=bZ;function bZ(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";Nb.exports=wZ;Nb.exports.isFinished=KO;var GO=RZ(),YO=VO(),_Z=typeof setImmediate=="function"?setImmediate:function(t){process.nextTick(t.bind.apply(t,arguments))};function wZ(t,e){return KO(t)!==!1?(_Z(e,null,t),t):(EZ(t,$Z(e)),t)}function KO(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 SZ(t,e){var r,n,s=!1;function i(o){r.cancel(),n.cancel(),s=!0,e(o)}r=n=YO([[t,"end","finish"]],i);function a(o){t.removeListener("socket",a),!s&&r===n&&(n=YO([[o,"error","close"]],i))}if(t.socket){a(t.socket);return}t.on("socket",a),t.socket===void 0&&TZ(t,a)}function EZ(t,e){var r=t.__onFinished;(!r||!r.queue)&&(r=t.__onFinished=kZ(t),SZ(t,r)),r.queue.push(e)}function kZ(t){function e(r){if(t.__onFinished===e&&(t.__onFinished=null),!!e.queue){var n=e.queue;e.queue=null;for(var s=0;s{"use strict";var zs=xi(),OZ=sb(),PZ=WO(),JO=Ab(),QO=pl(),CZ=Ad(),XO=require("zlib");eP.exports=IZ;function IZ(t,e,r,n,s,i){var a,o=i,c;t._body=!0;var l=o.encoding!==null?o.encoding:null,u=o.verify;try{c=AZ(t,s,o.inflate),a=c.length,c.length=void 0}catch(p){return r(p)}if(o.length=a,o.encoding=u?null:l,o.encoding===null&&l!==null&&!JO.encodingExists(l))return r(zs(415,'unsupported charset "'+l.toUpperCase()+'"',{charset:l.toLowerCase(),type:"charset.unsupported"}));s("read body"),PZ(c,o,function(p,d){if(p){var m;p.type==="encoding.unsupported"?m=zs(415,'unsupported charset "'+l.toUpperCase()+'"',{charset:l.toLowerCase(),type:"charset.unsupported"}):m=zs(400,p),c!==t&&(CZ(t),OZ(c,!0)),NZ(t,function(){r(zs(400,m))});return}if(u)try{s("verify body"),u(t,e,d,l)}catch(v){r(zs(403,v,{body:d,type:v.type||"entity.verify.failed"}));return}var f=d;try{s("parse body"),f=typeof d!="string"&&l!==null?JO.decode(d,l):d,t.body=n(f)}catch(v){r(zs(400,v,{body:f,type:v.type||"entity.parse.failed"}));return}r()})}function AZ(t,e,r){var n=(t.headers["content-encoding"]||"identity").toLowerCase(),s=t.headers["content-length"],i;if(e('content-encoding "%s"',n),r===!1&&n!=="identity")throw zs(415,"content encoding unsupported",{encoding:n,type:"encoding.unsupported"});switch(n){case"deflate":i=XO.createInflate(),e("inflate body"),t.pipe(i);break;case"gzip":i=XO.createGunzip(),e("gunzip body"),t.pipe(i);break;case"identity":i=t,i.length=s;break;default:throw zs(415,'unsupported content encoding "'+n+'"',{encoding:n,type:"encoding.unsupported"})}return i}function NZ(t,e){QO.isFinished(t)?e(null):(QO(t,e),t.resume())}});var sP=R(jb=>{var tP=/; *([!#$%&'\*\+\-\.0-9A-Z\^_`a-z\|~]+) *= *("(?:[ !\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\u0020-\u007e])*"|[!#$%&'\*\+\-\.0-9A-Z\^_`a-z\|~]+) */g,jZ=/^[\u0020-\u007e\u0080-\u00ff]+$/,nP=/^[!#$%&'\*\+\-\.0-9A-Z\^_`a-z\|~]+$/,DZ=/\\([\u0000-\u007f])/g,MZ=/([\\"])/g,zZ=/^[A-Za-z0-9][A-Za-z0-9!#$&^_.-]{0,126}$/,rP=/^[A-Za-z0-9][A-Za-z0-9!#$&^_-]{0,126}$/,LZ=/^ *([A-Za-z0-9][A-Za-z0-9!#$&^_-]{0,126})\/([A-Za-z0-9][A-Za-z0-9!#$&^_.+-]{0,126}) *$/;jb.format=qZ;jb.parse=FZ;function qZ(t){if(!t||typeof t!="object")throw new TypeError("argument obj is required");var e=t.parameters,r=t.subtype,n=t.suffix,s=t.type;if(!s||!rP.test(s))throw new TypeError("invalid type");if(!r||!zZ.test(r))throw new TypeError("invalid subtype");var i=s+"/"+r;if(n){if(!rP.test(n))throw new TypeError("invalid suffix");i+="+"+n}if(e&&typeof e=="object")for(var a,o=Object.keys(e).sort(),c=0;c0&&!jZ.test(e))throw new TypeError("invalid parameter value");return'"'+e.replace(MZ,"\\$1")+'"'}function BZ(t){var e=LZ.exec(t.toLowerCase());if(!e)throw new TypeError("invalid media type");var r=e[1],n=e[2],s,i=n.lastIndexOf("+");i!==-1&&(s=n.substr(i+1),n=n.substr(0,i));var a={type:r,subtype:n,suffix:s};return a}});var iP=R((bxe,WZ)=>{WZ.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 oP=R((xxe,aP)=>{aP.exports=iP()});var uP=R(Nr=>{"use strict";var Nd=oP(),ZZ=require("path").extname,cP=/^\s*([^;\s]*)(?:;|\s|$)/,VZ=/^text\//i;Nr.charset=lP;Nr.charsets={lookup:lP};Nr.contentType=GZ;Nr.extension=YZ;Nr.extensions=Object.create(null);Nr.lookup=KZ;Nr.types=Object.create(null);JZ(Nr.extensions,Nr.types);function lP(t){if(!t||typeof t!="string")return!1;var e=cP.exec(t),r=e&&Nd[e[1].toLowerCase()];return r&&r.charset?r.charset:e&&VZ.test(e[1])?"UTF-8":!1}function GZ(t){if(!t||typeof t!="string")return!1;var e=t.indexOf("/")===-1?Nr.lookup(t):t;if(!e)return!1;if(e.indexOf("charset")===-1){var r=Nr.charset(e);r&&(e+="; charset="+r.toLowerCase())}return e}function YZ(t){if(!t||typeof t!="string")return!1;var e=cP.exec(t),r=e&&Nr.extensions[e[1].toLowerCase()];return!r||!r.length?!1:r[0]}function KZ(t){if(!t||typeof t!="string")return!1;var e=ZZ("x."+t).toLowerCase().substr(1);return e&&Nr.types[e]||!1}function JZ(t,e){var r=["nginx","apache",void 0,"iana"];Object.keys(Nd).forEach(function(s){var i=Nd[s],a=i.extensions;if(!(!a||!a.length)){t[s]=a;for(var o=0;ou||l===u&&e[c].substr(0,12)==="application/"))continue}e[c]=s}}})}});var Ia=R((wxe,Ca)=>{"use strict";var pP=sP(),QZ=uP();Ca.exports=XZ;Ca.exports.is=dP;Ca.exports.hasBody=mP;Ca.exports.normalize=fP;Ca.exports.match=hP;function dP(t,e){var r,n=e,s=tV(t);if(!s)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 rV=Sa(),nV=Xc(),sV=xi(),Ls=ol()("body-parser:json"),iV=dl(),vP=Ia();bP.exports=cV;var aV=/^[\x20\x09\x0a\x0d]*([^\x20\x09\x0a\x0d])/,gP="#",oV=/#+/g;function cV(t){var e=t||{},r=typeof e.limit!="number"?rV.parse(e.limit||"100kb"):e.limit,n=e.inflate!==!1,s=e.reviver,i=e.strict!==!1,a=e.type||"application/json",o=e.verify||!1;if(o!==!1&&typeof o!="function")throw new TypeError("option verify must be function");var c=typeof a!="function"?dV(a):a;function l(u){if(u.length===0)return{};if(i){var p=uV(u);if(p!=="{"&&p!=="[")throw Ls("strict violation"),lV(u,p)}try{return Ls("parse json"),JSON.parse(u,s)}catch(d){throw yP(d,{message:d.message,stack:d.stack})}}return function(p,d,m){if(p._body){Ls("body already parsed"),m();return}if(p.body=p.body||{},!vP.hasBody(p)){Ls("skip empty body"),m();return}if(Ls("content-type %j",p.headers["content-type"]),!c(p)){Ls("skip parsing"),m();return}var f=pV(p)||"utf-8";if(f.slice(0,4)!=="utf-"){Ls("invalid charset"),m(sV(415,'unsupported charset "'+f.toUpperCase()+'"',{charset:f,type:"charset.unsupported"}));return}iV(p,d,m,l,Ls,{encoding:f,inflate:n,limit:r,verify:o})}}function lV(t,e){var r=t.indexOf(e),n="";if(r!==-1){n=t.substring(0,r)+gP;for(var s=r+1;s{"use strict";var mV=Sa(),ml=ol()("body-parser:raw"),fV=dl(),_P=Ia();wP.exports=hV;function hV(t){var e=t||{},r=e.inflate!==!1,n=typeof e.limit!="number"?mV.parse(e.limit||"100kb"):e.limit,s=e.type||"application/octet-stream",i=e.verify||!1;if(i!==!1&&typeof i!="function")throw new TypeError("option verify must be function");var a=typeof s!="function"?gV(s):s;function o(c){return c}return function(l,u,p){if(l._body){ml("body already parsed"),p();return}if(l.body=l.body||{},!_P.hasBody(l)){ml("skip empty body"),p();return}if(ml("content-type %j",l.headers["content-type"]),!a(l)){ml("skip parsing"),p();return}fV(l,u,p,o,ml,{encoding:null,inflate:r,limit:n,verify:i})}}function gV(t){return function(r){return!!_P(r,t)}}});var TP=R((kxe,kP)=>{"use strict";var vV=Sa(),yV=Xc(),fl=ol()("body-parser:text"),bV=dl(),EP=Ia();kP.exports=xV;function xV(t){var e=t||{},r=e.defaultCharset||"utf-8",n=e.inflate!==!1,s=typeof e.limit!="number"?vV.parse(e.limit||"100kb"):e.limit,i=e.type||"text/plain",a=e.verify||!1;if(a!==!1&&typeof a!="function")throw new TypeError("option verify must be function");var o=typeof i!="function"?wV(i):i;function c(l){return l}return function(u,p,d){if(u._body){fl("body already parsed"),d();return}if(u.body=u.body||{},!EP.hasBody(u)){fl("skip empty body"),d();return}if(fl("content-type %j",u.headers["content-type"]),!o(u)){fl("skip parsing"),d();return}var m=_V(u)||r;bV(u,p,d,c,fl,{encoding:m,inflate:n,limit:s,verify:a})}}function _V(t){try{return(yV.parse(t).parameters.charset||"").toLowerCase()}catch{return}}function wV(t){return function(r){return!!EP(r,t)}}});var Ti=R((Txe,RP)=>{"use strict";RP.exports=TypeError});var OP=R((Rxe,$P)=>{$P.exports=require("util").inspect});var bl=R(($xe,YP)=>{var Wb=typeof Map=="function"&&Map.prototype,Db=Object.getOwnPropertyDescriptor&&Wb?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,Dd=Wb&&Db&&typeof Db.get=="function"?Db.get:null,PP=Wb&&Map.prototype.forEach,Zb=typeof Set=="function"&&Set.prototype,Mb=Object.getOwnPropertyDescriptor&&Zb?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,Md=Zb&&Mb&&typeof Mb.get=="function"?Mb.get:null,CP=Zb&&Set.prototype.forEach,SV=typeof WeakMap=="function"&&WeakMap.prototype,gl=SV?WeakMap.prototype.has:null,EV=typeof WeakSet=="function"&&WeakSet.prototype,vl=EV?WeakSet.prototype.has:null,kV=typeof WeakRef=="function"&&WeakRef.prototype,IP=kV?WeakRef.prototype.deref:null,TV=Boolean.prototype.valueOf,RV=Object.prototype.toString,$V=Function.prototype.toString,OV=String.prototype.match,Vb=String.prototype.slice,qs=String.prototype.replace,PV=String.prototype.toUpperCase,AP=String.prototype.toLowerCase,UP=RegExp.prototype.test,NP=Array.prototype.concat,Zn=Array.prototype.join,CV=Array.prototype.slice,jP=Math.floor,qb=typeof BigInt=="function"?BigInt.prototype.valueOf:null,zb=Object.getOwnPropertySymbols,Fb=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Symbol.prototype.toString:null,Aa=typeof Symbol=="function"&&typeof Symbol.iterator=="object",yl=typeof Symbol=="function"&&Symbol.toStringTag&&(typeof Symbol.toStringTag===Aa||!0)?Symbol.toStringTag:null,HP=Object.prototype.propertyIsEnumerable,DP=(typeof Reflect=="function"?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(t){return t.__proto__}:null);function MP(t,e){if(t===1/0||t===-1/0||t!==t||t&&t>-1e3&&t<1e3||UP.call(/e/,e))return e;var r=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if(typeof t=="number"){var n=t<0?-jP(-t):jP(t);if(n!==t){var s=String(n),i=Vb.call(e,s.length+1);return qs.call(s,r,"$&_")+"."+qs.call(qs.call(i,/([0-9]{3})/g,"$&_"),/_$/,"")}}return qs.call(e,r,"$&_")}var Ub=OP(),zP=Ub.custom,LP=ZP(zP)?zP:null,BP={__proto__:null,double:'"',single:"'"},IV={__proto__:null,double:/(["\\])/g,single:/(['\\])/g};YP.exports=function t(e,r,n,s){var i=r||{};if(ps(i,"quoteStyle")&&!ps(BP,i.quoteStyle))throw new TypeError('option "quoteStyle" must be "single" or "double"');if(ps(i,"maxStringLength")&&(typeof i.maxStringLength=="number"?i.maxStringLength<0&&i.maxStringLength!==1/0:i.maxStringLength!==null))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var a=ps(i,"customInspect")?i.customInspect:!0;if(typeof a!="boolean"&&a!=="symbol")throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(ps(i,"indent")&&i.indent!==null&&i.indent!==" "&&!(parseInt(i.indent,10)===i.indent&&i.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if(ps(i,"numericSeparator")&&typeof i.numericSeparator!="boolean")throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var o=i.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 GP(e,i);if(typeof e=="number"){if(e===0)return 1/0/e>0?"0":"-0";var c=String(e);return o?MP(e,c):c}if(typeof e=="bigint"){var l=String(e)+"n";return o?MP(e,l):l}var u=typeof i.depth>"u"?5:i.depth;if(typeof n>"u"&&(n=0),n>=u&&u>0&&typeof e=="object")return Hb(e)?"[Array]":"[Object]";var p=KV(i,n);if(typeof s>"u")s=[];else if(VP(s,e)>=0)return"[Circular]";function d(H,Z,W){if(Z&&(s=CV.call(s),s.push(Z)),W){var we={depth:i.depth};return ps(i,"quoteStyle")&&(we.quoteStyle=i.quoteStyle),t(H,we,n+1,s)}return t(H,i,n+1,s)}if(typeof e=="function"&&!qP(e)){var m=FV(e),f=jd(e,d);return"[Function"+(m?": "+m:" (anonymous)")+"]"+(f.length>0?" { "+Zn.call(f,", ")+" }":"")}if(ZP(e)){var v=Aa?qs.call(String(e),/^(Symbol\(.*\))_[^)]*$/,"$1"):Fb.call(e);return typeof e=="object"&&!Aa?hl(v):v}if(VV(e)){for(var g="<"+AP.call(String(e.nodeName)),h=e.attributes||[],y=0;y",g}if(Hb(e)){if(e.length===0)return"[]";var b=jd(e,d);return p&&!YV(b)?"["+Bb(b,p)+"]":"[ "+Zn.call(b,", ")+" ]"}if(jV(e)){var x=jd(e,d);return!("cause"in Error.prototype)&&"cause"in e&&!HP.call(e,"cause")?"{ ["+String(e)+"] "+Zn.call(NP.call("[cause]: "+d(e.cause),x),", ")+" }":x.length===0?"["+String(e)+"]":"{ ["+String(e)+"] "+Zn.call(x,", ")+" }"}if(typeof e=="object"&&a){if(LP&&typeof e[LP]=="function"&&Ub)return Ub(e,{depth:u-n});if(a!=="symbol"&&typeof e.inspect=="function")return e.inspect()}if(UV(e)){var w=[];return PP&&PP.call(e,function(H,Z){w.push(d(Z,e,!0)+" => "+d(H,e))}),FP("Map",Dd.call(e),w,p)}if(WV(e)){var S=[];return CP&&CP.call(e,function(H){S.push(d(H,e))}),FP("Set",Md.call(e),S,p)}if(HV(e))return Lb("WeakMap");if(ZV(e))return Lb("WeakSet");if(BV(e))return Lb("WeakRef");if(MV(e))return hl(d(Number(e)));if(LV(e))return hl(d(qb.call(e)));if(zV(e))return hl(TV.call(e));if(DV(e))return hl(d(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(!NV(e)&&!qP(e)){var E=jd(e,d),k=DP?DP(e)===Object.prototype:e instanceof Object||e.constructor===Object,$=e instanceof Object?"":"null prototype",j=!k&&yl&&Object(e)===e&&yl in e?Vb.call(Fs(e),8,-1):$?"Object":"",I=k||typeof e.constructor!="function"?"":e.constructor.name?e.constructor.name+" ":"",q=I+(j||$?"["+Zn.call(NP.call([],j||[],$||[]),": ")+"] ":"");return E.length===0?q+"{}":p?q+"{"+Bb(E,p)+"}":q+"{ "+Zn.call(E,", ")+" }"}return String(e)};function WP(t,e,r){var n=r.quoteStyle||e,s=BP[n];return s+t+s}function AV(t){return qs.call(String(t),/"/g,""")}function Ri(t){return!yl||!(typeof t=="object"&&(yl in t||typeof t[yl]<"u"))}function Hb(t){return Fs(t)==="[object Array]"&&Ri(t)}function NV(t){return Fs(t)==="[object Date]"&&Ri(t)}function qP(t){return Fs(t)==="[object RegExp]"&&Ri(t)}function jV(t){return Fs(t)==="[object Error]"&&Ri(t)}function DV(t){return Fs(t)==="[object String]"&&Ri(t)}function MV(t){return Fs(t)==="[object Number]"&&Ri(t)}function zV(t){return Fs(t)==="[object Boolean]"&&Ri(t)}function ZP(t){if(Aa)return t&&typeof t=="object"&&t instanceof Symbol;if(typeof t=="symbol")return!0;if(!t||typeof t!="object"||!Fb)return!1;try{return Fb.call(t),!0}catch{}return!1}function LV(t){if(!t||typeof t!="object"||!qb)return!1;try{return qb.call(t),!0}catch{}return!1}var qV=Object.prototype.hasOwnProperty||function(t){return t in this};function ps(t,e){return qV.call(t,e)}function Fs(t){return RV.call(t)}function FV(t){if(t.name)return t.name;var e=OV.call($V.call(t),/^function\s*([\w$]+)/);return e?e[1]:null}function VP(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 GP(Vb.call(t,0,e.maxStringLength),e)+n}var s=IV[e.quoteStyle||"single"];s.lastIndex=0;var i=qs.call(qs.call(t,s,"\\$1"),/[\x00-\x1f]/g,GV);return WP(i,"single",e)}function GV(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":"")+PV.call(e.toString(16))}function hl(t){return"Object("+t+")"}function Lb(t){return t+" { ? }"}function FP(t,e,r,n){var s=n?Bb(r,n):Zn.call(r,", ");return t+" ("+e+") {"+s+"}"}function YV(t){for(var e=0;e=0)return!1;return!0}function KV(t,e){var r;if(t.indent===" ")r=" ";else if(typeof t.indent=="number"&&t.indent>0)r=Zn.call(Array(t.indent+1)," ");else return null;return{base:r,prev:Zn.call(Array(e+1),r)}}function Bb(t,e){if(t.length===0)return"";var r=` +\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 RO=R(TO=>{"use strict";var Pa=Si().Buffer;TO._dbcs=us;var Ar=-1,kO=-2,nn=-10,Wn=-1e3,Oa=new Array(256),dl=-1;for(Od=0;Od<256;Od++)Oa[Od]=Ar;var Od;function us(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]=Oa.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 s=r[e[n]];if(s==Ar)r[e[n]]=Wn-this.decodeTables.length,this.decodeTables.push(r=Oa.slice(0));else if(s<=Wn)r=this.decodeTables[Wn-s];else throw new Error("Overwrite byte in "+this.encodingName+", addr: "+t.toString(16))}return r};us.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)};us.prototype._getEncodeBucket=function(t){var e=t>>8;return this.encodeTable[e]===void 0&&(this.encodeTable[e]=Oa.slice(0)),this.encodeTable[e]};us.prototype._setEncodeChar=function(t,e){var r=this._getEncodeBucket(t),n=t&255;r[n]<=nn?this.encodeTableSeq[nn-r[n]][dl]=e:r[n]==Ar&&(r[n]=e)};us.prototype._setEncodeSequence=function(t,e){var r=t[0],n=this._getEncodeBucket(r),s=r&255,i;n[s]<=nn?i=this.encodeTableSeq[nn-n[s]]:(i={},n[s]!==Ar&&(i[dl]=n[s]),n[s]=nn-this.encodeTableSeq.length,this.encodeTableSeq.push(i));for(var a=1;a=0?this._setEncodeChar(i,a):i<=Wn?this._fillEncodeTable(Wn-i,a<<8,r):i<=nn&&this._setEncodeSequence(this.decodeTableSeq[nn-i],a))}};function Pd(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}Pd.prototype.write=function(t){for(var e=Pa.alloc(t.length*(this.gb18030?4:3)),r=this.leadSurrogate,n=this.seqObj,s=-1,i=0,a=0;;){if(s===-1){if(i==t.length)break;var o=t.charCodeAt(i++)}else{var o=s;s=-1}if(55296<=o&&o<57344)if(o<56320)if(r===-1){r=o;continue}else r=o,o=Ar;else r!==-1?(o=65536+(r-55296)*1024+(o-56320),r=-1):o=Ar;else r!==-1&&(s=o,o=Ar,r=-1);var c=Ar;if(n!==void 0&&o!=Ar){var l=n[o];if(typeof l=="object"){n=l;continue}else typeof l=="number"?c=l:l==null&&(l=n[dl],l!==void 0&&(c=l,s=o));n=void 0}else if(o>=0){var u=this.encodeTable[o>>8];if(u!==void 0&&(c=u[o&255]),c<=nn){n=this.encodeTableSeq[nn-c];continue}if(c==Ar&&this.gb18030){var p=Ab(this.gb18030.uChars,o);if(p!=-1){var c=this.gb18030.gbChars[p]+(o-this.gb18030.uChars[p]);e[a++]=129+Math.floor(c/12600),c=c%12600,e[a++]=48+Math.floor(c/1260),c=c%1260,e[a++]=129+Math.floor(c/10),c=c%10,e[a++]=48+c;continue}}}c===Ar&&(c=this.defaultCharSingleByte),c<256?e[a++]=c:c<65536?(e[a++]=c>>8,e[a++]=c&255):(e[a++]=c>>16,e[a++]=c>>8&255,e[a++]=c&255)}return this.seqObj=n,this.leadSurrogate=r,e.slice(0,a)};Pd.prototype.end=function(){if(!(this.leadSurrogate===-1&&this.seqObj===void 0)){var t=Pa.alloc(10),e=0;if(this.seqObj){var r=this.seqObj[dl];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)}};Pd.prototype.findIdx=Ab;function Ib(t,e){this.nodeIdx=0,this.prevBuf=Pa.alloc(0),this.decodeTables=e.decodeTables,this.decodeTableSeq=e.decodeTableSeq,this.defaultCharUnicode=e.defaultCharUnicode,this.gb18030=e.gb18030}Ib.prototype.write=function(t){var e=Pa.alloc(t.length*2),r=this.nodeIdx,n=this.prevBuf,s=this.prevBuf.length,i=-this.prevBuf.length,a;s>0&&(n=Pa.concat([n,t.slice(0,10)]));for(var o=0,c=0;o=0?t[o]:n[o+s],a=this.decodeTables[r][l];if(!(a>=0))if(a===Ar)o=i,a=this.defaultCharUnicode.charCodeAt(0);else if(a===kO){var u=i>=0?t.slice(i,o+1):n.slice(i+s,o+1+s),p=(u[0]-129)*12600+(u[1]-48)*1260+(u[2]-129)*10+(u[3]-48),d=Ab(this.gb18030.gbChars,p);a=this.gb18030.uChars[d]+p-this.gb18030.gbChars[d]}else if(a<=Wn){r=Wn-a;continue}else if(a<=nn){for(var m=this.decodeTableSeq[nn-a],f=0;f>8;a=m[m.length-1]}else throw new Error("iconv-lite internal error: invalid decoding table value "+a+" at "+r+"/"+l);if(a>65535){a-=65536;var v=55296+Math.floor(a/1024);e[c++]=v&255,e[c++]=v>>8,a=56320+a%1024}e[c++]=a&255,e[c++]=a>>8,r=0,i=o+1}return this.nodeIdx=r,this.prevBuf=i>=0?t.slice(i):n.slice(i+s),e.slice(0,c).toString("ucs2")};Ib.prototype.end=function(){for(var t="";this.prevBuf.length>0;){t+=this.defaultCharUnicode;var e=this.prevBuf.slice(1);this.prevBuf=Pa.alloc(0),this.nodeIdx=0,e.length>0&&(t+=this.write(e))}return this.nodeIdx=0,t};function Ab(t,e){if(t[0]>e)return-1;for(var r=0,n=t.length;r{oZ.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 OO=R((lxe,cZ)=>{cZ.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 Cd=R((uxe,lZ)=>{lZ.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 Nb=R((pxe,uZ)=>{uZ.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 PO=R((dxe,pZ)=>{pZ.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 CO=R((mxe,dZ)=>{dZ.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 jb=R((fxe,mZ)=>{mZ.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 IO=R((hxe,fZ)=>{fZ.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 NO=R((gxe,AO)=>{"use strict";AO.exports={shiftjis:{type:"_dbcs",table:function(){return $O()},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 OO()},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 Cd()}},gbk:{type:"_dbcs",table:function(){return Cd().concat(Nb())}},xgbk:"gbk",isoir58:"gbk",gb18030:{type:"_dbcs",table:function(){return Cd().concat(Nb())},gb18030:function(){return PO()},encodeSkipVals:[128],encodeAdd:{"\u20AC":41699}},chinese:"gb18030",windows949:"cp949",ms949:"cp949",949:"cp949",cp949:{type:"_dbcs",table:function(){return CO()}},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 jb()}},big5:"big5hkscs",big5hkscs:{type:"_dbcs",table:function(){return jb().concat(IO())},encodeSkipVals:[41676]},cnbig5:"big5hkscs",csbig5:"big5hkscs",xxbig5:"big5hkscs"}});var MO=R((DO,Ca)=>{"use strict";var jO=[fO(),gO(),yO(),xO(),wO(),EO(),RO(),NO()];for(Id=0;Id{"use strict";var zO=require("buffer").Buffer,Nd=require("stream").Transform;LO.exports=function(t){t.encodeStream=function(r,n){return new ki(t.getEncoder(r,n),n)},t.decodeStream=function(r,n){return new Ms(t.getDecoder(r,n),n)},t.supportsStreams=!0,t.IconvLiteEncoderStream=ki,t.IconvLiteDecoderStream=Ms,t._collect=Ms.prototype.collect};function ki(t,e){this.conv=t,e=e||{},e.decodeStrings=!1,Nd.call(this,e)}ki.prototype=Object.create(Nd.prototype,{constructor:{value:ki}});ki.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(s){r(s)}};ki.prototype._flush=function(t){try{var e=this.conv.end();e&&e.length&&this.push(e),t()}catch(r){t(r)}};ki.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,zO.concat(e))}),this};function Ms(t,e){this.conv=t,e=e||{},e.encoding=this.encoding="utf8",Nd.call(this,e)}Ms.prototype=Object.create(Nd.prototype,{constructor:{value:Ms}});Ms.prototype._transform=function(t,e,r){if(!zO.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(s){r(s)}};Ms.prototype._flush=function(t){try{var e=this.conv.end();e&&e.length&&this.push(e,this.encoding),t()}catch(r){t(r)}};Ms.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 UO=R((yxe,FO)=>{"use strict";var $t=require("buffer").Buffer;FO.exports=function(t){var e=void 0;t.supportsNodeEncodingsExtension=!($t.from||new $t(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};$t.isNativeEncoding=function(a){return a&&n[a.toLowerCase()]};var s=require("buffer").SlowBuffer;if(e.SlowBufferToString=s.prototype.toString,s.prototype.toString=function(a,o,c){return a=String(a||"utf8").toLowerCase(),$t.isNativeEncoding(a)?e.SlowBufferToString.call(this,a,o,c):(typeof o>"u"&&(o=0),typeof c>"u"&&(c=this.length),t.decode(this.slice(o,c),a))},e.SlowBufferWrite=s.prototype.write,s.prototype.write=function(a,o,c,l){if(isFinite(o))isFinite(c)||(l=c,c=void 0);else{var u=l;l=o,o=c,c=u}o=+o||0;var p=this.length-o;if(c?(c=+c,c>p&&(c=p)):c=p,l=String(l||"utf8").toLowerCase(),$t.isNativeEncoding(l))return e.SlowBufferWrite.call(this,a,o,c,l);if(a.length>0&&(c<0||o<0))throw new RangeError("attempt to write beyond buffer bounds");var d=t.encode(a,l);return d.length"u"&&(o=0),typeof c>"u"&&(c=this.length),t.decode(this.slice(o,c),a))},e.BufferWrite=$t.prototype.write,$t.prototype.write=function(a,o,c,l){var u=o,p=c,d=l;if(isFinite(o))isFinite(c)||(l=c,c=void 0);else{var m=l;l=o,o=c,c=m}if(l=String(l||"utf8").toLowerCase(),$t.isNativeEncoding(l))return e.BufferWrite.call(this,a,u,p,d);o=+o||0;var f=this.length-o;if(c?(c=+c,c>f&&(c=f)):c=f,a.length>0&&(c<0||o<0))throw new RangeError("attempt to write beyond buffer bounds");var v=t.encode(a,l);return v.length{"use strict";var BO=Si().Buffer,WO=pO(),Ve=ZO.exports;Ve.encodings=null;Ve.defaultCharUnicode="\uFFFD";Ve.defaultCharSingleByte="?";Ve.encode=function(e,r,n){e=""+(e||"");var s=Ve.getEncoder(r,n),i=s.write(e),a=s.end();return a&&a.length>0?BO.concat([i,a]):i};Ve.decode=function(e,r,n){typeof e=="string"&&(Ve.skipDecodeWarning||(console.error("Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding"),Ve.skipDecodeWarning=!0),e=BO.from(""+(e||""),"binary"));var s=Ve.getDecoder(r,n),i=s.write(e),a=s.end();return a?i+a:i};Ve.encodingExists=function(e){try{return Ve.getCodec(e),!0}catch{return!1}};Ve.toEncoding=Ve.encode;Ve.fromEncoding=Ve.decode;Ve._codecDataCache={};Ve.getCodec=function(e){Ve.encodings||(Ve.encodings=MO());for(var r=Ve._canonicalizeEncoding(e),n={};;){var s=Ve._codecDataCache[r];if(s)return s;var i=Ve.encodings[r];switch(typeof i){case"string":r=i;break;case"object":for(var a in i)n[a]=i[a];n.encodingName||(n.encodingName=r),r=i.type;break;case"function":return n.encodingName||(n.encodingName=r),s=new i(n,Ve),Ve._codecDataCache[n.encodingName]=s,s;default:throw new Error("Encoding not recognized: '"+e+"' (searched as: '"+r+"')")}}};Ve._canonicalizeEncoding=function(t){return(""+t).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g,"")};Ve.getEncoder=function(e,r){var n=Ve.getCodec(e),s=new n.encoder(r,n);return n.bomAware&&r&&r.addBOM&&(s=new WO.PrependBOM(s,r)),s};Ve.getDecoder=function(e,r){var n=Ve.getCodec(e),s=new n.decoder(r,n);return n.bomAware&&!(r&&r.stripBOM===!1)&&(s=new WO.StripBOM(s,r)),s};var HO=typeof process<"u"&&process.versions&&process.versions.node;HO&&(Db=HO.split(".").map(Number),(Db[0]>0||Db[1]>=10)&&qO()(Ve),UO()(Ve));var Db});var jd=R((xxe,VO)=>{"use strict";VO.exports=gZ;function hZ(t){for(var e=t.listeners("data"),r=0;r{"use strict";var GO=EZ(),vZ=Ea(),Ti=_i(),yZ=Mb(),bZ=jd();KO.exports=wZ;var xZ=/^Encoding not recognized: /;function _Z(t){if(!t)return null;try{return yZ.getDecoder(t)}catch(e){throw xZ.test(e.message)?Ti(415,"specified encoding unsupported",{encoding:t,type:"encoding.unsupported"}):e}}function wZ(t,e,r){var n=r,s=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")&&(s={encoding:e}),typeof e=="function"&&(n=e,s={}),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 i=s.encoding!==!0?s.encoding:"utf-8",a=vZ.parse(s.limit),o=s.length!=null&&!isNaN(s.length)?parseInt(s.length,10):null;return n?YO(t,i,o,a,kZ(n)):new Promise(function(l,u){YO(t,i,o,a,function(d,m){if(d)return u(d);l(m)})})}function SZ(t){bZ(t),typeof t.pause=="function"&&t.pause()}function YO(t,e,r,n,s){var i=!1,a=!0;if(n!==null&&r!==null&&r>n)return p(Ti(413,"request entity too large",{expected:r,length:r,limit:n,type:"entity.too.large"}));var o=t._readableState;if(t._decoder||o&&(o.encoding||o.decoder))return p(Ti(500,"stream encoding should not be set",{type:"stream.encoding.set"}));if(typeof t.readable<"u"&&!t.readable)return p(Ti(500,"stream is not readable",{type:"stream.not.readable"}));var c=0,l;try{l=_Z(e)}catch(g){return p(g)}var u=l?"":[];t.on("aborted",d),t.on("close",v),t.on("data",m),t.on("end",f),t.on("error",f),a=!1;function p(){for(var g=new Array(arguments.length),h=0;hn?p(Ti(413,"request entity too large",{limit:n,received:c,type:"entity.too.large"})):l?u+=l.write(g):u.push(g))}function f(g){if(!i){if(g)return p(g);if(r!==null&&c!==r)p(Ti(400,"request size did not match content length",{expected:r,length:r,received:c,type:"request.size.invalid"}));else{var h=l?u+(l.end()||""):Buffer.concat(u);p(null,h)}}}function v(){u=null,t.removeListener("aborted",d),t.removeListener("data",m),t.removeListener("end",f),t.removeListener("error",f),t.removeListener("close",v)}}function EZ(){try{return require("async_hooks")}catch{return{}}}function kZ(t){var e;return GO.AsyncResource&&(e=new GO.AsyncResource(t.name||"bound-anonymous-fn")),!e||!e.runInAsyncScope?t:e.runInAsyncScope.bind(e,t,null)}});var XO=R((wxe,QO)=>{"use strict";QO.exports=TZ;function TZ(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";zb.exports=OZ;zb.exports.isFinished=rP;var eP=NZ(),tP=XO(),$Z=typeof setImmediate=="function"?setImmediate:function(t){process.nextTick(t.bind.apply(t,arguments))};function OZ(t,e){return rP(t)!==!1?($Z(e,null,t),t):(CZ(t,jZ(e)),t)}function rP(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 PZ(t,e){var r,n,s=!1;function i(o){r.cancel(),n.cancel(),s=!0,e(o)}r=n=tP([[t,"end","finish"]],i);function a(o){t.removeListener("socket",a),!s&&r===n&&(n=tP([[o,"error","close"]],i))}if(t.socket){a(t.socket);return}t.on("socket",a),t.socket===void 0&&AZ(t,a)}function CZ(t,e){var r=t.__onFinished;(!r||!r.queue)&&(r=t.__onFinished=IZ(t),PZ(t,r)),r.queue.push(e)}function IZ(t){function e(r){if(t.__onFinished===e&&(t.__onFinished=null),!!e.queue){var n=e.queue;e.queue=null;for(var s=0;s{"use strict";var zs=_i(),DZ=cb(),MZ=JO(),nP=Mb(),sP=ml(),zZ=jd(),iP=require("zlib");aP.exports=LZ;function LZ(t,e,r,n,s,i){var a,o=i,c;t._body=!0;var l=o.encoding!==null?o.encoding:null,u=o.verify;try{c=qZ(t,s,o.inflate),a=c.length,c.length=void 0}catch(p){return r(p)}if(o.length=a,o.encoding=u?null:l,o.encoding===null&&l!==null&&!nP.encodingExists(l))return r(zs(415,'unsupported charset "'+l.toUpperCase()+'"',{charset:l.toLowerCase(),type:"charset.unsupported"}));s("read body"),MZ(c,o,function(p,d){if(p){var m;p.type==="encoding.unsupported"?m=zs(415,'unsupported charset "'+l.toUpperCase()+'"',{charset:l.toLowerCase(),type:"charset.unsupported"}):m=zs(400,p),c!==t&&(zZ(t),DZ(c,!0)),FZ(t,function(){r(zs(400,m))});return}if(u)try{s("verify body"),u(t,e,d,l)}catch(v){r(zs(403,v,{body:d,type:v.type||"entity.verify.failed"}));return}var f=d;try{s("parse body"),f=typeof d!="string"&&l!==null?nP.decode(d,l):d,t.body=n(f)}catch(v){r(zs(400,v,{body:f,type:v.type||"entity.parse.failed"}));return}r()})}function qZ(t,e,r){var n=(t.headers["content-encoding"]||"identity").toLowerCase(),s=t.headers["content-length"],i;if(e('content-encoding "%s"',n),r===!1&&n!=="identity")throw zs(415,"content encoding unsupported",{encoding:n,type:"encoding.unsupported"});switch(n){case"deflate":i=iP.createInflate(),e("inflate body"),t.pipe(i);break;case"gzip":i=iP.createGunzip(),e("gunzip body"),t.pipe(i);break;case"identity":i=t,i.length=s;break;default:throw zs(415,'unsupported content encoding "'+n+'"',{encoding:n,type:"encoding.unsupported"})}return i}function FZ(t,e){sP.isFinished(t)?e(null):(sP(t,e),t.resume())}});var uP=R(Lb=>{var oP=/; *([!#$%&'\*\+\-\.0-9A-Z\^_`a-z\|~]+) *= *("(?:[ !\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\u0020-\u007e])*"|[!#$%&'\*\+\-\.0-9A-Z\^_`a-z\|~]+) */g,UZ=/^[\u0020-\u007e\u0080-\u00ff]+$/,lP=/^[!#$%&'\*\+\-\.0-9A-Z\^_`a-z\|~]+$/,HZ=/\\([\u0000-\u007f])/g,BZ=/([\\"])/g,WZ=/^[A-Za-z0-9][A-Za-z0-9!#$&^_.-]{0,126}$/,cP=/^[A-Za-z0-9][A-Za-z0-9!#$&^_-]{0,126}$/,ZZ=/^ *([A-Za-z0-9][A-Za-z0-9!#$&^_-]{0,126})\/([A-Za-z0-9][A-Za-z0-9!#$&^_.+-]{0,126}) *$/;Lb.format=VZ;Lb.parse=GZ;function VZ(t){if(!t||typeof t!="object")throw new TypeError("argument obj is required");var e=t.parameters,r=t.subtype,n=t.suffix,s=t.type;if(!s||!cP.test(s))throw new TypeError("invalid type");if(!r||!WZ.test(r))throw new TypeError("invalid subtype");var i=s+"/"+r;if(n){if(!cP.test(n))throw new TypeError("invalid suffix");i+="+"+n}if(e&&typeof e=="object")for(var a,o=Object.keys(e).sort(),c=0;c0&&!UZ.test(e))throw new TypeError("invalid parameter value");return'"'+e.replace(BZ,"\\$1")+'"'}function JZ(t){var e=ZZ.exec(t.toLowerCase());if(!e)throw new TypeError("invalid media type");var r=e[1],n=e[2],s,i=n.lastIndexOf("+");i!==-1&&(s=n.substr(i+1),n=n.substr(0,i));var a={type:r,subtype:n,suffix:s};return a}});var pP=R((Txe,QZ)=>{QZ.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 mP=R((Rxe,dP)=>{dP.exports=pP()});var gP=R(Nr=>{"use strict";var Dd=mP(),XZ=require("path").extname,fP=/^\s*([^;\s]*)(?:;|\s|$)/,eV=/^text\//i;Nr.charset=hP;Nr.charsets={lookup:hP};Nr.contentType=tV;Nr.extension=rV;Nr.extensions=Object.create(null);Nr.lookup=nV;Nr.types=Object.create(null);sV(Nr.extensions,Nr.types);function hP(t){if(!t||typeof t!="string")return!1;var e=fP.exec(t),r=e&&Dd[e[1].toLowerCase()];return r&&r.charset?r.charset:e&&eV.test(e[1])?"UTF-8":!1}function tV(t){if(!t||typeof t!="string")return!1;var e=t.indexOf("/")===-1?Nr.lookup(t):t;if(!e)return!1;if(e.indexOf("charset")===-1){var r=Nr.charset(e);r&&(e+="; charset="+r.toLowerCase())}return e}function rV(t){if(!t||typeof t!="string")return!1;var e=fP.exec(t),r=e&&Nr.extensions[e[1].toLowerCase()];return!r||!r.length?!1:r[0]}function nV(t){if(!t||typeof t!="string")return!1;var e=XZ("x."+t).toLowerCase().substr(1);return e&&Nr.types[e]||!1}function sV(t,e){var r=["nginx","apache",void 0,"iana"];Object.keys(Dd).forEach(function(s){var i=Dd[s],a=i.extensions;if(!(!a||!a.length)){t[s]=a;for(var o=0;ou||l===u&&e[c].substr(0,12)==="application/"))continue}e[c]=s}}})}});var Aa=R((Oxe,Ia)=>{"use strict";var vP=uP(),iV=gP();Ia.exports=aV;Ia.exports.is=yP;Ia.exports.hasBody=bP;Ia.exports.normalize=xP;Ia.exports.match=_P;function yP(t,e){var r,n=e,s=cV(t);if(!s)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 lV=Ea(),uV=tl(),pV=_i(),Ls=ll()("body-parser:json"),dV=fl(),SP=Aa();kP.exports=hV;var mV=/^[\x20\x09\x0a\x0d]*([^\x20\x09\x0a\x0d])/,wP="#",fV=/#+/g;function hV(t){var e=t||{},r=typeof e.limit!="number"?lV.parse(e.limit||"100kb"):e.limit,n=e.inflate!==!1,s=e.reviver,i=e.strict!==!1,a=e.type||"application/json",o=e.verify||!1;if(o!==!1&&typeof o!="function")throw new TypeError("option verify must be function");var c=typeof a!="function"?bV(a):a;function l(u){if(u.length===0)return{};if(i){var p=vV(u);if(p!=="{"&&p!=="[")throw Ls("strict violation"),gV(u,p)}try{return Ls("parse json"),JSON.parse(u,s)}catch(d){throw EP(d,{message:d.message,stack:d.stack})}}return function(p,d,m){if(p._body){Ls("body already parsed"),m();return}if(p.body=p.body||{},!SP.hasBody(p)){Ls("skip empty body"),m();return}if(Ls("content-type %j",p.headers["content-type"]),!c(p)){Ls("skip parsing"),m();return}var f=yV(p)||"utf-8";if(f.slice(0,4)!=="utf-"){Ls("invalid charset"),m(pV(415,'unsupported charset "'+f.toUpperCase()+'"',{charset:f,type:"charset.unsupported"}));return}dV(p,d,m,l,Ls,{encoding:f,inflate:n,limit:r,verify:o})}}function gV(t,e){var r=t.indexOf(e),n="";if(r!==-1){n=t.substring(0,r)+wP;for(var s=r+1;s{"use strict";var xV=Ea(),hl=ll()("body-parser:raw"),_V=fl(),RP=Aa();$P.exports=wV;function wV(t){var e=t||{},r=e.inflate!==!1,n=typeof e.limit!="number"?xV.parse(e.limit||"100kb"):e.limit,s=e.type||"application/octet-stream",i=e.verify||!1;if(i!==!1&&typeof i!="function")throw new TypeError("option verify must be function");var a=typeof s!="function"?SV(s):s;function o(c){return c}return function(l,u,p){if(l._body){hl("body already parsed"),p();return}if(l.body=l.body||{},!RP.hasBody(l)){hl("skip empty body"),p();return}if(hl("content-type %j",l.headers["content-type"]),!a(l)){hl("skip parsing"),p();return}_V(l,u,p,o,hl,{encoding:null,inflate:r,limit:n,verify:i})}}function SV(t){return function(r){return!!RP(r,t)}}});var IP=R((Ixe,CP)=>{"use strict";var EV=Ea(),kV=tl(),gl=ll()("body-parser:text"),TV=fl(),PP=Aa();CP.exports=RV;function RV(t){var e=t||{},r=e.defaultCharset||"utf-8",n=e.inflate!==!1,s=typeof e.limit!="number"?EV.parse(e.limit||"100kb"):e.limit,i=e.type||"text/plain",a=e.verify||!1;if(a!==!1&&typeof a!="function")throw new TypeError("option verify must be function");var o=typeof i!="function"?OV(i):i;function c(l){return l}return function(u,p,d){if(u._body){gl("body already parsed"),d();return}if(u.body=u.body||{},!PP.hasBody(u)){gl("skip empty body"),d();return}if(gl("content-type %j",u.headers["content-type"]),!o(u)){gl("skip parsing"),d();return}var m=$V(u)||r;TV(u,p,d,c,gl,{encoding:m,inflate:n,limit:s,verify:a})}}function $V(t){try{return(kV.parse(t).parameters.charset||"").toLowerCase()}catch{return}}function OV(t){return function(r){return!!PP(r,t)}}});var Ri=R((Axe,AP)=>{"use strict";AP.exports=TypeError});var jP=R((Nxe,NP)=>{NP.exports=require("util").inspect});var _l=R((jxe,tC)=>{var Yb=typeof Map=="function"&&Map.prototype,qb=Object.getOwnPropertyDescriptor&&Yb?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,zd=Yb&&qb&&typeof qb.get=="function"?qb.get:null,DP=Yb&&Map.prototype.forEach,Kb=typeof Set=="function"&&Set.prototype,Fb=Object.getOwnPropertyDescriptor&&Kb?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,Ld=Kb&&Fb&&typeof Fb.get=="function"?Fb.get:null,MP=Kb&&Set.prototype.forEach,PV=typeof WeakMap=="function"&&WeakMap.prototype,yl=PV?WeakMap.prototype.has:null,CV=typeof WeakSet=="function"&&WeakSet.prototype,bl=CV?WeakSet.prototype.has:null,IV=typeof WeakRef=="function"&&WeakRef.prototype,zP=IV?WeakRef.prototype.deref:null,AV=Boolean.prototype.valueOf,NV=Object.prototype.toString,jV=Function.prototype.toString,DV=String.prototype.match,Jb=String.prototype.slice,qs=String.prototype.replace,MV=String.prototype.toUpperCase,LP=String.prototype.toLowerCase,GP=RegExp.prototype.test,qP=Array.prototype.concat,Zn=Array.prototype.join,zV=Array.prototype.slice,FP=Math.floor,Bb=typeof BigInt=="function"?BigInt.prototype.valueOf:null,Ub=Object.getOwnPropertySymbols,Wb=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Symbol.prototype.toString:null,Na=typeof Symbol=="function"&&typeof Symbol.iterator=="object",xl=typeof Symbol=="function"&&Symbol.toStringTag&&(typeof Symbol.toStringTag===Na||!0)?Symbol.toStringTag:null,YP=Object.prototype.propertyIsEnumerable,UP=(typeof Reflect=="function"?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(t){return t.__proto__}:null);function HP(t,e){if(t===1/0||t===-1/0||t!==t||t&&t>-1e3&&t<1e3||GP.call(/e/,e))return e;var r=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if(typeof t=="number"){var n=t<0?-FP(-t):FP(t);if(n!==t){var s=String(n),i=Jb.call(e,s.length+1);return qs.call(s,r,"$&_")+"."+qs.call(qs.call(i,/([0-9]{3})/g,"$&_"),/_$/,"")}}return qs.call(e,r,"$&_")}var Zb=jP(),BP=Zb.custom,WP=QP(BP)?BP:null,KP={__proto__:null,double:'"',single:"'"},LV={__proto__:null,double:/(["\\])/g,single:/(['\\])/g};tC.exports=function t(e,r,n,s){var i=r||{};if(ps(i,"quoteStyle")&&!ps(KP,i.quoteStyle))throw new TypeError('option "quoteStyle" must be "single" or "double"');if(ps(i,"maxStringLength")&&(typeof i.maxStringLength=="number"?i.maxStringLength<0&&i.maxStringLength!==1/0:i.maxStringLength!==null))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var a=ps(i,"customInspect")?i.customInspect:!0;if(typeof a!="boolean"&&a!=="symbol")throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(ps(i,"indent")&&i.indent!==null&&i.indent!==" "&&!(parseInt(i.indent,10)===i.indent&&i.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if(ps(i,"numericSeparator")&&typeof i.numericSeparator!="boolean")throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var o=i.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 eC(e,i);if(typeof e=="number"){if(e===0)return 1/0/e>0?"0":"-0";var c=String(e);return o?HP(e,c):c}if(typeof e=="bigint"){var l=String(e)+"n";return o?HP(e,l):l}var u=typeof i.depth>"u"?5:i.depth;if(typeof n>"u"&&(n=0),n>=u&&u>0&&typeof e=="object")return Vb(e)?"[Array]":"[Object]";var p=n7(i,n);if(typeof s>"u")s=[];else if(XP(s,e)>=0)return"[Circular]";function d(H,Z,W){if(Z&&(s=zV.call(s),s.push(Z)),W){var we={depth:i.depth};return ps(i,"quoteStyle")&&(we.quoteStyle=i.quoteStyle),t(H,we,n+1,s)}return t(H,i,n+1,s)}if(typeof e=="function"&&!ZP(e)){var m=GV(e),f=Md(e,d);return"[Function"+(m?": "+m:" (anonymous)")+"]"+(f.length>0?" { "+Zn.call(f,", ")+" }":"")}if(QP(e)){var v=Na?qs.call(String(e),/^(Symbol\(.*\))_[^)]*$/,"$1"):Wb.call(e);return typeof e=="object"&&!Na?vl(v):v}if(e7(e)){for(var g="<"+LP.call(String(e.nodeName)),h=e.attributes||[],y=0;y",g}if(Vb(e)){if(e.length===0)return"[]";var b=Md(e,d);return p&&!r7(b)?"["+Gb(b,p)+"]":"[ "+Zn.call(b,", ")+" ]"}if(UV(e)){var x=Md(e,d);return!("cause"in Error.prototype)&&"cause"in e&&!YP.call(e,"cause")?"{ ["+String(e)+"] "+Zn.call(qP.call("[cause]: "+d(e.cause),x),", ")+" }":x.length===0?"["+String(e)+"]":"{ ["+String(e)+"] "+Zn.call(x,", ")+" }"}if(typeof e=="object"&&a){if(WP&&typeof e[WP]=="function"&&Zb)return Zb(e,{depth:u-n});if(a!=="symbol"&&typeof e.inspect=="function")return e.inspect()}if(YV(e)){var w=[];return DP&&DP.call(e,function(H,Z){w.push(d(Z,e,!0)+" => "+d(H,e))}),VP("Map",zd.call(e),w,p)}if(QV(e)){var S=[];return MP&&MP.call(e,function(H){S.push(d(H,e))}),VP("Set",Ld.call(e),S,p)}if(KV(e))return Hb("WeakMap");if(XV(e))return Hb("WeakSet");if(JV(e))return Hb("WeakRef");if(BV(e))return vl(d(Number(e)));if(ZV(e))return vl(d(Bb.call(e)));if(WV(e))return vl(AV.call(e));if(HV(e))return vl(d(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(!FV(e)&&!ZP(e)){var E=Md(e,d),k=UP?UP(e)===Object.prototype:e instanceof Object||e.constructor===Object,$=e instanceof Object?"":"null prototype",j=!k&&xl&&Object(e)===e&&xl in e?Jb.call(Fs(e),8,-1):$?"Object":"",I=k||typeof e.constructor!="function"?"":e.constructor.name?e.constructor.name+" ":"",q=I+(j||$?"["+Zn.call(qP.call([],j||[],$||[]),": ")+"] ":"");return E.length===0?q+"{}":p?q+"{"+Gb(E,p)+"}":q+"{ "+Zn.call(E,", ")+" }"}return String(e)};function JP(t,e,r){var n=r.quoteStyle||e,s=KP[n];return s+t+s}function qV(t){return qs.call(String(t),/"/g,""")}function $i(t){return!xl||!(typeof t=="object"&&(xl in t||typeof t[xl]<"u"))}function Vb(t){return Fs(t)==="[object Array]"&&$i(t)}function FV(t){return Fs(t)==="[object Date]"&&$i(t)}function ZP(t){return Fs(t)==="[object RegExp]"&&$i(t)}function UV(t){return Fs(t)==="[object Error]"&&$i(t)}function HV(t){return Fs(t)==="[object String]"&&$i(t)}function BV(t){return Fs(t)==="[object Number]"&&$i(t)}function WV(t){return Fs(t)==="[object Boolean]"&&$i(t)}function QP(t){if(Na)return t&&typeof t=="object"&&t instanceof Symbol;if(typeof t=="symbol")return!0;if(!t||typeof t!="object"||!Wb)return!1;try{return Wb.call(t),!0}catch{}return!1}function ZV(t){if(!t||typeof t!="object"||!Bb)return!1;try{return Bb.call(t),!0}catch{}return!1}var VV=Object.prototype.hasOwnProperty||function(t){return t in this};function ps(t,e){return VV.call(t,e)}function Fs(t){return NV.call(t)}function GV(t){if(t.name)return t.name;var e=DV.call(jV.call(t),/^function\s*([\w$]+)/);return e?e[1]:null}function XP(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 eC(Jb.call(t,0,e.maxStringLength),e)+n}var s=LV[e.quoteStyle||"single"];s.lastIndex=0;var i=qs.call(qs.call(t,s,"\\$1"),/[\x00-\x1f]/g,t7);return JP(i,"single",e)}function t7(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":"")+MV.call(e.toString(16))}function vl(t){return"Object("+t+")"}function Hb(t){return t+" { ? }"}function VP(t,e,r,n){var s=n?Gb(r,n):Zn.call(r,", ");return t+" ("+e+") {"+s+"}"}function r7(t){for(var e=0;e=0)return!1;return!0}function n7(t,e){var r;if(t.indent===" ")r=" ";else if(typeof t.indent=="number"&&t.indent>0)r=Zn.call(Array(t.indent+1)," ");else return null;return{base:r,prev:Zn.call(Array(e+1),r)}}function Gb(t,e){if(t.length===0)return"";var r=` `+e.prev+e.base;return r+Zn.call(t,","+r)+` -`+e.prev}function jd(t,e){var r=Hb(t),n=[];if(r){n.length=t.length;for(var s=0;s{"use strict";var JV=bl(),QV=Ti(),zd=function(t,e,r){for(var n=t,s;(s=n.next)!=null;n=s)if(s.key===e)return n.next=s.next,r||(s.next=t.next,t.next=s),s},XV=function(t,e){if(t){var r=zd(t,e);return r&&r.value}},e7=function(t,e,r){var n=zd(t,e);n?n.value=r:t.next={key:e,next:t.next,value:r}},t7=function(t,e){return t?!!zd(t,e):!1},r7=function(t,e){if(t)return zd(t,e,!0)};KP.exports=function(){var e,r={assert:function(n){if(!r.has(n))throw new QV("Side channel does not contain "+JV(n))},delete:function(n){var s=e&&e.next,i=r7(e,n);return i&&s&&s===i&&(e=void 0),!!i},get:function(n){return XV(e,n)},has:function(n){return t7(e,n)},set:function(n,s){e||(e={next:void 0}),e7(e,n,s)}};return r}});var Gb=R((Pxe,QP)=>{"use strict";QP.exports=Object});var eC=R((Cxe,XP)=>{"use strict";XP.exports=Error});var rC=R((Ixe,tC)=>{"use strict";tC.exports=EvalError});var sC=R((Axe,nC)=>{"use strict";nC.exports=RangeError});var aC=R((Nxe,iC)=>{"use strict";iC.exports=ReferenceError});var cC=R((jxe,oC)=>{"use strict";oC.exports=SyntaxError});var uC=R((Dxe,lC)=>{"use strict";lC.exports=URIError});var dC=R((Mxe,pC)=>{"use strict";pC.exports=Math.abs});var fC=R((zxe,mC)=>{"use strict";mC.exports=Math.floor});var gC=R((Lxe,hC)=>{"use strict";hC.exports=Math.max});var yC=R((qxe,vC)=>{"use strict";vC.exports=Math.min});var xC=R((Fxe,bC)=>{"use strict";bC.exports=Math.pow});var wC=R((Uxe,_C)=>{"use strict";_C.exports=Math.round});var EC=R((Hxe,SC)=>{"use strict";SC.exports=Number.isNaN||function(e){return e!==e}});var TC=R((Bxe,kC)=>{"use strict";var n7=EC();kC.exports=function(e){return n7(e)||e===0?e:e<0?-1:1}});var $C=R((Wxe,RC)=>{"use strict";RC.exports=Object.getOwnPropertyDescriptor});var Yb=R((Zxe,OC)=>{"use strict";var Ld=$C();if(Ld)try{Ld([],"length")}catch{Ld=null}OC.exports=Ld});var CC=R((Vxe,PC)=>{"use strict";var qd=Object.defineProperty||!1;if(qd)try{qd({},"a",{value:1})}catch{qd=!1}PC.exports=qd});var AC=R((Gxe,IC)=>{"use strict";IC.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 s=42;e[r]=s;for(var i 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 a=Object.getOwnPropertySymbols(e);if(a.length!==1||a[0]!==r||!Object.prototype.propertyIsEnumerable.call(e,r))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var o=Object.getOwnPropertyDescriptor(e,r);if(o.value!==s||o.enumerable!==!0)return!1}return!0}});var DC=R((Yxe,jC)=>{"use strict";var NC=typeof Symbol<"u"&&Symbol,s7=AC();jC.exports=function(){return typeof NC!="function"||typeof Symbol!="function"||typeof NC("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:s7()}});var Kb=R((Kxe,MC)=>{"use strict";MC.exports=typeof Reflect<"u"&&Reflect.getPrototypeOf||null});var Jb=R((Jxe,zC)=>{"use strict";var i7=Gb();zC.exports=i7.getPrototypeOf||null});var FC=R((Qxe,qC)=>{"use strict";var a7="Function.prototype.bind called on incompatible ",o7=Object.prototype.toString,c7=Math.max,l7="[object Function]",LC=function(e,r){for(var n=[],s=0;s{"use strict";var d7=FC();UC.exports=Function.prototype.bind||d7});var Fd=R((e_e,HC)=>{"use strict";HC.exports=Function.prototype.call});var Qb=R((t_e,BC)=>{"use strict";BC.exports=Function.prototype.apply});var ZC=R((r_e,WC)=>{"use strict";WC.exports=typeof Reflect<"u"&&Reflect&&Reflect.apply});var GC=R((n_e,VC)=>{"use strict";var m7=xl(),f7=Qb(),h7=Fd(),g7=ZC();VC.exports=g7||m7.call(h7,f7)});var Xb=R((s_e,YC)=>{"use strict";var v7=xl(),y7=Ti(),b7=Fd(),x7=GC();YC.exports=function(e){if(e.length<1||typeof e[0]!="function")throw new y7("a function is required");return x7(v7,b7,e)}});var tI=R((i_e,eI)=>{"use strict";var _7=Xb(),KC=Yb(),QC;try{QC=[].__proto__===Array.prototype}catch(t){if(!t||typeof t!="object"||!("code"in t)||t.code!=="ERR_PROTO_ACCESS")throw t}var ex=!!QC&&KC&&KC(Object.prototype,"__proto__"),XC=Object,JC=XC.getPrototypeOf;eI.exports=ex&&typeof ex.get=="function"?_7([ex.get]):typeof JC=="function"?function(e){return JC(e==null?e:XC(e))}:!1});var aI=R((a_e,iI)=>{"use strict";var rI=Kb(),nI=Jb(),sI=tI();iI.exports=rI?function(e){return rI(e)}:nI?function(e){if(!e||typeof e!="object"&&typeof e!="function")throw new TypeError("getProto: not an object");return nI(e)}:sI?function(e){return sI(e)}:null});var cI=R((o_e,oI)=>{"use strict";var w7=Function.prototype.call,S7=Object.prototype.hasOwnProperty,E7=xl();oI.exports=E7.call(w7,S7)});var Bd=R((c_e,fI)=>{"use strict";var Ie,k7=Gb(),T7=eC(),R7=rC(),$7=sC(),O7=aC(),Ma=cC(),Da=Ti(),P7=uC(),C7=dC(),I7=fC(),A7=gC(),N7=yC(),j7=xC(),D7=wC(),M7=TC(),dI=Function,tx=function(t){try{return dI('"use strict"; return ('+t+").constructor;")()}catch{}},_l=Yb(),z7=CC(),rx=function(){throw new Da},L7=_l?(function(){try{return arguments.callee,rx}catch{try{return _l(arguments,"callee").get}catch{return rx}}})():rx,Na=DC()(),Ft=aI(),q7=Jb(),F7=Kb(),mI=Qb(),wl=Fd(),ja={},U7=typeof Uint8Array>"u"||!Ft?Ie:Ft(Uint8Array),$i={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?Ie:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?Ie:ArrayBuffer,"%ArrayIteratorPrototype%":Na&&Ft?Ft([][Symbol.iterator]()):Ie,"%AsyncFromSyncIteratorPrototype%":Ie,"%AsyncFunction%":ja,"%AsyncGenerator%":ja,"%AsyncGeneratorFunction%":ja,"%AsyncIteratorPrototype%":ja,"%Atomics%":typeof Atomics>"u"?Ie:Atomics,"%BigInt%":typeof BigInt>"u"?Ie:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?Ie:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?Ie:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?Ie:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":T7,"%eval%":eval,"%EvalError%":R7,"%Float16Array%":typeof Float16Array>"u"?Ie:Float16Array,"%Float32Array%":typeof Float32Array>"u"?Ie:Float32Array,"%Float64Array%":typeof Float64Array>"u"?Ie:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?Ie:FinalizationRegistry,"%Function%":dI,"%GeneratorFunction%":ja,"%Int8Array%":typeof Int8Array>"u"?Ie:Int8Array,"%Int16Array%":typeof Int16Array>"u"?Ie:Int16Array,"%Int32Array%":typeof Int32Array>"u"?Ie:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":Na&&Ft?Ft(Ft([][Symbol.iterator]())):Ie,"%JSON%":typeof JSON=="object"?JSON:Ie,"%Map%":typeof Map>"u"?Ie:Map,"%MapIteratorPrototype%":typeof Map>"u"||!Na||!Ft?Ie:Ft(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":k7,"%Object.getOwnPropertyDescriptor%":_l,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?Ie:Promise,"%Proxy%":typeof Proxy>"u"?Ie:Proxy,"%RangeError%":$7,"%ReferenceError%":O7,"%Reflect%":typeof Reflect>"u"?Ie:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?Ie:Set,"%SetIteratorPrototype%":typeof Set>"u"||!Na||!Ft?Ie:Ft(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?Ie:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":Na&&Ft?Ft(""[Symbol.iterator]()):Ie,"%Symbol%":Na?Symbol:Ie,"%SyntaxError%":Ma,"%ThrowTypeError%":L7,"%TypedArray%":U7,"%TypeError%":Da,"%Uint8Array%":typeof Uint8Array>"u"?Ie:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?Ie:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?Ie:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?Ie:Uint32Array,"%URIError%":P7,"%WeakMap%":typeof WeakMap>"u"?Ie:WeakMap,"%WeakRef%":typeof WeakRef>"u"?Ie:WeakRef,"%WeakSet%":typeof WeakSet>"u"?Ie:WeakSet,"%Function.prototype.call%":wl,"%Function.prototype.apply%":mI,"%Object.defineProperty%":z7,"%Object.getPrototypeOf%":q7,"%Math.abs%":C7,"%Math.floor%":I7,"%Math.max%":A7,"%Math.min%":N7,"%Math.pow%":j7,"%Math.round%":D7,"%Math.sign%":M7,"%Reflect.getPrototypeOf%":F7};if(Ft)try{null.error}catch(t){lI=Ft(Ft(t)),$i["%Error.prototype%"]=lI}var lI,H7=function t(e){var r;if(e==="%AsyncFunction%")r=tx("async function () {}");else if(e==="%GeneratorFunction%")r=tx("function* () {}");else if(e==="%AsyncGeneratorFunction%")r=tx("async function* () {}");else if(e==="%AsyncGenerator%"){var n=t("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if(e==="%AsyncIteratorPrototype%"){var s=t("%AsyncGenerator%");s&&Ft&&(r=Ft(s.prototype))}return $i[e]=r,r},uI={__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"]},Sl=xl(),Ud=cI(),B7=Sl.call(wl,Array.prototype.concat),W7=Sl.call(mI,Array.prototype.splice),pI=Sl.call(wl,String.prototype.replace),Hd=Sl.call(wl,String.prototype.slice),Z7=Sl.call(wl,RegExp.prototype.exec),V7=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,G7=/\\(\\)?/g,Y7=function(e){var r=Hd(e,0,1),n=Hd(e,-1);if(r==="%"&&n!=="%")throw new Ma("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&r!=="%")throw new Ma("invalid intrinsic syntax, expected opening `%`");var s=[];return pI(e,V7,function(i,a,o,c){s[s.length]=o?pI(c,G7,"$1"):a||i}),s},K7=function(e,r){var n=e,s;if(Ud(uI,n)&&(s=uI[n],n="%"+s[0]+"%"),Ud($i,n)){var i=$i[n];if(i===ja&&(i=H7(n)),typeof i>"u"&&!r)throw new Da("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:s,name:n,value:i}}throw new Ma("intrinsic "+e+" does not exist!")};fI.exports=function(e,r){if(typeof e!="string"||e.length===0)throw new Da("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new Da('"allowMissing" argument must be a boolean');if(Z7(/^%?[^%]*%?$/,e)===null)throw new Ma("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=Y7(e),s=n.length>0?n[0]:"",i=K7("%"+s+"%",r),a=i.name,o=i.value,c=!1,l=i.alias;l&&(s=l[0],W7(n,B7([0,1],l)));for(var u=1,p=!0;u=n.length){var v=_l(o,d);p=!!v,p&&"get"in v&&!("originalValue"in v.get)?o=v.get:o=o[d]}else p=Ud(o,d),o=o[d];p&&!c&&($i[a]=o)}}return o}});var nx=R((l_e,vI)=>{"use strict";var hI=Bd(),gI=Xb(),J7=gI([hI("%String.prototype.indexOf%")]);vI.exports=function(e,r){var n=hI(e,!!r);return typeof n=="function"&&J7(e,".prototype.")>-1?gI([n]):n}});var sx=R((u_e,bI)=>{"use strict";var Q7=Bd(),El=nx(),X7=bl(),eG=Ti(),yI=Q7("%Map%",!0),tG=El("Map.prototype.get",!0),rG=El("Map.prototype.set",!0),nG=El("Map.prototype.has",!0),sG=El("Map.prototype.delete",!0),iG=El("Map.prototype.size",!0);bI.exports=!!yI&&function(){var e,r={assert:function(n){if(!r.has(n))throw new eG("Side channel does not contain "+X7(n))},delete:function(n){if(e){var s=sG(e,n);return iG(e)===0&&(e=void 0),s}return!1},get:function(n){if(e)return tG(e,n)},has:function(n){return e?nG(e,n):!1},set:function(n,s){e||(e=new yI),rG(e,n,s)}};return r}});var _I=R((p_e,xI)=>{"use strict";var aG=Bd(),Zd=nx(),oG=bl(),Wd=sx(),cG=Ti(),za=aG("%WeakMap%",!0),lG=Zd("WeakMap.prototype.get",!0),uG=Zd("WeakMap.prototype.set",!0),pG=Zd("WeakMap.prototype.has",!0),dG=Zd("WeakMap.prototype.delete",!0);xI.exports=za?function(){var e,r,n={assert:function(s){if(!n.has(s))throw new cG("Side channel does not contain "+oG(s))},delete:function(s){if(za&&s&&(typeof s=="object"||typeof s=="function")){if(e)return dG(e,s)}else if(Wd&&r)return r.delete(s);return!1},get:function(s){return za&&s&&(typeof s=="object"||typeof s=="function")&&e?lG(e,s):r&&r.get(s)},has:function(s){return za&&s&&(typeof s=="object"||typeof s=="function")&&e?pG(e,s):!!r&&r.has(s)},set:function(s,i){za&&s&&(typeof s=="object"||typeof s=="function")?(e||(e=new za),uG(e,s,i)):Wd&&(r||(r=Wd()),r.set(s,i))}};return n}:Wd});var ix=R((d_e,wI)=>{"use strict";var mG=Ti(),fG=bl(),hG=JP(),gG=sx(),vG=_I(),yG=vG||gG||hG;wI.exports=function(){var e,r={assert:function(n){if(!r.has(n))throw new mG("Side channel does not contain "+fG(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,s){e||(e=yG()),e.set(n,s)}};return r}});var Vd=R((m_e,SI)=>{"use strict";var bG=String.prototype.replace,xG=/%20/g,ax={RFC1738:"RFC1738",RFC3986:"RFC3986"};SI.exports={default:ax.RFC3986,formatters:{RFC1738:function(t){return bG.call(t,xG,"+")},RFC3986:function(t){return String(t)}},RFC1738:ax.RFC1738,RFC3986:ax.RFC3986}});var px=R((f_e,TI)=>{"use strict";var _G=Vd(),wG=ix(),ox=Object.prototype.hasOwnProperty,Oi=Array.isArray,Yd=wG(),EI=function(e,r){return Yd.set(e,r),e},Gd=function(e){return Yd.has(e)},lx=function(e){return Yd.get(e)},kI=function(e,r){Yd.set(e,r)},Vn=(function(){for(var t=[],e=0;e<256;++e)t.push("%"+((e<16?"0":"")+e.toString(16)).toUpperCase());return t})(),SG=function(e){for(;e.length>1;){var r=e.pop(),n=r.obj[r.prop];if(Oi(n)){for(var s=[],i=0;i=cx?a.slice(c,c+cx):a,u=[],p=0;p=48&&d<=57||d>=65&&d<=90||d>=97&&d<=122||i===_G.RFC1738&&(d===40||d===41)){u[u.length]=l.charAt(p);continue}if(d<128){u[u.length]=Vn[d];continue}if(d<2048){u[u.length]=Vn[192|d>>6]+Vn[128|d&63];continue}if(d<55296||d>=57344){u[u.length]=Vn[224|d>>12]+Vn[128|d>>6&63]+Vn[128|d&63];continue}p+=1,d=65536+((d&1023)<<10|l.charCodeAt(p)&1023),u[u.length]=Vn[240|d>>18]+Vn[128|d>>12&63]+Vn[128|d>>6&63]+Vn[128|d&63]}o+=u.join("")}return o},$G=function(e){for(var r=[{obj:{o:e},prop:"o"}],n=[],s=0;sn?EI(ux(a,{plainObjects:s}),a.length-1):a},IG=function(e,r){if(Oi(e)){for(var n=[],s=0;s{"use strict";var $I=ix(),Kd=px(),kl=Vd(),AG=Object.prototype.hasOwnProperty,OI={brackets:function(e){return e+"[]"},comma:"comma",indices:function(e,r){return e+"["+r+"]"},repeat:function(e){return e}},Gn=Array.isArray,NG=Array.prototype.push,PI=function(t,e){NG.apply(t,Gn(e)?e:[e])},jG=Date.prototype.toISOString,RI=kl.default,jt={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,commaRoundTrip:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:Kd.encode,encodeValuesOnly:!1,filter:void 0,format:RI,formatter:kl.formatters[RI],indices:!1,serializeDate:function(e){return jG.call(e)},skipNulls:!1,strictNullHandling:!1},DG=function(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"||typeof e=="symbol"||typeof e=="bigint"},dx={},MG=function t(e,r,n,s,i,a,o,c,l,u,p,d,m,f,v,g,h,y){for(var b=e,x=y,w=0,S=!1;(x=x.get(dx))!==void 0&&!S;){var E=x.get(e);if(w+=1,typeof E<"u"){if(E===w)throw new RangeError("Cyclic object value");S=!0}typeof x.get(dx)>"u"&&(w=0)}if(typeof u=="function"?b=u(r,b):b instanceof Date?b=m(b):n==="comma"&&Gn(b)&&(b=Kd.maybeMap(b,function(G){return G instanceof Date?m(G):G})),b===null){if(a)return l&&!g?l(r,jt.encoder,h,"key",f):r;b=""}if(DG(b)||Kd.isBuffer(b)){if(l){var k=g?r:l(r,jt.encoder,h,"key",f);return[v(k)+"="+v(l(b,jt.encoder,h,"value",f))]}return[v(r)+"="+v(String(b))]}var $=[];if(typeof b>"u")return $;var j;if(n==="comma"&&Gn(b))g&&l&&(b=Kd.maybeMap(b,l)),j=[{value:b.length>0?b.join(",")||null:void 0}];else if(Gn(u))j=u;else{var I=Object.keys(b);j=p?I.sort(p):I}var q=c?String(r).replace(/\./g,"%2E"):String(r),H=s&&Gn(b)&&b.length===1?q+"[]":q;if(i&&Gn(b)&&b.length===0)return H+"[]";for(var Z=0;Z"u"?e.encodeDotInKeys===!0?!0:jt.allowDots:!!e.allowDots;return{addQueryPrefix:typeof e.addQueryPrefix=="boolean"?e.addQueryPrefix:jt.addQueryPrefix,allowDots:o,allowEmptyArrays:typeof e.allowEmptyArrays=="boolean"?!!e.allowEmptyArrays:jt.allowEmptyArrays,arrayFormat:a,charset:r,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:jt.charsetSentinel,commaRoundTrip:!!e.commaRoundTrip,delimiter:typeof e.delimiter>"u"?jt.delimiter:e.delimiter,encode:typeof e.encode=="boolean"?e.encode:jt.encode,encodeDotInKeys:typeof e.encodeDotInKeys=="boolean"?e.encodeDotInKeys:jt.encodeDotInKeys,encoder:typeof e.encoder=="function"?e.encoder:jt.encoder,encodeValuesOnly:typeof e.encodeValuesOnly=="boolean"?e.encodeValuesOnly:jt.encodeValuesOnly,filter:i,format:n,formatter:s,serializeDate:typeof e.serializeDate=="function"?e.serializeDate:jt.serializeDate,skipNulls:typeof e.skipNulls=="boolean"?e.skipNulls:jt.skipNulls,sort:typeof e.sort=="function"?e.sort:null,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:jt.strictNullHandling}};CI.exports=function(t,e){var r=t,n=zG(e),s,i;typeof n.filter=="function"?(i=n.filter,r=i("",r)):Gn(n.filter)&&(i=n.filter,s=i);var a=[];if(typeof r!="object"||r===null)return"";var o=OI[n.arrayFormat],c=o==="comma"&&n.commaRoundTrip;s||(s=Object.keys(r)),n.sort&&s.sort(n.sort);for(var l=$I(),u=0;u0?f+m:""}});var DI=R((g_e,jI)=>{"use strict";var Us=px(),Jd=Object.prototype.hasOwnProperty,AI=Array.isArray,Ot={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:Us.decode,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictDepth:!1,strictNullHandling:!1,throwOnLimitExceeded:!1},LG=function(t){return t.replace(/&#(\d+);/g,function(e,r){return String.fromCharCode(parseInt(r,10))})},NI=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},qG="utf8=%26%2310003%3B",FG="utf8=%E2%9C%93",UG=function(e,r){var n={__proto__:null},s=r.ignoreQueryPrefix?e.replace(/^\?/,""):e;s=s.replace(/%5B/gi,"[").replace(/%5D/gi,"]");var i=r.parameterLimit===1/0?void 0:r.parameterLimit,a=s.split(r.delimiter,r.throwOnLimitExceeded?i+1:i);if(r.throwOnLimitExceeded&&a.length>i)throw new RangeError("Parameter limit exceeded. Only "+i+" parameter"+(i===1?"":"s")+" allowed.");var o=-1,c,l=r.charset;if(r.charsetSentinel)for(c=0;c-1&&(f=AI(f)?[f]:f),m!==null){var v=Jd.call(n,m);v&&r.duplicates==="combine"?n[m]=Us.combine(n[m],f,r.arrayLimit,r.plainObjects):(!v||r.duplicates==="last")&&(n[m]=f)}}return n},HG=function(t,e,r,n){var s=0;if(t.length>0&&t[t.length-1]==="[]"){var i=t.slice(0,-1).join("");s=Array.isArray(e)&&e[i]?e[i].length:0}for(var a=n?e:NI(e,r,s),o=t.length-1;o>=0;--o){var c,l=t[o];if(l==="[]"&&r.parseArrays)Us.isOverflow(a)?c=a:c=r.allowEmptyArrays&&(a===""||r.strictNullHandling&&a===null)?[]:Us.combine([],a,r.arrayLimit,r.plainObjects);else{c=r.plainObjects?{__proto__:null}:{};var u=l.charAt(0)==="["&&l.charAt(l.length-1)==="]"?l.slice(1,-1):l,p=r.decodeDotInKeys?u.replace(/%2E/g,"."):u,d=parseInt(p,10);!r.parseArrays&&p===""?c={0:a}:!isNaN(d)&&l!==p&&String(d)===p&&d>=0&&r.parseArrays&&d<=r.arrayLimit?(c=[],c[d]=a):p!=="__proto__"&&(c[p]=a)}a=c}return a},BG=function(e,r){var n=r.allowDots?e.replace(/\.([^.[]+)/g,"[$1]"):e;if(r.depth<=0)return!r.plainObjects&&Jd.call(Object.prototype,n)&&!r.allowPrototypes?void 0:[n];var s=/(\[[^[\]]*])/,i=/(\[[^[\]]*])/g,a=s.exec(n),o=a?n.slice(0,a.index):n,c=[];if(o){if(!r.plainObjects&&Jd.call(Object.prototype,o)&&!r.allowPrototypes)return;c.push(o)}for(var l=0;(a=i.exec(n))!==null&&l"u"?Ot.charset:e.charset,n=typeof e.duplicates>"u"?Ot.duplicates:e.duplicates;if(n!=="combine"&&n!=="first"&&n!=="last")throw new TypeError("The duplicates option must be either combine, first, or last");var s=typeof e.allowDots>"u"?e.decodeDotInKeys===!0?!0:Ot.allowDots:!!e.allowDots;return{allowDots:s,allowEmptyArrays:typeof e.allowEmptyArrays=="boolean"?!!e.allowEmptyArrays:Ot.allowEmptyArrays,allowPrototypes:typeof e.allowPrototypes=="boolean"?e.allowPrototypes:Ot.allowPrototypes,allowSparse:typeof e.allowSparse=="boolean"?e.allowSparse:Ot.allowSparse,arrayLimit:typeof e.arrayLimit=="number"?e.arrayLimit:Ot.arrayLimit,charset:r,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:Ot.charsetSentinel,comma:typeof e.comma=="boolean"?e.comma:Ot.comma,decodeDotInKeys:typeof e.decodeDotInKeys=="boolean"?e.decodeDotInKeys:Ot.decodeDotInKeys,decoder:typeof e.decoder=="function"?e.decoder:Ot.decoder,delimiter:typeof e.delimiter=="string"||Us.isRegExp(e.delimiter)?e.delimiter:Ot.delimiter,depth:typeof e.depth=="number"||e.depth===!1?+e.depth:Ot.depth,duplicates:n,ignoreQueryPrefix:e.ignoreQueryPrefix===!0,interpretNumericEntities:typeof e.interpretNumericEntities=="boolean"?e.interpretNumericEntities:Ot.interpretNumericEntities,parameterLimit:typeof e.parameterLimit=="number"?e.parameterLimit:Ot.parameterLimit,parseArrays:e.parseArrays!==!1,plainObjects:typeof e.plainObjects=="boolean"?e.plainObjects:Ot.plainObjects,strictDepth:typeof e.strictDepth=="boolean"?!!e.strictDepth:Ot.strictDepth,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:Ot.strictNullHandling,throwOnLimitExceeded:typeof e.throwOnLimitExceeded=="boolean"?e.throwOnLimitExceeded:!1}};jI.exports=function(t,e){var r=ZG(e);if(t===""||t===null||typeof t>"u")return r.plainObjects?{__proto__:null}:{};for(var n=typeof t=="string"?UG(t,r):t,s=r.plainObjects?{__proto__:null}:{},i=Object.keys(n),a=0;a{"use strict";var VG=II(),GG=DI(),YG=Vd();MI.exports={formats:YG,parse:GG,stringify:VG}});var HI=R((y_e,UI)=>{"use strict";var KG=Sa(),JG=Xc(),Xd=xi(),kn=ol()("body-parser:urlencoded"),QG=Hn()("body-parser"),XG=dl(),LI=Ia();UI.exports=eY;var zI=Object.create(null);function eY(t){var e=t||{};e.extended===void 0&&QG("undefined extended: provide extended option");var r=e.extended!==!1,n=e.inflate!==!1,s=typeof e.limit!="number"?KG.parse(e.limit||"100kb"):e.limit,i=e.type||"application/x-www-form-urlencoded",a=e.verify||!1;if(a!==!1&&typeof a!="function")throw new TypeError("option verify must be function");var o=r?tY(e):nY(e),c=typeof i!="function"?sY(i):i;function l(u){return u.length?o(u):{}}return function(p,d,m){if(p._body){kn("body already parsed"),m();return}if(p.body=p.body||{},!LI.hasBody(p)){kn("skip empty body"),m();return}if(kn("content-type %j",p.headers["content-type"]),!c(p)){kn("skip parsing"),m();return}var f=rY(p)||"utf-8";if(f!=="utf-8"){kn("invalid charset"),m(Xd(415,'unsupported charset "'+f.toUpperCase()+'"',{charset:f,type:"charset.unsupported"}));return}XG(p,d,m,l,kn,{debug:kn,encoding:f,inflate:n,limit:s,verify:a})}}function tY(t){var e=t.parameterLimit!==void 0?t.parameterLimit:1e3,r=t.depth!==void 0?t.depth:32,n=FI("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(i){var a=qI(i,e);if(a===void 0)throw kn("too many parameters"),Xd(413,"too many parameters",{type:"parameters.too.many"});var o=Math.max(100,a);kn("parse extended urlencoding");try{return n(i,{allowPrototypes:!0,arrayLimit:o,depth:r,strictDepth:!0,parameterLimit:e})}catch(c){throw c instanceof RangeError?Xd(400,"The input exceeded the depth",{type:"querystring.parse.rangeError"}):c}}}function rY(t){try{return(JG.parse(t).parameters.charset||"").toLowerCase()}catch{return}}function qI(t,e){for(var r=0,n=0;(n=t.indexOf("&",n))!==-1;)if(r++,n++,r===e)return;return r}function FI(t){var e=zI[t];if(e!==void 0)return e.parse;switch(t){case"qs":e=Qd();break;case"querystring":e=require("querystring");break}return zI[t]=e,e.parse}function nY(t){var e=t.parameterLimit!==void 0?t.parameterLimit:1e3,r=FI("querystring");if(isNaN(e)||e<1)throw new TypeError("option parameterLimit must be a positive number");return isFinite(e)&&(e=e|0),function(s){var i=qI(s,e);if(i===void 0)throw kn("too many parameters"),Xd(413,"too many parameters",{type:"parameters.too.many"});return kn("parse urlencoding"),r(s,void 0,void 0,{maxKeys:e})}}function sY(t){return function(r){return!!LI(r,t)}}});var ZI=R((Hs,WI)=>{"use strict";var iY=Hn()("body-parser"),BI=Object.create(null);Hs=WI.exports=iY.function(aY,"bodyParser: use individual json/urlencoded middlewares");Object.defineProperty(Hs,"json",{configurable:!0,enumerable:!0,get:em("json")});Object.defineProperty(Hs,"raw",{configurable:!0,enumerable:!0,get:em("raw")});Object.defineProperty(Hs,"text",{configurable:!0,enumerable:!0,get:em("text")});Object.defineProperty(Hs,"urlencoded",{configurable:!0,enumerable:!0,get:em("urlencoded")});function aY(t){var e=Object.create(t||null,{type:{configurable:!0,enumerable:!0,value:void 0,writable:!0}}),r=Hs.urlencoded(e),n=Hs.json(e);return function(i,a,o){n(i,a,function(c){if(c)return o(c);r(i,a,o)})}}function em(t){return function(){return oY(t)}}function oY(t){var e=BI[t];if(e!==void 0)return e;switch(t){case"json":e=xP();break;case"raw":e=SP();break;case"text":e=TP();break;case"urlencoded":e=HI();break}return BI[t]=e}});var GI=R((b_e,VI)=>{"use strict";VI.exports=lY;var cY=Object.prototype.hasOwnProperty;function lY(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(s){if(!(!r&&cY.call(t,s))){var i=Object.getOwnPropertyDescriptor(e,s);Object.defineProperty(t,s,i)}}),t}});var KI=R((x_e,YI)=>{var Tl=1e3,Rl=Tl*60,$l=Rl*60,Ol=$l*24,uY=Ol*365.25;YI.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return pY(t);if(r==="number"&&isNaN(t)===!1)return e.long?mY(t):dY(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function pY(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*uY;case"days":case"day":case"d":return r*Ol;case"hours":case"hour":case"hrs":case"hr":case"h":return r*$l;case"minutes":case"minute":case"mins":case"min":case"m":return r*Rl;case"seconds":case"second":case"secs":case"sec":case"s":return r*Tl;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function dY(t){return t>=Ol?Math.round(t/Ol)+"d":t>=$l?Math.round(t/$l)+"h":t>=Rl?Math.round(t/Rl)+"m":t>=Tl?Math.round(t/Tl)+"s":t+"ms"}function mY(t){return tm(t,Ol,"day")||tm(t,$l,"hour")||tm(t,Rl,"minute")||tm(t,Tl,"second")||t+" ms"}function tm(t,e,r){if(!(t{Ye=JI.exports=fx.debug=fx.default=fx;Ye.coerce=yY;Ye.disable=gY;Ye.enable=hY;Ye.enabled=vY;Ye.humanize=KI();Ye.names=[];Ye.skips=[];Ye.formatters={};var mx;function fY(t){var e=0,r;for(r in t)e=(e<<5)-e+t.charCodeAt(r),e|=0;return Ye.colors[Math.abs(e)%Ye.colors.length]}function fx(t){function e(){if(e.enabled){var r=e,n=+new Date,s=n-(mx||n);r.diff=s,r.prev=mx,r.curr=n,mx=n;for(var i=new Array(arguments.length),a=0;a{fr=XI.exports=hx();fr.log=_Y;fr.formatArgs=xY;fr.save=wY;fr.load=QI;fr.useColors=bY;fr.storage=typeof chrome<"u"&&typeof chrome.storage<"u"?chrome.storage.local:SY();fr.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"];function bY(){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+)/)}fr.formatters.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}};function xY(t){var e=this.useColors;if(t[0]=(e?"%c":"")+this.namespace+(e?" %c":" ")+t[0]+(e?"%c ":" ")+"+"+fr.humanize(this.diff),!!e){var r="color: "+this.color;t.splice(1,0,r,"color: inherit");var n=0,s=0;t[0].replace(/%[a-zA-Z%]/g,function(i){i!=="%%"&&(n++,i==="%c"&&(s=n))}),t.splice(s,0,r)}}function _Y(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function wY(t){try{t==null?fr.storage.removeItem("debug"):fr.storage.debug=t}catch{}}function QI(){var t;try{t=fr.storage.debug}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}fr.enable(QI());function SY(){try{return window.localStorage}catch{}}});var sA=R((Ut,nA)=>{var tA=require("tty"),Pl=require("util");Ut=nA.exports=hx();Ut.init=PY;Ut.log=RY;Ut.formatArgs=TY;Ut.save=$Y;Ut.load=rA;Ut.useColors=kY;Ut.colors=[6,2,3,4,5,1];Ut.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(s,i){return i.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 La=parseInt(process.env.DEBUG_FD,10)||2;La!==1&&La!==2&&Pl.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 EY=La===1?process.stdout:La===2?process.stderr:OY(La);function kY(){return"colors"in Ut.inspectOpts?!!Ut.inspectOpts.colors:tA.isatty(La)}Ut.formatters.o=function(t){return this.inspectOpts.colors=this.useColors,Pl.inspect(t,this.inspectOpts).split(` -`).map(function(e){return e.trim()}).join(" ")};Ut.formatters.O=function(t){return this.inspectOpts.colors=this.useColors,Pl.inspect(t,this.inspectOpts)};function TY(t){var e=this.namespace,r=this.useColors;if(r){var n=this.color,s=" \x1B[3"+n+";1m"+e+" \x1B[0m";t[0]=s+t[0].split(` +`+e.prev}function Md(t,e){var r=Vb(t),n=[];if(r){n.length=t.length;for(var s=0;s{"use strict";var s7=_l(),i7=Ri(),qd=function(t,e,r){for(var n=t,s;(s=n.next)!=null;n=s)if(s.key===e)return n.next=s.next,r||(s.next=t.next,t.next=s),s},a7=function(t,e){if(t){var r=qd(t,e);return r&&r.value}},o7=function(t,e,r){var n=qd(t,e);n?n.value=r:t.next={key:e,next:t.next,value:r}},c7=function(t,e){return t?!!qd(t,e):!1},l7=function(t,e){if(t)return qd(t,e,!0)};rC.exports=function(){var e,r={assert:function(n){if(!r.has(n))throw new i7("Side channel does not contain "+s7(n))},delete:function(n){var s=e&&e.next,i=l7(e,n);return i&&s&&s===i&&(e=void 0),!!i},get:function(n){return a7(e,n)},has:function(n){return c7(e,n)},set:function(n,s){e||(e={next:void 0}),o7(e,n,s)}};return r}});var Qb=R((Mxe,sC)=>{"use strict";sC.exports=Object});var aC=R((zxe,iC)=>{"use strict";iC.exports=Error});var cC=R((Lxe,oC)=>{"use strict";oC.exports=EvalError});var uC=R((qxe,lC)=>{"use strict";lC.exports=RangeError});var dC=R((Fxe,pC)=>{"use strict";pC.exports=ReferenceError});var fC=R((Uxe,mC)=>{"use strict";mC.exports=SyntaxError});var gC=R((Hxe,hC)=>{"use strict";hC.exports=URIError});var yC=R((Bxe,vC)=>{"use strict";vC.exports=Math.abs});var xC=R((Wxe,bC)=>{"use strict";bC.exports=Math.floor});var wC=R((Zxe,_C)=>{"use strict";_C.exports=Math.max});var EC=R((Vxe,SC)=>{"use strict";SC.exports=Math.min});var TC=R((Gxe,kC)=>{"use strict";kC.exports=Math.pow});var $C=R((Yxe,RC)=>{"use strict";RC.exports=Math.round});var PC=R((Kxe,OC)=>{"use strict";OC.exports=Number.isNaN||function(e){return e!==e}});var IC=R((Jxe,CC)=>{"use strict";var u7=PC();CC.exports=function(e){return u7(e)||e===0?e:e<0?-1:1}});var NC=R((Qxe,AC)=>{"use strict";AC.exports=Object.getOwnPropertyDescriptor});var Xb=R((Xxe,jC)=>{"use strict";var Fd=NC();if(Fd)try{Fd([],"length")}catch{Fd=null}jC.exports=Fd});var MC=R((e_e,DC)=>{"use strict";var Ud=Object.defineProperty||!1;if(Ud)try{Ud({},"a",{value:1})}catch{Ud=!1}DC.exports=Ud});var LC=R((t_e,zC)=>{"use strict";zC.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 s=42;e[r]=s;for(var i 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 a=Object.getOwnPropertySymbols(e);if(a.length!==1||a[0]!==r||!Object.prototype.propertyIsEnumerable.call(e,r))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var o=Object.getOwnPropertyDescriptor(e,r);if(o.value!==s||o.enumerable!==!0)return!1}return!0}});var UC=R((r_e,FC)=>{"use strict";var qC=typeof Symbol<"u"&&Symbol,p7=LC();FC.exports=function(){return typeof qC!="function"||typeof Symbol!="function"||typeof qC("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:p7()}});var ex=R((n_e,HC)=>{"use strict";HC.exports=typeof Reflect<"u"&&Reflect.getPrototypeOf||null});var tx=R((s_e,BC)=>{"use strict";var d7=Qb();BC.exports=d7.getPrototypeOf||null});var VC=R((i_e,ZC)=>{"use strict";var m7="Function.prototype.bind called on incompatible ",f7=Object.prototype.toString,h7=Math.max,g7="[object Function]",WC=function(e,r){for(var n=[],s=0;s{"use strict";var b7=VC();GC.exports=Function.prototype.bind||b7});var Hd=R((o_e,YC)=>{"use strict";YC.exports=Function.prototype.call});var rx=R((c_e,KC)=>{"use strict";KC.exports=Function.prototype.apply});var QC=R((l_e,JC)=>{"use strict";JC.exports=typeof Reflect<"u"&&Reflect&&Reflect.apply});var eI=R((u_e,XC)=>{"use strict";var x7=wl(),_7=rx(),w7=Hd(),S7=QC();XC.exports=S7||x7.call(w7,_7)});var nx=R((p_e,tI)=>{"use strict";var E7=wl(),k7=Ri(),T7=Hd(),R7=eI();tI.exports=function(e){if(e.length<1||typeof e[0]!="function")throw new k7("a function is required");return R7(E7,T7,e)}});var oI=R((d_e,aI)=>{"use strict";var $7=nx(),rI=Xb(),sI;try{sI=[].__proto__===Array.prototype}catch(t){if(!t||typeof t!="object"||!("code"in t)||t.code!=="ERR_PROTO_ACCESS")throw t}var sx=!!sI&&rI&&rI(Object.prototype,"__proto__"),iI=Object,nI=iI.getPrototypeOf;aI.exports=sx&&typeof sx.get=="function"?$7([sx.get]):typeof nI=="function"?function(e){return nI(e==null?e:iI(e))}:!1});var dI=R((m_e,pI)=>{"use strict";var cI=ex(),lI=tx(),uI=oI();pI.exports=cI?function(e){return cI(e)}:lI?function(e){if(!e||typeof e!="object"&&typeof e!="function")throw new TypeError("getProto: not an object");return lI(e)}:uI?function(e){return uI(e)}:null});var fI=R((f_e,mI)=>{"use strict";var O7=Function.prototype.call,P7=Object.prototype.hasOwnProperty,C7=wl();mI.exports=C7.call(O7,P7)});var Zd=R((h_e,xI)=>{"use strict";var Ie,I7=Qb(),A7=aC(),N7=cC(),j7=uC(),D7=dC(),za=fC(),Ma=Ri(),M7=gC(),z7=yC(),L7=xC(),q7=wC(),F7=EC(),U7=TC(),H7=$C(),B7=IC(),yI=Function,ix=function(t){try{return yI('"use strict"; return ('+t+").constructor;")()}catch{}},Sl=Xb(),W7=MC(),ax=function(){throw new Ma},Z7=Sl?(function(){try{return arguments.callee,ax}catch{try{return Sl(arguments,"callee").get}catch{return ax}}})():ax,ja=UC()(),Ft=dI(),V7=tx(),G7=ex(),bI=rx(),El=Hd(),Da={},Y7=typeof Uint8Array>"u"||!Ft?Ie:Ft(Uint8Array),Oi={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?Ie:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?Ie:ArrayBuffer,"%ArrayIteratorPrototype%":ja&&Ft?Ft([][Symbol.iterator]()):Ie,"%AsyncFromSyncIteratorPrototype%":Ie,"%AsyncFunction%":Da,"%AsyncGenerator%":Da,"%AsyncGeneratorFunction%":Da,"%AsyncIteratorPrototype%":Da,"%Atomics%":typeof Atomics>"u"?Ie:Atomics,"%BigInt%":typeof BigInt>"u"?Ie:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?Ie:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?Ie:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?Ie:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":A7,"%eval%":eval,"%EvalError%":N7,"%Float16Array%":typeof Float16Array>"u"?Ie:Float16Array,"%Float32Array%":typeof Float32Array>"u"?Ie:Float32Array,"%Float64Array%":typeof Float64Array>"u"?Ie:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?Ie:FinalizationRegistry,"%Function%":yI,"%GeneratorFunction%":Da,"%Int8Array%":typeof Int8Array>"u"?Ie:Int8Array,"%Int16Array%":typeof Int16Array>"u"?Ie:Int16Array,"%Int32Array%":typeof Int32Array>"u"?Ie:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":ja&&Ft?Ft(Ft([][Symbol.iterator]())):Ie,"%JSON%":typeof JSON=="object"?JSON:Ie,"%Map%":typeof Map>"u"?Ie:Map,"%MapIteratorPrototype%":typeof Map>"u"||!ja||!Ft?Ie:Ft(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":I7,"%Object.getOwnPropertyDescriptor%":Sl,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?Ie:Promise,"%Proxy%":typeof Proxy>"u"?Ie:Proxy,"%RangeError%":j7,"%ReferenceError%":D7,"%Reflect%":typeof Reflect>"u"?Ie:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?Ie:Set,"%SetIteratorPrototype%":typeof Set>"u"||!ja||!Ft?Ie:Ft(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?Ie:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":ja&&Ft?Ft(""[Symbol.iterator]()):Ie,"%Symbol%":ja?Symbol:Ie,"%SyntaxError%":za,"%ThrowTypeError%":Z7,"%TypedArray%":Y7,"%TypeError%":Ma,"%Uint8Array%":typeof Uint8Array>"u"?Ie:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?Ie:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?Ie:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?Ie:Uint32Array,"%URIError%":M7,"%WeakMap%":typeof WeakMap>"u"?Ie:WeakMap,"%WeakRef%":typeof WeakRef>"u"?Ie:WeakRef,"%WeakSet%":typeof WeakSet>"u"?Ie:WeakSet,"%Function.prototype.call%":El,"%Function.prototype.apply%":bI,"%Object.defineProperty%":W7,"%Object.getPrototypeOf%":V7,"%Math.abs%":z7,"%Math.floor%":L7,"%Math.max%":q7,"%Math.min%":F7,"%Math.pow%":U7,"%Math.round%":H7,"%Math.sign%":B7,"%Reflect.getPrototypeOf%":G7};if(Ft)try{null.error}catch(t){hI=Ft(Ft(t)),Oi["%Error.prototype%"]=hI}var hI,K7=function t(e){var r;if(e==="%AsyncFunction%")r=ix("async function () {}");else if(e==="%GeneratorFunction%")r=ix("function* () {}");else if(e==="%AsyncGeneratorFunction%")r=ix("async function* () {}");else if(e==="%AsyncGenerator%"){var n=t("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if(e==="%AsyncIteratorPrototype%"){var s=t("%AsyncGenerator%");s&&Ft&&(r=Ft(s.prototype))}return Oi[e]=r,r},gI={__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"]},kl=wl(),Bd=fI(),J7=kl.call(El,Array.prototype.concat),Q7=kl.call(bI,Array.prototype.splice),vI=kl.call(El,String.prototype.replace),Wd=kl.call(El,String.prototype.slice),X7=kl.call(El,RegExp.prototype.exec),eG=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,tG=/\\(\\)?/g,rG=function(e){var r=Wd(e,0,1),n=Wd(e,-1);if(r==="%"&&n!=="%")throw new za("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&r!=="%")throw new za("invalid intrinsic syntax, expected opening `%`");var s=[];return vI(e,eG,function(i,a,o,c){s[s.length]=o?vI(c,tG,"$1"):a||i}),s},nG=function(e,r){var n=e,s;if(Bd(gI,n)&&(s=gI[n],n="%"+s[0]+"%"),Bd(Oi,n)){var i=Oi[n];if(i===Da&&(i=K7(n)),typeof i>"u"&&!r)throw new Ma("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:s,name:n,value:i}}throw new za("intrinsic "+e+" does not exist!")};xI.exports=function(e,r){if(typeof e!="string"||e.length===0)throw new Ma("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new Ma('"allowMissing" argument must be a boolean');if(X7(/^%?[^%]*%?$/,e)===null)throw new za("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=rG(e),s=n.length>0?n[0]:"",i=nG("%"+s+"%",r),a=i.name,o=i.value,c=!1,l=i.alias;l&&(s=l[0],Q7(n,J7([0,1],l)));for(var u=1,p=!0;u=n.length){var v=Sl(o,d);p=!!v,p&&"get"in v&&!("originalValue"in v.get)?o=v.get:o=o[d]}else p=Bd(o,d),o=o[d];p&&!c&&(Oi[a]=o)}}return o}});var ox=R((g_e,SI)=>{"use strict";var _I=Zd(),wI=nx(),sG=wI([_I("%String.prototype.indexOf%")]);SI.exports=function(e,r){var n=_I(e,!!r);return typeof n=="function"&&sG(e,".prototype.")>-1?wI([n]):n}});var cx=R((v_e,kI)=>{"use strict";var iG=Zd(),Tl=ox(),aG=_l(),oG=Ri(),EI=iG("%Map%",!0),cG=Tl("Map.prototype.get",!0),lG=Tl("Map.prototype.set",!0),uG=Tl("Map.prototype.has",!0),pG=Tl("Map.prototype.delete",!0),dG=Tl("Map.prototype.size",!0);kI.exports=!!EI&&function(){var e,r={assert:function(n){if(!r.has(n))throw new oG("Side channel does not contain "+aG(n))},delete:function(n){if(e){var s=pG(e,n);return dG(e)===0&&(e=void 0),s}return!1},get:function(n){if(e)return cG(e,n)},has:function(n){return e?uG(e,n):!1},set:function(n,s){e||(e=new EI),lG(e,n,s)}};return r}});var RI=R((y_e,TI)=>{"use strict";var mG=Zd(),Gd=ox(),fG=_l(),Vd=cx(),hG=Ri(),La=mG("%WeakMap%",!0),gG=Gd("WeakMap.prototype.get",!0),vG=Gd("WeakMap.prototype.set",!0),yG=Gd("WeakMap.prototype.has",!0),bG=Gd("WeakMap.prototype.delete",!0);TI.exports=La?function(){var e,r,n={assert:function(s){if(!n.has(s))throw new hG("Side channel does not contain "+fG(s))},delete:function(s){if(La&&s&&(typeof s=="object"||typeof s=="function")){if(e)return bG(e,s)}else if(Vd&&r)return r.delete(s);return!1},get:function(s){return La&&s&&(typeof s=="object"||typeof s=="function")&&e?gG(e,s):r&&r.get(s)},has:function(s){return La&&s&&(typeof s=="object"||typeof s=="function")&&e?yG(e,s):!!r&&r.has(s)},set:function(s,i){La&&s&&(typeof s=="object"||typeof s=="function")?(e||(e=new La),vG(e,s,i)):Vd&&(r||(r=Vd()),r.set(s,i))}};return n}:Vd});var lx=R((b_e,$I)=>{"use strict";var xG=Ri(),_G=_l(),wG=nC(),SG=cx(),EG=RI(),kG=EG||SG||wG;$I.exports=function(){var e,r={assert:function(n){if(!r.has(n))throw new xG("Side channel does not contain "+_G(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,s){e||(e=kG()),e.set(n,s)}};return r}});var Yd=R((x_e,OI)=>{"use strict";var TG=String.prototype.replace,RG=/%20/g,ux={RFC1738:"RFC1738",RFC3986:"RFC3986"};OI.exports={default:ux.RFC3986,formatters:{RFC1738:function(t){return TG.call(t,RG,"+")},RFC3986:function(t){return String(t)}},RFC1738:ux.RFC1738,RFC3986:ux.RFC3986}});var hx=R((__e,II)=>{"use strict";var $G=Yd(),OG=lx(),px=Object.prototype.hasOwnProperty,Pi=Array.isArray,Jd=OG(),PI=function(e,r){return Jd.set(e,r),e},Kd=function(e){return Jd.has(e)},mx=function(e){return Jd.get(e)},CI=function(e,r){Jd.set(e,r)},Vn=(function(){for(var t=[],e=0;e<256;++e)t.push("%"+((e<16?"0":"")+e.toString(16)).toUpperCase());return t})(),PG=function(e){for(;e.length>1;){var r=e.pop(),n=r.obj[r.prop];if(Pi(n)){for(var s=[],i=0;i=dx?a.slice(c,c+dx):a,u=[],p=0;p=48&&d<=57||d>=65&&d<=90||d>=97&&d<=122||i===$G.RFC1738&&(d===40||d===41)){u[u.length]=l.charAt(p);continue}if(d<128){u[u.length]=Vn[d];continue}if(d<2048){u[u.length]=Vn[192|d>>6]+Vn[128|d&63];continue}if(d<55296||d>=57344){u[u.length]=Vn[224|d>>12]+Vn[128|d>>6&63]+Vn[128|d&63];continue}p+=1,d=65536+((d&1023)<<10|l.charCodeAt(p)&1023),u[u.length]=Vn[240|d>>18]+Vn[128|d>>12&63]+Vn[128|d>>6&63]+Vn[128|d&63]}o+=u.join("")}return o},jG=function(e){for(var r=[{obj:{o:e},prop:"o"}],n=[],s=0;sn?PI(fx(a,{plainObjects:s}),a.length-1):a},LG=function(e,r){if(Pi(e)){for(var n=[],s=0;s{"use strict";var NI=lx(),Qd=hx(),Rl=Yd(),qG=Object.prototype.hasOwnProperty,jI={brackets:function(e){return e+"[]"},comma:"comma",indices:function(e,r){return e+"["+r+"]"},repeat:function(e){return e}},Gn=Array.isArray,FG=Array.prototype.push,DI=function(t,e){FG.apply(t,Gn(e)?e:[e])},UG=Date.prototype.toISOString,AI=Rl.default,jt={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,commaRoundTrip:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:Qd.encode,encodeValuesOnly:!1,filter:void 0,format:AI,formatter:Rl.formatters[AI],indices:!1,serializeDate:function(e){return UG.call(e)},skipNulls:!1,strictNullHandling:!1},HG=function(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"||typeof e=="symbol"||typeof e=="bigint"},gx={},BG=function t(e,r,n,s,i,a,o,c,l,u,p,d,m,f,v,g,h,y){for(var b=e,x=y,w=0,S=!1;(x=x.get(gx))!==void 0&&!S;){var E=x.get(e);if(w+=1,typeof E<"u"){if(E===w)throw new RangeError("Cyclic object value");S=!0}typeof x.get(gx)>"u"&&(w=0)}if(typeof u=="function"?b=u(r,b):b instanceof Date?b=m(b):n==="comma"&&Gn(b)&&(b=Qd.maybeMap(b,function(G){return G instanceof Date?m(G):G})),b===null){if(a)return l&&!g?l(r,jt.encoder,h,"key",f):r;b=""}if(HG(b)||Qd.isBuffer(b)){if(l){var k=g?r:l(r,jt.encoder,h,"key",f);return[v(k)+"="+v(l(b,jt.encoder,h,"value",f))]}return[v(r)+"="+v(String(b))]}var $=[];if(typeof b>"u")return $;var j;if(n==="comma"&&Gn(b))g&&l&&(b=Qd.maybeMap(b,l)),j=[{value:b.length>0?b.join(",")||null:void 0}];else if(Gn(u))j=u;else{var I=Object.keys(b);j=p?I.sort(p):I}var q=c?String(r).replace(/\./g,"%2E"):String(r),H=s&&Gn(b)&&b.length===1?q+"[]":q;if(i&&Gn(b)&&b.length===0)return H+"[]";for(var Z=0;Z"u"?e.encodeDotInKeys===!0?!0:jt.allowDots:!!e.allowDots;return{addQueryPrefix:typeof e.addQueryPrefix=="boolean"?e.addQueryPrefix:jt.addQueryPrefix,allowDots:o,allowEmptyArrays:typeof e.allowEmptyArrays=="boolean"?!!e.allowEmptyArrays:jt.allowEmptyArrays,arrayFormat:a,charset:r,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:jt.charsetSentinel,commaRoundTrip:!!e.commaRoundTrip,delimiter:typeof e.delimiter>"u"?jt.delimiter:e.delimiter,encode:typeof e.encode=="boolean"?e.encode:jt.encode,encodeDotInKeys:typeof e.encodeDotInKeys=="boolean"?e.encodeDotInKeys:jt.encodeDotInKeys,encoder:typeof e.encoder=="function"?e.encoder:jt.encoder,encodeValuesOnly:typeof e.encodeValuesOnly=="boolean"?e.encodeValuesOnly:jt.encodeValuesOnly,filter:i,format:n,formatter:s,serializeDate:typeof e.serializeDate=="function"?e.serializeDate:jt.serializeDate,skipNulls:typeof e.skipNulls=="boolean"?e.skipNulls:jt.skipNulls,sort:typeof e.sort=="function"?e.sort:null,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:jt.strictNullHandling}};MI.exports=function(t,e){var r=t,n=WG(e),s,i;typeof n.filter=="function"?(i=n.filter,r=i("",r)):Gn(n.filter)&&(i=n.filter,s=i);var a=[];if(typeof r!="object"||r===null)return"";var o=jI[n.arrayFormat],c=o==="comma"&&n.commaRoundTrip;s||(s=Object.keys(r)),n.sort&&s.sort(n.sort);for(var l=NI(),u=0;u0?f+m:""}});var UI=R((S_e,FI)=>{"use strict";var Us=hx(),Xd=Object.prototype.hasOwnProperty,LI=Array.isArray,Ot={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:Us.decode,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictDepth:!1,strictNullHandling:!1,throwOnLimitExceeded:!1},ZG=function(t){return t.replace(/&#(\d+);/g,function(e,r){return String.fromCharCode(parseInt(r,10))})},qI=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},VG="utf8=%26%2310003%3B",GG="utf8=%E2%9C%93",YG=function(e,r){var n={__proto__:null},s=r.ignoreQueryPrefix?e.replace(/^\?/,""):e;s=s.replace(/%5B/gi,"[").replace(/%5D/gi,"]");var i=r.parameterLimit===1/0?void 0:r.parameterLimit,a=s.split(r.delimiter,r.throwOnLimitExceeded?i+1:i);if(r.throwOnLimitExceeded&&a.length>i)throw new RangeError("Parameter limit exceeded. Only "+i+" parameter"+(i===1?"":"s")+" allowed.");var o=-1,c,l=r.charset;if(r.charsetSentinel)for(c=0;c-1&&(f=LI(f)?[f]:f),m!==null){var v=Xd.call(n,m);v&&r.duplicates==="combine"?n[m]=Us.combine(n[m],f,r.arrayLimit,r.plainObjects):(!v||r.duplicates==="last")&&(n[m]=f)}}return n},KG=function(t,e,r,n){var s=0;if(t.length>0&&t[t.length-1]==="[]"){var i=t.slice(0,-1).join("");s=Array.isArray(e)&&e[i]?e[i].length:0}for(var a=n?e:qI(e,r,s),o=t.length-1;o>=0;--o){var c,l=t[o];if(l==="[]"&&r.parseArrays)Us.isOverflow(a)?c=a:c=r.allowEmptyArrays&&(a===""||r.strictNullHandling&&a===null)?[]:Us.combine([],a,r.arrayLimit,r.plainObjects);else{c=r.plainObjects?{__proto__:null}:{};var u=l.charAt(0)==="["&&l.charAt(l.length-1)==="]"?l.slice(1,-1):l,p=r.decodeDotInKeys?u.replace(/%2E/g,"."):u,d=parseInt(p,10);!r.parseArrays&&p===""?c={0:a}:!isNaN(d)&&l!==p&&String(d)===p&&d>=0&&r.parseArrays&&d<=r.arrayLimit?(c=[],c[d]=a):p!=="__proto__"&&(c[p]=a)}a=c}return a},JG=function(e,r){var n=r.allowDots?e.replace(/\.([^.[]+)/g,"[$1]"):e;if(r.depth<=0)return!r.plainObjects&&Xd.call(Object.prototype,n)&&!r.allowPrototypes?void 0:[n];var s=/(\[[^[\]]*])/,i=/(\[[^[\]]*])/g,a=s.exec(n),o=a?n.slice(0,a.index):n,c=[];if(o){if(!r.plainObjects&&Xd.call(Object.prototype,o)&&!r.allowPrototypes)return;c.push(o)}for(var l=0;(a=i.exec(n))!==null&&l"u"?Ot.charset:e.charset,n=typeof e.duplicates>"u"?Ot.duplicates:e.duplicates;if(n!=="combine"&&n!=="first"&&n!=="last")throw new TypeError("The duplicates option must be either combine, first, or last");var s=typeof e.allowDots>"u"?e.decodeDotInKeys===!0?!0:Ot.allowDots:!!e.allowDots;return{allowDots:s,allowEmptyArrays:typeof e.allowEmptyArrays=="boolean"?!!e.allowEmptyArrays:Ot.allowEmptyArrays,allowPrototypes:typeof e.allowPrototypes=="boolean"?e.allowPrototypes:Ot.allowPrototypes,allowSparse:typeof e.allowSparse=="boolean"?e.allowSparse:Ot.allowSparse,arrayLimit:typeof e.arrayLimit=="number"?e.arrayLimit:Ot.arrayLimit,charset:r,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:Ot.charsetSentinel,comma:typeof e.comma=="boolean"?e.comma:Ot.comma,decodeDotInKeys:typeof e.decodeDotInKeys=="boolean"?e.decodeDotInKeys:Ot.decodeDotInKeys,decoder:typeof e.decoder=="function"?e.decoder:Ot.decoder,delimiter:typeof e.delimiter=="string"||Us.isRegExp(e.delimiter)?e.delimiter:Ot.delimiter,depth:typeof e.depth=="number"||e.depth===!1?+e.depth:Ot.depth,duplicates:n,ignoreQueryPrefix:e.ignoreQueryPrefix===!0,interpretNumericEntities:typeof e.interpretNumericEntities=="boolean"?e.interpretNumericEntities:Ot.interpretNumericEntities,parameterLimit:typeof e.parameterLimit=="number"?e.parameterLimit:Ot.parameterLimit,parseArrays:e.parseArrays!==!1,plainObjects:typeof e.plainObjects=="boolean"?e.plainObjects:Ot.plainObjects,strictDepth:typeof e.strictDepth=="boolean"?!!e.strictDepth:Ot.strictDepth,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:Ot.strictNullHandling,throwOnLimitExceeded:typeof e.throwOnLimitExceeded=="boolean"?e.throwOnLimitExceeded:!1}};FI.exports=function(t,e){var r=XG(e);if(t===""||t===null||typeof t>"u")return r.plainObjects?{__proto__:null}:{};for(var n=typeof t=="string"?YG(t,r):t,s=r.plainObjects?{__proto__:null}:{},i=Object.keys(n),a=0;a{"use strict";var eY=zI(),tY=UI(),rY=Yd();HI.exports={formats:rY,parse:tY,stringify:eY}});var YI=R((k_e,GI)=>{"use strict";var nY=Ea(),sY=tl(),tm=_i(),kn=ll()("body-parser:urlencoded"),iY=Hn()("body-parser"),aY=fl(),WI=Aa();GI.exports=oY;var BI=Object.create(null);function oY(t){var e=t||{};e.extended===void 0&&iY("undefined extended: provide extended option");var r=e.extended!==!1,n=e.inflate!==!1,s=typeof e.limit!="number"?nY.parse(e.limit||"100kb"):e.limit,i=e.type||"application/x-www-form-urlencoded",a=e.verify||!1;if(a!==!1&&typeof a!="function")throw new TypeError("option verify must be function");var o=r?cY(e):uY(e),c=typeof i!="function"?pY(i):i;function l(u){return u.length?o(u):{}}return function(p,d,m){if(p._body){kn("body already parsed"),m();return}if(p.body=p.body||{},!WI.hasBody(p)){kn("skip empty body"),m();return}if(kn("content-type %j",p.headers["content-type"]),!c(p)){kn("skip parsing"),m();return}var f=lY(p)||"utf-8";if(f!=="utf-8"){kn("invalid charset"),m(tm(415,'unsupported charset "'+f.toUpperCase()+'"',{charset:f,type:"charset.unsupported"}));return}aY(p,d,m,l,kn,{debug:kn,encoding:f,inflate:n,limit:s,verify:a})}}function cY(t){var e=t.parameterLimit!==void 0?t.parameterLimit:1e3,r=t.depth!==void 0?t.depth:32,n=VI("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(i){var a=ZI(i,e);if(a===void 0)throw kn("too many parameters"),tm(413,"too many parameters",{type:"parameters.too.many"});var o=Math.max(100,a);kn("parse extended urlencoding");try{return n(i,{allowPrototypes:!0,arrayLimit:o,depth:r,strictDepth:!0,parameterLimit:e})}catch(c){throw c instanceof RangeError?tm(400,"The input exceeded the depth",{type:"querystring.parse.rangeError"}):c}}}function lY(t){try{return(sY.parse(t).parameters.charset||"").toLowerCase()}catch{return}}function ZI(t,e){for(var r=0,n=0;(n=t.indexOf("&",n))!==-1;)if(r++,n++,r===e)return;return r}function VI(t){var e=BI[t];if(e!==void 0)return e.parse;switch(t){case"qs":e=em();break;case"querystring":e=require("querystring");break}return BI[t]=e,e.parse}function uY(t){var e=t.parameterLimit!==void 0?t.parameterLimit:1e3,r=VI("querystring");if(isNaN(e)||e<1)throw new TypeError("option parameterLimit must be a positive number");return isFinite(e)&&(e=e|0),function(s){var i=ZI(s,e);if(i===void 0)throw kn("too many parameters"),tm(413,"too many parameters",{type:"parameters.too.many"});return kn("parse urlencoding"),r(s,void 0,void 0,{maxKeys:e})}}function pY(t){return function(r){return!!WI(r,t)}}});var QI=R((Hs,JI)=>{"use strict";var dY=Hn()("body-parser"),KI=Object.create(null);Hs=JI.exports=dY.function(mY,"bodyParser: use individual json/urlencoded middlewares");Object.defineProperty(Hs,"json",{configurable:!0,enumerable:!0,get:rm("json")});Object.defineProperty(Hs,"raw",{configurable:!0,enumerable:!0,get:rm("raw")});Object.defineProperty(Hs,"text",{configurable:!0,enumerable:!0,get:rm("text")});Object.defineProperty(Hs,"urlencoded",{configurable:!0,enumerable:!0,get:rm("urlencoded")});function mY(t){var e=Object.create(t||null,{type:{configurable:!0,enumerable:!0,value:void 0,writable:!0}}),r=Hs.urlencoded(e),n=Hs.json(e);return function(i,a,o){n(i,a,function(c){if(c)return o(c);r(i,a,o)})}}function rm(t){return function(){return fY(t)}}function fY(t){var e=KI[t];if(e!==void 0)return e;switch(t){case"json":e=TP();break;case"raw":e=OP();break;case"text":e=IP();break;case"urlencoded":e=YI();break}return KI[t]=e}});var eA=R((T_e,XI)=>{"use strict";XI.exports=gY;var hY=Object.prototype.hasOwnProperty;function gY(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(s){if(!(!r&&hY.call(t,s))){var i=Object.getOwnPropertyDescriptor(e,s);Object.defineProperty(t,s,i)}}),t}});var rA=R((R_e,tA)=>{var $l=1e3,Ol=$l*60,Pl=Ol*60,Cl=Pl*24,vY=Cl*365.25;tA.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return yY(t);if(r==="number"&&isNaN(t)===!1)return e.long?xY(t):bY(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function yY(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*vY;case"days":case"day":case"d":return r*Cl;case"hours":case"hour":case"hrs":case"hr":case"h":return r*Pl;case"minutes":case"minute":case"mins":case"min":case"m":return r*Ol;case"seconds":case"second":case"secs":case"sec":case"s":return r*$l;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function bY(t){return t>=Cl?Math.round(t/Cl)+"d":t>=Pl?Math.round(t/Pl)+"h":t>=Ol?Math.round(t/Ol)+"m":t>=$l?Math.round(t/$l)+"s":t+"ms"}function xY(t){return nm(t,Cl,"day")||nm(t,Pl,"hour")||nm(t,Ol,"minute")||nm(t,$l,"second")||t+" ms"}function nm(t,e,r){if(!(t{Ye=nA.exports=yx.debug=yx.default=yx;Ye.coerce=kY;Ye.disable=SY;Ye.enable=wY;Ye.enabled=EY;Ye.humanize=rA();Ye.names=[];Ye.skips=[];Ye.formatters={};var vx;function _Y(t){var e=0,r;for(r in t)e=(e<<5)-e+t.charCodeAt(r),e|=0;return Ye.colors[Math.abs(e)%Ye.colors.length]}function yx(t){function e(){if(e.enabled){var r=e,n=+new Date,s=n-(vx||n);r.diff=s,r.prev=vx,r.curr=n,vx=n;for(var i=new Array(arguments.length),a=0;a{fr=iA.exports=bx();fr.log=$Y;fr.formatArgs=RY;fr.save=OY;fr.load=sA;fr.useColors=TY;fr.storage=typeof chrome<"u"&&typeof chrome.storage<"u"?chrome.storage.local:PY();fr.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"];function TY(){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+)/)}fr.formatters.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}};function RY(t){var e=this.useColors;if(t[0]=(e?"%c":"")+this.namespace+(e?" %c":" ")+t[0]+(e?"%c ":" ")+"+"+fr.humanize(this.diff),!!e){var r="color: "+this.color;t.splice(1,0,r,"color: inherit");var n=0,s=0;t[0].replace(/%[a-zA-Z%]/g,function(i){i!=="%%"&&(n++,i==="%c"&&(s=n))}),t.splice(s,0,r)}}function $Y(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function OY(t){try{t==null?fr.storage.removeItem("debug"):fr.storage.debug=t}catch{}}function sA(){var t;try{t=fr.storage.debug}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}fr.enable(sA());function PY(){try{return window.localStorage}catch{}}});var uA=R((Ut,lA)=>{var oA=require("tty"),Il=require("util");Ut=lA.exports=bx();Ut.init=MY;Ut.log=NY;Ut.formatArgs=AY;Ut.save=jY;Ut.load=cA;Ut.useColors=IY;Ut.colors=[6,2,3,4,5,1];Ut.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(s,i){return i.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 qa=parseInt(process.env.DEBUG_FD,10)||2;qa!==1&&qa!==2&&Il.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 CY=qa===1?process.stdout:qa===2?process.stderr:DY(qa);function IY(){return"colors"in Ut.inspectOpts?!!Ut.inspectOpts.colors:oA.isatty(qa)}Ut.formatters.o=function(t){return this.inspectOpts.colors=this.useColors,Il.inspect(t,this.inspectOpts).split(` +`).map(function(e){return e.trim()}).join(" ")};Ut.formatters.O=function(t){return this.inspectOpts.colors=this.useColors,Il.inspect(t,this.inspectOpts)};function AY(t){var e=this.namespace,r=this.useColors;if(r){var n=this.color,s=" \x1B[3"+n+";1m"+e+" \x1B[0m";t[0]=s+t[0].split(` `).join(` -`+s),t.push("\x1B[3"+n+"m+"+Ut.humanize(this.diff)+"\x1B[0m")}else t[0]=new Date().toUTCString()+" "+e+" "+t[0]}function RY(){return EY.write(Pl.format.apply(Pl,arguments)+` -`)}function $Y(t){t==null?delete process.env.DEBUG:process.env.DEBUG=t}function rA(){return process.env.DEBUG}function OY(t){var e,r=process.binding("tty_wrap");switch(r.guessHandleType(t)){case"TTY":e=new tA.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 s=require("net");e=new s.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 PY(t){t.inspectOpts={};for(var e=Object.keys(Ut.inspectOpts),r=0;r{typeof process<"u"&&process.type==="renderer"?gx.exports=eA():gx.exports=sA()});var Cl=R((w_e,aA)=>{"use strict";aA.exports=NY;var CY=/(?:[^\x21\x23-\x3B\x3D\x3F-\x5F\x61-\x7A\x7C\x7E]|%(?:[^0-9A-Fa-f]|[0-9A-Fa-f][^0-9A-Fa-f]|$))+/g,IY=/(^|[^\uD800-\uDBFF])[\uDC00-\uDFFF]|[\uD800-\uDBFF]([^\uDC00-\uDFFF]|$)/g,AY="$1\uFFFD$2";function NY(t){return String(t).replace(IY,AY).replace(CY,encodeURI)}});var Il=R((S_e,oA)=>{"use strict";var jY=/["'&<>]/;oA.exports=DY;function DY(t){var e=""+t,r=jY.exec(e);if(!r)return e;var n,s="",i=0,a=0;for(i=r.index;i{"use strict";var lA=require("url"),cA=lA.parse,rm=lA.Url;vx.exports=uA;vx.exports.original=MY;function uA(t){var e=t.url;if(e!==void 0){var r=t._parsedUrl;return dA(e,r)?r:(r=pA(e),r._raw=e,t._parsedUrl=r)}}function MY(t){var e=t.originalUrl;if(typeof e!="string")return uA(t);var r=t._parsedOriginalUrl;return dA(e,r)?r:(r=pA(e),r._raw=e,t._parsedOriginalUrl=r)}function pA(t){if(typeof t!="string"||t.charCodeAt(0)!==47)return cA(t);for(var e=t,r=null,n=null,s=1;s{"use strict";var yx=iA()("finalhandler"),zY=Cl(),LY=Il(),fA=pl(),qY=qa(),hA=tl(),FY=Ad(),UY=/\x20{2}/g,HY=/\n/g,BY=typeof setImmediate=="function"?setImmediate:function(t){process.nextTick(t.bind.apply(t,arguments))},WY=fA.isFinished;function ZY(t){var e=LY(t).replace(HY,"
").replace(UY,"  ");return` +`+s),t.push("\x1B[3"+n+"m+"+Ut.humanize(this.diff)+"\x1B[0m")}else t[0]=new Date().toUTCString()+" "+e+" "+t[0]}function NY(){return CY.write(Il.format.apply(Il,arguments)+` +`)}function jY(t){t==null?delete process.env.DEBUG:process.env.DEBUG=t}function cA(){return process.env.DEBUG}function DY(t){var e,r=process.binding("tty_wrap");switch(r.guessHandleType(t)){case"TTY":e=new oA.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 s=require("net");e=new s.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 MY(t){t.inspectOpts={};for(var e=Object.keys(Ut.inspectOpts),r=0;r{typeof process<"u"&&process.type==="renderer"?xx.exports=aA():xx.exports=uA()});var Al=R((O_e,dA)=>{"use strict";dA.exports=FY;var zY=/(?:[^\x21\x23-\x3B\x3D\x3F-\x5F\x61-\x7A\x7C\x7E]|%(?:[^0-9A-Fa-f]|[0-9A-Fa-f][^0-9A-Fa-f]|$))+/g,LY=/(^|[^\uD800-\uDBFF])[\uDC00-\uDFFF]|[\uD800-\uDBFF]([^\uDC00-\uDFFF]|$)/g,qY="$1\uFFFD$2";function FY(t){return String(t).replace(LY,qY).replace(zY,encodeURI)}});var Nl=R((P_e,mA)=>{"use strict";var UY=/["'&<>]/;mA.exports=HY;function HY(t){var e=""+t,r=UY.exec(e);if(!r)return e;var n,s="",i=0,a=0;for(i=r.index;i{"use strict";var hA=require("url"),fA=hA.parse,sm=hA.Url;_x.exports=gA;_x.exports.original=BY;function gA(t){var e=t.url;if(e!==void 0){var r=t._parsedUrl;return yA(e,r)?r:(r=vA(e),r._raw=e,t._parsedUrl=r)}}function BY(t){var e=t.originalUrl;if(typeof e!="string")return gA(t);var r=t._parsedOriginalUrl;return yA(e,r)?r:(r=vA(e),r._raw=e,t._parsedOriginalUrl=r)}function vA(t){if(typeof t!="string"||t.charCodeAt(0)!==47)return fA(t);for(var e=t,r=null,n=null,s=1;s{"use strict";var wx=pA()("finalhandler"),WY=Al(),ZY=Nl(),xA=ml(),VY=Fa(),_A=nl(),GY=jd(),YY=/\x20{2}/g,KY=/\n/g,JY=typeof setImmediate=="function"?setImmediate:function(t){process.nextTick(t.bind.apply(t,arguments))},QY=xA.isFinished;function XY(t){var e=ZY(t).replace(KY,"
").replace(YY,"  ");return` @@ -55,15 +55,15 @@ return fn.apply(this, arguments)

`+e+`
-`}gA.exports=VY;function VY(t,e,r){var n=r||{},s=n.env||process.env.NODE_ENV||"development",i=n.onerror;return function(a){var o,c,l;if(!a&&mA(e)){yx("cannot 404 after headers sent");return}if(a?(l=KY(a),l===void 0?l=QY(e):o=GY(a),c=YY(a,l,s)):(l=404,c="Cannot "+t.method+" "+zY(JY(t))),yx("default %s",l),a&&i&&BY(i,a,t,e),mA(e)){yx("cannot %d after headers sent",l),t.socket&&t.socket.destroy();return}XY(t,e,l,o,c)}}function GY(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 JY(t){try{return qY.original(t).pathname}catch{return"resource"}}function QY(t){var e=t.statusCode;return(typeof e!="number"||e<400||e>599)&&(e=500),e}function mA(t){return typeof t.headersSent!="boolean"?!!t._header:t.headersSent}function XY(t,e,r,n,s){function i(){var a=ZY(s);if(e.statusCode=r,t.httpVersionMajor<2&&(e.statusMessage=hA.message[r]),e.removeHeader("Content-Encoding"),e.removeHeader("Content-Language"),e.removeHeader("Content-Range"),eK(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(a,"utf8")),t.method==="HEAD"){e.end();return}e.end(a,"utf8")}if(WY(t)){i();return}FY(t),fA(t,i),t.resume()}function eK(t,e){if(e)for(var r=Object.keys(e),n=0;n{var Al=1e3,Nl=Al*60,jl=Nl*60,Dl=jl*24,tK=Dl*365.25;yA.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return rK(t);if(r==="number"&&isNaN(t)===!1)return e.long?sK(t):nK(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function rK(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*tK;case"days":case"day":case"d":return r*Dl;case"hours":case"hour":case"hrs":case"hr":case"h":return r*jl;case"minutes":case"minute":case"mins":case"min":case"m":return r*Nl;case"seconds":case"second":case"secs":case"sec":case"s":return r*Al;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function nK(t){return t>=Dl?Math.round(t/Dl)+"d":t>=jl?Math.round(t/jl)+"h":t>=Nl?Math.round(t/Nl)+"m":t>=Al?Math.round(t/Al)+"s":t+"ms"}function sK(t){return nm(t,Dl,"day")||nm(t,jl,"hour")||nm(t,Nl,"minute")||nm(t,Al,"second")||t+" ms"}function nm(t,e,r){if(!(t{Ke=xA.exports=xx.debug=xx.default=xx;Ke.coerce=lK;Ke.disable=oK;Ke.enable=aK;Ke.enabled=cK;Ke.humanize=bA();Ke.names=[];Ke.skips=[];Ke.formatters={};var bx;function iK(t){var e=0,r;for(r in t)e=(e<<5)-e+t.charCodeAt(r),e|=0;return Ke.colors[Math.abs(e)%Ke.colors.length]}function xx(t){function e(){if(e.enabled){var r=e,n=+new Date,s=n-(bx||n);r.diff=s,r.prev=bx,r.curr=n,bx=n;for(var i=new Array(arguments.length),a=0;a{hr=wA.exports=_x();hr.log=dK;hr.formatArgs=pK;hr.save=mK;hr.load=_A;hr.useColors=uK;hr.storage=typeof chrome<"u"&&typeof chrome.storage<"u"?chrome.storage.local:fK();hr.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"];function uK(){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+)/)}hr.formatters.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}};function pK(t){var e=this.useColors;if(t[0]=(e?"%c":"")+this.namespace+(e?" %c":" ")+t[0]+(e?"%c ":" ")+"+"+hr.humanize(this.diff),!!e){var r="color: "+this.color;t.splice(1,0,r,"color: inherit");var n=0,s=0;t[0].replace(/%[a-zA-Z%]/g,function(i){i!=="%%"&&(n++,i==="%c"&&(s=n))}),t.splice(s,0,r)}}function dK(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function mK(t){try{t==null?hr.storage.removeItem("debug"):hr.storage.debug=t}catch{}}function _A(){var t;try{t=hr.storage.debug}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}hr.enable(_A());function fK(){try{return window.localStorage}catch{}}});var RA=R((Ht,TA)=>{var EA=require("tty"),Ml=require("util");Ht=TA.exports=_x();Ht.init=_K;Ht.log=yK;Ht.formatArgs=vK;Ht.save=bK;Ht.load=kA;Ht.useColors=gK;Ht.colors=[6,2,3,4,5,1];Ht.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(s,i){return i.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 Fa=parseInt(process.env.DEBUG_FD,10)||2;Fa!==1&&Fa!==2&&Ml.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 hK=Fa===1?process.stdout:Fa===2?process.stderr:xK(Fa);function gK(){return"colors"in Ht.inspectOpts?!!Ht.inspectOpts.colors:EA.isatty(Fa)}Ht.formatters.o=function(t){return this.inspectOpts.colors=this.useColors,Ml.inspect(t,this.inspectOpts).split(` -`).map(function(e){return e.trim()}).join(" ")};Ht.formatters.O=function(t){return this.inspectOpts.colors=this.useColors,Ml.inspect(t,this.inspectOpts)};function vK(t){var e=this.namespace,r=this.useColors;if(r){var n=this.color,s=" \x1B[3"+n+";1m"+e+" \x1B[0m";t[0]=s+t[0].split(` +`}wA.exports=eK;function eK(t,e,r){var n=r||{},s=n.env||process.env.NODE_ENV||"development",i=n.onerror;return function(a){var o,c,l;if(!a&&bA(e)){wx("cannot 404 after headers sent");return}if(a?(l=nK(a),l===void 0?l=iK(e):o=tK(a),c=rK(a,l,s)):(l=404,c="Cannot "+t.method+" "+WY(sK(t))),wx("default %s",l),a&&i&&JY(i,a,t,e),bA(e)){wx("cannot %d after headers sent",l),t.socket&&t.socket.destroy();return}aK(t,e,l,o,c)}}function tK(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 sK(t){try{return VY.original(t).pathname}catch{return"resource"}}function iK(t){var e=t.statusCode;return(typeof e!="number"||e<400||e>599)&&(e=500),e}function bA(t){return typeof t.headersSent!="boolean"?!!t._header:t.headersSent}function aK(t,e,r,n,s){function i(){var a=XY(s);if(e.statusCode=r,t.httpVersionMajor<2&&(e.statusMessage=_A.message[r]),e.removeHeader("Content-Encoding"),e.removeHeader("Content-Language"),e.removeHeader("Content-Range"),oK(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(a,"utf8")),t.method==="HEAD"){e.end();return}e.end(a,"utf8")}if(QY(t)){i();return}GY(t),xA(t,i),t.resume()}function oK(t,e){if(e)for(var r=Object.keys(e),n=0;n{var jl=1e3,Dl=jl*60,Ml=Dl*60,zl=Ml*24,cK=zl*365.25;EA.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return lK(t);if(r==="number"&&isNaN(t)===!1)return e.long?pK(t):uK(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function lK(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*cK;case"days":case"day":case"d":return r*zl;case"hours":case"hour":case"hrs":case"hr":case"h":return r*Ml;case"minutes":case"minute":case"mins":case"min":case"m":return r*Dl;case"seconds":case"second":case"secs":case"sec":case"s":return r*jl;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function uK(t){return t>=zl?Math.round(t/zl)+"d":t>=Ml?Math.round(t/Ml)+"h":t>=Dl?Math.round(t/Dl)+"m":t>=jl?Math.round(t/jl)+"s":t+"ms"}function pK(t){return im(t,zl,"day")||im(t,Ml,"hour")||im(t,Dl,"minute")||im(t,jl,"second")||t+" ms"}function im(t,e,r){if(!(t{Ke=TA.exports=Ex.debug=Ex.default=Ex;Ke.coerce=gK;Ke.disable=fK;Ke.enable=mK;Ke.enabled=hK;Ke.humanize=kA();Ke.names=[];Ke.skips=[];Ke.formatters={};var Sx;function dK(t){var e=0,r;for(r in t)e=(e<<5)-e+t.charCodeAt(r),e|=0;return Ke.colors[Math.abs(e)%Ke.colors.length]}function Ex(t){function e(){if(e.enabled){var r=e,n=+new Date,s=n-(Sx||n);r.diff=s,r.prev=Sx,r.curr=n,Sx=n;for(var i=new Array(arguments.length),a=0;a{hr=$A.exports=kx();hr.log=bK;hr.formatArgs=yK;hr.save=xK;hr.load=RA;hr.useColors=vK;hr.storage=typeof chrome<"u"&&typeof chrome.storage<"u"?chrome.storage.local:_K();hr.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"];function vK(){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+)/)}hr.formatters.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}};function yK(t){var e=this.useColors;if(t[0]=(e?"%c":"")+this.namespace+(e?" %c":" ")+t[0]+(e?"%c ":" ")+"+"+hr.humanize(this.diff),!!e){var r="color: "+this.color;t.splice(1,0,r,"color: inherit");var n=0,s=0;t[0].replace(/%[a-zA-Z%]/g,function(i){i!=="%%"&&(n++,i==="%c"&&(s=n))}),t.splice(s,0,r)}}function bK(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function xK(t){try{t==null?hr.storage.removeItem("debug"):hr.storage.debug=t}catch{}}function RA(){var t;try{t=hr.storage.debug}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}hr.enable(RA());function _K(){try{return window.localStorage}catch{}}});var AA=R((Ht,IA)=>{var PA=require("tty"),Ll=require("util");Ht=IA.exports=kx();Ht.init=$K;Ht.log=kK;Ht.formatArgs=EK;Ht.save=TK;Ht.load=CA;Ht.useColors=SK;Ht.colors=[6,2,3,4,5,1];Ht.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(s,i){return i.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 Ua=parseInt(process.env.DEBUG_FD,10)||2;Ua!==1&&Ua!==2&&Ll.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 wK=Ua===1?process.stdout:Ua===2?process.stderr:RK(Ua);function SK(){return"colors"in Ht.inspectOpts?!!Ht.inspectOpts.colors:PA.isatty(Ua)}Ht.formatters.o=function(t){return this.inspectOpts.colors=this.useColors,Ll.inspect(t,this.inspectOpts).split(` +`).map(function(e){return e.trim()}).join(" ")};Ht.formatters.O=function(t){return this.inspectOpts.colors=this.useColors,Ll.inspect(t,this.inspectOpts)};function EK(t){var e=this.namespace,r=this.useColors;if(r){var n=this.color,s=" \x1B[3"+n+";1m"+e+" \x1B[0m";t[0]=s+t[0].split(` `).join(` -`+s),t.push("\x1B[3"+n+"m+"+Ht.humanize(this.diff)+"\x1B[0m")}else t[0]=new Date().toUTCString()+" "+e+" "+t[0]}function yK(){return hK.write(Ml.format.apply(Ml,arguments)+` -`)}function bK(t){t==null?delete process.env.DEBUG:process.env.DEBUG=t}function kA(){return process.env.DEBUG}function xK(t){var e,r=process.binding("tty_wrap");switch(r.guessHandleType(t)){case"TTY":e=new EA.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 s=require("net");e=new s.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 _K(t){t.inspectOpts={};for(var e=Object.keys(Ht.inspectOpts),r=0;r{typeof process<"u"&&process.type==="renderer"?wx.exports=SA():wx.exports=RA()});var zl=R(($_e,PA)=>{"use strict";PA.exports=wK;function $A(t,e,r){for(var n=0;n0&&Array.isArray(s)?$A(s,e,r-1):e.push(s)}return e}function OA(t,e){for(var r=0;r{AA.exports=IA;var CA=/\\.|\((?:\?<(.*?)>)?(?!\?)/g;function IA(t,e,r){r=r||{},e=e||[];var n=r.strict,s=r.end!==!1,i=r.sensitive?"":"i",a=r.lookahead!==!1,o=0,c=e.length,l=0,u=0,p=0,d="",m;if(t instanceof RegExp){for(;m=CA.exec(t.source);)m[0][0]!=="\\"&&e.push({name:m[1]||u++,optional:!1,offset:m.index});return t}if(Array.isArray(t))return t=t.map(function(f){return IA(f,e,r).source}),new RegExp(t.join("|"),i);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(f,v,g,h,y,b,x,w){if(f[0]==="\\")return d+=f,p+=2,f;if(f===".")return d+="\\.",o+=1,p+=1,"\\.";if(v||g?d="":d+=t.slice(p,w),p=w+f.length,f==="*")return o+=3,"(.*)";if(f==="/(")return d+="/",o+=2,"/(?:";v=v||"",g=g?"\\.":"",x=x||"",y=y?y.replace(/\\.|\*/,function(E){return E==="*"?"(.*)":E}):d?"((?:(?!/|"+d+").)+?)":"([^/"+g+"]+?)",e.push({name:h,optional:!!x,offset:w+o});var S="(?:"+g+v+y+(b?"((?:[/"+g+"].+?)?)":"")+")"+x;return o+=S.length-f.length,S});m=CA.exec(t);)m[0][0]!=="\\"&&((c+l===e.length||e[c+l].offset>m.index)&&e.splice(c+l,0,{name:u++,optional:!1,offset:m.index}),l++);return t+=n?"":t[t.length-1]==="/"?"?":"/?",s?t+="$":t[t.length-1]!=="/"&&(t+=a?"(?=/|$)":"(?:/|$)"),new RegExp("^"+t,i)}});var Sx=R((P_e,DA)=>{"use strict";var SK=NA(),EK=Ua()("express:router:layer"),kK=Object.prototype.hasOwnProperty;DA.exports=Ha;function Ha(t,e,r){if(!(this instanceof Ha))return new Ha(t,e,r);EK("new %o",t);var n=e||{};this.handle=r,this.name=r.name||"",this.params=void 0,this.path=void 0,this.regexp=SK(t,this.keys=[],n),this.regexp.fast_star=t==="*",this.regexp.fast_slash=t==="/"&&n.end===!1}Ha.prototype.handle_error=function(e,r,n,s){var i=this.handle;if(i.length!==4)return s(e);try{i(e,r,n,s)}catch(a){s(a)}};Ha.prototype.handle_request=function(e,r,n){var s=this.handle;if(s.length>3)return n();try{s(e,r,n)}catch(i){n(i)}};Ha.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:jA(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,s=this.params,i=1;i{"use strict";var MA=require("http");zA.exports=TK()||RK();function TK(){return MA.METHODS&&MA.METHODS.map(function(e){return e.toLowerCase()})}function RK(){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 Ex=R((I_e,BA)=>{"use strict";var LA=Ua()("express:router:route"),qA=zl(),FA=Sx(),$K=sm(),UA=Array.prototype.slice,HA=Object.prototype.toString;BA.exports=Ba;function Ba(t){this.path=t,this.stack=[],LA("new %o",t),this.methods={}}Ba.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]};Ba.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,l);var u=i[s++];if(!u)return n(l);u.method&&u.method!==o?c(l):l?u.handle_error(l,e,r,c):u.handle_request(e,r,c),a=0}};Ba.prototype.all=function(){for(var e=qA(UA.call(arguments)),r=0;r{WA=ZA.exports=function(t,e){if(t&&e)for(var r in e)t[r]=e[r];return t}});var Tx=R((A_e,KA)=>{"use strict";var OK=Ex(),GA=Sx(),PK=sm(),kx=Ll(),im=Ua()("express:router"),VA=Hn()("express"),CK=zl(),IK=qa(),AK=el(),NK=/^\[object (\S+)\]$/,YA=Array.prototype.slice,jK=Object.prototype.toString,Pi=KA.exports=function(t){var e=t||{};function r(n,s,i){r.handle(n,s,i)}return AK(r,Pi),r.params={},r._params=[],r.caseSensitive=e.caseSensitive,r.mergeParams=e.mergeParams,r.strict=e.strict,r.stack=[],r};Pi.param=function(e,r){if(typeof e=="function"){VA("router.param(fn): Refactor to use path params"),this._params.push(e);return}var n=this._params,s=n.length,i;e[0]===":"&&(VA("router.param("+JSON.stringify(e)+", fn): Use router.param("+JSON.stringify(e.slice(1))+", fn) instead"),e=e.slice(1));for(var a=0;a=d.length){setImmediate(v,b);return}if(++l>100)return setImmediate(g,y);var x=MK(e);if(x==null)return v(b);for(var w,S,E;S!==!0&&i=o.length)return i();if(u=0,p=o[c++],l=p.name,d=n.params[l],m=a[l],f=r[l],d===void 0||!m)return v();if(f&&(f.match===d||f.error&&f.error!=="route"))return n.params[l]=f.value,v(f.error);r[l]=f={error:null,match:d,value:d},g()}function g(h){var y=m[u++];if(f.value=n.params[p.name],h){f.error=h,v(h);return}if(!y)return v();try{y(n,s,g,d,p.name)}catch(b){g(b)}}v()};Pi.use=function(e){var r=0,n="/";if(typeof e!="function"){for(var s=e;Array.isArray(s)&&s.length!==0;)s=s[0];typeof s!="function"&&(r=1,n=e)}var i=CK(YA.call(arguments,r));if(i.length===0)throw new TypeError("Router.use() requires a middleware function");for(var a=0;a");var o=new GA(n,{sensitive:this.caseSensitive,strict:!1,end:!1},e);o.route=void 0,this.stack.push(o)}return this};Pi.route=function(e){var r=new OK(e),n=new GA(e,{sensitive:this.caseSensitive,strict:this.strict,end:!0},r.dispatch.bind(r));return n.route=r,this.stack.push(n),r};PK.concat("all").forEach(function(t){Pi[t]=function(e){var r=this.route(e);return r[t].apply(r,YA.call(arguments,1)),this}});function DK(t,e){for(var r=0;r=0;n--)t[n+s]=t[n],n{"use strict";var JA=el();QA.init=function(t){return function(r,n,s){t.enabled("x-powered-by")&&n.setHeader("X-Powered-By","Express"),r.res=n,n.req=r,r.next=s,JA(r,t.request),JA(n,t.response),n.locals=n.locals||Object.create(null),s()}}});var Rx=R((j_e,eN)=>{"use strict";var WK=Ll(),ZK=qa(),VK=Qd();eN.exports=function(e){var r=WK({},e),n=VK.parse;return typeof e=="function"&&(n=e,r=void 0),r!==void 0&&r.allowPrototypes===void 0&&(r.allowPrototypes=!0),function(i,a,o){if(!i.query){var c=ZK(i).query;i.query=n(c,r)}o()}}});var iN=R((D_e,sN)=>{"use strict";var am=Ua()("express:view"),ql=require("path"),GK=require("fs"),YK=ql.dirname,nN=ql.basename,KK=ql.extname,tN=ql.join,JK=ql.resolve;sN.exports=om;function om(t,e){var r=e||{};if(this.defaultEngine=r.defaultEngine,this.ext=KK(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 s=this.ext.slice(1);am('require "%s"',s);var i=require(s).__express;if(typeof i!="function")throw new Error('Module "'+s+'" does not provide a view engine.');r.engines[this.ext]=i}this.engine=r.engines[this.ext],this.path=this.lookup(n)}om.prototype.lookup=function(e){var r,n=[].concat(this.root);am('lookup "%s"',e);for(var s=0;s{var cm=require("buffer"),Yn=cm.Buffer;function aN(t,e){for(var r in t)e[r]=t[r]}Yn.from&&Yn.alloc&&Yn.allocUnsafe&&Yn.allocUnsafeSlow?oN.exports=cm:(aN(cm,$x),$x.Buffer=Ci);function Ci(t,e,r){return Yn(t,e,r)}Ci.prototype=Object.create(Yn.prototype);aN(Yn,Ci);Ci.from=function(t,e,r){if(typeof t=="number")throw new TypeError("Argument must not be a number");return Yn(t,e,r)};Ci.alloc=function(t,e,r){if(typeof t!="number")throw new TypeError("Argument must be a number");var n=Yn(t);return e!==void 0?typeof r=="string"?n.fill(e,r):n.fill(e):n.fill(0),n};Ci.allocUnsafe=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return Yn(t)};Ci.allocUnsafeSlow=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return cm.SlowBuffer(t)}});var Px=R((M_e,Ox)=>{"use strict";Ox.exports=cJ;Ox.exports.parse=dJ;var cN=require("path").basename,QK=lm().Buffer,XK=/[\x00-\x20"'()*,/:;<=>?@[\\\]{}\x7f]/g,eJ=/%[0-9A-Fa-f]{2}/,tJ=/%([0-9A-Fa-f]{2})/g,uN=/[^\x20-\x7e\xa0-\xff]/g,rJ=/\\([\u0000-\u007f])/g,nJ=/([\\"])/g,lN=/;[\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,sJ=/^[\x20-\x7e\x80-\xff]+$/,iJ=/^[!#$%&'*+.0-9A-Z^_`a-z|~-]+$/,aJ=/^([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!#$&+.^_`|~-])+)$/,oJ=/^([!#$%&'*+.0-9A-Z^_`a-z|~-]+)[\x09\x20]*(?:$|;)/;function cJ(t,e){var r=e||{},n=r.type||"attachment",s=lJ(t,r.fallback);return uJ(new dN(n,s))}function lJ(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"&&uN.test(e))throw new TypeError("fallback must be ISO-8859-1 string");var n=cN(t),s=sJ.test(n),i=typeof e!="string"?e&&pN(n):cN(e),a=typeof i=="string"&&i!==n;return(a||!s||eJ.test(n))&&(r["filename*"]=n),(s||a)&&(r.filename=a?i:n),r}}function uJ(t){var e=t.parameters,r=t.type;if(!r||typeof r!="string"||!iJ.test(r))throw new TypeError("invalid type");var n=String(r).toLowerCase();if(e&&typeof e=="object")for(var s,i=Object.keys(e).sort(),a=0;a{var Fl=1e3,Ul=Fl*60,Hl=Ul*60,Bl=Hl*24,vJ=Bl*365.25;mN.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return yJ(t);if(r==="number"&&isNaN(t)===!1)return e.long?xJ(t):bJ(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function yJ(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*vJ;case"days":case"day":case"d":return r*Bl;case"hours":case"hour":case"hrs":case"hr":case"h":return r*Hl;case"minutes":case"minute":case"mins":case"min":case"m":return r*Ul;case"seconds":case"second":case"secs":case"sec":case"s":return r*Fl;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function bJ(t){return t>=Bl?Math.round(t/Bl)+"d":t>=Hl?Math.round(t/Hl)+"h":t>=Ul?Math.round(t/Ul)+"m":t>=Fl?Math.round(t/Fl)+"s":t+"ms"}function xJ(t){return um(t,Bl,"day")||um(t,Hl,"hour")||um(t,Ul,"minute")||um(t,Fl,"second")||t+" ms"}function um(t,e,r){if(!(t{Je=hN.exports=Ix.debug=Ix.default=Ix;Je.coerce=kJ;Je.disable=SJ;Je.enable=wJ;Je.enabled=EJ;Je.humanize=fN();Je.names=[];Je.skips=[];Je.formatters={};var Cx;function _J(t){var e=0,r;for(r in t)e=(e<<5)-e+t.charCodeAt(r),e|=0;return Je.colors[Math.abs(e)%Je.colors.length]}function Ix(t){function e(){if(e.enabled){var r=e,n=+new Date,s=n-(Cx||n);r.diff=s,r.prev=Cx,r.curr=n,Cx=n;for(var i=new Array(arguments.length),a=0;a{gr=vN.exports=Ax();gr.log=$J;gr.formatArgs=RJ;gr.save=OJ;gr.load=gN;gr.useColors=TJ;gr.storage=typeof chrome<"u"&&typeof chrome.storage<"u"?chrome.storage.local:PJ();gr.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"];function TJ(){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+)/)}gr.formatters.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}};function RJ(t){var e=this.useColors;if(t[0]=(e?"%c":"")+this.namespace+(e?" %c":" ")+t[0]+(e?"%c ":" ")+"+"+gr.humanize(this.diff),!!e){var r="color: "+this.color;t.splice(1,0,r,"color: inherit");var n=0,s=0;t[0].replace(/%[a-zA-Z%]/g,function(i){i!=="%%"&&(n++,i==="%c"&&(s=n))}),t.splice(s,0,r)}}function $J(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function OJ(t){try{t==null?gr.storage.removeItem("debug"):gr.storage.debug=t}catch{}}function gN(){var t;try{t=gr.storage.debug}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}gr.enable(gN());function PJ(){try{return window.localStorage}catch{}}});var wN=R((Bt,_N)=>{var bN=require("tty"),Wl=require("util");Bt=_N.exports=Ax();Bt.init=MJ;Bt.log=NJ;Bt.formatArgs=AJ;Bt.save=jJ;Bt.load=xN;Bt.useColors=IJ;Bt.colors=[6,2,3,4,5,1];Bt.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(s,i){return i.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 Wa=parseInt(process.env.DEBUG_FD,10)||2;Wa!==1&&Wa!==2&&Wl.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 CJ=Wa===1?process.stdout:Wa===2?process.stderr:DJ(Wa);function IJ(){return"colors"in Bt.inspectOpts?!!Bt.inspectOpts.colors:bN.isatty(Wa)}Bt.formatters.o=function(t){return this.inspectOpts.colors=this.useColors,Wl.inspect(t,this.inspectOpts).split(` -`).map(function(e){return e.trim()}).join(" ")};Bt.formatters.O=function(t){return this.inspectOpts.colors=this.useColors,Wl.inspect(t,this.inspectOpts)};function AJ(t){var e=this.namespace,r=this.useColors;if(r){var n=this.color,s=" \x1B[3"+n+";1m"+e+" \x1B[0m";t[0]=s+t[0].split(` +`+s),t.push("\x1B[3"+n+"m+"+Ht.humanize(this.diff)+"\x1B[0m")}else t[0]=new Date().toUTCString()+" "+e+" "+t[0]}function kK(){return wK.write(Ll.format.apply(Ll,arguments)+` +`)}function TK(t){t==null?delete process.env.DEBUG:process.env.DEBUG=t}function CA(){return process.env.DEBUG}function RK(t){var e,r=process.binding("tty_wrap");switch(r.guessHandleType(t)){case"TTY":e=new PA.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 s=require("net");e=new s.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 $K(t){t.inspectOpts={};for(var e=Object.keys(Ht.inspectOpts),r=0;r{typeof process<"u"&&process.type==="renderer"?Tx.exports=OA():Tx.exports=AA()});var ql=R((j_e,DA)=>{"use strict";DA.exports=OK;function NA(t,e,r){for(var n=0;n0&&Array.isArray(s)?NA(s,e,r-1):e.push(s)}return e}function jA(t,e){for(var r=0;r{LA.exports=zA;var MA=/\\.|\((?:\?<(.*?)>)?(?!\?)/g;function zA(t,e,r){r=r||{},e=e||[];var n=r.strict,s=r.end!==!1,i=r.sensitive?"":"i",a=r.lookahead!==!1,o=0,c=e.length,l=0,u=0,p=0,d="",m;if(t instanceof RegExp){for(;m=MA.exec(t.source);)m[0][0]!=="\\"&&e.push({name:m[1]||u++,optional:!1,offset:m.index});return t}if(Array.isArray(t))return t=t.map(function(f){return zA(f,e,r).source}),new RegExp(t.join("|"),i);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(f,v,g,h,y,b,x,w){if(f[0]==="\\")return d+=f,p+=2,f;if(f===".")return d+="\\.",o+=1,p+=1,"\\.";if(v||g?d="":d+=t.slice(p,w),p=w+f.length,f==="*")return o+=3,"(.*)";if(f==="/(")return d+="/",o+=2,"/(?:";v=v||"",g=g?"\\.":"",x=x||"",y=y?y.replace(/\\.|\*/,function(E){return E==="*"?"(.*)":E}):d?"((?:(?!/|"+d+").)+?)":"([^/"+g+"]+?)",e.push({name:h,optional:!!x,offset:w+o});var S="(?:"+g+v+y+(b?"((?:[/"+g+"].+?)?)":"")+")"+x;return o+=S.length-f.length,S});m=MA.exec(t);)m[0][0]!=="\\"&&((c+l===e.length||e[c+l].offset>m.index)&&e.splice(c+l,0,{name:u++,optional:!1,offset:m.index}),l++);return t+=n?"":t[t.length-1]==="/"?"?":"/?",s?t+="$":t[t.length-1]!=="/"&&(t+=a?"(?=/|$)":"(?:/|$)"),new RegExp("^"+t,i)}});var Rx=R((M_e,UA)=>{"use strict";var PK=qA(),CK=Ha()("express:router:layer"),IK=Object.prototype.hasOwnProperty;UA.exports=Ba;function Ba(t,e,r){if(!(this instanceof Ba))return new Ba(t,e,r);CK("new %o",t);var n=e||{};this.handle=r,this.name=r.name||"",this.params=void 0,this.path=void 0,this.regexp=PK(t,this.keys=[],n),this.regexp.fast_star=t==="*",this.regexp.fast_slash=t==="/"&&n.end===!1}Ba.prototype.handle_error=function(e,r,n,s){var i=this.handle;if(i.length!==4)return s(e);try{i(e,r,n,s)}catch(a){s(a)}};Ba.prototype.handle_request=function(e,r,n){var s=this.handle;if(s.length>3)return n();try{s(e,r,n)}catch(i){n(i)}};Ba.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:FA(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,s=this.params,i=1;i{"use strict";var HA=require("http");BA.exports=AK()||NK();function AK(){return HA.METHODS&&HA.METHODS.map(function(e){return e.toLowerCase()})}function NK(){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 $x=R((L_e,KA)=>{"use strict";var WA=Ha()("express:router:route"),ZA=ql(),VA=Rx(),jK=am(),GA=Array.prototype.slice,YA=Object.prototype.toString;KA.exports=Wa;function Wa(t){this.path=t,this.stack=[],WA("new %o",t),this.methods={}}Wa.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]};Wa.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,l);var u=i[s++];if(!u)return n(l);u.method&&u.method!==o?c(l):l?u.handle_error(l,e,r,c):u.handle_request(e,r,c),a=0}};Wa.prototype.all=function(){for(var e=ZA(GA.call(arguments)),r=0;r{JA=QA.exports=function(t,e){if(t&&e)for(var r in e)t[r]=e[r];return t}});var Px=R((q_e,rN)=>{"use strict";var DK=$x(),eN=Rx(),MK=am(),Ox=Fl(),om=Ha()("express:router"),XA=Hn()("express"),zK=ql(),LK=Fa(),qK=rl(),FK=/^\[object (\S+)\]$/,tN=Array.prototype.slice,UK=Object.prototype.toString,Ci=rN.exports=function(t){var e=t||{};function r(n,s,i){r.handle(n,s,i)}return qK(r,Ci),r.params={},r._params=[],r.caseSensitive=e.caseSensitive,r.mergeParams=e.mergeParams,r.strict=e.strict,r.stack=[],r};Ci.param=function(e,r){if(typeof e=="function"){XA("router.param(fn): Refactor to use path params"),this._params.push(e);return}var n=this._params,s=n.length,i;e[0]===":"&&(XA("router.param("+JSON.stringify(e)+", fn): Use router.param("+JSON.stringify(e.slice(1))+", fn) instead"),e=e.slice(1));for(var a=0;a=d.length){setImmediate(v,b);return}if(++l>100)return setImmediate(g,y);var x=BK(e);if(x==null)return v(b);for(var w,S,E;S!==!0&&i=o.length)return i();if(u=0,p=o[c++],l=p.name,d=n.params[l],m=a[l],f=r[l],d===void 0||!m)return v();if(f&&(f.match===d||f.error&&f.error!=="route"))return n.params[l]=f.value,v(f.error);r[l]=f={error:null,match:d,value:d},g()}function g(h){var y=m[u++];if(f.value=n.params[p.name],h){f.error=h,v(h);return}if(!y)return v();try{y(n,s,g,d,p.name)}catch(b){g(b)}}v()};Ci.use=function(e){var r=0,n="/";if(typeof e!="function"){for(var s=e;Array.isArray(s)&&s.length!==0;)s=s[0];typeof s!="function"&&(r=1,n=e)}var i=zK(tN.call(arguments,r));if(i.length===0)throw new TypeError("Router.use() requires a middleware function");for(var a=0;a");var o=new eN(n,{sensitive:this.caseSensitive,strict:!1,end:!1},e);o.route=void 0,this.stack.push(o)}return this};Ci.route=function(e){var r=new DK(e),n=new eN(e,{sensitive:this.caseSensitive,strict:this.strict,end:!0},r.dispatch.bind(r));return n.route=r,this.stack.push(n),r};MK.concat("all").forEach(function(t){Ci[t]=function(e){var r=this.route(e);return r[t].apply(r,tN.call(arguments,1)),this}});function HK(t,e){for(var r=0;r=0;n--)t[n+s]=t[n],n{"use strict";var nN=rl();sN.init=function(t){return function(r,n,s){t.enabled("x-powered-by")&&n.setHeader("X-Powered-By","Express"),r.res=n,n.req=r,r.next=s,nN(r,t.request),nN(n,t.response),n.locals=n.locals||Object.create(null),s()}}});var Cx=R((U_e,aN)=>{"use strict";var QK=Fl(),XK=Fa(),eJ=em();aN.exports=function(e){var r=QK({},e),n=eJ.parse;return typeof e=="function"&&(n=e,r=void 0),r!==void 0&&r.allowPrototypes===void 0&&(r.allowPrototypes=!0),function(i,a,o){if(!i.query){var c=XK(i).query;i.query=n(c,r)}o()}}});var pN=R((H_e,uN)=>{"use strict";var cm=Ha()("express:view"),Ul=require("path"),tJ=require("fs"),rJ=Ul.dirname,lN=Ul.basename,nJ=Ul.extname,oN=Ul.join,sJ=Ul.resolve;uN.exports=lm;function lm(t,e){var r=e||{};if(this.defaultEngine=r.defaultEngine,this.ext=nJ(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 s=this.ext.slice(1);cm('require "%s"',s);var i=require(s).__express;if(typeof i!="function")throw new Error('Module "'+s+'" does not provide a view engine.');r.engines[this.ext]=i}this.engine=r.engines[this.ext],this.path=this.lookup(n)}lm.prototype.lookup=function(e){var r,n=[].concat(this.root);cm('lookup "%s"',e);for(var s=0;s{var um=require("buffer"),Yn=um.Buffer;function dN(t,e){for(var r in t)e[r]=t[r]}Yn.from&&Yn.alloc&&Yn.allocUnsafe&&Yn.allocUnsafeSlow?mN.exports=um:(dN(um,Ix),Ix.Buffer=Ii);function Ii(t,e,r){return Yn(t,e,r)}Ii.prototype=Object.create(Yn.prototype);dN(Yn,Ii);Ii.from=function(t,e,r){if(typeof t=="number")throw new TypeError("Argument must not be a number");return Yn(t,e,r)};Ii.alloc=function(t,e,r){if(typeof t!="number")throw new TypeError("Argument must be a number");var n=Yn(t);return e!==void 0?typeof r=="string"?n.fill(e,r):n.fill(e):n.fill(0),n};Ii.allocUnsafe=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return Yn(t)};Ii.allocUnsafeSlow=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return um.SlowBuffer(t)}});var Nx=R((B_e,Ax)=>{"use strict";Ax.exports=hJ;Ax.exports.parse=bJ;var fN=require("path").basename,iJ=pm().Buffer,aJ=/[\x00-\x20"'()*,/:;<=>?@[\\\]{}\x7f]/g,oJ=/%[0-9A-Fa-f]{2}/,cJ=/%([0-9A-Fa-f]{2})/g,gN=/[^\x20-\x7e\xa0-\xff]/g,lJ=/\\([\u0000-\u007f])/g,uJ=/([\\"])/g,hN=/;[\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,pJ=/^[\x20-\x7e\x80-\xff]+$/,dJ=/^[!#$%&'*+.0-9A-Z^_`a-z|~-]+$/,mJ=/^([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!#$&+.^_`|~-])+)$/,fJ=/^([!#$%&'*+.0-9A-Z^_`a-z|~-]+)[\x09\x20]*(?:$|;)/;function hJ(t,e){var r=e||{},n=r.type||"attachment",s=gJ(t,r.fallback);return vJ(new yN(n,s))}function gJ(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"&&gN.test(e))throw new TypeError("fallback must be ISO-8859-1 string");var n=fN(t),s=pJ.test(n),i=typeof e!="string"?e&&vN(n):fN(e),a=typeof i=="string"&&i!==n;return(a||!s||oJ.test(n))&&(r["filename*"]=n),(s||a)&&(r.filename=a?i:n),r}}function vJ(t){var e=t.parameters,r=t.type;if(!r||typeof r!="string"||!dJ.test(r))throw new TypeError("invalid type");var n=String(r).toLowerCase();if(e&&typeof e=="object")for(var s,i=Object.keys(e).sort(),a=0;a{var Hl=1e3,Bl=Hl*60,Wl=Bl*60,Zl=Wl*24,EJ=Zl*365.25;bN.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return kJ(t);if(r==="number"&&isNaN(t)===!1)return e.long?RJ(t):TJ(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function kJ(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*EJ;case"days":case"day":case"d":return r*Zl;case"hours":case"hour":case"hrs":case"hr":case"h":return r*Wl;case"minutes":case"minute":case"mins":case"min":case"m":return r*Bl;case"seconds":case"second":case"secs":case"sec":case"s":return r*Hl;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function TJ(t){return t>=Zl?Math.round(t/Zl)+"d":t>=Wl?Math.round(t/Wl)+"h":t>=Bl?Math.round(t/Bl)+"m":t>=Hl?Math.round(t/Hl)+"s":t+"ms"}function RJ(t){return dm(t,Zl,"day")||dm(t,Wl,"hour")||dm(t,Bl,"minute")||dm(t,Hl,"second")||t+" ms"}function dm(t,e,r){if(!(t{Je=_N.exports=Dx.debug=Dx.default=Dx;Je.coerce=IJ;Je.disable=PJ;Je.enable=OJ;Je.enabled=CJ;Je.humanize=xN();Je.names=[];Je.skips=[];Je.formatters={};var jx;function $J(t){var e=0,r;for(r in t)e=(e<<5)-e+t.charCodeAt(r),e|=0;return Je.colors[Math.abs(e)%Je.colors.length]}function Dx(t){function e(){if(e.enabled){var r=e,n=+new Date,s=n-(jx||n);r.diff=s,r.prev=jx,r.curr=n,jx=n;for(var i=new Array(arguments.length),a=0;a{gr=SN.exports=Mx();gr.log=jJ;gr.formatArgs=NJ;gr.save=DJ;gr.load=wN;gr.useColors=AJ;gr.storage=typeof chrome<"u"&&typeof chrome.storage<"u"?chrome.storage.local:MJ();gr.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"];function AJ(){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+)/)}gr.formatters.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}};function NJ(t){var e=this.useColors;if(t[0]=(e?"%c":"")+this.namespace+(e?" %c":" ")+t[0]+(e?"%c ":" ")+"+"+gr.humanize(this.diff),!!e){var r="color: "+this.color;t.splice(1,0,r,"color: inherit");var n=0,s=0;t[0].replace(/%[a-zA-Z%]/g,function(i){i!=="%%"&&(n++,i==="%c"&&(s=n))}),t.splice(s,0,r)}}function jJ(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function DJ(t){try{t==null?gr.storage.removeItem("debug"):gr.storage.debug=t}catch{}}function wN(){var t;try{t=gr.storage.debug}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}gr.enable(wN());function MJ(){try{return window.localStorage}catch{}}});var $N=R((Bt,RN)=>{var kN=require("tty"),Vl=require("util");Bt=RN.exports=Mx();Bt.init=BJ;Bt.log=FJ;Bt.formatArgs=qJ;Bt.save=UJ;Bt.load=TN;Bt.useColors=LJ;Bt.colors=[6,2,3,4,5,1];Bt.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(s,i){return i.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 Za=parseInt(process.env.DEBUG_FD,10)||2;Za!==1&&Za!==2&&Vl.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 zJ=Za===1?process.stdout:Za===2?process.stderr:HJ(Za);function LJ(){return"colors"in Bt.inspectOpts?!!Bt.inspectOpts.colors:kN.isatty(Za)}Bt.formatters.o=function(t){return this.inspectOpts.colors=this.useColors,Vl.inspect(t,this.inspectOpts).split(` +`).map(function(e){return e.trim()}).join(" ")};Bt.formatters.O=function(t){return this.inspectOpts.colors=this.useColors,Vl.inspect(t,this.inspectOpts)};function qJ(t){var e=this.namespace,r=this.useColors;if(r){var n=this.color,s=" \x1B[3"+n+";1m"+e+" \x1B[0m";t[0]=s+t[0].split(` `).join(` -`+s),t.push("\x1B[3"+n+"m+"+Bt.humanize(this.diff)+"\x1B[0m")}else t[0]=new Date().toUTCString()+" "+e+" "+t[0]}function NJ(){return CJ.write(Wl.format.apply(Wl,arguments)+` -`)}function jJ(t){t==null?delete process.env.DEBUG:process.env.DEBUG=t}function xN(){return process.env.DEBUG}function DJ(t){var e,r=process.binding("tty_wrap");switch(r.guessHandleType(t)){case"TTY":e=new bN.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 s=require("net");e=new s.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 MJ(t){t.inspectOpts={};for(var e=Object.keys(Bt.inspectOpts),r=0;r{typeof process<"u"&&process.type==="renderer"?Nx.exports=yN():Nx.exports=wN()});var jx=R((q_e,TN)=>{"use strict";TN.exports=qJ;var zJ=require("crypto"),EN=require("fs").Stats,kN=Object.prototype.toString;function LJ(t){if(t.length===0)return'"0-2jmj7l5rSw0yVb/vlWAYkK/YBwk"';var e=zJ.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 qJ(t,e){if(t==null)throw new TypeError("argument entity is required");var r=FJ(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 s=r?UJ(t):LJ(t);return n?"W/"+s:s}function FJ(t){return typeof EN=="function"&&t instanceof EN?!0:t&&typeof t=="object"&&"ctime"in t&&kN.call(t.ctime)==="[object Date]"&&"mtime"in t&&kN.call(t.mtime)==="[object Date]"&&"ino"in t&&typeof t.ino=="number"&&"size"in t&&typeof t.size=="number"}function UJ(t){var e=t.mtime.getTime().toString(16),r=t.size.toString(16);return'"'+r+"-"+e+'"'}});var Dx=R((F_e,$N)=>{"use strict";var HJ=/(?:^|,)\s*?no-cache\s*?(?:,|$)/;$N.exports=BJ;function BJ(t,e){var r=t["if-modified-since"],n=t["if-none-match"];if(!r&&!n)return!1;var s=t["cache-control"];if(s&&HJ.test(s))return!1;if(n&&n!=="*"){var i=e.etag;if(!i)return!1;for(var a=!0,o=WJ(n),c=0;c{ZJ.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 CN=R((B_e,PN)=>{var H_e=require("path"),VJ=require("fs");function Va(){this.types=Object.create(null),this.extensions=Object.create(null)}Va.prototype.define=function(t){for(var e in t){for(var r=t[e],n=0;n{var Ga=1e3,Ya=Ga*60,Ka=Ya*60,Ii=Ka*24,GJ=Ii*7,YJ=Ii*365.25;IN.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return KJ(t);if(r==="number"&&isFinite(t))return e.long?QJ(t):JJ(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function KJ(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*YJ;case"weeks":case"week":case"w":return r*GJ;case"days":case"day":case"d":return r*Ii;case"hours":case"hour":case"hrs":case"hr":case"h":return r*Ka;case"minutes":case"minute":case"mins":case"min":case"m":return r*Ya;case"seconds":case"second":case"secs":case"sec":case"s":return r*Ga;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function JJ(t){var e=Math.abs(t);return e>=Ii?Math.round(t/Ii)+"d":e>=Ka?Math.round(t/Ka)+"h":e>=Ya?Math.round(t/Ya)+"m":e>=Ga?Math.round(t/Ga)+"s":t+"ms"}function QJ(t){var e=Math.abs(t);return e>=Ii?pm(t,e,Ii,"day"):e>=Ka?pm(t,e,Ka,"hour"):e>=Ya?pm(t,e,Ya,"minute"):e>=Ga?pm(t,e,Ga,"second"):t+" ms"}function pm(t,e,r,n){var s=e>=r*1.5;return Math.round(t/r)+" "+n+(s?"s":"")}});var Mx=R((Z_e,NN)=>{"use strict";NN.exports=XJ;function XJ(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 s=e.slice(n+1).split(","),i=[];i.type=e.slice(0,n);for(var a=0;at-1&&(l=t-1),!(isNaN(c)||isNaN(l)||c>l||c<0)&&i.push({start:c,end:l})}return i.length<1?-1:r&&r.combine?eQ(i):i}function eQ(t){for(var e=t.map(tQ).sort(sQ),r=0,n=1;ni.end+1?e[++r]=s:s.end>i.end&&(i.end=s.end,i.index=Math.min(i.index,s.index))}e.length=r+1;var a=e.sort(nQ).map(rQ);return a.type=t.type,a}function tQ(t,e){return{start:t.start,end:t.end,index:e}}function rQ(t){return{start:t.start,end:t.end}}function nQ(t,e){return t.index-e.index}function sQ(t,e){return t.start-e.start}});var hm=R((V_e,Hx)=>{"use strict";var zx=xi(),kt=SN()("send"),Ai=Hn()("send"),iQ=sb(),aQ=Cl(),MN=Il(),oQ=jx(),cQ=Dx(),mm=require("fs"),qx=CN(),zN=AN(),lQ=pl(),uQ=Mx(),Zl=require("path"),pQ=tl(),LN=require("stream"),dQ=require("util"),mQ=Zl.extname,qN=Zl.join,Lx=Zl.normalize,Ux=Zl.resolve,dm=Zl.sep,fQ=/^ *bytes=/,FN=3600*24*365*1e3,jN=/(?:^|[\\/])\.\.(?:[\\/]|$)/;Hx.exports=hQ;Hx.exports.mime=qx;function hQ(t,e,r){return new Qe(t,e,r)}function Qe(t,e,r){LN.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&&Ai("hidden: use dotfiles: '"+(this._hidden?"allow":"ignore")+"' instead"),n.dotfiles===void 0&&(this._dotfiles=void 0),this._extensions=n.extensions!==void 0?Fx(n.extensions,"extensions option"):[],this._immutable=n.immutable!==void 0?!!n.immutable:!1,this._index=n.index!==void 0?Fx(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"?zN(this._maxage):Number(this._maxage),this._maxage=isNaN(this._maxage)?0:Math.min(Math.max(0,this._maxage),FN),this._root=n.root?Ux(n.root):null,!this._root&&n.from&&this.from(n.from)}dQ.inherits(Qe,LN);Qe.prototype.etag=Ai.function(function(e){return this._etag=!!e,kt("etag %s",this._etag),this},"send.etag: pass etag as option");Qe.prototype.hidden=Ai.function(function(e){return this._hidden=!!e,this._dotfiles=void 0,kt("hidden %s",this._hidden),this},"send.hidden: use dotfiles option");Qe.prototype.index=Ai.function(function(e){var r=e?Fx(e,"paths argument"):[];return kt("index %o",e),this._index=r,this},"send.index: pass index as option");Qe.prototype.root=function(e){return this._root=Ux(String(e)),kt("root %s",this._root),this};Qe.prototype.from=Ai.function(Qe.prototype.root,"send.from: pass root as option");Qe.prototype.root=Ai.function(Qe.prototype.root,"send.root: pass root as option");Qe.prototype.maxage=Ai.function(function(e){return this._maxage=typeof e=="string"?zN(e):Number(e),this._maxage=isNaN(this._maxage)?0:Math.min(Math.max(0,this._maxage),FN),kt("max-age %d",this._maxage),this},"send.maxage: pass maxAge as option");Qe.prototype.error=function(e,r){if(HN(this,"error"))return this.emit("error",bQ(e,r));var n=this.res,s=pQ.message[e]||String(e),i=UN("Error",MN(s));gQ(n),r&&r.headers&&EQ(n,r.headers),n.statusCode=e,n.setHeader("Content-Type","text/html; charset=UTF-8"),n.setHeader("Content-Length",Buffer.byteLength(i)),n.setHeader("Content-Security-Policy","default-src 'none'"),n.setHeader("X-Content-Type-Options","nosniff"),n.end(i)};Qe.prototype.hasTrailingSlash=function(){return this.path[this.path.length-1]==="/"};Qe.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"]};Qe.prototype.isPreconditionFailure=function(){var e=this.req,r=this.res,n=e.headers["if-match"];if(n){var s=r.getHeader("ETag");return!s||n!=="*"&&SQ(n).every(function(o){return o!==s&&o!=="W/"+s&&"W/"+o!==s})}var i=fm(e.headers["if-unmodified-since"]);if(!isNaN(i)){var a=fm(r.getHeader("Last-Modified"));return isNaN(a)||a>i}return!1};Qe.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")};Qe.prototype.notModified=function(){var e=this.res;kt("not modified"),this.removeContentHeaderFields(),e.statusCode=304,e.end()};Qe.prototype.headersAlreadySent=function(){var e=new Error("Can't set headers after they are sent.");kt("headers already sent"),this.error(500,e)};Qe.prototype.isCachable=function(){var e=this.res.statusCode;return e>=200&&e<300||e===304};Qe.prototype.onStatError=function(e){switch(e.code){case"ENAMETOOLONG":case"ENOENT":case"ENOTDIR":this.error(404,e);break;default:this.error(500,e);break}};Qe.prototype.isFresh=function(){return cQ(this.req.headers,{etag:this.res.getHeader("ETag"),"last-modified":this.res.getHeader("Last-Modified")})};Qe.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 fm(n)<=fm(e)};Qe.prototype.redirect=function(e){var r=this.res;if(HN(this,"directory")){this.emit("directory",r,e);return}if(this.hasTrailingSlash()){this.error(403);return}var n=aQ(vQ(this.path+"/")),s=UN("Redirecting","Redirecting to "+MN(n));r.statusCode=301,r.setHeader("Content-Type","text/html; charset=UTF-8"),r.setHeader("Content-Length",Buffer.byteLength(s)),r.setHeader("Content-Security-Policy","default-src 'none'"),r.setHeader("X-Content-Type-Options","nosniff"),r.setHeader("Location",n),r.end(s)};Qe.prototype.pipe=function(e){var r=this._root;this.res=e;var n=xQ(this.path);if(n===-1)return this.error(400),e;if(~n.indexOf("\0"))return this.error(400),e;var s;if(r!==null){if(n&&(n=Lx("."+dm+n)),jN.test(n))return kt('malicious path "%s"',n),this.error(403),e;s=n.split(dm),n=Lx(qN(r,n))}else{if(jN.test(n))return kt('malicious path "%s"',n),this.error(403),e;s=Lx(n).split(dm),n=Ux(n)}if(yQ(s)){var i=this._dotfiles;switch(i===void 0&&(i=s[s.length-1][0]==="."?this._hidden?"allow":"ignore":"allow"),kt('%s dotfile "%s"',i,n),i){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)};Qe.prototype.send=function(e,r){var n=r.size,s=this.options,i={},a=this.res,o=this.req,c=o.headers.range,l=s.start||0;if(wQ(a)){this.headersAlreadySent();return}if(kt('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-l),s.end!==void 0){var u=s.end-l+1;n>u&&(n=u)}if(this._acceptRanges&&fQ.test(c)){if(c=uQ(n,c,{combine:!0}),this.isRangeFresh()||(kt("range stale"),c=-2),c===-1)return kt("range unsatisfiable"),a.setHeader("Content-Range",DN("bytes",n)),this.error(416,{headers:{"Content-Range":a.getHeader("Content-Range")}});c!==-2&&c.length===1&&(kt("range %j",c),a.statusCode=206,a.setHeader("Content-Range",DN("bytes",n,c[0])),l+=c[0].start,n=c[0].end-c[0].start+1)}for(var p in s)i[p]=s[p];if(i.start=l,i.end=Math.max(l,l+n-1),a.setHeader("Content-Length",n),o.method==="HEAD"){a.end();return}this.stream(e,i)};Qe.prototype.sendFile=function(e){var r=0,n=this;kt('stat "%s"',e),mm.stat(e,function(a,o){if(a&&a.code==="ENOENT"&&!mQ(e)&&e[e.length-1]!==dm)return s(a);if(a)return n.onStatError(a);if(o.isDirectory())return n.redirect(e);n.emit("file",e,o),n.send(e,o)});function s(i){if(n._extensions.length<=r)return i?n.onStatError(i):n.error(404);var a=e+"."+n._extensions[r++];kt('stat "%s"',a),mm.stat(a,function(o,c){if(o)return s(o);if(c.isDirectory())return s();n.emit("file",a,c),n.send(a,c)})}};Qe.prototype.sendIndex=function(e){var r=-1,n=this;function s(i){if(++r>=n._index.length)return i?n.onStatError(i):n.error(404);var a=qN(e,n._index[r]);kt('stat "%s"',a),mm.stat(a,function(o,c){if(o)return s(o);if(c.isDirectory())return s();n.emit("file",a,c),n.send(a,c)})}s()};Qe.prototype.stream=function(e,r){var n=this,s=this.res,i=mm.createReadStream(e,r);this.emit("stream",i),i.pipe(s);function a(){iQ(i,!0)}lQ(s,a),i.on("error",function(c){a(),n.onStatError(c)}),i.on("end",function(){n.emit("end")})};Qe.prototype.type=function(e){var r=this.res;if(!r.getHeader("Content-Type")){var n=qx.lookup(e);if(!n){kt("no content-type");return}var s=qx.charsets.lookup(n);kt("content-type %s",n),r.setHeader("Content-Type",n+(s?"; charset="+s:""))}};Qe.prototype.setHeader=function(e,r){var n=this.res;if(this.emit("headers",n,e,r),this._acceptRanges&&!n.getHeader("Accept-Ranges")&&(kt("accept ranges"),n.setHeader("Accept-Ranges","bytes")),this._cacheControl&&!n.getHeader("Cache-Control")){var s="public, max-age="+Math.floor(this._maxage/1e3);this._immutable&&(s+=", immutable"),kt("cache-control %s",s),n.setHeader("Cache-Control",s)}if(this._lastModified&&!n.getHeader("Last-Modified")){var i=r.mtime.toUTCString();kt("modified %s",i),n.setHeader("Last-Modified",i)}if(this._etag&&!n.getHeader("ETag")){var a=oQ(r);kt("etag %s",a),n.setHeader("ETag",a)}};function gQ(t){for(var e=_Q(t),r=0;r1?"/"+t.substr(e):t}function yQ(t){for(var e=0;e1&&r[0]===".")return!0}return!1}function DN(t,e,r){return t+" "+(r?r.start+"-"+r.end:"*")+"/"+e}function UN(t,e){return` +`+s),t.push("\x1B[3"+n+"m+"+Bt.humanize(this.diff)+"\x1B[0m")}else t[0]=new Date().toUTCString()+" "+e+" "+t[0]}function FJ(){return zJ.write(Vl.format.apply(Vl,arguments)+` +`)}function UJ(t){t==null?delete process.env.DEBUG:process.env.DEBUG=t}function TN(){return process.env.DEBUG}function HJ(t){var e,r=process.binding("tty_wrap");switch(r.guessHandleType(t)){case"TTY":e=new kN.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 s=require("net");e=new s.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 BJ(t){t.inspectOpts={};for(var e=Object.keys(Bt.inspectOpts),r=0;r{typeof process<"u"&&process.type==="renderer"?zx.exports=EN():zx.exports=$N()});var Lx=R((V_e,IN)=>{"use strict";IN.exports=VJ;var WJ=require("crypto"),PN=require("fs").Stats,CN=Object.prototype.toString;function ZJ(t){if(t.length===0)return'"0-2jmj7l5rSw0yVb/vlWAYkK/YBwk"';var e=WJ.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 VJ(t,e){if(t==null)throw new TypeError("argument entity is required");var r=GJ(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 s=r?YJ(t):ZJ(t);return n?"W/"+s:s}function GJ(t){return typeof PN=="function"&&t instanceof PN?!0:t&&typeof t=="object"&&"ctime"in t&&CN.call(t.ctime)==="[object Date]"&&"mtime"in t&&CN.call(t.mtime)==="[object Date]"&&"ino"in t&&typeof t.ino=="number"&&"size"in t&&typeof t.size=="number"}function YJ(t){var e=t.mtime.getTime().toString(16),r=t.size.toString(16);return'"'+r+"-"+e+'"'}});var qx=R((G_e,NN)=>{"use strict";var KJ=/(?:^|,)\s*?no-cache\s*?(?:,|$)/;NN.exports=JJ;function JJ(t,e){var r=t["if-modified-since"],n=t["if-none-match"];if(!r&&!n)return!1;var s=t["cache-control"];if(s&&KJ.test(s))return!1;if(n&&n!=="*"){var i=e.etag;if(!i)return!1;for(var a=!0,o=QJ(n),c=0;c{XJ.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 MN=R((J_e,DN)=>{var K_e=require("path"),eQ=require("fs");function Ga(){this.types=Object.create(null),this.extensions=Object.create(null)}Ga.prototype.define=function(t){for(var e in t){for(var r=t[e],n=0;n{var Ya=1e3,Ka=Ya*60,Ja=Ka*60,Ai=Ja*24,tQ=Ai*7,rQ=Ai*365.25;zN.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return nQ(t);if(r==="number"&&isFinite(t))return e.long?iQ(t):sQ(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function nQ(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*rQ;case"weeks":case"week":case"w":return r*tQ;case"days":case"day":case"d":return r*Ai;case"hours":case"hour":case"hrs":case"hr":case"h":return r*Ja;case"minutes":case"minute":case"mins":case"min":case"m":return r*Ka;case"seconds":case"second":case"secs":case"sec":case"s":return r*Ya;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function sQ(t){var e=Math.abs(t);return e>=Ai?Math.round(t/Ai)+"d":e>=Ja?Math.round(t/Ja)+"h":e>=Ka?Math.round(t/Ka)+"m":e>=Ya?Math.round(t/Ya)+"s":t+"ms"}function iQ(t){var e=Math.abs(t);return e>=Ai?mm(t,e,Ai,"day"):e>=Ja?mm(t,e,Ja,"hour"):e>=Ka?mm(t,e,Ka,"minute"):e>=Ya?mm(t,e,Ya,"second"):t+" ms"}function mm(t,e,r,n){var s=e>=r*1.5;return Math.round(t/r)+" "+n+(s?"s":"")}});var Fx=R((X_e,qN)=>{"use strict";qN.exports=aQ;function aQ(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 s=e.slice(n+1).split(","),i=[];i.type=e.slice(0,n);for(var a=0;at-1&&(l=t-1),!(isNaN(c)||isNaN(l)||c>l||c<0)&&i.push({start:c,end:l})}return i.length<1?-1:r&&r.combine?oQ(i):i}function oQ(t){for(var e=t.map(cQ).sort(pQ),r=0,n=1;ni.end+1?e[++r]=s:s.end>i.end&&(i.end=s.end,i.index=Math.min(i.index,s.index))}e.length=r+1;var a=e.sort(uQ).map(lQ);return a.type=t.type,a}function cQ(t,e){return{start:t.start,end:t.end,index:e}}function lQ(t){return{start:t.start,end:t.end}}function uQ(t,e){return t.index-e.index}function pQ(t,e){return t.start-e.start}});var vm=R((e0e,Vx)=>{"use strict";var Ux=_i(),kt=ON()("send"),Ni=Hn()("send"),dQ=cb(),mQ=Al(),HN=Nl(),fQ=Lx(),hQ=qx(),hm=require("fs"),Bx=MN(),BN=LN(),gQ=ml(),vQ=Fx(),Gl=require("path"),yQ=nl(),WN=require("stream"),bQ=require("util"),xQ=Gl.extname,ZN=Gl.join,Hx=Gl.normalize,Zx=Gl.resolve,fm=Gl.sep,_Q=/^ *bytes=/,VN=3600*24*365*1e3,FN=/(?:^|[\\/])\.\.(?:[\\/]|$)/;Vx.exports=wQ;Vx.exports.mime=Bx;function wQ(t,e,r){return new Qe(t,e,r)}function Qe(t,e,r){WN.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&&Ni("hidden: use dotfiles: '"+(this._hidden?"allow":"ignore")+"' instead"),n.dotfiles===void 0&&(this._dotfiles=void 0),this._extensions=n.extensions!==void 0?Wx(n.extensions,"extensions option"):[],this._immutable=n.immutable!==void 0?!!n.immutable:!1,this._index=n.index!==void 0?Wx(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"?BN(this._maxage):Number(this._maxage),this._maxage=isNaN(this._maxage)?0:Math.min(Math.max(0,this._maxage),VN),this._root=n.root?Zx(n.root):null,!this._root&&n.from&&this.from(n.from)}bQ.inherits(Qe,WN);Qe.prototype.etag=Ni.function(function(e){return this._etag=!!e,kt("etag %s",this._etag),this},"send.etag: pass etag as option");Qe.prototype.hidden=Ni.function(function(e){return this._hidden=!!e,this._dotfiles=void 0,kt("hidden %s",this._hidden),this},"send.hidden: use dotfiles option");Qe.prototype.index=Ni.function(function(e){var r=e?Wx(e,"paths argument"):[];return kt("index %o",e),this._index=r,this},"send.index: pass index as option");Qe.prototype.root=function(e){return this._root=Zx(String(e)),kt("root %s",this._root),this};Qe.prototype.from=Ni.function(Qe.prototype.root,"send.from: pass root as option");Qe.prototype.root=Ni.function(Qe.prototype.root,"send.root: pass root as option");Qe.prototype.maxage=Ni.function(function(e){return this._maxage=typeof e=="string"?BN(e):Number(e),this._maxage=isNaN(this._maxage)?0:Math.min(Math.max(0,this._maxage),VN),kt("max-age %d",this._maxage),this},"send.maxage: pass maxAge as option");Qe.prototype.error=function(e,r){if(YN(this,"error"))return this.emit("error",TQ(e,r));var n=this.res,s=yQ.message[e]||String(e),i=GN("Error",HN(s));SQ(n),r&&r.headers&&CQ(n,r.headers),n.statusCode=e,n.setHeader("Content-Type","text/html; charset=UTF-8"),n.setHeader("Content-Length",Buffer.byteLength(i)),n.setHeader("Content-Security-Policy","default-src 'none'"),n.setHeader("X-Content-Type-Options","nosniff"),n.end(i)};Qe.prototype.hasTrailingSlash=function(){return this.path[this.path.length-1]==="/"};Qe.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"]};Qe.prototype.isPreconditionFailure=function(){var e=this.req,r=this.res,n=e.headers["if-match"];if(n){var s=r.getHeader("ETag");return!s||n!=="*"&&PQ(n).every(function(o){return o!==s&&o!=="W/"+s&&"W/"+o!==s})}var i=gm(e.headers["if-unmodified-since"]);if(!isNaN(i)){var a=gm(r.getHeader("Last-Modified"));return isNaN(a)||a>i}return!1};Qe.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")};Qe.prototype.notModified=function(){var e=this.res;kt("not modified"),this.removeContentHeaderFields(),e.statusCode=304,e.end()};Qe.prototype.headersAlreadySent=function(){var e=new Error("Can't set headers after they are sent.");kt("headers already sent"),this.error(500,e)};Qe.prototype.isCachable=function(){var e=this.res.statusCode;return e>=200&&e<300||e===304};Qe.prototype.onStatError=function(e){switch(e.code){case"ENAMETOOLONG":case"ENOENT":case"ENOTDIR":this.error(404,e);break;default:this.error(500,e);break}};Qe.prototype.isFresh=function(){return hQ(this.req.headers,{etag:this.res.getHeader("ETag"),"last-modified":this.res.getHeader("Last-Modified")})};Qe.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 gm(n)<=gm(e)};Qe.prototype.redirect=function(e){var r=this.res;if(YN(this,"directory")){this.emit("directory",r,e);return}if(this.hasTrailingSlash()){this.error(403);return}var n=mQ(EQ(this.path+"/")),s=GN("Redirecting","Redirecting to "+HN(n));r.statusCode=301,r.setHeader("Content-Type","text/html; charset=UTF-8"),r.setHeader("Content-Length",Buffer.byteLength(s)),r.setHeader("Content-Security-Policy","default-src 'none'"),r.setHeader("X-Content-Type-Options","nosniff"),r.setHeader("Location",n),r.end(s)};Qe.prototype.pipe=function(e){var r=this._root;this.res=e;var n=RQ(this.path);if(n===-1)return this.error(400),e;if(~n.indexOf("\0"))return this.error(400),e;var s;if(r!==null){if(n&&(n=Hx("."+fm+n)),FN.test(n))return kt('malicious path "%s"',n),this.error(403),e;s=n.split(fm),n=Hx(ZN(r,n))}else{if(FN.test(n))return kt('malicious path "%s"',n),this.error(403),e;s=Hx(n).split(fm),n=Zx(n)}if(kQ(s)){var i=this._dotfiles;switch(i===void 0&&(i=s[s.length-1][0]==="."?this._hidden?"allow":"ignore":"allow"),kt('%s dotfile "%s"',i,n),i){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)};Qe.prototype.send=function(e,r){var n=r.size,s=this.options,i={},a=this.res,o=this.req,c=o.headers.range,l=s.start||0;if(OQ(a)){this.headersAlreadySent();return}if(kt('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-l),s.end!==void 0){var u=s.end-l+1;n>u&&(n=u)}if(this._acceptRanges&&_Q.test(c)){if(c=vQ(n,c,{combine:!0}),this.isRangeFresh()||(kt("range stale"),c=-2),c===-1)return kt("range unsatisfiable"),a.setHeader("Content-Range",UN("bytes",n)),this.error(416,{headers:{"Content-Range":a.getHeader("Content-Range")}});c!==-2&&c.length===1&&(kt("range %j",c),a.statusCode=206,a.setHeader("Content-Range",UN("bytes",n,c[0])),l+=c[0].start,n=c[0].end-c[0].start+1)}for(var p in s)i[p]=s[p];if(i.start=l,i.end=Math.max(l,l+n-1),a.setHeader("Content-Length",n),o.method==="HEAD"){a.end();return}this.stream(e,i)};Qe.prototype.sendFile=function(e){var r=0,n=this;kt('stat "%s"',e),hm.stat(e,function(a,o){if(a&&a.code==="ENOENT"&&!xQ(e)&&e[e.length-1]!==fm)return s(a);if(a)return n.onStatError(a);if(o.isDirectory())return n.redirect(e);n.emit("file",e,o),n.send(e,o)});function s(i){if(n._extensions.length<=r)return i?n.onStatError(i):n.error(404);var a=e+"."+n._extensions[r++];kt('stat "%s"',a),hm.stat(a,function(o,c){if(o)return s(o);if(c.isDirectory())return s();n.emit("file",a,c),n.send(a,c)})}};Qe.prototype.sendIndex=function(e){var r=-1,n=this;function s(i){if(++r>=n._index.length)return i?n.onStatError(i):n.error(404);var a=ZN(e,n._index[r]);kt('stat "%s"',a),hm.stat(a,function(o,c){if(o)return s(o);if(c.isDirectory())return s();n.emit("file",a,c),n.send(a,c)})}s()};Qe.prototype.stream=function(e,r){var n=this,s=this.res,i=hm.createReadStream(e,r);this.emit("stream",i),i.pipe(s);function a(){dQ(i,!0)}gQ(s,a),i.on("error",function(c){a(),n.onStatError(c)}),i.on("end",function(){n.emit("end")})};Qe.prototype.type=function(e){var r=this.res;if(!r.getHeader("Content-Type")){var n=Bx.lookup(e);if(!n){kt("no content-type");return}var s=Bx.charsets.lookup(n);kt("content-type %s",n),r.setHeader("Content-Type",n+(s?"; charset="+s:""))}};Qe.prototype.setHeader=function(e,r){var n=this.res;if(this.emit("headers",n,e,r),this._acceptRanges&&!n.getHeader("Accept-Ranges")&&(kt("accept ranges"),n.setHeader("Accept-Ranges","bytes")),this._cacheControl&&!n.getHeader("Cache-Control")){var s="public, max-age="+Math.floor(this._maxage/1e3);this._immutable&&(s+=", immutable"),kt("cache-control %s",s),n.setHeader("Cache-Control",s)}if(this._lastModified&&!n.getHeader("Last-Modified")){var i=r.mtime.toUTCString();kt("modified %s",i),n.setHeader("Last-Modified",i)}if(this._etag&&!n.getHeader("ETag")){var a=fQ(r);kt("etag %s",a),n.setHeader("ETag",a)}};function SQ(t){for(var e=$Q(t),r=0;r1?"/"+t.substr(e):t}function kQ(t){for(var e=0;e1&&r[0]===".")return!0}return!1}function UN(t,e,r){return t+" "+(r?r.start+"-"+r.end:"*")+"/"+e}function GN(t,e){return` @@ -73,8 +73,8 @@ return fn.apply(this, arguments)
`+e+`
-`}function bQ(t,e){return e?e instanceof Error?zx(t,e,{expose:!1}):zx(t,e):zx(t)}function xQ(t){try{return decodeURIComponent(t)}catch{return-1}}function _Q(t){return typeof t.getHeaderNames!="function"?Object.keys(t._headers||{}):t.getHeaderNames()}function HN(t,e){var r=typeof t.listenerCount!="function"?t.listeners(e).length:t.listenerCount(e);return r>0}function wQ(t){return typeof t.headersSent!="boolean"?!!t._header:t.headersSent}function Fx(t,e){for(var r=[].concat(t||[]),n=0;n{"use strict";BN.exports=kQ;function kQ(t){if(!t)throw new TypeError("argument req is required");var e=RQ(t.headers["x-forwarded-for"]||""),r=TQ(t),n=[r].concat(e);return n}function TQ(t){return t.socket?t.socket.remoteAddress:t.connection.remoteAddress}function RQ(t){for(var e=t.length,r=[],n=t.length,s=t.length-1;s>=0;s--)switch(t.charCodeAt(s)){case 32:n===e&&(n=e=s);break;case 44:n!==e&&r.push(t.substring(n,e)),n=e=s;break;default:n=s;break}return n!==e&&r.push(t.substring(n,e)),r}});var VN=R((ZN,Vl)=>{(function(){var t,e,r,n,s,i,a,o,c;e={},o=this,typeof Vl<"u"&&Vl!==null&&Vl.exports?Vl.exports=e:o.ipaddr=e,a=function(l,u,p,d){var m,f;if(l.length!==u.length)throw new Error("ipaddr: cannot match CIDR for objects with different lengths");for(m=0;d>0;){if(f=p-d,f<0&&(f=0),l[m]>>f!==u[m]>>f)return!1;d-=p,m+=1}return!0},e.subnetMatch=function(l,u,p){var d,m,f,v,g;p==null&&(p="unicast");for(f in u)for(v=u[f],v[0]&&!(v[0]instanceof Array)&&(v=[v]),d=0,m=v.length;d=0;p=d+=-1)if(m=this.octets[p],m in g){if(v=g[m],f&&v!==0)return null;v!==8&&(f=!0),u+=v}else return null;return 32-u},l})(),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(l){var u,p,d,m,f;if(p=function(v){return v[0]==="0"&&v[1]!=="x"?parseInt(v,8):parseInt(v)},u=l.match(n.fourOctet))return(function(){var v,g,h,y;for(h=u.slice(1,6),y=[],v=0,g=h.length;v4294967295||f<0)throw new Error("ipaddr: address outside defined range");return(function(){var v,g;for(g=[],m=v=0;v<=24;m=v+=8)g.push(f>>m&255);return g})().reverse()}else return null},e.IPv6=(function(){function l(u,p){var d,m,f,v,g,h;if(u.length===16)for(this.parts=[],d=m=0;m<=14;d=m+=2)this.parts.push(u[d]<<8|u[d+1]);else if(u.length===8)this.parts=u;else throw new Error("ipaddr: ipv6 part count should be 8 or 16");for(h=this.parts,f=0,v=h.length;fp&&(u=d.index,p=d[0].length);return p<0?f:f.substring(0,u)+"::"+f.substring(u+p)},l.prototype.toByteArray=function(){var u,p,d,m,f;for(u=[],f=this.parts,p=0,d=f.length;p>8),u.push(m&255);return u},l.prototype.toNormalizedString=function(){var u,p,d;return u=(function(){var m,f,v,g;for(v=this.parts,g=[],m=0,f=v.length;m>8,u&255,p>>8,p&255])},l.prototype.prefixLengthFromSubnetMask=function(){var u,p,d,m,f,v,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},u=0,f=!1,p=d=7;d>=0;p=d+=-1)if(m=this.parts[p],m in g){if(v=g[m],f&&v!==0)return null;v!==16&&(f=!0),u+=v}else return null;return 128-u},l})(),s="(?:[0-9a-f]+::?)+",c="%[0-9a-z]{1,}",i={zoneIndex:new RegExp(c,"i"),native:new RegExp("^(::)?("+s+")?([0-9a-f]+)?(::)?("+c+")?$","i"),transitional:new RegExp("^((?:"+s+")|(?:::)(?:"+s+")?)"+(r+"\\."+r+"\\."+r+"\\."+r)+("("+c+")?$"),"i")},t=function(l,u){var p,d,m,f,v,g;if(l.indexOf("::")!==l.lastIndexOf("::"))return null;for(g=(l.match(i.zoneIndex)||[])[0],g&&(g=g.substring(1),l=l.replace(/%.+$/,"")),p=0,d=-1;(d=l.indexOf(":",d+1))>=0;)p++;if(l.substr(0,2)==="::"&&p--,l.substr(-2,2)==="::"&&p--,p>u)return null;for(v=u-p,f=":";v--;)f+="0:";return l=l.replace("::",f),l[0]===":"&&(l=l.slice(1)),l[l.length-1]===":"&&(l=l.slice(0,-1)),u=(function(){var h,y,b,x;for(b=l.split(":"),x=[],h=0,y=b.length;h=0&&u<=32))return d=[this.parse(p[1]),u],Object.defineProperty(d,"toString",{value:function(){return this.join("/")}}),d;throw new Error("ipaddr: string is not formatted like an IPv4 CIDR range")},e.IPv4.subnetMaskFromPrefixLength=function(l){var u,p,d;if(l=parseInt(l),l<0||l>32)throw new Error("ipaddr: invalid IPv4 prefix length");for(d=[0,0,0,0],p=0,u=Math.floor(l/8);p=0&&u<=128))return d=[this.parse(p[1]),u],Object.defineProperty(d,"toString",{value:function(){return this.join("/")}}),d;throw new Error("ipaddr: string is not formatted like an IPv6 CIDR range")},e.isValid=function(l){return e.IPv6.isValid(l)||e.IPv4.isValid(l)},e.parse=function(l){if(e.IPv6.isValid(l))return e.IPv6.parse(l);if(e.IPv4.isValid(l))return e.IPv4.parse(l);throw new Error("ipaddr: the address has neither IPv6 nor IPv4 format")},e.parseCIDR=function(l){var u;try{return e.IPv6.parseCIDR(l)}catch(p){u=p;try{return e.IPv4.parseCIDR(l)}catch(d){throw u=d,new Error("ipaddr: the address has neither IPv6 nor IPv4 CIDR format")}}},e.fromByteArray=function(l){var u;if(u=l.length,u===4)return new e.IPv4(l);if(u===16)return new e.IPv6(l);throw new Error("ipaddr: the binary input is neither an IPv6 nor IPv4 address")},e.process=function(l){var u;return u=this.parse(l),u.kind()==="ipv6"&&u.isIPv4MappedAddress()?u.toIPv4Address():u}}).call(ZN)});var Bx=R((Y_e,ym)=>{"use strict";ym.exports=NQ;ym.exports.all=KN;ym.exports.compile=JN;var $Q=WN(),YN=VN(),OQ=/^[0-9]+$/,gm=YN.isValid,vm=YN.parse,GN={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 KN(t,e){var r=$Q(t);if(!e)return r;typeof e!="function"&&(e=JN(e));for(var n=0;ns)throw new TypeError("invalid range on address: "+t);return[n,i]}function AQ(t){var e=vm(t),r=e.kind();return r==="ipv4"?e.prefixLengthFromSubnetMask():null}function NQ(t,e){if(!t)throw new TypeError("req argument is required");if(!e)throw new TypeError("trust argument is required");var r=KN(t,e),n=r[r.length-1];return n}function jQ(){return!1}function DQ(t){return function(r){if(!gm(r))return!1;for(var n=vm(r),s,i=n.kind(),a=0;a{"use strict";var QN=lm().Buffer,zQ=Px(),XN=Xc(),ej=Hn()("express"),LQ=zl(),qQ=hm().mime,FQ=jx(),UQ=Bx(),HQ=Qd(),BQ=require("querystring");vr.etag=tj({weak:!1});vr.wetag=tj({weak:!0});vr.isAbsolute=function(t){if(t[0]==="/"||t[1]===":"&&(t[2]==="\\"||t[2]==="/")||t.substring(0,2)==="\\\\")return!0};vr.flatten=ej.function(LQ,"utils.flatten: use array-flatten npm module instead");vr.normalizeType=function(t){return~t.indexOf("/")?WQ(t):{value:qQ.lookup(t),params:{}}};vr.normalizeTypes=function(t){for(var e=[],r=0;r{"use strict";var GQ=vA(),YQ=Tx(),Zx=sm(),KQ=XA(),JQ=Rx(),bm=Ua()("express:application"),QQ=iN(),XQ=require("http"),eX=Bs().compileETag,tX=Bs().compileQueryParser,rX=Bs().compileTrust,nX=Hn()("express"),sX=zl(),Wx=Ll(),iX=require("path").resolve,Ja=el(),aX=Object.prototype.hasOwnProperty,Gx=Array.prototype.slice,At=rj=nj.exports={},Vx="@@symbol:trust_proxy_default";At.init=function(){this.cache={},this.engines={},this.settings={},this.defaultConfiguration()};At.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,Vx,{configurable:!0,value:!0}),bm("booting in %s mode",e),this.on("mount",function(n){this.settings[Vx]===!0&&typeof n.settings["trust proxy fn"]=="function"&&(delete this.settings["trust proxy"],delete this.settings["trust proxy fn"]),Ja(this.request,n.request),Ja(this.response,n.response),Ja(this.engines,n.engines),Ja(this.settings,n.settings)}),this.locals=Object.create(null),this.mountpath="/",this.locals.settings=this.settings,this.set("view",QQ),this.set("views",iX("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.`)}})};At.lazyrouter=function(){this._router||(this._router=new YQ({caseSensitive:this.enabled("case sensitive routing"),strict:this.enabled("strict routing")}),this._router.use(JQ(this.get("query parser fn"))),this._router.use(KQ.init(this)))};At.handle=function(e,r,n){var s=this._router,i=n||GQ(e,r,{env:this.get("env"),onerror:oX.bind(this)});if(!s){bm("no routes defined on app"),i();return}s.handle(e,r,i)};At.use=function(e){var r=0,n="/";if(typeof e!="function"){for(var s=e;Array.isArray(s)&&s.length!==0;)s=s[0];typeof s!="function"&&(r=1,n=e)}var i=sX(Gx.call(arguments,r));if(i.length===0)throw new TypeError("app.use() requires a middleware function");this.lazyrouter();var a=this._router;return i.forEach(function(o){if(!o||!o.handle||!o.set)return a.use(n,o);bm(".use app under %s",n),o.mountpath=n,o.parent=this,a.use(n,function(l,u,p){var d=l.app;o.handle(l,u,function(m){Ja(l,d.request),Ja(u,d.response),p(m)})}),o.emit("mount",this)},this),this};At.route=function(e){return this.lazyrouter(),this._router.route(e)};At.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};At.param=function(e,r){if(this.lazyrouter(),Array.isArray(e)){for(var n=0;n1?'directories "'+l.root.slice(0,-1).join('", "')+'" or "'+l.root[l.root.length-1]+'"':'directory "'+l.root+'"',d=new Error('Failed to lookup view "'+e+'" in views '+p);return d.view=l,i(d)}c.cache&&(s[e]=l)}cX(l,c,i)};At.listen=function(){var e=XQ.createServer(this);return e.listen.apply(e,arguments)};function oX(t){this.get("env")!=="test"&&console.error(t.stack||t.toString())}function cX(t,e,r){try{t.render(e,r)}catch(n){r(n)}}});var cj=R((J_e,Yx)=>{"use strict";Yx.exports=oj;Yx.exports.preferredCharsets=oj;var lX=/^\s*([^\s;]+)\s*(?:;(.*))?$/;function uX(t){for(var e=t.split(","),r=0,n=0;r0}});var mj=R((Q_e,Kx)=>{"use strict";Kx.exports=dj;Kx.exports.preferredEncodings=dj;var hX=/^\s*([^\s;]+)\s*(?:;(.*))?$/;function gX(t){for(var e=t.split(","),r=!1,n=1,s=0,i=0;s0}});var yj=R((X_e,Jx)=>{"use strict";Jx.exports=vj;Jx.exports.preferredLanguages=vj;var xX=/^\s*([^\s\-;]+)(?:-([^\s;]+))?\s*(?:;(.*))?$/;function _X(t){for(var e=t.split(","),r=0,n=0;r0}});var Ej=R((e0e,Qx)=>{"use strict";Qx.exports=wj;Qx.exports.preferredMediaTypes=wj;var kX=/^\s*([^\s\/;]+)\/([^;\s]+)\s*(?:;(.*))?$/;function TX(t){for(var e=CX(t),r=0,n=0;r0)if(i.every(function(a){return e.params[a]=="*"||(e.params[a]||"").toLowerCase()==(n.params[a]||"").toLowerCase()}))s|=1;else return null;return{i:r,o:e.i,q:e.q,s}}function wj(t,e){var r=TX(t===void 0?"*/*":t||"");if(!e)return r.filter(xj).sort(bj).map(OX);var n=e.map(function(i,a){return RX(i,r,a)});return n.filter(xj).sort(bj).map(function(i){return e[n.indexOf(i)]})}function bj(t,e){return e.q-t.q||e.s-t.s||t.o-e.o||t.i-e.i||0}function OX(t){return t.type+"/"+t.subtype}function xj(t){return t.q>0}function Sj(t){for(var e=0,r=0;(r=t.indexOf('"',r))!==-1;)e++,r++;return e}function PX(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 CX(t){for(var e=t.split(","),r=1,n=0;r{"use strict";var AX=cj(),NX=mj(),jX=yj(),DX=Ej();Xx.exports=rt;Xx.exports.Negotiator=rt;function rt(t){if(!(this instanceof rt))return new rt(t);this.request=t}rt.prototype.charset=function(e){var r=this.charsets(e);return r&&r[0]};rt.prototype.charsets=function(e){return AX(this.request.headers["accept-charset"],e)};rt.prototype.encoding=function(e){var r=this.encodings(e);return r&&r[0]};rt.prototype.encodings=function(e){return NX(this.request.headers["accept-encoding"],e)};rt.prototype.language=function(e){var r=this.languages(e);return r&&r[0]};rt.prototype.languages=function(e){return jX(this.request.headers["accept-language"],e)};rt.prototype.mediaType=function(e){var r=this.mediaTypes(e);return r&&r[0]};rt.prototype.mediaTypes=function(e){return DX(this.request.headers.accept,e)};rt.prototype.preferredCharset=rt.prototype.charset;rt.prototype.preferredCharsets=rt.prototype.charsets;rt.prototype.preferredEncoding=rt.prototype.encoding;rt.prototype.preferredEncodings=rt.prototype.encodings;rt.prototype.preferredLanguage=rt.prototype.language;rt.prototype.preferredLanguages=rt.prototype.languages;rt.prototype.preferredMediaType=rt.prototype.mediaType;rt.prototype.preferredMediaTypes=rt.prototype.mediaTypes});var Tj=R((r0e,MX)=>{MX.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 $j=R((n0e,Rj)=>{Rj.exports=Tj()});var Cj=R(jr=>{"use strict";var xm=$j(),zX=require("path").extname,Oj=/^\s*([^;\s]*)(?:;|\s|$)/,LX=/^text\//i;jr.charset=Pj;jr.charsets={lookup:Pj};jr.contentType=qX;jr.extension=FX;jr.extensions=Object.create(null);jr.lookup=UX;jr.types=Object.create(null);HX(jr.extensions,jr.types);function Pj(t){if(!t||typeof t!="string")return!1;var e=Oj.exec(t),r=e&&xm[e[1].toLowerCase()];return r&&r.charset?r.charset:e&&LX.test(e[1])?"UTF-8":!1}function qX(t){if(!t||typeof t!="string")return!1;var e=t.indexOf("/")===-1?jr.lookup(t):t;if(!e)return!1;if(e.indexOf("charset")===-1){var r=jr.charset(e);r&&(e+="; charset="+r.toLowerCase())}return e}function FX(t){if(!t||typeof t!="string")return!1;var e=Oj.exec(t),r=e&&jr.extensions[e[1].toLowerCase()];return!r||!r.length?!1:r[0]}function UX(t){if(!t||typeof t!="string")return!1;var e=zX("x."+t).toLowerCase().substr(1);return e&&jr.types[e]||!1}function HX(t,e){var r=["nginx","apache",void 0,"iana"];Object.keys(xm).forEach(function(s){var i=xm[s],a=i.extensions;if(!(!a||!a.length)){t[s]=a;for(var o=0;ou||l===u&&e[c].substr(0,12)==="application/"))continue}e[c]=s}}})}});var Aj=R((i0e,Ij)=>{"use strict";var BX=kj(),WX=Cj();Ij.exports=Wr;function Wr(t){if(!(this instanceof Wr))return new Wr(t);this.headers=t.headers,this.negotiator=new BX(t)}Wr.prototype.type=Wr.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 _m=Aj(),Gl=Hn()("express"),GX=require("net").isIP,YX=Ia(),KX=require("http"),JX=Dx(),QX=Mx(),XX=qa(),Nj=Bx(),st=Object.create(KX.IncomingMessage.prototype);jj.exports=st;st.get=st.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]}};st.accepts=function(){var t=_m(this);return t.types.apply(t,arguments)};st.acceptsEncodings=function(){var t=_m(this);return t.encodings.apply(t,arguments)};st.acceptsEncoding=Gl.function(st.acceptsEncodings,"req.acceptsEncoding: Use acceptsEncodings instead");st.acceptsCharsets=function(){var t=_m(this);return t.charsets.apply(t,arguments)};st.acceptsCharset=Gl.function(st.acceptsCharsets,"req.acceptsCharset: Use acceptsCharsets instead");st.acceptsLanguages=function(){var t=_m(this);return t.languages.apply(t,arguments)};st.acceptsLanguage=Gl.function(st.acceptsLanguages,"req.acceptsLanguage: Use acceptsLanguages instead");st.range=function(e,r){var n=this.get("Range");if(n)return QX(e,n,r)};st.param=function(e,r){var n=this.params||{},s=this.body||{},i=this.query||{},a=arguments.length===1?"name":"name, default";return Gl("req.param("+a+"): Use req.params, req.body, or req.query instead"),n[e]!=null&&n.hasOwnProperty(e)?n[e]:s[e]!=null?s[e]:i[e]!=null?i[e]:r};st.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?JX(this.headers,{etag:e.get("ETag"),"last-modified":e.get("Last-Modified")}):!1});Tn(st,"stale",function(){return!this.fresh});Tn(st,"xhr",function(){var e=this.get("X-Requested-With")||"";return e.toLowerCase()==="xmlhttprequest"});function Tn(t,e,r){Object.defineProperty(t,e,{configurable:!0,enumerable:!0,get:r})}});var e_=R(wm=>{var zj=require("crypto");wm.sign=function(t,e){if(typeof t!="string")throw new TypeError("Cookie value must be provided as a string.");if(typeof e!="string")throw new TypeError("Secret string must be provided.");return t+"."+zj.createHmac("sha256",e).update(t).digest("base64").replace(/\=+$/,"")};wm.unsign=function(t,e){if(typeof t!="string")throw new TypeError("Signed cookie string must be provided.");if(typeof e!="string")throw new TypeError("Secret string must be provided.");var r=t.slice(0,t.lastIndexOf(".")),n=wm.sign(r,e);return Mj(n)==Mj(t)?r:!1};function Mj(t){return zj.createHash("sha1").update(t).digest("hex")}});var r_=R(t_=>{"use strict";t_.parse=aee;t_.serialize=oee;var eee=Object.prototype.toString,tee=Object.prototype.hasOwnProperty,ree=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/,nee=/^("?)[\u0021\u0023-\u002B\u002D-\u003A\u003C-\u005B\u005D-\u007E]*\1$/,see=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,iee=/^[\u0020-\u003A\u003D-\u007E]*$/;function aee(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 s=e&&e.decode||cee,i=0,a=0,o=0;do{if(a=t.indexOf("=",i),a===-1)break;if(o=t.indexOf(";",i),o===-1)o=n;else if(a>o){i=t.lastIndexOf(";",a-1)+1;continue}var c=Lj(t,i,a),l=qj(t,a,c),u=t.slice(c,l);if(!tee.call(r,u)){var p=Lj(t,a+1,o),d=qj(t,o,p);t.charCodeAt(p)===34&&t.charCodeAt(d-1)===34&&(p++,d--);var m=t.slice(p,d);r[u]=uee(m,s)}i=o+1}while(ir;){var n=t.charCodeAt(--e);if(n!==32&&n!==9)return e+1}return r}function oee(t,e,r){var n=r&&r.encode||encodeURIComponent;if(typeof n!="function")throw new TypeError("option encode is invalid");if(!ree.test(t))throw new TypeError("argument name is invalid");var s=n(e);if(!nee.test(s))throw new TypeError("argument val is invalid");var i=t+"="+s;if(!r)return i;if(r.maxAge!=null){var a=Math.floor(r.maxAge);if(!isFinite(a))throw new TypeError("option maxAge is invalid");i+="; Max-Age="+a}if(r.domain){if(!see.test(r.domain))throw new TypeError("option domain is invalid");i+="; Domain="+r.domain}if(r.path){if(!iee.test(r.path))throw new TypeError("option path is invalid");i+="; Path="+r.path}if(r.expires){var o=r.expires;if(!lee(o)||isNaN(o.valueOf()))throw new TypeError("option expires is invalid");i+="; Expires="+o.toUTCString()}if(r.httpOnly&&(i+="; HttpOnly"),r.secure&&(i+="; Secure"),r.partitioned&&(i+="; Partitioned"),r.priority){var c=typeof r.priority=="string"?r.priority.toLowerCase():r.priority;switch(c){case"low":i+="; Priority=Low";break;case"medium":i+="; Priority=Medium";break;case"high":i+="; Priority=High";break;default:throw new TypeError("option priority is invalid")}}if(r.sameSite){var l=typeof r.sameSite=="string"?r.sameSite.toLowerCase():r.sameSite;switch(l){case!0:i+="; SameSite=Strict";break;case"lax":i+="; SameSite=Lax";break;case"strict":i+="; SameSite=Strict";break;case"none":i+="; SameSite=None";break;default:throw new TypeError("option sameSite is invalid")}}return i}function cee(t){return t.indexOf("%")!==-1?decodeURIComponent(t):t}function lee(t){return eee.call(t)==="[object Date]"}function uee(t,e){try{return e(t)}catch{return t}}});var s_=R((l0e,n_)=>{"use strict";n_.exports=dee;n_.exports.append=Uj;var pee=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/;function Uj(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:Fj(String(e)),n=0;n{"use strict";var Yl=lm().Buffer,Hj=Px(),mee=xi(),Dr=Hn()("express"),fee=Cl(),hee=Il(),gee=require("http"),vee=Bs().isAbsolute,yee=pl(),Bj=require("path"),Sm=tl(),Wj=Ll(),bee=e_().sign,xee=Bs().normalizeType,_ee=Bs().normalizeTypes,wee=Bs().setCharset,See=r_(),i_=hm(),Eee=Bj.extname,Zj=i_.mime,kee=Bj.resolve,Tee=s_(),ct=Object.create(gee.ServerResponse.prototype);Yj.exports=ct;var Ree=/;\s*charset\s*=/;ct.status=function(e){return(typeof e=="string"||Math.floor(e)!==e)&&e>99&&e<1e3&&Dr("res.status("+JSON.stringify(e)+"): use res.status("+Math.floor(e)+") instead"),this.statusCode=e,this};ct.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(", "))};ct.send=function(e){var r=e,n,s=this.req,i,a=this.app;switch(arguments.length===2&&(typeof arguments[0]!="number"&&typeof arguments[1]=="number"?(Dr("res.send(body, status): Use res.status(status).send(body) instead"),this.statusCode=arguments[1]):(Dr("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"),Dr("res.send(status): Use res.sendStatus(status) instead"),this.statusCode=r,r=Sm.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(Yl.isBuffer(r))this.get("Content-Type")||this.type("bin");else return this.json(r);break}typeof r=="string"&&(n="utf8",i=this.get("Content-Type"),typeof i=="string"&&this.set("Content-Type",wee(i,"utf-8")));var o=a.get("etag fn"),c=!this.get("ETag")&&typeof o=="function",l;r!==void 0&&(Yl.isBuffer(r)?l=r.length:!c&&r.length<1e3?l=Yl.byteLength(r,n):(r=Yl.from(r,n),n=void 0,l=r.length),this.set("Content-Length",l));var u;return c&&l!==void 0&&(u=o(r,n))&&this.set("ETag",u),s.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=""),s.method==="HEAD"?this.end():this.end(r,n),this};ct.json=function(e){var r=e;arguments.length===2&&(typeof arguments[1]=="number"?(Dr("res.json(obj, status): Use res.status(status).json(obj) instead"),this.statusCode=arguments[1]):(Dr("res.json(status, obj): Use res.status(status).json(obj) instead"),this.statusCode=arguments[0],r=arguments[1]));var n=this.app,s=n.get("json escape"),i=n.get("json replacer"),a=n.get("json spaces"),o=Gj(r,i,a,s);return this.get("Content-Type")||this.set("Content-Type","application/json"),this.send(o)};ct.jsonp=function(e){var r=e;arguments.length===2&&(typeof arguments[1]=="number"?(Dr("res.jsonp(obj, status): Use res.status(status).jsonp(obj) instead"),this.statusCode=arguments[1]):(Dr("res.jsonp(status, obj): Use res.status(status).jsonp(obj) instead"),this.statusCode=arguments[0],r=arguments[1]));var n=this.app,s=n.get("json escape"),i=n.get("json replacer"),a=n.get("json spaces"),o=Gj(r,i,a,s),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,""),o===void 0?o="":typeof o=="string"&&(o=o.replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")),o="/**/ typeof "+c+" === 'function' && "+c+"("+o+");"),this.send(o)};ct.sendStatus=function(e){var r=Sm.message[e]||String(e);return this.statusCode=e,this.type("txt"),this.send(r)};ct.sendFile=function(e,r,n){var s=n,i=this.req,a=this,o=i.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"&&(s=r,c={}),!c.root&&!vee(e))throw new TypeError("path must be absolute or specify root to res.sendFile");var l=encodeURI(e),u=i_(i,l,c);Vj(a,u,c,function(p){if(s)return s(p);if(p&&p.code==="EISDIR")return o();p&&p.code!=="ECONNABORTED"&&p.syscall!=="write"&&o(p)})};ct.sendfile=function(t,e,r){var n=r,s=this.req,i=this,a=s.next,o=e||{};typeof e=="function"&&(n=e,o={});var c=i_(s,t,o);Vj(i,c,o,function(l){if(n)return n(l);if(l&&l.code==="EISDIR")return a();l&&l.code!=="ECONNABORTED"&&l.syscall!=="write"&&a(l)})};ct.sendfile=Dr.function(ct.sendfile,"res.sendfile: Use res.sendFile instead");ct.download=function(e,r,n,s){var i=s,a=r,o=n||null;typeof r=="function"?(i=r,a=null,o=null):typeof n=="function"&&(i=n,o=null),typeof r=="object"&&(typeof n=="function"||n===void 0)&&(a=null,o=r);var c={"Content-Disposition":Hj(a||e)};if(o&&o.headers)for(var l=Object.keys(o.headers),u=0;u0?e.accepts(n):!1;return this.vary("Accept"),s?(this.set("Content-Type",xee(s).value),t[s](e,this,r)):t.default?t.default(e,this,r):r(mee(406,{types:_ee(n).map(function(i){return i.value})})),this};ct.attachment=function(e){return e&&this.type(Eee(e)),this.set("Content-Disposition",Hj(e)),this};ct.append=function(e,r){var n=this.get(e),s=r;return n&&(s=Array.isArray(n)?n.concat(r):Array.isArray(r)?[n].concat(r):[n,r]),this.set(e,s)};ct.set=ct.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(!Ree.test(n)){var s=Zj.charsets.lookup(n.split(";")[0]);s&&(n+="; charset="+s.toLowerCase())}}this.setHeader(e,n)}else for(var i in e)this.set(i,e[i]);return this};ct.get=function(t){return this.getHeader(t)};ct.clearCookie=function(e,r){r&&(r.maxAge&&Dr('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&&Dr('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=Wj({expires:new Date(1),path:"/"},r);return this.cookie(e,"",n)};ct.cookie=function(t,e,r){var n=Wj({},r),s=this.req.secret,i=n.signed;if(i&&!s)throw new Error('cookieParser("secret") required for signed cookies');var a=typeof e=="object"?"j:"+JSON.stringify(e):String(e);if(i&&(a="s:"+bee(a,s)),n.maxAge!=null){var o=n.maxAge-0;isNaN(o)||(n.expires=new Date(Date.now()+o),n.maxAge=Math.floor(o/1e3))}return n.path==null&&(n.path="/"),this.append("Set-Cookie",See.serialize(t,String(a),n)),this};ct.location=function(e){var r;return e==="back"?(Dr('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",fee(r))};ct.redirect=function(e){var r=e,n,s=302;arguments.length===2&&(typeof arguments[0]=="number"?(s=arguments[0],r=arguments[1]):(Dr("res.redirect(url, status): Use res.redirect(status, url) instead"),s=arguments[1])),r=this.location(r).get("Location"),this.format({text:function(){n=Sm.message[s]+". Redirecting to "+r},html:function(){var i=hee(r);n="

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

"},default:function(){n=""}}),this.statusCode=s,this.set("Content-Length",Yl.byteLength(n)),this.req.method==="HEAD"?this.end():this.end(n)};ct.vary=function(t){return!t||Array.isArray(t)&&!t.length?(Dr("res.vary(): Provide a field name"),this):(Tee(this,t),this)};ct.render=function(e,r,n){var s=this.req.app,i=n,a=r||{},o=this.req,c=this;typeof r=="function"&&(i=r,a={}),a._locals=c.locals,i=i||function(l,u){if(l)return o.next(l);c.send(u)},s.render(e,a,i)};function Vj(t,e,r,n){var s=!1,i;function a(){if(!s){s=!0;var m=new Error("Request aborted");m.code="ECONNABORTED",n(m)}}function o(){if(!s){s=!0;var m=new Error("EISDIR, read");m.code="EISDIR",n(m)}}function c(m){s||(s=!0,n(m))}function l(){s||(s=!0,n())}function u(){i=!1}function p(m){if(m&&m.code==="ECONNRESET")return a();if(m)return c(m);s||setImmediate(function(){if(i!==!1&&!s){a();return}s||(s=!0,n())})}function d(){i=!0}e.on("directory",o),e.on("end",l),e.on("error",c),e.on("file",u),e.on("stream",d),yee(t,p),r.headers&&e.on("headers",function(f){for(var v=r.headers,g=Object.keys(v),h=0;h&]/g,function(i){switch(i.charCodeAt(0)){case 60:return"\\u003c";case 62:return"\\u003e";case 38:return"\\u0026";default:return i}})),s}});var Qj=R((p0e,o_)=>{"use strict";var $ee=Cl(),Oee=Il(),a_=qa(),Pee=require("path").resolve,Jj=hm(),Cee=require("url");o_.exports=Iee;o_.exports.mime=Jj.mime;function Iee(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,s=r.redirect!==!1,i=r.setHeaders;if(i&&typeof i!="function")throw new TypeError("option setHeaders must be function");r.maxage=r.maxage||r.maxAge||0,r.root=Pee(t);var a=s?Dee():jee();return function(c,l,u){if(c.method!=="GET"&&c.method!=="HEAD"){if(n)return u();l.statusCode=405,l.setHeader("Allow","GET, HEAD"),l.setHeader("Content-Length","0"),l.end();return}var p=!n,d=a_.original(c),m=a_(c).pathname;m==="/"&&d.pathname.substr(-1)!=="/"&&(m="");var f=Jj(c,m,r);f.on("directory",a),i&&f.on("headers",i),n&&f.on("file",function(){p=!0}),f.on("error",function(g){if(p||!(g.statusCode<500)){u(g);return}u()}),f.pipe(l)}}function Aee(t){for(var e=0;e1?"/"+t.substr(e):t}function Nee(t,e){return` +`}function TQ(t,e){return e?e instanceof Error?Ux(t,e,{expose:!1}):Ux(t,e):Ux(t)}function RQ(t){try{return decodeURIComponent(t)}catch{return-1}}function $Q(t){return typeof t.getHeaderNames!="function"?Object.keys(t._headers||{}):t.getHeaderNames()}function YN(t,e){var r=typeof t.listenerCount!="function"?t.listeners(e).length:t.listenerCount(e);return r>0}function OQ(t){return typeof t.headersSent!="boolean"?!!t._header:t.headersSent}function Wx(t,e){for(var r=[].concat(t||[]),n=0;n{"use strict";KN.exports=IQ;function IQ(t){if(!t)throw new TypeError("argument req is required");var e=NQ(t.headers["x-forwarded-for"]||""),r=AQ(t),n=[r].concat(e);return n}function AQ(t){return t.socket?t.socket.remoteAddress:t.connection.remoteAddress}function NQ(t){for(var e=t.length,r=[],n=t.length,s=t.length-1;s>=0;s--)switch(t.charCodeAt(s)){case 32:n===e&&(n=e=s);break;case 44:n!==e&&r.push(t.substring(n,e)),n=e=s;break;default:n=s;break}return n!==e&&r.push(t.substring(n,e)),r}});var XN=R((QN,Yl)=>{(function(){var t,e,r,n,s,i,a,o,c;e={},o=this,typeof Yl<"u"&&Yl!==null&&Yl.exports?Yl.exports=e:o.ipaddr=e,a=function(l,u,p,d){var m,f;if(l.length!==u.length)throw new Error("ipaddr: cannot match CIDR for objects with different lengths");for(m=0;d>0;){if(f=p-d,f<0&&(f=0),l[m]>>f!==u[m]>>f)return!1;d-=p,m+=1}return!0},e.subnetMatch=function(l,u,p){var d,m,f,v,g;p==null&&(p="unicast");for(f in u)for(v=u[f],v[0]&&!(v[0]instanceof Array)&&(v=[v]),d=0,m=v.length;d=0;p=d+=-1)if(m=this.octets[p],m in g){if(v=g[m],f&&v!==0)return null;v!==8&&(f=!0),u+=v}else return null;return 32-u},l})(),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(l){var u,p,d,m,f;if(p=function(v){return v[0]==="0"&&v[1]!=="x"?parseInt(v,8):parseInt(v)},u=l.match(n.fourOctet))return(function(){var v,g,h,y;for(h=u.slice(1,6),y=[],v=0,g=h.length;v4294967295||f<0)throw new Error("ipaddr: address outside defined range");return(function(){var v,g;for(g=[],m=v=0;v<=24;m=v+=8)g.push(f>>m&255);return g})().reverse()}else return null},e.IPv6=(function(){function l(u,p){var d,m,f,v,g,h;if(u.length===16)for(this.parts=[],d=m=0;m<=14;d=m+=2)this.parts.push(u[d]<<8|u[d+1]);else if(u.length===8)this.parts=u;else throw new Error("ipaddr: ipv6 part count should be 8 or 16");for(h=this.parts,f=0,v=h.length;fp&&(u=d.index,p=d[0].length);return p<0?f:f.substring(0,u)+"::"+f.substring(u+p)},l.prototype.toByteArray=function(){var u,p,d,m,f;for(u=[],f=this.parts,p=0,d=f.length;p>8),u.push(m&255);return u},l.prototype.toNormalizedString=function(){var u,p,d;return u=(function(){var m,f,v,g;for(v=this.parts,g=[],m=0,f=v.length;m>8,u&255,p>>8,p&255])},l.prototype.prefixLengthFromSubnetMask=function(){var u,p,d,m,f,v,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},u=0,f=!1,p=d=7;d>=0;p=d+=-1)if(m=this.parts[p],m in g){if(v=g[m],f&&v!==0)return null;v!==16&&(f=!0),u+=v}else return null;return 128-u},l})(),s="(?:[0-9a-f]+::?)+",c="%[0-9a-z]{1,}",i={zoneIndex:new RegExp(c,"i"),native:new RegExp("^(::)?("+s+")?([0-9a-f]+)?(::)?("+c+")?$","i"),transitional:new RegExp("^((?:"+s+")|(?:::)(?:"+s+")?)"+(r+"\\."+r+"\\."+r+"\\."+r)+("("+c+")?$"),"i")},t=function(l,u){var p,d,m,f,v,g;if(l.indexOf("::")!==l.lastIndexOf("::"))return null;for(g=(l.match(i.zoneIndex)||[])[0],g&&(g=g.substring(1),l=l.replace(/%.+$/,"")),p=0,d=-1;(d=l.indexOf(":",d+1))>=0;)p++;if(l.substr(0,2)==="::"&&p--,l.substr(-2,2)==="::"&&p--,p>u)return null;for(v=u-p,f=":";v--;)f+="0:";return l=l.replace("::",f),l[0]===":"&&(l=l.slice(1)),l[l.length-1]===":"&&(l=l.slice(0,-1)),u=(function(){var h,y,b,x;for(b=l.split(":"),x=[],h=0,y=b.length;h=0&&u<=32))return d=[this.parse(p[1]),u],Object.defineProperty(d,"toString",{value:function(){return this.join("/")}}),d;throw new Error("ipaddr: string is not formatted like an IPv4 CIDR range")},e.IPv4.subnetMaskFromPrefixLength=function(l){var u,p,d;if(l=parseInt(l),l<0||l>32)throw new Error("ipaddr: invalid IPv4 prefix length");for(d=[0,0,0,0],p=0,u=Math.floor(l/8);p=0&&u<=128))return d=[this.parse(p[1]),u],Object.defineProperty(d,"toString",{value:function(){return this.join("/")}}),d;throw new Error("ipaddr: string is not formatted like an IPv6 CIDR range")},e.isValid=function(l){return e.IPv6.isValid(l)||e.IPv4.isValid(l)},e.parse=function(l){if(e.IPv6.isValid(l))return e.IPv6.parse(l);if(e.IPv4.isValid(l))return e.IPv4.parse(l);throw new Error("ipaddr: the address has neither IPv6 nor IPv4 format")},e.parseCIDR=function(l){var u;try{return e.IPv6.parseCIDR(l)}catch(p){u=p;try{return e.IPv4.parseCIDR(l)}catch(d){throw u=d,new Error("ipaddr: the address has neither IPv6 nor IPv4 CIDR format")}}},e.fromByteArray=function(l){var u;if(u=l.length,u===4)return new e.IPv4(l);if(u===16)return new e.IPv6(l);throw new Error("ipaddr: the binary input is neither an IPv6 nor IPv4 address")},e.process=function(l){var u;return u=this.parse(l),u.kind()==="ipv6"&&u.isIPv4MappedAddress()?u.toIPv4Address():u}}).call(QN)});var Gx=R((r0e,xm)=>{"use strict";xm.exports=FQ;xm.exports.all=rj;xm.exports.compile=nj;var jQ=JN(),tj=XN(),DQ=/^[0-9]+$/,ym=tj.isValid,bm=tj.parse,ej={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 rj(t,e){var r=jQ(t);if(!e)return r;typeof e!="function"&&(e=nj(e));for(var n=0;ns)throw new TypeError("invalid range on address: "+t);return[n,i]}function qQ(t){var e=bm(t),r=e.kind();return r==="ipv4"?e.prefixLengthFromSubnetMask():null}function FQ(t,e){if(!t)throw new TypeError("req argument is required");if(!e)throw new TypeError("trust argument is required");var r=rj(t,e),n=r[r.length-1];return n}function UQ(){return!1}function HQ(t){return function(r){if(!ym(r))return!1;for(var n=bm(r),s,i=n.kind(),a=0;a{"use strict";var sj=pm().Buffer,WQ=Nx(),ij=tl(),aj=Hn()("express"),ZQ=ql(),VQ=vm().mime,GQ=Lx(),YQ=Gx(),KQ=em(),JQ=require("querystring");vr.etag=oj({weak:!1});vr.wetag=oj({weak:!0});vr.isAbsolute=function(t){if(t[0]==="/"||t[1]===":"&&(t[2]==="\\"||t[2]==="/")||t.substring(0,2)==="\\\\")return!0};vr.flatten=aj.function(ZQ,"utils.flatten: use array-flatten npm module instead");vr.normalizeType=function(t){return~t.indexOf("/")?QQ(t):{value:VQ.lookup(t),params:{}}};vr.normalizeTypes=function(t){for(var e=[],r=0;r{"use strict";var tX=SA(),rX=Px(),Kx=am(),nX=iN(),sX=Cx(),_m=Ha()("express:application"),iX=pN(),aX=require("http"),oX=Bs().compileETag,cX=Bs().compileQueryParser,lX=Bs().compileTrust,uX=Hn()("express"),pX=ql(),Yx=Fl(),dX=require("path").resolve,Qa=rl(),mX=Object.prototype.hasOwnProperty,Qx=Array.prototype.slice,At=cj=lj.exports={},Jx="@@symbol:trust_proxy_default";At.init=function(){this.cache={},this.engines={},this.settings={},this.defaultConfiguration()};At.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,Jx,{configurable:!0,value:!0}),_m("booting in %s mode",e),this.on("mount",function(n){this.settings[Jx]===!0&&typeof n.settings["trust proxy fn"]=="function"&&(delete this.settings["trust proxy"],delete this.settings["trust proxy fn"]),Qa(this.request,n.request),Qa(this.response,n.response),Qa(this.engines,n.engines),Qa(this.settings,n.settings)}),this.locals=Object.create(null),this.mountpath="/",this.locals.settings=this.settings,this.set("view",iX),this.set("views",dX("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.`)}})};At.lazyrouter=function(){this._router||(this._router=new rX({caseSensitive:this.enabled("case sensitive routing"),strict:this.enabled("strict routing")}),this._router.use(sX(this.get("query parser fn"))),this._router.use(nX.init(this)))};At.handle=function(e,r,n){var s=this._router,i=n||tX(e,r,{env:this.get("env"),onerror:fX.bind(this)});if(!s){_m("no routes defined on app"),i();return}s.handle(e,r,i)};At.use=function(e){var r=0,n="/";if(typeof e!="function"){for(var s=e;Array.isArray(s)&&s.length!==0;)s=s[0];typeof s!="function"&&(r=1,n=e)}var i=pX(Qx.call(arguments,r));if(i.length===0)throw new TypeError("app.use() requires a middleware function");this.lazyrouter();var a=this._router;return i.forEach(function(o){if(!o||!o.handle||!o.set)return a.use(n,o);_m(".use app under %s",n),o.mountpath=n,o.parent=this,a.use(n,function(l,u,p){var d=l.app;o.handle(l,u,function(m){Qa(l,d.request),Qa(u,d.response),p(m)})}),o.emit("mount",this)},this),this};At.route=function(e){return this.lazyrouter(),this._router.route(e)};At.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};At.param=function(e,r){if(this.lazyrouter(),Array.isArray(e)){for(var n=0;n1?'directories "'+l.root.slice(0,-1).join('", "')+'" or "'+l.root[l.root.length-1]+'"':'directory "'+l.root+'"',d=new Error('Failed to lookup view "'+e+'" in views '+p);return d.view=l,i(d)}c.cache&&(s[e]=l)}hX(l,c,i)};At.listen=function(){var e=aX.createServer(this);return e.listen.apply(e,arguments)};function fX(t){this.get("env")!=="test"&&console.error(t.stack||t.toString())}function hX(t,e,r){try{t.render(e,r)}catch(n){r(n)}}});var fj=R((s0e,Xx)=>{"use strict";Xx.exports=mj;Xx.exports.preferredCharsets=mj;var gX=/^\s*([^\s;]+)\s*(?:;(.*))?$/;function vX(t){for(var e=t.split(","),r=0,n=0;r0}});var bj=R((i0e,e_)=>{"use strict";e_.exports=yj;e_.exports.preferredEncodings=yj;var wX=/^\s*([^\s;]+)\s*(?:;(.*))?$/;function SX(t){for(var e=t.split(","),r=!1,n=1,s=0,i=0;s0}});var Ej=R((a0e,t_)=>{"use strict";t_.exports=Sj;t_.exports.preferredLanguages=Sj;var RX=/^\s*([^\s\-;]+)(?:-([^\s;]+))?\s*(?:;(.*))?$/;function $X(t){for(var e=t.split(","),r=0,n=0;r0}});var Pj=R((o0e,r_)=>{"use strict";r_.exports=$j;r_.exports.preferredMediaTypes=$j;var IX=/^\s*([^\s\/;]+)\/([^;\s]+)\s*(?:;(.*))?$/;function AX(t){for(var e=zX(t),r=0,n=0;r0)if(i.every(function(a){return e.params[a]=="*"||(e.params[a]||"").toLowerCase()==(n.params[a]||"").toLowerCase()}))s|=1;else return null;return{i:r,o:e.i,q:e.q,s}}function $j(t,e){var r=AX(t===void 0?"*/*":t||"");if(!e)return r.filter(Tj).sort(kj).map(DX);var n=e.map(function(i,a){return NX(i,r,a)});return n.filter(Tj).sort(kj).map(function(i){return e[n.indexOf(i)]})}function kj(t,e){return e.q-t.q||e.s-t.s||t.o-e.o||t.i-e.i||0}function DX(t){return t.type+"/"+t.subtype}function Tj(t){return t.q>0}function Oj(t){for(var e=0,r=0;(r=t.indexOf('"',r))!==-1;)e++,r++;return e}function MX(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 zX(t){for(var e=t.split(","),r=1,n=0;r{"use strict";var qX=fj(),FX=bj(),UX=Ej(),HX=Pj();n_.exports=rt;n_.exports.Negotiator=rt;function rt(t){if(!(this instanceof rt))return new rt(t);this.request=t}rt.prototype.charset=function(e){var r=this.charsets(e);return r&&r[0]};rt.prototype.charsets=function(e){return qX(this.request.headers["accept-charset"],e)};rt.prototype.encoding=function(e){var r=this.encodings(e);return r&&r[0]};rt.prototype.encodings=function(e){return FX(this.request.headers["accept-encoding"],e)};rt.prototype.language=function(e){var r=this.languages(e);return r&&r[0]};rt.prototype.languages=function(e){return UX(this.request.headers["accept-language"],e)};rt.prototype.mediaType=function(e){var r=this.mediaTypes(e);return r&&r[0]};rt.prototype.mediaTypes=function(e){return HX(this.request.headers.accept,e)};rt.prototype.preferredCharset=rt.prototype.charset;rt.prototype.preferredCharsets=rt.prototype.charsets;rt.prototype.preferredEncoding=rt.prototype.encoding;rt.prototype.preferredEncodings=rt.prototype.encodings;rt.prototype.preferredLanguage=rt.prototype.language;rt.prototype.preferredLanguages=rt.prototype.languages;rt.prototype.preferredMediaType=rt.prototype.mediaType;rt.prototype.preferredMediaTypes=rt.prototype.mediaTypes});var Ij=R((l0e,BX)=>{BX.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 Nj=R((u0e,Aj)=>{Aj.exports=Ij()});var Mj=R(jr=>{"use strict";var wm=Nj(),WX=require("path").extname,jj=/^\s*([^;\s]*)(?:;|\s|$)/,ZX=/^text\//i;jr.charset=Dj;jr.charsets={lookup:Dj};jr.contentType=VX;jr.extension=GX;jr.extensions=Object.create(null);jr.lookup=YX;jr.types=Object.create(null);KX(jr.extensions,jr.types);function Dj(t){if(!t||typeof t!="string")return!1;var e=jj.exec(t),r=e&&wm[e[1].toLowerCase()];return r&&r.charset?r.charset:e&&ZX.test(e[1])?"UTF-8":!1}function VX(t){if(!t||typeof t!="string")return!1;var e=t.indexOf("/")===-1?jr.lookup(t):t;if(!e)return!1;if(e.indexOf("charset")===-1){var r=jr.charset(e);r&&(e+="; charset="+r.toLowerCase())}return e}function GX(t){if(!t||typeof t!="string")return!1;var e=jj.exec(t),r=e&&jr.extensions[e[1].toLowerCase()];return!r||!r.length?!1:r[0]}function YX(t){if(!t||typeof t!="string")return!1;var e=WX("x."+t).toLowerCase().substr(1);return e&&jr.types[e]||!1}function KX(t,e){var r=["nginx","apache",void 0,"iana"];Object.keys(wm).forEach(function(s){var i=wm[s],a=i.extensions;if(!(!a||!a.length)){t[s]=a;for(var o=0;ou||l===u&&e[c].substr(0,12)==="application/"))continue}e[c]=s}}})}});var Lj=R((d0e,zj)=>{"use strict";var JX=Cj(),QX=Mj();zj.exports=Wr;function Wr(t){if(!(this instanceof Wr))return new Wr(t);this.headers=t.headers,this.negotiator=new JX(t)}Wr.prototype.type=Wr.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 Sm=Lj(),Kl=Hn()("express"),tee=require("net").isIP,ree=Aa(),nee=require("http"),see=qx(),iee=Fx(),aee=Fa(),qj=Gx(),st=Object.create(nee.IncomingMessage.prototype);Fj.exports=st;st.get=st.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]}};st.accepts=function(){var t=Sm(this);return t.types.apply(t,arguments)};st.acceptsEncodings=function(){var t=Sm(this);return t.encodings.apply(t,arguments)};st.acceptsEncoding=Kl.function(st.acceptsEncodings,"req.acceptsEncoding: Use acceptsEncodings instead");st.acceptsCharsets=function(){var t=Sm(this);return t.charsets.apply(t,arguments)};st.acceptsCharset=Kl.function(st.acceptsCharsets,"req.acceptsCharset: Use acceptsCharsets instead");st.acceptsLanguages=function(){var t=Sm(this);return t.languages.apply(t,arguments)};st.acceptsLanguage=Kl.function(st.acceptsLanguages,"req.acceptsLanguage: Use acceptsLanguages instead");st.range=function(e,r){var n=this.get("Range");if(n)return iee(e,n,r)};st.param=function(e,r){var n=this.params||{},s=this.body||{},i=this.query||{},a=arguments.length===1?"name":"name, default";return Kl("req.param("+a+"): Use req.params, req.body, or req.query instead"),n[e]!=null&&n.hasOwnProperty(e)?n[e]:s[e]!=null?s[e]:i[e]!=null?i[e]:r};st.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?see(this.headers,{etag:e.get("ETag"),"last-modified":e.get("Last-Modified")}):!1});Tn(st,"stale",function(){return!this.fresh});Tn(st,"xhr",function(){var e=this.get("X-Requested-With")||"";return e.toLowerCase()==="xmlhttprequest"});function Tn(t,e,r){Object.defineProperty(t,e,{configurable:!0,enumerable:!0,get:r})}});var s_=R(Em=>{var Bj=require("crypto");Em.sign=function(t,e){if(typeof t!="string")throw new TypeError("Cookie value must be provided as a string.");if(typeof e!="string")throw new TypeError("Secret string must be provided.");return t+"."+Bj.createHmac("sha256",e).update(t).digest("base64").replace(/\=+$/,"")};Em.unsign=function(t,e){if(typeof t!="string")throw new TypeError("Signed cookie string must be provided.");if(typeof e!="string")throw new TypeError("Secret string must be provided.");var r=t.slice(0,t.lastIndexOf(".")),n=Em.sign(r,e);return Hj(n)==Hj(t)?r:!1};function Hj(t){return Bj.createHash("sha1").update(t).digest("hex")}});var a_=R(i_=>{"use strict";i_.parse=mee;i_.serialize=fee;var oee=Object.prototype.toString,cee=Object.prototype.hasOwnProperty,lee=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/,uee=/^("?)[\u0021\u0023-\u002B\u002D-\u003A\u003C-\u005B\u005D-\u007E]*\1$/,pee=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,dee=/^[\u0020-\u003A\u003D-\u007E]*$/;function mee(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 s=e&&e.decode||hee,i=0,a=0,o=0;do{if(a=t.indexOf("=",i),a===-1)break;if(o=t.indexOf(";",i),o===-1)o=n;else if(a>o){i=t.lastIndexOf(";",a-1)+1;continue}var c=Wj(t,i,a),l=Zj(t,a,c),u=t.slice(c,l);if(!cee.call(r,u)){var p=Wj(t,a+1,o),d=Zj(t,o,p);t.charCodeAt(p)===34&&t.charCodeAt(d-1)===34&&(p++,d--);var m=t.slice(p,d);r[u]=vee(m,s)}i=o+1}while(ir;){var n=t.charCodeAt(--e);if(n!==32&&n!==9)return e+1}return r}function fee(t,e,r){var n=r&&r.encode||encodeURIComponent;if(typeof n!="function")throw new TypeError("option encode is invalid");if(!lee.test(t))throw new TypeError("argument name is invalid");var s=n(e);if(!uee.test(s))throw new TypeError("argument val is invalid");var i=t+"="+s;if(!r)return i;if(r.maxAge!=null){var a=Math.floor(r.maxAge);if(!isFinite(a))throw new TypeError("option maxAge is invalid");i+="; Max-Age="+a}if(r.domain){if(!pee.test(r.domain))throw new TypeError("option domain is invalid");i+="; Domain="+r.domain}if(r.path){if(!dee.test(r.path))throw new TypeError("option path is invalid");i+="; Path="+r.path}if(r.expires){var o=r.expires;if(!gee(o)||isNaN(o.valueOf()))throw new TypeError("option expires is invalid");i+="; Expires="+o.toUTCString()}if(r.httpOnly&&(i+="; HttpOnly"),r.secure&&(i+="; Secure"),r.partitioned&&(i+="; Partitioned"),r.priority){var c=typeof r.priority=="string"?r.priority.toLowerCase():r.priority;switch(c){case"low":i+="; Priority=Low";break;case"medium":i+="; Priority=Medium";break;case"high":i+="; Priority=High";break;default:throw new TypeError("option priority is invalid")}}if(r.sameSite){var l=typeof r.sameSite=="string"?r.sameSite.toLowerCase():r.sameSite;switch(l){case!0:i+="; SameSite=Strict";break;case"lax":i+="; SameSite=Lax";break;case"strict":i+="; SameSite=Strict";break;case"none":i+="; SameSite=None";break;default:throw new TypeError("option sameSite is invalid")}}return i}function hee(t){return t.indexOf("%")!==-1?decodeURIComponent(t):t}function gee(t){return oee.call(t)==="[object Date]"}function vee(t,e){try{return e(t)}catch{return t}}});var c_=R((g0e,o_)=>{"use strict";o_.exports=bee;o_.exports.append=Gj;var yee=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/;function Gj(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:Vj(String(e)),n=0;n{"use strict";var Jl=pm().Buffer,Yj=Nx(),xee=_i(),Dr=Hn()("express"),_ee=Al(),wee=Nl(),See=require("http"),Eee=Bs().isAbsolute,kee=ml(),Kj=require("path"),km=nl(),Jj=Fl(),Tee=s_().sign,Ree=Bs().normalizeType,$ee=Bs().normalizeTypes,Oee=Bs().setCharset,Pee=a_(),l_=vm(),Cee=Kj.extname,Qj=l_.mime,Iee=Kj.resolve,Aee=c_(),ct=Object.create(See.ServerResponse.prototype);tD.exports=ct;var Nee=/;\s*charset\s*=/;ct.status=function(e){return(typeof e=="string"||Math.floor(e)!==e)&&e>99&&e<1e3&&Dr("res.status("+JSON.stringify(e)+"): use res.status("+Math.floor(e)+") instead"),this.statusCode=e,this};ct.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(", "))};ct.send=function(e){var r=e,n,s=this.req,i,a=this.app;switch(arguments.length===2&&(typeof arguments[0]!="number"&&typeof arguments[1]=="number"?(Dr("res.send(body, status): Use res.status(status).send(body) instead"),this.statusCode=arguments[1]):(Dr("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"),Dr("res.send(status): Use res.sendStatus(status) instead"),this.statusCode=r,r=km.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(Jl.isBuffer(r))this.get("Content-Type")||this.type("bin");else return this.json(r);break}typeof r=="string"&&(n="utf8",i=this.get("Content-Type"),typeof i=="string"&&this.set("Content-Type",Oee(i,"utf-8")));var o=a.get("etag fn"),c=!this.get("ETag")&&typeof o=="function",l;r!==void 0&&(Jl.isBuffer(r)?l=r.length:!c&&r.length<1e3?l=Jl.byteLength(r,n):(r=Jl.from(r,n),n=void 0,l=r.length),this.set("Content-Length",l));var u;return c&&l!==void 0&&(u=o(r,n))&&this.set("ETag",u),s.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=""),s.method==="HEAD"?this.end():this.end(r,n),this};ct.json=function(e){var r=e;arguments.length===2&&(typeof arguments[1]=="number"?(Dr("res.json(obj, status): Use res.status(status).json(obj) instead"),this.statusCode=arguments[1]):(Dr("res.json(status, obj): Use res.status(status).json(obj) instead"),this.statusCode=arguments[0],r=arguments[1]));var n=this.app,s=n.get("json escape"),i=n.get("json replacer"),a=n.get("json spaces"),o=eD(r,i,a,s);return this.get("Content-Type")||this.set("Content-Type","application/json"),this.send(o)};ct.jsonp=function(e){var r=e;arguments.length===2&&(typeof arguments[1]=="number"?(Dr("res.jsonp(obj, status): Use res.status(status).jsonp(obj) instead"),this.statusCode=arguments[1]):(Dr("res.jsonp(status, obj): Use res.status(status).jsonp(obj) instead"),this.statusCode=arguments[0],r=arguments[1]));var n=this.app,s=n.get("json escape"),i=n.get("json replacer"),a=n.get("json spaces"),o=eD(r,i,a,s),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,""),o===void 0?o="":typeof o=="string"&&(o=o.replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")),o="/**/ typeof "+c+" === 'function' && "+c+"("+o+");"),this.send(o)};ct.sendStatus=function(e){var r=km.message[e]||String(e);return this.statusCode=e,this.type("txt"),this.send(r)};ct.sendFile=function(e,r,n){var s=n,i=this.req,a=this,o=i.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"&&(s=r,c={}),!c.root&&!Eee(e))throw new TypeError("path must be absolute or specify root to res.sendFile");var l=encodeURI(e),u=l_(i,l,c);Xj(a,u,c,function(p){if(s)return s(p);if(p&&p.code==="EISDIR")return o();p&&p.code!=="ECONNABORTED"&&p.syscall!=="write"&&o(p)})};ct.sendfile=function(t,e,r){var n=r,s=this.req,i=this,a=s.next,o=e||{};typeof e=="function"&&(n=e,o={});var c=l_(s,t,o);Xj(i,c,o,function(l){if(n)return n(l);if(l&&l.code==="EISDIR")return a();l&&l.code!=="ECONNABORTED"&&l.syscall!=="write"&&a(l)})};ct.sendfile=Dr.function(ct.sendfile,"res.sendfile: Use res.sendFile instead");ct.download=function(e,r,n,s){var i=s,a=r,o=n||null;typeof r=="function"?(i=r,a=null,o=null):typeof n=="function"&&(i=n,o=null),typeof r=="object"&&(typeof n=="function"||n===void 0)&&(a=null,o=r);var c={"Content-Disposition":Yj(a||e)};if(o&&o.headers)for(var l=Object.keys(o.headers),u=0;u0?e.accepts(n):!1;return this.vary("Accept"),s?(this.set("Content-Type",Ree(s).value),t[s](e,this,r)):t.default?t.default(e,this,r):r(xee(406,{types:$ee(n).map(function(i){return i.value})})),this};ct.attachment=function(e){return e&&this.type(Cee(e)),this.set("Content-Disposition",Yj(e)),this};ct.append=function(e,r){var n=this.get(e),s=r;return n&&(s=Array.isArray(n)?n.concat(r):Array.isArray(r)?[n].concat(r):[n,r]),this.set(e,s)};ct.set=ct.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(!Nee.test(n)){var s=Qj.charsets.lookup(n.split(";")[0]);s&&(n+="; charset="+s.toLowerCase())}}this.setHeader(e,n)}else for(var i in e)this.set(i,e[i]);return this};ct.get=function(t){return this.getHeader(t)};ct.clearCookie=function(e,r){r&&(r.maxAge&&Dr('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&&Dr('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=Jj({expires:new Date(1),path:"/"},r);return this.cookie(e,"",n)};ct.cookie=function(t,e,r){var n=Jj({},r),s=this.req.secret,i=n.signed;if(i&&!s)throw new Error('cookieParser("secret") required for signed cookies');var a=typeof e=="object"?"j:"+JSON.stringify(e):String(e);if(i&&(a="s:"+Tee(a,s)),n.maxAge!=null){var o=n.maxAge-0;isNaN(o)||(n.expires=new Date(Date.now()+o),n.maxAge=Math.floor(o/1e3))}return n.path==null&&(n.path="/"),this.append("Set-Cookie",Pee.serialize(t,String(a),n)),this};ct.location=function(e){var r;return e==="back"?(Dr('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",_ee(r))};ct.redirect=function(e){var r=e,n,s=302;arguments.length===2&&(typeof arguments[0]=="number"?(s=arguments[0],r=arguments[1]):(Dr("res.redirect(url, status): Use res.redirect(status, url) instead"),s=arguments[1])),r=this.location(r).get("Location"),this.format({text:function(){n=km.message[s]+". Redirecting to "+r},html:function(){var i=wee(r);n="

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

"},default:function(){n=""}}),this.statusCode=s,this.set("Content-Length",Jl.byteLength(n)),this.req.method==="HEAD"?this.end():this.end(n)};ct.vary=function(t){return!t||Array.isArray(t)&&!t.length?(Dr("res.vary(): Provide a field name"),this):(Aee(this,t),this)};ct.render=function(e,r,n){var s=this.req.app,i=n,a=r||{},o=this.req,c=this;typeof r=="function"&&(i=r,a={}),a._locals=c.locals,i=i||function(l,u){if(l)return o.next(l);c.send(u)},s.render(e,a,i)};function Xj(t,e,r,n){var s=!1,i;function a(){if(!s){s=!0;var m=new Error("Request aborted");m.code="ECONNABORTED",n(m)}}function o(){if(!s){s=!0;var m=new Error("EISDIR, read");m.code="EISDIR",n(m)}}function c(m){s||(s=!0,n(m))}function l(){s||(s=!0,n())}function u(){i=!1}function p(m){if(m&&m.code==="ECONNRESET")return a();if(m)return c(m);s||setImmediate(function(){if(i!==!1&&!s){a();return}s||(s=!0,n())})}function d(){i=!0}e.on("directory",o),e.on("end",l),e.on("error",c),e.on("file",u),e.on("stream",d),kee(t,p),r.headers&&e.on("headers",function(f){for(var v=r.headers,g=Object.keys(v),h=0;h&]/g,function(i){switch(i.charCodeAt(0)){case 60:return"\\u003c";case 62:return"\\u003e";case 38:return"\\u0026";default:return i}})),s}});var sD=R((y0e,p_)=>{"use strict";var jee=Al(),Dee=Nl(),u_=Fa(),Mee=require("path").resolve,nD=vm(),zee=require("url");p_.exports=Lee;p_.exports.mime=nD.mime;function Lee(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,s=r.redirect!==!1,i=r.setHeaders;if(i&&typeof i!="function")throw new TypeError("option setHeaders must be function");r.maxage=r.maxage||r.maxAge||0,r.root=Mee(t);var a=s?Hee():Uee();return function(c,l,u){if(c.method!=="GET"&&c.method!=="HEAD"){if(n)return u();l.statusCode=405,l.setHeader("Allow","GET, HEAD"),l.setHeader("Content-Length","0"),l.end();return}var p=!n,d=u_.original(c),m=u_(c).pathname;m==="/"&&d.pathname.substr(-1)!=="/"&&(m="");var f=nD(c,m,r);f.on("directory",a),i&&f.on("headers",i),n&&f.on("file",function(){p=!0}),f.on("error",function(g){if(p||!(g.statusCode<500)){u(g);return}u()}),f.pipe(l)}}function qee(t){for(var e=0;e1?"/"+t.substr(e):t}function Fee(t,e){return` @@ -84,7 +84,7 @@ Please see the 3.x to 4.x migration guide for details on how to update your app.
`+e+`
-`}function jee(){return function(){this.error(404)}}function Dee(){return function(e){if(this.hasTrailingSlash()){this.error(404);return}var r=a_.original(this.req);r.path=null,r.pathname=Aee(r.pathname+"/");var n=$ee(Cee.format(r)),s=Nee("Redirecting","Redirecting to "+Oee(n));e.statusCode=301,e.setHeader("Content-Type","text/html; charset=UTF-8"),e.setHeader("Content-Length",Buffer.byteLength(s)),e.setHeader("Content-Security-Policy","default-src 'none'"),e.setHeader("X-Content-Type-Options","nosniff"),e.setHeader("Location",n),e.end(s)}}});var sD=R((Mr,nD)=>{"use strict";var Em=ZI(),Mee=require("events").EventEmitter,Xj=GI(),eD=sj(),zee=Ex(),Lee=Tx(),tD=Dj(),rD=Kj();Mr=nD.exports=qee;function qee(){var t=function(e,r,n){t.handle(e,r,n)};return Xj(t,Mee.prototype,!1),Xj(t,eD,!1),t.request=Object.create(tD,{app:{configurable:!0,enumerable:!0,writable:!0,value:t}}),t.response=Object.create(rD,{app:{configurable:!0,enumerable:!0,writable:!0,value:t}}),t.init(),t}Mr.application=eD;Mr.request=tD;Mr.response=rD;Mr.Route=zee;Mr.Router=Lee;Mr.json=Em.json;Mr.query=Rx();Mr.raw=Em.raw;Mr.static=Qj();Mr.text=Em.text;Mr.urlencoded=Em.urlencoded;var Fee=["bodyParser","compress","cookieSession","session","logger","cookieParser","favicon","responseTime","errorHandler","timeout","methodOverride","vhost","csrf","directory","limit","multipart","staticCache"];Fee.forEach(function(t){Object.defineProperty(Mr,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 Kl=R((d0e,iD)=>{"use strict";iD.exports=sD()});var cD=R((m0e,oD)=>{"use strict";var aD=Object.getOwnPropertySymbols,Uee=Object.prototype.hasOwnProperty,Hee=Object.prototype.propertyIsEnumerable;function Bee(t){if(t==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}function Wee(){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(i){return e[i]});if(n.join("")!=="0123456789")return!1;var s={};return"abcdefghijklmnopqrst".split("").forEach(function(i){s[i]=i}),Object.keys(Object.assign({},s)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}oD.exports=Wee()?Object.assign:function(t,e){for(var r,n=Bee(t),s,i=1;i{(function(){"use strict";var t=cD(),e=s_(),r={origin:"*",methods:"GET,HEAD,PUT,PATCH,POST,DELETE",preflightContinue:!1,optionsSuccessStatus:204};function n(f){return typeof f=="string"||f instanceof String}function s(f,v){if(Array.isArray(v)){for(var g=0;g{"use strict";var Zee=r_(),Vee=e_();Qa.exports=Gee;Qa.exports.JSONCookie=pD;Qa.exports.JSONCookies=c_;Qa.exports.signedCookie=dD;Qa.exports.signedCookies=mD;function Gee(t,e){var r=!t||Array.isArray(t)?t||[]:[t];return function(s,i,a){if(s.cookies)return a();var o=s.headers.cookie;if(s.secret=r[0],s.cookies=Object.create(null),s.signedCookies=Object.create(null),!o)return a();s.cookies=Zee.parse(o,e),r.length!==0&&(s.signedCookies=mD(s.cookies,r),s.signedCookies=c_(s.signedCookies)),s.cookies=c_(s.cookies),a()}}function pD(t){if(!(typeof t!="string"||t.substr(0,2)!=="j:"))try{return JSON.parse(t.slice(2))}catch{return}}function c_(t){for(var e=Object.keys(t),r,n,s=0;sl_,BACKUPS_DIR:()=>xD,CLAUDE_COMMANDS_DIR:()=>Xee,CLAUDE_CONFIG_DIR:()=>eo,CLAUDE_CREDENTIALS_PATH:()=>u_,CLAUDE_MD_PATH:()=>ete,CLAUDE_SETTINGS_PATH:()=>Qee,DATA_DIR:()=>zr,DB_PATH:()=>Ql,LOGS_DIR:()=>yD,MARKETPLACE_ROOT:()=>tte,MODES_DIR:()=>_D,PLUGINS_DIR:()=>wD,TRASH_DIR:()=>bD,USER_SETTINGS_PATH:()=>ar,VECTOR_DB_DIR:()=>Jee,ensureAllDataDirs:()=>nte,ensureDir:()=>Rn,getCurrentProjectName:()=>ste,getPackageRoot:()=>ds,getProjectArchiveDir:()=>rte,getVersion:()=>km});function Yee(){return typeof __dirname<"u"?__dirname:(0,lt.dirname)((0,vD.fileURLToPath)(ite.url))}function rte(t){return(0,lt.join)(l_,t)}function Rn(t){(0,Xa.mkdirSync)(t,{recursive:!0})}function nte(){Rn(zr),Rn(l_),Rn(yD),Rn(bD),Rn(xD),Rn(_D)}function ste(){try{let t=(0,gD.execSync)("git rev-parse --show-toplevel",{cwd:process.cwd(),encoding:"utf8",stdio:["pipe","pipe","ignore"],windowsHide:!0}).trim();return(0,lt.basename)(t)}catch(t){return _.debug("SYSTEM","Git root detection failed, using cwd basename",{cwd:process.cwd()},t),(0,lt.basename)(process.cwd())}}function ds(){return(0,lt.join)(Kee,"..")}function km(){if(Jl)return Jl;let t=ds(),e=[(0,lt.join)(t,"package.json"),(0,lt.join)(t,".claude-plugin","plugin.json"),(0,lt.join)(t,"..","package.json")];for(let r of e)try{if((0,Xa.existsSync)(r)){let n=JSON.parse((0,Xa.readFileSync)(r,"utf-8"));if(n.version)return Jl=n.version,n.version}}catch{}return Jl=`0.0.0-${Date.now()}`,Jl}var lt,hD,Xa,gD,vD,ite,Jl,Kee,zr,eo,l_,yD,bD,xD,_D,ar,Ql,Jee,Qee,Xee,ete,u_,wD,tte,yr=xe(()=>{"use strict";lt=require("path"),hD=require("os"),Xa=require("fs"),gD=require("child_process"),vD=require("url");Br();se();ite={},Jl=null;Kee=Yee(),zr=De.get("CLAUDE_PILOT_DATA_DIR"),eo=process.env.CLAUDE_CONFIG_DIR||(0,lt.join)((0,hD.homedir)(),".claude"),l_=(0,lt.join)(zr,"archives"),yD=(0,lt.join)(zr,"logs"),bD=(0,lt.join)(zr,"trash"),xD=(0,lt.join)(zr,"backups"),_D=(0,lt.join)(zr,"modes"),ar=(0,lt.join)(zr,"settings.json"),Ql=(0,lt.join)(zr,"pilot-memory.db"),Jee=(0,lt.join)(zr,"vector-db"),Qee=(0,lt.join)(eo,"settings.json"),Xee=(0,lt.join)(eo,"commands"),ete=(0,lt.join)(eo,"CLAUDE.md"),u_=(0,lt.join)(eo,".credentials.json"),wD=(0,lt.join)(eo,"plugins"),tte=(0,lt.join)(wD,"marketplaces","pilot")});var MD,Ws,Om=xe(()=>{"use strict";MD=require("bun:sqlite");yr();se();Ws=class{db;constructor(e=Ql){e!==":memory:"&&Rn(zr),this.db=new MD.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.ensureSessionPlansTable(),this.createProjectRootsTable()}initializeSchema(){this.db.run(` +`}function Uee(){return function(){this.error(404)}}function Hee(){return function(e){if(this.hasTrailingSlash()){this.error(404);return}var r=u_.original(this.req);r.path=null,r.pathname=qee(r.pathname+"/");var n=jee(zee.format(r)),s=Fee("Redirecting","Redirecting to "+Dee(n));e.statusCode=301,e.setHeader("Content-Type","text/html; charset=UTF-8"),e.setHeader("Content-Length",Buffer.byteLength(s)),e.setHeader("Content-Security-Policy","default-src 'none'"),e.setHeader("X-Content-Type-Options","nosniff"),e.setHeader("Location",n),e.end(s)}}});var uD=R((Mr,lD)=>{"use strict";var Tm=QI(),Bee=require("events").EventEmitter,iD=eA(),aD=uj(),Wee=$x(),Zee=Px(),oD=Uj(),cD=rD();Mr=lD.exports=Vee;function Vee(){var t=function(e,r,n){t.handle(e,r,n)};return iD(t,Bee.prototype,!1),iD(t,aD,!1),t.request=Object.create(oD,{app:{configurable:!0,enumerable:!0,writable:!0,value:t}}),t.response=Object.create(cD,{app:{configurable:!0,enumerable:!0,writable:!0,value:t}}),t.init(),t}Mr.application=aD;Mr.request=oD;Mr.response=cD;Mr.Route=Wee;Mr.Router=Zee;Mr.json=Tm.json;Mr.query=Cx();Mr.raw=Tm.raw;Mr.static=sD();Mr.text=Tm.text;Mr.urlencoded=Tm.urlencoded;var Gee=["bodyParser","compress","cookieSession","session","logger","cookieParser","favicon","responseTime","errorHandler","timeout","methodOverride","vhost","csrf","directory","limit","multipart","staticCache"];Gee.forEach(function(t){Object.defineProperty(Mr,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 Ql=R((b0e,pD)=>{"use strict";pD.exports=uD()});var fD=R((x0e,mD)=>{"use strict";var dD=Object.getOwnPropertySymbols,Yee=Object.prototype.hasOwnProperty,Kee=Object.prototype.propertyIsEnumerable;function Jee(t){if(t==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}function Qee(){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(i){return e[i]});if(n.join("")!=="0123456789")return!1;var s={};return"abcdefghijklmnopqrst".split("").forEach(function(i){s[i]=i}),Object.keys(Object.assign({},s)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}mD.exports=Qee()?Object.assign:function(t,e){for(var r,n=Jee(t),s,i=1;i{(function(){"use strict";var t=fD(),e=c_(),r={origin:"*",methods:"GET,HEAD,PUT,PATCH,POST,DELETE",preflightContinue:!1,optionsSuccessStatus:204};function n(f){return typeof f=="string"||f instanceof String}function s(f,v){if(Array.isArray(v)){for(var g=0;g{"use strict";var Xee=a_(),ete=s_();Xa.exports=tte;Xa.exports.JSONCookie=vD;Xa.exports.JSONCookies=d_;Xa.exports.signedCookie=yD;Xa.exports.signedCookies=bD;function tte(t,e){var r=!t||Array.isArray(t)?t||[]:[t];return function(s,i,a){if(s.cookies)return a();var o=s.headers.cookie;if(s.secret=r[0],s.cookies=Object.create(null),s.signedCookies=Object.create(null),!o)return a();s.cookies=Xee.parse(o,e),r.length!==0&&(s.signedCookies=bD(s.cookies,r),s.signedCookies=d_(s.signedCookies)),s.cookies=d_(s.cookies),a()}}function vD(t){if(!(typeof t!="string"||t.substr(0,2)!=="j:"))try{return JSON.parse(t.slice(2))}catch{return}}function d_(t){for(var e=Object.keys(t),r,n,s=0;sm_,BACKUPS_DIR:()=>TD,CLAUDE_COMMANDS_DIR:()=>ate,CLAUDE_CONFIG_DIR:()=>to,CLAUDE_CREDENTIALS_PATH:()=>f_,CLAUDE_MD_PATH:()=>ote,CLAUDE_SETTINGS_PATH:()=>ite,DATA_DIR:()=>zr,DB_PATH:()=>eu,LOGS_DIR:()=>ED,MARKETPLACE_ROOT:()=>cte,MODES_DIR:()=>RD,PLUGINS_DIR:()=>$D,TRASH_DIR:()=>kD,USER_SETTINGS_PATH:()=>ar,VECTOR_DB_DIR:()=>ste,ensureAllDataDirs:()=>ute,ensureDir:()=>Rn,getCurrentProjectName:()=>pte,getPackageRoot:()=>ds,getProjectArchiveDir:()=>lte,getVersion:()=>Rm});function rte(){return typeof __dirname<"u"?__dirname:(0,lt.dirname)((0,SD.fileURLToPath)(dte.url))}function lte(t){return(0,lt.join)(m_,t)}function Rn(t){(0,eo.mkdirSync)(t,{recursive:!0})}function ute(){Rn(zr),Rn(m_),Rn(ED),Rn(kD),Rn(TD),Rn(RD)}function pte(){try{let t=(0,wD.execSync)("git rev-parse --show-toplevel",{cwd:process.cwd(),encoding:"utf8",stdio:["pipe","pipe","ignore"],windowsHide:!0}).trim();return(0,lt.basename)(t)}catch(t){return _.debug("SYSTEM","Git root detection failed, using cwd basename",{cwd:process.cwd()},t),(0,lt.basename)(process.cwd())}}function ds(){return(0,lt.join)(nte,"..")}function Rm(){if(Xl)return Xl;let t=ds(),e=[(0,lt.join)(t,"package.json"),(0,lt.join)(t,".claude-plugin","plugin.json"),(0,lt.join)(t,"..","package.json")];for(let r of e)try{if((0,eo.existsSync)(r)){let n=JSON.parse((0,eo.readFileSync)(r,"utf-8"));if(n.version)return Xl=n.version,n.version}}catch{}return Xl=`0.0.0-${Date.now()}`,Xl}var lt,_D,eo,wD,SD,dte,Xl,nte,zr,to,m_,ED,kD,TD,RD,ar,eu,ste,ite,ate,ote,f_,$D,cte,yr=xe(()=>{"use strict";lt=require("path"),_D=require("os"),eo=require("fs"),wD=require("child_process"),SD=require("url");Br();re();dte={},Xl=null;nte=rte(),zr=Me.get("CLAUDE_PILOT_DATA_DIR"),to=process.env.CLAUDE_CONFIG_DIR||(0,lt.join)((0,_D.homedir)(),".claude"),m_=(0,lt.join)(zr,"archives"),ED=(0,lt.join)(zr,"logs"),kD=(0,lt.join)(zr,"trash"),TD=(0,lt.join)(zr,"backups"),RD=(0,lt.join)(zr,"modes"),ar=(0,lt.join)(zr,"settings.json"),eu=(0,lt.join)(zr,"pilot-memory.db"),ste=(0,lt.join)(zr,"vector-db"),ite=(0,lt.join)(to,"settings.json"),ate=(0,lt.join)(to,"commands"),ote=(0,lt.join)(to,"CLAUDE.md"),f_=(0,lt.join)(to,".credentials.json"),$D=(0,lt.join)(to,"plugins"),cte=(0,lt.join)($D,"marketplaces","pilot")});var HD,Ws,Cm=xe(()=>{"use strict";HD=require("bun:sqlite");yr();re();Ws=class{db;constructor(e=eu){e!==":memory:"&&Rn(zr),this.db=new HD.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.ensureSessionPlansTable(),this.createProjectRootsTable()}initializeSchema(){this.db.run(` CREATE TABLE IF NOT EXISTS schema_versions ( id INTEGER PRIMARY KEY, version INTEGER UNIQUE NOT NULL, @@ -611,7 +611,7 @@ Please see the 3.x to 4.x migration guide for details on how to update your app. WHERE usage_count > 0 ORDER BY usage_count DESC LIMIT ? - `).all(e)}suggestTagsForObservation(e){let r=this.getObservationById(e);if(!r)return[];let n=[];if(r.concepts)try{let a=JSON.parse(r.concepts);n.push(...a)}catch{typeof r.concepts=="string"&&n.push(...r.concepts.split(",").map(a=>a.trim()))}r.type&&n.push(r.type);let s=this.getAllTags(),i=new Set(s.map(a=>a.name));return[...new Set(n.map(a=>a.toLowerCase().trim()))].filter(Boolean)}}});var ji={};Nn(ji,{PendingMessageStore:()=>Xl});var Xl,Zs=xe(()=>{"use strict";se();Xl=class{db;maxRetries;constructor(e,r=3){this.db=e,this.maxRetries=r}enqueue(e,r,n){let s=Date.now();return this.db.prepare(` + `).all(e)}suggestTagsForObservation(e){let r=this.getObservationById(e);if(!r)return[];let n=[];if(r.concepts)try{let a=JSON.parse(r.concepts);n.push(...a)}catch{typeof r.concepts=="string"&&n.push(...r.concepts.split(",").map(a=>a.trim()))}r.type&&n.push(r.type);let s=this.getAllTags(),i=new Set(s.map(a=>a.name));return[...new Set(n.map(a=>a.toLowerCase().trim()))].filter(Boolean)}}});var Di={};Nn(Di,{PendingMessageStore:()=>tu});var tu,Zs=xe(()=>{"use strict";re();tu=class{db;maxRetries;constructor(e,r=3){this.db=e,this.maxRetries=r}enqueue(e,r,n){let s=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, @@ -710,7 +710,7 @@ Please see the 3.x to 4.x migration guide for details on how to update your app. `).run(r,e).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 ZD={};Nn(ZD,{ModeManager:()=>Ue});var WD,Ue,sn=xe(()=>{"use strict";WD={name:"Code Development",description:"Software development and engineering work",version:"1.0.0",observation_types:[{id:"bugfix",label:"Bug Fix",description:"Something was broken, now fixed",emoji:"\u{1F534}",work_emoji:"\u{1F6E0}\uFE0F"},{id:"feature",label:"Feature",description:"New capability or functionality added",emoji:"\u{1F7E3}",work_emoji:"\u{1F6E0}\uFE0F"},{id:"refactor",label:"Refactor",description:"Code restructured, behavior unchanged",emoji:"\u{1F504}",work_emoji:"\u{1F6E0}\uFE0F"},{id:"change",label:"Change",description:"Generic modification (docs, config, misc)",emoji:"\u2705",work_emoji:"\u{1F6E0}\uFE0F"},{id:"discovery",label:"Discovery",description:"Learning about existing system",emoji:"\u{1F535}",work_emoji:"\u{1F50D}"},{id:"decision",label:"Decision",description:"Architectural/design choice with rationale",emoji:"\u2696\uFE0F",work_emoji:"\u2696\uFE0F"}],observation_concepts:[{id:"how-it-works",label:"How It Works",description:"Understanding mechanisms"},{id:"why-it-exists",label:"Why It Exists",description:"Purpose or rationale"},{id:"what-changed",label:"What Changed",description:"Modifications made"},{id:"problem-solution",label:"Problem-Solution",description:"Issues and their fixes"},{id:"gotcha",label:"Gotcha",description:"Traps or edge cases"},{id:"pattern",label:"Pattern",description:"Reusable approach"},{id:"trade-off",label:"Trade-Off",description:"Pros/cons of a decision"}],prompts:{system_identity:`[MEMORY] You are a specialized observer tool for creating searchable memory FOR FUTURE SESSIONS. + `).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 QD={};Nn(QD,{ModeManager:()=>Ue});var JD,Ue,sn=xe(()=>{"use strict";JD={name:"Code Development",description:"Software development and engineering work",version:"1.0.0",observation_types:[{id:"bugfix",label:"Bug Fix",description:"Something was broken, now fixed",emoji:"\u{1F534}",work_emoji:"\u{1F6E0}\uFE0F"},{id:"feature",label:"Feature",description:"New capability or functionality added",emoji:"\u{1F7E3}",work_emoji:"\u{1F6E0}\uFE0F"},{id:"refactor",label:"Refactor",description:"Code restructured, behavior unchanged",emoji:"\u{1F504}",work_emoji:"\u{1F6E0}\uFE0F"},{id:"change",label:"Change",description:"Generic modification (docs, config, misc)",emoji:"\u2705",work_emoji:"\u{1F6E0}\uFE0F"},{id:"discovery",label:"Discovery",description:"Learning about existing system",emoji:"\u{1F535}",work_emoji:"\u{1F50D}"},{id:"decision",label:"Decision",description:"Architectural/design choice with rationale",emoji:"\u2696\uFE0F",work_emoji:"\u2696\uFE0F"}],observation_concepts:[{id:"how-it-works",label:"How It Works",description:"Understanding mechanisms"},{id:"why-it-exists",label:"Why It Exists",description:"Purpose or rationale"},{id:"what-changed",label:"What Changed",description:"Modifications made"},{id:"problem-solution",label:"Problem-Solution",description:"Issues and their fixes"},{id:"gotcha",label:"Gotcha",description:"Traps or edge cases"},{id:"pattern",label:"Pattern",description:"Reusable approach"},{id:"trade-off",label:"Trade-Off",description:"Pros/cons of a decision"}],prompts:{system_identity:`[MEMORY] You are a specialized observer tool for creating searchable memory FOR FUTURE SESSIONS. CRITICAL: Record what was LEARNED/BUILT/FIXED/DEPLOYED/CONFIGURED, not what you (the observer) are doing. @@ -787,7 +787,7 @@ Remember that we record these observations as a way of helping us stay on track IMPORTANT! You MUST fill in ALL six fields (request, investigated, learned, completed, next_steps, notes) with actual content - never leave any field empty or use placeholder text. If a field doesn't apply, write a brief explanation why (e.g., "No investigation needed - straightforward implementation"). -Do not output anything other than the summary content formatted in the XML structure above.`}},Ue=class t{static instance=null;activeMode=null;constructor(){}static getInstance(){return t.instance||(t.instance=new t),t.instance}loadMode(){return this.activeMode=WD,WD}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 zm(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 br(t){return new Date(t).toLocaleString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0})}function ms(t){return new Date(t).toLocaleString("en-US",{month:"short",day:"numeric",year:"numeric"})}function YD(t,e){return w_.default.isAbsolute(t)?w_.default.relative(e,t):t}function $n(t,e,r){let n=zm(t);if(n.length>0)return YD(n[0],e);if(r){let s=zm(r);if(s.length>0)return YD(s[0],e)}return"General"}function io(t){return t?Math.ceil(t.length/4):0}function Di(t,e){let r=new Map;for(let s of t){let i=e(s),a=ms(i);r.has(a)||r.set(a,[]),r.get(a).push(s)}let n=Array.from(r.entries()).sort((s,i)=>{let a=new Date(s[0]).getTime(),o=new Date(i[0]).getTime();return a-o});return new Map(n)}var w_,ao=xe(()=>{"use strict";w_=pe(require("path"),1);se()});function XD(t){let e=Lm.default.join(t,".git"),r;try{r=(0,qm.statSync)(e)}catch{return tu}if(!r.isFile())return tu;let n;try{n=(0,qm.readFileSync)(e,"utf-8").trim()}catch{return tu}let s=n.match(/^gitdir:\s*(.+)$/);if(!s)return tu;let a=s[1].match(/^(.+)[/\\]\.git[/\\]worktrees[/\\]([^/\\]+)$/);if(!a)return tu;let o=a[1],c=Lm.default.basename(t),l=Lm.default.basename(o);return{isWorktree:!0,worktreeName:c,parentRepoPath:o,parentProjectName:l}}var qm,Lm,tu,eM=xe(()=>{"use strict";qm=require("fs"),Lm=pe(require("path"),1),tu={isWorktree:!1,worktreeName:null,parentRepoPath:null,parentProjectName:null}});function $te(t){return t.startsWith("~/")?Wt.default.join(S_.default.homedir(),t.slice(2)):t==="~"?S_.default.homedir():t}function fs(t){if(!t||t.trim()==="")return _.warn("PROJECT_NAME","Empty cwd provided, using fallback",{cwd:t}),"unknown-project";let e=Wt.default.basename(t);if(e===""){if(process.platform==="win32"){let n=t.match(/^([A-Z]):\\/i);if(n){let i=`drive-${n[1].toUpperCase()}`;return _.info("PROJECT_NAME","Drive root detected",{cwd:t,projectName:i}),i}}return _.warn("PROJECT_NAME","Root directory detected, using fallback",{cwd:t}),"unknown-project"}return e}function tM(t){let e=fs(t);if(!t)return{primary:e,parent:null,isWorktree:!1,allProjects:[e]};let r=XD(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]}}function Ote(t,e){if(!t||t.trim()==="")return null;let r=$te(t);if(!Wt.default.isAbsolute(r))if(e)r=Wt.default.resolve(e,r);else return _.debug("PROJECT_NAME","Skipping relative path without basePath",{filePath:t}),null;let n=Wt.default.normalize(r),s=Pte(n);if(s)return s;let i=Cte(n);return i||Ite(n)}function Pte(t){try{let e;try{e=Fm.default.statSync(t).isDirectory()?t:Wt.default.dirname(t)}catch{e=Wt.default.dirname(t)}let r=Wt.default.parse(e).root,n=0,s=20;for(;e!==r&&n=s&&!o.includes(a.toLowerCase()))return a;e=Wt.default.dirname(e),n++}return null}catch{return null}}function rM(t,e,r){if(!t||t.length===0)return e;let n=new Map;for(let a of t){let o=Ote(a,r);o&&n.set(o,(n.get(o)||0)+1)}if(n.size===0)return e;let s=0,i=e;for(let[a,o]of n)o>s&&(s=o,i=a);return i!==e&&_.debug("PROJECT_NAME","Detected project from files differs from session",{detectedProject:i,sessionProject:e,fileCount:t.length}),i}var Wt,Fm,S_,Rte,Mi=xe(()=>{"use strict";Wt=pe(require("path"),1),Fm=pe(require("fs"),1),S_=pe(require("os"),1);se();eM();Rte=["repos","projects","code","work","src","dev","git","workspace","workspaces"]});function _0(){let t=K2.default.join((0,J2.homedir)(),".pilot/memory","settings.json"),e=De.loadFromFile(t),r=new Set(e.CLAUDE_PILOT_CONTEXT_OBSERVATION_TYPES.split(",").map(s=>s.trim()).filter(Boolean)),n=new Set(e.CLAUDE_PILOT_CONTEXT_OBSERVATION_CONCEPTS.split(",").map(s=>s.trim()).filter(Boolean));return{totalObservationCount:parseInt(e.CLAUDE_PILOT_CONTEXT_OBSERVATIONS,10),fullObservationCount:parseInt(e.CLAUDE_PILOT_CONTEXT_FULL_COUNT,10),sessionCount:parseInt(e.CLAUDE_PILOT_CONTEXT_SESSION_COUNT,10),showReadTokens:e.CLAUDE_PILOT_CONTEXT_SHOW_READ_TOKENS,showWorkTokens:e.CLAUDE_PILOT_CONTEXT_SHOW_WORK_TOKENS,showSavingsAmount:e.CLAUDE_PILOT_CONTEXT_SHOW_SAVINGS_AMOUNT,showSavingsPercent:e.CLAUDE_PILOT_CONTEXT_SHOW_SAVINGS_PERCENT,observationTypes:r,observationConcepts:n,fullObservationField:e.CLAUDE_PILOT_CONTEXT_FULL_FIELD,showLastSummary:e.CLAUDE_PILOT_CONTEXT_SHOW_LAST_SUMMARY,showLastMessage:e.CLAUDE_PILOT_CONTEXT_SHOW_LAST_MESSAGE}}var K2,J2,w0=xe(()=>{"use strict";K2=pe(require("path"),1),J2=require("os");Br()});var J,Q2,Pu,Cu=xe(()=>{"use strict";J={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"},Q2=4,Pu=1});function S0(t){let e=(t.title?.length||0)+(t.subtitle?.length||0)+(t.narrative?.length||0)+JSON.stringify(t.facts||[]).length;return Math.ceil(e/Q2)}function E0(t){let e=t.length,r=t.reduce((a,o)=>a+S0(o),0),n=t.reduce((a,o)=>a+(o.discovery_tokens||0),0),s=n-r,i=n>0?Math.round(s/n*100):0;return{totalObservations:e,totalReadTokens:r,totalDiscoveryTokens:n,savings:s,savingsPercent:i}}function cpe(t){return Ue.getInstance().getWorkEmoji(t)}function No(t,e){let r=S0(t),n=t.discovery_tokens||0,s=cpe(t.type),i=n>0?`${s} ${n.toLocaleString()}`:"-";return{readTokens:r,discoveryTokens:n,discoveryDisplay:i,workEmoji:s}}function If(t){return t.showReadTokens||t.showWorkTokens||t.showSavingsAmount||t.showSavingsPercent}var Wi=xe(()=>{"use strict";Cu();sn()});function k0(t,e,r){let n=Array.from(r.observationTypes),s=n.map(()=>"?").join(","),i=Array.from(r.observationConcepts),a=i.map(()=>"?").join(",");return t.db.prepare(` +Do not output anything other than the summary content formatted in the XML structure above.`}},Ue=class t{static instance=null;activeMode=null;constructor(){}static getInstance(){return t.instance||(t.instance=new t),t.instance}loadMode(){return this.activeMode=JD,JD}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 qm(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 br(t){return new Date(t).toLocaleString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0})}function ms(t){return new Date(t).toLocaleString("en-US",{month:"short",day:"numeric",year:"numeric"})}function tM(t,e){return T_.default.isAbsolute(t)?T_.default.relative(e,t):t}function $n(t,e,r){let n=qm(t);if(n.length>0)return tM(n[0],e);if(r){let s=qm(r);if(s.length>0)return tM(s[0],e)}return"General"}function ao(t){return t?Math.ceil(t.length/4):0}function Mi(t,e){let r=new Map;for(let s of t){let i=e(s),a=ms(i);r.has(a)||r.set(a,[]),r.get(a).push(s)}let n=Array.from(r.entries()).sort((s,i)=>{let a=new Date(s[0]).getTime(),o=new Date(i[0]).getTime();return a-o});return new Map(n)}var T_,oo=xe(()=>{"use strict";T_=ie(require("path"),1);re()});function iM(t){let e=Fm.default.join(t,".git"),r;try{r=(0,Um.statSync)(e)}catch{return nu}if(!r.isFile())return nu;let n;try{n=(0,Um.readFileSync)(e,"utf-8").trim()}catch{return nu}let s=n.match(/^gitdir:\s*(.+)$/);if(!s)return nu;let a=s[1].match(/^(.+)[/\\]\.git[/\\]worktrees[/\\]([^/\\]+)$/);if(!a)return nu;let o=a[1],c=Fm.default.basename(t),l=Fm.default.basename(o);return{isWorktree:!0,worktreeName:c,parentRepoPath:o,parentProjectName:l}}var Um,Fm,nu,aM=xe(()=>{"use strict";Um=require("fs"),Fm=ie(require("path"),1),nu={isWorktree:!1,worktreeName:null,parentRepoPath:null,parentProjectName:null}});function jte(t){return t.startsWith("~/")?Wt.default.join(R_.default.homedir(),t.slice(2)):t==="~"?R_.default.homedir():t}function fs(t){if(!t||t.trim()==="")return _.warn("PROJECT_NAME","Empty cwd provided, using fallback",{cwd:t}),"unknown-project";let e=Wt.default.basename(t);if(e===""){if(process.platform==="win32"){let n=t.match(/^([A-Z]):\\/i);if(n){let i=`drive-${n[1].toUpperCase()}`;return _.info("PROJECT_NAME","Drive root detected",{cwd:t,projectName:i}),i}}return _.warn("PROJECT_NAME","Root directory detected, using fallback",{cwd:t}),"unknown-project"}return e}function oM(t){let e=fs(t);if(!t)return{primary:e,parent:null,isWorktree:!1,allProjects:[e]};let r=iM(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]}}function Dte(t,e){if(!t||t.trim()==="")return null;let r=jte(t);if(!Wt.default.isAbsolute(r))if(e)r=Wt.default.resolve(e,r);else return _.debug("PROJECT_NAME","Skipping relative path without basePath",{filePath:t}),null;let n=Wt.default.normalize(r),s=Mte(n);if(s)return s;let i=zte(n);return i||Lte(n)}function Mte(t){try{let e;try{e=Hm.default.statSync(t).isDirectory()?t:Wt.default.dirname(t)}catch{e=Wt.default.dirname(t)}let r=Wt.default.parse(e).root,n=0,s=20;for(;e!==r&&n=s&&!o.includes(a.toLowerCase()))return a;e=Wt.default.dirname(e),n++}return null}catch{return null}}function cM(t,e,r){if(!t||t.length===0)return e;let n=new Map;for(let a of t){let o=Dte(a,r);o&&n.set(o,(n.get(o)||0)+1)}if(n.size===0)return e;let s=0,i=e;for(let[a,o]of n)o>s&&(s=o,i=a);return i!==e&&_.debug("PROJECT_NAME","Detected project from files differs from session",{detectedProject:i,sessionProject:e,fileCount:t.length}),i}var Wt,Hm,R_,Nte,zi=xe(()=>{"use strict";Wt=ie(require("path"),1),Hm=ie(require("fs"),1),R_=ie(require("os"),1);re();aM();Nte=["repos","projects","code","work","src","dev","git","workspace","workspaces"]});function k0(){let t=r4.default.join((0,n4.homedir)(),".pilot/memory","settings.json"),e=Me.loadFromFile(t),r=new Set(e.CLAUDE_PILOT_CONTEXT_OBSERVATION_TYPES.split(",").map(s=>s.trim()).filter(Boolean)),n=new Set(e.CLAUDE_PILOT_CONTEXT_OBSERVATION_CONCEPTS.split(",").map(s=>s.trim()).filter(Boolean));return{totalObservationCount:parseInt(e.CLAUDE_PILOT_CONTEXT_OBSERVATIONS,10),fullObservationCount:parseInt(e.CLAUDE_PILOT_CONTEXT_FULL_COUNT,10),sessionCount:parseInt(e.CLAUDE_PILOT_CONTEXT_SESSION_COUNT,10),showReadTokens:e.CLAUDE_PILOT_CONTEXT_SHOW_READ_TOKENS,showWorkTokens:e.CLAUDE_PILOT_CONTEXT_SHOW_WORK_TOKENS,showSavingsAmount:e.CLAUDE_PILOT_CONTEXT_SHOW_SAVINGS_AMOUNT,showSavingsPercent:e.CLAUDE_PILOT_CONTEXT_SHOW_SAVINGS_PERCENT,observationTypes:r,observationConcepts:n,fullObservationField:e.CLAUDE_PILOT_CONTEXT_FULL_FIELD,showLastSummary:e.CLAUDE_PILOT_CONTEXT_SHOW_LAST_SUMMARY,showLastMessage:e.CLAUDE_PILOT_CONTEXT_SHOW_LAST_MESSAGE}}var r4,n4,T0=xe(()=>{"use strict";r4=ie(require("path"),1),n4=require("os");Br()});var J,s4,Iu,Au=xe(()=>{"use strict";J={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"},s4=4,Iu=1});function R0(t){let e=(t.title?.length||0)+(t.subtitle?.length||0)+(t.narrative?.length||0)+JSON.stringify(t.facts||[]).length;return Math.ceil(e/s4)}function $0(t){let e=t.length,r=t.reduce((a,o)=>a+R0(o),0),n=t.reduce((a,o)=>a+(o.discovery_tokens||0),0),s=n-r,i=n>0?Math.round(s/n*100):0;return{totalObservations:e,totalReadTokens:r,totalDiscoveryTokens:n,savings:s,savingsPercent:i}}function hpe(t){return Ue.getInstance().getWorkEmoji(t)}function jo(t,e){let r=R0(t),n=t.discovery_tokens||0,s=hpe(t.type),i=n>0?`${s} ${n.toLocaleString()}`:"-";return{readTokens:r,discoveryTokens:n,discoveryDisplay:i,workEmoji:s}}function Nf(t){return t.showReadTokens||t.showWorkTokens||t.showSavingsAmount||t.showSavingsPercent}var Zi=xe(()=>{"use strict";Au();sn()});function O0(t,e,r){let n=Array.from(r.observationTypes),s=n.map(()=>"?").join(","),i=Array.from(r.observationConcepts),a=i.map(()=>"?").join(",");return t.db.prepare(` SELECT id, memory_session_id, type, title, subtitle, narrative, facts, concepts, files_read, files_modified, discovery_tokens, @@ -801,13 +801,13 @@ Do not output anything other than the summary content formatted in the XML struc ) ORDER BY created_at_epoch DESC LIMIT ? - `).all(e,...n,...i,r.totalObservationCount)}function T0(t,e,r){return t.db.prepare(` + `).all(e,...n,...i,r.totalObservationCount)}function P0(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+Pu)}function t4(t,e,r){let n=Array.from(r.observationTypes),s=n.map(()=>"?").join(","),i=Array.from(r.observationConcepts),a=i.map(()=>"?").join(","),o=e.map(()=>"?").join(",");return t.db.prepare(` + `).all(e,r.sessionCount+Iu)}function o4(t,e,r){let n=Array.from(r.observationTypes),s=n.map(()=>"?").join(","),i=Array.from(r.observationConcepts),a=i.map(()=>"?").join(","),o=e.map(()=>"?").join(",");return t.db.prepare(` SELECT id, memory_session_id, type, title, subtitle, narrative, facts, concepts, files_read, files_modified, discovery_tokens, @@ -821,13 +821,13 @@ Do not output anything other than the summary content formatted in the XML struc ) ORDER BY created_at_epoch DESC LIMIT ? - `).all(...e,...n,...i,r.totalObservationCount)}function r4(t,e,r){let n=e.map(()=>"?").join(",");return t.db.prepare(` + `).all(...e,...n,...i,r.totalObservationCount)}function c4(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 LIMIT ? - `).all(...e,r.sessionCount+Pu)}function n4(t,e,r,n){let s=Array.from(r.observationTypes),i=s.map(()=>"?").join(","),a=Array.from(r.observationConcepts),o=a.map(()=>"?").join(",");return t.db.prepare(` + `).all(...e,r.sessionCount+Iu)}function l4(t,e,r,n){let s=Array.from(r.observationTypes),i=s.map(()=>"?").join(","),a=Array.from(r.observationConcepts),o=a.map(()=>"?").join(",");return t.db.prepare(` SELECT o.id, o.memory_session_id, o.type, o.title, o.subtitle, o.narrative, o.facts, o.concepts, o.files_read, o.files_modified, o.discovery_tokens, @@ -844,7 +844,7 @@ Do not output anything other than the summary content formatted in the XML struc AND (sp.plan_path IS NULL OR sp.plan_path = ?) ORDER BY o.created_at_epoch DESC LIMIT ? - `).all(e,...s,...a,n,r.totalObservationCount)}function s4(t,e,r,n){return t.db.prepare(` + `).all(e,...s,...a,n,r.totalObservationCount)}function u4(t,e,r,n){return t.db.prepare(` SELECT ss.id, ss.memory_session_id, ss.request, ss.investigated, ss.learned, ss.completed, ss.next_steps, ss.created_at, ss.created_at_epoch FROM session_summaries ss @@ -854,7 +854,7 @@ Do not output anything other than the summary content formatted in the XML struc AND (sp.plan_path IS NULL OR sp.plan_path = ?) ORDER BY ss.created_at_epoch DESC LIMIT ? - `).all(e,n,r.sessionCount+Pu)}function i4(t,e,r,n){let s=Array.from(r.observationTypes),i=s.map(()=>"?").join(","),a=Array.from(r.observationConcepts),o=a.map(()=>"?").join(","),c=e.map(()=>"?").join(",");return t.db.prepare(` + `).all(e,n,r.sessionCount+Iu)}function p4(t,e,r,n){let s=Array.from(r.observationTypes),i=s.map(()=>"?").join(","),a=Array.from(r.observationConcepts),o=a.map(()=>"?").join(","),c=e.map(()=>"?").join(",");return t.db.prepare(` SELECT o.id, o.memory_session_id, o.type, o.title, o.subtitle, o.narrative, o.facts, o.concepts, o.files_read, o.files_modified, o.discovery_tokens, @@ -871,7 +871,7 @@ Do not output anything other than the summary content formatted in the XML struc AND (sp.plan_path IS NULL OR sp.plan_path = ?) ORDER BY o.created_at_epoch DESC LIMIT ? - `).all(...e,...s,...a,n,r.totalObservationCount)}function a4(t,e,r,n){let s=e.map(()=>"?").join(",");return t.db.prepare(` + `).all(...e,...s,...a,n,r.totalObservationCount)}function d4(t,e,r,n){let s=e.map(()=>"?").join(",");return t.db.prepare(` SELECT ss.id, ss.memory_session_id, ss.request, ss.investigated, ss.learned, ss.completed, ss.next_steps, ss.created_at, ss.created_at_epoch, ss.project FROM session_summaries ss @@ -881,21 +881,21 @@ Do not output anything other than the summary content formatted in the XML struc AND (sp.plan_path IS NULL OR sp.plan_path = ?) ORDER BY ss.created_at_epoch DESC LIMIT ? - `).all(...e,n,r.sessionCount+Pu)}function lpe(t){return t.replace(new RegExp("/","g"),"-")}function upe(t){try{if(!(0,Af.existsSync)(t))return{userMessage:"",assistantMessage:""};let e=(0,Af.readFileSync)(t,"utf-8").trim();if(!e)return{userMessage:"",assistantMessage:""};let r=e.split(` -`).filter(s=>s.trim()),n="";for(let s=r.length-1;s>=0;s--)try{let i=r[s];if(!i.includes('"type":"assistant"'))continue;let a=JSON.parse(i);if(a.type==="assistant"&&a.message?.content&&Array.isArray(a.message.content)){let o="";for(let c of a.message.content)c.type==="text"&&(o+=c.text);if(o=o.replace(/[\s\S]*?<\/system-reminder>/g,"").trim(),o){n=o;break}}}catch(i){_.debug("PARSER","Skipping malformed transcript line",{lineIndex:s},i);continue}return{userMessage:"",assistantMessage:n}}catch(e){return _.failure("WORKER","Failed to extract prior messages from transcript",{transcriptPath:t},e),{userMessage:"",assistantMessage:""}}}function R0(t,e,r,n){if(!e.showLastMessage||t.length===0)return{userMessage:"",assistantMessage:""};let s=t.find(c=>c.memory_session_id!==r);if(!s)return{userMessage:"",assistantMessage:""};let i=s.memory_session_id,a=lpe(n),o=X2.default.join((0,e4.homedir)(),".claude","projects",a,`${i}.jsonl`);return upe(o)}function o4(t,e){let r=e[0]?.id;return t.map((n,s)=>{let i=s===0?null:e[s+1];return{...n,displayEpoch:i?i.created_at_epoch:n.created_at_epoch,displayTime:i?i.created_at:n.created_at,shouldShowLink:n.id!==r}})}function $0(t,e){let r=[...t.map(n=>({type:"observation",data:n})),...e.map(n=>({type:"summary",data:n}))];return r.sort((n,s)=>{let i=n.type==="observation"?n.data.created_at_epoch:n.data.displayEpoch,a=s.type==="observation"?s.data.created_at_epoch:s.data.displayEpoch;return i-a}),r}function c4(t,e){return new Set(t.slice(0,e).map(r=>r.id))}var X2,e4,Af,O0=xe(()=>{"use strict";X2=pe(require("path"),1),e4=require("os"),Af=require("fs");se();Cu()});function l4(){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 u4(t){return[`# [${t}] recent context, ${l4()}`,""]}function p4(){return[`**Legend:** session-request | ${Ue.getInstance().getActiveMode().observation_types.map(r=>`${r.emoji} ${r.id}`).join(" | ")}`,""]}function d4(){return["**Column Key**:","- **Read**: Tokens to read this observation (cost to learn it now)","- **Work**: Tokens spent on work that produced this record ( research, building, deciding)",""]}function m4(){return["**Context Index:** This semantic index (titles, types, files, tokens) is usually sufficient to understand past work.","","When you need implementation details, rationale, or debugging context:","- Use MCP tools (search, get_observations) to fetch full observations on-demand","- Critical types ( bugfix, decision) often need detailed fetching","- Trust this index over re-reading code for past decisions and learnings",""]}function f4(t,e){let r=[];if(r.push("**Context Economics**:"),r.push(`- Loading: ${t.totalObservations} observations (${t.totalReadTokens.toLocaleString()} tokens to read)`),r.push(`- Work investment: ${t.totalDiscoveryTokens.toLocaleString()} tokens spent on research, building, and decisions`),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(n)}return r.push(""),r}function h4(t){return[`### ${t}`,""]}function g4(t){return[`**${t}**`,"| ID | Time | T | Title | Read | Work |","|----|------|---|-------|------|------|"]}function v4(t,e,r){let n=t.title||"Untitled",s=Ue.getInstance().getTypeIcon(t.type),{readTokens:i,discoveryDisplay:a}=No(t,r),o=r.showReadTokens?`~${i}`:"",c=r.showWorkTokens?a:"";return`| #${t.id} | ${e||'"'} | ${s} | ${n} | ${o} | ${c} |`}function y4(t,e,r,n){let s=[],i=t.title||"Untitled",a=Ue.getInstance().getTypeIcon(t.type),{readTokens:o,discoveryDisplay:c}=No(t,n);s.push(`**#${t.id}** ${e||'"'} ${a} **${i}**`),r&&(s.push(""),s.push(r),s.push(""));let l=[];return n.showReadTokens&&l.push(`Read: ~${o}`),n.showWorkTokens&&l.push(`Work: ${c}`),l.length>0&&s.push(l.join(", ")),s.push(""),s}function b4(t,e){let r=`${t.request||"Session started"} (${e})`;return[`**#S${t.id}** ${r}`,""]}function Iu(t,e){return e?[`**${t}**: ${e}`,""]:[]}function x4(t){return t.assistantMessage?["","---","","**Previously**","",`A: ${t.assistantMessage}`,""]:[]}function _4(t,e){return["",`Access ${Math.round(t/1e3)}k tokens of past research & decisions for just ${e.toLocaleString()}t. Use MCP search tools to access memories by ID.`]}function w4(t){return`# [${t}] recent context, ${l4()} + `).all(...e,n,r.sessionCount+Iu)}function gpe(t){return t.replace(new RegExp("/","g"),"-")}function vpe(t){try{if(!(0,jf.existsSync)(t))return{userMessage:"",assistantMessage:""};let e=(0,jf.readFileSync)(t,"utf-8").trim();if(!e)return{userMessage:"",assistantMessage:""};let r=e.split(` +`).filter(s=>s.trim()),n="";for(let s=r.length-1;s>=0;s--)try{let i=r[s];if(!i.includes('"type":"assistant"'))continue;let a=JSON.parse(i);if(a.type==="assistant"&&a.message?.content&&Array.isArray(a.message.content)){let o="";for(let c of a.message.content)c.type==="text"&&(o+=c.text);if(o=o.replace(/[\s\S]*?<\/system-reminder>/g,"").trim(),o){n=o;break}}}catch(i){_.debug("PARSER","Skipping malformed transcript line",{lineIndex:s},i);continue}return{userMessage:"",assistantMessage:n}}catch(e){return _.failure("WORKER","Failed to extract prior messages from transcript",{transcriptPath:t},e),{userMessage:"",assistantMessage:""}}}function C0(t,e,r,n){if(!e.showLastMessage||t.length===0)return{userMessage:"",assistantMessage:""};let s=t.find(c=>c.memory_session_id!==r);if(!s)return{userMessage:"",assistantMessage:""};let i=s.memory_session_id,a=gpe(n),o=i4.default.join((0,a4.homedir)(),".claude","projects",a,`${i}.jsonl`);return vpe(o)}function m4(t,e){let r=e[0]?.id;return t.map((n,s)=>{let i=s===0?null:e[s+1];return{...n,displayEpoch:i?i.created_at_epoch:n.created_at_epoch,displayTime:i?i.created_at:n.created_at,shouldShowLink:n.id!==r}})}function I0(t,e){let r=[...t.map(n=>({type:"observation",data:n})),...e.map(n=>({type:"summary",data:n}))];return r.sort((n,s)=>{let i=n.type==="observation"?n.data.created_at_epoch:n.data.displayEpoch,a=s.type==="observation"?s.data.created_at_epoch:s.data.displayEpoch;return i-a}),r}function f4(t,e){return new Set(t.slice(0,e).map(r=>r.id))}var i4,a4,jf,A0=xe(()=>{"use strict";i4=ie(require("path"),1),a4=require("os"),jf=require("fs");re();Au()});function h4(){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 g4(t){return[`# [${t}] recent context, ${h4()}`,""]}function v4(){return[`**Legend:** session-request | ${Ue.getInstance().getActiveMode().observation_types.map(r=>`${r.emoji} ${r.id}`).join(" | ")}`,""]}function y4(){return["**Column Key**:","- **Read**: Tokens to read this observation (cost to learn it now)","- **Work**: Tokens spent on work that produced this record ( research, building, deciding)",""]}function b4(){return["**Context Index:** This semantic index (titles, types, files, tokens) is usually sufficient to understand past work.","","When you need implementation details, rationale, or debugging context:","- Use MCP tools (search, get_observations) to fetch full observations on-demand","- Critical types ( bugfix, decision) often need detailed fetching","- Trust this index over re-reading code for past decisions and learnings",""]}function x4(t,e){let r=[];if(r.push("**Context Economics**:"),r.push(`- Loading: ${t.totalObservations} observations (${t.totalReadTokens.toLocaleString()} tokens to read)`),r.push(`- Work investment: ${t.totalDiscoveryTokens.toLocaleString()} tokens spent on research, building, and decisions`),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(n)}return r.push(""),r}function _4(t){return[`### ${t}`,""]}function w4(t){return[`**${t}**`,"| ID | Time | T | Title | Read | Work |","|----|------|---|-------|------|------|"]}function S4(t,e,r){let n=t.title||"Untitled",s=Ue.getInstance().getTypeIcon(t.type),{readTokens:i,discoveryDisplay:a}=jo(t,r),o=r.showReadTokens?`~${i}`:"",c=r.showWorkTokens?a:"";return`| #${t.id} | ${e||'"'} | ${s} | ${n} | ${o} | ${c} |`}function E4(t,e,r,n){let s=[],i=t.title||"Untitled",a=Ue.getInstance().getTypeIcon(t.type),{readTokens:o,discoveryDisplay:c}=jo(t,n);s.push(`**#${t.id}** ${e||'"'} ${a} **${i}**`),r&&(s.push(""),s.push(r),s.push(""));let l=[];return n.showReadTokens&&l.push(`Read: ~${o}`),n.showWorkTokens&&l.push(`Work: ${c}`),l.length>0&&s.push(l.join(", ")),s.push(""),s}function k4(t,e){let r=`${t.request||"Session started"} (${e})`;return[`**#S${t.id}** ${r}`,""]}function Nu(t,e){return e?[`**${t}**: ${e}`,""]:[]}function T4(t){return t.assistantMessage?["","---","","**Previously**","",`A: ${t.assistantMessage}`,""]:[]}function R4(t,e){return["",`Access ${Math.round(t/1e3)}k tokens of past research & decisions for just ${e.toLocaleString()}t. Use MCP search tools to access memories by ID.`]}function $4(t){return`# [${t}] recent context, ${h4()} -No previous sessions found for this project yet.`}var jo=xe(()=>{"use strict";sn();Wi()});function S4(){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 E4(t){return["",`${J.bright}${J.cyan}[${t}] recent context, ${S4()}${J.reset}`,`${J.gray}${"\u2500".repeat(60)}${J.reset}`,""]}function k4(){let e=Ue.getInstance().getActiveMode().observation_types.map(r=>`${r.emoji} ${r.id}`).join(" | ");return[`${J.dim}Legend: session-request | ${e}${J.reset}`,""]}function T4(){return[`${J.bright}Column Key${J.reset}`,`${J.dim} Read: Tokens to read this observation (cost to learn it now)${J.reset}`,`${J.dim} Work: Tokens spent on work that produced this record ( research, building, deciding)${J.reset}`,""]}function R4(){return[`${J.dim}Context Index: This semantic index (titles, types, files, tokens) is usually sufficient to understand past work.${J.reset}`,"",`${J.dim}When you need implementation details, rationale, or debugging context:${J.reset}`,`${J.dim} - Use MCP tools (search, get_observations) to fetch full observations on-demand${J.reset}`,`${J.dim} - Critical types ( bugfix, decision) often need detailed fetching${J.reset}`,`${J.dim} - Trust this index over re-reading code for past decisions and learnings${J.reset}`,""]}function $4(t,e){let r=[];if(r.push(`${J.bright}${J.cyan}Context Economics${J.reset}`),r.push(`${J.dim} Loading: ${t.totalObservations} observations (${t.totalReadTokens.toLocaleString()} tokens to read)${J.reset}`),r.push(`${J.dim} Work investment: ${t.totalDiscoveryTokens.toLocaleString()} tokens spent on research, building, and decisions${J.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(`${J.green}${n}${J.reset}`)}return r.push(""),r}function O4(t){return[`${J.bright}${J.cyan}${t}${J.reset}`,""]}function P4(t){return[`${J.dim}${t}${J.reset}`]}function C4(t,e,r,n){let s=t.title||"Untitled",i=Ue.getInstance().getTypeIcon(t.type),{readTokens:a,discoveryTokens:o,workEmoji:c}=No(t,n),l=r?`${J.dim}${e}${J.reset}`:" ".repeat(e.length),u=n.showReadTokens&&a>0?`${J.dim}(~${a}t)${J.reset}`:"",p=n.showWorkTokens&&o>0?`${J.dim}(${c} ${o.toLocaleString()}t)${J.reset}`:"";return` ${J.dim}#${t.id}${J.reset} ${l} ${i} ${s} ${u} ${p}`}function I4(t,e,r,n,s){let i=[],a=t.title||"Untitled",o=Ue.getInstance().getTypeIcon(t.type),{readTokens:c,discoveryTokens:l,workEmoji:u}=No(t,s),p=r?`${J.dim}${e}${J.reset}`:" ".repeat(e.length),d=s.showReadTokens&&c>0?`${J.dim}(~${c}t)${J.reset}`:"",m=s.showWorkTokens&&l>0?`${J.dim}(${u} ${l.toLocaleString()}t)${J.reset}`:"";return i.push(` ${J.dim}#${t.id}${J.reset} ${p} ${o} ${J.bright}${a}${J.reset}`),n&&i.push(` ${J.dim}${n}${J.reset}`),(d||m)&&i.push(` ${d} ${m}`),i.push(""),i}function A4(t,e){let r=`${t.request||"Session started"} (${e})`;return[`${J.yellow}#S${t.id}${J.reset} ${r}`,""]}function Au(t,e,r){return e?[`${r}${t}:${J.reset} ${e}`,""]:[]}function N4(t){return t.assistantMessage?["","---","",`${J.bright}${J.magenta}Previously${J.reset}`,"",`${J.dim}A: ${t.assistantMessage}${J.reset}`,""]:[]}function j4(t,e){let r=Math.round(t/1e3);return["",`${J.dim}Access ${r}k tokens of past research & decisions for just ${e.toLocaleString()}t. Use MCP search tools to access memories by ID.${J.reset}`]}function D4(t){return` -${J.bright}${J.cyan}[${t}] recent context, ${S4()}${J.reset} +No previous sessions found for this project yet.`}var Do=xe(()=>{"use strict";sn();Zi()});function O4(){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 P4(t){return["",`${J.bright}${J.cyan}[${t}] recent context, ${O4()}${J.reset}`,`${J.gray}${"\u2500".repeat(60)}${J.reset}`,""]}function C4(){let e=Ue.getInstance().getActiveMode().observation_types.map(r=>`${r.emoji} ${r.id}`).join(" | ");return[`${J.dim}Legend: session-request | ${e}${J.reset}`,""]}function I4(){return[`${J.bright}Column Key${J.reset}`,`${J.dim} Read: Tokens to read this observation (cost to learn it now)${J.reset}`,`${J.dim} Work: Tokens spent on work that produced this record ( research, building, deciding)${J.reset}`,""]}function A4(){return[`${J.dim}Context Index: This semantic index (titles, types, files, tokens) is usually sufficient to understand past work.${J.reset}`,"",`${J.dim}When you need implementation details, rationale, or debugging context:${J.reset}`,`${J.dim} - Use MCP tools (search, get_observations) to fetch full observations on-demand${J.reset}`,`${J.dim} - Critical types ( bugfix, decision) often need detailed fetching${J.reset}`,`${J.dim} - Trust this index over re-reading code for past decisions and learnings${J.reset}`,""]}function N4(t,e){let r=[];if(r.push(`${J.bright}${J.cyan}Context Economics${J.reset}`),r.push(`${J.dim} Loading: ${t.totalObservations} observations (${t.totalReadTokens.toLocaleString()} tokens to read)${J.reset}`),r.push(`${J.dim} Work investment: ${t.totalDiscoveryTokens.toLocaleString()} tokens spent on research, building, and decisions${J.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(`${J.green}${n}${J.reset}`)}return r.push(""),r}function j4(t){return[`${J.bright}${J.cyan}${t}${J.reset}`,""]}function D4(t){return[`${J.dim}${t}${J.reset}`]}function M4(t,e,r,n){let s=t.title||"Untitled",i=Ue.getInstance().getTypeIcon(t.type),{readTokens:a,discoveryTokens:o,workEmoji:c}=jo(t,n),l=r?`${J.dim}${e}${J.reset}`:" ".repeat(e.length),u=n.showReadTokens&&a>0?`${J.dim}(~${a}t)${J.reset}`:"",p=n.showWorkTokens&&o>0?`${J.dim}(${c} ${o.toLocaleString()}t)${J.reset}`:"";return` ${J.dim}#${t.id}${J.reset} ${l} ${i} ${s} ${u} ${p}`}function z4(t,e,r,n,s){let i=[],a=t.title||"Untitled",o=Ue.getInstance().getTypeIcon(t.type),{readTokens:c,discoveryTokens:l,workEmoji:u}=jo(t,s),p=r?`${J.dim}${e}${J.reset}`:" ".repeat(e.length),d=s.showReadTokens&&c>0?`${J.dim}(~${c}t)${J.reset}`:"",m=s.showWorkTokens&&l>0?`${J.dim}(${u} ${l.toLocaleString()}t)${J.reset}`:"";return i.push(` ${J.dim}#${t.id}${J.reset} ${p} ${o} ${J.bright}${a}${J.reset}`),n&&i.push(` ${J.dim}${n}${J.reset}`),(d||m)&&i.push(` ${d} ${m}`),i.push(""),i}function L4(t,e){let r=`${t.request||"Session started"} (${e})`;return[`${J.yellow}#S${t.id}${J.reset} ${r}`,""]}function ju(t,e,r){return e?[`${r}${t}:${J.reset} ${e}`,""]:[]}function q4(t){return t.assistantMessage?["","---","",`${J.bright}${J.magenta}Previously${J.reset}`,"",`${J.dim}A: ${t.assistantMessage}${J.reset}`,""]:[]}function F4(t,e){let r=Math.round(t/1e3);return["",`${J.dim}Access ${r}k tokens of past research & decisions for just ${e.toLocaleString()}t. Use MCP search tools to access memories by ID.${J.reset}`]}function U4(t){return` +${J.bright}${J.cyan}[${t}] recent context, ${O4()}${J.reset} ${J.gray}${"\u2500".repeat(60)}${J.reset} ${J.dim}No previous sessions found for this project yet.${J.reset} -`}var Do=xe(()=>{"use strict";Cu();sn();Wi()});function M4(t,e,r,n){let s=[];return n?s.push(...E4(t)):s.push(...u4(t)),n?s.push(...k4()):s.push(...p4()),n?s.push(...T4()):s.push(...d4()),n?s.push(...R4()):s.push(...m4()),If(r)&&(n?s.push(...$4(e,r)):s.push(...f4(e,r))),s}var z4=xe(()=>{"use strict";Wi();jo();Do()});function ppe(t){let e=new Map;for(let n of t){let s=n.type==="observation"?n.data.created_at:n.data.displayTime,i=ms(s);e.has(i)||e.set(i,[]),e.get(i).push(n)}let r=Array.from(e.entries()).sort((n,s)=>{let i=new Date(n[0]).getTime(),a=new Date(s[0]).getTime();return i-a});return new Map(r)}function dpe(t,e){return e.fullObservationField==="narrative"?t.narrative:t.facts?zm(t.facts).join(` -`):null}function mpe(t,e,r,n,s,i){let a=[];i?a.push(...O4(t)):a.push(...h4(t));let o=null,c="",l=!1;for(let u of e)if(u.type==="summary"){l&&(a.push(""),l=!1,o=null,c="");let p=u.data,d=an(p.displayTime);i?a.push(...A4(p,d)):a.push(...b4(p,d))}else{let p=u.data,d=$n(p.files_modified,s,p.files_read),m=br(p.created_at),f=m!==c,v=f?m:"";c=m;let g=r.has(p.id);if(d!==o&&(l&&a.push(""),i?a.push(...P4(d)):a.push(...g4(d)),o=d,l=!0),g){let h=dpe(p,n);i?a.push(...I4(p,m,f,h,n)):(l&&!i&&(a.push(""),l=!1),a.push(...y4(p,v,h,n)),o=null)}else i?a.push(C4(p,m,f,n)):a.push(v4(p,v,n))}return l&&a.push(""),a}function L4(t,e,r,n,s){let i=[],a=ppe(t);for(let[o,c]of a)i.push(...mpe(o,c,e,r,n,s));return i}var q4=xe(()=>{"use strict";ao();jo();Do()});function F4(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 U4(t,e){let r=[];return e?(r.push(...Au("Investigated",t.investigated,J.blue)),r.push(...Au("Learned",t.learned,J.yellow)),r.push(...Au("Completed",t.completed,J.green)),r.push(...Au("Next Steps",t.next_steps,J.magenta))):(r.push(...Iu("Investigated",t.investigated)),r.push(...Iu("Learned",t.learned)),r.push(...Iu("Completed",t.completed)),r.push(...Iu("Next Steps",t.next_steps))),r}var H4=xe(()=>{"use strict";Cu();jo();Do()});function B4(t,e){return e?N4(t):x4(t)}function W4(t,e,r){return!If(e)||t.totalDiscoveryTokens<=0||t.savings<=0?[]:r?j4(t.totalDiscoveryTokens,t.totalReadTokens):_4(t.totalDiscoveryTokens,t.totalReadTokens)}var Z4=xe(()=>{"use strict";Wi();jo();Do()});function hpe(){try{return new Ws}catch(t){if(t.code==="ERR_DLOPEN_FAILED"){try{(0,Y4.unlinkSync)(fpe)}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 gpe(t,e){return e?D4(t):w4(t)}function vpe(t,e,r,n,s,i,a){let o=[],c=E0(e);o.push(...M4(t,c,n,a));let l=r.slice(0,n.sessionCount),u=o4(l,r),p=$0(e,u),d=c4(e,n.fullObservationCount);o.push(...L4(p,d,n,s,a));let m=r[0],f=e[0];F4(n,m,f)&&o.push(...U4(m,a));let v=R0(e,n,i,s);return o.push(...B4(v,a)),o.push(...W4(c,n,a)),o.join(` -`).trimEnd()}async function P0(t,e=!1){let r=_0(),n=t?.cwd??process.cwd(),s=fs(n),i=t?.projects||[s],a=hpe();if(!a)return"";try{let o=t?.planPath,c,l;return o?(c=i.length>1?i4(a,i,r,o):n4(a,s,r,o),l=i.length>1?a4(a,i,r,o):s4(a,s,r,o)):(c=i.length>1?t4(a,i,r):k0(a,s,r),l=i.length>1?r4(a,i,r):T0(a,s,r)),c.length===0&&l.length===0?gpe(s,e):vpe(s,c,l,r,n,t?.session_id,e)}finally{a.close()}}var V4,G4,Y4,fpe,K4=xe(()=>{"use strict";V4=pe(require("path"),1),G4=require("os"),Y4=require("fs");Om();se();Mi();w0();Wi();O0();z4();q4();H4();Z4();jo();Do();fpe=V4.default.join((0,G4.homedir)(),".claude","plugins","marketplaces","pilot","plugin",".install-version")});var J4=xe(()=>{"use strict";K4();w0();Wi();O0()});var C0={};Nn(C0,{generateContext:()=>P0});var I0=xe(()=>{"use strict";J4()});var U0={};Nn(U0,{backupCommand:()=>hL,backupsListCommand:()=>gL,cleanCommand:()=>xL,cleanupCommand:()=>fL,doctorCommand:()=>vL,exportCommand:()=>dL,generateCommand:()=>bL,importCommand:()=>mL,retentionCommand:()=>yL,runCLI:()=>Ape,searchCommand:()=>pL,statusCommand:()=>uL,vacuumCommand:()=>_L});async function It(t,e={}){let r=Cr(),s=`http://${xn()}:${r}${t}`,i=await fetch(s,{method:e.method||"GET",headers:e.body?{"Content-Type":"application/json"}:void 0,body:e.body?JSON.stringify(e.body):void 0});if(!i.ok){let a=await i.text();throw new Error(`API error (${i.status}): ${a}`)}return i.json()}async function ts(){try{return await It("/api/health"),!0}catch{return!1}}function qo(t){return t<1024?`${t} B`:t<1024*1024?`${(t/1024).toFixed(1)} KB`:t<1024*1024*1024?`${(t/(1024*1024)).toFixed(1)} MB`:`${(t/(1024*1024*1024)).toFixed(2)} GB`}function Ipe(t){return new Date(t).toLocaleString()}async function uL(t){if(!await ts()){t.json?console.log(JSON.stringify({running:!1})):console.log("Worker is not running");return}let[r,n,s]=await Promise.all([It("/api/health"),It("/api/stats"),It("/api/processing-status")]);t.json?console.log(JSON.stringify({running:!0,health:r,stats:n,processing:s},null,2)):(console.log("Worker Status"),console.log("\u2500".repeat(40)),console.log(` Status: ${r.status}`),console.log(` Version: ${n.worker.version}`),console.log(` PID: ${r.pid}`),console.log(` Uptime: ${Math.floor(n.worker.uptime/60)}m ${n.worker.uptime%60}s`),console.log(` Initialized: ${r.initialized?"yes":"no"}`),console.log(` Core Ready: ${r.coreReady?"yes":"no"}`),console.log(` MCP Ready: ${r.mcpReady?"yes":"no"}`),console.log(""),console.log("Database Stats"),console.log("\u2500".repeat(40)),console.log(` Path: ${n.database.path}`),console.log(` Size: ${qo(n.database.size)}`),console.log(` Observations: ${n.database.observations.toLocaleString()}`),console.log(` Sessions: ${n.database.sessions.toLocaleString()}`),console.log(` Summaries: ${n.database.summaries.toLocaleString()}`),console.log(""),console.log("Processing"),console.log("\u2500".repeat(40)),console.log(` Active: ${s.isProcessing?"yes":"no"}`),console.log(` Queue Depth: ${s.queueDepth}`),console.log(` Sessions: ${n.worker.activeSessions}`))}async function pL(t,e){await ts()||(console.error("Error: Worker is not running. Start with: pilot-memory start"),process.exit(1));let r=new URLSearchParams({query:t});e.project&&r.set("project",e.project),e.limit&&r.set("limit",e.limit.toString()),e.type&&r.set("type",e.type);let n=e.type==="session"?"/api/search/sessions":"/api/search/observations",s=await It(`${n}?${r}`);if(e.json)console.log(JSON.stringify(s,null,2));else{let i=s.content.find(a=>a.type==="text")?.text;console.log(i||"No results found")}}async function dL(t){await ts()||(console.error("Error: Worker is not running. Start with: pilot-memory start"),process.exit(1));let e=new URLSearchParams;t.project&&e.set("project",t.project),t.limit&&e.set("limit",t.limit.toString());let r=await It(`/api/export?${e}`);console.log(JSON.stringify(r,null,2))}async function mL(t,e){await ts()||(console.error("Error: Worker is not running. Start with: pilot-memory start"),process.exit(1));let r;if(t&&t!=="-")r=await(await import("fs/promises")).readFile(t,"utf-8");else{let i=[];for await(let a of process.stdin)i.push(a);r=Buffer.concat(i).toString("utf-8")}let n=JSON.parse(r),s=await It("/api/import",{method:"POST",body:n});e.json?console.log(JSON.stringify(s)):console.log(`Imported ${s.imported} records`)}async function fL(t){await ts()||(console.error("Error: Worker is not running. Start with: pilot-memory start"),process.exit(1));let e=await It("/api/pending-queue/failed",{method:"DELETE"});t.json?console.log(JSON.stringify({failedQueueCleared:e.deleted})):(console.log("Cleanup completed:"),console.log(` Failed queue entries cleared: ${e.deleted}`))}async function hL(t){await ts()||(console.error("Error: Worker is not running. Start with: pilot-memory start"),process.exit(1));let e=await It("/api/backups/create",{method:"POST"});t.json?console.log(JSON.stringify(e)):(console.log("Backup created:"),console.log(` File: ${e.filename}`),console.log(` Size: ${qo(e.sizeBytes)}`),console.log(` Path: ${e.path}`))}async function gL(t){await ts()||(console.error("Error: Worker is not running. Start with: pilot-memory start"),process.exit(1));let e=await It("/api/backups");if(t.json)console.log(JSON.stringify(e,null,2));else{if(e.backups.length===0){console.log("No backups found");return}console.log("Backups:"),console.log("\u2500".repeat(60));for(let r of e.backups)console.log(` ${r.filename}`),console.log(` Size: ${qo(r.sizeBytes)} | Created: ${Ipe(r.createdAt)}`)}}async function vL(t){let e=[],r=await ts();if(e.push({name:"Worker Status",status:r?"ok":"error",message:r?"Worker is running":"Worker is not running"}),r){try{let n=await It("/api/health");e.push({name:"Health Check",status:n.status==="ok"?"ok":"warning",message:`Status: ${n.status}`}),e.push({name:"Core Services",status:n.coreReady?"ok":"warning",message:n.coreReady?"Database and search ready":"Core services not ready"}),e.push({name:"MCP Server",status:n.mcpReady?"ok":"warning",message:n.mcpReady?"MCP server connected":"MCP server not connected"})}catch(n){e.push({name:"Health Check",status:"error",message:`Failed: ${n instanceof Error?n.message:"Unknown error"}`})}try{let n=await It("/api/stats");e.push({name:"Database",status:"ok",message:`${n.database.observations} observations, ${n.database.sessions} sessions (${qo(n.database.size)})`})}catch(n){e.push({name:"Database",status:"error",message:`Failed: ${n instanceof Error?n.message:"Unknown error"}`})}try{let n=await It("/api/pending-queue"),s=n.queue.messages.filter(o=>o.status==="pending").length,i=n.queue.messages.filter(o=>o.status==="failed").length,a=i>0?"warning":"ok";e.push({name:"Queue Status",status:a,message:`Pending: ${s}, Failed: ${i}`})}catch(n){e.push({name:"Queue Status",status:"error",message:`Failed: ${n instanceof Error?n.message:"Unknown error"}`})}try{let n=await It("/api/backups"),s=n.backups.some(i=>{let a=new Date(i.createdAt),o=Date.now()-1440*60*1e3;return a.getTime()>o});e.push({name:"Backups",status:s?"ok":"warning",message:s?`${n.backups.length} backups (recent backup exists)`:`${n.backups.length} backups (no recent backup)`})}catch{e.push({name:"Backups",status:"warning",message:"Could not check backups"})}try{let n=await It("/api/vector-db/health");n.available?n.healthy?e.push({name:"Vector Database",status:"ok",message:`${qo(n.directorySize)}, ${n.embeddingCount} embeddings`}):e.push({name:"Vector Database",status:"warning",message:`${qo(n.directorySize)} (${Math.round(n.bloatRatio)}x expected size) \u2014 Run: pilot-memory vacuum`}):e.push({name:"Vector Database",status:"warning",message:"unavailable (Chroma not connected)"})}catch{e.push({name:"Vector Database",status:"warning",message:"unavailable (Chroma not connected)"})}}if(t.json)console.log(JSON.stringify({checks:e},null,2));else{console.log("Pilot Memory Doctor"),console.log("\u2500".repeat(50));let n=c=>c==="ok"?"\u2713":c==="warning"?"!":"\u2717",s=c=>c==="ok"?"\x1B[32m":c==="warning"?"\x1B[33m":"\x1B[31m",i="\x1B[0m";for(let c of e)console.log(` ${s(c.status)}${n(c.status)}${i} ${c.name}: ${c.message}`);let a=e.some(c=>c.status==="error"),o=e.some(c=>c.status==="warning");console.log(""),console.log(a?"\x1B[31mSome checks failed. See above for details.\x1B[0m":o?"\x1B[33mSome warnings detected. See above for details.\x1B[0m":"\x1B[32mAll checks passed!\x1B[0m")}}async function yL(t,e){switch(await ts()||(console.error("Error: Worker is not running. Start with: pilot-memory start"),process.exit(1)),t){case"preview":{let r=await It("/api/retention/preview");if(e.json)console.log(JSON.stringify(r,null,2));else{let{preview:n,policy:s}=r;console.log("Retention Preview"),console.log("\u2500".repeat(50)),console.log(`Total observations: ${n.totalObservations.toLocaleString()}`),console.log(`Would delete by age: ${n.toDelete.byAge.toLocaleString()}`),console.log(`Would delete by count: ${n.toDelete.byCount.toLocaleString()}`),console.log(`Total to delete: ${n.toDelete.total.toLocaleString()}`),console.log(`Excluded (protected): ${n.excluded.toLocaleString()}`),console.log(""),console.log("Policy:"),console.log(` Enabled: ${s.enabled?"yes":"no"}`),console.log(` Max age: ${s.maxAgeDays} days`),console.log(` Max count: ${s.maxCount} per project`),console.log(` Exclude: ${s.excludeTypes.join(", ")||"none"}`),console.log(` Soft delete: ${s.softDelete?"yes (archive)":"no (permanent)"}`),n.affectedProjects.length>0&&(console.log(""),console.log(`Affected projects: ${n.affectedProjects.slice(0,5).join(", ")}${n.affectedProjects.length>5?"...":""}`))}break}case"run":{let r=await It("/api/retention/run",{method:"POST",body:{}});if(e.json)console.log(JSON.stringify(r,null,2));else if(r.success)console.log("\x1B[32mRetention cleanup completed\x1B[0m"),console.log(` Deleted: ${r.result.deleted}`),console.log(` Archived: ${r.result.archived}`),console.log(` Duration: ${r.result.duration}ms`);else{console.log("\x1B[31mRetention cleanup failed\x1B[0m");for(let n of r.result.errors)console.log(` Error: ${n}`)}break}case"archive":{let r=await It("/api/retention/archive/list");if(e.json)console.log(JSON.stringify(r,null,2));else if(console.log(`Archived Observations (${r.count} of ${r.total})`),console.log("\u2500".repeat(60)),r.observations.length===0)console.log("No archived observations");else for(let n of r.observations){let s=new Date(n.deleted_at_epoch).toLocaleString();console.log(` #${n.id} ${n.title||"(untitled)"}`),console.log(` Type: ${n.type} | Project: ${n.project}`),console.log(` Deleted: ${s} | Reason: ${n.deletion_reason||"unknown"}`)}break}case"restore":{let r=await It("/api/retention/restore",{method:"POST",body:{}});if(e.json)console.log(JSON.stringify(r,null,2));else if(r.success)console.log(`\x1B[32mRestored ${r.restored} observations from archive\x1B[0m`);else{console.log("\x1B[31mRestore failed\x1B[0m");for(let n of r.errors)console.log(` Error: ${n}`)}break}default:{let r=await It("/api/retention/policy");if(e.json)console.log(JSON.stringify(r,null,2));else{let{policy:n}=r;console.log("Retention Policy"),console.log("\u2500".repeat(40)),console.log(` Enabled: ${n.enabled?"\x1B[32myes\x1B[0m":"\x1B[33mno\x1B[0m"}`),console.log(` Max age: ${n.maxAgeDays>0?`${n.maxAgeDays} days`:"disabled"}`),console.log(` Max count: ${n.maxCount>0?`${n.maxCount} per project`:"unlimited"}`),console.log(` Exclude: ${n.excludeTypes.join(", ")||"none"}`),console.log(` Soft delete: ${n.softDelete?"yes (archive)":"no (permanent)"}`),console.log(""),console.log("Commands:"),console.log(" retention preview Preview what would be deleted"),console.log(" retention run Run cleanup"),console.log(" retention archive Show archived observations"),console.log(" retention restore Restore all from archive")}break}}}async function bL(t){let{spawn:e}=await import("child_process"),r=await import("path"),{fileURLToPath:n}=await import("url"),s=r.dirname(n(wL.url)),i=r.resolve(s,"../../scripts/regenerate-claude-md.ts"),a=[];return t.dryRun&&a.push("--dry-run"),t.json&&console.log(JSON.stringify({action:"generate",dryRun:t.dryRun??!1})),new Promise((o,c)=>{let l=e("bun",[i,...a],{stdio:"inherit",cwd:process.cwd()});l.on("close",u=>{u===0?o():c(new Error(`Generate script exited with code ${u}`))}),l.on("error",u=>{c(u)})})}async function xL(t){let{spawn:e}=await import("child_process"),r=await import("path"),{fileURLToPath:n}=await import("url"),s=r.dirname(n(wL.url)),i=r.resolve(s,"../../scripts/regenerate-claude-md.ts"),a=["--clean"];return t.dryRun&&a.push("--dry-run"),t.json&&console.log(JSON.stringify({action:"clean",dryRun:t.dryRun??!1})),new Promise((o,c)=>{let l=e("bun",[i,...a],{stdio:"inherit",cwd:process.cwd()});l.on("close",u=>{u===0?o():c(new Error(`Clean script exited with code ${u}`))}),l.on("error",u=>{c(u)})})}async function _L(t){await ts()||(console.error("Error: Worker is not running. Start with: pilot-memory start"),process.exit(1)),t.json||console.log("Vacuuming vector database \u2014 this will rebuild the HNSW index...");let e=await It("/api/retention/vacuum",{method:"POST"});t.json?console.log(JSON.stringify(e,null,2)):e.success?(console.log("\x1B[32mVacuum complete\x1B[0m"),console.log(` Reindexed: ${e.reindexedDocuments} documents`)):(console.log("\x1B[33mVacuum incomplete \u2014 run again to complete backfill\x1B[0m"),e.error&&console.log(` Error: ${e.error}`))}async function Ape(t){let e=t[0],r=t.slice(1),n={},s=[];for(let i=0;i [--project ] [--limit ] [--json]"),process.exit(1)),await pL(s.join(" "),n);break;case"export":await dL(n);break;case"import":await mL(s[0],n);break;case"cleanup":await fL(n);break;case"backup":s[0]==="list"?await gL(n):await hL(n);break;case"doctor":await vL(n);break;case"retention":await yL(s[0],n);break;case"vacuum":await _L(n);break;case"generate":await bL(n);break;case"clean":await xL(n);break;default:console.log(`Unknown command: ${e}`),console.log(""),console.log("Available commands:"),console.log(" status Show worker and queue status"),console.log(" search Search memories"),console.log(" export Export memories as JSON"),console.log(" import [file] Import memories from file or stdin"),console.log(" cleanup Run cleanup tasks"),console.log(" backup Create a backup"),console.log(" backup list List existing backups"),console.log(" doctor Diagnose issues"),console.log(" retention Show retention policy"),console.log(" retention preview Preview cleanup"),console.log(" retention run Run cleanup"),console.log(" retention archive Show archived observations"),console.log(" vacuum Rebuild vector database HNSW index"),console.log(" generate Generate CLAUDE.md files for project folders"),console.log(" clean Remove auto-generated CLAUDE.md content"),console.log(""),console.log("Options:"),console.log(" --json, -j Output as JSON"),console.log(" --project, -p Filter by project"),console.log(" --limit, -l Limit results"),console.log(" --dry-run, -n Preview changes without writing"),process.exit(1)}}catch(i){n.json?console.log(JSON.stringify({error:i instanceof Error?i.message:"Unknown error"})):console.error(`Error: ${i instanceof Error?i.message:"Unknown error"}`),process.exit(1)}}var wL,H0=xe(()=>{"use strict";_n();wL={}});function Npe(){try{return(0,SL.statSync)("/dev/stdin")!==null}catch{try{return process.stdin.readable||process.stdin.isTTY===!0}catch{return!1}}}async function EL(){if(Npe())return new Promise((t,e)=>{let r="",n=setTimeout(()=>{t(void 0)},100),s;process.stdin.on("data",i=>{clearTimeout(n),s&&clearTimeout(s),r+=i,s=setTimeout(()=>{try{t(r.trim()?JSON.parse(r):void 0)}catch(a){e(new Error(`Failed to parse hook input: ${a}`))}},3e3)}),process.stdin.on("end",()=>{clearTimeout(n),s&&clearTimeout(s);try{t(r.trim()?JSON.parse(r):void 0)}catch(i){e(new Error(`Failed to parse hook input: ${i}`))}}),process.stdin.on("error",()=>{clearTimeout(n),s&&clearTimeout(s),t(void 0)})})}var SL,kL=xe(()=>{"use strict";SL=require("fs")});var TL,RL=xe(()=>{"use strict";TL={normalizeInput(t){let e=t??{};return{sessionId:e.session_id,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){return t.hookSpecificOutput?{hookSpecificOutput:t.hookSpecificOutput}:{continue:t.continue??!0,suppressOutput:t.suppressOutput??!0}}}});var $L,OL=xe(()=>{"use strict";$L={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}}});function PL(t){switch(t){case"claude-code":return TL;case"raw":return $L;default:throw new Error(`Unknown platform: ${t}`)}}var CL=xe(()=>{"use strict";RL();OL()});function jpe(t){return t.includes(":")&&!t.startsWith("[")?`[${t}]`:t}function ei(){if(ah!==null)return ah;let t=xn(),e=Cr();return ah={mode:"local",baseUrl:`http://${jpe(t)}:${e}`,authHeaders:{},timeoutMs:h$(er.DEFAULT),verifySsl:!0},ah}var ah,ju=xe(()=>{"use strict";_n();_a();ah=null});function Dpe(t){if(t instanceof Error){let e=t.code;if(e&&IL.includes(e))return!0;let r=t.message||"";return IL.some(n=>r.includes(n))}return!1}function Mpe(t,e=100,r=1e3){let n=e*Math.pow(2,t),s=Math.min(n,r),i=s*.25*(Math.random()*2-1);return Math.round(s+i)}function zpe(t){return new Promise(e=>setTimeout(e,t))}async function oh(t,e,r={}){let{maxRetries:n=3,baseDelayMs:s=100,maxDelayMs:i=1e3}=r,a;for(let o=0;o<=n;o++)try{return await fetch(t,e)}catch(c){if(a=c,!Dpe(c)||o>=n)throw c;let l=Mpe(o,s,i);await zpe(l)}throw a??new Error("fetchWithRetry failed")}var IL,B0=xe(()=>{"use strict";IL=["ECONNRESET","ECONNREFUSED","ETIMEDOUT","ENOTFOUND","EAI_AGAIN","UND_ERR_SOCKET","UND_ERR_CONNECT_TIMEOUT","UND_ERR_HEADERS_TIMEOUT"]});async function Es(t,e,r={}){let{endpointConfig:n,...s}=r,i=new Headers(e?.headers);if(n?.authHeaders)for(let[a,o]of Object.entries(n.authHeaders))i.set(a,o);return e?.body&&!i.has("Content-Type")&&i.set("Content-Type","application/json"),oh(t,{...e,headers:i},s)}var Du=xe(()=>{"use strict";B0()});var ch,AL,NL,W0,Z0=xe(()=>{"use strict";ch=require("fs"),AL=pe(require("path"),1),NL=require("os");ju();Du();Mi();se();W0={async execute(t){if(process.env.CLAUDE_PILOT_NO_CONTEXT==="1"||process.env.CLAUDE_PILOT_NO_CONTEXT==="true")return{hookSpecificOutput:{hookEventName:"SessionStart",additionalContext:""}};let e=ei(),r=t.cwd??process.cwd(),s=tM(r).allProjects.join(","),i=`${e.baseUrl}/api/context/inject?projects=${encodeURIComponent(s)}`,a=process.env.PILOT_SESSION_ID;if(a){let u=AL.default.join((0,NL.homedir)(),".pilot","sessions",a,"active_plan.json");try{if((0,ch.existsSync)(u)){let p=JSON.parse((0,ch.readFileSync)(u,"utf-8"));p.plan_path&&(i+=`&planPath=${encodeURIComponent(p.plan_path)}`)}}catch(p){_.debug("HOOK","Failed to read active plan file",{planFilePath:u},p)}}let o=await Es(i,void 0,{endpointConfig:e});if(!o.ok)throw new Error(`Context generation failed: ${o.status}`);return{hookSpecificOutput:{hookEventName:"SessionStart",additionalContext:(await o.text()).trim()}}}}});function Lpe(t){let e=(0,jL.join)(t,".pilot/memory.json");if(!(0,lh.existsSync)(e))return null;try{let r=(0,lh.readFileSync)(e,"utf-8");return JSON.parse(r)}catch{return null}}function Fo(t){let e=Lpe(t);return e?e.enabled===!1:!1}function qpe(t){let e=t.replace(/[.+^${}()|[\]\\]/g,"\\$&").replace(/\*/g,".*").replace(/\?/g,".");return new RegExp(`^${e}$`,"i")}function Fpe(t,e){for(let r of e)if(qpe(r).test(t))return!0;return!1}function Uo(t){if(!t)return!1;let e=De.loadFromFile(ar),r=[];try{let n=JSON.parse(e.CLAUDE_PILOT_EXCLUDE_PROJECTS||"[]");Array.isArray(n)&&(r=n.filter(s=>typeof s=="string"&&s.length>0))}catch{return!1}return r.length===0?!1:Fpe(t,r)}var lh,jL,uh=xe(()=>{"use strict";lh=require("fs"),jL=require("path");Br();yr()});var V0,G0=xe(()=>{"use strict";ju();Du();uh();Mi();se();V0={async execute(t){let e=ei(),{sessionId:r,cwd:n,prompt:s}=t;if(!s)return _.debug("HOOK","session-init: Empty prompt received, skipping session initialization"),{continue:!0,suppressOutput:!0};let i=fs(n);if(Fo(n))return _.debug("HOOK","session-init: Memory disabled by .pilot/memory.json",{project:i,cwd:n}),{continue:!0,suppressOutput:!0};if(Uo(i))return _.debug("HOOK","session-init: Project excluded by CLAUDE_PILOT_EXCLUDE_PROJECTS",{project:i}),{continue:!0,suppressOutput:!0};_.debug("HOOK","session-init: Calling /api/sessions/init",{contentSessionId:r,project:i,mode:e.mode});let a=await Es(`${e.baseUrl}/api/sessions/init`,{method:"POST",body:JSON.stringify({contentSessionId:r,project:i,prompt:s,projectRoot:n})},{endpointConfig:e});if(!a.ok)throw new Error(`Session initialization failed: ${a.status}`);let o=await a.json(),c=o.sessionDbId,l=o.promptNumber;if(_.debug("HOOK","session-init: Received from /api/sessions/init",{sessionDbId:c,promptNumber:l,skipped:o.skipped}),_.debug("HOOK",`[ALIGNMENT] Hook Entry | contentSessionId=${r} | prompt#=${l} | sessionDbId=${c}`),o.skipped&&o.reason==="private")return _.info("HOOK",`INIT_COMPLETE | sessionDbId=${c} | promptNumber=${l} | skipped=true | reason=private`,{sessionId:c}),{continue:!0,suppressOutput:!0};if(c){let u=s.startsWith("/")?s.substring(1):s;_.debug("HOOK","session-init: Calling /sessions/{sessionDbId}/init",{sessionDbId:c,promptNumber:l});let p=await Es(`${e.baseUrl}/sessions/${c}/init`,{method:"POST",body:JSON.stringify({userPrompt:u,promptNumber:l})},{endpointConfig:e});if(!p.ok)throw new Error(`SDK agent start failed: ${p.status}`)}return _.info("HOOK",`INIT_COMPLETE | sessionDbId=${c} | promptNumber=${l} | project=${i}`,{sessionId:c}),{continue:!0,suppressOutput:!0}}}});var Y0,K0=xe(()=>{"use strict";ju();Du();uh();Mi();se();Y0={async execute(t){let e=ei(),{sessionId:r,cwd:n,toolName:s,toolInput:i,toolResponse:a}=t;if(!s)throw new Error("observationHandler requires toolName");if(Fo(n))return _.debug("HOOK","observation: Memory disabled by .pilot/memory.json",{cwd:n}),{continue:!0,suppressOutput:!0};let o=fs(n);if(Uo(o))return _.debug("HOOK","observation: Project excluded by CLAUDE_PILOT_EXCLUDE_PROJECTS",{project:o}),{continue:!0,suppressOutput:!0};let c=_.formatTool(s,i);if(_.dataIn("HOOK",`PostToolUse: ${c}`,{workerUrl:e.baseUrl,mode:e.mode}),!n)throw new Error(`Missing cwd in PostToolUse hook input for session ${r}, tool ${s}`);let l=await Es(`${e.baseUrl}/api/sessions/observations`,{method:"POST",body:JSON.stringify({contentSessionId:r,tool_name:s,tool_input:i,tool_response:a,cwd:n})},{endpointConfig:e});if(!l.ok)throw new Error(`Observation storage failed: ${l.status}`);return _.debug("HOOK","Observation sent successfully",{toolName:s,mode:e.mode}),{continue:!0,suppressOutput:!0}}}});function DL(t,e,r=!1){if(!t||!(0,ph.existsSync)(t))throw new Error(`Transcript path missing or file does not exist: ${t}`);let n=(0,ph.readFileSync)(t,"utf-8").trim();if(!n)throw new Error(`Transcript file exists but is empty: ${t}`);let s=n.split(` +`}var Mo=xe(()=>{"use strict";Au();sn();Zi()});function H4(t,e,r,n){let s=[];return n?s.push(...P4(t)):s.push(...g4(t)),n?s.push(...C4()):s.push(...v4()),n?s.push(...I4()):s.push(...y4()),n?s.push(...A4()):s.push(...b4()),Nf(r)&&(n?s.push(...N4(e,r)):s.push(...x4(e,r))),s}var B4=xe(()=>{"use strict";Zi();Do();Mo()});function ype(t){let e=new Map;for(let n of t){let s=n.type==="observation"?n.data.created_at:n.data.displayTime,i=ms(s);e.has(i)||e.set(i,[]),e.get(i).push(n)}let r=Array.from(e.entries()).sort((n,s)=>{let i=new Date(n[0]).getTime(),a=new Date(s[0]).getTime();return i-a});return new Map(r)}function bpe(t,e){return e.fullObservationField==="narrative"?t.narrative:t.facts?qm(t.facts).join(` +`):null}function xpe(t,e,r,n,s,i){let a=[];i?a.push(...j4(t)):a.push(..._4(t));let o=null,c="",l=!1;for(let u of e)if(u.type==="summary"){l&&(a.push(""),l=!1,o=null,c="");let p=u.data,d=an(p.displayTime);i?a.push(...L4(p,d)):a.push(...k4(p,d))}else{let p=u.data,d=$n(p.files_modified,s,p.files_read),m=br(p.created_at),f=m!==c,v=f?m:"";c=m;let g=r.has(p.id);if(d!==o&&(l&&a.push(""),i?a.push(...D4(d)):a.push(...w4(d)),o=d,l=!0),g){let h=bpe(p,n);i?a.push(...z4(p,m,f,h,n)):(l&&!i&&(a.push(""),l=!1),a.push(...E4(p,v,h,n)),o=null)}else i?a.push(M4(p,m,f,n)):a.push(S4(p,v,n))}return l&&a.push(""),a}function W4(t,e,r,n,s){let i=[],a=ype(t);for(let[o,c]of a)i.push(...xpe(o,c,e,r,n,s));return i}var Z4=xe(()=>{"use strict";oo();Do();Mo()});function V4(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 G4(t,e){let r=[];return e?(r.push(...ju("Investigated",t.investigated,J.blue)),r.push(...ju("Learned",t.learned,J.yellow)),r.push(...ju("Completed",t.completed,J.green)),r.push(...ju("Next Steps",t.next_steps,J.magenta))):(r.push(...Nu("Investigated",t.investigated)),r.push(...Nu("Learned",t.learned)),r.push(...Nu("Completed",t.completed)),r.push(...Nu("Next Steps",t.next_steps))),r}var Y4=xe(()=>{"use strict";Au();Do();Mo()});function K4(t,e){return e?q4(t):T4(t)}function J4(t,e,r){return!Nf(e)||t.totalDiscoveryTokens<=0||t.savings<=0?[]:r?F4(t.totalDiscoveryTokens,t.totalReadTokens):R4(t.totalDiscoveryTokens,t.totalReadTokens)}var Q4=xe(()=>{"use strict";Zi();Do();Mo()});function wpe(){try{return new Ws}catch(t){if(t.code==="ERR_DLOPEN_FAILED"){try{(0,tL.unlinkSync)(_pe)}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 Spe(t,e){return e?U4(t):$4(t)}function Epe(t,e,r,n,s,i,a){let o=[],c=$0(e);o.push(...H4(t,c,n,a));let l=r.slice(0,n.sessionCount),u=m4(l,r),p=I0(e,u),d=f4(e,n.fullObservationCount);o.push(...W4(p,d,n,s,a));let m=r[0],f=e[0];V4(n,m,f)&&o.push(...G4(m,a));let v=C0(e,n,i,s);return o.push(...K4(v,a)),o.push(...J4(c,n,a)),o.join(` +`).trimEnd()}async function N0(t,e=!1){let r=k0(),n=t?.cwd??process.cwd(),s=fs(n),i=t?.projects||[s],a=wpe();if(!a)return"";try{let o=t?.planPath,c,l;return o?(c=i.length>1?p4(a,i,r,o):l4(a,s,r,o),l=i.length>1?d4(a,i,r,o):u4(a,s,r,o)):(c=i.length>1?o4(a,i,r):O0(a,s,r),l=i.length>1?c4(a,i,r):P0(a,s,r)),c.length===0&&l.length===0?Spe(s,e):Epe(s,c,l,r,n,t?.session_id,e)}finally{a.close()}}var X4,eL,tL,_pe,rL=xe(()=>{"use strict";X4=ie(require("path"),1),eL=require("os"),tL=require("fs");Cm();re();zi();T0();Zi();A0();B4();Z4();Y4();Q4();Do();Mo();_pe=X4.default.join((0,eL.homedir)(),".claude","plugins","marketplaces","pilot","plugin",".install-version")});var nL=xe(()=>{"use strict";rL();T0();Zi();A0()});var j0={};Nn(j0,{generateContext:()=>N0});var D0=xe(()=>{"use strict";nL()});var G0={};Nn(G0,{backupCommand:()=>wL,backupsListCommand:()=>SL,cleanCommand:()=>RL,cleanupCommand:()=>_L,doctorCommand:()=>EL,exportCommand:()=>bL,generateCommand:()=>TL,importCommand:()=>xL,retentionCommand:()=>kL,runCLI:()=>qpe,searchCommand:()=>yL,statusCommand:()=>vL,vacuumCommand:()=>$L});async function It(t,e={}){let r=Cr(),s=`http://${xn()}:${r}${t}`,i=await fetch(s,{method:e.method||"GET",headers:e.body?{"Content-Type":"application/json"}:void 0,body:e.body?JSON.stringify(e.body):void 0});if(!i.ok){let a=await i.text();throw new Error(`API error (${i.status}): ${a}`)}return i.json()}async function ts(){try{return await It("/api/health"),!0}catch{return!1}}function Uo(t){return t<1024?`${t} B`:t<1024*1024?`${(t/1024).toFixed(1)} KB`:t<1024*1024*1024?`${(t/(1024*1024)).toFixed(1)} MB`:`${(t/(1024*1024*1024)).toFixed(2)} GB`}function Lpe(t){return new Date(t).toLocaleString()}async function vL(t){if(!await ts()){t.json?console.log(JSON.stringify({running:!1})):console.log("Worker is not running");return}let[r,n,s]=await Promise.all([It("/api/health"),It("/api/stats"),It("/api/processing-status")]);t.json?console.log(JSON.stringify({running:!0,health:r,stats:n,processing:s},null,2)):(console.log("Worker Status"),console.log("\u2500".repeat(40)),console.log(` Status: ${r.status}`),console.log(` Version: ${n.worker.version}`),console.log(` PID: ${r.pid}`),console.log(` Uptime: ${Math.floor(n.worker.uptime/60)}m ${n.worker.uptime%60}s`),console.log(` Initialized: ${r.initialized?"yes":"no"}`),console.log(` Core Ready: ${r.coreReady?"yes":"no"}`),console.log(` MCP Ready: ${r.mcpReady?"yes":"no"}`),console.log(""),console.log("Database Stats"),console.log("\u2500".repeat(40)),console.log(` Path: ${n.database.path}`),console.log(` Size: ${Uo(n.database.size)}`),console.log(` Observations: ${n.database.observations.toLocaleString()}`),console.log(` Sessions: ${n.database.sessions.toLocaleString()}`),console.log(` Summaries: ${n.database.summaries.toLocaleString()}`),console.log(""),console.log("Processing"),console.log("\u2500".repeat(40)),console.log(` Active: ${s.isProcessing?"yes":"no"}`),console.log(` Queue Depth: ${s.queueDepth}`),console.log(` Sessions: ${n.worker.activeSessions}`))}async function yL(t,e){await ts()||(console.error("Error: Worker is not running. Start with: pilot-memory start"),process.exit(1));let r=new URLSearchParams({query:t});e.project&&r.set("project",e.project),e.limit&&r.set("limit",e.limit.toString()),e.type&&r.set("type",e.type);let n=e.type==="session"?"/api/search/sessions":"/api/search/observations",s=await It(`${n}?${r}`);if(e.json)console.log(JSON.stringify(s,null,2));else{let i=s.content.find(a=>a.type==="text")?.text;console.log(i||"No results found")}}async function bL(t){await ts()||(console.error("Error: Worker is not running. Start with: pilot-memory start"),process.exit(1));let e=new URLSearchParams;t.project&&e.set("project",t.project),t.limit&&e.set("limit",t.limit.toString());let r=await It(`/api/export?${e}`);console.log(JSON.stringify(r,null,2))}async function xL(t,e){await ts()||(console.error("Error: Worker is not running. Start with: pilot-memory start"),process.exit(1));let r;if(t&&t!=="-")r=await(await import("fs/promises")).readFile(t,"utf-8");else{let i=[];for await(let a of process.stdin)i.push(a);r=Buffer.concat(i).toString("utf-8")}let n=JSON.parse(r),s=await It("/api/import",{method:"POST",body:n});e.json?console.log(JSON.stringify(s)):console.log(`Imported ${s.imported} records`)}async function _L(t){await ts()||(console.error("Error: Worker is not running. Start with: pilot-memory start"),process.exit(1));let e=await It("/api/pending-queue/failed",{method:"DELETE"});t.json?console.log(JSON.stringify({failedQueueCleared:e.deleted})):(console.log("Cleanup completed:"),console.log(` Failed queue entries cleared: ${e.deleted}`))}async function wL(t){await ts()||(console.error("Error: Worker is not running. Start with: pilot-memory start"),process.exit(1));let e=await It("/api/backups/create",{method:"POST"});t.json?console.log(JSON.stringify(e)):(console.log("Backup created:"),console.log(` File: ${e.filename}`),console.log(` Size: ${Uo(e.sizeBytes)}`),console.log(` Path: ${e.path}`))}async function SL(t){await ts()||(console.error("Error: Worker is not running. Start with: pilot-memory start"),process.exit(1));let e=await It("/api/backups");if(t.json)console.log(JSON.stringify(e,null,2));else{if(e.backups.length===0){console.log("No backups found");return}console.log("Backups:"),console.log("\u2500".repeat(60));for(let r of e.backups)console.log(` ${r.filename}`),console.log(` Size: ${Uo(r.sizeBytes)} | Created: ${Lpe(r.createdAt)}`)}}async function EL(t){let e=[],r=await ts();if(e.push({name:"Worker Status",status:r?"ok":"error",message:r?"Worker is running":"Worker is not running"}),r){try{let n=await It("/api/health");e.push({name:"Health Check",status:n.status==="ok"?"ok":"warning",message:`Status: ${n.status}`}),e.push({name:"Core Services",status:n.coreReady?"ok":"warning",message:n.coreReady?"Database and search ready":"Core services not ready"}),e.push({name:"MCP Server",status:n.mcpReady?"ok":"warning",message:n.mcpReady?"MCP server connected":"MCP server not connected"})}catch(n){e.push({name:"Health Check",status:"error",message:`Failed: ${n instanceof Error?n.message:"Unknown error"}`})}try{let n=await It("/api/stats");e.push({name:"Database",status:"ok",message:`${n.database.observations} observations, ${n.database.sessions} sessions (${Uo(n.database.size)})`})}catch(n){e.push({name:"Database",status:"error",message:`Failed: ${n instanceof Error?n.message:"Unknown error"}`})}try{let n=await It("/api/pending-queue"),s=n.queue.messages.filter(o=>o.status==="pending").length,i=n.queue.messages.filter(o=>o.status==="failed").length,a=i>0?"warning":"ok";e.push({name:"Queue Status",status:a,message:`Pending: ${s}, Failed: ${i}`})}catch(n){e.push({name:"Queue Status",status:"error",message:`Failed: ${n instanceof Error?n.message:"Unknown error"}`})}try{let n=await It("/api/backups"),s=n.backups.some(i=>{let a=new Date(i.createdAt),o=Date.now()-1440*60*1e3;return a.getTime()>o});e.push({name:"Backups",status:s?"ok":"warning",message:s?`${n.backups.length} backups (recent backup exists)`:`${n.backups.length} backups (no recent backup)`})}catch{e.push({name:"Backups",status:"warning",message:"Could not check backups"})}try{let n=await It("/api/vector-db/health");n.available?n.healthy?e.push({name:"Vector Database",status:"ok",message:`${Uo(n.directorySize)}, ${n.embeddingCount} embeddings`}):e.push({name:"Vector Database",status:"warning",message:`${Uo(n.directorySize)} (${Math.round(n.bloatRatio)}x expected size) \u2014 Run: pilot-memory vacuum`}):e.push({name:"Vector Database",status:"warning",message:"unavailable (Chroma not connected)"})}catch{e.push({name:"Vector Database",status:"warning",message:"unavailable (Chroma not connected)"})}}if(t.json)console.log(JSON.stringify({checks:e},null,2));else{console.log("Pilot Memory Doctor"),console.log("\u2500".repeat(50));let n=c=>c==="ok"?"\u2713":c==="warning"?"!":"\u2717",s=c=>c==="ok"?"\x1B[32m":c==="warning"?"\x1B[33m":"\x1B[31m",i="\x1B[0m";for(let c of e)console.log(` ${s(c.status)}${n(c.status)}${i} ${c.name}: ${c.message}`);let a=e.some(c=>c.status==="error"),o=e.some(c=>c.status==="warning");console.log(""),console.log(a?"\x1B[31mSome checks failed. See above for details.\x1B[0m":o?"\x1B[33mSome warnings detected. See above for details.\x1B[0m":"\x1B[32mAll checks passed!\x1B[0m")}}async function kL(t,e){switch(await ts()||(console.error("Error: Worker is not running. Start with: pilot-memory start"),process.exit(1)),t){case"preview":{let r=await It("/api/retention/preview");if(e.json)console.log(JSON.stringify(r,null,2));else{let{preview:n,policy:s}=r;console.log("Retention Preview"),console.log("\u2500".repeat(50)),console.log(`Total observations: ${n.totalObservations.toLocaleString()}`),console.log(`Would delete by age: ${n.toDelete.byAge.toLocaleString()}`),console.log(`Would delete by count: ${n.toDelete.byCount.toLocaleString()}`),console.log(`Total to delete: ${n.toDelete.total.toLocaleString()}`),console.log(`Excluded (protected): ${n.excluded.toLocaleString()}`),console.log(""),console.log("Policy:"),console.log(` Enabled: ${s.enabled?"yes":"no"}`),console.log(` Max age: ${s.maxAgeDays} days`),console.log(` Max count: ${s.maxCount} per project`),console.log(` Exclude: ${s.excludeTypes.join(", ")||"none"}`),console.log(` Soft delete: ${s.softDelete?"yes (archive)":"no (permanent)"}`),n.affectedProjects.length>0&&(console.log(""),console.log(`Affected projects: ${n.affectedProjects.slice(0,5).join(", ")}${n.affectedProjects.length>5?"...":""}`))}break}case"run":{let r=await It("/api/retention/run",{method:"POST",body:{}});if(e.json)console.log(JSON.stringify(r,null,2));else if(r.success)console.log("\x1B[32mRetention cleanup completed\x1B[0m"),console.log(` Deleted: ${r.result.deleted}`),console.log(` Archived: ${r.result.archived}`),console.log(` Duration: ${r.result.duration}ms`);else{console.log("\x1B[31mRetention cleanup failed\x1B[0m");for(let n of r.result.errors)console.log(` Error: ${n}`)}break}case"archive":{let r=await It("/api/retention/archive/list");if(e.json)console.log(JSON.stringify(r,null,2));else if(console.log(`Archived Observations (${r.count} of ${r.total})`),console.log("\u2500".repeat(60)),r.observations.length===0)console.log("No archived observations");else for(let n of r.observations){let s=new Date(n.deleted_at_epoch).toLocaleString();console.log(` #${n.id} ${n.title||"(untitled)"}`),console.log(` Type: ${n.type} | Project: ${n.project}`),console.log(` Deleted: ${s} | Reason: ${n.deletion_reason||"unknown"}`)}break}case"restore":{let r=await It("/api/retention/restore",{method:"POST",body:{}});if(e.json)console.log(JSON.stringify(r,null,2));else if(r.success)console.log(`\x1B[32mRestored ${r.restored} observations from archive\x1B[0m`);else{console.log("\x1B[31mRestore failed\x1B[0m");for(let n of r.errors)console.log(` Error: ${n}`)}break}default:{let r=await It("/api/retention/policy");if(e.json)console.log(JSON.stringify(r,null,2));else{let{policy:n}=r;console.log("Retention Policy"),console.log("\u2500".repeat(40)),console.log(` Enabled: ${n.enabled?"\x1B[32myes\x1B[0m":"\x1B[33mno\x1B[0m"}`),console.log(` Max age: ${n.maxAgeDays>0?`${n.maxAgeDays} days`:"disabled"}`),console.log(` Max count: ${n.maxCount>0?`${n.maxCount} per project`:"unlimited"}`),console.log(` Exclude: ${n.excludeTypes.join(", ")||"none"}`),console.log(` Soft delete: ${n.softDelete?"yes (archive)":"no (permanent)"}`),console.log(""),console.log("Commands:"),console.log(" retention preview Preview what would be deleted"),console.log(" retention run Run cleanup"),console.log(" retention archive Show archived observations"),console.log(" retention restore Restore all from archive")}break}}}async function TL(t){let{spawn:e}=await import("child_process"),r=await import("path"),{fileURLToPath:n}=await import("url"),s=r.dirname(n(OL.url)),i=r.resolve(s,"../../scripts/regenerate-claude-md.ts"),a=[];return t.dryRun&&a.push("--dry-run"),t.json&&console.log(JSON.stringify({action:"generate",dryRun:t.dryRun??!1})),new Promise((o,c)=>{let l=e("bun",[i,...a],{stdio:"inherit",cwd:process.cwd()});l.on("close",u=>{u===0?o():c(new Error(`Generate script exited with code ${u}`))}),l.on("error",u=>{c(u)})})}async function RL(t){let{spawn:e}=await import("child_process"),r=await import("path"),{fileURLToPath:n}=await import("url"),s=r.dirname(n(OL.url)),i=r.resolve(s,"../../scripts/regenerate-claude-md.ts"),a=["--clean"];return t.dryRun&&a.push("--dry-run"),t.json&&console.log(JSON.stringify({action:"clean",dryRun:t.dryRun??!1})),new Promise((o,c)=>{let l=e("bun",[i,...a],{stdio:"inherit",cwd:process.cwd()});l.on("close",u=>{u===0?o():c(new Error(`Clean script exited with code ${u}`))}),l.on("error",u=>{c(u)})})}async function $L(t){await ts()||(console.error("Error: Worker is not running. Start with: pilot-memory start"),process.exit(1)),t.json||console.log("Vacuuming vector database \u2014 this will rebuild the HNSW index...");let e=await It("/api/retention/vacuum",{method:"POST"});t.json?console.log(JSON.stringify(e,null,2)):e.success?(console.log("\x1B[32mVacuum complete\x1B[0m"),console.log(` Reindexed: ${e.reindexedDocuments} documents`)):(console.log("\x1B[33mVacuum incomplete \u2014 run again to complete backfill\x1B[0m"),e.error&&console.log(` Error: ${e.error}`))}async function qpe(t){let e=t[0],r=t.slice(1),n={},s=[];for(let i=0;i [--project ] [--limit ] [--json]"),process.exit(1)),await yL(s.join(" "),n);break;case"export":await bL(n);break;case"import":await xL(s[0],n);break;case"cleanup":await _L(n);break;case"backup":s[0]==="list"?await SL(n):await wL(n);break;case"doctor":await EL(n);break;case"retention":await kL(s[0],n);break;case"vacuum":await $L(n);break;case"generate":await TL(n);break;case"clean":await RL(n);break;default:console.log(`Unknown command: ${e}`),console.log(""),console.log("Available commands:"),console.log(" status Show worker and queue status"),console.log(" search Search memories"),console.log(" export Export memories as JSON"),console.log(" import [file] Import memories from file or stdin"),console.log(" cleanup Run cleanup tasks"),console.log(" backup Create a backup"),console.log(" backup list List existing backups"),console.log(" doctor Diagnose issues"),console.log(" retention Show retention policy"),console.log(" retention preview Preview cleanup"),console.log(" retention run Run cleanup"),console.log(" retention archive Show archived observations"),console.log(" vacuum Rebuild vector database HNSW index"),console.log(" generate Generate CLAUDE.md files for project folders"),console.log(" clean Remove auto-generated CLAUDE.md content"),console.log(""),console.log("Options:"),console.log(" --json, -j Output as JSON"),console.log(" --project, -p Filter by project"),console.log(" --limit, -l Limit results"),console.log(" --dry-run, -n Preview changes without writing"),process.exit(1)}}catch(i){n.json?console.log(JSON.stringify({error:i instanceof Error?i.message:"Unknown error"})):console.error(`Error: ${i instanceof Error?i.message:"Unknown error"}`),process.exit(1)}}var OL,Y0=xe(()=>{"use strict";_n();OL={}});function Fpe(){try{return(0,PL.statSync)("/dev/stdin")!==null}catch{try{return process.stdin.readable||process.stdin.isTTY===!0}catch{return!1}}}async function CL(){if(Fpe())return new Promise((t,e)=>{let r="",n=setTimeout(()=>{t(void 0)},100),s;process.stdin.on("data",i=>{clearTimeout(n),s&&clearTimeout(s),r+=i,s=setTimeout(()=>{try{t(r.trim()?JSON.parse(r):void 0)}catch(a){e(new Error(`Failed to parse hook input: ${a}`))}},3e3)}),process.stdin.on("end",()=>{clearTimeout(n),s&&clearTimeout(s);try{t(r.trim()?JSON.parse(r):void 0)}catch(i){e(new Error(`Failed to parse hook input: ${i}`))}}),process.stdin.on("error",()=>{clearTimeout(n),s&&clearTimeout(s),t(void 0)})})}var PL,IL=xe(()=>{"use strict";PL=require("fs")});var AL,NL=xe(()=>{"use strict";AL={normalizeInput(t){let e=t??{};return{sessionId:e.session_id,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){return t.hookSpecificOutput?{hookSpecificOutput:t.hookSpecificOutput}:{continue:t.continue??!0,suppressOutput:t.suppressOutput??!0}}}});var jL,DL=xe(()=>{"use strict";jL={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}}});function ML(t){switch(t){case"claude-code":return AL;case"raw":return jL;default:throw new Error(`Unknown platform: ${t}`)}}var zL=xe(()=>{"use strict";NL();DL()});function Upe(t){return t.includes(":")&&!t.startsWith("[")?`[${t}]`:t}function ti(){if(uh!==null)return uh;let t=xn(),e=Cr();return uh={mode:"local",baseUrl:`http://${Upe(t)}:${e}`,authHeaders:{},timeoutMs:_$(er.DEFAULT),verifySsl:!0},uh}var uh,Mu=xe(()=>{"use strict";_n();wa();uh=null});function Hpe(t){if(t instanceof Error){let e=t.code;if(e&&LL.includes(e))return!0;let r=t.message||"";return LL.some(n=>r.includes(n))}return!1}function Bpe(t,e=100,r=1e3){let n=e*Math.pow(2,t),s=Math.min(n,r),i=s*.25*(Math.random()*2-1);return Math.round(s+i)}function Wpe(t){return new Promise(e=>setTimeout(e,t))}async function ph(t,e,r={}){let{maxRetries:n=3,baseDelayMs:s=100,maxDelayMs:i=1e3}=r,a;for(let o=0;o<=n;o++)try{return await fetch(t,e)}catch(c){if(a=c,!Hpe(c)||o>=n)throw c;let l=Bpe(o,s,i);await Wpe(l)}throw a??new Error("fetchWithRetry failed")}var LL,K0=xe(()=>{"use strict";LL=["ECONNRESET","ECONNREFUSED","ETIMEDOUT","ENOTFOUND","EAI_AGAIN","UND_ERR_SOCKET","UND_ERR_CONNECT_TIMEOUT","UND_ERR_HEADERS_TIMEOUT"]});async function Es(t,e,r={}){let{endpointConfig:n,...s}=r,i=new Headers(e?.headers);if(n?.authHeaders)for(let[a,o]of Object.entries(n.authHeaders))i.set(a,o);return e?.body&&!i.has("Content-Type")&&i.set("Content-Type","application/json"),ph(t,{...e,headers:i},s)}var zu=xe(()=>{"use strict";K0()});var dh,qL,FL,J0,Q0=xe(()=>{"use strict";dh=require("fs"),qL=ie(require("path"),1),FL=require("os");Mu();zu();zi();re();J0={async execute(t){if(process.env.CLAUDE_PILOT_NO_CONTEXT==="1"||process.env.CLAUDE_PILOT_NO_CONTEXT==="true")return{hookSpecificOutput:{hookEventName:"SessionStart",additionalContext:""}};let e=ti(),r=t.cwd??process.cwd(),s=oM(r).allProjects.join(","),i=`${e.baseUrl}/api/context/inject?projects=${encodeURIComponent(s)}`,a=process.env.PILOT_SESSION_ID;if(a){let u=qL.default.join((0,FL.homedir)(),".pilot","sessions",a,"active_plan.json");try{if((0,dh.existsSync)(u)){let p=JSON.parse((0,dh.readFileSync)(u,"utf-8"));p.plan_path&&(i+=`&planPath=${encodeURIComponent(p.plan_path)}`)}}catch(p){_.debug("HOOK","Failed to read active plan file",{planFilePath:u},p)}}let o=await Es(i,void 0,{endpointConfig:e});if(!o.ok)throw new Error(`Context generation failed: ${o.status}`);return{hookSpecificOutput:{hookEventName:"SessionStart",additionalContext:(await o.text()).trim()}}}}});function Zpe(t){let e=(0,UL.join)(t,".pilot/memory.json");if(!(0,mh.existsSync)(e))return null;try{let r=(0,mh.readFileSync)(e,"utf-8");return JSON.parse(r)}catch{return null}}function Ho(t){let e=Zpe(t);return e?e.enabled===!1:!1}function Vpe(t){let e=t.replace(/[.+^${}()|[\]\\]/g,"\\$&").replace(/\*/g,".*").replace(/\?/g,".");return new RegExp(`^${e}$`,"i")}function Gpe(t,e){for(let r of e)if(Vpe(r).test(t))return!0;return!1}function Bo(t){if(!t)return!1;let e=Me.loadFromFile(ar),r=[];try{let n=JSON.parse(e.CLAUDE_PILOT_EXCLUDE_PROJECTS||"[]");Array.isArray(n)&&(r=n.filter(s=>typeof s=="string"&&s.length>0))}catch{return!1}return r.length===0?!1:Gpe(t,r)}var mh,UL,fh=xe(()=>{"use strict";mh=require("fs"),UL=require("path");Br();yr()});var X0,ew=xe(()=>{"use strict";Mu();zu();fh();zi();re();X0={async execute(t){let e=ti(),{sessionId:r,cwd:n,prompt:s}=t;if(!s)return _.debug("HOOK","session-init: Empty prompt received, skipping session initialization"),{continue:!0,suppressOutput:!0};let i=fs(n);if(Ho(n))return _.debug("HOOK","session-init: Memory disabled by .pilot/memory.json",{project:i,cwd:n}),{continue:!0,suppressOutput:!0};if(Bo(i))return _.debug("HOOK","session-init: Project excluded by CLAUDE_PILOT_EXCLUDE_PROJECTS",{project:i}),{continue:!0,suppressOutput:!0};_.debug("HOOK","session-init: Calling /api/sessions/init",{contentSessionId:r,project:i,mode:e.mode});let a=await Es(`${e.baseUrl}/api/sessions/init`,{method:"POST",body:JSON.stringify({contentSessionId:r,project:i,prompt:s,projectRoot:n})},{endpointConfig:e});if(!a.ok)throw new Error(`Session initialization failed: ${a.status}`);let o=await a.json(),c=o.sessionDbId,l=o.promptNumber;if(_.debug("HOOK","session-init: Received from /api/sessions/init",{sessionDbId:c,promptNumber:l,skipped:o.skipped}),_.debug("HOOK",`[ALIGNMENT] Hook Entry | contentSessionId=${r} | prompt#=${l} | sessionDbId=${c}`),o.skipped&&o.reason==="private")return _.info("HOOK",`INIT_COMPLETE | sessionDbId=${c} | promptNumber=${l} | skipped=true | reason=private`,{sessionId:c}),{continue:!0,suppressOutput:!0};if(c){let u=s.startsWith("/")?s.substring(1):s;_.debug("HOOK","session-init: Calling /sessions/{sessionDbId}/init",{sessionDbId:c,promptNumber:l});let p=await Es(`${e.baseUrl}/sessions/${c}/init`,{method:"POST",body:JSON.stringify({userPrompt:u,promptNumber:l})},{endpointConfig:e});if(!p.ok)throw new Error(`SDK agent start failed: ${p.status}`)}return _.info("HOOK",`INIT_COMPLETE | sessionDbId=${c} | promptNumber=${l} | project=${i}`,{sessionId:c}),{continue:!0,suppressOutput:!0}}}});var tw,rw=xe(()=>{"use strict";Mu();zu();fh();zi();re();tw={async execute(t){let e=ti(),{sessionId:r,cwd:n,toolName:s,toolInput:i,toolResponse:a}=t;if(!s)throw new Error("observationHandler requires toolName");if(Ho(n))return _.debug("HOOK","observation: Memory disabled by .pilot/memory.json",{cwd:n}),{continue:!0,suppressOutput:!0};let o=fs(n);if(Bo(o))return _.debug("HOOK","observation: Project excluded by CLAUDE_PILOT_EXCLUDE_PROJECTS",{project:o}),{continue:!0,suppressOutput:!0};let c=_.formatTool(s,i);if(_.dataIn("HOOK",`PostToolUse: ${c}`,{workerUrl:e.baseUrl,mode:e.mode}),!n)throw new Error(`Missing cwd in PostToolUse hook input for session ${r}, tool ${s}`);let l=await Es(`${e.baseUrl}/api/sessions/observations`,{method:"POST",body:JSON.stringify({contentSessionId:r,tool_name:s,tool_input:i,tool_response:a,cwd:n})},{endpointConfig:e});if(!l.ok)throw new Error(`Observation storage failed: ${l.status}`);return _.debug("HOOK","Observation sent successfully",{toolName:s,mode:e.mode}),{continue:!0,suppressOutput:!0}}}});function HL(t,e,r=!1){if(!t||!(0,hh.existsSync)(t))throw new Error(`Transcript path missing or file does not exist: ${t}`);let n=(0,hh.readFileSync)(t,"utf-8").trim();if(!n)throw new Error(`Transcript file exists but is empty: ${t}`);let s=n.split(` `),i=!1;for(let a=s.length-1;a>=0;a--){let o=JSON.parse(s[a]);if(o.type===e&&(i=!0,o.message?.content)){let c="",l=o.message.content;if(typeof l=="string")c=l;else if(Array.isArray(l))c=l.filter(u=>u.type==="text").map(u=>u.text).join(` `);else throw new Error(`Unknown message content format in transcript. Type: ${typeof l}`);return r&&(c=c.replace(/[\s\S]*?<\/system-reminder>/g,""),c=c.replace(/\n{3,}/g,` -`).trim()),c}}if(!i)throw new Error(`No message found for role '${e}' in transcript: ${t}`);return""}var ph,ML=xe(()=>{"use strict";ph=require("fs")});var J0,Q0=xe(()=>{"use strict";ju();Du();uh();Mi();se();ML();J0={async execute(t){let e=ei(),{sessionId:r,cwd:n,transcriptPath:s}=t;if(Fo(n))return _.debug("HOOK","summarize: Memory disabled by .pilot/memory.json",{cwd:n}),{continue:!0,suppressOutput:!0};let i=fs(n);if(Uo(i))return _.debug("HOOK","summarize: Project excluded by CLAUDE_PILOT_EXCLUDE_PROJECTS",{project:i}),{continue:!0,suppressOutput:!0};if(!s)throw new Error(`Missing transcriptPath in Stop hook input for session ${r}`);let a=DL(s,"assistant",!0);return _.dataIn("HOOK","Stop: Requesting summary",{workerUrl:e.baseUrl,mode:e.mode,hasLastAssistantMessage:!!a}),(await Es(`${e.baseUrl}/api/sessions/summarize`,{method:"POST",body:JSON.stringify({contentSessionId:r,last_assistant_message:a})},{endpointConfig:e})).ok?(_.debug("HOOK","Summary request sent successfully",{mode:e.mode}),{continue:!0,suppressOutput:!0}):{continue:!0,suppressOutput:!0}}}});var zL,X0,ew=xe(()=>{"use strict";zL=require("path");_n();B0();_a();X0={async execute(t){let e=d$(),r=(0,zL.basename)(t.cwd??process.cwd()),n=await oh(`${e}/api/context/inject?project=${encodeURIComponent(r)}&colors=true`,{method:"GET"});if(!n.ok)throw new Error(`Failed to fetch context: ${n.status}`);let s=await n.text();return console.error(` +`).trim()),c}}if(!i)throw new Error(`No message found for role '${e}' in transcript: ${t}`);return""}var hh,BL=xe(()=>{"use strict";hh=require("fs")});var nw,sw=xe(()=>{"use strict";Mu();zu();fh();zi();re();BL();nw={async execute(t){let e=ti(),{sessionId:r,cwd:n,transcriptPath:s}=t;if(Ho(n))return _.debug("HOOK","summarize: Memory disabled by .pilot/memory.json",{cwd:n}),{continue:!0,suppressOutput:!0};let i=fs(n);if(Bo(i))return _.debug("HOOK","summarize: Project excluded by CLAUDE_PILOT_EXCLUDE_PROJECTS",{project:i}),{continue:!0,suppressOutput:!0};if(!s)throw new Error(`Missing transcriptPath in Stop hook input for session ${r}`);let a=HL(s,"assistant",!0);return _.dataIn("HOOK","Stop: Requesting summary",{workerUrl:e.baseUrl,mode:e.mode,hasLastAssistantMessage:!!a}),(await Es(`${e.baseUrl}/api/sessions/summarize`,{method:"POST",body:JSON.stringify({contentSessionId:r,last_assistant_message:a})},{endpointConfig:e})).ok?(_.debug("HOOK","Summary request sent successfully",{mode:e.mode}),{continue:!0,suppressOutput:!0}):{continue:!0,suppressOutput:!0}}}});var WL,iw,aw=xe(()=>{"use strict";WL=require("path");_n();K0();wa();iw={async execute(t){let e=y$(),r=(0,WL.basename)(t.cwd??process.cwd()),n=await ph(`${e}/api/context/inject?project=${encodeURIComponent(r)}&colors=true`,{method:"GET"});if(!n.ok)throw new Error(`Failed to fetch context: ${n.status}`);let s=await n.text();return console.error(` `+String.fromCodePoint(128221)+` Pilot Memory Context Loaded `+String.fromCodePoint(8505,65039)+` Note: This appears as stderr but is informational only @@ -906,9 +906,9 @@ ${J.dim}No previous sessions found for this project yet.${J.reset} `+String.fromCodePoint(128172)+` Community https://discord.gg/J4wttp9vDu `+String.fromCodePoint(128250)+` Watch live in browser ${e}/ -`),{exitCode:Bc.USER_MESSAGE_ONLY}}}});function LL(t){let e=Upe[t];if(!e)throw new Error(`Unknown event type: ${t}`);return e}var Upe,qL=xe(()=>{"use strict";Z0();G0();K0();Q0();ew();Z0();G0();K0();Q0();ew();Upe={context:W0,"session-init":V0,observation:Y0,summarize:J0,"user-message":X0}});var FL={};Nn(FL,{hookCommand:()=>Hpe});async function Hpe(t,e){try{let r=PL(t),n=LL(e),s=await EL(),i=r.normalizeInput(s);i.platform=t;let a=await n.execute(i),o=r.formatOutput(a);console.log(JSON.stringify(o)),process.exit(a.exitCode??Bc.SUCCESS)}catch(r){console.error(`Hook error (fail-open): ${r}`),console.log(JSON.stringify(e==="context"?{hookSpecificOutput:{hookEventName:"SessionStart",additionalContext:""}}:{continue:!0,suppressOutput:!0})),process.exit(Bc.SUCCESS)}}var UL=xe(()=>{"use strict";kL();CL();qL();_a()});var Vpe={};Nn(Vpe,{WorkerService:()=>dh,buildStatusOutput:()=>WL,verifyLicense:()=>ZL});module.exports=Bo(Vpe);var Mu=pe(require("path"),1),HL=require("child_process"),tw=require("fs"),BL=require("os");var Kpe=Object.freeze({status:"aborted"});function z(t,e,r){function n(o,c){var l;Object.defineProperty(o,"_zod",{value:o._zod??{},enumerable:!1}),(l=o._zod).traits??(l.traits=new Set),o._zod.traits.add(t),e(o,c);for(let u in a.prototype)u in o||Object.defineProperty(o,u,{value:a.prototype[u].bind(o)});o._zod.constr=a,o._zod.def=c}let s=r?.Parent??Object;class i extends s{}Object.defineProperty(i,"name",{value:t});function a(o){var c;let l=r?.Parent?new i:this;n(l,o),(c=l._zod).deferred??(c.deferred=[]);for(let u of l._zod.deferred)u();return l}return Object.defineProperty(a,"init",{value:n}),Object.defineProperty(a,Symbol.hasInstance,{value:o=>r?.Parent&&o instanceof r.Parent?!0:o?._zod?.traits?.has(t)}),Object.defineProperty(a,"name",{value:t}),a}var rs=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Lu={};function Gr(t){return t&&Object.assign(Lu,t),Lu}var Be={};Nn(Be,{BIGINT_FORMAT_RANGES:()=>aw,Class:()=>gh,NUMBER_FORMAT_RANGES:()=>Eh,aborted:()=>ri,allowsEval:()=>_h,assert:()=>nq,assertEqual:()=>XL,assertIs:()=>tq,assertNever:()=>rq,assertNotEqual:()=>eq,assignProp:()=>xh,cached:()=>Zo,captureStackTrace:()=>Fu,cleanEnum:()=>gq,cleanRegex:()=>Go,clone:()=>jn,createTransparentProxy:()=>lq,defineLazy:()=>it,esc:()=>ti,escapeRegex:()=>ks,extend:()=>dq,finalizeIssue:()=>dn,floatSafeRemainder:()=>bh,getElementAtPath:()=>sq,getEnumValues:()=>vh,getLengthableOrigin:()=>Yo,getParsedType:()=>cq,getSizableOrigin:()=>ow,isObject:()=>Gi,isPlainObject:()=>Yi,issue:()=>kh,joinValues:()=>qu,jsonStringifyReplacer:()=>yh,merge:()=>mq,normalizeParams:()=>me,nullish:()=>Vo,numKeys:()=>oq,omit:()=>pq,optionalKeys:()=>Sh,partial:()=>fq,pick:()=>uq,prefixIssues:()=>Dn,primitiveTypes:()=>iw,promiseAllObject:()=>iq,propertyKeyTypes:()=>wh,randomString:()=>aq,required:()=>hq,stringifyPrimitive:()=>Uu,unwrapMessage:()=>Wo});function XL(t){return t}function eq(t){return t}function tq(t){}function rq(t){throw new Error}function nq(t){}function vh(t){let e=Object.values(t).filter(n=>typeof n=="number");return Object.entries(t).filter(([n,s])=>e.indexOf(+n)===-1).map(([n,s])=>s)}function qu(t,e="|"){return t.map(r=>Uu(r)).join(e)}function yh(t,e){return typeof e=="bigint"?e.toString():e}function Zo(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function Vo(t){return t==null}function Go(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function bh(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,s=r>n?r:n,i=Number.parseInt(t.toFixed(s).replace(".","")),a=Number.parseInt(e.toFixed(s).replace(".",""));return i%a/10**s}function it(t,e,r){Object.defineProperty(t,e,{get(){{let s=r();return t[e]=s,s}throw new Error("cached value already set")},set(s){Object.defineProperty(t,e,{value:s})},configurable:!0})}function xh(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function sq(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function iq(t){let e=Object.keys(t),r=e.map(n=>t[n]);return Promise.all(r).then(n=>{let s={};for(let i=0;i{};function Gi(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var _h=Zo(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function Yi(t){if(Gi(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(Gi(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function oq(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var cq=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}`)}},wh=new Set(["string","number","symbol"]),iw=new Set(["string","number","bigint","boolean","symbol","undefined"]);function ks(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function jn(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function me(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 lq(t){let e;return new Proxy({},{get(r,n,s){return e??(e=t()),Reflect.get(e,n,s)},set(r,n,s,i){return e??(e=t()),Reflect.set(e,n,s,i)},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,s){return e??(e=t()),Reflect.defineProperty(e,n,s)}})}function Uu(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Sh(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Eh={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]},aw={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function uq(t,e){let r={},n=t._zod.def;for(let s in e){if(!(s in n.shape))throw new Error(`Unrecognized key: "${s}"`);e[s]&&(r[s]=n.shape[s])}return jn(t,{...t._zod.def,shape:r,checks:[]})}function pq(t,e){let r={...t._zod.def.shape},n=t._zod.def;for(let s in e){if(!(s in n.shape))throw new Error(`Unrecognized key: "${s}"`);e[s]&&delete r[s]}return jn(t,{...t._zod.def,shape:r,checks:[]})}function dq(t,e){if(!Yi(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 xh(this,"shape",n),n},checks:[]};return jn(t,r)}function mq(t,e){return jn(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return xh(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function fq(t,e,r){let n=e._zod.def.shape,s={...n};if(r)for(let i in r){if(!(i in n))throw new Error(`Unrecognized key: "${i}"`);r[i]&&(s[i]=t?new t({type:"optional",innerType:n[i]}):n[i])}else for(let i in n)s[i]=t?new t({type:"optional",innerType:n[i]}):n[i];return jn(e,{...e._zod.def,shape:s,checks:[]})}function hq(t,e,r){let n=e._zod.def.shape,s={...n};if(r)for(let i in r){if(!(i in s))throw new Error(`Unrecognized key: "${i}"`);r[i]&&(s[i]=new t({type:"nonoptional",innerType:n[i]}))}else for(let i in n)s[i]=new t({type:"nonoptional",innerType:n[i]});return jn(e,{...e._zod.def,shape:s,checks:[]})}function ri(t,e=0){for(let r=e;r{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function Wo(t){return typeof t=="string"?t:t?.message}function dn(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let s=Wo(t.inst?._zod.def?.error?.(t))??Wo(e?.error?.(t))??Wo(r.customError?.(t))??Wo(r.localeError?.(t))??"Invalid input";n.message=s}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function ow(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function Yo(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function kh(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function gq(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var gh=class{constructor(...e){}};var cw=(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,yh,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Hu=z("$ZodError",cw),Th=z("$ZodError",cw,{Parent:Error});function lw(t,e=r=>r.message){let r={},n=[];for(let s of t.issues)s.path.length>0?(r[s.path[0]]=r[s.path[0]]||[],r[s.path[0]].push(e(s))):n.push(e(s));return{formErrors:n,fieldErrors:r}}function uw(t,e){let r=e||function(i){return i.message},n={_errors:[]},s=i=>{for(let a of i.issues)if(a.code==="invalid_union"&&a.errors.length)a.errors.map(o=>s({issues:o}));else if(a.code==="invalid_key")s({issues:a.issues});else if(a.code==="invalid_element")s({issues:a.issues});else if(a.path.length===0)n._errors.push(r(a));else{let o=n,c=0;for(;c(e,r,n,s)=>{let i=n?Object.assign(n,{async:!1}):{async:!1},a=e._zod.run({value:r,issues:[]},i);if(a instanceof Promise)throw new rs;if(a.issues.length){let o=new(s?.Err??t)(a.issues.map(c=>dn(c,i,Gr())));throw Fu(o,s?.callee),o}return a.value};var dw=t=>async(e,r,n,s)=>{let i=n?Object.assign(n,{async:!0}):{async:!0},a=e._zod.run({value:r,issues:[]},i);if(a instanceof Promise&&(a=await a),a.issues.length){let o=new(s?.Err??t)(a.issues.map(c=>dn(c,i,Gr())));throw Fu(o,s?.callee),o}return a.value};var Rh=t=>(e,r,n)=>{let s=n?{...n,async:!1}:{async:!1},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise)throw new rs;return i.issues.length?{success:!1,error:new(t??Hu)(i.issues.map(a=>dn(a,s,Gr())))}:{success:!0,data:i.value}},Ko=Rh(Th),$h=t=>async(e,r,n)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},i=e._zod.run({value:r,issues:[]},s);return i instanceof Promise&&(i=await i),i.issues.length?{success:!1,error:new t(i.issues.map(a=>dn(a,s,Gr())))}:{success:!0,data:i.value}},Bu=$h(Th);var mw=/^[cC][^\s-]{8,}$/,fw=/^[0-9a-z]+$/,hw=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,gw=/^[0-9a-vA-V]{20}$/,vw=/^[A-Za-z0-9]{27}$/,yw=/^[a-zA-Z0-9_-]{21}$/,bw=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var xw=/^([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})$/,Oh=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)$/;var _w=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var yq="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function ww(){return new RegExp(yq,"u")}var Sw=/^(?:(?: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])$/,Ew=/^(([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})$/,kw=/^((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])$/,Tw=/^(([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])$/,Rw=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Ph=/^[A-Za-z0-9_-]*$/,$w=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var Ow=/^\+(?:[0-9]){6,14}[0-9]$/,Pw="(?:(?:\\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])))",Cw=new RegExp(`^${Pw}$`);function Iw(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 Aw(t){return new RegExp(`^${Iw(t)}$`)}function Nw(t){let e=Iw({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(`^${Pw}T(?:${n})$`)}var jw=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var Dw=/^\d+$/,Mw=/^-?\d+(?:\.\d+)?/i,zw=/true|false/i,Lw=/null/i;var qw=/^[^A-Z]*$/,Fw=/^[^a-z]*$/;var rr=z("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),Uw={number:"number",bigint:"bigint",object:"date"},Ih=z("$ZodCheckLessThan",(t,e)=>{rr.init(t,e);let r=Uw[typeof e.value];t._zod.onattach.push(n=>{let s=n._zod.bag,i=(e.inclusive?s.maximum:s.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value{(e.inclusive?n.value<=e.value:n.value{rr.init(t,e);let r=Uw[typeof e.value];t._zod.onattach.push(n=>{let s=n._zod.bag,i=(e.inclusive?s.minimum:s.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>i&&(e.inclusive?s.minimum=e.value:s.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})}}),Hw=z("$ZodCheckMultipleOf",(t,e)=>{rr.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):bh(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})}}),Bw=z("$ZodCheckNumberFormat",(t,e)=>{rr.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[s,i]=Eh[e.format];t._zod.onattach.push(a=>{let o=a._zod.bag;o.format=e.format,o.minimum=s,o.maximum=i,r&&(o.pattern=Dw)}),t._zod.check=a=>{let o=a.value;if(r){if(!Number.isInteger(o)){a.issues.push({expected:n,format:e.format,code:"invalid_type",input:o,inst:t});return}if(!Number.isSafeInteger(o)){o>0?a.issues.push({input:o,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,continue:!e.abort}):a.issues.push({input:o,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}}oi&&a.issues.push({origin:"number",input:o,code:"too_big",maximum:i,inst:t})}});var Ww=z("$ZodCheckMaxLength",(t,e)=>{var r;rr.init(t,e),(r=t._zod.def).when??(r.when=n=>{let s=n.value;return!Vo(s)&&s.length!==void 0}),t._zod.onattach.push(n=>{let s=n._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum{let s=n.value;if(s.length<=e.maximum)return;let a=Yo(s);n.issues.push({origin:a,code:"too_big",maximum:e.maximum,inclusive:!0,input:s,inst:t,continue:!e.abort})}}),Zw=z("$ZodCheckMinLength",(t,e)=>{var r;rr.init(t,e),(r=t._zod.def).when??(r.when=n=>{let s=n.value;return!Vo(s)&&s.length!==void 0}),t._zod.onattach.push(n=>{let s=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>s&&(n._zod.bag.minimum=e.minimum)}),t._zod.check=n=>{let s=n.value;if(s.length>=e.minimum)return;let a=Yo(s);n.issues.push({origin:a,code:"too_small",minimum:e.minimum,inclusive:!0,input:s,inst:t,continue:!e.abort})}}),Vw=z("$ZodCheckLengthEquals",(t,e)=>{var r;rr.init(t,e),(r=t._zod.def).when??(r.when=n=>{let s=n.value;return!Vo(s)&&s.length!==void 0}),t._zod.onattach.push(n=>{let s=n._zod.bag;s.minimum=e.length,s.maximum=e.length,s.length=e.length}),t._zod.check=n=>{let s=n.value,i=s.length;if(i===e.length)return;let a=Yo(s),o=i>e.length;n.issues.push({origin:a,...o?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:n.value,inst:t,continue:!e.abort})}}),Jo=z("$ZodCheckStringFormat",(t,e)=>{var r,n;rr.init(t,e),t._zod.onattach.push(s=>{let i=s._zod.bag;i.format=e.format,e.pattern&&(i.patterns??(i.patterns=new Set),i.patterns.add(e.pattern))}),e.pattern?(r=t._zod).check??(r.check=s=>{e.pattern.lastIndex=0,!e.pattern.test(s.value)&&s.issues.push({origin:"string",code:"invalid_format",format:e.format,input:s.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(n=t._zod).check??(n.check=()=>{})}),Gw=z("$ZodCheckRegex",(t,e)=>{Jo.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})}}),Yw=z("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=qw),Jo.init(t,e)}),Kw=z("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=Fw),Jo.init(t,e)}),Jw=z("$ZodCheckIncludes",(t,e)=>{rr.init(t,e);let r=ks(e.includes),n=new RegExp(typeof e.position=="number"?`^.{${e.position}}${r}`:r);e.pattern=n,t._zod.onattach.push(s=>{let i=s._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(n)}),t._zod.check=s=>{s.value.includes(e.includes,e.position)||s.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:s.value,inst:t,continue:!e.abort})}}),Qw=z("$ZodCheckStartsWith",(t,e)=>{rr.init(t,e);let r=new RegExp(`^${ks(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let s=n._zod.bag;s.patterns??(s.patterns=new Set),s.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})}}),Xw=z("$ZodCheckEndsWith",(t,e)=>{rr.init(t,e);let r=new RegExp(`.*${ks(e.suffix)}$`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let s=n._zod.bag;s.patterns??(s.patterns=new Set),s.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})}});var eS=z("$ZodCheckOverwrite",(t,e)=>{rr.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var Wu=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(` +`),{exitCode:Zc.USER_MESSAGE_ONLY}}}});function ZL(t){let e=Ype[t];if(!e)throw new Error(`Unknown event type: ${t}`);return e}var Ype,VL=xe(()=>{"use strict";Q0();ew();rw();sw();aw();Q0();ew();rw();sw();aw();Ype={context:J0,"session-init":X0,observation:tw,summarize:nw,"user-message":iw}});var GL={};Nn(GL,{hookCommand:()=>Kpe});async function Kpe(t,e){try{let r=ML(t),n=ZL(e),s=await CL(),i=r.normalizeInput(s);i.platform=t;let a=await n.execute(i),o=r.formatOutput(a);console.log(JSON.stringify(o)),process.exit(a.exitCode??Zc.SUCCESS)}catch(r){console.error(`Hook error (fail-open): ${r}`),console.log(JSON.stringify(e==="context"?{hookSpecificOutput:{hookEventName:"SessionStart",additionalContext:""}}:{continue:!0,suppressOutput:!0})),process.exit(Zc.SUCCESS)}}var YL=xe(()=>{"use strict";IL();zL();VL();wa()});var ede={};Nn(ede,{WorkerService:()=>gh,buildStatusOutput:()=>QL,verifyLicense:()=>XL});module.exports=Zo(ede);var Lu=ie(require("path"),1),KL=require("child_process"),ow=require("fs"),JL=require("os");var nde=Object.freeze({status:"aborted"});function z(t,e,r){function n(o,c){var l;Object.defineProperty(o,"_zod",{value:o._zod??{},enumerable:!1}),(l=o._zod).traits??(l.traits=new Set),o._zod.traits.add(t),e(o,c);for(let u in a.prototype)u in o||Object.defineProperty(o,u,{value:a.prototype[u].bind(o)});o._zod.constr=a,o._zod.def=c}let s=r?.Parent??Object;class i extends s{}Object.defineProperty(i,"name",{value:t});function a(o){var c;let l=r?.Parent?new i:this;n(l,o),(c=l._zod).deferred??(c.deferred=[]);for(let u of l._zod.deferred)u();return l}return Object.defineProperty(a,"init",{value:n}),Object.defineProperty(a,Symbol.hasInstance,{value:o=>r?.Parent&&o instanceof r.Parent?!0:o?._zod?.traits?.has(t)}),Object.defineProperty(a,"name",{value:t}),a}var rs=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Fu={};function Gr(t){return t&&Object.assign(Fu,t),Fu}var Be={};Nn(Be,{BIGINT_FORMAT_RANGES:()=>dw,Class:()=>xh,NUMBER_FORMAT_RANGES:()=>$h,aborted:()=>ni,allowsEval:()=>kh,assert:()=>uq,assertEqual:()=>aq,assertIs:()=>cq,assertNever:()=>lq,assertNotEqual:()=>oq,assignProp:()=>Eh,cached:()=>Go,captureStackTrace:()=>Hu,cleanEnum:()=>Sq,cleanRegex:()=>Ko,clone:()=>jn,createTransparentProxy:()=>gq,defineLazy:()=>it,esc:()=>ri,escapeRegex:()=>ks,extend:()=>bq,finalizeIssue:()=>dn,floatSafeRemainder:()=>Sh,getElementAtPath:()=>pq,getEnumValues:()=>_h,getLengthableOrigin:()=>Jo,getParsedType:()=>hq,getSizableOrigin:()=>mw,isObject:()=>Yi,isPlainObject:()=>Ki,issue:()=>Oh,joinValues:()=>Uu,jsonStringifyReplacer:()=>wh,merge:()=>xq,normalizeParams:()=>me,nullish:()=>Yo,numKeys:()=>fq,omit:()=>yq,optionalKeys:()=>Rh,partial:()=>_q,pick:()=>vq,prefixIssues:()=>Dn,primitiveTypes:()=>pw,promiseAllObject:()=>dq,propertyKeyTypes:()=>Th,randomString:()=>mq,required:()=>wq,stringifyPrimitive:()=>Bu,unwrapMessage:()=>Vo});function aq(t){return t}function oq(t){return t}function cq(t){}function lq(t){throw new Error}function uq(t){}function _h(t){let e=Object.values(t).filter(n=>typeof n=="number");return Object.entries(t).filter(([n,s])=>e.indexOf(+n)===-1).map(([n,s])=>s)}function Uu(t,e="|"){return t.map(r=>Bu(r)).join(e)}function wh(t,e){return typeof e=="bigint"?e.toString():e}function Go(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function Yo(t){return t==null}function Ko(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Sh(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,s=r>n?r:n,i=Number.parseInt(t.toFixed(s).replace(".","")),a=Number.parseInt(e.toFixed(s).replace(".",""));return i%a/10**s}function it(t,e,r){Object.defineProperty(t,e,{get(){{let s=r();return t[e]=s,s}throw new Error("cached value already set")},set(s){Object.defineProperty(t,e,{value:s})},configurable:!0})}function Eh(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function pq(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function dq(t){let e=Object.keys(t),r=e.map(n=>t[n]);return Promise.all(r).then(n=>{let s={};for(let i=0;i{};function Yi(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var kh=Go(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function Ki(t){if(Yi(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(Yi(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function fq(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var hq=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}`)}},Th=new Set(["string","number","symbol"]),pw=new Set(["string","number","bigint","boolean","symbol","undefined"]);function ks(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function jn(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function me(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 gq(t){let e;return new Proxy({},{get(r,n,s){return e??(e=t()),Reflect.get(e,n,s)},set(r,n,s,i){return e??(e=t()),Reflect.set(e,n,s,i)},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,s){return e??(e=t()),Reflect.defineProperty(e,n,s)}})}function Bu(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Rh(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var $h={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]},dw={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function vq(t,e){let r={},n=t._zod.def;for(let s in e){if(!(s in n.shape))throw new Error(`Unrecognized key: "${s}"`);e[s]&&(r[s]=n.shape[s])}return jn(t,{...t._zod.def,shape:r,checks:[]})}function yq(t,e){let r={...t._zod.def.shape},n=t._zod.def;for(let s in e){if(!(s in n.shape))throw new Error(`Unrecognized key: "${s}"`);e[s]&&delete r[s]}return jn(t,{...t._zod.def,shape:r,checks:[]})}function bq(t,e){if(!Ki(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 Eh(this,"shape",n),n},checks:[]};return jn(t,r)}function xq(t,e){return jn(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return Eh(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function _q(t,e,r){let n=e._zod.def.shape,s={...n};if(r)for(let i in r){if(!(i in n))throw new Error(`Unrecognized key: "${i}"`);r[i]&&(s[i]=t?new t({type:"optional",innerType:n[i]}):n[i])}else for(let i in n)s[i]=t?new t({type:"optional",innerType:n[i]}):n[i];return jn(e,{...e._zod.def,shape:s,checks:[]})}function wq(t,e,r){let n=e._zod.def.shape,s={...n};if(r)for(let i in r){if(!(i in s))throw new Error(`Unrecognized key: "${i}"`);r[i]&&(s[i]=new t({type:"nonoptional",innerType:n[i]}))}else for(let i in n)s[i]=new t({type:"nonoptional",innerType:n[i]});return jn(e,{...e._zod.def,shape:s,checks:[]})}function ni(t,e=0){for(let r=e;r{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function Vo(t){return typeof t=="string"?t:t?.message}function dn(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let s=Vo(t.inst?._zod.def?.error?.(t))??Vo(e?.error?.(t))??Vo(r.customError?.(t))??Vo(r.localeError?.(t))??"Invalid input";n.message=s}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function mw(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function Jo(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Oh(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function Sq(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var xh=class{constructor(...e){}};var fw=(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,wh,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Wu=z("$ZodError",fw),Ph=z("$ZodError",fw,{Parent:Error});function hw(t,e=r=>r.message){let r={},n=[];for(let s of t.issues)s.path.length>0?(r[s.path[0]]=r[s.path[0]]||[],r[s.path[0]].push(e(s))):n.push(e(s));return{formErrors:n,fieldErrors:r}}function gw(t,e){let r=e||function(i){return i.message},n={_errors:[]},s=i=>{for(let a of i.issues)if(a.code==="invalid_union"&&a.errors.length)a.errors.map(o=>s({issues:o}));else if(a.code==="invalid_key")s({issues:a.issues});else if(a.code==="invalid_element")s({issues:a.issues});else if(a.path.length===0)n._errors.push(r(a));else{let o=n,c=0;for(;c(e,r,n,s)=>{let i=n?Object.assign(n,{async:!1}):{async:!1},a=e._zod.run({value:r,issues:[]},i);if(a instanceof Promise)throw new rs;if(a.issues.length){let o=new(s?.Err??t)(a.issues.map(c=>dn(c,i,Gr())));throw Hu(o,s?.callee),o}return a.value};var yw=t=>async(e,r,n,s)=>{let i=n?Object.assign(n,{async:!0}):{async:!0},a=e._zod.run({value:r,issues:[]},i);if(a instanceof Promise&&(a=await a),a.issues.length){let o=new(s?.Err??t)(a.issues.map(c=>dn(c,i,Gr())));throw Hu(o,s?.callee),o}return a.value};var Ch=t=>(e,r,n)=>{let s=n?{...n,async:!1}:{async:!1},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise)throw new rs;return i.issues.length?{success:!1,error:new(t??Wu)(i.issues.map(a=>dn(a,s,Gr())))}:{success:!0,data:i.value}},Qo=Ch(Ph),Ih=t=>async(e,r,n)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},i=e._zod.run({value:r,issues:[]},s);return i instanceof Promise&&(i=await i),i.issues.length?{success:!1,error:new t(i.issues.map(a=>dn(a,s,Gr())))}:{success:!0,data:i.value}},Zu=Ih(Ph);var bw=/^[cC][^\s-]{8,}$/,xw=/^[0-9a-z]+$/,_w=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,ww=/^[0-9a-vA-V]{20}$/,Sw=/^[A-Za-z0-9]{27}$/,Ew=/^[a-zA-Z0-9_-]{21}$/,kw=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Tw=/^([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})$/,Ah=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)$/;var Rw=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var kq="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function $w(){return new RegExp(kq,"u")}var Ow=/^(?:(?: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])$/,Pw=/^(([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})$/,Cw=/^((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])$/,Iw=/^(([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])$/,Aw=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Nh=/^[A-Za-z0-9_-]*$/,Nw=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var jw=/^\+(?:[0-9]){6,14}[0-9]$/,Dw="(?:(?:\\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])))",Mw=new RegExp(`^${Dw}$`);function zw(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 Lw(t){return new RegExp(`^${zw(t)}$`)}function qw(t){let e=zw({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(`^${Dw}T(?:${n})$`)}var Fw=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var Uw=/^\d+$/,Hw=/^-?\d+(?:\.\d+)?/i,Bw=/true|false/i,Ww=/null/i;var Zw=/^[^A-Z]*$/,Vw=/^[^a-z]*$/;var rr=z("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),Gw={number:"number",bigint:"bigint",object:"date"},Dh=z("$ZodCheckLessThan",(t,e)=>{rr.init(t,e);let r=Gw[typeof e.value];t._zod.onattach.push(n=>{let s=n._zod.bag,i=(e.inclusive?s.maximum:s.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value{(e.inclusive?n.value<=e.value:n.value{rr.init(t,e);let r=Gw[typeof e.value];t._zod.onattach.push(n=>{let s=n._zod.bag,i=(e.inclusive?s.minimum:s.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>i&&(e.inclusive?s.minimum=e.value:s.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})}}),Yw=z("$ZodCheckMultipleOf",(t,e)=>{rr.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):Sh(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})}}),Kw=z("$ZodCheckNumberFormat",(t,e)=>{rr.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[s,i]=$h[e.format];t._zod.onattach.push(a=>{let o=a._zod.bag;o.format=e.format,o.minimum=s,o.maximum=i,r&&(o.pattern=Uw)}),t._zod.check=a=>{let o=a.value;if(r){if(!Number.isInteger(o)){a.issues.push({expected:n,format:e.format,code:"invalid_type",input:o,inst:t});return}if(!Number.isSafeInteger(o)){o>0?a.issues.push({input:o,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,continue:!e.abort}):a.issues.push({input:o,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}}oi&&a.issues.push({origin:"number",input:o,code:"too_big",maximum:i,inst:t})}});var Jw=z("$ZodCheckMaxLength",(t,e)=>{var r;rr.init(t,e),(r=t._zod.def).when??(r.when=n=>{let s=n.value;return!Yo(s)&&s.length!==void 0}),t._zod.onattach.push(n=>{let s=n._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum{let s=n.value;if(s.length<=e.maximum)return;let a=Jo(s);n.issues.push({origin:a,code:"too_big",maximum:e.maximum,inclusive:!0,input:s,inst:t,continue:!e.abort})}}),Qw=z("$ZodCheckMinLength",(t,e)=>{var r;rr.init(t,e),(r=t._zod.def).when??(r.when=n=>{let s=n.value;return!Yo(s)&&s.length!==void 0}),t._zod.onattach.push(n=>{let s=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>s&&(n._zod.bag.minimum=e.minimum)}),t._zod.check=n=>{let s=n.value;if(s.length>=e.minimum)return;let a=Jo(s);n.issues.push({origin:a,code:"too_small",minimum:e.minimum,inclusive:!0,input:s,inst:t,continue:!e.abort})}}),Xw=z("$ZodCheckLengthEquals",(t,e)=>{var r;rr.init(t,e),(r=t._zod.def).when??(r.when=n=>{let s=n.value;return!Yo(s)&&s.length!==void 0}),t._zod.onattach.push(n=>{let s=n._zod.bag;s.minimum=e.length,s.maximum=e.length,s.length=e.length}),t._zod.check=n=>{let s=n.value,i=s.length;if(i===e.length)return;let a=Jo(s),o=i>e.length;n.issues.push({origin:a,...o?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:n.value,inst:t,continue:!e.abort})}}),Xo=z("$ZodCheckStringFormat",(t,e)=>{var r,n;rr.init(t,e),t._zod.onattach.push(s=>{let i=s._zod.bag;i.format=e.format,e.pattern&&(i.patterns??(i.patterns=new Set),i.patterns.add(e.pattern))}),e.pattern?(r=t._zod).check??(r.check=s=>{e.pattern.lastIndex=0,!e.pattern.test(s.value)&&s.issues.push({origin:"string",code:"invalid_format",format:e.format,input:s.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(n=t._zod).check??(n.check=()=>{})}),eS=z("$ZodCheckRegex",(t,e)=>{Xo.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})}}),tS=z("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=Zw),Xo.init(t,e)}),rS=z("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=Vw),Xo.init(t,e)}),nS=z("$ZodCheckIncludes",(t,e)=>{rr.init(t,e);let r=ks(e.includes),n=new RegExp(typeof e.position=="number"?`^.{${e.position}}${r}`:r);e.pattern=n,t._zod.onattach.push(s=>{let i=s._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(n)}),t._zod.check=s=>{s.value.includes(e.includes,e.position)||s.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:s.value,inst:t,continue:!e.abort})}}),sS=z("$ZodCheckStartsWith",(t,e)=>{rr.init(t,e);let r=new RegExp(`^${ks(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let s=n._zod.bag;s.patterns??(s.patterns=new Set),s.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})}}),iS=z("$ZodCheckEndsWith",(t,e)=>{rr.init(t,e);let r=new RegExp(`.*${ks(e.suffix)}$`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let s=n._zod.bag;s.patterns??(s.patterns=new Set),s.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})}});var aS=z("$ZodCheckOverwrite",(t,e)=>{rr.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var Vu=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(a=>a),s=Math.min(...n.map(a=>a.length-a.trimStart().length)),i=n.map(a=>a.slice(s)).map(a=>" ".repeat(this.indent*2)+a);for(let a of i)this.content.push(a)}compile(){let e=Function,r=this?.args,s=[...(this?.content??[""]).map(i=>` ${i}`)];return new e(...r,s.join(` -`))}};var rS={major:4,minor:0,patch:0};var at=z("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=rS;let n=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&n.unshift(t);for(let s of n)for(let i of s._zod.onattach)i(t);if(n.length===0)(r=t._zod).deferred??(r.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{let s=(i,a,o)=>{let c=ri(i),l;for(let u of a){if(u._zod.def.when){if(!u._zod.def.when(i))continue}else if(c)continue;let p=i.issues.length,d=u._zod.check(i);if(d instanceof Promise&&o?.async===!1)throw new rs;if(l||d instanceof Promise)l=(l??Promise.resolve()).then(async()=>{await d,i.issues.length!==p&&(c||(c=ri(i,p)))});else{if(i.issues.length===p)continue;c||(c=ri(i,p))}}return l?l.then(()=>i):i};t._zod.run=(i,a)=>{let o=t._zod.parse(i,a);if(o instanceof Promise){if(a.async===!1)throw new rs;return o.then(c=>s(c,n,a))}return s(o,n,a)}}t["~standard"]={validate:s=>{try{let i=Ko(t,s);return i.success?{value:i.data}:{issues:i.error?.issues}}catch{return Bu(t,s).then(a=>a.success?{value:a.data}:{issues:a.error?.issues})}},vendor:"zod",version:1}}),Vu=z("$ZodString",(t,e)=>{at.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??jw(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}}),ft=z("$ZodStringFormat",(t,e)=>{Jo.init(t,e),Vu.init(t,e)}),dS=z("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=xw),ft.init(t,e)}),mS=z("$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=Oh(n))}else e.pattern??(e.pattern=Oh());ft.init(t,e)}),fS=z("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=_w),ft.init(t,e)}),hS=z("$ZodURL",(t,e)=>{ft.init(t,e),t._zod.check=r=>{try{let n=r.value,s=new URL(n),i=s.href;e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(s.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:$w.source,input:r.value,inst:t,continue:!e.abort})),e.protocol&&(e.protocol.lastIndex=0,e.protocol.test(s.protocol.endsWith(":")?s.protocol.slice(0,-1):s.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("/")&&i.endsWith("/")?r.value=i.slice(0,-1):r.value=i;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:t,continue:!e.abort})}}}),gS=z("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=ww()),ft.init(t,e)}),vS=z("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=yw),ft.init(t,e)}),yS=z("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=mw),ft.init(t,e)}),bS=z("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=fw),ft.init(t,e)}),xS=z("$ZodULID",(t,e)=>{e.pattern??(e.pattern=hw),ft.init(t,e)}),_S=z("$ZodXID",(t,e)=>{e.pattern??(e.pattern=gw),ft.init(t,e)}),wS=z("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=vw),ft.init(t,e)}),SS=z("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=Nw(e)),ft.init(t,e)}),ES=z("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=Cw),ft.init(t,e)}),kS=z("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=Aw(e)),ft.init(t,e)}),TS=z("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=bw),ft.init(t,e)}),RS=z("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=Sw),ft.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),$S=z("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=Ew),ft.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})}}}),OS=z("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=kw),ft.init(t,e)}),PS=z("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=Tw),ft.init(t,e),t._zod.check=r=>{let[n,s]=r.value.split("/");try{if(!s)throw new Error;let i=Number(s);if(`${i}`!==s)throw new Error;if(i<0||i>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 CS(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var IS=z("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=Rw),ft.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{CS(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function bq(t){if(!Ph.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return CS(r)}var AS=z("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=Ph),ft.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{bq(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),NS=z("$ZodE164",(t,e)=>{e.pattern??(e.pattern=Ow),ft.init(t,e)});function xq(t,e=null){try{let r=t.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let s=JSON.parse(atob(n));return!("typ"in s&&s?.typ!=="JWT"||!s.alg||e&&(!("alg"in s)||s.alg!==e))}catch{return!1}}var jS=z("$ZodJWT",(t,e)=>{ft.init(t,e),t._zod.check=r=>{xq(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var jh=z("$ZodNumber",(t,e)=>{at.init(t,e),t._zod.pattern=t._zod.bag.pattern??Mw,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=Number(r.value)}catch{}let s=r.value;if(typeof s=="number"&&!Number.isNaN(s)&&Number.isFinite(s))return r;let i=typeof s=="number"?Number.isNaN(s)?"NaN":Number.isFinite(s)?void 0:"Infinity":void 0;return r.issues.push({expected:"number",code:"invalid_type",input:s,inst:t,...i?{received:i}:{}}),r}}),DS=z("$ZodNumber",(t,e)=>{Bw.init(t,e),jh.init(t,e)}),MS=z("$ZodBoolean",(t,e)=>{at.init(t,e),t._zod.pattern=zw,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=!!r.value}catch{}let s=r.value;return typeof s=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:s,inst:t}),r}});var zS=z("$ZodNull",(t,e)=>{at.init(t,e),t._zod.pattern=Lw,t._zod.values=new Set([null]),t._zod.parse=(r,n)=>{let s=r.value;return s===null||r.issues.push({expected:"null",code:"invalid_type",input:s,inst:t}),r}});var LS=z("$ZodUnknown",(t,e)=>{at.init(t,e),t._zod.parse=r=>r}),qS=z("$ZodNever",(t,e)=>{at.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function nS(t,e,r){t.issues.length&&e.issues.push(...Dn(r,t.issues)),e.value[r]=t.value}var FS=z("$ZodArray",(t,e)=>{at.init(t,e),t._zod.parse=(r,n)=>{let s=r.value;if(!Array.isArray(s))return r.issues.push({expected:"array",code:"invalid_type",input:s,inst:t}),r;r.value=Array(s.length);let i=[];for(let a=0;anS(l,r,a))):nS(c,r,a)}return i.length?Promise.all(i).then(()=>r):r}});function Zu(t,e,r){t.issues.length&&e.issues.push(...Dn(r,t.issues)),e.value[r]=t.value}function sS(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(...Dn(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var US=z("$ZodObject",(t,e)=>{at.init(t,e);let r=Zo(()=>{let p=Object.keys(e.shape);for(let m of p)if(!(e.shape[m]instanceof at))throw new Error(`Invalid element at key "${m}": expected a Zod schema`);let d=Sh(e.shape);return{shape:e.shape,keys:p,keySet:new Set(p),numKeys:p.length,optionalKeys:new Set(d)}});it(t._zod,"propValues",()=>{let p=e.shape,d={};for(let m in p){let f=p[m]._zod;if(f.values){d[m]??(d[m]=new Set);for(let v of f.values)d[m].add(v)}}return d});let n=p=>{let d=new Wu(["shape","payload","ctx"]),m=r.value,f=y=>{let b=ti(y);return`shape[${b}]._zod.run({ value: input[${b}], issues: [] }, ctx)`};d.write("const input = payload.value;");let v=Object.create(null),g=0;for(let y of m.keys)v[y]=`key_${g++}`;d.write("const newResult = {}");for(let y of m.keys)if(m.optionalKeys.has(y)){let b=v[y];d.write(`const ${b} = ${f(y)};`);let x=ti(y);d.write(` +`))}};var cS={major:4,minor:0,patch:0};var at=z("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=cS;let n=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&n.unshift(t);for(let s of n)for(let i of s._zod.onattach)i(t);if(n.length===0)(r=t._zod).deferred??(r.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{let s=(i,a,o)=>{let c=ni(i),l;for(let u of a){if(u._zod.def.when){if(!u._zod.def.when(i))continue}else if(c)continue;let p=i.issues.length,d=u._zod.check(i);if(d instanceof Promise&&o?.async===!1)throw new rs;if(l||d instanceof Promise)l=(l??Promise.resolve()).then(async()=>{await d,i.issues.length!==p&&(c||(c=ni(i,p)))});else{if(i.issues.length===p)continue;c||(c=ni(i,p))}}return l?l.then(()=>i):i};t._zod.run=(i,a)=>{let o=t._zod.parse(i,a);if(o instanceof Promise){if(a.async===!1)throw new rs;return o.then(c=>s(c,n,a))}return s(o,n,a)}}t["~standard"]={validate:s=>{try{let i=Qo(t,s);return i.success?{value:i.data}:{issues:i.error?.issues}}catch{return Zu(t,s).then(a=>a.success?{value:a.data}:{issues:a.error?.issues})}},vendor:"zod",version:1}}),Yu=z("$ZodString",(t,e)=>{at.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??Fw(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}}),ft=z("$ZodStringFormat",(t,e)=>{Xo.init(t,e),Yu.init(t,e)}),yS=z("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=Tw),ft.init(t,e)}),bS=z("$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=Ah(n))}else e.pattern??(e.pattern=Ah());ft.init(t,e)}),xS=z("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Rw),ft.init(t,e)}),_S=z("$ZodURL",(t,e)=>{ft.init(t,e),t._zod.check=r=>{try{let n=r.value,s=new URL(n),i=s.href;e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(s.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:Nw.source,input:r.value,inst:t,continue:!e.abort})),e.protocol&&(e.protocol.lastIndex=0,e.protocol.test(s.protocol.endsWith(":")?s.protocol.slice(0,-1):s.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("/")&&i.endsWith("/")?r.value=i.slice(0,-1):r.value=i;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:t,continue:!e.abort})}}}),wS=z("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=$w()),ft.init(t,e)}),SS=z("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Ew),ft.init(t,e)}),ES=z("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=bw),ft.init(t,e)}),kS=z("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=xw),ft.init(t,e)}),TS=z("$ZodULID",(t,e)=>{e.pattern??(e.pattern=_w),ft.init(t,e)}),RS=z("$ZodXID",(t,e)=>{e.pattern??(e.pattern=ww),ft.init(t,e)}),$S=z("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Sw),ft.init(t,e)}),OS=z("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=qw(e)),ft.init(t,e)}),PS=z("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=Mw),ft.init(t,e)}),CS=z("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=Lw(e)),ft.init(t,e)}),IS=z("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=kw),ft.init(t,e)}),AS=z("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=Ow),ft.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),NS=z("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=Pw),ft.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})}}}),jS=z("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=Cw),ft.init(t,e)}),DS=z("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=Iw),ft.init(t,e),t._zod.check=r=>{let[n,s]=r.value.split("/");try{if(!s)throw new Error;let i=Number(s);if(`${i}`!==s)throw new Error;if(i<0||i>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 MS(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var zS=z("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=Aw),ft.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{MS(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function Tq(t){if(!Nh.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return MS(r)}var LS=z("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=Nh),ft.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{Tq(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),qS=z("$ZodE164",(t,e)=>{e.pattern??(e.pattern=jw),ft.init(t,e)});function Rq(t,e=null){try{let r=t.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let s=JSON.parse(atob(n));return!("typ"in s&&s?.typ!=="JWT"||!s.alg||e&&(!("alg"in s)||s.alg!==e))}catch{return!1}}var FS=z("$ZodJWT",(t,e)=>{ft.init(t,e),t._zod.check=r=>{Rq(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var Lh=z("$ZodNumber",(t,e)=>{at.init(t,e),t._zod.pattern=t._zod.bag.pattern??Hw,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=Number(r.value)}catch{}let s=r.value;if(typeof s=="number"&&!Number.isNaN(s)&&Number.isFinite(s))return r;let i=typeof s=="number"?Number.isNaN(s)?"NaN":Number.isFinite(s)?void 0:"Infinity":void 0;return r.issues.push({expected:"number",code:"invalid_type",input:s,inst:t,...i?{received:i}:{}}),r}}),US=z("$ZodNumber",(t,e)=>{Kw.init(t,e),Lh.init(t,e)}),HS=z("$ZodBoolean",(t,e)=>{at.init(t,e),t._zod.pattern=Bw,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=!!r.value}catch{}let s=r.value;return typeof s=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:s,inst:t}),r}});var BS=z("$ZodNull",(t,e)=>{at.init(t,e),t._zod.pattern=Ww,t._zod.values=new Set([null]),t._zod.parse=(r,n)=>{let s=r.value;return s===null||r.issues.push({expected:"null",code:"invalid_type",input:s,inst:t}),r}});var WS=z("$ZodUnknown",(t,e)=>{at.init(t,e),t._zod.parse=r=>r}),ZS=z("$ZodNever",(t,e)=>{at.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function lS(t,e,r){t.issues.length&&e.issues.push(...Dn(r,t.issues)),e.value[r]=t.value}var VS=z("$ZodArray",(t,e)=>{at.init(t,e),t._zod.parse=(r,n)=>{let s=r.value;if(!Array.isArray(s))return r.issues.push({expected:"array",code:"invalid_type",input:s,inst:t}),r;r.value=Array(s.length);let i=[];for(let a=0;alS(l,r,a))):lS(c,r,a)}return i.length?Promise.all(i).then(()=>r):r}});function Gu(t,e,r){t.issues.length&&e.issues.push(...Dn(r,t.issues)),e.value[r]=t.value}function uS(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(...Dn(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var GS=z("$ZodObject",(t,e)=>{at.init(t,e);let r=Go(()=>{let p=Object.keys(e.shape);for(let m of p)if(!(e.shape[m]instanceof at))throw new Error(`Invalid element at key "${m}": expected a Zod schema`);let d=Rh(e.shape);return{shape:e.shape,keys:p,keySet:new Set(p),numKeys:p.length,optionalKeys:new Set(d)}});it(t._zod,"propValues",()=>{let p=e.shape,d={};for(let m in p){let f=p[m]._zod;if(f.values){d[m]??(d[m]=new Set);for(let v of f.values)d[m].add(v)}}return d});let n=p=>{let d=new Vu(["shape","payload","ctx"]),m=r.value,f=y=>{let b=ri(y);return`shape[${b}]._zod.run({ value: input[${b}], issues: [] }, ctx)`};d.write("const input = payload.value;");let v=Object.create(null),g=0;for(let y of m.keys)v[y]=`key_${g++}`;d.write("const newResult = {}");for(let y of m.keys)if(m.optionalKeys.has(y)){let b=v[y];d.write(`const ${b} = ${f(y)};`);let x=ri(y);d.write(` if (${b}.issues.length) { if (input[${x}] === undefined) { if (${x} in input) { @@ -930,10 +930,10 @@ ${J.dim}No previous sessions found for this project yet.${J.reset} `)}else{let b=v[y];d.write(`const ${b} = ${f(y)};`),d.write(` if (${b}.issues.length) payload.issues = payload.issues.concat(${b}.issues.map(iss => ({ ...iss, - path: iss.path ? [${ti(y)}, ...iss.path] : [${ti(y)}] - })));`),d.write(`newResult[${ti(y)}] = ${b}.value`)}d.write("payload.value = newResult;"),d.write("return payload;");let h=d.compile();return(y,b)=>h(p,y,b)},s,i=Gi,a=!Lu.jitless,c=a&&_h.value,l=e.catchall,u;t._zod.parse=(p,d)=>{u??(u=r.value);let m=p.value;if(!i(m))return p.issues.push({expected:"object",code:"invalid_type",input:m,inst:t}),p;let f=[];if(a&&c&&d?.async===!1&&d.jitless!==!0)s||(s=n(e.shape)),p=s(p,d);else{p.value={};let b=u.shape;for(let x of u.keys){let w=b[x],S=w._zod.run({value:m[x],issues:[]},d),E=w._zod.optin==="optional"&&w._zod.optout==="optional";S instanceof Promise?f.push(S.then(k=>E?sS(k,p,x,m):Zu(k,p,x))):E?sS(S,p,x,m):Zu(S,p,x)}}if(!l)return f.length?Promise.all(f).then(()=>p):p;let v=[],g=u.keySet,h=l._zod,y=h.def.type;for(let b of Object.keys(m)){if(g.has(b))continue;if(y==="never"){v.push(b);continue}let x=h.run({value:m[b],issues:[]},d);x instanceof Promise?f.push(x.then(w=>Zu(w,p,b))):Zu(x,p,b)}return v.length&&p.issues.push({code:"unrecognized_keys",keys:v,input:m,inst:t}),f.length?Promise.all(f).then(()=>p):p}});function iS(t,e,r,n){for(let s of t)if(s.issues.length===0)return e.value=s.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(s=>s.issues.map(i=>dn(i,n,Gr())))}),e}var Dh=z("$ZodUnion",(t,e)=>{at.init(t,e),it(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),it(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),it(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),it(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=>Go(n.source)).join("|")})$`)}}),t._zod.parse=(r,n)=>{let s=!1,i=[];for(let a of e.options){let o=a._zod.run({value:r.value,issues:[]},n);if(o instanceof Promise)i.push(o),s=!0;else{if(o.issues.length===0)return o;i.push(o)}}return s?Promise.all(i).then(a=>iS(a,r,t,n)):iS(i,r,t,n)}}),HS=z("$ZodDiscriminatedUnion",(t,e)=>{Dh.init(t,e);let r=t._zod.parse;it(t._zod,"propValues",()=>{let s={};for(let i of e.options){let a=i._zod.propValues;if(!a||Object.keys(a).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(i)}"`);for(let[o,c]of Object.entries(a)){s[o]||(s[o]=new Set);for(let l of c)s[o].add(l)}}return s});let n=Zo(()=>{let s=e.options,i=new Map;for(let a of s){let o=a._zod.propValues[e.discriminator];if(!o||o.size===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(a)}"`);for(let c of o){if(i.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);i.set(c,a)}}return i});t._zod.parse=(s,i)=>{let a=s.value;if(!Gi(a))return s.issues.push({code:"invalid_type",expected:"object",input:a,inst:t}),s;let o=n.value.get(a?.[e.discriminator]);return o?o._zod.run(s,i):e.unionFallback?r(s,i):(s.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:a,path:[e.discriminator],inst:t}),s)}}),BS=z("$ZodIntersection",(t,e)=>{at.init(t,e),t._zod.parse=(r,n)=>{let s=r.value,i=e.left._zod.run({value:s,issues:[]},n),a=e.right._zod.run({value:s,issues:[]},n);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([c,l])=>aS(r,c,l)):aS(r,i,a)}});function Nh(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(Yi(t)&&Yi(e)){let r=Object.keys(e),n=Object.keys(t).filter(i=>r.indexOf(i)!==-1),s={...t,...e};for(let i of n){let a=Nh(t[i],e[i]);if(!a.valid)return{valid:!1,mergeErrorPath:[i,...a.mergeErrorPath]};s[i]=a.data}return{valid:!0,data:s}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n{at.init(t,e),t._zod.parse=(r,n)=>{let s=r.value;if(!Yi(s))return r.issues.push({expected:"record",code:"invalid_type",input:s,inst:t}),r;let i=[];if(e.keyType._zod.values){let a=e.keyType._zod.values;r.value={};for(let c of a)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){let l=e.valueType._zod.run({value:s[c],issues:[]},n);l instanceof Promise?i.push(l.then(u=>{u.issues.length&&r.issues.push(...Dn(c,u.issues)),r.value[c]=u.value})):(l.issues.length&&r.issues.push(...Dn(c,l.issues)),r.value[c]=l.value)}let o;for(let c in s)a.has(c)||(o=o??[],o.push(c));o&&o.length>0&&r.issues.push({code:"unrecognized_keys",input:s,inst:t,keys:o})}else{r.value={};for(let a of Reflect.ownKeys(s)){if(a==="__proto__")continue;let o=e.keyType._zod.run({value:a,issues:[]},n);if(o instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(o.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:o.issues.map(l=>dn(l,n,Gr())),input:a,path:[a],inst:t}),r.value[o.value]=o.value;continue}let c=e.valueType._zod.run({value:s[a],issues:[]},n);c instanceof Promise?i.push(c.then(l=>{l.issues.length&&r.issues.push(...Dn(a,l.issues)),r.value[o.value]=l.value})):(c.issues.length&&r.issues.push(...Dn(a,c.issues)),r.value[o.value]=c.value)}}return i.length?Promise.all(i).then(()=>r):r}});var ZS=z("$ZodEnum",(t,e)=>{at.init(t,e);let r=vh(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>wh.has(typeof n)).map(n=>typeof n=="string"?ks(n):n.toString()).join("|")})$`),t._zod.parse=(n,s)=>{let i=n.value;return t._zod.values.has(i)||n.issues.push({code:"invalid_value",values:r,input:i,inst:t}),n}}),VS=z("$ZodLiteral",(t,e)=>{at.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?ks(r):r?r.toString():String(r)).join("|")})$`),t._zod.parse=(r,n)=>{let s=r.value;return t._zod.values.has(s)||r.issues.push({code:"invalid_value",values:e.values,input:s,inst:t}),r}});var GS=z("$ZodTransform",(t,e)=>{at.init(t,e),t._zod.parse=(r,n)=>{let s=e.transform(r.value,r);if(n.async)return(s instanceof Promise?s:Promise.resolve(s)).then(a=>(r.value=a,r));if(s instanceof Promise)throw new rs;return r.value=s,r}}),YS=z("$ZodOptional",(t,e)=>{at.init(t,e),t._zod.optin="optional",t._zod.optout="optional",it(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),it(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Go(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)}),KS=z("$ZodNullable",(t,e)=>{at.init(t,e),it(t._zod,"optin",()=>e.innerType._zod.optin),it(t._zod,"optout",()=>e.innerType._zod.optout),it(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Go(r.source)}|null)$`):void 0}),it(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)}),JS=z("$ZodDefault",(t,e)=>{at.init(t,e),t._zod.optin="optional",it(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(r.value===void 0)return r.value=e.defaultValue,r;let s=e.innerType._zod.run(r,n);return s instanceof Promise?s.then(i=>oS(i,e)):oS(s,e)}});function oS(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var QS=z("$ZodPrefault",(t,e)=>{at.init(t,e),t._zod.optin="optional",it(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))}),XS=z("$ZodNonOptional",(t,e)=>{at.init(t,e),it(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 s=e.innerType._zod.run(r,n);return s instanceof Promise?s.then(i=>cS(i,t)):cS(s,t)}});function cS(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 eE=z("$ZodCatch",(t,e)=>{at.init(t,e),t._zod.optin="optional",it(t._zod,"optout",()=>e.innerType._zod.optout),it(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{let s=e.innerType._zod.run(r,n);return s instanceof Promise?s.then(i=>(r.value=i.value,i.issues.length&&(r.value=e.catchValue({...r,error:{issues:i.issues.map(a=>dn(a,n,Gr()))},input:r.value}),r.issues=[]),r)):(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(i=>dn(i,n,Gr()))},input:r.value}),r.issues=[]),r)}});var tE=z("$ZodPipe",(t,e)=>{at.init(t,e),it(t._zod,"values",()=>e.in._zod.values),it(t._zod,"optin",()=>e.in._zod.optin),it(t._zod,"optout",()=>e.out._zod.optout),t._zod.parse=(r,n)=>{let s=e.in._zod.run(r,n);return s instanceof Promise?s.then(i=>lS(i,e,n)):lS(s,e,n)}});function lS(t,e,r){return ri(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var rE=z("$ZodReadonly",(t,e)=>{at.init(t,e),it(t._zod,"propValues",()=>e.innerType._zod.propValues),it(t._zod,"values",()=>e.innerType._zod.values),it(t._zod,"optin",()=>e.innerType._zod.optin),it(t._zod,"optout",()=>e.innerType._zod.optout),t._zod.parse=(r,n)=>{let s=e.innerType._zod.run(r,n);return s instanceof Promise?s.then(uS):uS(s)}});function uS(t){return t.value=Object.freeze(t.value),t}var nE=z("$ZodCustom",(t,e)=>{rr.init(t,e),at.init(t,e),t._zod.parse=(r,n)=>r,t._zod.check=r=>{let n=r.value,s=e.fn(n);if(s instanceof Promise)return s.then(i=>pS(i,r,n,t));pS(s,r,n,t)}});function pS(t,e,r,n){if(!t){let s={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(s.params=n._zod.def.params),e.issues.push(kh(s))}}var _q=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},wq=()=>{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 ${_q(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${Uu(n.values[0])}`:`Invalid option: expected one of ${qu(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",i=e(n.origin);return i?`Too big: expected ${n.origin??"value"} to have ${s}${n.maximum.toString()} ${i.unit??"elements"}`:`Too big: expected ${n.origin??"value"} to be ${s}${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?">=":">",i=e(n.origin);return i?`Too small: expected ${n.origin} to have ${s}${n.minimum.toString()} ${i.unit}`:`Too small: expected ${n.origin} to be ${s}${n.minimum.toString()}`}case"invalid_format":{let s=n;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]??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":""}: ${qu(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 sE(){return{localeError:wq()}}var Mh=class{constructor(){this._map=new Map,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}clear(){return this._map=new Map,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)??{}};return delete n.id,{...n,...this._map.get(e)}}return this._map.get(e)}has(e){return this._map.has(e)}};function Sq(){return new Mh}var Qo=Sq();function iE(t,e){return new t({type:"string",...me(e)})}function aE(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...me(e)})}function zh(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...me(e)})}function oE(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...me(e)})}function cE(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...me(e)})}function lE(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...me(e)})}function uE(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...me(e)})}function pE(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...me(e)})}function dE(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...me(e)})}function mE(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...me(e)})}function fE(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...me(e)})}function hE(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...me(e)})}function gE(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...me(e)})}function vE(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...me(e)})}function yE(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...me(e)})}function bE(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...me(e)})}function xE(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...me(e)})}function _E(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...me(e)})}function wE(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...me(e)})}function SE(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...me(e)})}function EE(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...me(e)})}function kE(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...me(e)})}function TE(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...me(e)})}function RE(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...me(e)})}function $E(t,e){return new t({type:"string",format:"date",check:"string_format",...me(e)})}function OE(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...me(e)})}function PE(t,e){return new t({type:"string",format:"duration",check:"string_format",...me(e)})}function CE(t,e){return new t({type:"number",checks:[],...me(e)})}function IE(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...me(e)})}function AE(t,e){return new t({type:"boolean",...me(e)})}function NE(t,e){return new t({type:"null",...me(e)})}function jE(t){return new t({type:"unknown"})}function DE(t,e){return new t({type:"never",...me(e)})}function Gu(t,e){return new Ih({check:"less_than",...me(e),value:t,inclusive:!1})}function Xo(t,e){return new Ih({check:"less_than",...me(e),value:t,inclusive:!0})}function Yu(t,e){return new Ah({check:"greater_than",...me(e),value:t,inclusive:!1})}function ec(t,e){return new Ah({check:"greater_than",...me(e),value:t,inclusive:!0})}function Ku(t,e){return new Hw({check:"multiple_of",...me(e),value:t})}function Ju(t,e){return new Ww({check:"max_length",...me(e),maximum:t})}function Ki(t,e){return new Zw({check:"min_length",...me(e),minimum:t})}function Qu(t,e){return new Vw({check:"length_equals",...me(e),length:t})}function Lh(t,e){return new Gw({check:"string_format",format:"regex",...me(e),pattern:t})}function qh(t){return new Yw({check:"string_format",format:"lowercase",...me(t)})}function Fh(t){return new Kw({check:"string_format",format:"uppercase",...me(t)})}function Uh(t,e){return new Jw({check:"string_format",format:"includes",...me(e),includes:t})}function Hh(t,e){return new Qw({check:"string_format",format:"starts_with",...me(e),prefix:t})}function Bh(t,e){return new Xw({check:"string_format",format:"ends_with",...me(e),suffix:t})}function ni(t){return new eS({check:"overwrite",tx:t})}function Wh(t){return ni(e=>e.normalize(t))}function Zh(){return ni(t=>t.trim())}function Vh(){return ni(t=>t.toLowerCase())}function Gh(){return ni(t=>t.toUpperCase())}function ME(t,e,r){return new t({type:"array",element:e,...me(r)})}function zE(t,e,r){let n=me(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function LE(t,e,r){return new t({type:"custom",check:"custom",fn:e,...me(r)})}function Ji(t){return!!t._zod}function mn(t,e){return Ji(t)?Ko(t,e):t.safeParse(e)}function Xu(t){if(!t)return;let e;if(Ji(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function qE(t){if(Ji(t)){let i=t._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=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 rc={};Nn(rc,{ZodISODate:()=>UE,ZodISODateTime:()=>FE,ZodISODuration:()=>BE,ZodISOTime:()=>HE,date:()=>Kh,datetime:()=>Yh,duration:()=>Qh,time:()=>Jh});var FE=z("ZodISODateTime",(t,e)=>{SS.init(t,e),yt.init(t,e)});function Yh(t){return RE(FE,t)}var UE=z("ZodISODate",(t,e)=>{ES.init(t,e),yt.init(t,e)});function Kh(t){return $E(UE,t)}var HE=z("ZodISOTime",(t,e)=>{kS.init(t,e),yt.init(t,e)});function Jh(t){return OE(HE,t)}var BE=z("ZodISODuration",(t,e)=>{TS.init(t,e),yt.init(t,e)});function Qh(t){return PE(BE,t)}var WE=(t,e)=>{Hu.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>uw(t,r)},flatten:{value:r=>lw(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},Hde=z("ZodError",WE),nc=z("ZodError",WE,{Parent:Error});var ZE=pw(nc),VE=dw(nc),GE=Rh(nc),YE=$h(nc);var Et=z("ZodType",(t,e)=>(at.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)=>jn(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>ZE(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>GE(t,r,n),t.parseAsync=async(r,n)=>VE(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>YE(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(x8(r,n)),t.superRefine=r=>t.check(_8(r)),t.overwrite=r=>t.check(ni(r)),t.optional=()=>St(t),t.nullable=()=>QE(t),t.nullish=()=>St(QE(t)),t.nonoptional=r=>m8(t,r),t.array=()=>Ae(t),t.or=r=>ot([t,r]),t.and=r=>tp(t,r),t.transform=r=>eg(t,nk(r)),t.default=r=>u8(t,r),t.prefault=r=>d8(t,r),t.catch=r=>h8(t,r),t.pipe=r=>eg(t,r),t.readonly=()=>y8(t),t.describe=r=>{let n=t.clone();return Qo.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return Qo.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return Qo.get(t);let n=t.clone();return Qo.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),XE=z("_ZodString",(t,e)=>{Vu.init(t,e),Et.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(Lh(...n)),t.includes=(...n)=>t.check(Uh(...n)),t.startsWith=(...n)=>t.check(Hh(...n)),t.endsWith=(...n)=>t.check(Bh(...n)),t.min=(...n)=>t.check(Ki(...n)),t.max=(...n)=>t.check(Ju(...n)),t.length=(...n)=>t.check(Qu(...n)),t.nonempty=(...n)=>t.check(Ki(1,...n)),t.lowercase=n=>t.check(qh(n)),t.uppercase=n=>t.check(Fh(n)),t.trim=()=>t.check(Zh()),t.normalize=(...n)=>t.check(Wh(...n)),t.toLowerCase=()=>t.check(Vh()),t.toUpperCase=()=>t.check(Gh())}),Iq=z("ZodString",(t,e)=>{Vu.init(t,e),XE.init(t,e),t.email=r=>t.check(aE(Aq,r)),t.url=r=>t.check(pE(Nq,r)),t.jwt=r=>t.check(TE(Yq,r)),t.emoji=r=>t.check(dE(jq,r)),t.guid=r=>t.check(zh(KE,r)),t.uuid=r=>t.check(oE(ep,r)),t.uuidv4=r=>t.check(cE(ep,r)),t.uuidv6=r=>t.check(lE(ep,r)),t.uuidv7=r=>t.check(uE(ep,r)),t.nanoid=r=>t.check(mE(Dq,r)),t.guid=r=>t.check(zh(KE,r)),t.cuid=r=>t.check(fE(Mq,r)),t.cuid2=r=>t.check(hE(zq,r)),t.ulid=r=>t.check(gE(Lq,r)),t.base64=r=>t.check(SE(Zq,r)),t.base64url=r=>t.check(EE(Vq,r)),t.xid=r=>t.check(vE(qq,r)),t.ksuid=r=>t.check(yE(Fq,r)),t.ipv4=r=>t.check(bE(Uq,r)),t.ipv6=r=>t.check(xE(Hq,r)),t.cidrv4=r=>t.check(_E(Bq,r)),t.cidrv6=r=>t.check(wE(Wq,r)),t.e164=r=>t.check(kE(Gq,r)),t.datetime=r=>t.check(Yh(r)),t.date=r=>t.check(Kh(r)),t.time=r=>t.check(Jh(r)),t.duration=r=>t.check(Qh(r))});function D(t){return iE(Iq,t)}var yt=z("ZodStringFormat",(t,e)=>{ft.init(t,e),XE.init(t,e)}),Aq=z("ZodEmail",(t,e)=>{fS.init(t,e),yt.init(t,e)});var KE=z("ZodGUID",(t,e)=>{dS.init(t,e),yt.init(t,e)});var ep=z("ZodUUID",(t,e)=>{mS.init(t,e),yt.init(t,e)});var Nq=z("ZodURL",(t,e)=>{hS.init(t,e),yt.init(t,e)});var jq=z("ZodEmoji",(t,e)=>{gS.init(t,e),yt.init(t,e)});var Dq=z("ZodNanoID",(t,e)=>{vS.init(t,e),yt.init(t,e)});var Mq=z("ZodCUID",(t,e)=>{yS.init(t,e),yt.init(t,e)});var zq=z("ZodCUID2",(t,e)=>{bS.init(t,e),yt.init(t,e)});var Lq=z("ZodULID",(t,e)=>{xS.init(t,e),yt.init(t,e)});var qq=z("ZodXID",(t,e)=>{_S.init(t,e),yt.init(t,e)});var Fq=z("ZodKSUID",(t,e)=>{wS.init(t,e),yt.init(t,e)});var Uq=z("ZodIPv4",(t,e)=>{RS.init(t,e),yt.init(t,e)});var Hq=z("ZodIPv6",(t,e)=>{$S.init(t,e),yt.init(t,e)});var Bq=z("ZodCIDRv4",(t,e)=>{OS.init(t,e),yt.init(t,e)});var Wq=z("ZodCIDRv6",(t,e)=>{PS.init(t,e),yt.init(t,e)});var Zq=z("ZodBase64",(t,e)=>{IS.init(t,e),yt.init(t,e)});var Vq=z("ZodBase64URL",(t,e)=>{AS.init(t,e),yt.init(t,e)});var Gq=z("ZodE164",(t,e)=>{NS.init(t,e),yt.init(t,e)});var Yq=z("ZodJWT",(t,e)=>{jS.init(t,e),yt.init(t,e)});var ek=z("ZodNumber",(t,e)=>{jh.init(t,e),Et.init(t,e),t.gt=(n,s)=>t.check(Yu(n,s)),t.gte=(n,s)=>t.check(ec(n,s)),t.min=(n,s)=>t.check(ec(n,s)),t.lt=(n,s)=>t.check(Gu(n,s)),t.lte=(n,s)=>t.check(Xo(n,s)),t.max=(n,s)=>t.check(Xo(n,s)),t.int=n=>t.check(JE(n)),t.safe=n=>t.check(JE(n)),t.positive=n=>t.check(Yu(0,n)),t.nonnegative=n=>t.check(ec(0,n)),t.negative=n=>t.check(Gu(0,n)),t.nonpositive=n=>t.check(Xo(0,n)),t.multipleOf=(n,s)=>t.check(Ku(n,s)),t.step=(n,s)=>t.check(Ku(n,s)),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 Xe(t){return CE(ek,t)}var Kq=z("ZodNumberFormat",(t,e)=>{DS.init(t,e),ek.init(t,e)});function JE(t){return IE(Kq,t)}var Jq=z("ZodBoolean",(t,e)=>{MS.init(t,e),Et.init(t,e)});function Lt(t){return AE(Jq,t)}var Qq=z("ZodNull",(t,e)=>{zS.init(t,e),Et.init(t,e)});function tg(t){return NE(Qq,t)}var Xq=z("ZodUnknown",(t,e)=>{LS.init(t,e),Et.init(t,e)});function bt(){return jE(Xq)}var e8=z("ZodNever",(t,e)=>{qS.init(t,e),Et.init(t,e)});function t8(t){return DE(e8,t)}var r8=z("ZodArray",(t,e)=>{FS.init(t,e),Et.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(Ki(r,n)),t.nonempty=r=>t.check(Ki(1,r)),t.max=(r,n)=>t.check(Ju(r,n)),t.length=(r,n)=>t.check(Qu(r,n)),t.unwrap=()=>t.element});function Ae(t,e){return ME(r8,t,e)}var tk=z("ZodObject",(t,e)=>{US.init(t,e),Et.init(t,e),Be.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>Tr(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:bt()}),t.loose=()=>t.clone({...t._zod.def,catchall:bt()}),t.strict=()=>t.clone({...t._zod.def,catchall:t8()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>Be.extend(t,r),t.merge=r=>Be.merge(t,r),t.pick=r=>Be.pick(t,r),t.omit=r=>Be.omit(t,r),t.partial=(...r)=>Be.partial(sk,t,r[0]),t.required=(...r)=>Be.required(ik,t,r[0])});function ee(t,e){let r={type:"object",get shape(){return Be.assignProp(this,"shape",{...t}),this.shape},...Be.normalizeParams(e)};return new tk(r)}function ur(t,e){return new tk({type:"object",get shape(){return Be.assignProp(this,"shape",{...t}),this.shape},catchall:bt(),...Be.normalizeParams(e)})}var rk=z("ZodUnion",(t,e)=>{Dh.init(t,e),Et.init(t,e),t.options=e.options});function ot(t,e){return new rk({type:"union",options:t,...Be.normalizeParams(e)})}var n8=z("ZodDiscriminatedUnion",(t,e)=>{rk.init(t,e),HS.init(t,e)});function rg(t,e,r){return new n8({type:"union",options:e,discriminator:t,...Be.normalizeParams(r)})}var s8=z("ZodIntersection",(t,e)=>{BS.init(t,e),Et.init(t,e)});function tp(t,e){return new s8({type:"intersection",left:t,right:e})}var i8=z("ZodRecord",(t,e)=>{WS.init(t,e),Et.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function xt(t,e,r){return new i8({type:"record",keyType:t,valueType:e,...Be.normalizeParams(r)})}var Xh=z("ZodEnum",(t,e)=>{ZS.init(t,e),Et.init(t,e),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(n,s)=>{let i={};for(let a of n)if(r.has(a))i[a]=e.entries[a];else throw new Error(`Key ${a} not found in enum`);return new Xh({...e,checks:[],...Be.normalizeParams(s),entries:i})},t.exclude=(n,s)=>{let i={...e.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 Xh({...e,checks:[],...Be.normalizeParams(s),entries:i})}});function Tr(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Xh({type:"enum",entries:r,...Be.normalizeParams(e)})}var a8=z("ZodLiteral",(t,e)=>{VS.init(t,e),Et.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 ie(t,e){return new a8({type:"literal",values:Array.isArray(t)?t:[t],...Be.normalizeParams(e)})}var o8=z("ZodTransform",(t,e)=>{GS.init(t,e),Et.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=i=>{if(typeof i=="string")r.issues.push(Be.issue(i,r.value,e));else{let a=i;a.fatal&&(a.continue=!1),a.code??(a.code="custom"),a.input??(a.input=r.value),a.inst??(a.inst=t),a.continue??(a.continue=!0),r.issues.push(Be.issue(a))}};let s=e.transform(r.value,r);return s instanceof Promise?s.then(i=>(r.value=i,r)):(r.value=s,r)}});function nk(t){return new o8({type:"transform",transform:t})}var sk=z("ZodOptional",(t,e)=>{YS.init(t,e),Et.init(t,e),t.unwrap=()=>t._zod.def.innerType});function St(t){return new sk({type:"optional",innerType:t})}var c8=z("ZodNullable",(t,e)=>{KS.init(t,e),Et.init(t,e),t.unwrap=()=>t._zod.def.innerType});function QE(t){return new c8({type:"nullable",innerType:t})}var l8=z("ZodDefault",(t,e)=>{JS.init(t,e),Et.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function u8(t,e){return new l8({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var p8=z("ZodPrefault",(t,e)=>{QS.init(t,e),Et.init(t,e),t.unwrap=()=>t._zod.def.innerType});function d8(t,e){return new p8({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var ik=z("ZodNonOptional",(t,e)=>{XS.init(t,e),Et.init(t,e),t.unwrap=()=>t._zod.def.innerType});function m8(t,e){return new ik({type:"nonoptional",innerType:t,...Be.normalizeParams(e)})}var f8=z("ZodCatch",(t,e)=>{eE.init(t,e),Et.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function h8(t,e){return new f8({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var g8=z("ZodPipe",(t,e)=>{tE.init(t,e),Et.init(t,e),t.in=e.in,t.out=e.out});function eg(t,e){return new g8({type:"pipe",in:t,out:e})}var v8=z("ZodReadonly",(t,e)=>{rE.init(t,e),Et.init(t,e)});function y8(t){return new v8({type:"readonly",innerType:t})}var ak=z("ZodCustom",(t,e)=>{nE.init(t,e),Et.init(t,e)});function b8(t){let e=new rr({check:"custom"});return e._zod.check=t,e}function ok(t,e){return zE(ak,t??(()=>!0),e)}function x8(t,e={}){return LE(ak,t,e)}function _8(t){let e=b8(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(Be.issue(n,r.value,e._zod.def));else{let s=n;s.fatal&&(s.continue=!1),s.code??(s.code="custom"),s.input??(s.input=r.value),s.inst??(s.inst=e),s.continue??(s.continue=!e._zod.def.abort),r.issues.push(Be.issue(s))}},t(r.value,r)));return e}function ng(t,e){return eg(nk(t),e)}Gr(sE());var ig="2025-11-25";var ck=[ig,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Ts="io.modelcontextprotocol/related-task",np="2.0",Gt=ok(t=>t!==null&&(typeof t=="object"||typeof t=="function")),lk=ot([D(),Xe().int()]),uk=D(),Dme=ur({ttl:ot([Xe(),tg()]).optional(),pollInterval:Xe().optional()}),w8=ee({ttl:Xe().optional()}),S8=ee({taskId:D()}),ag=ur({progressToken:lk.optional(),[Ts]:S8.optional()}),Hr=ee({_meta:ag.optional()}),sc=Hr.extend({task:w8.optional()}),pk=t=>sc.safeParse(t).success,Yt=ee({method:D(),params:Hr.loose().optional()}),Yr=ee({_meta:ag.optional()}),Kr=ee({method:D(),params:Yr.loose().optional()}),Kt=ur({_meta:ag.optional()}),sp=ot([D(),Xe().int()]),dk=ee({jsonrpc:ie(np),id:sp,...Yt.shape}).strict(),og=t=>dk.safeParse(t).success,mk=ee({jsonrpc:ie(np),...Kr.shape}).strict(),fk=t=>mk.safeParse(t).success,cg=ee({jsonrpc:ie(np),id:sp,result:Kt}).strict(),ic=t=>cg.safeParse(t).success;var ye;(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"})(ye||(ye={}));var lg=ee({jsonrpc:ie(np),id:sp.optional(),error:ee({code:Xe().int(),message:D(),data:bt().optional()})}).strict();var hk=t=>lg.safeParse(t).success;var gk=ot([dk,mk,cg,lg]),Mme=ot([cg,lg]),si=Kt.strict(),E8=Yr.extend({requestId:sp.optional(),reason:D().optional()}),ip=Kr.extend({method:ie("notifications/cancelled"),params:E8}),k8=ee({src:D(),mimeType:D().optional(),sizes:Ae(D()).optional(),theme:Tr(["light","dark"]).optional()}),ac=ee({icons:Ae(k8).optional()}),Qi=ee({name:D(),title:D().optional()}),vk=Qi.extend({...Qi.shape,...ac.shape,version:D(),websiteUrl:D().optional(),description:D().optional()}),T8=tp(ee({applyDefaults:Lt().optional()}),xt(D(),bt())),R8=ng(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,tp(ee({form:T8.optional(),url:Gt.optional()}),xt(D(),bt()).optional())),$8=ur({list:Gt.optional(),cancel:Gt.optional(),requests:ur({sampling:ur({createMessage:Gt.optional()}).optional(),elicitation:ur({create:Gt.optional()}).optional()}).optional()}),O8=ur({list:Gt.optional(),cancel:Gt.optional(),requests:ur({tools:ur({call:Gt.optional()}).optional()}).optional()}),P8=ee({experimental:xt(D(),Gt).optional(),sampling:ee({context:Gt.optional(),tools:Gt.optional()}).optional(),elicitation:R8.optional(),roots:ee({listChanged:Lt().optional()}).optional(),tasks:$8.optional()}),C8=Hr.extend({protocolVersion:D(),capabilities:P8,clientInfo:vk}),I8=Yt.extend({method:ie("initialize"),params:C8});var A8=ee({experimental:xt(D(),Gt).optional(),logging:Gt.optional(),completions:Gt.optional(),prompts:ee({listChanged:Lt().optional()}).optional(),resources:ee({subscribe:Lt().optional(),listChanged:Lt().optional()}).optional(),tools:ee({listChanged:Lt().optional()}).optional(),tasks:O8.optional()}),ug=Kt.extend({protocolVersion:D(),capabilities:A8,serverInfo:vk,instructions:D().optional()}),N8=Kr.extend({method:ie("notifications/initialized"),params:Yr.optional()});var ap=Yt.extend({method:ie("ping"),params:Hr.optional()}),j8=ee({progress:Xe(),total:St(Xe()),message:St(D())}),D8=ee({...Yr.shape,...j8.shape,progressToken:lk}),op=Kr.extend({method:ie("notifications/progress"),params:D8}),M8=Hr.extend({cursor:uk.optional()}),oc=Yt.extend({params:M8.optional()}),cc=Kt.extend({nextCursor:uk.optional()}),z8=Tr(["working","input_required","completed","failed","cancelled"]),lc=ee({taskId:D(),status:z8,ttl:ot([Xe(),tg()]),createdAt:D(),lastUpdatedAt:D(),pollInterval:St(Xe()),statusMessage:St(D())}),ii=Kt.extend({task:lc}),L8=Yr.merge(lc),uc=Kr.extend({method:ie("notifications/tasks/status"),params:L8}),cp=Yt.extend({method:ie("tasks/get"),params:Hr.extend({taskId:D()})}),lp=Kt.merge(lc),up=Yt.extend({method:ie("tasks/result"),params:Hr.extend({taskId:D()})}),zme=Kt.loose(),pp=oc.extend({method:ie("tasks/list")}),dp=cc.extend({tasks:Ae(lc)}),mp=Yt.extend({method:ie("tasks/cancel"),params:Hr.extend({taskId:D()})}),yk=Kt.merge(lc),bk=ee({uri:D(),mimeType:St(D()),_meta:xt(D(),bt()).optional()}),xk=bk.extend({text:D()}),pg=D().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),_k=bk.extend({blob:pg}),pc=Tr(["user","assistant"]),Xi=ee({audience:Ae(pc).optional(),priority:Xe().min(0).max(1).optional(),lastModified:rc.datetime({offset:!0}).optional()}),wk=ee({...Qi.shape,...ac.shape,uri:D(),description:St(D()),mimeType:St(D()),annotations:Xi.optional(),_meta:St(ur({}))}),q8=ee({...Qi.shape,...ac.shape,uriTemplate:D(),description:St(D()),mimeType:St(D()),annotations:Xi.optional(),_meta:St(ur({}))}),F8=oc.extend({method:ie("resources/list")}),dg=cc.extend({resources:Ae(wk)}),U8=oc.extend({method:ie("resources/templates/list")}),mg=cc.extend({resourceTemplates:Ae(q8)}),fg=Hr.extend({uri:D()}),H8=fg,B8=Yt.extend({method:ie("resources/read"),params:H8}),hg=Kt.extend({contents:Ae(ot([xk,_k]))}),gg=Kr.extend({method:ie("notifications/resources/list_changed"),params:Yr.optional()}),W8=fg,Z8=Yt.extend({method:ie("resources/subscribe"),params:W8}),V8=fg,G8=Yt.extend({method:ie("resources/unsubscribe"),params:V8}),Y8=Yr.extend({uri:D()}),K8=Kr.extend({method:ie("notifications/resources/updated"),params:Y8}),J8=ee({name:D(),description:St(D()),required:St(Lt())}),Q8=ee({...Qi.shape,...ac.shape,description:St(D()),arguments:St(Ae(J8)),_meta:St(ur({}))}),X8=oc.extend({method:ie("prompts/list")}),vg=cc.extend({prompts:Ae(Q8)}),eF=Hr.extend({name:D(),arguments:xt(D(),D()).optional()}),tF=Yt.extend({method:ie("prompts/get"),params:eF}),yg=ee({type:ie("text"),text:D(),annotations:Xi.optional(),_meta:xt(D(),bt()).optional()}),bg=ee({type:ie("image"),data:pg,mimeType:D(),annotations:Xi.optional(),_meta:xt(D(),bt()).optional()}),xg=ee({type:ie("audio"),data:pg,mimeType:D(),annotations:Xi.optional(),_meta:xt(D(),bt()).optional()}),rF=ee({type:ie("tool_use"),name:D(),id:D(),input:xt(D(),bt()),_meta:xt(D(),bt()).optional()}),nF=ee({type:ie("resource"),resource:ot([xk,_k]),annotations:Xi.optional(),_meta:xt(D(),bt()).optional()}),sF=wk.extend({type:ie("resource_link")}),_g=ot([yg,bg,xg,sF,nF]),iF=ee({role:pc,content:_g}),wg=Kt.extend({description:D().optional(),messages:Ae(iF)}),Sg=Kr.extend({method:ie("notifications/prompts/list_changed"),params:Yr.optional()}),aF=ee({title:D().optional(),readOnlyHint:Lt().optional(),destructiveHint:Lt().optional(),idempotentHint:Lt().optional(),openWorldHint:Lt().optional()}),oF=ee({taskSupport:Tr(["required","optional","forbidden"]).optional()}),Sk=ee({...Qi.shape,...ac.shape,description:D().optional(),inputSchema:ee({type:ie("object"),properties:xt(D(),Gt).optional(),required:Ae(D()).optional()}).catchall(bt()),outputSchema:ee({type:ie("object"),properties:xt(D(),Gt).optional(),required:Ae(D()).optional()}).catchall(bt()).optional(),annotations:aF.optional(),execution:oF.optional(),_meta:xt(D(),bt()).optional()}),cF=oc.extend({method:ie("tools/list")}),Eg=cc.extend({tools:Ae(Sk)}),ea=Kt.extend({content:Ae(_g).default([]),structuredContent:xt(D(),bt()).optional(),isError:Lt().optional()}),Lme=ea.or(Kt.extend({toolResult:bt()})),lF=sc.extend({name:D(),arguments:xt(D(),bt()).optional()}),uF=Yt.extend({method:ie("tools/call"),params:lF}),kg=Kr.extend({method:ie("notifications/tools/list_changed"),params:Yr.optional()}),Ek=ee({autoRefresh:Lt().default(!0),debounceMs:Xe().int().nonnegative().default(300)}),kk=Tr(["debug","info","notice","warning","error","critical","alert","emergency"]),pF=Hr.extend({level:kk}),dF=Yt.extend({method:ie("logging/setLevel"),params:pF}),mF=Yr.extend({level:kk,logger:D().optional(),data:bt()}),fF=Kr.extend({method:ie("notifications/message"),params:mF}),hF=ee({name:D().optional()}),gF=ee({hints:Ae(hF).optional(),costPriority:Xe().min(0).max(1).optional(),speedPriority:Xe().min(0).max(1).optional(),intelligencePriority:Xe().min(0).max(1).optional()}),vF=ee({mode:Tr(["auto","required","none"]).optional()}),yF=ee({type:ie("tool_result"),toolUseId:D().describe("The unique identifier for the corresponding tool call."),content:Ae(_g).default([]),structuredContent:ee({}).loose().optional(),isError:Lt().optional(),_meta:xt(D(),bt()).optional()}),bF=rg("type",[yg,bg,xg]),rp=rg("type",[yg,bg,xg,rF,yF]),xF=ee({role:pc,content:ot([rp,Ae(rp)]),_meta:xt(D(),bt()).optional()}),_F=sc.extend({messages:Ae(xF),modelPreferences:gF.optional(),systemPrompt:D().optional(),includeContext:Tr(["none","thisServer","allServers"]).optional(),temperature:Xe().optional(),maxTokens:Xe().int(),stopSequences:Ae(D()).optional(),metadata:Gt.optional(),tools:Ae(Sk).optional(),toolChoice:vF.optional()}),Tg=Yt.extend({method:ie("sampling/createMessage"),params:_F}),Rg=Kt.extend({model:D(),stopReason:St(Tr(["endTurn","stopSequence","maxTokens"]).or(D())),role:pc,content:bF}),$g=Kt.extend({model:D(),stopReason:St(Tr(["endTurn","stopSequence","maxTokens","toolUse"]).or(D())),role:pc,content:ot([rp,Ae(rp)])}),wF=ee({type:ie("boolean"),title:D().optional(),description:D().optional(),default:Lt().optional()}),SF=ee({type:ie("string"),title:D().optional(),description:D().optional(),minLength:Xe().optional(),maxLength:Xe().optional(),format:Tr(["email","uri","date","date-time"]).optional(),default:D().optional()}),EF=ee({type:Tr(["number","integer"]),title:D().optional(),description:D().optional(),minimum:Xe().optional(),maximum:Xe().optional(),default:Xe().optional()}),kF=ee({type:ie("string"),title:D().optional(),description:D().optional(),enum:Ae(D()),default:D().optional()}),TF=ee({type:ie("string"),title:D().optional(),description:D().optional(),oneOf:Ae(ee({const:D(),title:D()})),default:D().optional()}),RF=ee({type:ie("string"),title:D().optional(),description:D().optional(),enum:Ae(D()),enumNames:Ae(D()).optional(),default:D().optional()}),$F=ot([kF,TF]),OF=ee({type:ie("array"),title:D().optional(),description:D().optional(),minItems:Xe().optional(),maxItems:Xe().optional(),items:ee({type:ie("string"),enum:Ae(D())}),default:Ae(D()).optional()}),PF=ee({type:ie("array"),title:D().optional(),description:D().optional(),minItems:Xe().optional(),maxItems:Xe().optional(),items:ee({anyOf:Ae(ee({const:D(),title:D()}))}),default:Ae(D()).optional()}),CF=ot([OF,PF]),IF=ot([RF,$F,CF]),AF=ot([IF,wF,SF,EF]),NF=sc.extend({mode:ie("form").optional(),message:D(),requestedSchema:ee({type:ie("object"),properties:xt(D(),AF),required:Ae(D()).optional()})}),jF=sc.extend({mode:ie("url"),message:D(),elicitationId:D(),url:D().url()}),DF=ot([NF,jF]),Og=Yt.extend({method:ie("elicitation/create"),params:DF}),MF=Yr.extend({elicitationId:D()}),zF=Kr.extend({method:ie("notifications/elicitation/complete"),params:MF}),Pg=Kt.extend({action:Tr(["accept","decline","cancel"]),content:ng(t=>t===null?void 0:t,xt(D(),ot([D(),Xe(),Lt(),Ae(D())])).optional())}),LF=ee({type:ie("ref/resource"),uri:D()});var qF=ee({type:ie("ref/prompt"),name:D()}),FF=Hr.extend({ref:ot([qF,LF]),argument:ee({name:D(),value:D()}),context:ee({arguments:xt(D(),D()).optional()}).optional()}),UF=Yt.extend({method:ie("completion/complete"),params:FF});var Cg=Kt.extend({completion:ur({values:Ae(D()).max(100),total:St(Xe().int()),hasMore:St(Lt())})}),HF=ee({uri:D().startsWith("file://"),name:D().optional(),_meta:xt(D(),bt()).optional()}),BF=Yt.extend({method:ie("roots/list"),params:Hr.optional()}),WF=Kt.extend({roots:Ae(HF)}),ZF=Kr.extend({method:ie("notifications/roots/list_changed"),params:Yr.optional()}),qme=ot([ap,I8,UF,dF,tF,X8,F8,U8,B8,Z8,G8,uF,cF,cp,up,pp,mp]),Fme=ot([ip,op,N8,ZF,uc]),Ume=ot([si,Rg,$g,Pg,WF,lp,dp,ii]),Hme=ot([ap,Tg,Og,BF,cp,up,pp,mp]),Bme=ot([ip,op,fF,K8,gg,kg,Sg,uc,zF]),Wme=ot([si,ug,Cg,wg,vg,dg,mg,hg,ea,Eg,lp,dp,ii]),de=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===ye.UrlElicitationRequired&&n){let s=n;if(s.elicitations)return new sg(s.elicitations,r)}return new t(e,r,n)}},sg=class extends de{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(ye.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function Rs(t){return t==="completed"||t==="failed"||t==="cancelled"}var Efe=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function Ig(t){let r=Xu(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=qE(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function Ag(t,e){let r=mn(t,e);if(!r.success)throw r.error;return r.data}var QF=6e4,fp=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(ip,r=>{this._oncancel(r)}),this.setNotificationHandler(op,r=>{this._onprogress(r)}),this.setRequestHandler(ap,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(cp,async(r,n)=>{let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new de(ye.InvalidParams,"Failed to retrieve task: Task not found");return{...s}}),this.setRequestHandler(up,async(r,n)=>{let s=async()=>{let i=r.params.taskId;if(this._taskMessageQueue){let o;for(;o=await this._taskMessageQueue.dequeue(i,n.sessionId);){if(o.type==="response"||o.type==="error"){let c=o.message,l=c.id,u=this._requestResolvers.get(l);if(u)if(this._requestResolvers.delete(l),o.type==="response")u(c);else{let p=c,d=new de(p.error.code,p.error.message,p.error.data);u(d)}else{let p=o.type==="response"?"Response":"Error";this._onerror(new Error(`${p} handler missing for request ${l}`))}continue}await this._transport?.send(o.message,{relatedRequestId:n.requestId})}}let a=await this._taskStore.getTask(i,n.sessionId);if(!a)throw new de(ye.InvalidParams,`Task not found: ${i}`);if(!Rs(a.status))return await this._waitForTaskUpdate(i,n.signal),await s();if(Rs(a.status)){let o=await this._taskStore.getTaskResult(i,n.sessionId);return this._clearTaskQueue(i),{...o,_meta:{...o._meta,[Ts]:{taskId:i}}}}return await s()};return await s()}),this.setRequestHandler(pp,async(r,n)=>{try{let{tasks:s,nextCursor:i}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:s,nextCursor:i,_meta:{}}}catch(s){throw new de(ye.InvalidParams,`Failed to list tasks: ${s instanceof Error?s.message:String(s)}`)}}),this.setRequestHandler(mp,async(r,n)=>{try{let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new de(ye.InvalidParams,`Task not found: ${r.params.taskId}`);if(Rs(s.status))throw new de(ye.InvalidParams,`Cannot cancel task in terminal status: ${s.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 de(ye.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...i}}catch(s){throw s instanceof de?s:new de(ye.InvalidRequest,`Failed to cancel task: ${s instanceof Error?s.message:String(s)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,s,i=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(s,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:i,onTimeout:s})}_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),de.fromError(ye.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=i=>{n?.(i),this._onerror(i)};let s=this._transport?.onmessage;this._transport.onmessage=(i,a)=>{s?.(i,a),ic(i)||hk(i)?this._onresponse(i):og(i)?this._onrequest(i,a):fk(i)?this._onnotification(i):this._onerror(new Error(`Unknown message type: ${JSON.stringify(i)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();let r=de.fromError(ye.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,s=this._transport,i=e.params?._meta?.[Ts]?.taskId;if(n===void 0){let u={jsonrpc:"2.0",id:e.id,error:{code:ye.MethodNotFound,message:"Method not found"}};i&&this._taskMessageQueue?this._enqueueTaskMessage(i,{type:"error",message:u,timestamp:Date.now()},s?.sessionId).catch(p=>this._onerror(new Error(`Failed to enqueue error response: ${p}`))):s?.send(u).catch(p=>this._onerror(new Error(`Failed to send an error response: ${p}`)));return}let a=new AbortController;this._requestHandlerAbortControllers.set(e.id,a);let o=pk(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,s?.sessionId):void 0,l={signal:a.signal,sessionId:s?.sessionId,_meta:e.params?._meta,sendNotification:async u=>{let p={relatedRequestId:e.id};i&&(p.relatedTask={taskId:i}),await this.notification(u,p)},sendRequest:async(u,p,d)=>{let m={...d,relatedRequestId:e.id};i&&!m.relatedTask&&(m.relatedTask={taskId:i});let f=m.relatedTask?.taskId??i;return f&&c&&await c.updateTaskStatus(f,"input_required"),await this.request(u,p,m)},authInfo:r?.authInfo,requestId:e.id,requestInfo:r?.requestInfo,taskId:i,taskStore:c,taskRequestedTtl:o?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{o&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,l)).then(async u=>{if(a.signal.aborted)return;let p={result:u,jsonrpc:"2.0",id:e.id};i&&this._taskMessageQueue?await this._enqueueTaskMessage(i,{type:"response",message:p,timestamp:Date.now()},s?.sessionId):await s?.send(p)},async u=>{if(a.signal.aborted)return;let p={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(u.code)?u.code:ye.InternalError,message:u.message??"Internal error",...u.data!==void 0&&{data:u.data}}};i&&this._taskMessageQueue?await this._enqueueTaskMessage(i,{type:"error",message:p,timestamp:Date.now()},s?.sessionId):await s?.send(p)}).catch(u=>this._onerror(new Error(`Failed to send response: ${u}`))).finally(()=>{this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:r,...n}=e.params,s=Number(r),i=this._progressHandlers.get(s);if(!i){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let a=this._responseHandlers.get(s),o=this._timeoutInfo.get(s);if(o&&a&&o.resetTimeoutOnProgress)try{this._resetTimeout(s)}catch(c){this._responseHandlers.delete(s),this._progressHandlers.delete(s),this._cleanupTimeout(s),a(c);return}i(n)}_onresponse(e){let r=Number(e.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),ic(e))n(e);else{let a=new de(e.error.code,e.error.message,e.error.data);n(a)}return}let s=this._responseHandlers.get(r);if(s===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 i=!1;if(ic(e)&&e.result&&typeof e.result=="object"){let a=e.result;if(a.task&&typeof a.task=="object"){let o=a.task;typeof o.taskId=="string"&&(i=!0,this._taskProgressTokens.set(o.taskId,r))}}if(i||this._progressHandlers.delete(r),ic(e))s(e);else{let a=de.fromError(e.error.code,e.error.message,e.error.data);s(a)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,r,n){let{task:s}=n??{};if(!s){try{yield{type:"result",result:await this.request(e,r,n)}}catch(a){yield{type:"error",error:a instanceof de?a:new de(ye.InternalError,String(a))}}return}let i;try{let a=await this.request(e,ii,n);if(a.task)i=a.task.taskId,yield{type:"taskCreated",task:a.task};else throw new de(ye.InternalError,"Task creation did not return a task");for(;;){let o=await this.getTask({taskId:i},n);if(yield{type:"taskStatus",task:o},Rs(o.status)){o.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:i},r,n)}:o.status==="failed"?yield{type:"error",error:new de(ye.InternalError,`Task ${i} failed`)}:o.status==="cancelled"&&(yield{type:"error",error:new de(ye.InternalError,`Task ${i} was cancelled`)});return}if(o.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:i},r,n)};return}let c=o.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(l=>setTimeout(l,c)),n?.signal?.throwIfAborted()}}catch(a){yield{type:"error",error:a instanceof de?a:new de(ye.InternalError,String(a))}}}request(e,r,n){let{relatedRequestId:s,resumptionToken:i,onresumptiontoken:a,task:o,relatedTask:c}=n??{};return new Promise((l,u)=>{let p=y=>{u(y)};if(!this._transport){p(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),o&&this.assertTaskCapability(e.method)}catch(y){p(y);return}n?.signal?.throwIfAborted();let d=this._requestMessageId++,m={...e,jsonrpc:"2.0",id:d};n?.onprogress&&(this._progressHandlers.set(d,n.onprogress),m.params={...e.params,_meta:{...e.params?._meta||{},progressToken:d}}),o&&(m.params={...m.params,task:o}),c&&(m.params={...m.params,_meta:{...m.params?._meta||{},[Ts]:c}});let f=y=>{this._responseHandlers.delete(d),this._progressHandlers.delete(d),this._cleanupTimeout(d),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:d,reason:String(y)}},{relatedRequestId:s,resumptionToken:i,onresumptiontoken:a}).catch(x=>this._onerror(new Error(`Failed to send cancellation: ${x}`)));let b=y instanceof de?y:new de(ye.RequestTimeout,String(y));u(b)};this._responseHandlers.set(d,y=>{if(!n?.signal?.aborted){if(y instanceof Error)return u(y);try{let b=mn(r,y.result);b.success?l(b.data):u(b.error)}catch(b){u(b)}}}),n?.signal?.addEventListener("abort",()=>{f(n?.signal?.reason)});let v=n?.timeout??QF,g=()=>f(de.fromError(ye.RequestTimeout,"Request timed out",{timeout:v}));this._setupTimeout(d,v,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let h=c?.taskId;if(h){let y=b=>{let x=this._responseHandlers.get(d);x?x(b):this._onerror(new Error(`Response handler missing for side-channeled request ${d}`))};this._requestResolvers.set(d,y),this._enqueueTaskMessage(h,{type:"request",message:m,timestamp:Date.now()}).catch(b=>{this._cleanupTimeout(d),u(b)})}else this._transport.send(m,{relatedRequestId:s,resumptionToken:i,onresumptiontoken:a}).catch(y=>{this._cleanupTimeout(d),u(y)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},lp,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},dp,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},yk,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 o={...e,jsonrpc:"2.0",params:{...e.params,_meta:{...e.params?._meta||{},[Ts]:r.relatedTask}}};await this._enqueueTaskMessage(n,{type:"notification",message:o,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 o={...e,jsonrpc:"2.0"};r?.relatedTask&&(o={...o,params:{...o.params,_meta:{...o.params?._meta||{},[Ts]:r.relatedTask}}}),this._transport?.send(o,r).catch(c=>this._onerror(c))});return}let a={...e,jsonrpc:"2.0"};r?.relatedTask&&(a={...a,params:{...a.params,_meta:{...a.params?._meta||{},[Ts]:r.relatedTask}}}),await this._transport.send(a,r)}setRequestHandler(e,r){let n=Ig(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(s,i)=>{let a=Ag(e,s);return Promise.resolve(r(a,i))})}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=Ig(e);this._notificationHandlers.set(n,s=>{let i=Ag(e,s);return Promise.resolve(r(i))})}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 s=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(e,r,n,s)}async _clearTaskQueue(e,r){if(this._taskMessageQueue){let n=await this._taskMessageQueue.dequeueAll(e,r);for(let s of n)if(s.type==="request"&&og(s.message)){let i=s.message.id,a=this._requestResolvers.get(i);a?(a(new de(ye.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(i)):this._onerror(new Error(`Resolver missing for request ${i} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let s=await this._taskStore?.getTask(e);s?.pollInterval&&(n=s.pollInterval)}catch{}return new Promise((s,i)=>{if(r.aborted){i(new de(ye.InvalidRequest,"Request cancelled"));return}let a=setTimeout(s,n);r.addEventListener("abort",()=>{clearTimeout(a),i(new de(ye.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async s=>{if(!e)throw new Error("No request provided");return await n.createTask(s,e.id,{method:e.method,params:e.params},r)},getTask:async s=>{let i=await n.getTask(s,r);if(!i)throw new de(ye.InvalidParams,"Failed to retrieve task: Task not found");return i},storeTaskResult:async(s,i,a)=>{await n.storeTaskResult(s,i,a,r);let o=await n.getTask(s,r);if(o){let c=uc.parse({method:"notifications/tasks/status",params:o});await this.notification(c),Rs(o.status)&&this._cleanupTaskProgressHandler(s)}},getTaskResult:s=>n.getTaskResult(s,r),updateTaskStatus:async(s,i,a)=>{let o=await n.getTask(s,r);if(!o)throw new de(ye.InvalidParams,`Task "${s}" not found - it may have been cleaned up`);if(Rs(o.status))throw new de(ye.InvalidParams,`Cannot update task "${s}" from terminal status "${o.status}" to "${i}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(s,i,a,r);let c=await n.getTask(s,r);if(c){let l=uc.parse({method:"notifications/tasks/status",params:c});await this.notification(l),Rs(c.status)&&this._cleanupTaskProgressHandler(s)}},listTasks:s=>n.listTasks(s,r)}}};function Tk(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function Rk(t,e){let r={...t};for(let n in e){let s=n,i=e[s];if(i===void 0)continue;let a=r[s];Tk(a)&&Tk(i)?r[s]={...a,...i}:r[s]=i}return r}var mR=pe(yy(),1),fR=pe(dR(),1);function UH(){let t=new mR.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,fR.default)(t),t}var Jp=class{constructor(e){this._ajv=e??UH()}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 Qp=class{constructor(e){this._client=e}async*callToolStream(e,r=ea,n){let s=this._client,i={...n,task:n?.task??(s.isToolTask(e.name)?{}:void 0)},a=s.requestStream({method:"tools/call",params:e},r,i),o=s.getToolOutputValidator(e.name);for await(let c of a){if(c.type==="result"&&o){let l=c.result;if(!l.structuredContent&&!l.isError){yield{type:"error",error:new de(ye.InvalidRequest,`Tool ${e.name} has an output schema but did not return structured content`)};return}if(l.structuredContent)try{let u=o(l.structuredContent);if(!u.valid){yield{type:"error",error:new de(ye.InvalidParams,`Structured content does not match the tool's output schema: ${u.errorMessage}`)};return}}catch(u){if(u instanceof de){yield{type:"error",error:u};return}yield{type:"error",error:new de(ye.InvalidParams,`Failed to validate structured content: ${u instanceof Error?u.message:String(u)}`)};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 hR(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 gR(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 Xp(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 s of Object.keys(n)){let i=n[s];r[s]===void 0&&Object.prototype.hasOwnProperty.call(i,"default")&&(r[s]=i.default),r[s]!==void 0&&Xp(i,r[s])}}if(Array.isArray(t.anyOf))for(let r of t.anyOf)typeof r!="boolean"&&Xp(r,e);if(Array.isArray(t.oneOf))for(let r of t.oneOf)typeof r!="boolean"&&Xp(r,e)}}function HH(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 va=class extends fp{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 Jp,r?.listChanged&&(this._pendingListChangedConfig=r.listChanged)}_setupListChangedHandlers(e){e.tools&&this._serverCapabilities?.tools?.listChanged&&this._setupListChangedHandler("tools",kg,e.tools,async()=>(await this.listTools()).tools),e.prompts&&this._serverCapabilities?.prompts?.listChanged&&this._setupListChangedHandler("prompts",Sg,e.prompts,async()=>(await this.listPrompts()).prompts),e.resources&&this._serverCapabilities?.resources?.listChanged&&this._setupListChangedHandler("resources",gg,e.resources,async()=>(await this.listResources()).resources)}get experimental(){return this._experimental||(this._experimental={tasks:new Qp(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=Rk(this._capabilities,e)}setRequestHandler(e,r){let s=Xu(e)?.method;if(!s)throw new Error("Schema is missing a method literal");let i;if(Ji(s)){let o=s;i=o._zod?.def?.value??o.value}else{let o=s;i=o._def?.value??o.value}if(typeof i!="string")throw new Error("Schema method literal must be a string");let a=i;if(a==="elicitation/create"){let o=async(c,l)=>{let u=mn(Og,c);if(!u.success){let y=u.error instanceof Error?u.error.message:String(u.error);throw new de(ye.InvalidParams,`Invalid elicitation request: ${y}`)}let{params:p}=u.data;p.mode=p.mode??"form";let{supportsFormMode:d,supportsUrlMode:m}=HH(this._capabilities.elicitation);if(p.mode==="form"&&!d)throw new de(ye.InvalidParams,"Client does not support form-mode elicitation requests");if(p.mode==="url"&&!m)throw new de(ye.InvalidParams,"Client does not support URL-mode elicitation requests");let f=await Promise.resolve(r(c,l));if(p.task){let y=mn(ii,f);if(!y.success){let b=y.error instanceof Error?y.error.message:String(y.error);throw new de(ye.InvalidParams,`Invalid task creation result: ${b}`)}return y.data}let v=mn(Pg,f);if(!v.success){let y=v.error instanceof Error?v.error.message:String(v.error);throw new de(ye.InvalidParams,`Invalid elicitation result: ${y}`)}let g=v.data,h=p.mode==="form"?p.requestedSchema:void 0;if(p.mode==="form"&&g.action==="accept"&&g.content&&h&&this._capabilities.elicitation?.form?.applyDefaults)try{Xp(h,g.content)}catch{}return g};return super.setRequestHandler(e,o)}if(a==="sampling/createMessage"){let o=async(c,l)=>{let u=mn(Tg,c);if(!u.success){let g=u.error instanceof Error?u.error.message:String(u.error);throw new de(ye.InvalidParams,`Invalid sampling request: ${g}`)}let{params:p}=u.data,d=await Promise.resolve(r(c,l));if(p.task){let g=mn(ii,d);if(!g.success){let h=g.error instanceof Error?g.error.message:String(g.error);throw new de(ye.InvalidParams,`Invalid task creation result: ${h}`)}return g.data}let f=p.tools||p.toolChoice?$g:Rg,v=mn(f,d);if(!v.success){let g=v.error instanceof Error?v.error.message:String(v.error);throw new de(ye.InvalidParams,`Invalid sampling result: ${g}`)}return v.data};return super.setRequestHandler(e,o)}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:ig,capabilities:this._capabilities,clientInfo:this._clientInfo}},ug,r);if(n===void 0)throw new Error(`Server sent invalid initialize result: ${n}`);if(!ck.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){hR(this._serverCapabilities?.tasks?.requests,e,"Server")}assertTaskHandlerCapability(e){this._capabilities&&gR(this._capabilities.tasks?.requests,e,"Client")}async ping(e){return this.request({method:"ping"},si,e)}async complete(e,r){return this.request({method:"completion/complete",params:e},Cg,r)}async setLoggingLevel(e,r){return this.request({method:"logging/setLevel",params:{level:e}},si,r)}async getPrompt(e,r){return this.request({method:"prompts/get",params:e},wg,r)}async listPrompts(e,r){return this.request({method:"prompts/list",params:e},vg,r)}async listResources(e,r){return this.request({method:"resources/list",params:e},dg,r)}async listResourceTemplates(e,r){return this.request({method:"resources/templates/list",params:e},mg,r)}async readResource(e,r){return this.request({method:"resources/read",params:e},hg,r)}async subscribeResource(e,r){return this.request({method:"resources/subscribe",params:e},si,r)}async unsubscribeResource(e,r){return this.request({method:"resources/unsubscribe",params:e},si,r)}async callTool(e,r=ea,n){if(this.isToolTaskRequired(e.name))throw new de(ye.InvalidRequest,`Tool "${e.name}" requires task-based execution. Use client.experimental.tasks.callToolStream() instead.`);let s=await this.request({method:"tools/call",params:e},r,n),i=this.getToolOutputValidator(e.name);if(i){if(!s.structuredContent&&!s.isError)throw new de(ye.InvalidRequest,`Tool ${e.name} has an output schema but did not return structured content`);if(s.structuredContent)try{let a=i(s.structuredContent);if(!a.valid)throw new de(ye.InvalidParams,`Structured content does not match the tool's output schema: ${a.errorMessage}`)}catch(a){throw a instanceof de?a:new de(ye.InvalidParams,`Failed to validate structured content: ${a instanceof Error?a.message:String(a)}`)}}return s}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 s=this._jsonSchemaValidator.getValidator(r.outputSchema);this._cachedToolOutputValidators.set(r.name,s)}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},Eg,r);return this.cacheToolMetadata(n.tools),n}_setupListChangedHandler(e,r,n,s){let i=Ek.safeParse(n);if(!i.success)throw new Error(`Invalid ${e} listChanged options: ${i.error.message}`);if(typeof n.onChanged!="function")throw new Error(`Invalid ${e} listChanged options: onChanged must be a function`);let{autoRefresh:a,debounceMs:o}=i.data,{onChanged:c}=n,l=async()=>{if(!a){c(null,null);return}try{let p=await s();c(null,p)}catch(p){let d=p instanceof Error?p:new Error(String(p));c(d,null)}},u=()=>{if(o){let p=this._listChangedDebounceTimers.get(e);p&&clearTimeout(p);let d=setTimeout(l,o);this._listChangedDebounceTimers.set(e,d)}else l()};this.setNotificationHandler(r,u)}async sendRootsListChanged(){return this.notification({method:"notifications/roots/list_changed"})}};var a$=pe(s$(),1),Uc=pe(require("node:process"),1),o$=require("node:stream");var td=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),gB(r)}clear(){this._buffer=void 0}};function gB(t){return gk.parse(JSON.parse(t))}function i$(t){return JSON.stringify(t)+` -`}var vB=Uc.default.platform==="win32"?["APPDATA","HOMEDRIVE","HOMEPATH","LOCALAPPDATA","PATH","PROCESSOR_ARCHITECTURE","SYSTEMDRIVE","SYSTEMROOT","TEMP","USERNAME","USERPROFILE","PROGRAMFILES"]:["HOME","LOGNAME","PATH","SHELL","TERM","USER"];function yB(){let t={};for(let e of vB){let r=Uc.default.env[e];r!==void 0&&(r.startsWith("()")||(t[e]=r))}return t}var xa=class{constructor(e){this._readBuffer=new td,this._stderrStream=null,this._serverParams=e,(e.stderr==="pipe"||e.stderr==="overlapped")&&(this._stderrStream=new o$.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,a$.default)(this._serverParams.command,this._serverParams.args??[],{env:{...yB(),...this._serverParams.env},stdio:["pipe","pipe",this._serverParams.stderr??"inherit"],shell:!1,windowsHide:Uc.default.platform==="win32"&&bB(),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=i$(e);this._process.stdin.write(n)?r():this._process.stdin.once("drain",r)})}};function bB(){return"type"in Uc.default}_n();se();Gc();se();_n();var kB=5e3;async function pd(t,e={},r=kB){let n=new Promise((s,i)=>setTimeout(()=>i(new Error(`Fetch timeout after ${r}ms`)),r));return Promise.race([fetch(t,e),n])}var TB="6.7.7";function dd(t){let e=xn();return`http://${e.includes(":")&&!e.startsWith("[")?`[${e}]`:e}:${t}`}async function Wy(t){try{return(await pd(`${dd(t)}/api/health`)).ok}catch{return!1}}async function md(t,e=3e4){let r=Date.now();for(;Date.now()-rsetTimeout(n,500))}return!1}async function Yc(t,e=1e4){let r=Date.now();for(;Date.now()-rsetTimeout(n,500))}return!1}async function Kc(t){try{let e=await pd(`${dd(t)}/api/admin/shutdown`,{method:"POST"});return e.ok?!0:(_.warn("SYSTEM","Shutdown request returned error",{port:t,status:e.status}),!1)}catch(e){return e instanceof Error&&(e.message?.includes("ECONNREFUSED")||e.message?.includes("Fetch timeout"))?(_.debug("SYSTEM","Worker already stopped or not responding",{port:t}),!1):(_.error("SYSTEM","Shutdown request failed unexpectedly",{port:t},e),!1)}}function RB(){return TB}async function $B(t){try{let e=await pd(`${dd(t)}/api/version`);return e.ok?(await e.json()).version:null}catch{return _.debug("SYSTEM","Could not fetch worker version",{port:t}),null}}async function w$(t){let e=RB(),r=await $B(t);return r?{matches:e===r,pluginVersion:e,workerVersion:r}:{matches:!0,pluginVersion:e,workerVersion:r}}se();Gc();var Jc=5e3;async function Qc(t,e,r){let n=new Promise(i=>setTimeout(()=>{_.warn("SYSTEM",`${r} timed out after ${e}ms`),i({completed:!1})},e)),s=t.then(i=>({completed:!0,result:i}));return Promise.race([s,n])}async function S$(t){_.info("SYSTEM","Shutdown initiated"),Sn();let e=await Qc(qy(process.pid),Jc,"Enumerate child processes"),r=e.completed?e.result??[]:[];if(_.info("SYSTEM","Found child processes",{count:r.length,pids:r}),t.server&&(await Qc(OB(t.server),Jc,"Close HTTP server"),_.info("SYSTEM","HTTP server closed")),await Qc(t.sessionManager.shutdownAll(),Jc,"Shutdown sessions"),t.mcpClient&&(await Qc(t.mcpClient.close(),Jc,"Close MCP client"),_.info("SYSTEM","MCP client closed")),t.dbManager&&await Qc(t.dbManager.close(),Jc,"Close database"),r.length>0){_.info("SYSTEM","Force killing remaining children");for(let n of r)await Fy(n);await Uy(r,5e3)}_.info("SYSTEM","Worker shutdown complete")}async function OB(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"))}Gc();se();_a();var PB={waitForHealth:md,checkVersionMatch:w$,httpShutdown:Kc,waitForPortFree:Yc,isPortInUse:Wy,spawnDaemon:Vc,writePidFile:Zc,removePidFile:Sn,cleanStalePidFile:Ly,getPlatformTimeout:yi};async function Zy(t,e,r=PB){if(r.cleanStalePidFile(),await r.waitForHealth(t,1e3)){let i=await r.checkVersionMatch(t);if(i.matches)return{ready:!0};if(_.info("SYSTEM","Worker version mismatch detected - auto-restarting",{pluginVersion:i.pluginVersion,workerVersion:i.workerVersion}),await r.httpShutdown(t),!await r.waitForPortFree(t,r.getPlatformTimeout(er.PORT_IN_USE_WAIT)))return{ready:!1,error:"Port did not free after version mismatch restart"};r.removePidFile()}if(await r.isPortInUse(t))return _.info("SYSTEM","Port in use, waiting for worker to become healthy"),await r.waitForHealth(t,r.getPlatformTimeout(er.PORT_IN_USE_WAIT))?{ready:!0}:{ready:!1,error:"Port in use but worker not responding"};_.info("SYSTEM","Starting worker daemon");let n=r.spawnDaemon(e,t);return n===void 0?{ready:!1,error:"Failed to spawn worker daemon"}:(r.writePidFile({pid:n,port:t,startedAt:new Date().toISOString()}),await r.waitForHealth(t,r.getPlatformTimeout(er.POST_SPAWN_WAIT))?{ready:!0}:(r.removePidFile(),{ready:!1,error:"Worker failed to start (health check timeout)"}))}var DD=pe(Kl(),1),v_=pe(require("fs"),1),y_=pe(require("path"),1);se();var p_=pe(Kl(),1),ED=pe(uD(),1),kD=pe(fD(),1),TD=pe(require("path"),1);yr();se();var ate=[/^https?:\/\/localhost(:\d+)?$/,/^https?:\/\/127\.0\.0\.1(:\d+)?$/,/^https?:\/\/\[::1\](:\d+)?$/];function ote(t){return t===void 0?!0:ate.some(e=>e.test(t))}function d_(t){let e=[];e.push(p_.default.json({limit:"50mb"})),e.push((0,ED.default)({origin:(s,i)=>{ote(s)?i(null,!0):(_.warn("SECURITY","CORS request blocked",{origin:s}),i(null,!1))}})),e.push((0,kD.default)()),e.push((s,i,a)=>{let c=[".html",".js",".css",".svg",".png",".jpg",".jpeg",".webp",".woff",".woff2",".ttf",".eot"].some(f=>s.path.endsWith(f)),l=s.path==="/api/logs";if(s.path.startsWith("/health")||s.path==="/"||c||l)return a();let u=Date.now(),p=`${s.method}-${Date.now()}`,d=t(s.method,s.path,s.body);_.info("HTTP",`\u2192 ${s.method} ${s.path}`,{requestId:p},d);let m=i.send.bind(i);i.send=function(f){let v=Date.now()-u;return _.info("HTTP",`\u2190 ${i.statusCode} ${s.path}`,{requestId:p,duration:`${v}ms`}),m(f)},a()});let r=ds(),n=TD.default.join(r,"plugin","ui");return e.push(p_.default.static(n)),e}function Tm(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 m_(t,e,r){if(!r||Object.keys(r).length===0||e.includes("/init"))return"";if(e.includes("/observations")){let n=r.tool_name||"?",s=r.tool_input;return`tool=${_.formatTool(n,s)}`}return e.includes("/summarize")?"requesting summary":""}se();var to=class extends Error{constructor(r,n=500,s,i){super(r);this.statusCode=n;this.code=s;this.details=i;this.name="AppError"}};function RD(t,e,r,n){let s={error:t,message:e};return r&&(s.code=r),n&&(s.details=n),s}var $D=(t,e,r,n)=>{let s=t instanceof to?t.statusCode:500;_.error("HTTP",`Error handling ${e.method} ${e.path}`,{statusCode:s,error:t.message,code:t instanceof to?t.code:void 0},t);let i=RD(t.name||"Error",t.message,t instanceof to?t.code:void 0,t instanceof to?t.details:void 0);r.status(s).json(i)};function OD(t,e){e.status(404).json(RD("NotFound",`Cannot ${t.method} ${t.path}`))}var PD=pe(require("crypto"),1);se();Br();yr();var CD="claude_pilot_session",ID=1440*60*1e3,ro=new Map;function cte(t){let e=t.ip||t.socket.remoteAddress||"";return e==="127.0.0.1"||e==="::1"||e==="::ffff:127.0.0.1"||e==="localhost"}function Rm(){return De.loadFromFile(ar).CLAUDE_PILOT_REMOTE_TOKEN}function lte(){return PD.default.randomBytes(32).toString("hex")}function ute(t,e){let r=ro.get(t);return r?Date.now()-r.createdAt>ID?(ro.delete(t),!1):!0:!1}function AD(t){let e=lte();return ro.set(e,{createdAt:Date.now(),ip:t}),e}function ND(t){ro.delete(t)}function pte(){let t=Date.now();for(let[e,r]of ro.entries())t-r.createdAt>ID&&ro.delete(e)}setInterval(pte,3600*1e3);function f_(t,e,r){if(cte(t))return t.auth={isLocal:!0,scopes:["*"]},r();if(t.path==="/login"||t.path.startsWith("/api/auth/"))return r();let n=t.ip||t.socket.remoteAddress||"unknown",s=t.cookies?.[CD];if(s&&ute(s,n))return t.auth={isLocal:!1,clientId:"web-session",scopes:["*"]},r();let i=t.headers.authorization;if(i&&i.startsWith("Bearer ")){let c=i.slice(7),l=Rm();if(l&&c===l)return t.auth={isLocal:!1,clientId:"api-client",scopes:["*"]},r()}if((t.headers.accept||"").includes("text/html")&&(t.path==="/"||t.path==="/viewer.html")){e.redirect("/login");return}_.warn("SECURITY","Unauthorized request",{path:t.path,ip:n}),e.status(401).json({code:"UNAUTHORIZED",message:"Authentication required"})}function h_(){return CD}function no(){return!!Rm()}se();var jD=new Map;function dte(t){let e=t.ip||t.socket.remoteAddress||"";return e==="127.0.0.1"||e==="::1"||e==="::ffff:127.0.0.1"}function mte(t){let e=t.headers.authorization?.slice(7,23);return e?`token:${e}`:`ip:${t.ip||t.socket.remoteAddress||"unknown"}`}function g_(t=1e3,e=6e4){return(r,n,s)=>{if(dte(r))return s();let i=mte(r),a=Date.now(),o=a-e,c=jD.get(i);if(c||(c={timestamps:[]},jD.set(i,c)),c.timestamps=c.timestamps.filter(u=>u>o),c.timestamps.length>=t){let u=Math.ceil(e/1e3);_.warn("SECURITY","Rate limit exceeded",{key:i,requests:c.timestamps.length,limit:t}),n.setHeader("Retry-After",u.toString()),n.setHeader("X-RateLimit-Limit",t.toString()),n.setHeader("X-RateLimit-Remaining","0"),n.setHeader("X-RateLimit-Reset",Math.ceil((a+e)/1e3).toString()),n.status(429).json({code:"RATE_LIMITED",message:"Too many requests",retryAfter:u});return}c.timestamps.push(a);let l=t-c.timestamps.length;n.setHeader("X-RateLimit-Limit",t.toString()),n.setHeader("X-RateLimit-Remaining",l.toString()),n.setHeader("X-RateLimit-Reset",Math.ceil((a+e)/1e3).toString()),s()}}_n();var fte="6.7.7",$m=class{app;server=null;options;startTime=Date.now();constructor(e){this.options=e,this.app=(0,DD.default)(),this.setupMiddleware(),this.setupCoreRoutes()}getHttpServer(){return this.server}async listen(e,r){return new Promise((n,s)=>{this.server=this.app.listen(e,r,()=>{_.info("SYSTEM","HTTP server started",{host:r,port:e,pid:process.pid}),n()}),this.server.on("error",s)})}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(OD),this.app.use($D)}setupMiddleware(){d_(m_).forEach(s=>this.app.use(s)),this.app.use(g_(1e3,6e4));let r=od(),n=no();r!=="127.0.0.1"&&r!=="localhost"&&n?(_.info("SYSTEM","Enabling authentication middleware for network access",{bind:r}),this.app.use(f_)):r!=="127.0.0.1"&&r!=="localhost"&&!n&&_.warn("SYSTEM","Network access enabled WITHOUT authentication - set CLAUDE_PILOT_REMOTE_TOKEN for security",{bind:r})}setupCoreRoutes(){let e="TEST-008-wrapper-ipc";this.app.get("/api/health",(r,n)=>{n.status(200).json({status:"ok",build:e,managed:process.env.CLAUDE_PILOT_MANAGED==="true",hasIpc:typeof process.send=="function",platform:process.platform,pid:process.pid,initialized:this.options.getInitializationComplete(),coreReady:this.options.getCoreReady(),mcpReady:this.options.getMcpReady()})}),this.app.get("/api/core-ready",(r,n)=>{this.options.getCoreReady()?n.status(200).json({status:"ready",message:"Core services ready (Database + SearchManager)"}):n.status(503).json({status:"initializing",message:"Core services still initializing, please retry"})}),this.app.get("/api/readiness",(r,n)=>{this.options.getInitializationComplete()?n.status(200).json({status:"ready",mcpReady:this.options.getMcpReady()}):n.status(503).json({status:"initializing",message:"Worker is still initializing, please retry"})}),this.app.get("/api/version",(r,n)=>{n.status(200).json({version:fte})}),this.app.get("/api/process-stats",async(r,n)=>{try{let{getProcessStats:s}=await Promise.resolve().then(()=>(Gc(),_$)),i=await s();n.status(200).json({...i,uptime:Math.round((Date.now()-this.startTime)/1e3),platform:process.platform,pid:process.pid})}catch(s){_.error("SYSTEM","Failed to get process stats",{},s),n.status(500).json({error:"Failed to get process stats"})}}),this.app.get("/api/instructions",async(r,n)=>{let s=r.query.topic||"all",i=r.query.operation;try{let a;if(i){let o=y_.default.join(__dirname,"../skills/mem-search/operations",`${i}.md`);a=await v_.promises.readFile(o,"utf-8")}else{let o=y_.default.join(__dirname,"../skills/mem-search/SKILL.md"),c=await v_.promises.readFile(o,"utf-8");a=this.extractInstructionSection(c,s)}n.json({content:[{type:"text",text:a}]})}catch{n.status(404).json({error:"Instruction not found"})}}),this.app.post("/api/admin/restart",Tm,async(r,n)=>{n.json({status:"restarting"}),process.platform==="win32"&&process.env.CLAUDE_PILOT_MANAGED==="true"&&process.send?(_.info("SYSTEM","Sending restart request to wrapper"),process.send({type:"restart"})):setTimeout(async()=>{await this.options.onRestart()},100)}),this.app.post("/api/admin/shutdown",Tm,async(r,n)=>{n.json({status:"shutting_down"}),process.platform==="win32"&&process.env.CLAUDE_PILOT_MANAGED==="true"&&process.send?(_.info("SYSTEM","Sending shutdown request to wrapper"),process.send({type:"shutdown"})):setTimeout(async()=>{await this.options.onShutdown()},100)})}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 s=e.indexOf(r),i=e.indexOf(n);return s===-1?e:i===-1?e.substring(s):e.substring(s,i).trim()}};Om();var zD=require("bun:sqlite");yr();se();var Pm=class{db;constructor(e){e||(Rn(zr),e=Ql),this.db=new zD.Database(e),this.db.run("PRAGMA journal_mode = WAL"),this.ensureFTSTables()}ensureFTSTables(){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")||(_.info("DB","Creating FTS5 tables"),this.db.run(` + path: iss.path ? [${ri(y)}, ...iss.path] : [${ri(y)}] + })));`),d.write(`newResult[${ri(y)}] = ${b}.value`)}d.write("payload.value = newResult;"),d.write("return payload;");let h=d.compile();return(y,b)=>h(p,y,b)},s,i=Yi,a=!Fu.jitless,c=a&&kh.value,l=e.catchall,u;t._zod.parse=(p,d)=>{u??(u=r.value);let m=p.value;if(!i(m))return p.issues.push({expected:"object",code:"invalid_type",input:m,inst:t}),p;let f=[];if(a&&c&&d?.async===!1&&d.jitless!==!0)s||(s=n(e.shape)),p=s(p,d);else{p.value={};let b=u.shape;for(let x of u.keys){let w=b[x],S=w._zod.run({value:m[x],issues:[]},d),E=w._zod.optin==="optional"&&w._zod.optout==="optional";S instanceof Promise?f.push(S.then(k=>E?uS(k,p,x,m):Gu(k,p,x))):E?uS(S,p,x,m):Gu(S,p,x)}}if(!l)return f.length?Promise.all(f).then(()=>p):p;let v=[],g=u.keySet,h=l._zod,y=h.def.type;for(let b of Object.keys(m)){if(g.has(b))continue;if(y==="never"){v.push(b);continue}let x=h.run({value:m[b],issues:[]},d);x instanceof Promise?f.push(x.then(w=>Gu(w,p,b))):Gu(x,p,b)}return v.length&&p.issues.push({code:"unrecognized_keys",keys:v,input:m,inst:t}),f.length?Promise.all(f).then(()=>p):p}});function pS(t,e,r,n){for(let s of t)if(s.issues.length===0)return e.value=s.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(s=>s.issues.map(i=>dn(i,n,Gr())))}),e}var qh=z("$ZodUnion",(t,e)=>{at.init(t,e),it(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),it(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),it(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),it(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=>Ko(n.source)).join("|")})$`)}}),t._zod.parse=(r,n)=>{let s=!1,i=[];for(let a of e.options){let o=a._zod.run({value:r.value,issues:[]},n);if(o instanceof Promise)i.push(o),s=!0;else{if(o.issues.length===0)return o;i.push(o)}}return s?Promise.all(i).then(a=>pS(a,r,t,n)):pS(i,r,t,n)}}),YS=z("$ZodDiscriminatedUnion",(t,e)=>{qh.init(t,e);let r=t._zod.parse;it(t._zod,"propValues",()=>{let s={};for(let i of e.options){let a=i._zod.propValues;if(!a||Object.keys(a).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(i)}"`);for(let[o,c]of Object.entries(a)){s[o]||(s[o]=new Set);for(let l of c)s[o].add(l)}}return s});let n=Go(()=>{let s=e.options,i=new Map;for(let a of s){let o=a._zod.propValues[e.discriminator];if(!o||o.size===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(a)}"`);for(let c of o){if(i.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);i.set(c,a)}}return i});t._zod.parse=(s,i)=>{let a=s.value;if(!Yi(a))return s.issues.push({code:"invalid_type",expected:"object",input:a,inst:t}),s;let o=n.value.get(a?.[e.discriminator]);return o?o._zod.run(s,i):e.unionFallback?r(s,i):(s.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:a,path:[e.discriminator],inst:t}),s)}}),KS=z("$ZodIntersection",(t,e)=>{at.init(t,e),t._zod.parse=(r,n)=>{let s=r.value,i=e.left._zod.run({value:s,issues:[]},n),a=e.right._zod.run({value:s,issues:[]},n);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([c,l])=>dS(r,c,l)):dS(r,i,a)}});function zh(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(Ki(t)&&Ki(e)){let r=Object.keys(e),n=Object.keys(t).filter(i=>r.indexOf(i)!==-1),s={...t,...e};for(let i of n){let a=zh(t[i],e[i]);if(!a.valid)return{valid:!1,mergeErrorPath:[i,...a.mergeErrorPath]};s[i]=a.data}return{valid:!0,data:s}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n{at.init(t,e),t._zod.parse=(r,n)=>{let s=r.value;if(!Ki(s))return r.issues.push({expected:"record",code:"invalid_type",input:s,inst:t}),r;let i=[];if(e.keyType._zod.values){let a=e.keyType._zod.values;r.value={};for(let c of a)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){let l=e.valueType._zod.run({value:s[c],issues:[]},n);l instanceof Promise?i.push(l.then(u=>{u.issues.length&&r.issues.push(...Dn(c,u.issues)),r.value[c]=u.value})):(l.issues.length&&r.issues.push(...Dn(c,l.issues)),r.value[c]=l.value)}let o;for(let c in s)a.has(c)||(o=o??[],o.push(c));o&&o.length>0&&r.issues.push({code:"unrecognized_keys",input:s,inst:t,keys:o})}else{r.value={};for(let a of Reflect.ownKeys(s)){if(a==="__proto__")continue;let o=e.keyType._zod.run({value:a,issues:[]},n);if(o instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(o.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:o.issues.map(l=>dn(l,n,Gr())),input:a,path:[a],inst:t}),r.value[o.value]=o.value;continue}let c=e.valueType._zod.run({value:s[a],issues:[]},n);c instanceof Promise?i.push(c.then(l=>{l.issues.length&&r.issues.push(...Dn(a,l.issues)),r.value[o.value]=l.value})):(c.issues.length&&r.issues.push(...Dn(a,c.issues)),r.value[o.value]=c.value)}}return i.length?Promise.all(i).then(()=>r):r}});var QS=z("$ZodEnum",(t,e)=>{at.init(t,e);let r=_h(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Th.has(typeof n)).map(n=>typeof n=="string"?ks(n):n.toString()).join("|")})$`),t._zod.parse=(n,s)=>{let i=n.value;return t._zod.values.has(i)||n.issues.push({code:"invalid_value",values:r,input:i,inst:t}),n}}),XS=z("$ZodLiteral",(t,e)=>{at.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?ks(r):r?r.toString():String(r)).join("|")})$`),t._zod.parse=(r,n)=>{let s=r.value;return t._zod.values.has(s)||r.issues.push({code:"invalid_value",values:e.values,input:s,inst:t}),r}});var eE=z("$ZodTransform",(t,e)=>{at.init(t,e),t._zod.parse=(r,n)=>{let s=e.transform(r.value,r);if(n.async)return(s instanceof Promise?s:Promise.resolve(s)).then(a=>(r.value=a,r));if(s instanceof Promise)throw new rs;return r.value=s,r}}),tE=z("$ZodOptional",(t,e)=>{at.init(t,e),t._zod.optin="optional",t._zod.optout="optional",it(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),it(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Ko(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)}),rE=z("$ZodNullable",(t,e)=>{at.init(t,e),it(t._zod,"optin",()=>e.innerType._zod.optin),it(t._zod,"optout",()=>e.innerType._zod.optout),it(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Ko(r.source)}|null)$`):void 0}),it(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)}),nE=z("$ZodDefault",(t,e)=>{at.init(t,e),t._zod.optin="optional",it(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(r.value===void 0)return r.value=e.defaultValue,r;let s=e.innerType._zod.run(r,n);return s instanceof Promise?s.then(i=>mS(i,e)):mS(s,e)}});function mS(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var sE=z("$ZodPrefault",(t,e)=>{at.init(t,e),t._zod.optin="optional",it(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))}),iE=z("$ZodNonOptional",(t,e)=>{at.init(t,e),it(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 s=e.innerType._zod.run(r,n);return s instanceof Promise?s.then(i=>fS(i,t)):fS(s,t)}});function fS(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 aE=z("$ZodCatch",(t,e)=>{at.init(t,e),t._zod.optin="optional",it(t._zod,"optout",()=>e.innerType._zod.optout),it(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{let s=e.innerType._zod.run(r,n);return s instanceof Promise?s.then(i=>(r.value=i.value,i.issues.length&&(r.value=e.catchValue({...r,error:{issues:i.issues.map(a=>dn(a,n,Gr()))},input:r.value}),r.issues=[]),r)):(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(i=>dn(i,n,Gr()))},input:r.value}),r.issues=[]),r)}});var oE=z("$ZodPipe",(t,e)=>{at.init(t,e),it(t._zod,"values",()=>e.in._zod.values),it(t._zod,"optin",()=>e.in._zod.optin),it(t._zod,"optout",()=>e.out._zod.optout),t._zod.parse=(r,n)=>{let s=e.in._zod.run(r,n);return s instanceof Promise?s.then(i=>hS(i,e,n)):hS(s,e,n)}});function hS(t,e,r){return ni(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var cE=z("$ZodReadonly",(t,e)=>{at.init(t,e),it(t._zod,"propValues",()=>e.innerType._zod.propValues),it(t._zod,"values",()=>e.innerType._zod.values),it(t._zod,"optin",()=>e.innerType._zod.optin),it(t._zod,"optout",()=>e.innerType._zod.optout),t._zod.parse=(r,n)=>{let s=e.innerType._zod.run(r,n);return s instanceof Promise?s.then(gS):gS(s)}});function gS(t){return t.value=Object.freeze(t.value),t}var lE=z("$ZodCustom",(t,e)=>{rr.init(t,e),at.init(t,e),t._zod.parse=(r,n)=>r,t._zod.check=r=>{let n=r.value,s=e.fn(n);if(s instanceof Promise)return s.then(i=>vS(i,r,n,t));vS(s,r,n,t)}});function vS(t,e,r,n){if(!t){let s={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(s.params=n._zod.def.params),e.issues.push(Oh(s))}}var $q=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},Oq=()=>{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 ${$q(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${Bu(n.values[0])}`:`Invalid option: expected one of ${Uu(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",i=e(n.origin);return i?`Too big: expected ${n.origin??"value"} to have ${s}${n.maximum.toString()} ${i.unit??"elements"}`:`Too big: expected ${n.origin??"value"} to be ${s}${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?">=":">",i=e(n.origin);return i?`Too small: expected ${n.origin} to have ${s}${n.minimum.toString()} ${i.unit}`:`Too small: expected ${n.origin} to be ${s}${n.minimum.toString()}`}case"invalid_format":{let s=n;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]??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":""}: ${Uu(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 uE(){return{localeError:Oq()}}var Fh=class{constructor(){this._map=new Map,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}clear(){return this._map=new Map,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)??{}};return delete n.id,{...n,...this._map.get(e)}}return this._map.get(e)}has(e){return this._map.has(e)}};function Pq(){return new Fh}var ec=Pq();function pE(t,e){return new t({type:"string",...me(e)})}function dE(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...me(e)})}function Uh(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...me(e)})}function mE(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...me(e)})}function fE(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...me(e)})}function hE(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...me(e)})}function gE(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...me(e)})}function vE(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...me(e)})}function yE(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...me(e)})}function bE(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...me(e)})}function xE(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...me(e)})}function _E(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...me(e)})}function wE(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...me(e)})}function SE(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...me(e)})}function EE(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...me(e)})}function kE(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...me(e)})}function TE(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...me(e)})}function RE(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...me(e)})}function $E(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...me(e)})}function OE(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...me(e)})}function PE(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...me(e)})}function CE(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...me(e)})}function IE(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...me(e)})}function AE(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...me(e)})}function NE(t,e){return new t({type:"string",format:"date",check:"string_format",...me(e)})}function jE(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...me(e)})}function DE(t,e){return new t({type:"string",format:"duration",check:"string_format",...me(e)})}function ME(t,e){return new t({type:"number",checks:[],...me(e)})}function zE(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...me(e)})}function LE(t,e){return new t({type:"boolean",...me(e)})}function qE(t,e){return new t({type:"null",...me(e)})}function FE(t){return new t({type:"unknown"})}function UE(t,e){return new t({type:"never",...me(e)})}function Ku(t,e){return new Dh({check:"less_than",...me(e),value:t,inclusive:!1})}function tc(t,e){return new Dh({check:"less_than",...me(e),value:t,inclusive:!0})}function Ju(t,e){return new Mh({check:"greater_than",...me(e),value:t,inclusive:!1})}function rc(t,e){return new Mh({check:"greater_than",...me(e),value:t,inclusive:!0})}function Qu(t,e){return new Yw({check:"multiple_of",...me(e),value:t})}function Xu(t,e){return new Jw({check:"max_length",...me(e),maximum:t})}function Ji(t,e){return new Qw({check:"min_length",...me(e),minimum:t})}function ep(t,e){return new Xw({check:"length_equals",...me(e),length:t})}function Hh(t,e){return new eS({check:"string_format",format:"regex",...me(e),pattern:t})}function Bh(t){return new tS({check:"string_format",format:"lowercase",...me(t)})}function Wh(t){return new rS({check:"string_format",format:"uppercase",...me(t)})}function Zh(t,e){return new nS({check:"string_format",format:"includes",...me(e),includes:t})}function Vh(t,e){return new sS({check:"string_format",format:"starts_with",...me(e),prefix:t})}function Gh(t,e){return new iS({check:"string_format",format:"ends_with",...me(e),suffix:t})}function si(t){return new aS({check:"overwrite",tx:t})}function Yh(t){return si(e=>e.normalize(t))}function Kh(){return si(t=>t.trim())}function Jh(){return si(t=>t.toLowerCase())}function Qh(){return si(t=>t.toUpperCase())}function HE(t,e,r){return new t({type:"array",element:e,...me(r)})}function BE(t,e,r){let n=me(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function WE(t,e,r){return new t({type:"custom",check:"custom",fn:e,...me(r)})}function Qi(t){return!!t._zod}function mn(t,e){return Qi(t)?Qo(t,e):t.safeParse(e)}function tp(t){if(!t)return;let e;if(Qi(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function ZE(t){if(Qi(t)){let i=t._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=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 sc={};Nn(sc,{ZodISODate:()=>GE,ZodISODateTime:()=>VE,ZodISODuration:()=>KE,ZodISOTime:()=>YE,date:()=>eg,datetime:()=>Xh,duration:()=>rg,time:()=>tg});var VE=z("ZodISODateTime",(t,e)=>{OS.init(t,e),yt.init(t,e)});function Xh(t){return AE(VE,t)}var GE=z("ZodISODate",(t,e)=>{PS.init(t,e),yt.init(t,e)});function eg(t){return NE(GE,t)}var YE=z("ZodISOTime",(t,e)=>{CS.init(t,e),yt.init(t,e)});function tg(t){return jE(YE,t)}var KE=z("ZodISODuration",(t,e)=>{IS.init(t,e),yt.init(t,e)});function rg(t){return DE(KE,t)}var JE=(t,e)=>{Wu.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>gw(t,r)},flatten:{value:r=>hw(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},Kde=z("ZodError",JE),ic=z("ZodError",JE,{Parent:Error});var QE=vw(ic),XE=yw(ic),ek=Ch(ic),tk=Ih(ic);var Et=z("ZodType",(t,e)=>(at.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)=>jn(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>QE(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>ek(t,r,n),t.parseAsync=async(r,n)=>XE(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>tk(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(R8(r,n)),t.superRefine=r=>t.check($8(r)),t.overwrite=r=>t.check(si(r)),t.optional=()=>St(t),t.nullable=()=>sk(t),t.nullish=()=>St(sk(t)),t.nonoptional=r=>x8(t,r),t.array=()=>Ne(t),t.or=r=>ot([t,r]),t.and=r=>np(t,r),t.transform=r=>sg(t,lk(r)),t.default=r=>v8(t,r),t.prefault=r=>b8(t,r),t.catch=r=>w8(t,r),t.pipe=r=>sg(t,r),t.readonly=()=>k8(t),t.describe=r=>{let n=t.clone();return ec.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return ec.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return ec.get(t);let n=t.clone();return ec.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),ik=z("_ZodString",(t,e)=>{Yu.init(t,e),Et.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(Hh(...n)),t.includes=(...n)=>t.check(Zh(...n)),t.startsWith=(...n)=>t.check(Vh(...n)),t.endsWith=(...n)=>t.check(Gh(...n)),t.min=(...n)=>t.check(Ji(...n)),t.max=(...n)=>t.check(Xu(...n)),t.length=(...n)=>t.check(ep(...n)),t.nonempty=(...n)=>t.check(Ji(1,...n)),t.lowercase=n=>t.check(Bh(n)),t.uppercase=n=>t.check(Wh(n)),t.trim=()=>t.check(Kh()),t.normalize=(...n)=>t.check(Yh(...n)),t.toLowerCase=()=>t.check(Jh()),t.toUpperCase=()=>t.check(Qh())}),Lq=z("ZodString",(t,e)=>{Yu.init(t,e),ik.init(t,e),t.email=r=>t.check(dE(qq,r)),t.url=r=>t.check(vE(Fq,r)),t.jwt=r=>t.check(IE(r8,r)),t.emoji=r=>t.check(yE(Uq,r)),t.guid=r=>t.check(Uh(rk,r)),t.uuid=r=>t.check(mE(rp,r)),t.uuidv4=r=>t.check(fE(rp,r)),t.uuidv6=r=>t.check(hE(rp,r)),t.uuidv7=r=>t.check(gE(rp,r)),t.nanoid=r=>t.check(bE(Hq,r)),t.guid=r=>t.check(Uh(rk,r)),t.cuid=r=>t.check(xE(Bq,r)),t.cuid2=r=>t.check(_E(Wq,r)),t.ulid=r=>t.check(wE(Zq,r)),t.base64=r=>t.check(OE(Xq,r)),t.base64url=r=>t.check(PE(e8,r)),t.xid=r=>t.check(SE(Vq,r)),t.ksuid=r=>t.check(EE(Gq,r)),t.ipv4=r=>t.check(kE(Yq,r)),t.ipv6=r=>t.check(TE(Kq,r)),t.cidrv4=r=>t.check(RE(Jq,r)),t.cidrv6=r=>t.check($E(Qq,r)),t.e164=r=>t.check(CE(t8,r)),t.datetime=r=>t.check(Xh(r)),t.date=r=>t.check(eg(r)),t.time=r=>t.check(tg(r)),t.duration=r=>t.check(rg(r))});function D(t){return pE(Lq,t)}var yt=z("ZodStringFormat",(t,e)=>{ft.init(t,e),ik.init(t,e)}),qq=z("ZodEmail",(t,e)=>{xS.init(t,e),yt.init(t,e)});var rk=z("ZodGUID",(t,e)=>{yS.init(t,e),yt.init(t,e)});var rp=z("ZodUUID",(t,e)=>{bS.init(t,e),yt.init(t,e)});var Fq=z("ZodURL",(t,e)=>{_S.init(t,e),yt.init(t,e)});var Uq=z("ZodEmoji",(t,e)=>{wS.init(t,e),yt.init(t,e)});var Hq=z("ZodNanoID",(t,e)=>{SS.init(t,e),yt.init(t,e)});var Bq=z("ZodCUID",(t,e)=>{ES.init(t,e),yt.init(t,e)});var Wq=z("ZodCUID2",(t,e)=>{kS.init(t,e),yt.init(t,e)});var Zq=z("ZodULID",(t,e)=>{TS.init(t,e),yt.init(t,e)});var Vq=z("ZodXID",(t,e)=>{RS.init(t,e),yt.init(t,e)});var Gq=z("ZodKSUID",(t,e)=>{$S.init(t,e),yt.init(t,e)});var Yq=z("ZodIPv4",(t,e)=>{AS.init(t,e),yt.init(t,e)});var Kq=z("ZodIPv6",(t,e)=>{NS.init(t,e),yt.init(t,e)});var Jq=z("ZodCIDRv4",(t,e)=>{jS.init(t,e),yt.init(t,e)});var Qq=z("ZodCIDRv6",(t,e)=>{DS.init(t,e),yt.init(t,e)});var Xq=z("ZodBase64",(t,e)=>{zS.init(t,e),yt.init(t,e)});var e8=z("ZodBase64URL",(t,e)=>{LS.init(t,e),yt.init(t,e)});var t8=z("ZodE164",(t,e)=>{qS.init(t,e),yt.init(t,e)});var r8=z("ZodJWT",(t,e)=>{FS.init(t,e),yt.init(t,e)});var ak=z("ZodNumber",(t,e)=>{Lh.init(t,e),Et.init(t,e),t.gt=(n,s)=>t.check(Ju(n,s)),t.gte=(n,s)=>t.check(rc(n,s)),t.min=(n,s)=>t.check(rc(n,s)),t.lt=(n,s)=>t.check(Ku(n,s)),t.lte=(n,s)=>t.check(tc(n,s)),t.max=(n,s)=>t.check(tc(n,s)),t.int=n=>t.check(nk(n)),t.safe=n=>t.check(nk(n)),t.positive=n=>t.check(Ju(0,n)),t.nonnegative=n=>t.check(rc(0,n)),t.negative=n=>t.check(Ku(0,n)),t.nonpositive=n=>t.check(tc(0,n)),t.multipleOf=(n,s)=>t.check(Qu(n,s)),t.step=(n,s)=>t.check(Qu(n,s)),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 Xe(t){return ME(ak,t)}var n8=z("ZodNumberFormat",(t,e)=>{US.init(t,e),ak.init(t,e)});function nk(t){return zE(n8,t)}var s8=z("ZodBoolean",(t,e)=>{HS.init(t,e),Et.init(t,e)});function Lt(t){return LE(s8,t)}var i8=z("ZodNull",(t,e)=>{BS.init(t,e),Et.init(t,e)});function ig(t){return qE(i8,t)}var a8=z("ZodUnknown",(t,e)=>{WS.init(t,e),Et.init(t,e)});function bt(){return FE(a8)}var o8=z("ZodNever",(t,e)=>{ZS.init(t,e),Et.init(t,e)});function c8(t){return UE(o8,t)}var l8=z("ZodArray",(t,e)=>{VS.init(t,e),Et.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(Ji(r,n)),t.nonempty=r=>t.check(Ji(1,r)),t.max=(r,n)=>t.check(Xu(r,n)),t.length=(r,n)=>t.check(ep(r,n)),t.unwrap=()=>t.element});function Ne(t,e){return HE(l8,t,e)}var ok=z("ZodObject",(t,e)=>{GS.init(t,e),Et.init(t,e),Be.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>Tr(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:bt()}),t.loose=()=>t.clone({...t._zod.def,catchall:bt()}),t.strict=()=>t.clone({...t._zod.def,catchall:c8()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>Be.extend(t,r),t.merge=r=>Be.merge(t,r),t.pick=r=>Be.pick(t,r),t.omit=r=>Be.omit(t,r),t.partial=(...r)=>Be.partial(uk,t,r[0]),t.required=(...r)=>Be.required(pk,t,r[0])});function ee(t,e){let r={type:"object",get shape(){return Be.assignProp(this,"shape",{...t}),this.shape},...Be.normalizeParams(e)};return new ok(r)}function ur(t,e){return new ok({type:"object",get shape(){return Be.assignProp(this,"shape",{...t}),this.shape},catchall:bt(),...Be.normalizeParams(e)})}var ck=z("ZodUnion",(t,e)=>{qh.init(t,e),Et.init(t,e),t.options=e.options});function ot(t,e){return new ck({type:"union",options:t,...Be.normalizeParams(e)})}var u8=z("ZodDiscriminatedUnion",(t,e)=>{ck.init(t,e),YS.init(t,e)});function ag(t,e,r){return new u8({type:"union",options:e,discriminator:t,...Be.normalizeParams(r)})}var p8=z("ZodIntersection",(t,e)=>{KS.init(t,e),Et.init(t,e)});function np(t,e){return new p8({type:"intersection",left:t,right:e})}var d8=z("ZodRecord",(t,e)=>{JS.init(t,e),Et.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function xt(t,e,r){return new d8({type:"record",keyType:t,valueType:e,...Be.normalizeParams(r)})}var ng=z("ZodEnum",(t,e)=>{QS.init(t,e),Et.init(t,e),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(n,s)=>{let i={};for(let a of n)if(r.has(a))i[a]=e.entries[a];else throw new Error(`Key ${a} not found in enum`);return new ng({...e,checks:[],...Be.normalizeParams(s),entries:i})},t.exclude=(n,s)=>{let i={...e.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 ng({...e,checks:[],...Be.normalizeParams(s),entries:i})}});function Tr(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new ng({type:"enum",entries:r,...Be.normalizeParams(e)})}var m8=z("ZodLiteral",(t,e)=>{XS.init(t,e),Et.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 ae(t,e){return new m8({type:"literal",values:Array.isArray(t)?t:[t],...Be.normalizeParams(e)})}var f8=z("ZodTransform",(t,e)=>{eE.init(t,e),Et.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=i=>{if(typeof i=="string")r.issues.push(Be.issue(i,r.value,e));else{let a=i;a.fatal&&(a.continue=!1),a.code??(a.code="custom"),a.input??(a.input=r.value),a.inst??(a.inst=t),a.continue??(a.continue=!0),r.issues.push(Be.issue(a))}};let s=e.transform(r.value,r);return s instanceof Promise?s.then(i=>(r.value=i,r)):(r.value=s,r)}});function lk(t){return new f8({type:"transform",transform:t})}var uk=z("ZodOptional",(t,e)=>{tE.init(t,e),Et.init(t,e),t.unwrap=()=>t._zod.def.innerType});function St(t){return new uk({type:"optional",innerType:t})}var h8=z("ZodNullable",(t,e)=>{rE.init(t,e),Et.init(t,e),t.unwrap=()=>t._zod.def.innerType});function sk(t){return new h8({type:"nullable",innerType:t})}var g8=z("ZodDefault",(t,e)=>{nE.init(t,e),Et.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function v8(t,e){return new g8({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var y8=z("ZodPrefault",(t,e)=>{sE.init(t,e),Et.init(t,e),t.unwrap=()=>t._zod.def.innerType});function b8(t,e){return new y8({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var pk=z("ZodNonOptional",(t,e)=>{iE.init(t,e),Et.init(t,e),t.unwrap=()=>t._zod.def.innerType});function x8(t,e){return new pk({type:"nonoptional",innerType:t,...Be.normalizeParams(e)})}var _8=z("ZodCatch",(t,e)=>{aE.init(t,e),Et.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function w8(t,e){return new _8({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var S8=z("ZodPipe",(t,e)=>{oE.init(t,e),Et.init(t,e),t.in=e.in,t.out=e.out});function sg(t,e){return new S8({type:"pipe",in:t,out:e})}var E8=z("ZodReadonly",(t,e)=>{cE.init(t,e),Et.init(t,e)});function k8(t){return new E8({type:"readonly",innerType:t})}var dk=z("ZodCustom",(t,e)=>{lE.init(t,e),Et.init(t,e)});function T8(t){let e=new rr({check:"custom"});return e._zod.check=t,e}function mk(t,e){return BE(dk,t??(()=>!0),e)}function R8(t,e={}){return WE(dk,t,e)}function $8(t){let e=T8(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(Be.issue(n,r.value,e._zod.def));else{let s=n;s.fatal&&(s.continue=!1),s.code??(s.code="custom"),s.input??(s.input=r.value),s.inst??(s.inst=e),s.continue??(s.continue=!e._zod.def.abort),r.issues.push(Be.issue(s))}},t(r.value,r)));return e}function og(t,e){return sg(lk(t),e)}Gr(uE());var lg="2025-11-25";var fk=[lg,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Ts="io.modelcontextprotocol/related-task",ip="2.0",Gt=mk(t=>t!==null&&(typeof t=="object"||typeof t=="function")),hk=ot([D(),Xe().int()]),gk=D(),Hme=ur({ttl:ot([Xe(),ig()]).optional(),pollInterval:Xe().optional()}),O8=ee({ttl:Xe().optional()}),P8=ee({taskId:D()}),ug=ur({progressToken:hk.optional(),[Ts]:P8.optional()}),Hr=ee({_meta:ug.optional()}),ac=Hr.extend({task:O8.optional()}),vk=t=>ac.safeParse(t).success,Yt=ee({method:D(),params:Hr.loose().optional()}),Yr=ee({_meta:ug.optional()}),Kr=ee({method:D(),params:Yr.loose().optional()}),Kt=ur({_meta:ug.optional()}),ap=ot([D(),Xe().int()]),yk=ee({jsonrpc:ae(ip),id:ap,...Yt.shape}).strict(),pg=t=>yk.safeParse(t).success,bk=ee({jsonrpc:ae(ip),...Kr.shape}).strict(),xk=t=>bk.safeParse(t).success,dg=ee({jsonrpc:ae(ip),id:ap,result:Kt}).strict(),oc=t=>dg.safeParse(t).success;var ye;(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"})(ye||(ye={}));var mg=ee({jsonrpc:ae(ip),id:ap.optional(),error:ee({code:Xe().int(),message:D(),data:bt().optional()})}).strict();var _k=t=>mg.safeParse(t).success;var wk=ot([yk,bk,dg,mg]),Bme=ot([dg,mg]),ii=Kt.strict(),C8=Yr.extend({requestId:ap.optional(),reason:D().optional()}),op=Kr.extend({method:ae("notifications/cancelled"),params:C8}),I8=ee({src:D(),mimeType:D().optional(),sizes:Ne(D()).optional(),theme:Tr(["light","dark"]).optional()}),cc=ee({icons:Ne(I8).optional()}),Xi=ee({name:D(),title:D().optional()}),Sk=Xi.extend({...Xi.shape,...cc.shape,version:D(),websiteUrl:D().optional(),description:D().optional()}),A8=np(ee({applyDefaults:Lt().optional()}),xt(D(),bt())),N8=og(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,np(ee({form:A8.optional(),url:Gt.optional()}),xt(D(),bt()).optional())),j8=ur({list:Gt.optional(),cancel:Gt.optional(),requests:ur({sampling:ur({createMessage:Gt.optional()}).optional(),elicitation:ur({create:Gt.optional()}).optional()}).optional()}),D8=ur({list:Gt.optional(),cancel:Gt.optional(),requests:ur({tools:ur({call:Gt.optional()}).optional()}).optional()}),M8=ee({experimental:xt(D(),Gt).optional(),sampling:ee({context:Gt.optional(),tools:Gt.optional()}).optional(),elicitation:N8.optional(),roots:ee({listChanged:Lt().optional()}).optional(),tasks:j8.optional()}),z8=Hr.extend({protocolVersion:D(),capabilities:M8,clientInfo:Sk}),L8=Yt.extend({method:ae("initialize"),params:z8});var q8=ee({experimental:xt(D(),Gt).optional(),logging:Gt.optional(),completions:Gt.optional(),prompts:ee({listChanged:Lt().optional()}).optional(),resources:ee({subscribe:Lt().optional(),listChanged:Lt().optional()}).optional(),tools:ee({listChanged:Lt().optional()}).optional(),tasks:D8.optional()}),fg=Kt.extend({protocolVersion:D(),capabilities:q8,serverInfo:Sk,instructions:D().optional()}),F8=Kr.extend({method:ae("notifications/initialized"),params:Yr.optional()});var cp=Yt.extend({method:ae("ping"),params:Hr.optional()}),U8=ee({progress:Xe(),total:St(Xe()),message:St(D())}),H8=ee({...Yr.shape,...U8.shape,progressToken:hk}),lp=Kr.extend({method:ae("notifications/progress"),params:H8}),B8=Hr.extend({cursor:gk.optional()}),lc=Yt.extend({params:B8.optional()}),uc=Kt.extend({nextCursor:gk.optional()}),W8=Tr(["working","input_required","completed","failed","cancelled"]),pc=ee({taskId:D(),status:W8,ttl:ot([Xe(),ig()]),createdAt:D(),lastUpdatedAt:D(),pollInterval:St(Xe()),statusMessage:St(D())}),ai=Kt.extend({task:pc}),Z8=Yr.merge(pc),dc=Kr.extend({method:ae("notifications/tasks/status"),params:Z8}),up=Yt.extend({method:ae("tasks/get"),params:Hr.extend({taskId:D()})}),pp=Kt.merge(pc),dp=Yt.extend({method:ae("tasks/result"),params:Hr.extend({taskId:D()})}),Wme=Kt.loose(),mp=lc.extend({method:ae("tasks/list")}),fp=uc.extend({tasks:Ne(pc)}),hp=Yt.extend({method:ae("tasks/cancel"),params:Hr.extend({taskId:D()})}),Ek=Kt.merge(pc),kk=ee({uri:D(),mimeType:St(D()),_meta:xt(D(),bt()).optional()}),Tk=kk.extend({text:D()}),hg=D().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),Rk=kk.extend({blob:hg}),mc=Tr(["user","assistant"]),ea=ee({audience:Ne(mc).optional(),priority:Xe().min(0).max(1).optional(),lastModified:sc.datetime({offset:!0}).optional()}),$k=ee({...Xi.shape,...cc.shape,uri:D(),description:St(D()),mimeType:St(D()),annotations:ea.optional(),_meta:St(ur({}))}),V8=ee({...Xi.shape,...cc.shape,uriTemplate:D(),description:St(D()),mimeType:St(D()),annotations:ea.optional(),_meta:St(ur({}))}),G8=lc.extend({method:ae("resources/list")}),gg=uc.extend({resources:Ne($k)}),Y8=lc.extend({method:ae("resources/templates/list")}),vg=uc.extend({resourceTemplates:Ne(V8)}),yg=Hr.extend({uri:D()}),K8=yg,J8=Yt.extend({method:ae("resources/read"),params:K8}),bg=Kt.extend({contents:Ne(ot([Tk,Rk]))}),xg=Kr.extend({method:ae("notifications/resources/list_changed"),params:Yr.optional()}),Q8=yg,X8=Yt.extend({method:ae("resources/subscribe"),params:Q8}),eF=yg,tF=Yt.extend({method:ae("resources/unsubscribe"),params:eF}),rF=Yr.extend({uri:D()}),nF=Kr.extend({method:ae("notifications/resources/updated"),params:rF}),sF=ee({name:D(),description:St(D()),required:St(Lt())}),iF=ee({...Xi.shape,...cc.shape,description:St(D()),arguments:St(Ne(sF)),_meta:St(ur({}))}),aF=lc.extend({method:ae("prompts/list")}),_g=uc.extend({prompts:Ne(iF)}),oF=Hr.extend({name:D(),arguments:xt(D(),D()).optional()}),cF=Yt.extend({method:ae("prompts/get"),params:oF}),wg=ee({type:ae("text"),text:D(),annotations:ea.optional(),_meta:xt(D(),bt()).optional()}),Sg=ee({type:ae("image"),data:hg,mimeType:D(),annotations:ea.optional(),_meta:xt(D(),bt()).optional()}),Eg=ee({type:ae("audio"),data:hg,mimeType:D(),annotations:ea.optional(),_meta:xt(D(),bt()).optional()}),lF=ee({type:ae("tool_use"),name:D(),id:D(),input:xt(D(),bt()),_meta:xt(D(),bt()).optional()}),uF=ee({type:ae("resource"),resource:ot([Tk,Rk]),annotations:ea.optional(),_meta:xt(D(),bt()).optional()}),pF=$k.extend({type:ae("resource_link")}),kg=ot([wg,Sg,Eg,pF,uF]),dF=ee({role:mc,content:kg}),Tg=Kt.extend({description:D().optional(),messages:Ne(dF)}),Rg=Kr.extend({method:ae("notifications/prompts/list_changed"),params:Yr.optional()}),mF=ee({title:D().optional(),readOnlyHint:Lt().optional(),destructiveHint:Lt().optional(),idempotentHint:Lt().optional(),openWorldHint:Lt().optional()}),fF=ee({taskSupport:Tr(["required","optional","forbidden"]).optional()}),Ok=ee({...Xi.shape,...cc.shape,description:D().optional(),inputSchema:ee({type:ae("object"),properties:xt(D(),Gt).optional(),required:Ne(D()).optional()}).catchall(bt()),outputSchema:ee({type:ae("object"),properties:xt(D(),Gt).optional(),required:Ne(D()).optional()}).catchall(bt()).optional(),annotations:mF.optional(),execution:fF.optional(),_meta:xt(D(),bt()).optional()}),hF=lc.extend({method:ae("tools/list")}),$g=uc.extend({tools:Ne(Ok)}),ta=Kt.extend({content:Ne(kg).default([]),structuredContent:xt(D(),bt()).optional(),isError:Lt().optional()}),Zme=ta.or(Kt.extend({toolResult:bt()})),gF=ac.extend({name:D(),arguments:xt(D(),bt()).optional()}),vF=Yt.extend({method:ae("tools/call"),params:gF}),Og=Kr.extend({method:ae("notifications/tools/list_changed"),params:Yr.optional()}),Pk=ee({autoRefresh:Lt().default(!0),debounceMs:Xe().int().nonnegative().default(300)}),Ck=Tr(["debug","info","notice","warning","error","critical","alert","emergency"]),yF=Hr.extend({level:Ck}),bF=Yt.extend({method:ae("logging/setLevel"),params:yF}),xF=Yr.extend({level:Ck,logger:D().optional(),data:bt()}),_F=Kr.extend({method:ae("notifications/message"),params:xF}),wF=ee({name:D().optional()}),SF=ee({hints:Ne(wF).optional(),costPriority:Xe().min(0).max(1).optional(),speedPriority:Xe().min(0).max(1).optional(),intelligencePriority:Xe().min(0).max(1).optional()}),EF=ee({mode:Tr(["auto","required","none"]).optional()}),kF=ee({type:ae("tool_result"),toolUseId:D().describe("The unique identifier for the corresponding tool call."),content:Ne(kg).default([]),structuredContent:ee({}).loose().optional(),isError:Lt().optional(),_meta:xt(D(),bt()).optional()}),TF=ag("type",[wg,Sg,Eg]),sp=ag("type",[wg,Sg,Eg,lF,kF]),RF=ee({role:mc,content:ot([sp,Ne(sp)]),_meta:xt(D(),bt()).optional()}),$F=ac.extend({messages:Ne(RF),modelPreferences:SF.optional(),systemPrompt:D().optional(),includeContext:Tr(["none","thisServer","allServers"]).optional(),temperature:Xe().optional(),maxTokens:Xe().int(),stopSequences:Ne(D()).optional(),metadata:Gt.optional(),tools:Ne(Ok).optional(),toolChoice:EF.optional()}),Pg=Yt.extend({method:ae("sampling/createMessage"),params:$F}),Cg=Kt.extend({model:D(),stopReason:St(Tr(["endTurn","stopSequence","maxTokens"]).or(D())),role:mc,content:TF}),Ig=Kt.extend({model:D(),stopReason:St(Tr(["endTurn","stopSequence","maxTokens","toolUse"]).or(D())),role:mc,content:ot([sp,Ne(sp)])}),OF=ee({type:ae("boolean"),title:D().optional(),description:D().optional(),default:Lt().optional()}),PF=ee({type:ae("string"),title:D().optional(),description:D().optional(),minLength:Xe().optional(),maxLength:Xe().optional(),format:Tr(["email","uri","date","date-time"]).optional(),default:D().optional()}),CF=ee({type:Tr(["number","integer"]),title:D().optional(),description:D().optional(),minimum:Xe().optional(),maximum:Xe().optional(),default:Xe().optional()}),IF=ee({type:ae("string"),title:D().optional(),description:D().optional(),enum:Ne(D()),default:D().optional()}),AF=ee({type:ae("string"),title:D().optional(),description:D().optional(),oneOf:Ne(ee({const:D(),title:D()})),default:D().optional()}),NF=ee({type:ae("string"),title:D().optional(),description:D().optional(),enum:Ne(D()),enumNames:Ne(D()).optional(),default:D().optional()}),jF=ot([IF,AF]),DF=ee({type:ae("array"),title:D().optional(),description:D().optional(),minItems:Xe().optional(),maxItems:Xe().optional(),items:ee({type:ae("string"),enum:Ne(D())}),default:Ne(D()).optional()}),MF=ee({type:ae("array"),title:D().optional(),description:D().optional(),minItems:Xe().optional(),maxItems:Xe().optional(),items:ee({anyOf:Ne(ee({const:D(),title:D()}))}),default:Ne(D()).optional()}),zF=ot([DF,MF]),LF=ot([NF,jF,zF]),qF=ot([LF,OF,PF,CF]),FF=ac.extend({mode:ae("form").optional(),message:D(),requestedSchema:ee({type:ae("object"),properties:xt(D(),qF),required:Ne(D()).optional()})}),UF=ac.extend({mode:ae("url"),message:D(),elicitationId:D(),url:D().url()}),HF=ot([FF,UF]),Ag=Yt.extend({method:ae("elicitation/create"),params:HF}),BF=Yr.extend({elicitationId:D()}),WF=Kr.extend({method:ae("notifications/elicitation/complete"),params:BF}),Ng=Kt.extend({action:Tr(["accept","decline","cancel"]),content:og(t=>t===null?void 0:t,xt(D(),ot([D(),Xe(),Lt(),Ne(D())])).optional())}),ZF=ee({type:ae("ref/resource"),uri:D()});var VF=ee({type:ae("ref/prompt"),name:D()}),GF=Hr.extend({ref:ot([VF,ZF]),argument:ee({name:D(),value:D()}),context:ee({arguments:xt(D(),D()).optional()}).optional()}),YF=Yt.extend({method:ae("completion/complete"),params:GF});var jg=Kt.extend({completion:ur({values:Ne(D()).max(100),total:St(Xe().int()),hasMore:St(Lt())})}),KF=ee({uri:D().startsWith("file://"),name:D().optional(),_meta:xt(D(),bt()).optional()}),JF=Yt.extend({method:ae("roots/list"),params:Hr.optional()}),QF=Kt.extend({roots:Ne(KF)}),XF=Kr.extend({method:ae("notifications/roots/list_changed"),params:Yr.optional()}),Vme=ot([cp,L8,YF,bF,cF,aF,G8,Y8,J8,X8,tF,vF,hF,up,dp,mp,hp]),Gme=ot([op,lp,F8,XF,dc]),Yme=ot([ii,Cg,Ig,Ng,QF,pp,fp,ai]),Kme=ot([cp,Pg,Ag,JF,up,dp,mp,hp]),Jme=ot([op,lp,_F,nF,xg,Og,Rg,dc,WF]),Qme=ot([ii,fg,jg,Tg,_g,gg,vg,bg,ta,$g,pp,fp,ai]),de=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===ye.UrlElicitationRequired&&n){let s=n;if(s.elicitations)return new cg(s.elicitations,r)}return new t(e,r,n)}},cg=class extends de{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(ye.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function Rs(t){return t==="completed"||t==="failed"||t==="cancelled"}var Cfe=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function Dg(t){let r=tp(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=ZE(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function Mg(t,e){let r=mn(t,e);if(!r.success)throw r.error;return r.data}var i9=6e4,gp=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(op,r=>{this._oncancel(r)}),this.setNotificationHandler(lp,r=>{this._onprogress(r)}),this.setRequestHandler(cp,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(up,async(r,n)=>{let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new de(ye.InvalidParams,"Failed to retrieve task: Task not found");return{...s}}),this.setRequestHandler(dp,async(r,n)=>{let s=async()=>{let i=r.params.taskId;if(this._taskMessageQueue){let o;for(;o=await this._taskMessageQueue.dequeue(i,n.sessionId);){if(o.type==="response"||o.type==="error"){let c=o.message,l=c.id,u=this._requestResolvers.get(l);if(u)if(this._requestResolvers.delete(l),o.type==="response")u(c);else{let p=c,d=new de(p.error.code,p.error.message,p.error.data);u(d)}else{let p=o.type==="response"?"Response":"Error";this._onerror(new Error(`${p} handler missing for request ${l}`))}continue}await this._transport?.send(o.message,{relatedRequestId:n.requestId})}}let a=await this._taskStore.getTask(i,n.sessionId);if(!a)throw new de(ye.InvalidParams,`Task not found: ${i}`);if(!Rs(a.status))return await this._waitForTaskUpdate(i,n.signal),await s();if(Rs(a.status)){let o=await this._taskStore.getTaskResult(i,n.sessionId);return this._clearTaskQueue(i),{...o,_meta:{...o._meta,[Ts]:{taskId:i}}}}return await s()};return await s()}),this.setRequestHandler(mp,async(r,n)=>{try{let{tasks:s,nextCursor:i}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:s,nextCursor:i,_meta:{}}}catch(s){throw new de(ye.InvalidParams,`Failed to list tasks: ${s instanceof Error?s.message:String(s)}`)}}),this.setRequestHandler(hp,async(r,n)=>{try{let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new de(ye.InvalidParams,`Task not found: ${r.params.taskId}`);if(Rs(s.status))throw new de(ye.InvalidParams,`Cannot cancel task in terminal status: ${s.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 de(ye.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...i}}catch(s){throw s instanceof de?s:new de(ye.InvalidRequest,`Failed to cancel task: ${s instanceof Error?s.message:String(s)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,s,i=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(s,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:i,onTimeout:s})}_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),de.fromError(ye.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=i=>{n?.(i),this._onerror(i)};let s=this._transport?.onmessage;this._transport.onmessage=(i,a)=>{s?.(i,a),oc(i)||_k(i)?this._onresponse(i):pg(i)?this._onrequest(i,a):xk(i)?this._onnotification(i):this._onerror(new Error(`Unknown message type: ${JSON.stringify(i)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();let r=de.fromError(ye.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,s=this._transport,i=e.params?._meta?.[Ts]?.taskId;if(n===void 0){let u={jsonrpc:"2.0",id:e.id,error:{code:ye.MethodNotFound,message:"Method not found"}};i&&this._taskMessageQueue?this._enqueueTaskMessage(i,{type:"error",message:u,timestamp:Date.now()},s?.sessionId).catch(p=>this._onerror(new Error(`Failed to enqueue error response: ${p}`))):s?.send(u).catch(p=>this._onerror(new Error(`Failed to send an error response: ${p}`)));return}let a=new AbortController;this._requestHandlerAbortControllers.set(e.id,a);let o=vk(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,s?.sessionId):void 0,l={signal:a.signal,sessionId:s?.sessionId,_meta:e.params?._meta,sendNotification:async u=>{let p={relatedRequestId:e.id};i&&(p.relatedTask={taskId:i}),await this.notification(u,p)},sendRequest:async(u,p,d)=>{let m={...d,relatedRequestId:e.id};i&&!m.relatedTask&&(m.relatedTask={taskId:i});let f=m.relatedTask?.taskId??i;return f&&c&&await c.updateTaskStatus(f,"input_required"),await this.request(u,p,m)},authInfo:r?.authInfo,requestId:e.id,requestInfo:r?.requestInfo,taskId:i,taskStore:c,taskRequestedTtl:o?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{o&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,l)).then(async u=>{if(a.signal.aborted)return;let p={result:u,jsonrpc:"2.0",id:e.id};i&&this._taskMessageQueue?await this._enqueueTaskMessage(i,{type:"response",message:p,timestamp:Date.now()},s?.sessionId):await s?.send(p)},async u=>{if(a.signal.aborted)return;let p={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(u.code)?u.code:ye.InternalError,message:u.message??"Internal error",...u.data!==void 0&&{data:u.data}}};i&&this._taskMessageQueue?await this._enqueueTaskMessage(i,{type:"error",message:p,timestamp:Date.now()},s?.sessionId):await s?.send(p)}).catch(u=>this._onerror(new Error(`Failed to send response: ${u}`))).finally(()=>{this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:r,...n}=e.params,s=Number(r),i=this._progressHandlers.get(s);if(!i){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let a=this._responseHandlers.get(s),o=this._timeoutInfo.get(s);if(o&&a&&o.resetTimeoutOnProgress)try{this._resetTimeout(s)}catch(c){this._responseHandlers.delete(s),this._progressHandlers.delete(s),this._cleanupTimeout(s),a(c);return}i(n)}_onresponse(e){let r=Number(e.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),oc(e))n(e);else{let a=new de(e.error.code,e.error.message,e.error.data);n(a)}return}let s=this._responseHandlers.get(r);if(s===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 i=!1;if(oc(e)&&e.result&&typeof e.result=="object"){let a=e.result;if(a.task&&typeof a.task=="object"){let o=a.task;typeof o.taskId=="string"&&(i=!0,this._taskProgressTokens.set(o.taskId,r))}}if(i||this._progressHandlers.delete(r),oc(e))s(e);else{let a=de.fromError(e.error.code,e.error.message,e.error.data);s(a)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,r,n){let{task:s}=n??{};if(!s){try{yield{type:"result",result:await this.request(e,r,n)}}catch(a){yield{type:"error",error:a instanceof de?a:new de(ye.InternalError,String(a))}}return}let i;try{let a=await this.request(e,ai,n);if(a.task)i=a.task.taskId,yield{type:"taskCreated",task:a.task};else throw new de(ye.InternalError,"Task creation did not return a task");for(;;){let o=await this.getTask({taskId:i},n);if(yield{type:"taskStatus",task:o},Rs(o.status)){o.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:i},r,n)}:o.status==="failed"?yield{type:"error",error:new de(ye.InternalError,`Task ${i} failed`)}:o.status==="cancelled"&&(yield{type:"error",error:new de(ye.InternalError,`Task ${i} was cancelled`)});return}if(o.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:i},r,n)};return}let c=o.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(l=>setTimeout(l,c)),n?.signal?.throwIfAborted()}}catch(a){yield{type:"error",error:a instanceof de?a:new de(ye.InternalError,String(a))}}}request(e,r,n){let{relatedRequestId:s,resumptionToken:i,onresumptiontoken:a,task:o,relatedTask:c}=n??{};return new Promise((l,u)=>{let p=y=>{u(y)};if(!this._transport){p(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),o&&this.assertTaskCapability(e.method)}catch(y){p(y);return}n?.signal?.throwIfAborted();let d=this._requestMessageId++,m={...e,jsonrpc:"2.0",id:d};n?.onprogress&&(this._progressHandlers.set(d,n.onprogress),m.params={...e.params,_meta:{...e.params?._meta||{},progressToken:d}}),o&&(m.params={...m.params,task:o}),c&&(m.params={...m.params,_meta:{...m.params?._meta||{},[Ts]:c}});let f=y=>{this._responseHandlers.delete(d),this._progressHandlers.delete(d),this._cleanupTimeout(d),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:d,reason:String(y)}},{relatedRequestId:s,resumptionToken:i,onresumptiontoken:a}).catch(x=>this._onerror(new Error(`Failed to send cancellation: ${x}`)));let b=y instanceof de?y:new de(ye.RequestTimeout,String(y));u(b)};this._responseHandlers.set(d,y=>{if(!n?.signal?.aborted){if(y instanceof Error)return u(y);try{let b=mn(r,y.result);b.success?l(b.data):u(b.error)}catch(b){u(b)}}}),n?.signal?.addEventListener("abort",()=>{f(n?.signal?.reason)});let v=n?.timeout??i9,g=()=>f(de.fromError(ye.RequestTimeout,"Request timed out",{timeout:v}));this._setupTimeout(d,v,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let h=c?.taskId;if(h){let y=b=>{let x=this._responseHandlers.get(d);x?x(b):this._onerror(new Error(`Response handler missing for side-channeled request ${d}`))};this._requestResolvers.set(d,y),this._enqueueTaskMessage(h,{type:"request",message:m,timestamp:Date.now()}).catch(b=>{this._cleanupTimeout(d),u(b)})}else this._transport.send(m,{relatedRequestId:s,resumptionToken:i,onresumptiontoken:a}).catch(y=>{this._cleanupTimeout(d),u(y)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},pp,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},fp,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},Ek,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 o={...e,jsonrpc:"2.0",params:{...e.params,_meta:{...e.params?._meta||{},[Ts]:r.relatedTask}}};await this._enqueueTaskMessage(n,{type:"notification",message:o,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 o={...e,jsonrpc:"2.0"};r?.relatedTask&&(o={...o,params:{...o.params,_meta:{...o.params?._meta||{},[Ts]:r.relatedTask}}}),this._transport?.send(o,r).catch(c=>this._onerror(c))});return}let a={...e,jsonrpc:"2.0"};r?.relatedTask&&(a={...a,params:{...a.params,_meta:{...a.params?._meta||{},[Ts]:r.relatedTask}}}),await this._transport.send(a,r)}setRequestHandler(e,r){let n=Dg(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(s,i)=>{let a=Mg(e,s);return Promise.resolve(r(a,i))})}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=Dg(e);this._notificationHandlers.set(n,s=>{let i=Mg(e,s);return Promise.resolve(r(i))})}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 s=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(e,r,n,s)}async _clearTaskQueue(e,r){if(this._taskMessageQueue){let n=await this._taskMessageQueue.dequeueAll(e,r);for(let s of n)if(s.type==="request"&&pg(s.message)){let i=s.message.id,a=this._requestResolvers.get(i);a?(a(new de(ye.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(i)):this._onerror(new Error(`Resolver missing for request ${i} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let s=await this._taskStore?.getTask(e);s?.pollInterval&&(n=s.pollInterval)}catch{}return new Promise((s,i)=>{if(r.aborted){i(new de(ye.InvalidRequest,"Request cancelled"));return}let a=setTimeout(s,n);r.addEventListener("abort",()=>{clearTimeout(a),i(new de(ye.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async s=>{if(!e)throw new Error("No request provided");return await n.createTask(s,e.id,{method:e.method,params:e.params},r)},getTask:async s=>{let i=await n.getTask(s,r);if(!i)throw new de(ye.InvalidParams,"Failed to retrieve task: Task not found");return i},storeTaskResult:async(s,i,a)=>{await n.storeTaskResult(s,i,a,r);let o=await n.getTask(s,r);if(o){let c=dc.parse({method:"notifications/tasks/status",params:o});await this.notification(c),Rs(o.status)&&this._cleanupTaskProgressHandler(s)}},getTaskResult:s=>n.getTaskResult(s,r),updateTaskStatus:async(s,i,a)=>{let o=await n.getTask(s,r);if(!o)throw new de(ye.InvalidParams,`Task "${s}" not found - it may have been cleaned up`);if(Rs(o.status))throw new de(ye.InvalidParams,`Cannot update task "${s}" from terminal status "${o.status}" to "${i}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(s,i,a,r);let c=await n.getTask(s,r);if(c){let l=dc.parse({method:"notifications/tasks/status",params:c});await this.notification(l),Rs(c.status)&&this._cleanupTaskProgressHandler(s)}},listTasks:s=>n.listTasks(s,r)}}};function Ik(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function Ak(t,e){let r={...t};for(let n in e){let s=n,i=e[s];if(i===void 0)continue;let a=r[s];Ik(a)&&Ik(i)?r[s]={...a,...i}:r[s]=i}return r}var bR=ie(wy(),1),xR=ie(yR(),1);function YH(){let t=new bR.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,xR.default)(t),t}var Xp=class{constructor(e){this._ajv=e??YH()}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 ed=class{constructor(e){this._client=e}async*callToolStream(e,r=ta,n){let s=this._client,i={...n,task:n?.task??(s.isToolTask(e.name)?{}:void 0)},a=s.requestStream({method:"tools/call",params:e},r,i),o=s.getToolOutputValidator(e.name);for await(let c of a){if(c.type==="result"&&o){let l=c.result;if(!l.structuredContent&&!l.isError){yield{type:"error",error:new de(ye.InvalidRequest,`Tool ${e.name} has an output schema but did not return structured content`)};return}if(l.structuredContent)try{let u=o(l.structuredContent);if(!u.valid){yield{type:"error",error:new de(ye.InvalidParams,`Structured content does not match the tool's output schema: ${u.errorMessage}`)};return}}catch(u){if(u instanceof de){yield{type:"error",error:u};return}yield{type:"error",error:new de(ye.InvalidParams,`Failed to validate structured content: ${u instanceof Error?u.message:String(u)}`)};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 _R(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 wR(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 td(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 s of Object.keys(n)){let i=n[s];r[s]===void 0&&Object.prototype.hasOwnProperty.call(i,"default")&&(r[s]=i.default),r[s]!==void 0&&td(i,r[s])}}if(Array.isArray(t.anyOf))for(let r of t.anyOf)typeof r!="boolean"&&td(r,e);if(Array.isArray(t.oneOf))for(let r of t.oneOf)typeof r!="boolean"&&td(r,e)}}function KH(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 ya=class extends gp{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 Xp,r?.listChanged&&(this._pendingListChangedConfig=r.listChanged)}_setupListChangedHandlers(e){e.tools&&this._serverCapabilities?.tools?.listChanged&&this._setupListChangedHandler("tools",Og,e.tools,async()=>(await this.listTools()).tools),e.prompts&&this._serverCapabilities?.prompts?.listChanged&&this._setupListChangedHandler("prompts",Rg,e.prompts,async()=>(await this.listPrompts()).prompts),e.resources&&this._serverCapabilities?.resources?.listChanged&&this._setupListChangedHandler("resources",xg,e.resources,async()=>(await this.listResources()).resources)}get experimental(){return this._experimental||(this._experimental={tasks:new ed(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=Ak(this._capabilities,e)}setRequestHandler(e,r){let s=tp(e)?.method;if(!s)throw new Error("Schema is missing a method literal");let i;if(Qi(s)){let o=s;i=o._zod?.def?.value??o.value}else{let o=s;i=o._def?.value??o.value}if(typeof i!="string")throw new Error("Schema method literal must be a string");let a=i;if(a==="elicitation/create"){let o=async(c,l)=>{let u=mn(Ag,c);if(!u.success){let y=u.error instanceof Error?u.error.message:String(u.error);throw new de(ye.InvalidParams,`Invalid elicitation request: ${y}`)}let{params:p}=u.data;p.mode=p.mode??"form";let{supportsFormMode:d,supportsUrlMode:m}=KH(this._capabilities.elicitation);if(p.mode==="form"&&!d)throw new de(ye.InvalidParams,"Client does not support form-mode elicitation requests");if(p.mode==="url"&&!m)throw new de(ye.InvalidParams,"Client does not support URL-mode elicitation requests");let f=await Promise.resolve(r(c,l));if(p.task){let y=mn(ai,f);if(!y.success){let b=y.error instanceof Error?y.error.message:String(y.error);throw new de(ye.InvalidParams,`Invalid task creation result: ${b}`)}return y.data}let v=mn(Ng,f);if(!v.success){let y=v.error instanceof Error?v.error.message:String(v.error);throw new de(ye.InvalidParams,`Invalid elicitation result: ${y}`)}let g=v.data,h=p.mode==="form"?p.requestedSchema:void 0;if(p.mode==="form"&&g.action==="accept"&&g.content&&h&&this._capabilities.elicitation?.form?.applyDefaults)try{td(h,g.content)}catch{}return g};return super.setRequestHandler(e,o)}if(a==="sampling/createMessage"){let o=async(c,l)=>{let u=mn(Pg,c);if(!u.success){let g=u.error instanceof Error?u.error.message:String(u.error);throw new de(ye.InvalidParams,`Invalid sampling request: ${g}`)}let{params:p}=u.data,d=await Promise.resolve(r(c,l));if(p.task){let g=mn(ai,d);if(!g.success){let h=g.error instanceof Error?g.error.message:String(g.error);throw new de(ye.InvalidParams,`Invalid task creation result: ${h}`)}return g.data}let f=p.tools||p.toolChoice?Ig:Cg,v=mn(f,d);if(!v.success){let g=v.error instanceof Error?v.error.message:String(v.error);throw new de(ye.InvalidParams,`Invalid sampling result: ${g}`)}return v.data};return super.setRequestHandler(e,o)}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:lg,capabilities:this._capabilities,clientInfo:this._clientInfo}},fg,r);if(n===void 0)throw new Error(`Server sent invalid initialize result: ${n}`);if(!fk.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){_R(this._serverCapabilities?.tasks?.requests,e,"Server")}assertTaskHandlerCapability(e){this._capabilities&&wR(this._capabilities.tasks?.requests,e,"Client")}async ping(e){return this.request({method:"ping"},ii,e)}async complete(e,r){return this.request({method:"completion/complete",params:e},jg,r)}async setLoggingLevel(e,r){return this.request({method:"logging/setLevel",params:{level:e}},ii,r)}async getPrompt(e,r){return this.request({method:"prompts/get",params:e},Tg,r)}async listPrompts(e,r){return this.request({method:"prompts/list",params:e},_g,r)}async listResources(e,r){return this.request({method:"resources/list",params:e},gg,r)}async listResourceTemplates(e,r){return this.request({method:"resources/templates/list",params:e},vg,r)}async readResource(e,r){return this.request({method:"resources/read",params:e},bg,r)}async subscribeResource(e,r){return this.request({method:"resources/subscribe",params:e},ii,r)}async unsubscribeResource(e,r){return this.request({method:"resources/unsubscribe",params:e},ii,r)}async callTool(e,r=ta,n){if(this.isToolTaskRequired(e.name))throw new de(ye.InvalidRequest,`Tool "${e.name}" requires task-based execution. Use client.experimental.tasks.callToolStream() instead.`);let s=await this.request({method:"tools/call",params:e},r,n),i=this.getToolOutputValidator(e.name);if(i){if(!s.structuredContent&&!s.isError)throw new de(ye.InvalidRequest,`Tool ${e.name} has an output schema but did not return structured content`);if(s.structuredContent)try{let a=i(s.structuredContent);if(!a.valid)throw new de(ye.InvalidParams,`Structured content does not match the tool's output schema: ${a.errorMessage}`)}catch(a){throw a instanceof de?a:new de(ye.InvalidParams,`Failed to validate structured content: ${a instanceof Error?a.message:String(a)}`)}}return s}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 s=this._jsonSchemaValidator.getValidator(r.outputSchema);this._cachedToolOutputValidators.set(r.name,s)}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},$g,r);return this.cacheToolMetadata(n.tools),n}_setupListChangedHandler(e,r,n,s){let i=Pk.safeParse(n);if(!i.success)throw new Error(`Invalid ${e} listChanged options: ${i.error.message}`);if(typeof n.onChanged!="function")throw new Error(`Invalid ${e} listChanged options: onChanged must be a function`);let{autoRefresh:a,debounceMs:o}=i.data,{onChanged:c}=n,l=async()=>{if(!a){c(null,null);return}try{let p=await s();c(null,p)}catch(p){let d=p instanceof Error?p:new Error(String(p));c(d,null)}},u=()=>{if(o){let p=this._listChangedDebounceTimers.get(e);p&&clearTimeout(p);let d=setTimeout(l,o);this._listChangedDebounceTimers.set(e,d)}else l()};this.setNotificationHandler(r,u)}async sendRootsListChanged(){return this.notification({method:"notifications/roots/list_changed"})}};var d$=ie(u$(),1),Bc=ie(require("node:process"),1),m$=require("node:stream");var nd=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),SB(r)}clear(){this._buffer=void 0}};function SB(t){return wk.parse(JSON.parse(t))}function p$(t){return JSON.stringify(t)+` +`}var EB=Bc.default.platform==="win32"?["APPDATA","HOMEDRIVE","HOMEPATH","LOCALAPPDATA","PATH","PROCESSOR_ARCHITECTURE","SYSTEMDRIVE","SYSTEMROOT","TEMP","USERNAME","USERPROFILE","PROGRAMFILES"]:["HOME","LOGNAME","PATH","SHELL","TERM","USER"];function kB(){let t={};for(let e of EB){let r=Bc.default.env[e];r!==void 0&&(r.startsWith("()")||(t[e]=r))}return t}var _a=class{constructor(e){this._readBuffer=new nd,this._stderrStream=null,this._serverParams=e,(e.stderr==="pipe"||e.stderr==="overlapped")&&(this._stderrStream=new m$.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,d$.default)(this._serverParams.command,this._serverParams.args??[],{env:{...kB(),...this._serverParams.env},stdio:["pipe","pipe",this._serverParams.stderr??"inherit"],shell:!1,windowsHide:Bc.default.platform==="win32"&&TB(),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=p$(e);this._process.stdin.write(n)?r():this._process.stdin.once("drain",r)})}};function TB(){return"type"in Bc.default}_n();re();Kc();re();_n();var IB=5e3;async function md(t,e={},r=IB){let n=new Promise((s,i)=>setTimeout(()=>i(new Error(`Fetch timeout after ${r}ms`)),r));return Promise.race([fetch(t,e),n])}var AB="6.7.7";function fd(t){let e=xn();return`http://${e.includes(":")&&!e.startsWith("[")?`[${e}]`:e}:${t}`}async function Yy(t){try{return(await md(`${fd(t)}/api/health`)).ok}catch{return!1}}async function hd(t,e=3e4){let r=Date.now();for(;Date.now()-rsetTimeout(n,500))}return!1}async function Jc(t,e=1e4){let r=Date.now();for(;Date.now()-rsetTimeout(n,500))}return!1}async function Qc(t){try{let e=await md(`${fd(t)}/api/admin/shutdown`,{method:"POST"});return e.ok?!0:(_.warn("SYSTEM","Shutdown request returned error",{port:t,status:e.status}),!1)}catch(e){return e instanceof Error&&(e.message?.includes("ECONNREFUSED")||e.message?.includes("Fetch timeout"))?(_.debug("SYSTEM","Worker already stopped or not responding",{port:t}),!1):(_.error("SYSTEM","Shutdown request failed unexpectedly",{port:t},e),!1)}}function NB(){return AB}async function jB(t){try{let e=await md(`${fd(t)}/api/version`);return e.ok?(await e.json()).version:null}catch{return _.debug("SYSTEM","Could not fetch worker version",{port:t}),null}}async function $$(t){let e=NB(),r=await jB(t);return r?{matches:e===r,pluginVersion:e,workerVersion:r}:{matches:!0,pluginVersion:e,workerVersion:r}}re();Kc();var Xc=5e3;async function el(t,e,r){let n=new Promise(i=>setTimeout(()=>{_.warn("SYSTEM",`${r} timed out after ${e}ms`),i({completed:!1})},e)),s=t.then(i=>({completed:!0,result:i}));return Promise.race([s,n])}async function O$(t){_.info("SYSTEM","Shutdown initiated"),Sn();let e=await el(By(process.pid),Xc,"Enumerate child processes"),r=e.completed?e.result??[]:[];if(_.info("SYSTEM","Found child processes",{count:r.length,pids:r}),t.server&&(await el(DB(t.server),Xc,"Close HTTP server"),_.info("SYSTEM","HTTP server closed")),await el(t.sessionManager.shutdownAll(),Xc,"Shutdown sessions"),t.mcpClient&&(await el(t.mcpClient.close(),Xc,"Close MCP client"),_.info("SYSTEM","MCP client closed")),t.dbManager&&await el(t.dbManager.close(),Xc,"Close database"),r.length>0){_.info("SYSTEM","Force killing remaining children");for(let n of r)await Wy(n);await Zy(r,5e3)}_.info("SYSTEM","Worker shutdown complete")}async function DB(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"))}Kc();re();wa();var MB={waitForHealth:hd,checkVersionMatch:$$,httpShutdown:Qc,waitForPortFree:Jc,isPortInUse:Yy,spawnDaemon:Yc,writePidFile:Gc,removePidFile:Sn,cleanStalePidFile:Hy,getPlatformTimeout:bi};async function Ky(t,e,r=MB){if(r.cleanStalePidFile(),await r.waitForHealth(t,1e3)){let i=await r.checkVersionMatch(t);if(i.matches)return{ready:!0};if(_.info("SYSTEM","Worker version mismatch detected - auto-restarting",{pluginVersion:i.pluginVersion,workerVersion:i.workerVersion}),await r.httpShutdown(t),!await r.waitForPortFree(t,r.getPlatformTimeout(er.PORT_IN_USE_WAIT)))return{ready:!1,error:"Port did not free after version mismatch restart"};r.removePidFile()}if(await r.isPortInUse(t))return _.info("SYSTEM","Port in use, waiting for worker to become healthy"),await r.waitForHealth(t,r.getPlatformTimeout(er.PORT_IN_USE_WAIT))?{ready:!0}:{ready:!1,error:"Port in use but worker not responding"};_.info("SYSTEM","Starting worker daemon");let n=r.spawnDaemon(e,t);return n===void 0?{ready:!1,error:"Failed to spawn worker daemon"}:(r.writePidFile({pid:n,port:t,startedAt:new Date().toISOString()}),await r.waitForHealth(t,r.getPlatformTimeout(er.POST_SPAWN_WAIT))?{ready:!0}:(r.removePidFile(),{ready:!1,error:"Worker failed to start (health check timeout)"}))}var UD=ie(Ql(),1),__=ie(require("fs"),1),w_=ie(require("path"),1);re();var h_=ie(Ql(),1),PD=ie(gD(),1),CD=ie(xD(),1),ID=ie(require("path"),1);yr();re();var mte=[/^https?:\/\/localhost(:\d+)?$/,/^https?:\/\/127\.0\.0\.1(:\d+)?$/,/^https?:\/\/\[::1\](:\d+)?$/];function fte(t){return t===void 0?!0:mte.some(e=>e.test(t))}function g_(t){let e=[];e.push(h_.default.json({limit:"50mb"})),e.push((0,PD.default)({origin:(s,i)=>{fte(s)?i(null,!0):(_.warn("SECURITY","CORS request blocked",{origin:s}),i(null,!1))}})),e.push((0,CD.default)()),e.push((s,i,a)=>{let c=[".html",".js",".css",".svg",".png",".jpg",".jpeg",".webp",".woff",".woff2",".ttf",".eot"].some(f=>s.path.endsWith(f)),l=s.path==="/api/logs";if(s.path.startsWith("/health")||s.path==="/"||c||l)return a();let u=Date.now(),p=`${s.method}-${Date.now()}`,d=t(s.method,s.path,s.body);_.info("HTTP",`\u2192 ${s.method} ${s.path}`,{requestId:p},d);let m=i.send.bind(i);i.send=function(f){let v=Date.now()-u;return _.info("HTTP",`\u2190 ${i.statusCode} ${s.path}`,{requestId:p,duration:`${v}ms`}),m(f)},a()});let r=ds(),n=ID.default.join(r,"plugin","ui");return e.push(h_.default.static(n)),e}function $m(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 v_(t,e,r){if(!r||Object.keys(r).length===0||e.includes("/init"))return"";if(e.includes("/observations")){let n=r.tool_name||"?",s=r.tool_input;return`tool=${_.formatTool(n,s)}`}return e.includes("/summarize")?"requesting summary":""}re();var ro=class extends Error{constructor(r,n=500,s,i){super(r);this.statusCode=n;this.code=s;this.details=i;this.name="AppError"}};function AD(t,e,r,n){let s={error:t,message:e};return r&&(s.code=r),n&&(s.details=n),s}var ND=(t,e,r,n)=>{let s=t instanceof ro?t.statusCode:500;_.error("HTTP",`Error handling ${e.method} ${e.path}`,{statusCode:s,error:t.message,code:t instanceof ro?t.code:void 0},t);let i=AD(t.name||"Error",t.message,t instanceof ro?t.code:void 0,t instanceof ro?t.details:void 0);r.status(s).json(i)};function jD(t,e){e.status(404).json(AD("NotFound",`Cannot ${t.method} ${t.path}`))}var DD=ie(require("crypto"),1);re();Br();yr();var MD="claude_pilot_session",zD=1440*60*1e3,no=new Map;function hte(t){let e=t.ip||t.socket.remoteAddress||"";return e==="127.0.0.1"||e==="::1"||e==="::ffff:127.0.0.1"||e==="localhost"}function Om(){return Me.loadFromFile(ar).CLAUDE_PILOT_REMOTE_TOKEN}function gte(){return DD.default.randomBytes(32).toString("hex")}function vte(t,e){let r=no.get(t);return r?Date.now()-r.createdAt>zD?(no.delete(t),!1):!0:!1}function LD(t){let e=gte();return no.set(e,{createdAt:Date.now(),ip:t}),e}function qD(t){no.delete(t)}function yte(){let t=Date.now();for(let[e,r]of no.entries())t-r.createdAt>zD&&no.delete(e)}setInterval(yte,3600*1e3);function y_(t,e,r){if(hte(t))return t.auth={isLocal:!0,scopes:["*"]},r();if(t.path==="/login"||t.path.startsWith("/api/auth/"))return r();let n=t.ip||t.socket.remoteAddress||"unknown",s=t.cookies?.[MD];if(s&&vte(s,n))return t.auth={isLocal:!1,clientId:"web-session",scopes:["*"]},r();let i=t.headers.authorization;if(i&&i.startsWith("Bearer ")){let c=i.slice(7),l=Om();if(l&&c===l)return t.auth={isLocal:!1,clientId:"api-client",scopes:["*"]},r()}if((t.headers.accept||"").includes("text/html")&&(t.path==="/"||t.path==="/viewer.html")){e.redirect("/login");return}_.warn("SECURITY","Unauthorized request",{path:t.path,ip:n}),e.status(401).json({code:"UNAUTHORIZED",message:"Authentication required"})}function b_(){return MD}function so(){return!!Om()}re();var FD=new Map;function bte(t){let e=t.ip||t.socket.remoteAddress||"";return e==="127.0.0.1"||e==="::1"||e==="::ffff:127.0.0.1"}function xte(t){let e=t.headers.authorization?.slice(7,23);return e?`token:${e}`:`ip:${t.ip||t.socket.remoteAddress||"unknown"}`}function x_(t=1e3,e=6e4){return(r,n,s)=>{if(bte(r))return s();let i=xte(r),a=Date.now(),o=a-e,c=FD.get(i);if(c||(c={timestamps:[]},FD.set(i,c)),c.timestamps=c.timestamps.filter(u=>u>o),c.timestamps.length>=t){let u=Math.ceil(e/1e3);_.warn("SECURITY","Rate limit exceeded",{key:i,requests:c.timestamps.length,limit:t}),n.setHeader("Retry-After",u.toString()),n.setHeader("X-RateLimit-Limit",t.toString()),n.setHeader("X-RateLimit-Remaining","0"),n.setHeader("X-RateLimit-Reset",Math.ceil((a+e)/1e3).toString()),n.status(429).json({code:"RATE_LIMITED",message:"Too many requests",retryAfter:u});return}c.timestamps.push(a);let l=t-c.timestamps.length;n.setHeader("X-RateLimit-Limit",t.toString()),n.setHeader("X-RateLimit-Remaining",l.toString()),n.setHeader("X-RateLimit-Reset",Math.ceil((a+e)/1e3).toString()),s()}}_n();var _te="6.7.7",Pm=class{app;server=null;options;startTime=Date.now();constructor(e){this.options=e,this.app=(0,UD.default)(),this.setupMiddleware(),this.setupCoreRoutes()}getHttpServer(){return this.server}async listen(e,r){return new Promise((n,s)=>{this.server=this.app.listen(e,r,()=>{_.info("SYSTEM","HTTP server started",{host:r,port:e,pid:process.pid}),n()}),this.server.on("error",s)})}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(jD),this.app.use(ND)}setupMiddleware(){g_(v_).forEach(s=>this.app.use(s)),this.app.use(x_(1e3,6e4));let r=ld(),n=so();r!=="127.0.0.1"&&r!=="localhost"&&n?(_.info("SYSTEM","Enabling authentication middleware for network access",{bind:r}),this.app.use(y_)):r!=="127.0.0.1"&&r!=="localhost"&&!n&&_.warn("SYSTEM","Network access enabled WITHOUT authentication - set CLAUDE_PILOT_REMOTE_TOKEN for security",{bind:r})}setupCoreRoutes(){let e="TEST-008-wrapper-ipc";this.app.get("/api/health",(r,n)=>{n.status(200).json({status:"ok",build:e,managed:process.env.CLAUDE_PILOT_MANAGED==="true",hasIpc:typeof process.send=="function",platform:process.platform,pid:process.pid,initialized:this.options.getInitializationComplete(),coreReady:this.options.getCoreReady(),mcpReady:this.options.getMcpReady()})}),this.app.get("/api/core-ready",(r,n)=>{this.options.getCoreReady()?n.status(200).json({status:"ready",message:"Core services ready (Database + SearchManager)"}):n.status(503).json({status:"initializing",message:"Core services still initializing, please retry"})}),this.app.get("/api/readiness",(r,n)=>{this.options.getInitializationComplete()?n.status(200).json({status:"ready",mcpReady:this.options.getMcpReady()}):n.status(503).json({status:"initializing",message:"Worker is still initializing, please retry"})}),this.app.get("/api/version",(r,n)=>{n.status(200).json({version:_te})}),this.app.get("/api/process-stats",async(r,n)=>{try{let{getProcessStats:s}=await Promise.resolve().then(()=>(Kc(),R$)),i=await s();n.status(200).json({...i,uptime:Math.round((Date.now()-this.startTime)/1e3),platform:process.platform,pid:process.pid})}catch(s){_.error("SYSTEM","Failed to get process stats",{},s),n.status(500).json({error:"Failed to get process stats"})}}),this.app.get("/api/instructions",async(r,n)=>{let s=r.query.topic||"all",i=r.query.operation;try{let a;if(i){let o=w_.default.join(__dirname,"../skills/mem-search/operations",`${i}.md`);a=await __.promises.readFile(o,"utf-8")}else{let o=w_.default.join(__dirname,"../skills/mem-search/SKILL.md"),c=await __.promises.readFile(o,"utf-8");a=this.extractInstructionSection(c,s)}n.json({content:[{type:"text",text:a}]})}catch{n.status(404).json({error:"Instruction not found"})}}),this.app.post("/api/admin/restart",$m,async(r,n)=>{n.json({status:"restarting"}),process.platform==="win32"&&process.env.CLAUDE_PILOT_MANAGED==="true"&&process.send?(_.info("SYSTEM","Sending restart request to wrapper"),process.send({type:"restart"})):setTimeout(async()=>{await this.options.onRestart()},100)}),this.app.post("/api/admin/shutdown",$m,async(r,n)=>{n.json({status:"shutting_down"}),process.platform==="win32"&&process.env.CLAUDE_PILOT_MANAGED==="true"&&process.send?(_.info("SYSTEM","Sending shutdown request to wrapper"),process.send({type:"shutdown"})):setTimeout(async()=>{await this.options.onShutdown()},100)})}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 s=e.indexOf(r),i=e.indexOf(n);return s===-1?e:i===-1?e.substring(s):e.substring(s,i).trim()}};Cm();var BD=require("bun:sqlite");yr();re();var Im=class{db;constructor(e){e||(Rn(zr),e=eu),this.db=new BD.Database(e),this.db.run("PRAGMA journal_mode = WAL"),this.ensureFTSTables()}ensureFTSTables(){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")||(_.info("DB","Creating FTS5 tables"),this.db.run(` CREATE VIRTUAL TABLE IF NOT EXISTS observations_fts USING fts5( title, subtitle, @@ -1057,7 +1057,7 @@ ${J.dim}No previous sessions found for this project yet.${J.reset} FROM user_prompts WHERE content_session_id = ? ORDER BY prompt_number ASC - `).all(e)}close(){this.db.close()}};Om();se();Br();yr();se();var Cm=pe(require("fs"),1),b_=pe(require("os"),1),Ni=pe(require("path"),1),hte="1.0.0",Im=class{client=null;transport=null;connected=!1;project;collectionName;VECTOR_DB_DIR;VENV_DIR;connectionPromise=null;operationMutex=Promise.resolve();failureCount=0;circuitOpenUntil=0;isHalfOpenAttemptInProgress=!1;maxFailures;cooldownMs;constructor(e,r){this.project=e,this.collectionName=`cm__${e}`,this.VECTOR_DB_DIR=Ni.default.join(b_.default.homedir(),".pilot/memory","vector-db"),this.VENV_DIR=Ni.default.join(b_.default.homedir(),".pilot/memory","chroma-venv"),this.maxFailures=r?.maxFailures??3,this.cooldownMs=r?.cooldownMs??6e4}getCollectionName(){return this.collectionName}async getClient(){if(this.connected&&this.client)return this.client;if(this.connectionPromise&&(await this.connectionPromise,this.connected&&this.client))return this.client;if(this.failureCount>=this.maxFailures){let e=Date.now();if(e=this.maxFailures&&(this.circuitOpenUntil=Date.now()+this.cooldownMs,_.error("CHROMA_SYNC",`Circuit breaker opened after ${this.failureCount} failures`,{project:this.project},e)),await this.safeCloseTransport(),this.client=null,this.connected=!1,new Error(`Chroma connection failed: ${e instanceof Error?e.message:String(e)}`)}}getVenvBinaryPath(){let e=process.platform==="win32",r=e?"Scripts":"bin",n=e?"chroma-mcp.exe":"chroma-mcp";return Ni.default.join(this.VENV_DIR,r,n)}async ensureVenv(){let e=Ni.default.join(this.VENV_DIR,".pilot-installed");if(Cm.default.existsSync(e))return!0;let n=De.loadFromFile(ar).CLAUDE_PILOT_PYTHON_VERSION;try{let{spawnSync:s}=await import("child_process");_.info("CHROMA_SYNC","Creating persistent venv for chroma-mcp",{venvDir:this.VENV_DIR,pythonVersion:n});let i=s("uv",["venv","--python",n,this.VENV_DIR],{encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:6e4});if(i.status!==0)return _.error("CHROMA_SYNC","Failed to create venv",{stderr:i.stderr?.slice(0,200)}),!1;let a=process.platform==="win32",o=Ni.default.join(this.VENV_DIR,a?"Scripts/python.exe":"bin/python"),c=s("uv",["pip","install","--python",o,"chroma-mcp"],{encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:12e4});return c.status!==0?(_.error("CHROMA_SYNC","Failed to install chroma-mcp in venv",{stderr:c.stderr?.slice(0,200)}),!1):(Cm.default.mkdirSync(Ni.default.dirname(e),{recursive:!0}),Cm.default.writeFileSync(e,"chroma-mcp"),_.info("CHROMA_SYNC","Persistent venv ready",{venvDir:this.VENV_DIR}),!0)}catch(s){return _.error("CHROMA_SYNC","Venv setup failed, will fall back to uvx",{},s),!1}}async getWorkingTransportOptions(){let r=De.loadFromFile(ar).CLAUDE_PILOT_PYTHON_VERSION,n=process.platform==="win32",s=["--client-type","persistent","--data-dir",this.VECTOR_DB_DIR],i=this.getVenvBinaryPath();try{let{spawnSync:l}=await import("child_process");if(l(i,["--version"],{encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:5e3}).status===0){let d={command:i,args:s,stderr:"ignore"};return n&&(d.windowsHide=!0),d}if(await this.ensureVenv()){let d={command:i,args:s,stderr:"ignore"};return n&&(d.windowsHide=!0),d}}catch(l){_.debug("CHROMA_SYNC","Venv check failed, trying uvx",{},l)}let a={command:"uvx",args:["--python",r,"chroma-mcp",...s],stderr:"ignore"};n&&(a.windowsHide=!0);try{let{spawnSync:l}=await import("child_process");if(l("uvx",["--version"],{encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:5e3}).status===0)return a}catch(l){_.debug("CHROMA_SYNC","uvx check failed, trying pip",{},l)}let o=n?"python":`python${r}`,c={command:o,args:["-m","chroma_mcp",...s],stderr:"ignore"};n&&(c.windowsHide=!0);try{let{spawnSync:l}=await import("child_process");if(l(o,["-c","import chroma_mcp"],{encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:5e3}).status===0)return c}catch(l){_.debug("CHROMA_SYNC","pip check failed",{},l)}throw new Error("Chroma MCP not available. Install with: uvx chroma-mcp OR pip install chroma-mcp")}async withMutex(e){let r=await this.getClient(),n,s=this.operationMutex;this.operationMutex=new Promise(i=>{n=i}),await s;try{return await e(r)}finally{n()}}async isHealthy(){return this.connected&&this.client!==null}async close(){await this.safeCloseTransport(),this.client=null,this.transport=null,this.connected=!1,this.connectionPromise=null}async safeCloseTransport(){if(this.transport)try{await this.transport.close()}catch(e){_.debug("CHROMA_SYNC","Transport close error (non-fatal)",{},e)}}};var Am=class{connectionManager;project;collectionName;BATCH_SIZE=100;constructor(e){this.project=e,this.collectionName=`cm__${e}`,this.connectionManager=new Im(e)}async getClient(){return this.connectionManager.getClient()}async invalidateConnection(){await this.connectionManager.close()}async ensureCollection(){let e=await this.getClient();try{await e.callTool({name:"chroma_get_collection_info",arguments:{collection_name:this.collectionName}}),_.debug("CHROMA_SYNC","Collection exists",{collection:this.collectionName})}catch(r){let n=r instanceof Error?r.message:String(r);if(n.includes("Not connected")||n.includes("Connection closed")||n.includes("MCP error -32000"))throw await this.invalidateConnection(),_.error("CHROMA_SYNC","Connection lost during collection check",{collection:this.collectionName},r),new Error(`Chroma connection lost: ${n}`);_.error("CHROMA_SYNC","Collection check failed, attempting to create",{collection:this.collectionName},r),_.info("CHROMA_SYNC","Creating collection",{collection:this.collectionName});try{await e.callTool({name:"chroma_create_collection",arguments:{collection_name:this.collectionName,embedding_function_name:"default"}}),_.info("CHROMA_SYNC","Collection created",{collection:this.collectionName})}catch(i){throw _.error("CHROMA_SYNC","Failed to create collection",{collection:this.collectionName},i),new Error(`Collection creation failed: ${i instanceof Error?i.message:String(i)}`)}}return e}formatObservationDocs(e){let r=[],n=e.facts?JSON.parse(e.facts):[],s=e.concepts?JSON.parse(e.concepts):[],i=e.files_read?JSON.parse(e.files_read):[],a=e.files_modified?JSON.parse(e.files_modified):[],o={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&&(o.subtitle=e.subtitle),s.length>0&&(o.concepts=s.join(",")),i.length>0&&(o.files_read=i.join(",")),a.length>0&&(o.files_modified=a.join(",")),e.narrative&&r.push({id:`obs_${e.id}_narrative`,document:e.narrative,metadata:{...o,field_type:"narrative"}}),e.text&&r.push({id:`obs_${e.id}_text`,document:e.text,metadata:{...o,field_type:"text"}}),n.forEach((c,l)=>{r.push({id:`obs_${e.id}_fact_${l}`,document:c,metadata:{...o,field_type:"fact",fact_index:l}})}),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;let r=await this.ensureCollection();try{await r.callTool({name:"chroma_add_documents",arguments:{collection_name:this.collectionName,documents:e.map(n=>n.document),ids:e.map(n=>n.id),metadatas:e.map(n=>n.metadata)}}),_.debug("CHROMA_SYNC","Documents added",{collection:this.collectionName,count:e.length})}catch(n){throw _.error("CHROMA_SYNC","Failed to add documents",{collection:this.collectionName,count:e.length},n),new Error(`Document add failed: ${n instanceof Error?n.message:String(n)}`)}}async syncObservation(e,r,n,s,i,a,o=0){let c={id:e,memory_session_id:r,project:n,text:null,type:s.type,title:s.title,subtitle:s.subtitle,facts:JSON.stringify(s.facts),narrative:s.narrative,concepts:JSON.stringify(s.concepts),files_read:JSON.stringify(s.files_read),files_modified:JSON.stringify(s.files_modified),prompt_number:i,discovery_tokens:o,created_at:new Date(a*1e3).toISOString(),created_at_epoch:a},l=this.formatObservationDocs(c);_.info("CHROMA_SYNC","Syncing observation",{observationId:e,documentCount:l.length,project:n}),await this.addDocuments(l)}async syncSummary(e,r,n,s,i,a,o=0){let c={id:e,memory_session_id:r,project:n,request:s.request,investigated:s.investigated,learned:s.learned,completed:s.completed,next_steps:s.next_steps,notes:s.notes,prompt_number:i,discovery_tokens:o,created_at:new Date(a*1e3).toISOString(),created_at_epoch:a},l=this.formatSummaryDocs(c);_.info("CHROMA_SYNC","Syncing summary",{summaryId:e,documentCount:l.length,project:n}),await this.addDocuments(l)}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,s,i,a){let o={id:e,content_session_id:"",prompt_number:i,prompt_text:s,created_at:new Date(a*1e3).toISOString(),created_at_epoch:a,memory_session_id:r,project:n},c=this.formatUserPromptDoc(o);_.info("CHROMA_SYNC","Syncing user prompt",{promptId:e,project:n}),await this.addDocuments([c])}async getExistingChromaIds(){let e=await this.getClient(),r=new Set,n=new Set,s=new Set,i=0,a=1e3;for(_.info("CHROMA_SYNC","Fetching existing Chroma document IDs...",{project:this.project});;)try{let c=(await e.callTool({name:"chroma_get_documents",arguments:{collection_name:this.collectionName,limit:a,offset:i,where:{project:this.project},include:["metadatas"]}})).content[0];if(!c||c.type!=="text"||!c.text)throw new Error("Unexpected response type from chroma_get_documents");let u=JSON.parse(c.text).metadatas||[];if(u.length===0)break;for(let p of u)p.sqlite_id&&(p.doc_type==="observation"?r.add(p.sqlite_id):p.doc_type==="session_summary"?n.add(p.sqlite_id):p.doc_type==="user_prompt"&&s.add(p.sqlite_id));i+=a,_.debug("CHROMA_SYNC","Fetched batch of existing IDs",{project:this.project,offset:i,batchSize:u.length})}catch(o){throw _.error("CHROMA_SYNC","Failed to fetch existing IDs",{project:this.project},o),o}return _.info("CHROMA_SYNC","Existing IDs fetched",{project:this.project,observations:r.size,summaries:n.size,prompts:s.size}),{observations:r,summaries:n,prompts:s}}async ensureBackfilled(){_.info("CHROMA_SYNC","Starting smart backfill",{project:this.project}),await this.ensureCollection();let e=await this.getExistingChromaIds(),r=new Ws;try{let n=Array.from(e.observations),s=n.length>0?`AND id NOT IN (${n.join(",")})`:"",i=r.db.prepare(` + `).all(e)}close(){this.db.close()}};Cm();re();Br();yr();re();var Am=ie(require("fs"),1),S_=ie(require("os"),1),ji=ie(require("path"),1),wte="1.0.0",Nm=class{client=null;transport=null;connected=!1;project;collectionName;VECTOR_DB_DIR;VENV_DIR;connectionPromise=null;operationMutex=Promise.resolve();failureCount=0;circuitOpenUntil=0;isHalfOpenAttemptInProgress=!1;maxFailures;cooldownMs;constructor(e,r){this.project=e,this.collectionName=`cm__${e}`,this.VECTOR_DB_DIR=ji.default.join(S_.default.homedir(),".pilot/memory","vector-db"),this.VENV_DIR=ji.default.join(S_.default.homedir(),".pilot/memory","chroma-venv"),this.maxFailures=r?.maxFailures??3,this.cooldownMs=r?.cooldownMs??6e4}getCollectionName(){return this.collectionName}async getClient(){if(this.connected&&this.client)return this.client;if(this.connectionPromise&&(await this.connectionPromise,this.connected&&this.client))return this.client;if(this.failureCount>=this.maxFailures){let e=Date.now();if(e=this.maxFailures&&(this.circuitOpenUntil=Date.now()+this.cooldownMs,_.error("CHROMA_SYNC",`Circuit breaker opened after ${this.failureCount} failures`,{project:this.project},e)),await this.safeCloseTransport(),this.client=null,this.connected=!1,new Error(`Chroma connection failed: ${e instanceof Error?e.message:String(e)}`)}}getVenvBinaryPath(){let e=process.platform==="win32",r=e?"Scripts":"bin",n=e?"chroma-mcp.exe":"chroma-mcp";return ji.default.join(this.VENV_DIR,r,n)}async ensureVenv(){let e=ji.default.join(this.VENV_DIR,".pilot-installed");if(Am.default.existsSync(e))return!0;let n=Me.loadFromFile(ar).CLAUDE_PILOT_PYTHON_VERSION;try{let{spawnSync:s}=await import("child_process");_.info("CHROMA_SYNC","Creating persistent venv for chroma-mcp",{venvDir:this.VENV_DIR,pythonVersion:n});let i=s("uv",["venv","--python",n,this.VENV_DIR],{encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:6e4});if(i.status!==0)return _.error("CHROMA_SYNC","Failed to create venv",{stderr:i.stderr?.slice(0,200)}),!1;let a=process.platform==="win32",o=ji.default.join(this.VENV_DIR,a?"Scripts/python.exe":"bin/python"),c=s("uv",["pip","install","--python",o,"chroma-mcp"],{encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:12e4});return c.status!==0?(_.error("CHROMA_SYNC","Failed to install chroma-mcp in venv",{stderr:c.stderr?.slice(0,200)}),!1):(Am.default.mkdirSync(ji.default.dirname(e),{recursive:!0}),Am.default.writeFileSync(e,"chroma-mcp"),_.info("CHROMA_SYNC","Persistent venv ready",{venvDir:this.VENV_DIR}),!0)}catch(s){return _.error("CHROMA_SYNC","Venv setup failed, will fall back to uvx",{},s),!1}}async getWorkingTransportOptions(){let r=Me.loadFromFile(ar).CLAUDE_PILOT_PYTHON_VERSION,n=process.platform==="win32",s=["--client-type","persistent","--data-dir",this.VECTOR_DB_DIR],i=this.getVenvBinaryPath();try{let{spawnSync:l}=await import("child_process");if(l(i,["--version"],{encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:5e3}).status===0){let d={command:i,args:s,stderr:"ignore"};return n&&(d.windowsHide=!0),d}if(await this.ensureVenv()){let d={command:i,args:s,stderr:"ignore"};return n&&(d.windowsHide=!0),d}}catch(l){_.debug("CHROMA_SYNC","Venv check failed, trying uvx",{},l)}let a={command:"uvx",args:["--python",r,"chroma-mcp",...s],stderr:"ignore"};n&&(a.windowsHide=!0);try{let{spawnSync:l}=await import("child_process");if(l("uvx",["--version"],{encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:5e3}).status===0)return a}catch(l){_.debug("CHROMA_SYNC","uvx check failed, trying pip",{},l)}let o=n?"python":`python${r}`,c={command:o,args:["-m","chroma_mcp",...s],stderr:"ignore"};n&&(c.windowsHide=!0);try{let{spawnSync:l}=await import("child_process");if(l(o,["-c","import chroma_mcp"],{encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:5e3}).status===0)return c}catch(l){_.debug("CHROMA_SYNC","pip check failed",{},l)}throw new Error("Chroma MCP not available. Install with: uvx chroma-mcp OR pip install chroma-mcp")}async withMutex(e){let r=await this.getClient(),n,s=this.operationMutex;this.operationMutex=new Promise(i=>{n=i}),await s;try{return await e(r)}finally{n()}}async isHealthy(){return this.connected&&this.client!==null}async close(){await this.safeCloseTransport(),this.client=null,this.transport=null,this.connected=!1,this.connectionPromise=null}async safeCloseTransport(){if(this.transport)try{await this.transport.close()}catch(e){_.debug("CHROMA_SYNC","Transport close error (non-fatal)",{},e)}}};var jm=class{connectionManager;project;collectionName;BATCH_SIZE=100;constructor(e){this.project=e,this.collectionName=`cm__${e}`,this.connectionManager=new Nm(e)}async getClient(){return this.connectionManager.getClient()}async invalidateConnection(){await this.connectionManager.close()}async ensureCollection(){let e=await this.getClient();try{await e.callTool({name:"chroma_get_collection_info",arguments:{collection_name:this.collectionName}}),_.debug("CHROMA_SYNC","Collection exists",{collection:this.collectionName})}catch(r){let n=r instanceof Error?r.message:String(r);if(n.includes("Not connected")||n.includes("Connection closed")||n.includes("MCP error -32000"))throw await this.invalidateConnection(),_.error("CHROMA_SYNC","Connection lost during collection check",{collection:this.collectionName},r),new Error(`Chroma connection lost: ${n}`);_.error("CHROMA_SYNC","Collection check failed, attempting to create",{collection:this.collectionName},r),_.info("CHROMA_SYNC","Creating collection",{collection:this.collectionName});try{await e.callTool({name:"chroma_create_collection",arguments:{collection_name:this.collectionName,embedding_function_name:"default"}}),_.info("CHROMA_SYNC","Collection created",{collection:this.collectionName})}catch(i){throw _.error("CHROMA_SYNC","Failed to create collection",{collection:this.collectionName},i),new Error(`Collection creation failed: ${i instanceof Error?i.message:String(i)}`)}}return e}formatObservationDocs(e){let r=[],n=e.facts?JSON.parse(e.facts):[],s=e.concepts?JSON.parse(e.concepts):[],i=e.files_read?JSON.parse(e.files_read):[],a=e.files_modified?JSON.parse(e.files_modified):[],o={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&&(o.subtitle=e.subtitle),s.length>0&&(o.concepts=s.join(",")),i.length>0&&(o.files_read=i.join(",")),a.length>0&&(o.files_modified=a.join(",")),e.narrative&&r.push({id:`obs_${e.id}_narrative`,document:e.narrative,metadata:{...o,field_type:"narrative"}}),e.text&&r.push({id:`obs_${e.id}_text`,document:e.text,metadata:{...o,field_type:"text"}}),n.forEach((c,l)=>{r.push({id:`obs_${e.id}_fact_${l}`,document:c,metadata:{...o,field_type:"fact",fact_index:l}})}),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;let r=await this.ensureCollection();try{await r.callTool({name:"chroma_add_documents",arguments:{collection_name:this.collectionName,documents:e.map(n=>n.document),ids:e.map(n=>n.id),metadatas:e.map(n=>n.metadata)}}),_.debug("CHROMA_SYNC","Documents added",{collection:this.collectionName,count:e.length})}catch(n){throw _.error("CHROMA_SYNC","Failed to add documents",{collection:this.collectionName,count:e.length},n),new Error(`Document add failed: ${n instanceof Error?n.message:String(n)}`)}}async syncObservation(e,r,n,s,i,a,o=0){let c={id:e,memory_session_id:r,project:n,text:null,type:s.type,title:s.title,subtitle:s.subtitle,facts:JSON.stringify(s.facts),narrative:s.narrative,concepts:JSON.stringify(s.concepts),files_read:JSON.stringify(s.files_read),files_modified:JSON.stringify(s.files_modified),prompt_number:i,discovery_tokens:o,created_at:new Date(a*1e3).toISOString(),created_at_epoch:a},l=this.formatObservationDocs(c);_.info("CHROMA_SYNC","Syncing observation",{observationId:e,documentCount:l.length,project:n}),await this.addDocuments(l)}async syncSummary(e,r,n,s,i,a,o=0){let c={id:e,memory_session_id:r,project:n,request:s.request,investigated:s.investigated,learned:s.learned,completed:s.completed,next_steps:s.next_steps,notes:s.notes,prompt_number:i,discovery_tokens:o,created_at:new Date(a*1e3).toISOString(),created_at_epoch:a},l=this.formatSummaryDocs(c);_.info("CHROMA_SYNC","Syncing summary",{summaryId:e,documentCount:l.length,project:n}),await this.addDocuments(l)}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,s,i,a){let o={id:e,content_session_id:"",prompt_number:i,prompt_text:s,created_at:new Date(a*1e3).toISOString(),created_at_epoch:a,memory_session_id:r,project:n},c=this.formatUserPromptDoc(o);_.info("CHROMA_SYNC","Syncing user prompt",{promptId:e,project:n}),await this.addDocuments([c])}async getExistingChromaIds(){let e=await this.getClient(),r=new Set,n=new Set,s=new Set,i=0,a=1e3;for(_.info("CHROMA_SYNC","Fetching existing Chroma document IDs...",{project:this.project});;)try{let c=(await e.callTool({name:"chroma_get_documents",arguments:{collection_name:this.collectionName,limit:a,offset:i,where:{project:this.project},include:["metadatas"]}})).content[0];if(!c||c.type!=="text"||!c.text)throw new Error("Unexpected response type from chroma_get_documents");let u=JSON.parse(c.text).metadatas||[];if(u.length===0)break;for(let p of u)p.sqlite_id&&(p.doc_type==="observation"?r.add(p.sqlite_id):p.doc_type==="session_summary"?n.add(p.sqlite_id):p.doc_type==="user_prompt"&&s.add(p.sqlite_id));i+=a,_.debug("CHROMA_SYNC","Fetched batch of existing IDs",{project:this.project,offset:i,batchSize:u.length})}catch(o){throw _.error("CHROMA_SYNC","Failed to fetch existing IDs",{project:this.project},o),o}return _.info("CHROMA_SYNC","Existing IDs fetched",{project:this.project,observations:r.size,summaries:n.size,prompts:s.size}),{observations:r,summaries:n,prompts:s}}async ensureBackfilled(){_.info("CHROMA_SYNC","Starting smart backfill",{project:this.project}),await this.ensureCollection();let e=await this.getExistingChromaIds(),r=new Ws;try{let n=Array.from(e.observations),s=n.length>0?`AND id NOT IN (${n.join(",")})`:"",i=r.db.prepare(` SELECT * FROM observations WHERE project = ? ${s} ORDER BY id ASC @@ -1083,11 +1083,11 @@ ${J.dim}No previous sessions found for this project yet.${J.reset} FROM user_prompts up JOIN sdk_sessions s ON up.content_session_id = s.content_session_id WHERE s.project = ? - `).get(this.project);_.info("CHROMA_SYNC","Backfilling user prompts",{project:this.project,missing:v.length,existing:e.prompts.size,total:g.count});let h=[];for(let y of v)h.push(this.formatUserPromptDoc(y));for(let y=0;y{let r=await this.getEmbeddingCount();_.info("CHROMA_SYNC","Starting vacuum \u2014 deleting collection",{collection:this.collectionName,project:this.project,existingDocuments:r}),await e.callTool({name:"chroma_delete_collection",arguments:{collection_name:this.collectionName}}),_.info("CHROMA_SYNC","Collection deleted, recreating",{collection:this.collectionName}),await e.callTool({name:"chroma_create_collection",arguments:{collection_name:this.collectionName,embedding_function_name:"default"}}),_.info("CHROMA_SYNC","Collection recreated, starting backfill",{collection:this.collectionName});try{await this.ensureBackfilled();let n=await this.getEmbeddingCount();return _.info("CHROMA_SYNC","Vacuum complete",{collection:this.collectionName,project:this.project,deletedDocuments:r,reindexedDocuments:n}),{deletedDocuments:r,reindexedDocuments:n}}catch(n){let s=n instanceof Error?n.message:String(n);return _.error("CHROMA_SYNC","Vacuum incomplete \u2014 backfill failed",{collection:this.collectionName,project:this.project},n),{deletedDocuments:r,reindexedDocuments:0,error:`Vacuum incomplete \u2014 run again to complete backfill: ${s}`}}})}async getEmbeddingCount(){try{let n=(await(await this.getClient()).callTool({name:"chroma_get_collection_info",arguments:{collection_name:this.collectionName}})).content[0]?.text;if(!n)return 0;let s=JSON.parse(n);return s.count??s.num_documents??0}catch{return 0}}async close(){await this.connectionManager.close(),_.info("CHROMA_SYNC","Chroma client and subprocess closed",{project:this.project})}async query(e,r,n){return this.queryChroma(e,r,n)}async isHealthy(){return this.connectionManager.isHealthy()}};se();var so=class{project;loggedOnce=!1;constructor(e){this.project=e}logDisabled(){this.loggedOnce||(_.info("VECTOR_SYNC","Vector database disabled - using SQLite-only mode",{project:this.project}),this.loggedOnce=!0)}async syncObservation(){this.logDisabled()}async syncSummary(){this.logDisabled()}async syncUserPrompt(){this.logDisabled()}async ensureBackfilled(){this.logDisabled()}async query(){return this.logDisabled(),{ids:[],distances:[],metadatas:[]}}async deleteDocuments(e,r){return 0}async getEmbeddingCount(){return 0}async vacuum(){return this.logDisabled(),{deletedDocuments:0,reindexedDocuments:0}}async close(){}async isHealthy(){return!0}};Br();yr();se();function LD(t){let e=De.loadFromFile(ar),r=process.platform==="win32";if(!e.CLAUDE_PILOT_CHROMA_ENABLED)return _.info("VECTOR_SYNC","Vector database disabled by setting",{project:t}),new so(t);let s=e.CLAUDE_PILOT_VECTOR_DB||"chroma";return s==="none"||s==="disabled"?(_.info("VECTOR_SYNC","Vector database disabled via CLAUDE_PILOT_VECTOR_DB setting",{project:t,backend:s}),new so(t)):r&&s==="chroma"?(_.warn("VECTOR_SYNC","Chroma disabled on Windows to prevent console popups. Disable vector DB in settings.",{project:t}),new so(t)):(_.info("VECTOR_SYNC","Creating vector sync",{project:t,backend:s}),new Am(t))}se();var Nm=class{sessionStore=null;sessionSearch=null;vectorSync=null;async initialize(){this.sessionStore=new Ws,this.sessionSearch=new Pm,this.vectorSync=LD("pilot-memory"),_.info("DB","Database initialized")}async close(){this.vectorSync&&(await this.vectorSync.close(),this.vectorSync=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}getVectorSync(){if(!this.vectorSync)throw new Error("VectorSync not initialized");return this.vectorSync}getVectorSyncOrNull(){return this.vectorSync}getChromaSync(){return this.getVectorSync()}getSessionById(e){let r=this.getSessionStore().getSessionById(e);if(!r)throw new Error(`Session ${e} not found`);return r}};var FD=require("events");se();Zs();se();var qD=180*1e3,gte=10,eu=class{constructor(e,r){this.store=e;this.events=r}async*createIterator(e){let{sessionDbId:r,signal:n,onIdleTimeout:s,idleTimeoutMs:i=qD}=e,a=Date.now();for(;!n.aborted;)try{let o=this.store.claimAndDelete(r);if(o)a=Date.now(),yield this.toPendingMessageWithId(o);else if(!await this.waitForMessage(n,i)&&!n.aborted){let l=Date.now()-a;if(l>=i){_.info("SESSION","Iterator exiting due to idle timeout",{sessionDbId:r,idleMs:l,thresholdMs:i}),s?.();return}a=Date.now()}}catch(o){if(n.aborted)return;_.error("SESSION","Error in queue processor loop",{sessionDbId:r},o),await new Promise(c=>setTimeout(c,1e3))}}async*createBatchIterator(e){let{sessionDbId:r,signal:n,onIdleTimeout:s,idleTimeoutMs:i=qD,maxBatchSize:a=gte}=e,o=Date.now();for(;!n.aborted;)try{let c=this.store.claimAndDeleteBatch(r,a);if(c.length>0)o=Date.now(),yield c.map(l=>this.toPendingMessageWithId(l));else if(!await this.waitForMessage(n,i)&&!n.aborted){let u=Date.now()-o;if(u>=i){_.info("SESSION","Batch iterator exiting due to idle timeout",{sessionDbId:r,idleMs:u,thresholdMs:i}),s?.();return}o=Date.now()}}catch(c){if(n.aborted)return;_.error("SESSION","Error in batch queue processor loop",{sessionDbId:r},c),await new Promise(l=>setTimeout(l,1e3))}}toPendingMessageWithId(e){return{...this.store.toPendingMessage(e),_persistentId:e.id,_originalTimestamp:e.created_at_epoch}}waitForMessage(e,r){return new Promise(n=>{let s=()=>{c(),n(!0)},i=()=>{c(),n(!1)},a,o=()=>{c(),n(!1)},c=()=>{this.events.off("message",s),e.removeEventListener("abort",i),a!==void 0&&clearTimeout(a)};this.events.once("message",s),e.addEventListener("abort",i,{once:!0}),r!==void 0&&(a=setTimeout(o,r))})}};var jm=class{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 Xl(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 s=this.sessions.get(e);if(s){_.debug("SESSION","Returning cached session",{sessionDbId:e,contentSessionId:s.contentSessionId,lastPromptNumber:s.lastPromptNumber});let l=this.dbManager.getSessionById(e);return l.project&&l.project!==s.project&&(_.debug("SESSION","Updating project from database",{sessionDbId:e,oldProject:s.project,newProject:l.project}),s.project=l.project),r?(_.debug("SESSION","Updating userPrompt for continuation",{sessionDbId:e,promptNumber:n,oldPrompt:s.userPrompt.substring(0,80),newPrompt:r.substring(0,80)}),s.userPrompt=r,s.lastPromptNumber=n||s.lastPromptNumber):_.debug("SESSION","No currentUserPrompt provided for existing session",{sessionDbId:e,promptNumber:n,usingCachedPrompt:s.userPrompt.substring(0,80)}),s}let i=this.dbManager.getSessionById(e);_.debug("SESSION","Fetched session from database",{sessionDbId:e,content_session_id:i.content_session_id,memory_session_id:i.memory_session_id});let a=r||i.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:i.user_prompt.substring(0,80)});let o=Date.now();s={sessionDbId:e,contentSessionId:i.content_session_id,memorySessionId:i.memory_session_id||null,project:i.project,userPrompt:a,pendingMessages:[],abortController:new AbortController,generatorPromise:null,lastPromptNumber:n||this.dbManager.getSessionStore().getPromptNumberFromUserPrompts(i.content_session_id),startTime:o,lastActivityTime:o,cumulativeInputTokens:0,cumulativeOutputTokens:0,earliestPendingTimestamp:null,conversationHistory:[],currentProvider:null,consecutiveRestarts:0},_.debug("SESSION","Creating new session object",{sessionDbId:e,contentSessionId:i.content_session_id,memorySessionId:i.memory_session_id||"(none - fresh session)",lastPromptNumber:n||this.dbManager.getSessionStore().getPromptNumberFromUserPrompts(i.content_session_id)}),this.sessions.set(e,s);let c=new FD.EventEmitter;return this.sessionQueues.set(e,c),_.info("SESSION","Session initialized",{sessionId:e,project:s.project,contentSessionId:s.contentSessionId,queueDepth:0,hasGenerator:!1}),s}getSession(e){return this.sessions.get(e)}queueObservation(e,r){let n=this.sessions.get(e);n||(n=this.initializeSession(e)),n.lastActivityTime=Date.now();let s={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 a=this.getPendingStore().enqueue(e,n.contentSessionId,s),o=this.getPendingStore().getPendingCount(e),c=_.formatTool(r.tool_name,r.tool_input);_.info("QUEUE",`ENQUEUED | sessionDbId=${e} | messageId=${a} | type=observation | tool=${c} | depth=${o}`,{sessionId:e})}catch(a){throw _.error("SESSION","Failed to persist observation to DB",{sessionId:e,tool:r.tool_name},a),a}this.sessionQueues.get(e)?.emit("message")}queueSummarize(e,r){let n=this.sessions.get(e);n||(n=this.initializeSession(e)),n.lastActivityTime=Date.now();let s={type:"summarize",last_assistant_message:r};try{let a=this.getPendingStore().enqueue(e,n.contentSessionId,s),o=this.getPendingStore().getPendingCount(e);_.info("QUEUE",`ENQUEUED | sessionDbId=${e} | messageId=${a} | type=summarize | depth=${o}`,{sessionId:e})}catch(a){throw _.error("SESSION","Failed to persist summarize to DB",{sessionId:e},a),a}this.sessionQueues.get(e)?.emit("message")}async deleteSession(e){let r=this.sessions.get(e);if(!r)return;let n=Date.now()-r.startTime;r.abortController.abort(),r.generatorPromise&&await r.generatorPromise.catch(s=>{_.debug("SYSTEM","Generator already failed, cleaning up",{sessionId:r.sessionDbId})});try{let s=this.getPendingStore().deleteAllForSession(e);s>0&&_.info("SESSION","Cleaned up pending messages on session delete",{sessionId:e,deletedMessages:s})}catch(s){_.error("SESSION","Failed to clean up pending messages",{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()}async shutdownAll(){let e=Array.from(this.sessions.keys());await Promise.all(e.map(r=>this.deleteSession(r)))}hasPendingMessages(){return this.getPendingStore().hasAnyPendingWork()}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.getPendingStore().hasAnyPendingWork()}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 s=new eu(this.getPendingStore(),n);for await(let i of s.createIterator({sessionDbId:e,signal:r.abortController.signal,onIdleTimeout:()=>{_.info("SESSION","Idle timeout reached, aborting session",{sessionId:e}),r.abortController.abort()}}))r.earliestPendingTimestamp===null?r.earliestPendingTimestamp=i._originalTimestamp:r.earliestPendingTimestamp=Math.min(r.earliestPendingTimestamp,i._originalTimestamp),yield i}async*getMessageBatchIterator(e,r){let n=this.sessions.get(e);n||(n=this.initializeSession(e));let s=this.sessionQueues.get(e);if(!s)throw new Error(`No emitter for session ${e}`);let i=new eu(this.getPendingStore(),s);for await(let a of i.createBatchIterator({sessionDbId:e,signal:n.abortController.signal,maxBatchSize:r,onIdleTimeout:()=>{_.info("SESSION","Idle timeout reached, aborting session",{sessionId:e}),n.abortController.abort()}})){for(let o of a)n.earliestPendingTimestamp===null?n.earliestPendingTimestamp=o._originalTimestamp:n.earliestPendingTimestamp=Math.min(n.earliestPendingTimestamp,o._originalTimestamp);yield a}}getPendingMessageStore(){return this.getPendingStore()}async cleanupStaleSessions(e=1800*1e3,r=!1){let n=Date.now(),s=n-e,i=0,a=[];for(let[o,c]of this.sessions)if(c.lastActivityTime0&&_.info("SESSION",`Cleaned up ${i} stale sessions`),i}getSessionStats(){let e=Date.now(),r=null,n=0;for(let s of this.sessions.values()){let i=e-s.startTime;(r===null||i>r)&&(r=i),s.generatorPromise&&n++}return{activeSessions:this.sessions.size,totalQueueDepth:this.getTotalQueueDepth(),oldestSessionAge:r,sessionsWithGenerators:n}}};se();var Dm=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)} + `).get(this.project);_.info("CHROMA_SYNC","Backfilling user prompts",{project:this.project,missing:v.length,existing:e.prompts.size,total:g.count});let h=[];for(let y of v)h.push(this.formatUserPromptDoc(y));for(let y=0;y{let r=await this.getEmbeddingCount();_.info("CHROMA_SYNC","Starting vacuum \u2014 deleting collection",{collection:this.collectionName,project:this.project,existingDocuments:r}),await e.callTool({name:"chroma_delete_collection",arguments:{collection_name:this.collectionName}}),_.info("CHROMA_SYNC","Collection deleted, recreating",{collection:this.collectionName}),await e.callTool({name:"chroma_create_collection",arguments:{collection_name:this.collectionName,embedding_function_name:"default"}}),_.info("CHROMA_SYNC","Collection recreated, starting backfill",{collection:this.collectionName});try{await this.ensureBackfilled();let n=await this.getEmbeddingCount();return _.info("CHROMA_SYNC","Vacuum complete",{collection:this.collectionName,project:this.project,deletedDocuments:r,reindexedDocuments:n}),{deletedDocuments:r,reindexedDocuments:n}}catch(n){let s=n instanceof Error?n.message:String(n);return _.error("CHROMA_SYNC","Vacuum incomplete \u2014 backfill failed",{collection:this.collectionName,project:this.project},n),{deletedDocuments:r,reindexedDocuments:0,error:`Vacuum incomplete \u2014 run again to complete backfill: ${s}`}}})}async getEmbeddingCount(){try{let n=(await(await this.getClient()).callTool({name:"chroma_get_collection_info",arguments:{collection_name:this.collectionName}})).content[0]?.text;if(!n)return 0;let s=JSON.parse(n);return s.count??s.num_documents??0}catch{return 0}}async close(){await this.connectionManager.close(),_.info("CHROMA_SYNC","Chroma client and subprocess closed",{project:this.project})}async query(e,r,n){return this.queryChroma(e,r,n)}async isHealthy(){return this.connectionManager.isHealthy()}};re();var io=class{project;loggedOnce=!1;constructor(e){this.project=e}logDisabled(){this.loggedOnce||(_.info("VECTOR_SYNC","Vector database disabled - using SQLite-only mode",{project:this.project}),this.loggedOnce=!0)}async syncObservation(){this.logDisabled()}async syncSummary(){this.logDisabled()}async syncUserPrompt(){this.logDisabled()}async ensureBackfilled(){this.logDisabled()}async query(){return this.logDisabled(),{ids:[],distances:[],metadatas:[]}}async deleteDocuments(e,r){return 0}async getEmbeddingCount(){return 0}async vacuum(){return this.logDisabled(),{deletedDocuments:0,reindexedDocuments:0}}async close(){}async isHealthy(){return!0}};Br();yr();re();function WD(t){let e=Me.loadFromFile(ar),r=process.platform==="win32";if(!e.CLAUDE_PILOT_CHROMA_ENABLED)return _.info("VECTOR_SYNC","Vector database disabled by setting",{project:t}),new io(t);let s=e.CLAUDE_PILOT_VECTOR_DB||"chroma";return s==="none"||s==="disabled"?(_.info("VECTOR_SYNC","Vector database disabled via CLAUDE_PILOT_VECTOR_DB setting",{project:t,backend:s}),new io(t)):r&&s==="chroma"?(_.warn("VECTOR_SYNC","Chroma disabled on Windows to prevent console popups. Disable vector DB in settings.",{project:t}),new io(t)):(_.info("VECTOR_SYNC","Creating vector sync",{project:t,backend:s}),new jm(t))}re();var Dm=class{sessionStore=null;sessionSearch=null;vectorSync=null;async initialize(){this.sessionStore=new Ws,this.sessionSearch=new Im,this.vectorSync=WD("pilot-memory"),_.info("DB","Database initialized")}async close(){this.vectorSync&&(await this.vectorSync.close(),this.vectorSync=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}getVectorSync(){if(!this.vectorSync)throw new Error("VectorSync not initialized");return this.vectorSync}getVectorSyncOrNull(){return this.vectorSync}getChromaSync(){return this.getVectorSync()}getSessionById(e){let r=this.getSessionStore().getSessionById(e);if(!r)throw new Error(`Session ${e} not found`);return r}};var VD=require("events");re();Zs();re();var ZD=180*1e3,Ste=10,ru=class{constructor(e,r){this.store=e;this.events=r}async*createIterator(e){let{sessionDbId:r,signal:n,onIdleTimeout:s,idleTimeoutMs:i=ZD}=e,a=Date.now();for(;!n.aborted;)try{let o=this.store.claimAndDelete(r);if(o)a=Date.now(),yield this.toPendingMessageWithId(o);else if(!await this.waitForMessage(n,i)&&!n.aborted){let l=Date.now()-a;if(l>=i){_.info("SESSION","Iterator exiting due to idle timeout",{sessionDbId:r,idleMs:l,thresholdMs:i}),s?.();return}a=Date.now()}}catch(o){if(n.aborted)return;_.error("SESSION","Error in queue processor loop",{sessionDbId:r},o),await new Promise(c=>setTimeout(c,1e3))}}async*createBatchIterator(e){let{sessionDbId:r,signal:n,onIdleTimeout:s,idleTimeoutMs:i=ZD,maxBatchSize:a=Ste}=e,o=Date.now();for(;!n.aborted;)try{let c=this.store.claimAndDeleteBatch(r,a);if(c.length>0)o=Date.now(),yield c.map(l=>this.toPendingMessageWithId(l));else if(!await this.waitForMessage(n,i)&&!n.aborted){let u=Date.now()-o;if(u>=i){_.info("SESSION","Batch iterator exiting due to idle timeout",{sessionDbId:r,idleMs:u,thresholdMs:i}),s?.();return}o=Date.now()}}catch(c){if(n.aborted)return;_.error("SESSION","Error in batch queue processor loop",{sessionDbId:r},c),await new Promise(l=>setTimeout(l,1e3))}}toPendingMessageWithId(e){return{...this.store.toPendingMessage(e),_persistentId:e.id,_originalTimestamp:e.created_at_epoch}}waitForMessage(e,r){return new Promise(n=>{let s=()=>{c(),n(!0)},i=()=>{c(),n(!1)},a,o=()=>{c(),n(!1)},c=()=>{this.events.off("message",s),e.removeEventListener("abort",i),a!==void 0&&clearTimeout(a)};this.events.once("message",s),e.addEventListener("abort",i,{once:!0}),r!==void 0&&(a=setTimeout(o,r))})}};var Mm=class{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 tu(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 s=this.sessions.get(e);if(s){_.debug("SESSION","Returning cached session",{sessionDbId:e,contentSessionId:s.contentSessionId,lastPromptNumber:s.lastPromptNumber});let l=this.dbManager.getSessionById(e);return l.project&&l.project!==s.project&&(_.debug("SESSION","Updating project from database",{sessionDbId:e,oldProject:s.project,newProject:l.project}),s.project=l.project),r?(_.debug("SESSION","Updating userPrompt for continuation",{sessionDbId:e,promptNumber:n,oldPrompt:s.userPrompt.substring(0,80),newPrompt:r.substring(0,80)}),s.userPrompt=r,s.lastPromptNumber=n||s.lastPromptNumber):_.debug("SESSION","No currentUserPrompt provided for existing session",{sessionDbId:e,promptNumber:n,usingCachedPrompt:s.userPrompt.substring(0,80)}),s}let i=this.dbManager.getSessionById(e);_.debug("SESSION","Fetched session from database",{sessionDbId:e,content_session_id:i.content_session_id,memory_session_id:i.memory_session_id});let a=r||i.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:i.user_prompt.substring(0,80)});let o=Date.now();s={sessionDbId:e,contentSessionId:i.content_session_id,memorySessionId:i.memory_session_id||null,project:i.project,userPrompt:a,pendingMessages:[],abortController:new AbortController,generatorPromise:null,lastPromptNumber:n||this.dbManager.getSessionStore().getPromptNumberFromUserPrompts(i.content_session_id),startTime:o,lastActivityTime:o,cumulativeInputTokens:0,cumulativeOutputTokens:0,earliestPendingTimestamp:null,conversationHistory:[],currentProvider:null,consecutiveRestarts:0},_.debug("SESSION","Creating new session object",{sessionDbId:e,contentSessionId:i.content_session_id,memorySessionId:i.memory_session_id||"(none - fresh session)",lastPromptNumber:n||this.dbManager.getSessionStore().getPromptNumberFromUserPrompts(i.content_session_id)}),this.sessions.set(e,s);let c=new VD.EventEmitter;return this.sessionQueues.set(e,c),_.info("SESSION","Session initialized",{sessionId:e,project:s.project,contentSessionId:s.contentSessionId,queueDepth:0,hasGenerator:!1}),s}getSession(e){return this.sessions.get(e)}queueObservation(e,r){let n=this.sessions.get(e);n||(n=this.initializeSession(e)),n.lastActivityTime=Date.now();let s={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 a=this.getPendingStore().enqueue(e,n.contentSessionId,s),o=this.getPendingStore().getPendingCount(e),c=_.formatTool(r.tool_name,r.tool_input);_.info("QUEUE",`ENQUEUED | sessionDbId=${e} | messageId=${a} | type=observation | tool=${c} | depth=${o}`,{sessionId:e})}catch(a){throw _.error("SESSION","Failed to persist observation to DB",{sessionId:e,tool:r.tool_name},a),a}this.sessionQueues.get(e)?.emit("message")}queueSummarize(e,r){let n=this.sessions.get(e);n||(n=this.initializeSession(e)),n.lastActivityTime=Date.now();let s={type:"summarize",last_assistant_message:r};try{let a=this.getPendingStore().enqueue(e,n.contentSessionId,s),o=this.getPendingStore().getPendingCount(e);_.info("QUEUE",`ENQUEUED | sessionDbId=${e} | messageId=${a} | type=summarize | depth=${o}`,{sessionId:e})}catch(a){throw _.error("SESSION","Failed to persist summarize to DB",{sessionId:e},a),a}this.sessionQueues.get(e)?.emit("message")}async deleteSession(e){let r=this.sessions.get(e);if(!r)return;let n=Date.now()-r.startTime;r.abortController.abort(),r.generatorPromise&&await r.generatorPromise.catch(s=>{_.debug("SYSTEM","Generator already failed, cleaning up",{sessionId:r.sessionDbId})});try{let s=this.getPendingStore().deleteAllForSession(e);s>0&&_.info("SESSION","Cleaned up pending messages on session delete",{sessionId:e,deletedMessages:s})}catch(s){_.error("SESSION","Failed to clean up pending messages",{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()}async shutdownAll(){let e=Array.from(this.sessions.keys());await Promise.all(e.map(r=>this.deleteSession(r)))}hasPendingMessages(){return this.getPendingStore().hasAnyPendingWork()}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.getPendingStore().hasAnyPendingWork()}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 s=new ru(this.getPendingStore(),n);for await(let i of s.createIterator({sessionDbId:e,signal:r.abortController.signal,onIdleTimeout:()=>{_.info("SESSION","Idle timeout reached, aborting session",{sessionId:e}),r.abortController.abort()}}))r.earliestPendingTimestamp===null?r.earliestPendingTimestamp=i._originalTimestamp:r.earliestPendingTimestamp=Math.min(r.earliestPendingTimestamp,i._originalTimestamp),yield i}async*getMessageBatchIterator(e,r){let n=this.sessions.get(e);n||(n=this.initializeSession(e));let s=this.sessionQueues.get(e);if(!s)throw new Error(`No emitter for session ${e}`);let i=new ru(this.getPendingStore(),s);for await(let a of i.createBatchIterator({sessionDbId:e,signal:n.abortController.signal,maxBatchSize:r,onIdleTimeout:()=>{_.info("SESSION","Idle timeout reached, aborting session",{sessionId:e}),n.abortController.abort()}})){for(let o of a)n.earliestPendingTimestamp===null?n.earliestPendingTimestamp=o._originalTimestamp:n.earliestPendingTimestamp=Math.min(n.earliestPendingTimestamp,o._originalTimestamp);yield a}}getPendingMessageStore(){return this.getPendingStore()}async cleanupStaleSessions(e=1800*1e3,r=!1){let n=Date.now(),s=n-e,i=0,a=[];for(let[o,c]of this.sessions)if(c.lastActivityTime0&&_.info("SESSION",`Cleaned up ${i} stale sessions`),i}getSessionStats(){let e=Date.now(),r=null,n=0;for(let s of this.sessions.values()){let i=e-s.startTime;(r===null||i>r)&&(r=i),s.generatorPromise&&n++}return{activeSessions:this.sessions.size,totalQueueDepth:this.getTotalQueueDepth(),oldestSessionAge:r,sessionsWithGenerators:n}}};re();var zm=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 s of this.sseClients)s.write(n)}getClientCount(){return this.sseClients.size}sendToClient(e,r){let n=`data: ${JSON.stringify(r)} -`;e.write(n)}};var M2=require("child_process"),z2=require("os"),L2=pe(require("path"),1);se();se();function UD(t,e,r,n){return`${n.prompts.system_identity} +`;e.write(n)}};var H2=require("child_process"),B2=require("os"),W2=ie(require("path"),1);re();re();function GD(t,e,r,n){return`${n.prompts.system_identity} ${r} @@ -1142,7 +1142,7 @@ ${n.prompts.format_examples} ${n.prompts.footer} -${n.prompts.header_memory_start}`}function x_(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 E_(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}`:""} @@ -1150,7 +1150,7 @@ ${n.prompts.header_memory_start}`}function x_(t){let e,r;try{e=typeof t.tool_inp ${JSON.stringify(r,null,2)} -IMPORTANT: Generate EXACTLY ONE block for this tool call. Do not repeat or duplicate observations from earlier in the conversation.`}function HD(t){if(t.length===0)throw new Error("buildBatchObservationPrompt requires at least one observation");if(t.length===1)return x_(t[0]);let e=t.map((r,n)=>{let s,i;try{s=typeof r.tool_input=="string"?JSON.parse(r.tool_input):r.tool_input}catch{s=r.tool_input}try{i=typeof r.tool_output=="string"?JSON.parse(r.tool_output):r.tool_output}catch{i=r.tool_output}return` +IMPORTANT: Generate EXACTLY ONE block for this tool call. Do not repeat or duplicate observations from earlier in the conversation.`}function YD(t){if(t.length===0)throw new Error("buildBatchObservationPrompt requires at least one observation");if(t.length===1)return E_(t[0]);let e=t.map((r,n)=>{let s,i;try{s=typeof r.tool_input=="string"?JSON.parse(r.tool_input):r.tool_input}catch{s=r.tool_input}try{i=typeof r.tool_output=="string"?JSON.parse(r.tool_output):r.tool_output}catch{i=r.tool_output}return` ${r.tool_name} ${new Date(r.created_at_epoch).toISOString()}${r.cwd?` ${r.cwd}`:""} @@ -1168,7 +1168,7 @@ IMPORTANT: Generate EXACTLY ${t.length} blocks - one for each tool - Output observations in the same order as the tool_events (index 1, 2, 3, ...) - Each observation should be complete and self-contained - Do not combine or merge observations -- Do not skip any tool_event`}function BD(t,e){let r=t.last_assistant_message||"";return`${e.prompts.header_summary_checkpoint} +- Do not skip any tool_event`}function KD(t,e){let r=t.last_assistant_message||"";return`${e.prompts.header_summary_checkpoint} ${e.prompts.summary_instruction} ${e.prompts.summary_context_label} @@ -1184,7 +1184,7 @@ ${e.prompts.summary_format_instruction} ${e.prompts.xml_summary_notes_placeholder} -${e.prompts.summary_footer}`}function __(t,e,r,n){return`${n.prompts.continuation_greeting} +${e.prompts.summary_footer}`}function k_(t,e,r,n){return`${n.prompts.continuation_greeting} ${t} @@ -1243,7 +1243,7 @@ ${n.prompts.format_examples} ${n.prompts.footer} -${n.prompts.header_memory_continued}`}Br();yr();sn();se();se();sn();function VD(t,e){let r=[],n=/([\s\S]*?)<\/observation>/g,s;for(;(s=n.exec(t))!==null;){let o=s[1],c=Kn(o,"type"),l=Kn(o,"title"),u=Kn(o,"subtitle"),p=Kn(o,"narrative"),d=Mm(o,"facts","fact"),m=Mm(o,"concepts","concept"),f=Mm(o,"files_read","file"),v=Mm(o,"files_modified","file"),h=Ue.getInstance().getActiveMode().observation_types.map(w=>w.id),y=h[0],b=y;c?h.includes(c.trim())?b=c.trim():_.error("PARSER",`Invalid observation type: ${c}, using "${y}"`,{correlationId:e}):_.error("PARSER",`Observation missing type field, using "${y}"`,{correlationId:e});let x=m.filter(w=>w!==b);x.length!==m.length&&_.debug("PARSER","Cleaned observation type from concepts",{correlationId:e,type:b,removed:m.filter(w=>w===b)}),r.push({type:b,title:l,subtitle:u,facts:d,narrative:p,concepts:x,files_read:f,files_modified:v})}let i=new Set,a=r.filter(o=>{let c=`${o.type}|${o.title||""}`;return i.has(c)?!1:(i.add(c),!0)});return a.length/.exec(t);if(n)return _.info("PARSER","Summary skipped",{sessionId:e,reason:n[1]}),null;let i=/([\s\S]*?)<\/summary>/.exec(t);if(!i)return null;let a=i[1],o=Kn(a,"request"),c=Kn(a,"investigated"),l=Kn(a,"learned"),u=Kn(a,"completed"),p=Kn(a,"next_steps"),d=Kn(a,"notes");return{request:o,investigated:c,learned:l,completed:u,next_steps:p,notes:d}}function Kn(t,e){let n=new RegExp(`<${e}>([^<]*)`).exec(t);if(!n)return null;let s=n[1].trim();return s===""?null:s}function Mm(t,e,r){let n=[],i=new RegExp(`<${e}>(.*?)`,"s").exec(t);if(!i)return n;let a=i[1],o=new RegExp(`<${r}>([^<]+)`,"g"),c;for(;(c=o.exec(a))!==null;)n.push(c[1].trim());return n}var on=require("fs"),xr=pe(require("path"),1),KD=pe(require("os"),1);se();ao();Br();_n();var vte=xr.default.join(KD.default.homedir(),".pilot/memory","settings.json"),yte=[".git","node_modules","__pycache__",".pycache","venv",".venv",".env","vendor","dist","build",".next",".nuxt",".output",".cache",".turbo","coverage",".nyc_output",".pytest_cache",".mypy_cache",".tox","eggs","*.egg-info",".eggs","target","out",".gradle",".maven"];function bte(t){for(let e of yte)if(e.includes("*")){if(new RegExp("^"+e.replace(/\*/g,".*")+"$").test(t))return!0}else if(t===e)return!0;return!1}function JD(t){let r=t.replace(/\\/g,"/").split("/");for(let n of r)if(bte(n))return!0;return!1}function xte(t,e){if(!t||!t.trim()||t.startsWith("~")||t.startsWith("http://")||t.startsWith("https://")||t.includes(" ")||t.includes("#")||JD(t))return!1;if(e){let r=xr.default.isAbsolute(t)?t:xr.default.resolve(e,t),n=xr.default.resolve(e);if(!r.startsWith(n+xr.default.sep)&&r!==n)return!1}return!0}function _te(t,e){let r="",n="";if(!t)return`${r} +${n.prompts.header_memory_continued}`}Br();yr();sn();re();re();sn();function XD(t,e){let r=[],n=/([\s\S]*?)<\/observation>/g,s;for(;(s=n.exec(t))!==null;){let o=s[1],c=Kn(o,"type"),l=Kn(o,"title"),u=Kn(o,"subtitle"),p=Kn(o,"narrative"),d=Lm(o,"facts","fact"),m=Lm(o,"concepts","concept"),f=Lm(o,"files_read","file"),v=Lm(o,"files_modified","file"),h=Ue.getInstance().getActiveMode().observation_types.map(w=>w.id),y=h[0],b=y;c?h.includes(c.trim())?b=c.trim():_.error("PARSER",`Invalid observation type: ${c}, using "${y}"`,{correlationId:e}):_.error("PARSER",`Observation missing type field, using "${y}"`,{correlationId:e});let x=m.filter(w=>w!==b);x.length!==m.length&&_.debug("PARSER","Cleaned observation type from concepts",{correlationId:e,type:b,removed:m.filter(w=>w===b)}),r.push({type:b,title:l,subtitle:u,facts:d,narrative:p,concepts:x,files_read:f,files_modified:v})}let i=new Set,a=r.filter(o=>{let c=`${o.type}|${o.title||""}`;return i.has(c)?!1:(i.add(c),!0)});return a.length/.exec(t);if(n)return _.info("PARSER","Summary skipped",{sessionId:e,reason:n[1]}),null;let i=/([\s\S]*?)<\/summary>/.exec(t);if(!i)return null;let a=i[1],o=Kn(a,"request"),c=Kn(a,"investigated"),l=Kn(a,"learned"),u=Kn(a,"completed"),p=Kn(a,"next_steps"),d=Kn(a,"notes");return{request:o,investigated:c,learned:l,completed:u,next_steps:p,notes:d}}function Kn(t,e){let n=new RegExp(`<${e}>([^<]*)`).exec(t);if(!n)return null;let s=n[1].trim();return s===""?null:s}function Lm(t,e,r){let n=[],i=new RegExp(`<${e}>(.*?)`,"s").exec(t);if(!i)return n;let a=i[1],o=new RegExp(`<${r}>([^<]+)`,"g"),c;for(;(c=o.exec(a))!==null;)n.push(c[1].trim());return n}var on=require("fs"),xr=ie(require("path"),1),rM=ie(require("os"),1);re();oo();Br();_n();var Ete=xr.default.join(rM.default.homedir(),".pilot/memory","settings.json"),kte=[".git","node_modules","__pycache__",".pycache","venv",".venv",".env","vendor","dist","build",".next",".nuxt",".output",".cache",".turbo","coverage",".nyc_output",".pytest_cache",".mypy_cache",".tox","eggs","*.egg-info",".eggs","target","out",".gradle",".maven"];function Tte(t){for(let e of kte)if(e.includes("*")){if(new RegExp("^"+e.replace(/\*/g,".*")+"$").test(t))return!0}else if(t===e)return!0;return!1}function nM(t){let r=t.replace(/\\/g,"/").split("/");for(let n of r)if(Tte(n))return!0;return!1}function Rte(t,e){if(!t||!t.trim()||t.startsWith("~")||t.startsWith("http://")||t.startsWith("https://")||t.includes(" ")||t.includes("#")||nM(t))return!1;if(e){let r=xr.default.isAbsolute(t)?t:xr.default.resolve(e,t),n=xr.default.resolve(e);if(!r.startsWith(n+xr.default.sep)&&r!==n)return!1}return!0}function $te(t,e){let r="",n="";if(!t)return`${r} ${e} ${n}`;let s=t.indexOf(r),i=t.indexOf(n);return s!==-1&&i!==-1?t.substring(0,s)+`${r} ${e} @@ -1251,28 +1251,28 @@ ${n}`+t.substring(i+n.length):t+` ${r} ${e} -${n}`}function wte(t,e){if(!(0,on.existsSync)(t)){_.debug("FOLDER_INDEX","Skipping non-existent folder",{folderPath:t});return}let r=xr.default.join(t,"CLAUDE.md"),n=`${r}.tmp`,s="";if((0,on.existsSync)(r)&&(s=(0,on.readFileSync)(r,"utf-8")),!s&&e.includes("*No recent activity*")){_.debug("FOLDER_INDEX","Skipping empty activity file creation",{folderPath:t});return}let i=_te(s,e);(0,on.writeFileSync)(n,i),(0,on.renameSync)(n,r)}function Ste(t){let e=[];e.push("# Recent Activity"),e.push(""),e.push(""),e.push("");let r=t.split(` +${n}`}function Ote(t,e){if(!(0,on.existsSync)(t)){_.debug("FOLDER_INDEX","Skipping non-existent folder",{folderPath:t});return}let r=xr.default.join(t,"CLAUDE.md"),n=`${r}.tmp`,s="";if((0,on.existsSync)(r)&&(s=(0,on.readFileSync)(r,"utf-8")),!s&&e.includes("*No recent activity*")){_.debug("FOLDER_INDEX","Skipping empty activity file creation",{folderPath:t});return}let i=$te(s,e);(0,on.writeFileSync)(n,i),(0,on.renameSync)(n,r)}function Pte(t){let e=[];e.push("# Recent Activity"),e.push(""),e.push(""),e.push("");let r=t.split(` `),n=[],s="",i=null;for(let o of r){let c=o.match(/^###\s+(.+)$/);if(c){let u=c[1].trim(),p=new Date(u);isNaN(p.getTime())||(i=p);continue}let l=o.match(/^\|\s*(#[S]?\d+)\s*\|\s*([^|]+)\s*\|\s*([^|]+)\s*\|\s*([^|]+)\s*\|\s*([^|]+)\s*\|/);if(l){let[,u,p,d,m,f]=l,v;p.trim()==="\u2033"||p.trim()==='"'?v=s:(v=p.trim(),s=v);let g=i?new Date(i):new Date,h=v.match(/(\d+):(\d+)\s*(AM|PM)/i),y=g.getTime();if(h){let b=parseInt(h[1],10),x=parseInt(h[2],10),w=h[3].toUpperCase()==="PM";w&&b!==12&&(b+=12),!w&&b===12&&(b=0),g.setHours(b,x,0,0),y=g.getTime()}n.push({id:u.trim(),time:v,typeEmoji:d.trim(),title:m.trim(),tokens:f.trim(),epoch:y})}}if(n.length===0)return e.push("*No recent activity*"),e.join(` -`);let a=Di(n,o=>new Date(o.epoch).toISOString());for(let[o,c]of a){e.push(`### ${o}`),e.push(""),e.push("| ID | Time | T | Title | Read |"),e.push("|----|------|---|-------|------|");let l="";for(let u of c){let p=u.time===l?'"':u.time;l=u.time,e.push(`| ${u.id} | ${p} | ${u.typeEmoji} | ${u.title} | ${u.tokens} |`)}e.push("")}return e.join(` -`).trim()}var Ete=[".git","package.json","composer.json","Cargo.toml","go.mod","pyproject.toml","setup.py","Gemfile","pom.xml","build.gradle","CMakeLists.txt","Makefile.am","meson.build"];function kte(t){for(let r of Ete){let n=xr.default.join(t,r);if((0,on.existsSync)(n))return!0}let e=xr.default.join(t,"CLAUDE.md");if((0,on.existsSync)(e))try{if(!(0,on.readFileSync)(e,"utf-8").includes(""))return!0}catch{return!0}return!1}function Tte(t,e){if(JD(t))return!0;let r=xr.default.resolve(t);for(let n of e){let s=xr.default.resolve(n);if(r===s||r.startsWith(s+xr.default.sep))return!0}return!1}async function QD(t,e,r,n){let s=De.loadFromFile(vte);if(!s.CLAUDE_PILOT_FOLDER_CLAUDEMD_ENABLED){_.debug("FOLDER_INDEX","Folder CLAUDE.md generation disabled by setting");return}let i=parseInt(s.CLAUDE_PILOT_CONTEXT_OBSERVATIONS,10)||50,a=[];try{let c=JSON.parse(s.CLAUDE_PILOT_FOLDER_MD_EXCLUDE||"[]");Array.isArray(c)&&(a=c.filter(l=>typeof l=="string"))}catch{_.warn("FOLDER_INDEX","Failed to parse CLAUDE_PILOT_FOLDER_MD_EXCLUDE setting")}let o=new Set;for(let c of t){if(!c||c==="")continue;if(!xte(c,n)){_.debug("FOLDER_INDEX","Skipping invalid file path",{filePath:c,reason:"Failed path validation"});continue}let l=c;n&&!xr.default.isAbsolute(c)&&(l=xr.default.join(n,c));let u=xr.default.dirname(l);if(u&&u!=="."&&u!=="/"){if(u.includes("/.git")||u.includes("\\.git")){_.debug("FOLDER_INDEX","Skipping .git directory",{folderPath:u});continue}if(kte(u)){_.debug("FOLDER_INDEX","Skipping project root CLAUDE.md",{folderPath:u});continue}if(a.length>0&&Tte(u,a)){_.debug("FOLDER_INDEX","Skipping excluded folder",{folderPath:u});continue}o.add(u)}}if(o.size!==0){_.debug("FOLDER_INDEX","Updating CLAUDE.md files",{project:e,folderCount:o.size});for(let c of o)try{let l=xn(),u=await fetch(`http://${l}:${r}/api/search/by-file?filePath=${encodeURIComponent(c)}&limit=${i}&project=${encodeURIComponent(e)}&isFolder=true`);if(!u.ok){_.error("FOLDER_INDEX","Failed to fetch timeline",{folderPath:c,status:u.status});continue}let p=await u.json();if(!p.content?.[0]?.text){_.debug("FOLDER_INDEX","No content for folder",{folderPath:c});continue}let d=Ste(p.content[0].text);wte(c,d),_.debug("FOLDER_INDEX","Updated CLAUDE.md",{folderPath:c})}catch(l){let u=l;_.error("FOLDER_INDEX","Failed to update CLAUDE.md",{folderPath:c,errorMessage:u.message,errorStack:u.stack})}}}_n();Mi();var E_=require("child_process");function nM(t){try{let e=(0,E_.execSync)("git rev-parse --abbrev-ref HEAD",{cwd:t||process.cwd(),encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:5e3,windowsHide:!0}).trim();return e==="HEAD"?`detached@${(0,E_.execSync)("git rev-parse --short HEAD",{cwd:t||process.cwd(),encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:5e3,windowsHide:!0}).trim()}`:e||null}catch{return null}}function k_(t,e){t?.sseBroadcaster&&t.sseBroadcaster.broadcast({type:"new_observation",observation:e})}function T_(t,e){t?.sseBroadcaster&&t.sseBroadcaster.broadcast({type:"new_summary",summary:e})}function R_(t,e){t.earliestPendingTimestamp=null,e&&typeof e.broadcastProcessingStatus=="function"&&e.broadcastProcessingStatus()}async function $_(t,e,r,n,s,i,a,o,c){t&&e.conversationHistory.push({role:"assistant",content:t});let l=VD(t,e.contentSessionId),u=GD(t,e.sessionDbId),p=Ate(u),d=r.getSessionStore();if(!e.memorySessionId)throw new Error("Cannot store observations: memorySessionId not yet captured");let m=sM(l),f=rM(m,e.project,c);f!==e.project&&_.info("PROJECT",`Detected project from files: ${f} (session: ${e.project})`,{detectedProject:f,sessionProject:e.project,fileCount:m.length});let v=nM(c);_.info("DB",`STORING | sessionDbId=${e.sessionDbId} | memorySessionId=${e.memorySessionId} | project=${f} | obsCount=${l.length} | hasSummary=${!!p}`,{sessionId:e.sessionDbId,memorySessionId:e.memorySessionId,project:f,gitBranch:v});let g=d.storeObservations(e.memorySessionId,f,l,p,e.lastPromptNumber,i,a??void 0);_.info("DB",`STORED | sessionDbId=${e.sessionDbId} | memorySessionId=${e.memorySessionId} | obsCount=${g.observationIds.length} | obsIds=[${g.observationIds.join(",")}] | summaryId=${g.summaryId||"none"}`,{sessionId:e.sessionDbId,memorySessionId:e.memorySessionId}),await Nte(l,g,e,f,r,s,i,o,c),await jte(u,p,g,e,f,r,s,i,o),R_(e,s)}function Ate(t){return t?{request:t.request||"",investigated:t.investigated||"",learned:t.learned||"",completed:t.completed||"",next_steps:t.next_steps||"",notes:t.notes}:null}function sM(t){let e=[];for(let r of t)e.push(...r.files_read||[]),e.push(...r.files_modified||[]);return e}async function Nte(t,e,r,n,s,i,a,o,c){for(let u=0;u{let f=Date.now()-m;_.debug("VECTOR","Observation synced",{obsId:p,duration:`${f}ms`,type:d.type,title:d.title||"(untitled)"})}).catch(f=>{_.error("VECTOR",`${o} vector sync failed, continuing without vector search`,{obsId:p,type:d.type,title:d.title||"(untitled)"},f)}),k_(i,{id:p,memory_session_id:r.memorySessionId,session_id:r.contentSessionId,type:d.type,title:d.title,subtitle:d.subtitle,text:null,narrative:d.narrative||null,facts:JSON.stringify(d.facts||[]),concepts:JSON.stringify(d.concepts||[]),files_read:JSON.stringify(d.files_read||[]),files_modified:JSON.stringify(d.files_modified||[]),project:n,prompt_number:r.lastPromptNumber,created_at_epoch:e.createdAtEpoch})}let l=sM(t);l.length>0&&QD(l,n,Cr(),c).catch(u=>{_.warn("FOLDER_INDEX","CLAUDE.md update failed (non-critical)",{project:n},u)})}async function jte(t,e,r,n,s,i,a,o,c){if(!e||!r.summaryId)return;let l=Date.now();i.getVectorSync().syncSummary(r.summaryId,n.contentSessionId,s,e,n.lastPromptNumber,r.createdAtEpoch,o).then(()=>{let u=Date.now()-l;_.debug("VECTOR","Summary synced",{summaryId:r.summaryId,duration:`${u}ms`,request:e.request||"(no request)"})}).catch(u=>{_.error("VECTOR",`${c} vector sync failed, continuing without vector search`,{summaryId:r.summaryId,request:e.request||"(no request)"},u)}),T_(a,{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:s,prompt_number:n.lastPromptNumber,created_at_epoch:r.createdAtEpoch})}var Um=require("fs");se();yr();var iM=u_;function Mte(){try{if(!(0,Um.existsSync)(iM))return _.debug("SUBSCRIPTION","No credentials file found, assuming no subscription"),!1;let t=(0,Um.readFileSync)(iM,"utf-8"),e=JSON.parse(t),r=e.planType||e.tier||e.subscription?.type||e.subscription?.tier||"",s=["pro","max","team","enterprise"].some(i=>r.toLowerCase().includes(i));return s&&_.debug("SUBSCRIPTION","Paid subscription detected",{tier:r}),s}catch(t){return _.debug("SUBSCRIPTION","Could not read credentials",{},t),!1}}function aM(){if(!Mte())return null;let t=process.env.ANTHROPIC_API_KEY;return t?(_.info("SUBSCRIPTION","Claude subscription detected - routing through CLI billing"),delete process.env.ANTHROPIC_API_KEY,()=>{process.env.ANTHROPIC_API_KEY=t}):null}var ZM=require("events"),GM=require("child_process"),YM=require("readline"),ve=pe(require("fs"),1),Xn=require("fs/promises"),ez=require("path"),tz=require("os"),qi=require("path"),nz=require("process"),N_=require("fs"),sz=require("crypto"),mz=require("crypto"),Oo=require("fs"),j_=require("path"),fz=require("crypto"),L_=require("path"),hz=require("url"),spe={},zte=Object.create,{getPrototypeOf:Lte,defineProperty:A_,getOwnPropertyNames:qte}=Object,Fte=Object.prototype.hasOwnProperty,MM=(t,e,r)=>{r=t!=null?zte(Lte(t)):{};let n=e||!t||!t.__esModule?A_(r,"default",{value:t,enumerable:!0}):r;for(let s of qte(t))Fte.call(n,s)||A_(n,s,{get:()=>t[s],enumerable:!0});return n},X=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),zM=(t,e)=>{for(var r in e)A_(t,r,{get:e[r],enumerable:!0,configurable:!0,set:n=>e[r]=()=>n})};var Gm=X(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 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,x)=>`${b}${x}`,"")}get names(){var y;return(y=this._names)!==null&&y!==void 0?y:this._names=this._items.reduce((b,x)=>(x instanceof r&&(b[x.str]=(b[x.str]||0)+1),b),{})}}t._Code=n,t.nil=new n("");function s(h,...y){let b=[h[0]],x=0;for(;x{Object.defineProperty(t,"__esModule",{value:!0}),t.ValueScope=t.ValueScopeName=t.Scope=t.varKinds=t.UsedValueState=void 0;var e=Gm();class r extends Error{constructor(l){super(`CodeGen: "code" for ${l} not defined`),this.value=l.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 s{constructor({prefixes:l,parent:u}={}){this._names={},this._prefixes=l,this._parent=u}toName(l){return l instanceof e.Name?l:this.name(l)}name(l){return new e.Name(this._newName(l))}_newName(l){let u=this._names[l]||this._nameGroup(l);return`${l}${u.index++}`}_nameGroup(l){var u,p;if(!((p=(u=this._parent)===null||u===void 0?void 0:u._prefixes)===null||p===void 0)&&p.has(l)||this._prefixes&&!this._prefixes.has(l))throw Error(`CodeGen: prefix "${l}" is not allowed in this scope`);return this._names[l]={prefix:l,index:0}}}t.Scope=s;class i extends e.Name{constructor(l,u){super(u),this.prefix=l}setValue(l,{property:u,itemIndex:p}){this.value=l,this.scopePath=e._`.${new e.Name(u)}[${p}]`}}t.ValueScopeName=i;var a=e._`\n`;class o extends s{constructor(l){super(l),this._values={},this._scope=l.scope,this.opts={...l,_n:l.lines?a:e.nil}}get(){return this._scope}name(l){return new i(l,this._newName(l))}value(l,u){var p;if(u.ref===void 0)throw Error("CodeGen: ref must be passed in value");let d=this.toName(l),{prefix:m}=d,f=(p=u.key)!==null&&p!==void 0?p:u.ref,v=this._values[m];if(v){let y=v.get(f);if(y)return y}else v=this._values[m]=new Map;v.set(f,d);let g=this._scope[m]||(this._scope[m]=[]),h=g.length;return g[h]=u.ref,d.setValue(u,{property:m,itemIndex:h}),d}getValue(l,u){let p=this._values[l];if(p)return p.get(u)}scopeRefs(l,u=this._values){return this._reduceValues(u,p=>{if(p.scopePath===void 0)throw Error(`CodeGen: name "${p}" has no value`);return e._`${l}${p.scopePath}`})}scopeCode(l=this._values,u,p){return this._reduceValues(l,d=>{if(d.value===void 0)throw Error(`CodeGen: name "${d}" has no value`);return d.value.code},u,p)}_reduceValues(l,u,p={},d){let m=e.nil;for(let f in l){let v=l[f];if(!v)continue;let g=p[f]=p[f]||new Map;v.forEach(h=>{if(g.has(h))return;g.set(h,n.Started);let y=u(h);if(y){let b=this.opts.es5?t.varKinds.var:t.varKinds.const;m=e._`${m}${b} ${h} = ${y};${this.opts._n}`}else if(y=d?.(h))m=e._`${m}${y}${this.opts._n}`;else throw new r(h);g.set(h,n.Completed)})}return m}}t.ValueScope=o}),Te=X(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=Gm(),r=oM(),n=Gm();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 s=oM();Object.defineProperty(t,"Scope",{enumerable:!0,get:function(){return s.Scope}}),Object.defineProperty(t,"ValueScope",{enumerable:!0,get:function(){return s.ValueScope}}),Object.defineProperty(t,"ValueScopeName",{enumerable:!0,get:function(){return s.ValueScopeName}}),Object.defineProperty(t,"varKinds",{enumerable:!0,get:function(){return s.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 i{optimizeNodes(){return this}optimizeNames(T,O){return this}}class a extends i{constructor(T,O,F){super(),this.varKind=T,this.name=O,this.rhs=F}render({es5:T,_n:O}){let F=T?r.varKinds.var:this.varKind,ne=this.rhs===void 0?"":` = ${this.rhs}`;return`${F} ${this.name}${ne};`+O}optimizeNames(T,O){if(T[this.name.str])return this.rhs&&(this.rhs=Z(this.rhs,T,O)),this}get names(){return this.rhs instanceof e._CodeOrName?this.rhs.names:{}}}class o extends i{constructor(T,O,F){super(),this.lhs=T,this.rhs=O,this.sideEffects=F}render({_n:T}){return`${this.lhs} = ${this.rhs};`+T}optimizeNames(T,O){if(!(this.lhs instanceof e.Name&&!T[this.lhs.str]&&!this.sideEffects))return this.rhs=Z(this.rhs,T,O),this}get names(){let T=this.lhs instanceof e.Name?{}:{...this.lhs.names};return H(T,this.rhs)}}class c extends o{constructor(T,O,F,ne){super(T,F,ne),this.op=O}render({_n:T}){return`${this.lhs} ${this.op}= ${this.rhs};`+T}}class l extends i{constructor(T){super(),this.label=T,this.names={}}render({_n:T}){return`${this.label}:`+T}}class u extends i{constructor(T){super(),this.label=T,this.names={}}render({_n:T}){return`break${this.label?` ${this.label}`:""};`+T}}class p extends i{constructor(T){super(),this.error=T}render({_n:T}){return`throw ${this.error};`+T}get names(){return this.error.names}}class d extends i{constructor(T){super(),this.code=T}render({_n:T}){return`${this.code};`+T}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(T,O){return this.code=Z(this.code,T,O),this}get names(){return this.code instanceof e._CodeOrName?this.code.names:{}}}class m extends i{constructor(T=[]){super(),this.nodes=T}render(T){return this.nodes.reduce((O,F)=>O+F.render(T),"")}optimizeNodes(){let{nodes:T}=this,O=T.length;for(;O--;){let F=T[O].optimizeNodes();Array.isArray(F)?T.splice(O,1,...F):F?T[O]=F:T.splice(O,1)}return T.length>0?this:void 0}optimizeNames(T,O){let{nodes:F}=this,ne=F.length;for(;ne--;){let oe=F[ne];oe.optimizeNames(T,O)||(W(T,oe.names),F.splice(ne,1))}return F.length>0?this:void 0}get names(){return this.nodes.reduce((T,O)=>q(T,O.names),{})}}class f extends m{render(T){return"{"+T._n+super.render(T)+"}"+T._n}}class v extends m{}class g extends f{}g.kind="else";class h extends f{constructor(T,O){super(O),this.condition=T}render(T){let O=`if(${this.condition})`+super.render(T);return this.else&&(O+="else "+this.else.render(T)),O}optimizeNodes(){super.optimizeNodes();let T=this.condition;if(T===!0)return this.nodes;let O=this.else;if(O){let F=O.optimizeNodes();O=this.else=Array.isArray(F)?new g(F):F}if(O)return T===!1?O instanceof h?O:O.nodes:this.nodes.length?this:new h(we(T),O instanceof h?[O]:O.nodes);if(!(T===!1||!this.nodes.length))return this}optimizeNames(T,O){var F;if(this.else=(F=this.else)===null||F===void 0?void 0:F.optimizeNames(T,O),!!(super.optimizeNames(T,O)||this.else))return this.condition=Z(this.condition,T,O),this}get names(){let T=super.names;return H(T,this.condition),this.else&&q(T,this.else.names),T}}h.kind="if";class y extends f{}y.kind="for";class b extends y{constructor(T){super(),this.iteration=T}render(T){return`for(${this.iteration})`+super.render(T)}optimizeNames(T,O){if(super.optimizeNames(T,O))return this.iteration=Z(this.iteration,T,O),this}get names(){return q(super.names,this.iteration.names)}}class x extends y{constructor(T,O,F,ne){super(),this.varKind=T,this.name=O,this.from=F,this.to=ne}render(T){let O=T.es5?r.varKinds.var:this.varKind,{name:F,from:ne,to:oe}=this;return`for(${O} ${F}=${ne}; ${F}<${oe}; ${F}++)`+super.render(T)}get names(){let T=H(super.names,this.from);return H(T,this.to)}}class w extends y{constructor(T,O,F,ne){super(),this.loop=T,this.varKind=O,this.name=F,this.iterable=ne}render(T){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(T)}optimizeNames(T,O){if(super.optimizeNames(T,O))return this.iterable=Z(this.iterable,T,O),this}get names(){return q(super.names,this.iterable.names)}}class S extends f{constructor(T,O,F){super(),this.name=T,this.args=O,this.async=F}render(T){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(T)}}S.kind="func";class E extends m{render(T){return"return "+super.render(T)}}E.kind="return";class k extends f{render(T){let O="try"+super.render(T);return this.catch&&(O+=this.catch.render(T)),this.finally&&(O+=this.finally.render(T)),O}optimizeNodes(){var T,O;return super.optimizeNodes(),(T=this.catch)===null||T===void 0||T.optimizeNodes(),(O=this.finally)===null||O===void 0||O.optimizeNodes(),this}optimizeNames(T,O){var F,ne;return super.optimizeNames(T,O),(F=this.catch)===null||F===void 0||F.optimizeNames(T,O),(ne=this.finally)===null||ne===void 0||ne.optimizeNames(T,O),this}get names(){let T=super.names;return this.catch&&q(T,this.catch.names),this.finally&&q(T,this.finally.names),T}}class $ extends f{constructor(T){super(),this.error=T}render(T){return`catch(${this.error})`+super.render(T)}}$.kind="catch";class j extends f{render(T){return"finally"+super.render(T)}}j.kind="finally";class I{constructor(T,O={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...O,_n:O.lines?` -`:""},this._extScope=T,this._scope=new r.Scope({parent:T}),this._nodes=[new v]}toString(){return this._root.render(this.opts)}name(T){return this._scope.name(T)}scopeName(T){return this._extScope.name(T)}scopeValue(T,O){let F=this._extScope.value(T,O);return(this._values[F.prefix]||(this._values[F.prefix]=new Set)).add(F),F}getScopeValue(T,O){return this._extScope.getValue(T,O)}scopeRefs(T){return this._extScope.scopeRefs(T,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(T,O,F,ne){let oe=this._scope.toName(O);return F!==void 0&&ne&&(this._constants[oe.str]=F),this._leafNode(new a(T,oe,F)),oe}const(T,O,F){return this._def(r.varKinds.const,T,O,F)}let(T,O,F){return this._def(r.varKinds.let,T,O,F)}var(T,O,F){return this._def(r.varKinds.var,T,O,F)}assign(T,O,F){return this._leafNode(new o(T,O,F))}add(T,O){return this._leafNode(new c(T,t.operators.ADD,O))}code(T){return typeof T=="function"?T():T!==e.nil&&this._leafNode(new d(T)),this}object(...T){let O=["{"];for(let[F,ne]of T)O.length>1&&O.push(","),O.push(F),(F!==ne||this.opts.es5)&&(O.push(":"),(0,e.addCodeArg)(O,ne));return O.push("}"),new e._Code(O)}if(T,O,F){if(this._blockNode(new h(T)),O&&F)this.code(O).else().code(F).endIf();else if(O)this.code(O).endIf();else if(F)throw Error('CodeGen: "else" body without "then" body');return this}elseIf(T){return this._elseNode(new h(T))}else(){return this._elseNode(new g)}endIf(){return this._endBlockNode(h,g)}_for(T,O){return this._blockNode(T),O&&this.code(O).endFor(),this}for(T,O){return this._for(new b(T),O)}forRange(T,O,F,ne,oe=this.opts.es5?r.varKinds.var:r.varKinds.let){let Ze=this._scope.toName(T);return this._for(new x(oe,Ze,O,F),()=>ne(Ze))}forOf(T,O,F,ne=r.varKinds.const){let oe=this._scope.toName(T);if(this.opts.es5){let Ze=O instanceof e.Name?O:this.var("_arr",O);return this.forRange("_i",0,e._`${Ze}.length`,Le=>{this.var(oe,e._`${Ze}[${Le}]`),F(oe)})}return this._for(new w("of",ne,oe,O),()=>F(oe))}forIn(T,O,F,ne=this.opts.es5?r.varKinds.var:r.varKinds.const){if(this.opts.ownProperties)return this.forOf(T,e._`Object.keys(${O})`,F);let oe=this._scope.toName(T);return this._for(new w("in",ne,oe,O),()=>F(oe))}endFor(){return this._endBlockNode(y)}label(T){return this._leafNode(new l(T))}break(T){return this._leafNode(new u(T))}return(T){let O=new E;if(this._blockNode(O),this.code(T),O.nodes.length!==1)throw Error('CodeGen: "return" should have one node');return this._endBlockNode(E)}try(T,O,F){if(!O&&!F)throw Error('CodeGen: "try" without "catch" and "finally"');let ne=new k;if(this._blockNode(ne),this.code(T),O){let oe=this.name("e");this._currNode=ne.catch=new $(oe),O(oe)}return F&&(this._currNode=ne.finally=new j,this.code(F)),this._endBlockNode($,j)}throw(T){return this._leafNode(new p(T))}block(T,O){return this._blockStarts.push(this._nodes.length),T&&this.code(T).endBlock(O),this}endBlock(T){let O=this._blockStarts.pop();if(O===void 0)throw Error("CodeGen: not in self-balancing block");let F=this._nodes.length-O;if(F<0||T!==void 0&&F!==T)throw Error(`CodeGen: wrong number of nodes: ${F} vs ${T} expected`);return this._nodes.length=O,this}func(T,O=e.nil,F,ne){return this._blockNode(new S(T,O,F)),ne&&this.code(ne).endFunc(),this}endFunc(){return this._endBlockNode(S)}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,O){let F=this._currNode;if(F instanceof T||O&&F instanceof O)return this._nodes.pop(),this;throw Error(`CodeGen: not in block "${O?`${T.kind}/${O.kind}`:T.kind}"`)}_elseNode(T){let O=this._currNode;if(!(O instanceof h))throw Error('CodeGen: "else" without "if"');return this._currNode=O.else=T,this}get _root(){return this._nodes[0]}get _currNode(){let T=this._nodes;return T[T.length-1]}set _currNode(T){let O=this._nodes;O[O.length-1]=T}}t.CodeGen=I;function q(A,T){for(let O in T)A[O]=(A[O]||0)+(T[O]||0);return A}function H(A,T){return T instanceof e._CodeOrName?q(A,T.names):A}function Z(A,T,O){if(A instanceof e.Name)return F(A);if(!ne(A))return A;return new e._Code(A._items.reduce((oe,Ze)=>(Ze instanceof e.Name&&(Ze=F(Ze)),Ze instanceof e._Code?oe.push(...Ze._items):oe.push(Ze),oe),[]));function F(oe){let Ze=O[oe.str];return Ze===void 0||T[oe.str]!==1?oe:(delete T[oe.str],Ze)}function ne(oe){return oe instanceof e._Code&&oe._items.some(Ze=>Ze instanceof e.Name&&T[Ze.str]===1&&O[Ze.str]!==void 0)}}function W(A,T){for(let O in T)A[O]=(A[O]||0)-(T[O]||0)}function we(A){return typeof A=="boolean"||typeof A=="number"||A===null?!A:e._`!${U(A)}`}t.not=we;var et=P(t.operators.AND);function zt(...A){return A.reduce(et)}t.and=zt;var Ce=P(t.operators.OR);function G(...A){return A.reduce(Ce)}t.or=G;function P(A){return(T,O)=>T===e.nil?O:O===e.nil?T:e._`${U(T)} ${A} ${U(O)}`}function U(A){return A instanceof e.Name?A:e._`(${A})`}}),We=X(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=Te(),r=Gm();function n(S){let E={};for(let k of S)E[k]=!0;return E}t.toHash=n;function s(S,E){return typeof E=="boolean"?E:Object.keys(E).length===0?!0:(i(S,E),!a(E,S.self.RULES.all))}t.alwaysValidSchema=s;function i(S,E=S.schema){let{opts:k,self:$}=S;if(!k.strictSchema||typeof E=="boolean")return;let j=$.RULES.keywords;for(let I in E)j[I]||w(S,`unknown keyword: "${I}"`)}t.checkUnknownRules=i;function a(S,E){if(typeof S=="boolean")return!S;for(let k in S)if(E[k])return!0;return!1}t.schemaHasRules=a;function o(S,E){if(typeof S=="boolean")return!S;for(let k in S)if(k!=="$ref"&&E.all[k])return!0;return!1}t.schemaHasRulesButRef=o;function c({topSchemaRef:S,schemaPath:E},k,$,j){if(!j){if(typeof k=="number"||typeof k=="boolean")return k;if(typeof k=="string")return e._`${k}`}return e._`${S}${E}${(0,e.getProperty)($)}`}t.schemaRefOrVal=c;function l(S){return d(decodeURIComponent(S))}t.unescapeFragment=l;function u(S){return encodeURIComponent(p(S))}t.escapeFragment=u;function p(S){return typeof S=="number"?`${S}`:S.replace(/~/g,"~0").replace(/\//g,"~1")}t.escapeJsonPointer=p;function d(S){return S.replace(/~1/g,"/").replace(/~0/g,"~")}t.unescapeJsonPointer=d;function m(S,E){if(Array.isArray(S))for(let k of S)E(k);else E(S)}t.eachItem=m;function f({mergeNames:S,mergeToName:E,mergeValues:k,resultToName:$}){return(j,I,q,H)=>{let Z=q===void 0?I:q instanceof e.Name?(I instanceof e.Name?S(j,I,q):E(j,I,q),q):I instanceof e.Name?(E(j,q,I),I):k(I,q);return H===e.Name&&!(Z instanceof e.Name)?$(j,Z):Z}}t.mergeEvaluated={props:f({mergeNames:(S,E,k)=>S.if(e._`${k} !== true && ${E} !== undefined`,()=>{S.if(e._`${E} === true`,()=>S.assign(k,!0),()=>S.assign(k,e._`${k} || {}`).code(e._`Object.assign(${k}, ${E})`))}),mergeToName:(S,E,k)=>S.if(e._`${k} !== true`,()=>{E===!0?S.assign(k,!0):(S.assign(k,e._`${k} || {}`),g(S,k,E))}),mergeValues:(S,E)=>S===!0?!0:{...S,...E},resultToName:v}),items:f({mergeNames:(S,E,k)=>S.if(e._`${k} !== true && ${E} !== undefined`,()=>S.assign(k,e._`${E} === true ? true : ${k} > ${E} ? ${k} : ${E}`)),mergeToName:(S,E,k)=>S.if(e._`${k} !== true`,()=>S.assign(k,E===!0?!0:e._`${k} > ${E} ? ${k} : ${E}`)),mergeValues:(S,E)=>S===!0?!0:Math.max(S,E),resultToName:(S,E)=>S.var("items",E)})};function v(S,E){if(E===!0)return S.var("props",!0);let k=S.var("props",e._`{}`);return E!==void 0&&g(S,k,E),k}t.evaluatedPropsToName=v;function g(S,E,k){Object.keys(k).forEach($=>S.assign(e._`${E}${(0,e.getProperty)($)}`,!0))}t.setEvaluated=g;var h={};function y(S,E){return S.scopeValue("func",{ref:E,code:h[E.code]||(h[E.code]=new r._Code(E.code))})}t.useFunc=y;var b;(function(S){S[S.Num=0]="Num",S[S.Str=1]="Str"})(b||(t.Type=b={}));function x(S,E,k){if(S instanceof e.Name){let $=E===b.Num;return k?$?e._`"[" + ${S} + "]"`:e._`"['" + ${S} + "']"`:$?e._`"/" + ${S}`:e._`"/" + ${S}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return k?(0,e.getProperty)(S).toString():"/"+p(S)}t.getErrorPath=x;function w(S,E,k=S.opts.strictSchema){if(k){if(E=`strict mode: ${E}`,k===!0)throw Error(E);S.self.logger.warn(E)}}t.checkStrictMode=w}),Qs=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),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}),nf=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.extendErrors=t.resetErrorsCount=t.reportExtraError=t.reportError=t.keyword$DataError=t.keywordError=void 0;var e=Te(),r=We(),n=Qs();t.keywordError={message:({keyword:g})=>e.str`must pass "${g}" keyword validation`},t.keyword$DataError={message:({keyword:g,schemaType:h})=>h?e.str`"${g}" keyword must be ${h} ($data)`:e.str`"${g}" keyword is invalid ($data)`};function s(g,h=t.keywordError,y,b){let{it:x}=g,{gen:w,compositeRule:S,allErrors:E}=x,k=p(g,h,y);b??(S||E)?c(w,k):l(x,e._`[${k}]`)}t.reportError=s;function i(g,h=t.keywordError,y){let{it:b}=g,{gen:x,compositeRule:w,allErrors:S}=b,E=p(g,h,y);c(x,E),!(w||S)&&l(b,n.default.vErrors)}t.reportExtraError=i;function a(g,h){g.assign(n.default.errors,h),g.if(e._`${n.default.vErrors} !== null`,()=>g.if(h,()=>g.assign(e._`${n.default.vErrors}.length`,h),()=>g.assign(n.default.vErrors,null)))}t.resetErrorsCount=a;function o({gen:g,keyword:h,schemaValue:y,data:b,errsCount:x,it:w}){if(x===void 0)throw Error("ajv implementation error");let S=g.name("err");g.forRange("i",x,n.default.errors,E=>{g.const(S,e._`${n.default.vErrors}[${E}]`),g.if(e._`${S}.instancePath === undefined`,()=>g.assign(e._`${S}.instancePath`,(0,e.strConcat)(n.default.instancePath,w.errorPath))),g.assign(e._`${S}.schemaPath`,e.str`${w.errSchemaPath}/${h}`),w.opts.verbose&&(g.assign(e._`${S}.schema`,y),g.assign(e._`${S}.data`,b))})}t.extendErrors=o;function c(g,h){let y=g.const("err",h);g.if(e._`${n.default.vErrors} === null`,()=>g.assign(n.default.vErrors,e._`[${y}]`),e._`${n.default.vErrors}.push(${y})`),g.code(e._`${n.default.errors}++`)}function l(g,h){let{gen:y,validateName:b,schemaEnv:x}=g;x.$async?y.throw(e._`new ${g.ValidationError}(${h})`):(y.assign(e._`${b}.errors`,h),y.return(!1))}var u={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 p(g,h,y){let{createErrors:b}=g.it;return b===!1?e._`{}`:d(g,h,y)}function d(g,h,y={}){let{gen:b,it:x}=g,w=[m(x,y),f(g,y)];return v(g,h,w),b.object(...w)}function m({errorPath:g},{instancePath:h}){let y=h?e.str`${g}${(0,r.getErrorPath)(h,r.Type.Str)}`:g;return[n.default.instancePath,(0,e.strConcat)(n.default.instancePath,y)]}function f({keyword:g,it:{errSchemaPath:h}},{schemaPath:y,parentSchema:b}){let x=b?h:e.str`${h}/${g}`;return y&&(x=e.str`${x}${(0,r.getErrorPath)(y,r.Type.Str)}`),[u.schemaPath,x]}function v(g,{params:h,message:y},b){let{keyword:x,data:w,schemaValue:S,it:E}=g,{opts:k,propertyName:$,topSchemaRef:j,schemaPath:I}=E;b.push([u.keyword,x],[u.params,typeof h=="function"?h(g):h||e._`{}`]),k.messages&&b.push([u.message,typeof y=="function"?y(g):y]),k.verbose&&b.push([u.schema,S],[u.parentSchema,e._`${j}${I}`],[n.default.data,w]),$&&b.push([u.propertyName,$])}}),Ute=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.boolOrEmptySchema=t.topBoolOrEmptySchema=void 0;var e=nf(),r=Te(),n=Qs(),s={message:"boolean schema is false"};function i(c){let{gen:l,schema:u,validateName:p}=c;u===!1?o(c,!1):typeof u=="object"&&u.$async===!0?l.return(n.default.data):(l.assign(r._`${p}.errors`,null),l.return(!0))}t.topBoolOrEmptySchema=i;function a(c,l){let{gen:u,schema:p}=c;p===!1?(u.var(l,!1),o(c)):u.var(l,!0)}t.boolOrEmptySchema=a;function o(c,l){let{gen:u,data:p}=c,d={gen:u,keyword:"false schema",data:p,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:c};(0,e.reportError)(d,s,void 0,l)}}),LM=X(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(i){return typeof i=="string"&&r.has(i)}t.isJSONType=n;function s(){let i={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...i,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},i.number,i.string,i.array,i.object],post:{rules:[]},all:{},keywords:{}}}t.getRules=s}),qM=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.shouldUseRule=t.shouldUseGroup=t.schemaHasRulesForType=void 0;function e({schema:s,self:i},a){let o=i.RULES.types[a];return o&&o!==!0&&r(s,o)}t.schemaHasRulesForType=e;function r(s,i){return i.rules.some(a=>n(s,a))}t.shouldUseGroup=r;function n(s,i){var a;return s[i.keyword]!==void 0||((a=i.definition.implements)===null||a===void 0?void 0:a.some(o=>s[o]!==void 0))}t.shouldUseRule=n}),Ym=X(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=LM(),r=qM(),n=nf(),s=Te(),i=We(),a;(function(b){b[b.Correct=0]="Correct",b[b.Wrong=1]="Wrong"})(a||(t.DataType=a={}));function o(b){let x=c(b.type);if(x.includes("null")){if(b.nullable===!1)throw Error("type: null contradicts nullable: false")}else{if(!x.length&&b.nullable!==void 0)throw Error('"nullable" cannot be used without "type"');b.nullable===!0&&x.push("null")}return x}t.getSchemaTypes=o;function c(b){let x=Array.isArray(b)?b:b?[b]:[];if(x.every(e.isJSONType))return x;throw Error("type must be JSONType or JSONType[]: "+x.join(","))}t.getJSONTypes=c;function l(b,x){let{gen:w,data:S,opts:E}=b,k=p(x,E.coerceTypes),$=x.length>0&&!(k.length===0&&x.length===1&&(0,r.schemaHasRulesForType)(b,x[0]));if($){let j=v(x,S,E.strictNumbers,a.Wrong);w.if(j,()=>{k.length?d(b,x,k):h(b)})}return $}t.coerceAndCheckDataType=l;var u=new Set(["string","number","integer","boolean","null"]);function p(b,x){return x?b.filter(w=>u.has(w)||x==="array"&&w==="array"):[]}function d(b,x,w){let{gen:S,data:E,opts:k}=b,$=S.let("dataType",s._`typeof ${E}`),j=S.let("coerced",s._`undefined`);k.coerceTypes==="array"&&S.if(s._`${$} == 'object' && Array.isArray(${E}) && ${E}.length == 1`,()=>S.assign(E,s._`${E}[0]`).assign($,s._`typeof ${E}`).if(v(x,E,k.strictNumbers),()=>S.assign(j,E))),S.if(s._`${j} !== undefined`);for(let q of w)(u.has(q)||q==="array"&&k.coerceTypes==="array")&&I(q);S.else(),h(b),S.endIf(),S.if(s._`${j} !== undefined`,()=>{S.assign(E,j),m(b,j)});function I(q){switch(q){case"string":S.elseIf(s._`${$} == "number" || ${$} == "boolean"`).assign(j,s._`"" + ${E}`).elseIf(s._`${E} === null`).assign(j,s._`""`);return;case"number":S.elseIf(s._`${$} == "boolean" || ${E} === null +`);let a=Mi(n,o=>new Date(o.epoch).toISOString());for(let[o,c]of a){e.push(`### ${o}`),e.push(""),e.push("| ID | Time | T | Title | Read |"),e.push("|----|------|---|-------|------|");let l="";for(let u of c){let p=u.time===l?'"':u.time;l=u.time,e.push(`| ${u.id} | ${p} | ${u.typeEmoji} | ${u.title} | ${u.tokens} |`)}e.push("")}return e.join(` +`).trim()}var Cte=[".git","package.json","composer.json","Cargo.toml","go.mod","pyproject.toml","setup.py","Gemfile","pom.xml","build.gradle","CMakeLists.txt","Makefile.am","meson.build"];function Ite(t){for(let r of Cte){let n=xr.default.join(t,r);if((0,on.existsSync)(n))return!0}let e=xr.default.join(t,"CLAUDE.md");if((0,on.existsSync)(e))try{if(!(0,on.readFileSync)(e,"utf-8").includes(""))return!0}catch{return!0}return!1}function Ate(t,e){if(nM(t))return!0;let r=xr.default.resolve(t);for(let n of e){let s=xr.default.resolve(n);if(r===s||r.startsWith(s+xr.default.sep))return!0}return!1}async function sM(t,e,r,n){let s=Me.loadFromFile(Ete);if(!s.CLAUDE_PILOT_FOLDER_CLAUDEMD_ENABLED){_.debug("FOLDER_INDEX","Folder CLAUDE.md generation disabled by setting");return}let i=parseInt(s.CLAUDE_PILOT_CONTEXT_OBSERVATIONS,10)||50,a=[];try{let c=JSON.parse(s.CLAUDE_PILOT_FOLDER_MD_EXCLUDE||"[]");Array.isArray(c)&&(a=c.filter(l=>typeof l=="string"))}catch{_.warn("FOLDER_INDEX","Failed to parse CLAUDE_PILOT_FOLDER_MD_EXCLUDE setting")}let o=new Set;for(let c of t){if(!c||c==="")continue;if(!Rte(c,n)){_.debug("FOLDER_INDEX","Skipping invalid file path",{filePath:c,reason:"Failed path validation"});continue}let l=c;n&&!xr.default.isAbsolute(c)&&(l=xr.default.join(n,c));let u=xr.default.dirname(l);if(u&&u!=="."&&u!=="/"){if(u.includes("/.git")||u.includes("\\.git")){_.debug("FOLDER_INDEX","Skipping .git directory",{folderPath:u});continue}if(Ite(u)){_.debug("FOLDER_INDEX","Skipping project root CLAUDE.md",{folderPath:u});continue}if(a.length>0&&Ate(u,a)){_.debug("FOLDER_INDEX","Skipping excluded folder",{folderPath:u});continue}o.add(u)}}if(o.size!==0){_.debug("FOLDER_INDEX","Updating CLAUDE.md files",{project:e,folderCount:o.size});for(let c of o)try{let l=xn(),u=await fetch(`http://${l}:${r}/api/search/by-file?filePath=${encodeURIComponent(c)}&limit=${i}&project=${encodeURIComponent(e)}&isFolder=true`);if(!u.ok){_.error("FOLDER_INDEX","Failed to fetch timeline",{folderPath:c,status:u.status});continue}let p=await u.json();if(!p.content?.[0]?.text){_.debug("FOLDER_INDEX","No content for folder",{folderPath:c});continue}let d=Pte(p.content[0].text);Ote(c,d),_.debug("FOLDER_INDEX","Updated CLAUDE.md",{folderPath:c})}catch(l){let u=l;_.error("FOLDER_INDEX","Failed to update CLAUDE.md",{folderPath:c,errorMessage:u.message,errorStack:u.stack})}}}_n();zi();var $_=require("child_process");function lM(t){try{let e=(0,$_.execSync)("git rev-parse --abbrev-ref HEAD",{cwd:t||process.cwd(),encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:5e3,windowsHide:!0}).trim();return e==="HEAD"?`detached@${(0,$_.execSync)("git rev-parse --short HEAD",{cwd:t||process.cwd(),encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:5e3,windowsHide:!0}).trim()}`:e||null}catch{return null}}function O_(t,e){t?.sseBroadcaster&&t.sseBroadcaster.broadcast({type:"new_observation",observation:e})}function P_(t,e){t?.sseBroadcaster&&t.sseBroadcaster.broadcast({type:"new_summary",summary:e})}function C_(t,e){t.earliestPendingTimestamp=null,e&&typeof e.broadcastProcessingStatus=="function"&&e.broadcastProcessingStatus()}async function I_(t,e,r,n,s,i,a,o,c){t&&e.conversationHistory.push({role:"assistant",content:t});let l=XD(t,e.contentSessionId),u=eM(t,e.sessionDbId),p=qte(u),d=r.getSessionStore();if(!e.memorySessionId)throw new Error("Cannot store observations: memorySessionId not yet captured");let m=uM(l),f=cM(m,e.project,c);f!==e.project&&_.info("PROJECT",`Detected project from files: ${f} (session: ${e.project})`,{detectedProject:f,sessionProject:e.project,fileCount:m.length});let v=lM(c);_.info("DB",`STORING | sessionDbId=${e.sessionDbId} | memorySessionId=${e.memorySessionId} | project=${f} | obsCount=${l.length} | hasSummary=${!!p}`,{sessionId:e.sessionDbId,memorySessionId:e.memorySessionId,project:f,gitBranch:v});let g=d.storeObservations(e.memorySessionId,f,l,p,e.lastPromptNumber,i,a??void 0);_.info("DB",`STORED | sessionDbId=${e.sessionDbId} | memorySessionId=${e.memorySessionId} | obsCount=${g.observationIds.length} | obsIds=[${g.observationIds.join(",")}] | summaryId=${g.summaryId||"none"}`,{sessionId:e.sessionDbId,memorySessionId:e.memorySessionId}),await Fte(l,g,e,f,r,s,i,o,c),await Ute(u,p,g,e,f,r,s,i,o),C_(e,s)}function qte(t){return t?{request:t.request||"",investigated:t.investigated||"",learned:t.learned||"",completed:t.completed||"",next_steps:t.next_steps||"",notes:t.notes}:null}function uM(t){let e=[];for(let r of t)e.push(...r.files_read||[]),e.push(...r.files_modified||[]);return e}async function Fte(t,e,r,n,s,i,a,o,c){for(let u=0;u{let f=Date.now()-m;_.debug("VECTOR","Observation synced",{obsId:p,duration:`${f}ms`,type:d.type,title:d.title||"(untitled)"})}).catch(f=>{_.error("VECTOR",`${o} vector sync failed, continuing without vector search`,{obsId:p,type:d.type,title:d.title||"(untitled)"},f)}),O_(i,{id:p,memory_session_id:r.memorySessionId,session_id:r.contentSessionId,type:d.type,title:d.title,subtitle:d.subtitle,text:null,narrative:d.narrative||null,facts:JSON.stringify(d.facts||[]),concepts:JSON.stringify(d.concepts||[]),files_read:JSON.stringify(d.files_read||[]),files_modified:JSON.stringify(d.files_modified||[]),project:n,prompt_number:r.lastPromptNumber,created_at_epoch:e.createdAtEpoch})}let l=uM(t);l.length>0&&sM(l,n,Cr(),c).catch(u=>{_.warn("FOLDER_INDEX","CLAUDE.md update failed (non-critical)",{project:n},u)})}async function Ute(t,e,r,n,s,i,a,o,c){if(!e||!r.summaryId)return;let l=Date.now();i.getVectorSync().syncSummary(r.summaryId,n.contentSessionId,s,e,n.lastPromptNumber,r.createdAtEpoch,o).then(()=>{let u=Date.now()-l;_.debug("VECTOR","Summary synced",{summaryId:r.summaryId,duration:`${u}ms`,request:e.request||"(no request)"})}).catch(u=>{_.error("VECTOR",`${c} vector sync failed, continuing without vector search`,{summaryId:r.summaryId,request:e.request||"(no request)"},u)}),P_(a,{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:s,prompt_number:n.lastPromptNumber,created_at_epoch:r.createdAtEpoch})}var Bm=require("fs");re();yr();var pM=f_;function Bte(){try{if(!(0,Bm.existsSync)(pM))return _.debug("SUBSCRIPTION","No credentials file found, assuming no subscription"),!1;let t=(0,Bm.readFileSync)(pM,"utf-8"),e=JSON.parse(t),r=e.planType||e.tier||e.subscription?.type||e.subscription?.tier||"",s=["pro","max","team","enterprise"].some(i=>r.toLowerCase().includes(i));return s&&_.debug("SUBSCRIPTION","Paid subscription detected",{tier:r}),s}catch(t){return _.debug("SUBSCRIPTION","Could not read credentials",{},t),!1}}function dM(){if(!Bte())return null;let t=process.env.ANTHROPIC_API_KEY;return t?(_.info("SUBSCRIPTION","Claude subscription detected - routing through CLI billing"),delete process.env.ANTHROPIC_API_KEY,()=>{process.env.ANTHROPIC_API_KEY=t}):null}var QM=require("events"),ez=require("child_process"),tz=require("readline"),ve=ie(require("fs"),1),Xn=require("fs/promises"),az=require("path"),oz=require("os"),Fi=require("path"),lz=require("process"),z_=require("fs"),uz=require("crypto"),bz=require("crypto"),Po=require("fs"),L_=require("path"),xz=require("crypto"),H_=require("path"),_z=require("url"),ppe={},Wte=Object.create,{getPrototypeOf:Zte,defineProperty:M_,getOwnPropertyNames:Vte}=Object,Gte=Object.prototype.hasOwnProperty,HM=(t,e,r)=>{r=t!=null?Wte(Zte(t)):{};let n=e||!t||!t.__esModule?M_(r,"default",{value:t,enumerable:!0}):r;for(let s of Vte(t))Gte.call(n,s)||M_(n,s,{get:()=>t[s],enumerable:!0});return n},X=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),BM=(t,e)=>{for(var r in e)M_(t,r,{get:e[r],enumerable:!0,configurable:!0,set:n=>e[r]=()=>n})};var Km=X(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 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,x)=>`${b}${x}`,"")}get names(){var y;return(y=this._names)!==null&&y!==void 0?y:this._names=this._items.reduce((b,x)=>(x instanceof r&&(b[x.str]=(b[x.str]||0)+1),b),{})}}t._Code=n,t.nil=new n("");function s(h,...y){let b=[h[0]],x=0;for(;x{Object.defineProperty(t,"__esModule",{value:!0}),t.ValueScope=t.ValueScopeName=t.Scope=t.varKinds=t.UsedValueState=void 0;var e=Km();class r extends Error{constructor(l){super(`CodeGen: "code" for ${l} not defined`),this.value=l.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 s{constructor({prefixes:l,parent:u}={}){this._names={},this._prefixes=l,this._parent=u}toName(l){return l instanceof e.Name?l:this.name(l)}name(l){return new e.Name(this._newName(l))}_newName(l){let u=this._names[l]||this._nameGroup(l);return`${l}${u.index++}`}_nameGroup(l){var u,p;if(!((p=(u=this._parent)===null||u===void 0?void 0:u._prefixes)===null||p===void 0)&&p.has(l)||this._prefixes&&!this._prefixes.has(l))throw Error(`CodeGen: prefix "${l}" is not allowed in this scope`);return this._names[l]={prefix:l,index:0}}}t.Scope=s;class i extends e.Name{constructor(l,u){super(u),this.prefix=l}setValue(l,{property:u,itemIndex:p}){this.value=l,this.scopePath=e._`.${new e.Name(u)}[${p}]`}}t.ValueScopeName=i;var a=e._`\n`;class o extends s{constructor(l){super(l),this._values={},this._scope=l.scope,this.opts={...l,_n:l.lines?a:e.nil}}get(){return this._scope}name(l){return new i(l,this._newName(l))}value(l,u){var p;if(u.ref===void 0)throw Error("CodeGen: ref must be passed in value");let d=this.toName(l),{prefix:m}=d,f=(p=u.key)!==null&&p!==void 0?p:u.ref,v=this._values[m];if(v){let y=v.get(f);if(y)return y}else v=this._values[m]=new Map;v.set(f,d);let g=this._scope[m]||(this._scope[m]=[]),h=g.length;return g[h]=u.ref,d.setValue(u,{property:m,itemIndex:h}),d}getValue(l,u){let p=this._values[l];if(p)return p.get(u)}scopeRefs(l,u=this._values){return this._reduceValues(u,p=>{if(p.scopePath===void 0)throw Error(`CodeGen: name "${p}" has no value`);return e._`${l}${p.scopePath}`})}scopeCode(l=this._values,u,p){return this._reduceValues(l,d=>{if(d.value===void 0)throw Error(`CodeGen: name "${d}" has no value`);return d.value.code},u,p)}_reduceValues(l,u,p={},d){let m=e.nil;for(let f in l){let v=l[f];if(!v)continue;let g=p[f]=p[f]||new Map;v.forEach(h=>{if(g.has(h))return;g.set(h,n.Started);let y=u(h);if(y){let b=this.opts.es5?t.varKinds.var:t.varKinds.const;m=e._`${m}${b} ${h} = ${y};${this.opts._n}`}else if(y=d?.(h))m=e._`${m}${y}${this.opts._n}`;else throw new r(h);g.set(h,n.Completed)})}return m}}t.ValueScope=o}),Te=X(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=Km(),r=mM(),n=Km();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 s=mM();Object.defineProperty(t,"Scope",{enumerable:!0,get:function(){return s.Scope}}),Object.defineProperty(t,"ValueScope",{enumerable:!0,get:function(){return s.ValueScope}}),Object.defineProperty(t,"ValueScopeName",{enumerable:!0,get:function(){return s.ValueScopeName}}),Object.defineProperty(t,"varKinds",{enumerable:!0,get:function(){return s.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 i{optimizeNodes(){return this}optimizeNames(T,O){return this}}class a extends i{constructor(T,O,F){super(),this.varKind=T,this.name=O,this.rhs=F}render({es5:T,_n:O}){let F=T?r.varKinds.var:this.varKind,se=this.rhs===void 0?"":` = ${this.rhs}`;return`${F} ${this.name}${se};`+O}optimizeNames(T,O){if(T[this.name.str])return this.rhs&&(this.rhs=Z(this.rhs,T,O)),this}get names(){return this.rhs instanceof e._CodeOrName?this.rhs.names:{}}}class o extends i{constructor(T,O,F){super(),this.lhs=T,this.rhs=O,this.sideEffects=F}render({_n:T}){return`${this.lhs} = ${this.rhs};`+T}optimizeNames(T,O){if(!(this.lhs instanceof e.Name&&!T[this.lhs.str]&&!this.sideEffects))return this.rhs=Z(this.rhs,T,O),this}get names(){let T=this.lhs instanceof e.Name?{}:{...this.lhs.names};return H(T,this.rhs)}}class c extends o{constructor(T,O,F,se){super(T,F,se),this.op=O}render({_n:T}){return`${this.lhs} ${this.op}= ${this.rhs};`+T}}class l extends i{constructor(T){super(),this.label=T,this.names={}}render({_n:T}){return`${this.label}:`+T}}class u extends i{constructor(T){super(),this.label=T,this.names={}}render({_n:T}){return`break${this.label?` ${this.label}`:""};`+T}}class p extends i{constructor(T){super(),this.error=T}render({_n:T}){return`throw ${this.error};`+T}get names(){return this.error.names}}class d extends i{constructor(T){super(),this.code=T}render({_n:T}){return`${this.code};`+T}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(T,O){return this.code=Z(this.code,T,O),this}get names(){return this.code instanceof e._CodeOrName?this.code.names:{}}}class m extends i{constructor(T=[]){super(),this.nodes=T}render(T){return this.nodes.reduce((O,F)=>O+F.render(T),"")}optimizeNodes(){let{nodes:T}=this,O=T.length;for(;O--;){let F=T[O].optimizeNodes();Array.isArray(F)?T.splice(O,1,...F):F?T[O]=F:T.splice(O,1)}return T.length>0?this:void 0}optimizeNames(T,O){let{nodes:F}=this,se=F.length;for(;se--;){let ce=F[se];ce.optimizeNames(T,O)||(W(T,ce.names),F.splice(se,1))}return F.length>0?this:void 0}get names(){return this.nodes.reduce((T,O)=>q(T,O.names),{})}}class f extends m{render(T){return"{"+T._n+super.render(T)+"}"+T._n}}class v extends m{}class g extends f{}g.kind="else";class h extends f{constructor(T,O){super(O),this.condition=T}render(T){let O=`if(${this.condition})`+super.render(T);return this.else&&(O+="else "+this.else.render(T)),O}optimizeNodes(){super.optimizeNodes();let T=this.condition;if(T===!0)return this.nodes;let O=this.else;if(O){let F=O.optimizeNodes();O=this.else=Array.isArray(F)?new g(F):F}if(O)return T===!1?O instanceof h?O:O.nodes:this.nodes.length?this:new h(we(T),O instanceof h?[O]:O.nodes);if(!(T===!1||!this.nodes.length))return this}optimizeNames(T,O){var F;if(this.else=(F=this.else)===null||F===void 0?void 0:F.optimizeNames(T,O),!!(super.optimizeNames(T,O)||this.else))return this.condition=Z(this.condition,T,O),this}get names(){let T=super.names;return H(T,this.condition),this.else&&q(T,this.else.names),T}}h.kind="if";class y extends f{}y.kind="for";class b extends y{constructor(T){super(),this.iteration=T}render(T){return`for(${this.iteration})`+super.render(T)}optimizeNames(T,O){if(super.optimizeNames(T,O))return this.iteration=Z(this.iteration,T,O),this}get names(){return q(super.names,this.iteration.names)}}class x extends y{constructor(T,O,F,se){super(),this.varKind=T,this.name=O,this.from=F,this.to=se}render(T){let O=T.es5?r.varKinds.var:this.varKind,{name:F,from:se,to:ce}=this;return`for(${O} ${F}=${se}; ${F}<${ce}; ${F}++)`+super.render(T)}get names(){let T=H(super.names,this.from);return H(T,this.to)}}class w extends y{constructor(T,O,F,se){super(),this.loop=T,this.varKind=O,this.name=F,this.iterable=se}render(T){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(T)}optimizeNames(T,O){if(super.optimizeNames(T,O))return this.iterable=Z(this.iterable,T,O),this}get names(){return q(super.names,this.iterable.names)}}class S extends f{constructor(T,O,F){super(),this.name=T,this.args=O,this.async=F}render(T){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(T)}}S.kind="func";class E extends m{render(T){return"return "+super.render(T)}}E.kind="return";class k extends f{render(T){let O="try"+super.render(T);return this.catch&&(O+=this.catch.render(T)),this.finally&&(O+=this.finally.render(T)),O}optimizeNodes(){var T,O;return super.optimizeNodes(),(T=this.catch)===null||T===void 0||T.optimizeNodes(),(O=this.finally)===null||O===void 0||O.optimizeNodes(),this}optimizeNames(T,O){var F,se;return super.optimizeNames(T,O),(F=this.catch)===null||F===void 0||F.optimizeNames(T,O),(se=this.finally)===null||se===void 0||se.optimizeNames(T,O),this}get names(){let T=super.names;return this.catch&&q(T,this.catch.names),this.finally&&q(T,this.finally.names),T}}class $ extends f{constructor(T){super(),this.error=T}render(T){return`catch(${this.error})`+super.render(T)}}$.kind="catch";class j extends f{render(T){return"finally"+super.render(T)}}j.kind="finally";class I{constructor(T,O={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...O,_n:O.lines?` +`:""},this._extScope=T,this._scope=new r.Scope({parent:T}),this._nodes=[new v]}toString(){return this._root.render(this.opts)}name(T){return this._scope.name(T)}scopeName(T){return this._extScope.name(T)}scopeValue(T,O){let F=this._extScope.value(T,O);return(this._values[F.prefix]||(this._values[F.prefix]=new Set)).add(F),F}getScopeValue(T,O){return this._extScope.getValue(T,O)}scopeRefs(T){return this._extScope.scopeRefs(T,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(T,O,F,se){let ce=this._scope.toName(O);return F!==void 0&&se&&(this._constants[ce.str]=F),this._leafNode(new a(T,ce,F)),ce}const(T,O,F){return this._def(r.varKinds.const,T,O,F)}let(T,O,F){return this._def(r.varKinds.let,T,O,F)}var(T,O,F){return this._def(r.varKinds.var,T,O,F)}assign(T,O,F){return this._leafNode(new o(T,O,F))}add(T,O){return this._leafNode(new c(T,t.operators.ADD,O))}code(T){return typeof T=="function"?T():T!==e.nil&&this._leafNode(new d(T)),this}object(...T){let O=["{"];for(let[F,se]of T)O.length>1&&O.push(","),O.push(F),(F!==se||this.opts.es5)&&(O.push(":"),(0,e.addCodeArg)(O,se));return O.push("}"),new e._Code(O)}if(T,O,F){if(this._blockNode(new h(T)),O&&F)this.code(O).else().code(F).endIf();else if(O)this.code(O).endIf();else if(F)throw Error('CodeGen: "else" body without "then" body');return this}elseIf(T){return this._elseNode(new h(T))}else(){return this._elseNode(new g)}endIf(){return this._endBlockNode(h,g)}_for(T,O){return this._blockNode(T),O&&this.code(O).endFor(),this}for(T,O){return this._for(new b(T),O)}forRange(T,O,F,se,ce=this.opts.es5?r.varKinds.var:r.varKinds.let){let Ze=this._scope.toName(T);return this._for(new x(ce,Ze,O,F),()=>se(Ze))}forOf(T,O,F,se=r.varKinds.const){let ce=this._scope.toName(T);if(this.opts.es5){let Ze=O instanceof e.Name?O:this.var("_arr",O);return this.forRange("_i",0,e._`${Ze}.length`,Le=>{this.var(ce,e._`${Ze}[${Le}]`),F(ce)})}return this._for(new w("of",se,ce,O),()=>F(ce))}forIn(T,O,F,se=this.opts.es5?r.varKinds.var:r.varKinds.const){if(this.opts.ownProperties)return this.forOf(T,e._`Object.keys(${O})`,F);let ce=this._scope.toName(T);return this._for(new w("in",se,ce,O),()=>F(ce))}endFor(){return this._endBlockNode(y)}label(T){return this._leafNode(new l(T))}break(T){return this._leafNode(new u(T))}return(T){let O=new E;if(this._blockNode(O),this.code(T),O.nodes.length!==1)throw Error('CodeGen: "return" should have one node');return this._endBlockNode(E)}try(T,O,F){if(!O&&!F)throw Error('CodeGen: "try" without "catch" and "finally"');let se=new k;if(this._blockNode(se),this.code(T),O){let ce=this.name("e");this._currNode=se.catch=new $(ce),O(ce)}return F&&(this._currNode=se.finally=new j,this.code(F)),this._endBlockNode($,j)}throw(T){return this._leafNode(new p(T))}block(T,O){return this._blockStarts.push(this._nodes.length),T&&this.code(T).endBlock(O),this}endBlock(T){let O=this._blockStarts.pop();if(O===void 0)throw Error("CodeGen: not in self-balancing block");let F=this._nodes.length-O;if(F<0||T!==void 0&&F!==T)throw Error(`CodeGen: wrong number of nodes: ${F} vs ${T} expected`);return this._nodes.length=O,this}func(T,O=e.nil,F,se){return this._blockNode(new S(T,O,F)),se&&this.code(se).endFunc(),this}endFunc(){return this._endBlockNode(S)}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,O){let F=this._currNode;if(F instanceof T||O&&F instanceof O)return this._nodes.pop(),this;throw Error(`CodeGen: not in block "${O?`${T.kind}/${O.kind}`:T.kind}"`)}_elseNode(T){let O=this._currNode;if(!(O instanceof h))throw Error('CodeGen: "else" without "if"');return this._currNode=O.else=T,this}get _root(){return this._nodes[0]}get _currNode(){let T=this._nodes;return T[T.length-1]}set _currNode(T){let O=this._nodes;O[O.length-1]=T}}t.CodeGen=I;function q(A,T){for(let O in T)A[O]=(A[O]||0)+(T[O]||0);return A}function H(A,T){return T instanceof e._CodeOrName?q(A,T.names):A}function Z(A,T,O){if(A instanceof e.Name)return F(A);if(!se(A))return A;return new e._Code(A._items.reduce((ce,Ze)=>(Ze instanceof e.Name&&(Ze=F(Ze)),Ze instanceof e._Code?ce.push(...Ze._items):ce.push(Ze),ce),[]));function F(ce){let Ze=O[ce.str];return Ze===void 0||T[ce.str]!==1?ce:(delete T[ce.str],Ze)}function se(ce){return ce instanceof e._Code&&ce._items.some(Ze=>Ze instanceof e.Name&&T[Ze.str]===1&&O[Ze.str]!==void 0)}}function W(A,T){for(let O in T)A[O]=(A[O]||0)-(T[O]||0)}function we(A){return typeof A=="boolean"||typeof A=="number"||A===null?!A:e._`!${U(A)}`}t.not=we;var et=P(t.operators.AND);function zt(...A){return A.reduce(et)}t.and=zt;var Ce=P(t.operators.OR);function G(...A){return A.reduce(Ce)}t.or=G;function P(A){return(T,O)=>T===e.nil?O:O===e.nil?T:e._`${U(T)} ${A} ${U(O)}`}function U(A){return A instanceof e.Name?A:e._`(${A})`}}),We=X(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=Te(),r=Km();function n(S){let E={};for(let k of S)E[k]=!0;return E}t.toHash=n;function s(S,E){return typeof E=="boolean"?E:Object.keys(E).length===0?!0:(i(S,E),!a(E,S.self.RULES.all))}t.alwaysValidSchema=s;function i(S,E=S.schema){let{opts:k,self:$}=S;if(!k.strictSchema||typeof E=="boolean")return;let j=$.RULES.keywords;for(let I in E)j[I]||w(S,`unknown keyword: "${I}"`)}t.checkUnknownRules=i;function a(S,E){if(typeof S=="boolean")return!S;for(let k in S)if(E[k])return!0;return!1}t.schemaHasRules=a;function o(S,E){if(typeof S=="boolean")return!S;for(let k in S)if(k!=="$ref"&&E.all[k])return!0;return!1}t.schemaHasRulesButRef=o;function c({topSchemaRef:S,schemaPath:E},k,$,j){if(!j){if(typeof k=="number"||typeof k=="boolean")return k;if(typeof k=="string")return e._`${k}`}return e._`${S}${E}${(0,e.getProperty)($)}`}t.schemaRefOrVal=c;function l(S){return d(decodeURIComponent(S))}t.unescapeFragment=l;function u(S){return encodeURIComponent(p(S))}t.escapeFragment=u;function p(S){return typeof S=="number"?`${S}`:S.replace(/~/g,"~0").replace(/\//g,"~1")}t.escapeJsonPointer=p;function d(S){return S.replace(/~1/g,"/").replace(/~0/g,"~")}t.unescapeJsonPointer=d;function m(S,E){if(Array.isArray(S))for(let k of S)E(k);else E(S)}t.eachItem=m;function f({mergeNames:S,mergeToName:E,mergeValues:k,resultToName:$}){return(j,I,q,H)=>{let Z=q===void 0?I:q instanceof e.Name?(I instanceof e.Name?S(j,I,q):E(j,I,q),q):I instanceof e.Name?(E(j,q,I),I):k(I,q);return H===e.Name&&!(Z instanceof e.Name)?$(j,Z):Z}}t.mergeEvaluated={props:f({mergeNames:(S,E,k)=>S.if(e._`${k} !== true && ${E} !== undefined`,()=>{S.if(e._`${E} === true`,()=>S.assign(k,!0),()=>S.assign(k,e._`${k} || {}`).code(e._`Object.assign(${k}, ${E})`))}),mergeToName:(S,E,k)=>S.if(e._`${k} !== true`,()=>{E===!0?S.assign(k,!0):(S.assign(k,e._`${k} || {}`),g(S,k,E))}),mergeValues:(S,E)=>S===!0?!0:{...S,...E},resultToName:v}),items:f({mergeNames:(S,E,k)=>S.if(e._`${k} !== true && ${E} !== undefined`,()=>S.assign(k,e._`${E} === true ? true : ${k} > ${E} ? ${k} : ${E}`)),mergeToName:(S,E,k)=>S.if(e._`${k} !== true`,()=>S.assign(k,E===!0?!0:e._`${k} > ${E} ? ${k} : ${E}`)),mergeValues:(S,E)=>S===!0?!0:Math.max(S,E),resultToName:(S,E)=>S.var("items",E)})};function v(S,E){if(E===!0)return S.var("props",!0);let k=S.var("props",e._`{}`);return E!==void 0&&g(S,k,E),k}t.evaluatedPropsToName=v;function g(S,E,k){Object.keys(k).forEach($=>S.assign(e._`${E}${(0,e.getProperty)($)}`,!0))}t.setEvaluated=g;var h={};function y(S,E){return S.scopeValue("func",{ref:E,code:h[E.code]||(h[E.code]=new r._Code(E.code))})}t.useFunc=y;var b;(function(S){S[S.Num=0]="Num",S[S.Str=1]="Str"})(b||(t.Type=b={}));function x(S,E,k){if(S instanceof e.Name){let $=E===b.Num;return k?$?e._`"[" + ${S} + "]"`:e._`"['" + ${S} + "']"`:$?e._`"/" + ${S}`:e._`"/" + ${S}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return k?(0,e.getProperty)(S).toString():"/"+p(S)}t.getErrorPath=x;function w(S,E,k=S.opts.strictSchema){if(k){if(E=`strict mode: ${E}`,k===!0)throw Error(E);S.self.logger.warn(E)}}t.checkStrictMode=w}),Qs=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),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}),af=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.extendErrors=t.resetErrorsCount=t.reportExtraError=t.reportError=t.keyword$DataError=t.keywordError=void 0;var e=Te(),r=We(),n=Qs();t.keywordError={message:({keyword:g})=>e.str`must pass "${g}" keyword validation`},t.keyword$DataError={message:({keyword:g,schemaType:h})=>h?e.str`"${g}" keyword must be ${h} ($data)`:e.str`"${g}" keyword is invalid ($data)`};function s(g,h=t.keywordError,y,b){let{it:x}=g,{gen:w,compositeRule:S,allErrors:E}=x,k=p(g,h,y);b??(S||E)?c(w,k):l(x,e._`[${k}]`)}t.reportError=s;function i(g,h=t.keywordError,y){let{it:b}=g,{gen:x,compositeRule:w,allErrors:S}=b,E=p(g,h,y);c(x,E),!(w||S)&&l(b,n.default.vErrors)}t.reportExtraError=i;function a(g,h){g.assign(n.default.errors,h),g.if(e._`${n.default.vErrors} !== null`,()=>g.if(h,()=>g.assign(e._`${n.default.vErrors}.length`,h),()=>g.assign(n.default.vErrors,null)))}t.resetErrorsCount=a;function o({gen:g,keyword:h,schemaValue:y,data:b,errsCount:x,it:w}){if(x===void 0)throw Error("ajv implementation error");let S=g.name("err");g.forRange("i",x,n.default.errors,E=>{g.const(S,e._`${n.default.vErrors}[${E}]`),g.if(e._`${S}.instancePath === undefined`,()=>g.assign(e._`${S}.instancePath`,(0,e.strConcat)(n.default.instancePath,w.errorPath))),g.assign(e._`${S}.schemaPath`,e.str`${w.errSchemaPath}/${h}`),w.opts.verbose&&(g.assign(e._`${S}.schema`,y),g.assign(e._`${S}.data`,b))})}t.extendErrors=o;function c(g,h){let y=g.const("err",h);g.if(e._`${n.default.vErrors} === null`,()=>g.assign(n.default.vErrors,e._`[${y}]`),e._`${n.default.vErrors}.push(${y})`),g.code(e._`${n.default.errors}++`)}function l(g,h){let{gen:y,validateName:b,schemaEnv:x}=g;x.$async?y.throw(e._`new ${g.ValidationError}(${h})`):(y.assign(e._`${b}.errors`,h),y.return(!1))}var u={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 p(g,h,y){let{createErrors:b}=g.it;return b===!1?e._`{}`:d(g,h,y)}function d(g,h,y={}){let{gen:b,it:x}=g,w=[m(x,y),f(g,y)];return v(g,h,w),b.object(...w)}function m({errorPath:g},{instancePath:h}){let y=h?e.str`${g}${(0,r.getErrorPath)(h,r.Type.Str)}`:g;return[n.default.instancePath,(0,e.strConcat)(n.default.instancePath,y)]}function f({keyword:g,it:{errSchemaPath:h}},{schemaPath:y,parentSchema:b}){let x=b?h:e.str`${h}/${g}`;return y&&(x=e.str`${x}${(0,r.getErrorPath)(y,r.Type.Str)}`),[u.schemaPath,x]}function v(g,{params:h,message:y},b){let{keyword:x,data:w,schemaValue:S,it:E}=g,{opts:k,propertyName:$,topSchemaRef:j,schemaPath:I}=E;b.push([u.keyword,x],[u.params,typeof h=="function"?h(g):h||e._`{}`]),k.messages&&b.push([u.message,typeof y=="function"?y(g):y]),k.verbose&&b.push([u.schema,S],[u.parentSchema,e._`${j}${I}`],[n.default.data,w]),$&&b.push([u.propertyName,$])}}),Yte=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.boolOrEmptySchema=t.topBoolOrEmptySchema=void 0;var e=af(),r=Te(),n=Qs(),s={message:"boolean schema is false"};function i(c){let{gen:l,schema:u,validateName:p}=c;u===!1?o(c,!1):typeof u=="object"&&u.$async===!0?l.return(n.default.data):(l.assign(r._`${p}.errors`,null),l.return(!0))}t.topBoolOrEmptySchema=i;function a(c,l){let{gen:u,schema:p}=c;p===!1?(u.var(l,!1),o(c)):u.var(l,!0)}t.boolOrEmptySchema=a;function o(c,l){let{gen:u,data:p}=c,d={gen:u,keyword:"false schema",data:p,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:c};(0,e.reportError)(d,s,void 0,l)}}),WM=X(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(i){return typeof i=="string"&&r.has(i)}t.isJSONType=n;function s(){let i={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...i,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},i.number,i.string,i.array,i.object],post:{rules:[]},all:{},keywords:{}}}t.getRules=s}),ZM=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.shouldUseRule=t.shouldUseGroup=t.schemaHasRulesForType=void 0;function e({schema:s,self:i},a){let o=i.RULES.types[a];return o&&o!==!0&&r(s,o)}t.schemaHasRulesForType=e;function r(s,i){return i.rules.some(a=>n(s,a))}t.shouldUseGroup=r;function n(s,i){var a;return s[i.keyword]!==void 0||((a=i.definition.implements)===null||a===void 0?void 0:a.some(o=>s[o]!==void 0))}t.shouldUseRule=n}),Jm=X(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=WM(),r=ZM(),n=af(),s=Te(),i=We(),a;(function(b){b[b.Correct=0]="Correct",b[b.Wrong=1]="Wrong"})(a||(t.DataType=a={}));function o(b){let x=c(b.type);if(x.includes("null")){if(b.nullable===!1)throw Error("type: null contradicts nullable: false")}else{if(!x.length&&b.nullable!==void 0)throw Error('"nullable" cannot be used without "type"');b.nullable===!0&&x.push("null")}return x}t.getSchemaTypes=o;function c(b){let x=Array.isArray(b)?b:b?[b]:[];if(x.every(e.isJSONType))return x;throw Error("type must be JSONType or JSONType[]: "+x.join(","))}t.getJSONTypes=c;function l(b,x){let{gen:w,data:S,opts:E}=b,k=p(x,E.coerceTypes),$=x.length>0&&!(k.length===0&&x.length===1&&(0,r.schemaHasRulesForType)(b,x[0]));if($){let j=v(x,S,E.strictNumbers,a.Wrong);w.if(j,()=>{k.length?d(b,x,k):h(b)})}return $}t.coerceAndCheckDataType=l;var u=new Set(["string","number","integer","boolean","null"]);function p(b,x){return x?b.filter(w=>u.has(w)||x==="array"&&w==="array"):[]}function d(b,x,w){let{gen:S,data:E,opts:k}=b,$=S.let("dataType",s._`typeof ${E}`),j=S.let("coerced",s._`undefined`);k.coerceTypes==="array"&&S.if(s._`${$} == 'object' && Array.isArray(${E}) && ${E}.length == 1`,()=>S.assign(E,s._`${E}[0]`).assign($,s._`typeof ${E}`).if(v(x,E,k.strictNumbers),()=>S.assign(j,E))),S.if(s._`${j} !== undefined`);for(let q of w)(u.has(q)||q==="array"&&k.coerceTypes==="array")&&I(q);S.else(),h(b),S.endIf(),S.if(s._`${j} !== undefined`,()=>{S.assign(E,j),m(b,j)});function I(q){switch(q){case"string":S.elseIf(s._`${$} == "number" || ${$} == "boolean"`).assign(j,s._`"" + ${E}`).elseIf(s._`${E} === null`).assign(j,s._`""`);return;case"number":S.elseIf(s._`${$} == "boolean" || ${E} === null || (${$} == "string" && ${E} && ${E} == +${E})`).assign(j,s._`+${E}`);return;case"integer":S.elseIf(s._`${$} === "boolean" || ${E} === null || (${$} === "string" && ${E} && ${E} == +${E} && !(${E} % 1))`).assign(j,s._`+${E}`);return;case"boolean":S.elseIf(s._`${E} === "false" || ${E} === 0 || ${E} === null`).assign(j,!1).elseIf(s._`${E} === "true" || ${E} === 1`).assign(j,!0);return;case"null":S.elseIf(s._`${E} === "" || ${E} === 0 || ${E} === false`),S.assign(j,null);return;case"array":S.elseIf(s._`${$} === "string" || ${$} === "number" - || ${$} === "boolean" || ${E} === null`).assign(j,s._`[${E}]`)}}}function m({gen:b,parentData:x,parentDataProperty:w},S){b.if(s._`${x} !== undefined`,()=>b.assign(s._`${x}[${w}]`,S))}function f(b,x,w,S=a.Correct){let E=S===a.Correct?s.operators.EQ:s.operators.NEQ,k;switch(b){case"null":return s._`${x} ${E} null`;case"array":k=s._`Array.isArray(${x})`;break;case"object":k=s._`${x} && typeof ${x} == "object" && !Array.isArray(${x})`;break;case"integer":k=$(s._`!(${x} % 1) && !isNaN(${x})`);break;case"number":k=$();break;default:return s._`typeof ${x} ${E} ${b}`}return S===a.Correct?k:(0,s.not)(k);function $(j=s.nil){return(0,s.and)(s._`typeof ${x} == "number"`,j,w?s._`isFinite(${x})`:s.nil)}}t.checkDataType=f;function v(b,x,w,S){if(b.length===1)return f(b[0],x,w,S);let E,k=(0,i.toHash)(b);if(k.array&&k.object){let $=s._`typeof ${x} != "object"`;E=k.null?$:s._`!${x} || ${$}`,delete k.null,delete k.array,delete k.object}else E=s.nil;k.number&&delete k.integer;for(let $ in k)E=(0,s.and)(E,f($,x,w,S));return E}t.checkDataTypes=v;var g={message:({schema:b})=>`must be ${b}`,params:({schema:b,schemaValue:x})=>typeof b=="string"?s._`{type: ${b}}`:s._`{type: ${x}}`};function h(b){let x=y(b);(0,n.reportError)(x,g)}t.reportTypeError=h;function y(b){let{gen:x,data:w,schema:S}=b,E=(0,i.schemaRefOrVal)(b,S,"type");return{gen:x,keyword:"type",data:w,schema:S.type,schemaCode:E,schemaValue:E,parentSchema:S,params:{},it:b}}}),Hte=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.assignDefaults=void 0;var e=Te(),r=We();function n(i,a){let{properties:o,items:c}=i.schema;if(a==="object"&&o)for(let l in o)s(i,l,o[l].default);else a==="array"&&Array.isArray(c)&&c.forEach((l,u)=>s(i,u,l.default))}t.assignDefaults=n;function s(i,a,o){let{gen:c,compositeRule:l,data:u,opts:p}=i;if(o===void 0)return;let d=e._`${u}${(0,e.getProperty)(a)}`;if(l){(0,r.checkStrictMode)(i,`default is ignored for: ${d}`);return}let m=e._`${d} === undefined`;p.useDefaults==="empty"&&(m=e._`${m} || ${d} === null || ${d} === ""`),c.if(m,e._`${d} = ${(0,e.stringify)(o)}`)}}),In=X(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=Te(),r=We(),n=Qs(),s=We();function i(b,x){let{gen:w,data:S,it:E}=b;w.if(p(w,S,x,E.opts.ownProperties),()=>{b.setParams({missingProperty:e._`${x}`},!0),b.error()})}t.checkReportMissingProp=i;function a({gen:b,data:x,it:{opts:w}},S,E){return(0,e.or)(...S.map(k=>(0,e.and)(p(b,x,k,w.ownProperties),e._`${E} = ${k}`)))}t.checkMissingProp=a;function o(b,x){b.setParams({missingProperty:x},!0),b.error()}t.reportMissingProp=o;function c(b){return b.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:e._`Object.prototype.hasOwnProperty`})}t.hasPropFunc=c;function l(b,x,w){return e._`${c(b)}.call(${x}, ${w})`}t.isOwnProperty=l;function u(b,x,w,S){let E=e._`${x}${(0,e.getProperty)(w)} !== undefined`;return S?e._`${E} && ${l(b,x,w)}`:E}t.propertyInData=u;function p(b,x,w,S){let E=e._`${x}${(0,e.getProperty)(w)} === undefined`;return S?(0,e.or)(E,(0,e.not)(l(b,x,w))):E}t.noPropertyInData=p;function d(b){return b?Object.keys(b).filter(x=>x!=="__proto__"):[]}t.allSchemaProperties=d;function m(b,x){return d(x).filter(w=>!(0,r.alwaysValidSchema)(b,x[w]))}t.schemaProperties=m;function f({schemaCode:b,data:x,it:{gen:w,topSchemaRef:S,schemaPath:E,errorPath:k},it:$},j,I,q){let H=q?e._`${b}, ${x}, ${S}${E}`:x,Z=[[n.default.instancePath,(0,e.strConcat)(n.default.instancePath,k)],[n.default.parentData,$.parentData],[n.default.parentDataProperty,$.parentDataProperty],[n.default.rootData,n.default.rootData]];$.opts.dynamicRef&&Z.push([n.default.dynamicAnchors,n.default.dynamicAnchors]);let W=e._`${H}, ${w.object(...Z)}`;return I!==e.nil?e._`${j}.call(${I}, ${W})`:e._`${j}(${W})`}t.callValidateCode=f;var v=e._`new RegExp`;function g({gen:b,it:{opts:x}},w){let S=x.unicodeRegExp?"u":"",{regExp:E}=x.code,k=E(w,S);return b.scopeValue("pattern",{key:k.toString(),ref:k,code:e._`${E.code==="new RegExp"?v:(0,s.useFunc)(b,E)}(${w}, ${S})`})}t.usePattern=g;function h(b){let{gen:x,data:w,keyword:S,it:E}=b,k=x.name("valid");if(E.allErrors){let j=x.let("valid",!0);return $(()=>x.assign(j,!1)),j}return x.var(k,!0),$(()=>x.break()),k;function $(j){let I=x.const("len",e._`${w}.length`);x.forRange("i",0,I,q=>{b.subschema({keyword:S,dataProp:q,dataPropType:r.Type.Num},k),x.if((0,e.not)(k),j)})}}t.validateArray=h;function y(b){let{gen:x,schema:w,keyword:S,it:E}=b;if(!Array.isArray(w))throw Error("ajv implementation error");if(w.some(j=>(0,r.alwaysValidSchema)(E,j))&&!E.opts.unevaluated)return;let k=x.let("valid",!1),$=x.name("_valid");x.block(()=>w.forEach((j,I)=>{let q=b.subschema({keyword:S,schemaProp:I,compositeRule:!0},$);x.assign(k,e._`${k} || ${$}`),!b.mergeValidEvaluated(q,$)&&x.if((0,e.not)(k))})),b.result(k,()=>b.reset(),()=>b.error(!0))}t.validateUnion=y}),Bte=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.validateKeywordUsage=t.validSchemaType=t.funcKeywordCode=t.macroKeywordCode=void 0;var e=Te(),r=Qs(),n=In(),s=nf();function i(m,f){let{gen:v,keyword:g,schema:h,parentSchema:y,it:b}=m,x=f.macro.call(b.self,h,y,b),w=u(v,g,x);b.opts.validateSchema!==!1&&b.self.validateSchema(x,!0);let S=v.name("valid");m.subschema({schema:x,schemaPath:e.nil,errSchemaPath:`${b.errSchemaPath}/${g}`,topSchemaRef:w,compositeRule:!0},S),m.pass(S,()=>m.error(!0))}t.macroKeywordCode=i;function a(m,f){var v;let{gen:g,keyword:h,schema:y,parentSchema:b,$data:x,it:w}=m;l(w,f);let S=!x&&f.compile?f.compile.call(w.self,y,b,w):f.validate,E=u(g,h,S),k=g.let("valid");m.block$data(k,$),m.ok((v=f.valid)!==null&&v!==void 0?v:k);function $(){if(f.errors===!1)q(),f.modifying&&o(m),H(()=>m.error());else{let Z=f.async?j():I();f.modifying&&o(m),H(()=>c(m,Z))}}function j(){let Z=g.let("ruleErrs",null);return g.try(()=>q(e._`await `),W=>g.assign(k,!1).if(e._`${W} instanceof ${w.ValidationError}`,()=>g.assign(Z,e._`${W}.errors`),()=>g.throw(W))),Z}function I(){let Z=e._`${E}.errors`;return g.assign(Z,null),q(e.nil),Z}function q(Z=f.async?e._`await `:e.nil){let W=w.opts.passContext?r.default.this:r.default.self,we=!("compile"in f&&!x||f.schema===!1);g.assign(k,e._`${Z}${(0,n.callValidateCode)(m,E,W,we)}`,f.modifying)}function H(Z){var W;g.if((0,e.not)((W=f.valid)!==null&&W!==void 0?W:k),Z)}}t.funcKeywordCode=a;function o(m){let{gen:f,data:v,it:g}=m;f.if(g.parentData,()=>f.assign(v,e._`${g.parentData}[${g.parentDataProperty}]`))}function c(m,f){let{gen:v}=m;v.if(e._`Array.isArray(${f})`,()=>{v.assign(r.default.vErrors,e._`${r.default.vErrors} === null ? ${f} : ${r.default.vErrors}.concat(${f})`).assign(r.default.errors,e._`${r.default.vErrors}.length`),(0,s.extendErrors)(m)},()=>m.error())}function l({schemaEnv:m},f){if(f.async&&!m.$async)throw Error("async keyword in sync schema")}function u(m,f,v){if(v===void 0)throw Error(`keyword "${f}" failed to compile`);return m.scopeValue("keyword",typeof v=="function"?{ref:v}:{ref:v,code:(0,e.stringify)(v)})}function p(m,f,v=!1){return!f.length||f.some(g=>g==="array"?Array.isArray(m):g==="object"?m&&typeof m=="object"&&!Array.isArray(m):typeof m==g||v&&typeof m>"u")}t.validSchemaType=p;function d({schema:m,opts:f,self:v,errSchemaPath:g},h,y){if(Array.isArray(h.keyword)?!h.keyword.includes(y):h.keyword!==y)throw Error("ajv implementation error");let b=h.dependencies;if(b?.some(x=>!Object.prototype.hasOwnProperty.call(m,x)))throw Error(`parent schema must have dependencies of ${y}: ${b.join(",")}`);if(h.validateSchema&&!h.validateSchema(m[y])){let x=`keyword "${y}" value is invalid at path "${g}": `+v.errorsText(h.validateSchema.errors);if(f.validateSchema==="log")v.logger.error(x);else throw Error(x)}}t.validateKeywordUsage=d}),Wte=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.extendSubschemaMode=t.extendSubschemaData=t.getSubschema=void 0;var e=Te(),r=We();function n(a,{keyword:o,schemaProp:c,schema:l,schemaPath:u,errSchemaPath:p,topSchemaRef:d}){if(o!==void 0&&l!==void 0)throw Error('both "keyword" and "schema" passed, only one allowed');if(o!==void 0){let m=a.schema[o];return c===void 0?{schema:m,schemaPath:e._`${a.schemaPath}${(0,e.getProperty)(o)}`,errSchemaPath:`${a.errSchemaPath}/${o}`}:{schema:m[c],schemaPath:e._`${a.schemaPath}${(0,e.getProperty)(o)}${(0,e.getProperty)(c)}`,errSchemaPath:`${a.errSchemaPath}/${o}/${(0,r.escapeFragment)(c)}`}}if(l!==void 0){if(u===void 0||p===void 0||d===void 0)throw Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:l,schemaPath:u,topSchemaRef:d,errSchemaPath:p}}throw Error('either "keyword" or "schema" must be passed')}t.getSubschema=n;function s(a,o,{dataProp:c,dataPropType:l,data:u,dataTypes:p,propertyName:d}){if(u!==void 0&&c!==void 0)throw Error('both "data" and "dataProp" passed, only one allowed');let{gen:m}=o;if(c!==void 0){let{errorPath:v,dataPathArr:g,opts:h}=o,y=m.let("data",e._`${o.data}${(0,e.getProperty)(c)}`,!0);f(y),a.errorPath=e.str`${v}${(0,r.getErrorPath)(c,l,h.jsPropertySyntax)}`,a.parentDataProperty=e._`${c}`,a.dataPathArr=[...g,a.parentDataProperty]}if(u!==void 0){let v=u instanceof e.Name?u:m.let("data",u,!0);f(v),d!==void 0&&(a.propertyName=d)}p&&(a.dataTypes=p);function f(v){a.data=v,a.dataLevel=o.dataLevel+1,a.dataTypes=[],o.definedProperties=new Set,a.parentData=o.data,a.dataNames=[...o.dataNames,v]}}t.extendSubschemaData=s;function i(a,{jtdDiscriminator:o,jtdMetadata:c,compositeRule:l,createErrors:u,allErrors:p}){l!==void 0&&(a.compositeRule=l),u!==void 0&&(a.createErrors=u),p!==void 0&&(a.allErrors=p),a.jtdDiscriminator=o,a.jtdMetadata=c}t.extendSubschemaMode=i}),FM=X((t,e)=>{e.exports=function r(n,s){if(n===s)return!0;if(n&&s&&typeof n=="object"&&typeof s=="object"){if(n.constructor!==s.constructor)return!1;var i,a,o;if(Array.isArray(n)){if(i=n.length,i!=s.length)return!1;for(a=i;a--!==0;)if(!r(n[a],s[a]))return!1;return!0}if(n.constructor===RegExp)return n.source===s.source&&n.flags===s.flags;if(n.valueOf!==Object.prototype.valueOf)return n.valueOf()===s.valueOf();if(n.toString!==Object.prototype.toString)return n.toString()===s.toString();if(o=Object.keys(n),i=o.length,i!==Object.keys(s).length)return!1;for(a=i;a--!==0;)if(!Object.prototype.hasOwnProperty.call(s,o[a]))return!1;for(a=i;a--!==0;){var c=o[a];if(!r(n[c],s[c]))return!1}return!0}return n!==n&&s!==s}}),Zte=X((t,e)=>{var r=e.exports=function(i,a,o){typeof a=="function"&&(o=a,a={}),o=a.cb||o;var c=typeof o=="function"?o:o.pre||function(){},l=o.post||function(){};n(a,c,l,i,"",i)};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(i,a,o,c,l,u,p,d,m,f){if(c&&typeof c=="object"&&!Array.isArray(c)){a(c,l,u,p,d,m,f);for(var v in c){var g=c[v];if(Array.isArray(g)){if(v in r.arrayKeywords)for(var h=0;h{Object.defineProperty(t,"__esModule",{value:!0}),t.getSchemaRefs=t.resolveUrl=t.normalizeId=t._getFullPath=t.getFullPath=t.inlineRef=void 0;var e=We(),r=FM(),n=Zte(),s=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function i(g,h=!0){return typeof g=="boolean"?!0:h===!0?!o(g):h?c(g)<=h:!1}t.inlineRef=i;var a=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function o(g){for(let h in g){if(a.has(h))return!0;let y=g[h];if(Array.isArray(y)&&y.some(o)||typeof y=="object"&&o(y))return!0}return!1}function c(g){let h=0;for(let y in g){if(y==="$ref")return 1/0;if(h++,!s.has(y)&&(typeof g[y]=="object"&&(0,e.eachItem)(g[y],b=>h+=c(b)),h===1/0))return 1/0}return h}function l(g,h="",y){y!==!1&&(h=d(h));let b=g.parse(h);return u(g,b)}t.getFullPath=l;function u(g,h){return g.serialize(h).split("#")[0]+"#"}t._getFullPath=u;var p=/#\/?$/;function d(g){return g?g.replace(p,""):""}t.normalizeId=d;function m(g,h,y){return y=d(y),g.resolve(h,y)}t.resolveUrl=m;var f=/^[a-z_][-a-z0-9._]*$/i;function v(g,h){if(typeof g=="boolean")return{};let{schemaId:y,uriResolver:b}=this.opts,x=d(g[y]||h),w={"":x},S=l(b,x,!1),E={},k=new Set;return n(g,{allKeys:!0},(I,q,H,Z)=>{if(Z===void 0)return;let W=S+q,we=w[Z];typeof I[y]=="string"&&(we=et.call(this,I[y])),zt.call(this,I.$anchor),zt.call(this,I.$dynamicAnchor),w[q]=we;function et(Ce){let G=this.opts.uriResolver.resolve;if(Ce=d(we?G(we,Ce):Ce),k.has(Ce))throw j(Ce);k.add(Ce);let P=this.refs[Ce];return typeof P=="string"&&(P=this.refs[P]),typeof P=="object"?$(I,P.schema,Ce):Ce!==d(W)&&(Ce[0]==="#"?($(I,E[Ce],Ce),E[Ce]=I):this.refs[Ce]=W),Ce}function zt(Ce){if(typeof Ce=="string"){if(!f.test(Ce))throw Error(`invalid anchor "${Ce}"`);et.call(this,`#${Ce}`)}}}),E;function $(I,q,H){if(q!==void 0&&!r(I,q))throw j(H)}function j(I){return Error(`reference "${I}" resolves to more than one schema`)}}t.getSchemaRefs=v}),af=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getData=t.KeywordCxt=t.validateFunctionCode=void 0;var e=Ute(),r=Ym(),n=qM(),s=Ym(),i=Hte(),a=Bte(),o=Wte(),c=Te(),l=Qs(),u=sf(),p=We(),d=nf();function m(C){if(S(C)&&(k(C),w(C))){h(C);return}f(C,()=>(0,e.topBoolOrEmptySchema)(C))}t.validateFunctionCode=m;function f({gen:C,validateName:N,schema:B,schemaEnv:K,opts:ce},Oe){ce.code.es5?C.func(N,c._`${l.default.data}, ${l.default.valCxt}`,K.$async,()=>{C.code(c._`"use strict"; ${b(B,ce)}`),g(C,ce),C.code(Oe)}):C.func(N,c._`${l.default.data}, ${v(ce)}`,K.$async,()=>C.code(b(B,ce)).code(Oe))}function v(C){return c._`{${l.default.instancePath}="", ${l.default.parentData}, ${l.default.parentDataProperty}, ${l.default.rootData}=${l.default.data}${C.dynamicRef?c._`, ${l.default.dynamicAnchors}={}`:c.nil}}={}`}function g(C,N){C.if(l.default.valCxt,()=>{C.var(l.default.instancePath,c._`${l.default.valCxt}.${l.default.instancePath}`),C.var(l.default.parentData,c._`${l.default.valCxt}.${l.default.parentData}`),C.var(l.default.parentDataProperty,c._`${l.default.valCxt}.${l.default.parentDataProperty}`),C.var(l.default.rootData,c._`${l.default.valCxt}.${l.default.rootData}`),N.dynamicRef&&C.var(l.default.dynamicAnchors,c._`${l.default.valCxt}.${l.default.dynamicAnchors}`)},()=>{C.var(l.default.instancePath,c._`""`),C.var(l.default.parentData,c._`undefined`),C.var(l.default.parentDataProperty,c._`undefined`),C.var(l.default.rootData,l.default.data),N.dynamicRef&&C.var(l.default.dynamicAnchors,c._`{}`)})}function h(C){let{schema:N,opts:B,gen:K}=C;f(C,()=>{B.$comment&&N.$comment&&Z(C),I(C),K.let(l.default.vErrors,null),K.let(l.default.errors,0),B.unevaluated&&y(C),$(C),W(C)})}function y(C){let{gen:N,validateName:B}=C;C.evaluated=N.const("evaluated",c._`${B}.evaluated`),N.if(c._`${C.evaluated}.dynamicProps`,()=>N.assign(c._`${C.evaluated}.props`,c._`undefined`)),N.if(c._`${C.evaluated}.dynamicItems`,()=>N.assign(c._`${C.evaluated}.items`,c._`undefined`))}function b(C,N){let B=typeof C=="object"&&C[N.schemaId];return B&&(N.code.source||N.code.process)?c._`/*# sourceURL=${B} */`:c.nil}function x(C,N){if(S(C)&&(k(C),w(C))){E(C,N);return}(0,e.boolOrEmptySchema)(C,N)}function w({schema:C,self:N}){if(typeof C=="boolean")return!C;for(let B in C)if(N.RULES.all[B])return!0;return!1}function S(C){return typeof C.schema!="boolean"}function E(C,N){let{schema:B,gen:K,opts:ce}=C;ce.$comment&&B.$comment&&Z(C),q(C),H(C);let Oe=K.const("_errs",l.default.errors);$(C,Oe),K.var(N,c._`${Oe} === ${l.default.errors}`)}function k(C){(0,p.checkUnknownRules)(C),j(C)}function $(C,N){if(C.opts.jtd)return et(C,[],!1,N);let B=(0,r.getSchemaTypes)(C.schema),K=(0,r.coerceAndCheckDataType)(C,B);et(C,B,!K,N)}function j(C){let{schema:N,errSchemaPath:B,opts:K,self:ce}=C;N.$ref&&K.ignoreKeywordsWithRef&&(0,p.schemaHasRulesButRef)(N,ce.RULES)&&ce.logger.warn(`$ref: keywords ignored in schema at path "${B}"`)}function I(C){let{schema:N,opts:B}=C;N.default!==void 0&&B.useDefaults&&B.strictSchema&&(0,p.checkStrictMode)(C,"default is ignored in the schema root")}function q(C){let N=C.schema[C.opts.schemaId];N&&(C.baseId=(0,u.resolveUrl)(C.opts.uriResolver,C.baseId,N))}function H(C){if(C.schema.$async&&!C.schemaEnv.$async)throw Error("async schema in sync schema")}function Z({gen:C,schemaEnv:N,schema:B,errSchemaPath:K,opts:ce}){let Oe=B.$comment;if(ce.$comment===!0)C.code(c._`${l.default.self}.logger.log(${Oe})`);else if(typeof ce.$comment=="function"){let Zt=c.str`${K}/$comment`,pn=C.scopeValue("root",{ref:N.root});C.code(c._`${l.default.self}.opts.$comment(${Oe}, ${Zt}, ${pn}.schema)`)}}function W(C){let{gen:N,schemaEnv:B,validateName:K,ValidationError:ce,opts:Oe}=C;B.$async?N.if(c._`${l.default.errors} === 0`,()=>N.return(l.default.data),()=>N.throw(c._`new ${ce}(${l.default.vErrors})`)):(N.assign(c._`${K}.errors`,l.default.vErrors),Oe.unevaluated&&we(C),N.return(c._`${l.default.errors} === 0`))}function we({gen:C,evaluated:N,props:B,items:K}){B instanceof c.Name&&C.assign(c._`${N}.props`,B),K instanceof c.Name&&C.assign(c._`${N}.items`,K)}function et(C,N,B,K){let{gen:ce,schema:Oe,data:Zt,allErrors:pn,opts:Er,self:kr}=C,{RULES:Vt}=kr;if(Oe.$ref&&(Er.ignoreKeywordsWithRef||!(0,p.schemaHasRulesButRef)(Oe,Vt))){ce.block(()=>oe(C,"$ref",Vt.all.$ref.definition));return}Er.jtd||Ce(C,N),ce.block(()=>{for(let Vr of Vt.rules)Vi(Vr);Vi(Vt.post)});function Vi(Vr){(0,n.shouldUseGroup)(Oe,Vr)&&(Vr.type?(ce.if((0,s.checkDataType)(Vr.type,Zt,Er.strictNumbers)),zt(C,Vr),N.length===1&&N[0]===Vr.type&&B&&(ce.else(),(0,s.reportTypeError)(C)),ce.endIf()):zt(C,Vr),pn||ce.if(c._`${l.default.errors} === ${K||0}`))}}function zt(C,N){let{gen:B,schema:K,opts:{useDefaults:ce}}=C;ce&&(0,i.assignDefaults)(C,N.type),B.block(()=>{for(let Oe of N.rules)(0,n.shouldUseRule)(K,Oe)&&oe(C,Oe.keyword,Oe.definition,N.type)})}function Ce(C,N){C.schemaEnv.meta||!C.opts.strictTypes||(G(C,N),!C.opts.allowUnionTypes&&P(C,N),U(C,C.dataTypes))}function G(C,N){if(N.length){if(!C.dataTypes.length){C.dataTypes=N;return}N.forEach(B=>{T(C.dataTypes,B)||F(C,`type "${B}" not allowed by context "${C.dataTypes.join(",")}"`)}),O(C,N)}}function P(C,N){N.length>1&&!(N.length===2&&N.includes("null"))&&F(C,"use allowUnionTypes to allow union type keyword")}function U(C,N){let B=C.self.RULES.all;for(let K in B){let ce=B[K];if(typeof ce=="object"&&(0,n.shouldUseRule)(C.schema,ce)){let{type:Oe}=ce.definition;Oe.length&&!Oe.some(Zt=>A(N,Zt))&&F(C,`missing type "${Oe.join(",")}" for keyword "${K}"`)}}}function A(C,N){return C.includes(N)||N==="number"&&C.includes("integer")}function T(C,N){return C.includes(N)||N==="integer"&&C.includes("number")}function O(C,N){let B=[];for(let K of C.dataTypes)T(N,K)?B.push(K):N.includes("integer")&&K==="number"&&B.push("integer");C.dataTypes=B}function F(C,N){let B=C.schemaEnv.baseId+C.errSchemaPath;N+=` at "${B}" (strictTypes)`,(0,p.checkStrictMode)(C,N,C.opts.strictTypes)}class ne{constructor(N,B,K){if((0,a.validateKeywordUsage)(N,B,K),this.gen=N.gen,this.allErrors=N.allErrors,this.keyword=K,this.data=N.data,this.schema=N.schema[K],this.$data=B.$data&&N.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,p.schemaRefOrVal)(N,this.schema,K,this.$data),this.schemaType=B.schemaType,this.parentSchema=N.schema,this.params={},this.it=N,this.def=B,this.$data)this.schemaCode=N.gen.const("vSchema",Pt(this.$data,N));else if(this.schemaCode=this.schemaValue,!(0,a.validSchemaType)(this.schema,B.schemaType,B.allowUndefined))throw Error(`${K} value must be ${JSON.stringify(B.schemaType)}`);("code"in B?B.trackErrors:B.errors!==!1)&&(this.errsCount=N.gen.const("_errs",l.default.errors))}result(N,B,K){this.failResult((0,c.not)(N),B,K)}failResult(N,B,K){this.gen.if(N),K?K():this.error(),B?(this.gen.else(),B(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(N,B){this.failResult((0,c.not)(N),void 0,B)}fail(N){if(N===void 0){this.error(),!this.allErrors&&this.gen.if(!1);return}this.gen.if(N),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(N){if(!this.$data)return this.fail(N);let{schemaCode:B}=this;this.fail(c._`${B} !== undefined && (${(0,c.or)(this.invalid$data(),N)})`)}error(N,B,K){if(B){this.setParams(B),this._error(N,K),this.setParams({});return}this._error(N,K)}_error(N,B){(N?d.reportExtraError:d.reportError)(this,this.def.error,B)}$dataError(){(0,d.reportError)(this,this.def.$dataError||d.keyword$DataError)}reset(){if(this.errsCount===void 0)throw Error('add "trackErrors" to keyword definition');(0,d.resetErrorsCount)(this.gen,this.errsCount)}ok(N){this.allErrors||this.gen.if(N)}setParams(N,B){B?Object.assign(this.params,N):this.params=N}block$data(N,B,K=c.nil){this.gen.block(()=>{this.check$data(N,K),B()})}check$data(N=c.nil,B=c.nil){if(!this.$data)return;let{gen:K,schemaCode:ce,schemaType:Oe,def:Zt}=this;K.if((0,c.or)(c._`${ce} === undefined`,B)),N!==c.nil&&K.assign(N,!0),(Oe.length||Zt.validateSchema)&&(K.elseIf(this.invalid$data()),this.$dataError(),N!==c.nil&&K.assign(N,!1)),K.else()}invalid$data(){let{gen:N,schemaCode:B,schemaType:K,def:ce,it:Oe}=this;return(0,c.or)(Zt(),pn());function Zt(){if(K.length){if(!(B instanceof c.Name))throw Error("ajv implementation error");let Er=Array.isArray(K)?K:[K];return c._`${(0,s.checkDataTypes)(Er,B,Oe.opts.strictNumbers,s.DataType.Wrong)}`}return c.nil}function pn(){if(ce.validateSchema){let Er=N.scopeValue("validate$data",{ref:ce.validateSchema});return c._`!${Er}(${B})`}return c.nil}}subschema(N,B){let K=(0,o.getSubschema)(this.it,N);(0,o.extendSubschemaData)(K,this.it,N),(0,o.extendSubschemaMode)(K,N);let ce={...this.it,...K,items:void 0,props:void 0};return x(ce,B),ce}mergeEvaluated(N,B){let{it:K,gen:ce}=this;K.opts.unevaluated&&(K.props!==!0&&N.props!==void 0&&(K.props=p.mergeEvaluated.props(ce,N.props,K.props,B)),K.items!==!0&&N.items!==void 0&&(K.items=p.mergeEvaluated.items(ce,N.items,K.items,B)))}mergeValidEvaluated(N,B){let{it:K,gen:ce}=this;if(K.opts.unevaluated&&(K.props!==!0||K.items!==!0))return ce.if(B,()=>this.mergeEvaluated(N,c.Name)),!0}}t.KeywordCxt=ne;function oe(C,N,B,K){let ce=new ne(C,B,N);"code"in B?B.code(ce,K):ce.$data&&B.validate?(0,a.funcKeywordCode)(ce,B):"macro"in B?(0,a.macroKeywordCode)(ce,B):(B.compile||B.validate)&&(0,a.funcKeywordCode)(ce,B)}var Ze=/^\/(?:[^~]|~0|~1)*$/,Le=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function Pt(C,{dataLevel:N,dataNames:B,dataPathArr:K}){let ce,Oe;if(C==="")return l.default.rootData;if(C[0]==="/"){if(!Ze.test(C))throw Error(`Invalid JSON-pointer: ${C}`);ce=C,Oe=l.default.rootData}else{let kr=Le.exec(C);if(!kr)throw Error(`Invalid JSON-pointer: ${C}`);let Vt=+kr[1];if(ce=kr[2],ce==="#"){if(Vt>=N)throw Error(Er("property/index",Vt));return K[N-Vt]}if(Vt>N)throw Error(Er("data",Vt));if(Oe=B[N-Vt],!ce)return Oe}let Zt=Oe,pn=ce.split("/");for(let kr of pn)kr&&(Oe=c._`${Oe}${(0,c.getProperty)((0,p.unescapeJsonPointer)(kr))}`,Zt=c._`${Zt} && ${Oe}`);return Zt;function Er(kr,Vt){return`Cannot access ${kr} ${Vt} levels up, current level is ${N}`}}t.getData=Pt}),t0=X(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}),of=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=sf();class r extends Error{constructor(s,i,a,o){super(o||`can't resolve reference ${a} from id ${i}`),this.missingRef=(0,e.resolveUrl)(s,i,a),this.missingSchema=(0,e.normalizeId)((0,e.getFullPath)(s,this.missingRef))}}t.default=r}),r0=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.resolveSchema=t.getCompilingSchema=t.resolveRef=t.compileSchema=t.SchemaEnv=void 0;var e=Te(),r=t0(),n=Qs(),s=sf(),i=We(),a=af();class o{constructor(y){var b;this.refs={},this.dynamicAnchors={};let x;typeof y.schema=="object"&&(x=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,s.normalizeId)(x?.[y.schemaId||"$id"]),this.schemaPath=y.schemaPath,this.localRefs=y.localRefs,this.meta=y.meta,this.$async=x?.$async,this.refs={}}}t.SchemaEnv=o;function c(h){let y=p.call(this,h);if(y)return y;let b=(0,s.getFullPath)(this.opts.uriResolver,h.root.baseId),{es5:x,lines:w}=this.opts.code,{ownProperties:S}=this.opts,E=new e.CodeGen(this.scope,{es5:x,lines:w,ownProperties:S}),k;h.$async&&(k=E.scopeValue("Error",{ref:r.default,code:e._`require("ajv/dist/runtime/validation_error").default`}));let $=E.scopeName("validate");h.validateName=$;let j={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:h.schema,code:(0,e.stringify)(h.schema)}:{ref:h.schema}),validateName:$,ValidationError:k,schema:h.schema,schemaEnv:h,rootId:b,baseId:h.baseId||b,schemaPath:e.nil,errSchemaPath:h.schemaPath||(this.opts.jtd?"":"#"),errorPath:e._`""`,opts:this.opts,self:this},I;try{this._compilations.add(h),(0,a.validateFunctionCode)(j),E.optimize(this.opts.code.optimize);let q=E.toString();I=`${E.scopeRefs(n.default.scope)}return ${q}`,this.opts.code.process&&(I=this.opts.code.process(I,h));let H=Function(`${n.default.self}`,`${n.default.scope}`,I)(this,this.scope.get());if(this.scope.value($,{ref:H}),H.errors=null,H.schema=h.schema,H.schemaEnv=h,h.$async&&(H.$async=!0),this.opts.code.source===!0&&(H.source={validateName:$,validateCode:q,scopeValues:E._values}),this.opts.unevaluated){let{props:Z,items:W}=j;H.evaluated={props:Z instanceof e.Name?void 0:Z,items:W instanceof e.Name?void 0:W,dynamicProps:Z instanceof e.Name,dynamicItems:W instanceof e.Name},H.source&&(H.source.evaluated=(0,e.stringify)(H.evaluated))}return h.validate=H,h}catch(q){throw delete h.validate,delete h.validateName,I&&this.logger.error("Error compiling schema, function code:",I),q}finally{this._compilations.delete(h)}}t.compileSchema=c;function l(h,y,b){var x;b=(0,s.resolveUrl)(this.opts.uriResolver,y,b);let w=h.refs[b];if(w)return w;let S=m.call(this,h,b);if(S===void 0){let E=(x=h.localRefs)===null||x===void 0?void 0:x[b],{schemaId:k}=this.opts;E&&(S=new o({schema:E,schemaId:k,root:h,baseId:y}))}if(S!==void 0)return h.refs[b]=u.call(this,S)}t.resolveRef=l;function u(h){return(0,s.inlineRef)(h.schema,this.opts.inlineRefs)?h.schema:h.validate?h:c.call(this,h)}function p(h){for(let y of this._compilations)if(d(y,h))return y}t.getCompilingSchema=p;function d(h,y){return h.schema===y.schema&&h.root===y.root&&h.baseId===y.baseId}function m(h,y){let b;for(;typeof(b=this.refs[y])=="string";)y=b;return b||this.schemas[y]||f.call(this,h,y)}function f(h,y){let b=this.opts.uriResolver.parse(y),x=(0,s._getFullPath)(this.opts.uriResolver,b),w=(0,s.getFullPath)(this.opts.uriResolver,h.baseId,void 0);if(Object.keys(h.schema).length>0&&x===w)return g.call(this,b,h);let S=(0,s.normalizeId)(x),E=this.refs[S]||this.schemas[S];if(typeof E=="string"){let k=f.call(this,h,E);return typeof k?.schema!="object"?void 0:g.call(this,b,k)}if(typeof E?.schema=="object"){if(E.validate||c.call(this,E),S===(0,s.normalizeId)(y)){let{schema:k}=E,{schemaId:$}=this.opts,j=k[$];return j&&(w=(0,s.resolveUrl)(this.opts.uriResolver,w,j)),new o({schema:k,schemaId:$,root:h,baseId:w})}return g.call(this,b,E)}}t.resolveSchema=f;var v=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function g(h,{baseId:y,schema:b,root:x}){var w;if(((w=h.fragment)===null||w===void 0?void 0:w[0])!=="/")return;for(let k of h.fragment.slice(1).split("/")){if(typeof b=="boolean")return;let $=b[(0,i.unescapeFragment)(k)];if($===void 0)return;b=$;let j=typeof b=="object"&&b[this.opts.schemaId];!v.has(k)&&j&&(y=(0,s.resolveUrl)(this.opts.uriResolver,y,j))}let S;if(typeof b!="boolean"&&b.$ref&&!(0,i.schemaHasRulesButRef)(b,this.RULES)){let k=(0,s.resolveUrl)(this.opts.uriResolver,y,b.$ref);S=f.call(this,x,k)}let{schemaId:E}=this.opts;if(S=S||new o({schema:b,schemaId:E,root:x,baseId:y}),S.schema!==S.root.schema)return S}}),Vte=X((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}}),Gte=X((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}}),Yte=X((t,e)=>{var{HEX:r}=Gte(),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 s(h){if(l(h,".")<3)return{host:h,isIPV4:!1};let y=h.match(n)||[],[b]=y;return b?{host:c(b,"."),isIPV4:!0}:{host:h,isIPV4:!1}}function i(h,y=!1){let b="",x=!0;for(let w of h){if(r[w]===void 0)return;w!=="0"&&x===!0&&(x=!1),x||(b+=w)}return y&&b.length===0&&(b="0"),b}function a(h){let y=0,b={error:!1,address:"",zone:""},x=[],w=[],S=!1,E=!1,k=!1;function $(){if(w.length){if(S===!1){let j=i(w);if(j!==void 0)x.push(j);else return b.error=!0,!1}w.length=0}return!0}for(let j=0;j7){b.error=!0;break}j-1>=0&&h[j-1]===":"&&(E=!0);continue}else if(I==="%"){if(!$())break;S=!0}else{w.push(I);continue}}return w.length&&(S?b.zone=w.join(""):k?x.push(w.join("")):x.push(i(w))),b.address=x.join(""),b}function o(h){if(l(h,":")<2)return{host:h,isIPV6:!1};let y=a(h);if(y.error)return{host:h,isIPV6:!1};{let{address:b,address:x}=y;return y.zone&&(b+="%"+y.zone,x+="%25"+y.zone),{host:b,escapedHost:x,isIPV6:!0}}}function c(h,y){let b="",x=!0,w=h.length;for(let S=0;S{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 s(x){return typeof x.secure=="boolean"?x.secure:String(x.scheme).toLowerCase()==="wss"}function i(x){return x.host||(x.error=x.error||"HTTP URIs must have a host."),x}function a(x){let w=String(x.scheme).toLowerCase()==="https";return(x.port===(w?443:80)||x.port==="")&&(x.port=void 0),x.path||(x.path="/"),x}function o(x){return x.secure=s(x),x.resourceName=(x.path||"/")+(x.query?"?"+x.query:""),x.path=void 0,x.query=void 0,x}function c(x){if((x.port===(s(x)?443:80)||x.port==="")&&(x.port=void 0),typeof x.secure=="boolean"&&(x.scheme=x.secure?"wss":"ws",x.secure=void 0),x.resourceName){let[w,S]=x.resourceName.split("?");x.path=w&&w!=="/"?w:void 0,x.query=S,x.resourceName=void 0}return x.fragment=void 0,x}function l(x,w){if(!x.path)return x.error="URN can not be parsed",x;let S=x.path.match(n);if(S){let E=w.scheme||x.scheme||"urn";x.nid=S[1].toLowerCase(),x.nss=S[2];let k=`${E}:${w.nid||x.nid}`,$=b[k];x.path=void 0,$&&(x=$.parse(x,w))}else x.error=x.error||"URN can not be parsed.";return x}function u(x,w){let S=w.scheme||x.scheme||"urn",E=x.nid.toLowerCase(),k=`${S}:${w.nid||E}`,$=b[k];$&&(x=$.serialize(x,w));let j=x,I=x.nss;return j.path=`${E||w.nid}:${I}`,w.skipEscape=!0,j}function p(x,w){let S=x;return S.uuid=S.nss,S.nss=void 0,!w.tolerant&&(!S.uuid||!r.test(S.uuid))&&(S.error=S.error||"UUID is not valid."),S}function d(x){let w=x;return w.nss=(x.uuid||"").toLowerCase(),w}var m={scheme:"http",domainHost:!0,parse:i,serialize:a},f={scheme:"https",domainHost:m.domainHost,parse:i,serialize:a},v={scheme:"ws",domainHost:!0,parse:o,serialize:c},g={scheme:"wss",domainHost:v.domainHost,parse:v.parse,serialize:v.serialize},h={scheme:"urn",parse:l,serialize:u,skipNormalize:!0},y={scheme:"urn:uuid",parse:p,serialize:d,skipNormalize:!0},b={http:m,https:f,ws:v,wss:g,urn:h,"urn:uuid":y};e.exports=b}),Jte=X((t,e)=>{var{normalizeIPv6:r,normalizeIPv4:n,removeDotSegments:s,recomposeAuthority:i,normalizeComponentEncoding:a}=Yte(),o=Kte();function c(y,b){return typeof y=="string"?y=d(g(y,b),b):typeof y=="object"&&(y=g(d(y,b),b)),y}function l(y,b,x){let w=Object.assign({scheme:"null"},x),S=u(g(y,w),g(b,w),w,!0);return d(S,{...w,skipEscape:!0})}function u(y,b,x,w){let S={};return w||(y=g(d(y,x),x),b=g(d(b,x),x)),x=x||{},!x.tolerant&&b.scheme?(S.scheme=b.scheme,S.userinfo=b.userinfo,S.host=b.host,S.port=b.port,S.path=s(b.path||""),S.query=b.query):(b.userinfo!==void 0||b.host!==void 0||b.port!==void 0?(S.userinfo=b.userinfo,S.host=b.host,S.port=b.port,S.path=s(b.path||""),S.query=b.query):(b.path?(b.path.charAt(0)==="/"?S.path=s(b.path):((y.userinfo!==void 0||y.host!==void 0||y.port!==void 0)&&!y.path?S.path="/"+b.path:y.path?S.path=y.path.slice(0,y.path.lastIndexOf("/")+1)+b.path:S.path=b.path,S.path=s(S.path)),S.query=b.query):(S.path=y.path,b.query!==void 0?S.query=b.query:S.query=y.query),S.userinfo=y.userinfo,S.host=y.host,S.port=y.port),S.scheme=y.scheme),S.fragment=b.fragment,S}function p(y,b,x){return typeof y=="string"?(y=unescape(y),y=d(a(g(y,x),!0),{...x,skipEscape:!0})):typeof y=="object"&&(y=d(a(y,!0),{...x,skipEscape:!0})),typeof b=="string"?(b=unescape(b),b=d(a(g(b,x),!0),{...x,skipEscape:!0})):typeof b=="object"&&(b=d(a(b,!0),{...x,skipEscape:!0})),y.toLowerCase()===b.toLowerCase()}function d(y,b){let x={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:""},w=Object.assign({},b),S=[],E=o[(w.scheme||x.scheme||"").toLowerCase()];E&&E.serialize&&E.serialize(x,w),x.path!==void 0&&(w.skipEscape?x.path=unescape(x.path):(x.path=escape(x.path),x.scheme!==void 0&&(x.path=x.path.split("%3A").join(":")))),w.reference!=="suffix"&&x.scheme&&S.push(x.scheme,":");let k=i(x);if(k!==void 0&&(w.reference!=="suffix"&&S.push("//"),S.push(k),x.path&&x.path.charAt(0)!=="/"&&S.push("/")),x.path!==void 0){let $=x.path;!w.absolutePath&&(!E||!E.absolutePath)&&($=s($)),k===void 0&&($=$.replace(/^\/\//u,"/%2F")),S.push($)}return x.query!==void 0&&S.push("?",x.query),x.fragment!==void 0&&S.push("#",x.fragment),S.join("")}var m=Array.from({length:127},(y,b)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(b)));function f(y){let b=0;for(let x=0,w=y.length;x126||m[b])return!0;return!1}var v=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function g(y,b){let x=Object.assign({},b),w={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},S=y.indexOf("%")!==-1,E=!1;x.reference==="suffix"&&(y=(x.scheme?x.scheme+":":"")+"//"+y);let k=y.match(v);if(k){if(w.scheme=k[1],w.userinfo=k[3],w.host=k[4],w.port=parseInt(k[5],10),w.path=k[6]||"",w.query=k[7],w.fragment=k[8],isNaN(w.port)&&(w.port=k[5]),w.host){let j=n(w.host);if(j.isIPV4===!1){let I=r(j.host);w.host=I.host.toLowerCase(),E=I.isIPV6}else w.host=j.host,E=!0}w.scheme===void 0&&w.userinfo===void 0&&w.host===void 0&&w.port===void 0&&w.query===void 0&&!w.path?w.reference="same-document":w.scheme===void 0?w.reference="relative":w.fragment===void 0?w.reference="absolute":w.reference="uri",x.reference&&x.reference!=="suffix"&&x.reference!==w.reference&&(w.error=w.error||"URI is not a "+x.reference+" reference.");let $=o[(x.scheme||w.scheme||"").toLowerCase()];if(!x.unicodeSupport&&(!$||!$.unicodeSupport)&&w.host&&(x.domainHost||$&&$.domainHost)&&E===!1&&f(w.host))try{w.host=URL.domainToASCII(w.host.toLowerCase())}catch(j){w.error=w.error||"Host's domain name can not be converted to ASCII: "+j}(!$||$&&!$.skipNormalize)&&(S&&w.scheme!==void 0&&(w.scheme=unescape(w.scheme)),S&&w.host!==void 0&&(w.host=unescape(w.host)),w.path&&(w.path=escape(unescape(w.path))),w.fragment&&(w.fragment=encodeURI(decodeURIComponent(w.fragment)))),$&&$.parse&&$.parse(w,x)}else w.error=w.error||"URI can not be parsed.";return w}var h={SCHEMES:o,normalize:c,resolve:l,resolveComponents:u,equal:p,serialize:d,parse:g};e.exports=h,e.exports.default=h,e.exports.fastUri=h}),Qte=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Jte();e.code='require("ajv/dist/runtime/uri").default',t.default=e}),Xte=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CodeGen=t.Name=t.nil=t.stringify=t.str=t._=t.KeywordCxt=void 0;var e=af();Object.defineProperty(t,"KeywordCxt",{enumerable:!0,get:function(){return e.KeywordCxt}});var r=Te();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=t0(),s=of(),i=LM(),a=r0(),o=Te(),c=sf(),l=Ym(),u=We(),p=Vte(),d=Qte(),m=(G,P)=>new RegExp(G,P);m.code="new RegExp";var f=["removeAdditional","useDefaults","coerceTypes"],v=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."},h={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},y=200;function b(G){var P,U,A,T,O,F,ne,oe,Ze,Le,Pt,C,N,B,K,ce,Oe,Zt,pn,Er,kr,Vt,Vi,Vr,mh;let Ho=G.strict,fh=(P=G.code)===null||P===void 0?void 0:P.optimize,rw=fh===!0||fh===void 0?1:fh||0,nw=(A=(U=G.code)===null||U===void 0?void 0:U.regExp)!==null&&A!==void 0?A:m,VL=(T=G.uriResolver)!==null&&T!==void 0?T:d.default;return{strictSchema:(F=(O=G.strictSchema)!==null&&O!==void 0?O:Ho)!==null&&F!==void 0?F:!0,strictNumbers:(oe=(ne=G.strictNumbers)!==null&&ne!==void 0?ne:Ho)!==null&&oe!==void 0?oe:!0,strictTypes:(Le=(Ze=G.strictTypes)!==null&&Ze!==void 0?Ze:Ho)!==null&&Le!==void 0?Le:"log",strictTuples:(C=(Pt=G.strictTuples)!==null&&Pt!==void 0?Pt:Ho)!==null&&C!==void 0?C:"log",strictRequired:(B=(N=G.strictRequired)!==null&&N!==void 0?N:Ho)!==null&&B!==void 0?B:!1,code:G.code?{...G.code,optimize:rw,regExp:nw}:{optimize:rw,regExp:nw},loopRequired:(K=G.loopRequired)!==null&&K!==void 0?K:y,loopEnum:(ce=G.loopEnum)!==null&&ce!==void 0?ce:y,meta:(Oe=G.meta)!==null&&Oe!==void 0?Oe:!0,messages:(Zt=G.messages)!==null&&Zt!==void 0?Zt:!0,inlineRefs:(pn=G.inlineRefs)!==null&&pn!==void 0?pn:!0,schemaId:(Er=G.schemaId)!==null&&Er!==void 0?Er:"$id",addUsedSchema:(kr=G.addUsedSchema)!==null&&kr!==void 0?kr:!0,validateSchema:(Vt=G.validateSchema)!==null&&Vt!==void 0?Vt:!0,validateFormats:(Vi=G.validateFormats)!==null&&Vi!==void 0?Vi:!0,unicodeRegExp:(Vr=G.unicodeRegExp)!==null&&Vr!==void 0?Vr:!0,int32range:(mh=G.int32range)!==null&&mh!==void 0?mh:!0,uriResolver:VL}}class x{constructor(P={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,P=this.opts={...P,...b(P)};let{es5:U,lines:A}=this.opts.code;this.scope=new o.ValueScope({scope:{},prefixes:v,es5:U,lines:A}),this.logger=q(P.logger);let T=P.validateFormats;P.validateFormats=!1,this.RULES=(0,i.getRules)(),w.call(this,g,P,"NOT SUPPORTED"),w.call(this,h,P,"DEPRECATED","warn"),this._metaOpts=j.call(this),P.formats&&k.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),P.keywords&&$.call(this,P.keywords),typeof P.meta=="object"&&this.addMetaSchema(P.meta),E.call(this),P.validateFormats=T}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:P,meta:U,schemaId:A}=this.opts,T=p;A==="id"&&(T={...p},T.id=T.$id,delete T.$id),U&&P&&this.addMetaSchema(T,T[A],!1)}defaultMeta(){let{meta:P,schemaId:U}=this.opts;return this.opts.defaultMeta=typeof P=="object"?P[U]||P:void 0}validate(P,U){let A;if(typeof P=="string"){if(A=this.getSchema(P),!A)throw Error(`no schema with key or ref "${P}"`)}else A=this.compile(P);let T=A(U);return"$async"in A||(this.errors=A.errors),T}compile(P,U){let A=this._addSchema(P,U);return A.validate||this._compileSchemaEnv(A)}compileAsync(P,U){if(typeof this.opts.loadSchema!="function")throw Error("options.loadSchema should be a function");let{loadSchema:A}=this.opts;return T.call(this,P,U);async function T(Le,Pt){await O.call(this,Le.$schema);let C=this._addSchema(Le,Pt);return C.validate||F.call(this,C)}async function O(Le){Le&&!this.getSchema(Le)&&await T.call(this,{$ref:Le},!0)}async function F(Le){try{return this._compileSchemaEnv(Le)}catch(Pt){if(!(Pt instanceof s.default))throw Pt;return ne.call(this,Pt),await oe.call(this,Pt.missingSchema),F.call(this,Le)}}function ne({missingSchema:Le,missingRef:Pt}){if(this.refs[Le])throw Error(`AnySchema ${Le} is loaded but ${Pt} cannot be resolved`)}async function oe(Le){let Pt=await Ze.call(this,Le);this.refs[Le]||await O.call(this,Pt.$schema),this.refs[Le]||this.addSchema(Pt,Le,U)}async function Ze(Le){let Pt=this._loading[Le];if(Pt)return Pt;try{return await(this._loading[Le]=A(Le))}finally{delete this._loading[Le]}}}addSchema(P,U,A,T=this.opts.validateSchema){if(Array.isArray(P)){for(let F of P)this.addSchema(F,void 0,A,T);return this}let O;if(typeof P=="object"){let{schemaId:F}=this.opts;if(O=P[F],O!==void 0&&typeof O!="string")throw Error(`schema ${F} must be string`)}return U=(0,c.normalizeId)(U||O),this._checkUnique(U),this.schemas[U]=this._addSchema(P,A,U,T,!0),this}addMetaSchema(P,U,A=this.opts.validateSchema){return this.addSchema(P,U,!0,A),this}validateSchema(P,U){if(typeof P=="boolean")return!0;let A;if(A=P.$schema,A!==void 0&&typeof A!="string")throw Error("$schema must be a string");if(A=A||this.opts.defaultMeta||this.defaultMeta(),!A)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let T=this.validate(A,P);if(!T&&U){let O="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(O);else throw Error(O)}return T}getSchema(P){let U;for(;typeof(U=S.call(this,P))=="string";)P=U;if(U===void 0){let{schemaId:A}=this.opts,T=new a.SchemaEnv({schema:{},schemaId:A});if(U=a.resolveSchema.call(this,T,P),!U)return;this.refs[P]=U}return U.validate||this._compileSchemaEnv(U)}removeSchema(P){if(P instanceof RegExp)return this._removeAllSchemas(this.schemas,P),this._removeAllSchemas(this.refs,P),this;switch(typeof P){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let U=S.call(this,P);return typeof U=="object"&&this._cache.delete(U.schema),delete this.schemas[P],delete this.refs[P],this}case"object":{let U=P;this._cache.delete(U);let A=P[this.opts.schemaId];return A&&(A=(0,c.normalizeId)(A),delete this.schemas[A],delete this.refs[A]),this}default:throw Error("ajv.removeSchema: invalid parameter")}}addVocabulary(P){for(let U of P)this.addKeyword(U);return this}addKeyword(P,U){let A;if(typeof P=="string")A=P,typeof U=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),U.keyword=A);else if(typeof P=="object"&&U===void 0){if(U=P,A=U.keyword,Array.isArray(A)&&!A.length)throw Error("addKeywords: keyword must be string or non-empty array")}else throw Error("invalid addKeywords parameters");if(Z.call(this,A,U),!U)return(0,u.eachItem)(A,O=>W.call(this,O)),this;et.call(this,U);let T={...U,type:(0,l.getJSONTypes)(U.type),schemaType:(0,l.getJSONTypes)(U.schemaType)};return(0,u.eachItem)(A,T.type.length===0?O=>W.call(this,O,T):O=>T.type.forEach(F=>W.call(this,O,T,F))),this}getKeyword(P){let U=this.RULES.all[P];return typeof U=="object"?U.definition:!!U}removeKeyword(P){let{RULES:U}=this;delete U.keywords[P],delete U.all[P];for(let A of U.rules){let T=A.rules.findIndex(O=>O.keyword===P);T>=0&&A.rules.splice(T,1)}return this}addFormat(P,U){return typeof U=="string"&&(U=new RegExp(U)),this.formats[P]=U,this}errorsText(P=this.errors,{separator:U=", ",dataVar:A="data"}={}){return!P||P.length===0?"No errors":P.map(T=>`${A}${T.instancePath} ${T.message}`).reduce((T,O)=>T+U+O)}$dataMetaSchema(P,U){let A=this.RULES.all;P=JSON.parse(JSON.stringify(P));for(let T of U){let O=T.split("/").slice(1),F=P;for(let ne of O)F=F[ne];for(let ne in A){let oe=A[ne];if(typeof oe!="object")continue;let{$data:Ze}=oe.definition,Le=F[ne];Ze&&Le&&(F[ne]=Ce(Le))}}return P}_removeAllSchemas(P,U){for(let A in P){let T=P[A];(!U||U.test(A))&&(typeof T=="string"?delete P[A]:T&&!T.meta&&(this._cache.delete(T.schema),delete P[A]))}}_addSchema(P,U,A,T=this.opts.validateSchema,O=this.opts.addUsedSchema){let F,{schemaId:ne}=this.opts;if(typeof P=="object")F=P[ne];else{if(this.opts.jtd)throw Error("schema must be object");if(typeof P!="boolean")throw Error("schema must be object or boolean")}let oe=this._cache.get(P);if(oe!==void 0)return oe;A=(0,c.normalizeId)(F||A);let Ze=c.getSchemaRefs.call(this,P,A);return oe=new a.SchemaEnv({schema:P,schemaId:ne,meta:U,baseId:A,localRefs:Ze}),this._cache.set(oe.schema,oe),O&&!A.startsWith("#")&&(A&&this._checkUnique(A),this.refs[A]=oe),T&&this.validateSchema(P,!0),oe}_checkUnique(P){if(this.schemas[P]||this.refs[P])throw Error(`schema with key or id "${P}" already exists`)}_compileSchemaEnv(P){if(P.meta?this._compileMetaSchema(P):a.compileSchema.call(this,P),!P.validate)throw Error("ajv implementation error");return P.validate}_compileMetaSchema(P){let U=this.opts;this.opts=this._metaOpts;try{a.compileSchema.call(this,P)}finally{this.opts=U}}}x.ValidationError=n.default,x.MissingRefError=s.default,t.default=x;function w(G,P,U,A="error"){for(let T in G){let O=T;O in P&&this.logger[A](`${U}: option ${T}. ${G[O]}`)}}function S(G){return G=(0,c.normalizeId)(G),this.schemas[G]||this.refs[G]}function E(){let G=this.opts.schemas;if(G)if(Array.isArray(G))this.addSchema(G);else for(let P in G)this.addSchema(G[P],P)}function k(){for(let G in this.opts.formats){let P=this.opts.formats[G];P&&this.addFormat(G,P)}}function $(G){if(Array.isArray(G)){this.addVocabulary(G);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let P in G){let U=G[P];U.keyword||(U.keyword=P),this.addKeyword(U)}}function j(){let G={...this.opts};for(let P of f)delete G[P];return G}var I={log(){},warn(){},error(){}};function q(G){if(G===!1)return I;if(G===void 0)return console;if(G.log&&G.warn&&G.error)return G;throw Error("logger must implement log, warn and error methods")}var H=/^[a-z_$][a-z0-9_$:-]*$/i;function Z(G,P){let{RULES:U}=this;if((0,u.eachItem)(G,A=>{if(U.keywords[A])throw Error(`Keyword ${A} is already defined`);if(!H.test(A))throw Error(`Keyword ${A} has invalid name`)}),!!P&&P.$data&&!("code"in P||"validate"in P))throw Error('$data keyword must have "code" or "validate" function')}function W(G,P,U){var A;let T=P?.post;if(U&&T)throw Error('keyword with "post" flag cannot have "type"');let{RULES:O}=this,F=T?O.post:O.rules.find(({type:oe})=>oe===U);if(F||(F={type:U,rules:[]},O.rules.push(F)),O.keywords[G]=!0,!P)return;let ne={keyword:G,definition:{...P,type:(0,l.getJSONTypes)(P.type),schemaType:(0,l.getJSONTypes)(P.schemaType)}};P.before?we.call(this,F,ne,P.before):F.rules.push(ne),O.all[G]=ne,(A=P.implements)===null||A===void 0||A.forEach(oe=>this.addKeyword(oe))}function we(G,P,U){let A=G.rules.findIndex(T=>T.keyword===U);A>=0?G.rules.splice(A,0,P):(G.rules.push(P),this.logger.warn(`rule ${U} is not defined`))}function et(G){let{metaSchema:P}=G;P!==void 0&&(G.$data&&this.opts.$data&&(P=Ce(P)),G.validateSchema=this.compile(P,!0))}var zt={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Ce(G){return{anyOf:[G,zt]}}}),ere=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e={keyword:"id",code(){throw Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};t.default=e}),tre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.callRef=t.getValidate=void 0;var e=of(),r=In(),n=Te(),s=Qs(),i=r0(),a=We(),o={keyword:"$ref",schemaType:"string",code(u){let{gen:p,schema:d,it:m}=u,{baseId:f,schemaEnv:v,validateName:g,opts:h,self:y}=m,{root:b}=v;if((d==="#"||d==="#/")&&f===b.baseId)return w();let x=i.resolveRef.call(y,b,f,d);if(x===void 0)throw new e.default(m.opts.uriResolver,f,d);if(x instanceof i.SchemaEnv)return S(x);return E(x);function w(){if(v===b)return l(u,g,v,v.$async);let k=p.scopeValue("root",{ref:b});return l(u,n._`${k}.validate`,b,b.$async)}function S(k){let $=c(u,k);l(u,$,k,k.$async)}function E(k){let $=p.scopeValue("schema",h.code.source===!0?{ref:k,code:(0,n.stringify)(k)}:{ref:k}),j=p.name("valid"),I=u.subschema({schema:k,dataTypes:[],schemaPath:n.nil,topSchemaRef:$,errSchemaPath:d},j);u.mergeEvaluated(I),u.ok(j)}}};function c(u,p){let{gen:d}=u;return p.validate?d.scopeValue("validate",{ref:p.validate}):n._`${d.scopeValue("wrapper",{ref:p})}.validate`}t.getValidate=c;function l(u,p,d,m){let{gen:f,it:v}=u,{allErrors:g,schemaEnv:h,opts:y}=v,b=y.passContext?s.default.this:n.nil;m?x():w();function x(){if(!h.$async)throw Error("async schema referenced by sync schema");let k=f.let("valid");f.try(()=>{f.code(n._`await ${(0,r.callValidateCode)(u,p,b)}`),E(p),!g&&f.assign(k,!0)},$=>{f.if(n._`!(${$} instanceof ${v.ValidationError})`,()=>f.throw($)),S($),!g&&f.assign(k,!1)}),u.ok(k)}function w(){u.result((0,r.callValidateCode)(u,p,b),()=>E(p),()=>S(p))}function S(k){let $=n._`${k}.errors`;f.assign(s.default.vErrors,n._`${s.default.vErrors} === null ? ${$} : ${s.default.vErrors}.concat(${$})`),f.assign(s.default.errors,n._`${s.default.vErrors}.length`)}function E(k){var $;if(!v.opts.unevaluated)return;let j=($=d?.validate)===null||$===void 0?void 0:$.evaluated;if(v.props!==!0)if(j&&!j.dynamicProps)j.props!==void 0&&(v.props=a.mergeEvaluated.props(f,j.props,v.props));else{let I=f.var("props",n._`${k}.evaluated.props`);v.props=a.mergeEvaluated.props(f,I,v.props,n.Name)}if(v.items!==!0)if(j&&!j.dynamicItems)j.items!==void 0&&(v.items=a.mergeEvaluated.items(f,j.items,v.items));else{let I=f.var("items",n._`${k}.evaluated.items`);v.items=a.mergeEvaluated.items(f,I,v.items,n.Name)}}}t.callRef=l,t.default=o}),rre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=ere(),r=tre(),n=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",e.default,r.default];t.default=n}),nre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),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}},s={message:({keyword:a,schemaCode:o})=>e.str`must be ${n[a].okStr} ${o}`,params:({keyword:a,schemaCode:o})=>e._`{comparison: ${n[a].okStr}, limit: ${o}}`},i={keyword:Object.keys(n),type:"number",schemaType:"number",$data:!0,error:s,code(a){let{keyword:o,data:c,schemaCode:l}=a;a.fail$data(e._`${c} ${n[o].fail} ${l} || isNaN(${c})`)}};t.default=i}),sre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),r={message:({schemaCode:s})=>e.str`must be multiple of ${s}`,params:({schemaCode:s})=>e._`{multipleOf: ${s}}`},n={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:r,code(s){let{gen:i,data:a,schemaCode:o,it:c}=s,l=c.opts.multipleOfPrecision,u=i.let("res"),p=l?e._`Math.abs(Math.round(${u}) - ${u}) > 1e-${l}`:e._`${u} !== parseInt(${u})`;s.fail$data(e._`(${o} === 0 || (${u} = ${a}/${o}, ${p}))`)}};t.default=n}),ire=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});function e(r){let n=r.length,s=0,i=0,a;for(;i=55296&&a<=56319&&i{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),r=We(),n=ire(),s={message({keyword:a,schemaCode:o}){let c=a==="maxLength"?"more":"fewer";return e.str`must NOT have ${c} than ${o} characters`},params:({schemaCode:a})=>e._`{limit: ${a}}`},i={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:s,code(a){let{keyword:o,data:c,schemaCode:l,it:u}=a,p=o==="maxLength"?e.operators.GT:e.operators.LT,d=u.opts.unicode===!1?e._`${c}.length`:e._`${(0,r.useFunc)(a.gen,n.default)}(${c})`;a.fail$data(e._`${d} ${p} ${l}`)}};t.default=i}),ore=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=In(),r=Te(),n={message:({schemaCode:i})=>r.str`must match pattern "${i}"`,params:({schemaCode:i})=>r._`{pattern: ${i}}`},s={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:n,code(i){let{data:a,$data:o,schema:c,schemaCode:l,it:u}=i,p=u.opts.unicodeRegExp?"u":"",d=o?r._`(new RegExp(${l}, ${p}))`:(0,e.usePattern)(i,c);i.fail$data(r._`!${d}.test(${a})`)}};t.default=s}),cre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),r={message({keyword:s,schemaCode:i}){let a=s==="maxProperties"?"more":"fewer";return e.str`must NOT have ${a} than ${i} properties`},params:({schemaCode:s})=>e._`{limit: ${s}}`},n={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:r,code(s){let{keyword:i,data:a,schemaCode:o}=s,c=i==="maxProperties"?e.operators.GT:e.operators.LT;s.fail$data(e._`Object.keys(${a}).length ${c} ${o}`)}};t.default=n}),lre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=In(),r=Te(),n=We(),s={message:({params:{missingProperty:a}})=>r.str`must have required property '${a}'`,params:({params:{missingProperty:a}})=>r._`{missingProperty: ${a}}`},i={keyword:"required",type:"object",schemaType:"array",$data:!0,error:s,code(a){let{gen:o,schema:c,schemaCode:l,data:u,$data:p,it:d}=a,{opts:m}=d;if(!p&&c.length===0)return;let f=c.length>=m.loopRequired;if(d.allErrors?v():g(),m.strictRequired){let b=a.parentSchema.properties,{definedProperties:x}=a.it;for(let w of c)if(b?.[w]===void 0&&!x.has(w)){let S=d.schemaEnv.baseId+d.errSchemaPath,E=`required property "${w}" is not defined at "${S}" (strictRequired)`;(0,n.checkStrictMode)(d,E,d.opts.strictRequired)}}function v(){if(f||p)a.block$data(r.nil,h);else for(let b of c)(0,e.checkReportMissingProp)(a,b)}function g(){let b=o.let("missing");if(f||p){let x=o.let("valid",!0);a.block$data(x,()=>y(b,x)),a.ok(x)}else o.if((0,e.checkMissingProp)(a,c,b)),(0,e.reportMissingProp)(a,b),o.else()}function h(){o.forOf("prop",l,b=>{a.setParams({missingProperty:b}),o.if((0,e.noPropertyInData)(o,u,b,m.ownProperties),()=>a.error())})}function y(b,x){a.setParams({missingProperty:b}),o.forOf(b,l,()=>{o.assign(x,(0,e.propertyInData)(o,u,b,m.ownProperties)),o.if((0,r.not)(x),()=>{a.error(),o.break()})},r.nil)}}};t.default=i}),ure=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),r={message({keyword:s,schemaCode:i}){let a=s==="maxItems"?"more":"fewer";return e.str`must NOT have ${a} than ${i} items`},params:({schemaCode:s})=>e._`{limit: ${s}}`},n={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:r,code(s){let{keyword:i,data:a,schemaCode:o}=s,c=i==="maxItems"?e.operators.GT:e.operators.LT;s.fail$data(e._`${a}.length ${c} ${o}`)}};t.default=n}),n0=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=FM();e.code='require("ajv/dist/runtime/equal").default',t.default=e}),pre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ym(),r=Te(),n=We(),s=n0(),i={message:({params:{i:o,j:c}})=>r.str`must NOT have duplicate items (items ## ${c} and ${o} are identical)`,params:({params:{i:o,j:c}})=>r._`{i: ${o}, j: ${c}}`},a={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:i,code(o){let{gen:c,data:l,$data:u,schema:p,parentSchema:d,schemaCode:m,it:f}=o;if(!u&&!p)return;let v=c.let("valid"),g=d.items?(0,e.getSchemaTypes)(d.items):[];o.block$data(v,h,r._`${m} === false`),o.ok(v);function h(){let w=c.let("i",r._`${l}.length`),S=c.let("j");o.setParams({i:w,j:S}),c.assign(v,!0),c.if(r._`${w} > 1`,()=>(y()?b:x)(w,S))}function y(){return g.length>0&&!g.some(w=>w==="object"||w==="array")}function b(w,S){let E=c.name("item"),k=(0,e.checkDataTypes)(g,E,f.opts.strictNumbers,e.DataType.Wrong),$=c.const("indices",r._`{}`);c.for(r._`;${w}--;`,()=>{c.let(E,r._`${l}[${w}]`),c.if(k,r._`continue`),g.length>1&&c.if(r._`typeof ${E} == "string"`,r._`${E} += "_"`),c.if(r._`typeof ${$}[${E}] == "number"`,()=>{c.assign(S,r._`${$}[${E}]`),o.error(),c.assign(v,!1).break()}).code(r._`${$}[${E}] = ${w}`)})}function x(w,S){let E=(0,n.useFunc)(c,s.default),k=c.name("outer");c.label(k).for(r._`;${w}--;`,()=>c.for(r._`${S} = ${w}; ${S}--;`,()=>c.if(r._`${E}(${l}[${w}], ${l}[${S}])`,()=>{o.error(),c.assign(v,!1).break(k)})))}}};t.default=a}),dre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),r=We(),n=n0(),s={message:"must be equal to constant",params:({schemaCode:a})=>e._`{allowedValue: ${a}}`},i={keyword:"const",$data:!0,error:s,code(a){let{gen:o,data:c,$data:l,schemaCode:u,schema:p}=a;l||p&&typeof p=="object"?a.fail$data(e._`!${(0,r.useFunc)(o,n.default)}(${c}, ${u})`):a.fail(e._`${p} !== ${c}`)}};t.default=i}),mre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),r=We(),n=n0(),s={message:"must be equal to one of the allowed values",params:({schemaCode:a})=>e._`{allowedValues: ${a}}`},i={keyword:"enum",schemaType:"array",$data:!0,error:s,code(a){let{gen:o,data:c,$data:l,schema:u,schemaCode:p,it:d}=a;if(!l&&u.length===0)throw Error("enum must have non-empty array");let m=u.length>=d.opts.loopEnum,f,v=()=>f??(f=(0,r.useFunc)(o,n.default)),g;if(m||l)g=o.let("valid"),a.block$data(g,h);else{if(!Array.isArray(u))throw Error("ajv implementation error");let b=o.const("vSchema",p);g=(0,e.or)(...u.map((x,w)=>y(b,w)))}a.pass(g);function h(){o.assign(g,!1),o.forOf("v",p,b=>o.if(e._`${v()}(${c}, ${b})`,()=>o.assign(g,!0).break()))}function y(b,x){let w=u[x];return typeof w=="object"&&w!==null?e._`${v()}(${c}, ${b}[${x}])`:e._`${c} === ${w}`}}};t.default=i}),fre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=nre(),r=sre(),n=are(),s=ore(),i=cre(),a=lre(),o=ure(),c=pre(),l=dre(),u=mre(),p=[e.default,r.default,n.default,s.default,i.default,a.default,o.default,c.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},l.default,u.default];t.default=p}),UM=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.validateAdditionalItems=void 0;var e=Te(),r=We(),n={message:({params:{len:a}})=>e.str`must NOT have more than ${a} items`,params:({params:{len:a}})=>e._`{limit: ${a}}`},s={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:n,code(a){let{parentSchema:o,it:c}=a,{items:l}=o;if(!Array.isArray(l)){(0,r.checkStrictMode)(c,'"additionalItems" is ignored when "items" is not an array of schemas');return}i(a,l)}};function i(a,o){let{gen:c,schema:l,data:u,keyword:p,it:d}=a;d.items=!0;let m=c.const("len",e._`${u}.length`);if(l===!1)a.setParams({len:o.length}),a.pass(e._`${m} <= ${o.length}`);else if(typeof l=="object"&&!(0,r.alwaysValidSchema)(d,l)){let v=c.var("valid",e._`${m} <= ${o.length}`);c.if((0,e.not)(v),()=>f(v)),a.ok(v)}function f(v){c.forRange("i",o.length,m,g=>{a.subschema({keyword:p,dataProp:g,dataPropType:r.Type.Num},v),!d.allErrors&&c.if((0,e.not)(v),()=>c.break())})}}t.validateAdditionalItems=i,t.default=s}),HM=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.validateTuple=void 0;var e=Te(),r=We(),n=In(),s={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(a){let{schema:o,it:c}=a;if(Array.isArray(o))return i(a,"additionalItems",o);c.items=!0,!(0,r.alwaysValidSchema)(c,o)&&a.ok((0,n.validateArray)(a))}};function i(a,o,c=a.schema){let{gen:l,parentSchema:u,data:p,keyword:d,it:m}=a;g(u),m.opts.unevaluated&&c.length&&m.items!==!0&&(m.items=r.mergeEvaluated.items(l,c.length,m.items));let f=l.name("valid"),v=l.const("len",e._`${p}.length`);c.forEach((h,y)=>{(0,r.alwaysValidSchema)(m,h)||(l.if(e._`${v} > ${y}`,()=>a.subschema({keyword:d,schemaProp:y,dataProp:y},f)),a.ok(f))});function g(h){let{opts:y,errSchemaPath:b}=m,x=c.length,w=x===h.minItems&&(x===h.maxItems||h[o]===!1);if(y.strictTuples&&!w){let S=`"${d}" is ${x}-tuple, but minItems or maxItems/${o} are not specified or different at path "${b}"`;(0,r.checkStrictMode)(m,S,y.strictTuples)}}}t.validateTuple=i,t.default=s}),hre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=HM(),r={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:n=>(0,e.validateTuple)(n,"items")};t.default=r}),gre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),r=We(),n=In(),s=UM(),i={message:({params:{len:o}})=>e.str`must NOT have more than ${o} items`,params:({params:{len:o}})=>e._`{limit: ${o}}`},a={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:i,code(o){let{schema:c,parentSchema:l,it:u}=o,{prefixItems:p}=l;u.items=!0,!(0,r.alwaysValidSchema)(u,c)&&(p?(0,s.validateAdditionalItems)(o,p):o.ok((0,n.validateArray)(o)))}};t.default=a}),vre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),r=We(),n={message:({params:{min:i,max:a}})=>a===void 0?e.str`must contain at least ${i} valid item(s)`:e.str`must contain at least ${i} and no more than ${a} valid item(s)`,params:({params:{min:i,max:a}})=>a===void 0?e._`{minContains: ${i}}`:e._`{minContains: ${i}, maxContains: ${a}}`},s={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:n,code(i){let{gen:a,schema:o,parentSchema:c,data:l,it:u}=i,p,d,{minContains:m,maxContains:f}=c;u.opts.next?(p=m===void 0?1:m,d=f):p=1;let v=a.const("len",e._`${l}.length`);if(i.setParams({min:p,max:d}),d===void 0&&p===0){(0,r.checkStrictMode)(u,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(d!==void 0&&p>d){(0,r.checkStrictMode)(u,'"minContains" > "maxContains" is always invalid'),i.fail();return}if((0,r.alwaysValidSchema)(u,o)){let x=e._`${v} >= ${p}`;d!==void 0&&(x=e._`${x} && ${v} <= ${d}`),i.pass(x);return}u.items=!0;let g=a.name("valid");d===void 0&&p===1?y(g,()=>a.if(g,()=>a.break())):p===0?(a.let(g,!0),d!==void 0&&a.if(e._`${l}.length > 0`,h)):(a.let(g,!1),h()),i.result(g,()=>i.reset());function h(){let x=a.name("_valid"),w=a.let("count",0);y(x,()=>a.if(x,()=>b(w)))}function y(x,w){a.forRange("i",0,v,S=>{i.subschema({keyword:"contains",dataProp:S,dataPropType:r.Type.Num,compositeRule:!0},x),w()})}function b(x){a.code(e._`${x}++`),d===void 0?a.if(e._`${x} >= ${p}`,()=>a.assign(g,!0).break()):(a.if(e._`${x} > ${d}`,()=>a.assign(g,!1).break()),p===1?a.assign(g,!0):a.if(e._`${x} >= ${p}`,()=>a.assign(g,!0)))}}};t.default=s}),yre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.validateSchemaDeps=t.validatePropertyDeps=t.error=void 0;var e=Te(),r=We(),n=In();t.error={message:({params:{property:c,depsCount:l,deps:u}})=>{let p=l===1?"property":"properties";return e.str`must have ${p} ${u} when property ${c} is present`},params:({params:{property:c,depsCount:l,deps:u,missingProperty:p}})=>e._`{property: ${c}, + || ${$} === "boolean" || ${E} === null`).assign(j,s._`[${E}]`)}}}function m({gen:b,parentData:x,parentDataProperty:w},S){b.if(s._`${x} !== undefined`,()=>b.assign(s._`${x}[${w}]`,S))}function f(b,x,w,S=a.Correct){let E=S===a.Correct?s.operators.EQ:s.operators.NEQ,k;switch(b){case"null":return s._`${x} ${E} null`;case"array":k=s._`Array.isArray(${x})`;break;case"object":k=s._`${x} && typeof ${x} == "object" && !Array.isArray(${x})`;break;case"integer":k=$(s._`!(${x} % 1) && !isNaN(${x})`);break;case"number":k=$();break;default:return s._`typeof ${x} ${E} ${b}`}return S===a.Correct?k:(0,s.not)(k);function $(j=s.nil){return(0,s.and)(s._`typeof ${x} == "number"`,j,w?s._`isFinite(${x})`:s.nil)}}t.checkDataType=f;function v(b,x,w,S){if(b.length===1)return f(b[0],x,w,S);let E,k=(0,i.toHash)(b);if(k.array&&k.object){let $=s._`typeof ${x} != "object"`;E=k.null?$:s._`!${x} || ${$}`,delete k.null,delete k.array,delete k.object}else E=s.nil;k.number&&delete k.integer;for(let $ in k)E=(0,s.and)(E,f($,x,w,S));return E}t.checkDataTypes=v;var g={message:({schema:b})=>`must be ${b}`,params:({schema:b,schemaValue:x})=>typeof b=="string"?s._`{type: ${b}}`:s._`{type: ${x}}`};function h(b){let x=y(b);(0,n.reportError)(x,g)}t.reportTypeError=h;function y(b){let{gen:x,data:w,schema:S}=b,E=(0,i.schemaRefOrVal)(b,S,"type");return{gen:x,keyword:"type",data:w,schema:S.type,schemaCode:E,schemaValue:E,parentSchema:S,params:{},it:b}}}),Kte=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.assignDefaults=void 0;var e=Te(),r=We();function n(i,a){let{properties:o,items:c}=i.schema;if(a==="object"&&o)for(let l in o)s(i,l,o[l].default);else a==="array"&&Array.isArray(c)&&c.forEach((l,u)=>s(i,u,l.default))}t.assignDefaults=n;function s(i,a,o){let{gen:c,compositeRule:l,data:u,opts:p}=i;if(o===void 0)return;let d=e._`${u}${(0,e.getProperty)(a)}`;if(l){(0,r.checkStrictMode)(i,`default is ignored for: ${d}`);return}let m=e._`${d} === undefined`;p.useDefaults==="empty"&&(m=e._`${m} || ${d} === null || ${d} === ""`),c.if(m,e._`${d} = ${(0,e.stringify)(o)}`)}}),In=X(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=Te(),r=We(),n=Qs(),s=We();function i(b,x){let{gen:w,data:S,it:E}=b;w.if(p(w,S,x,E.opts.ownProperties),()=>{b.setParams({missingProperty:e._`${x}`},!0),b.error()})}t.checkReportMissingProp=i;function a({gen:b,data:x,it:{opts:w}},S,E){return(0,e.or)(...S.map(k=>(0,e.and)(p(b,x,k,w.ownProperties),e._`${E} = ${k}`)))}t.checkMissingProp=a;function o(b,x){b.setParams({missingProperty:x},!0),b.error()}t.reportMissingProp=o;function c(b){return b.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:e._`Object.prototype.hasOwnProperty`})}t.hasPropFunc=c;function l(b,x,w){return e._`${c(b)}.call(${x}, ${w})`}t.isOwnProperty=l;function u(b,x,w,S){let E=e._`${x}${(0,e.getProperty)(w)} !== undefined`;return S?e._`${E} && ${l(b,x,w)}`:E}t.propertyInData=u;function p(b,x,w,S){let E=e._`${x}${(0,e.getProperty)(w)} === undefined`;return S?(0,e.or)(E,(0,e.not)(l(b,x,w))):E}t.noPropertyInData=p;function d(b){return b?Object.keys(b).filter(x=>x!=="__proto__"):[]}t.allSchemaProperties=d;function m(b,x){return d(x).filter(w=>!(0,r.alwaysValidSchema)(b,x[w]))}t.schemaProperties=m;function f({schemaCode:b,data:x,it:{gen:w,topSchemaRef:S,schemaPath:E,errorPath:k},it:$},j,I,q){let H=q?e._`${b}, ${x}, ${S}${E}`:x,Z=[[n.default.instancePath,(0,e.strConcat)(n.default.instancePath,k)],[n.default.parentData,$.parentData],[n.default.parentDataProperty,$.parentDataProperty],[n.default.rootData,n.default.rootData]];$.opts.dynamicRef&&Z.push([n.default.dynamicAnchors,n.default.dynamicAnchors]);let W=e._`${H}, ${w.object(...Z)}`;return I!==e.nil?e._`${j}.call(${I}, ${W})`:e._`${j}(${W})`}t.callValidateCode=f;var v=e._`new RegExp`;function g({gen:b,it:{opts:x}},w){let S=x.unicodeRegExp?"u":"",{regExp:E}=x.code,k=E(w,S);return b.scopeValue("pattern",{key:k.toString(),ref:k,code:e._`${E.code==="new RegExp"?v:(0,s.useFunc)(b,E)}(${w}, ${S})`})}t.usePattern=g;function h(b){let{gen:x,data:w,keyword:S,it:E}=b,k=x.name("valid");if(E.allErrors){let j=x.let("valid",!0);return $(()=>x.assign(j,!1)),j}return x.var(k,!0),$(()=>x.break()),k;function $(j){let I=x.const("len",e._`${w}.length`);x.forRange("i",0,I,q=>{b.subschema({keyword:S,dataProp:q,dataPropType:r.Type.Num},k),x.if((0,e.not)(k),j)})}}t.validateArray=h;function y(b){let{gen:x,schema:w,keyword:S,it:E}=b;if(!Array.isArray(w))throw Error("ajv implementation error");if(w.some(j=>(0,r.alwaysValidSchema)(E,j))&&!E.opts.unevaluated)return;let k=x.let("valid",!1),$=x.name("_valid");x.block(()=>w.forEach((j,I)=>{let q=b.subschema({keyword:S,schemaProp:I,compositeRule:!0},$);x.assign(k,e._`${k} || ${$}`),!b.mergeValidEvaluated(q,$)&&x.if((0,e.not)(k))})),b.result(k,()=>b.reset(),()=>b.error(!0))}t.validateUnion=y}),Jte=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.validateKeywordUsage=t.validSchemaType=t.funcKeywordCode=t.macroKeywordCode=void 0;var e=Te(),r=Qs(),n=In(),s=af();function i(m,f){let{gen:v,keyword:g,schema:h,parentSchema:y,it:b}=m,x=f.macro.call(b.self,h,y,b),w=u(v,g,x);b.opts.validateSchema!==!1&&b.self.validateSchema(x,!0);let S=v.name("valid");m.subschema({schema:x,schemaPath:e.nil,errSchemaPath:`${b.errSchemaPath}/${g}`,topSchemaRef:w,compositeRule:!0},S),m.pass(S,()=>m.error(!0))}t.macroKeywordCode=i;function a(m,f){var v;let{gen:g,keyword:h,schema:y,parentSchema:b,$data:x,it:w}=m;l(w,f);let S=!x&&f.compile?f.compile.call(w.self,y,b,w):f.validate,E=u(g,h,S),k=g.let("valid");m.block$data(k,$),m.ok((v=f.valid)!==null&&v!==void 0?v:k);function $(){if(f.errors===!1)q(),f.modifying&&o(m),H(()=>m.error());else{let Z=f.async?j():I();f.modifying&&o(m),H(()=>c(m,Z))}}function j(){let Z=g.let("ruleErrs",null);return g.try(()=>q(e._`await `),W=>g.assign(k,!1).if(e._`${W} instanceof ${w.ValidationError}`,()=>g.assign(Z,e._`${W}.errors`),()=>g.throw(W))),Z}function I(){let Z=e._`${E}.errors`;return g.assign(Z,null),q(e.nil),Z}function q(Z=f.async?e._`await `:e.nil){let W=w.opts.passContext?r.default.this:r.default.self,we=!("compile"in f&&!x||f.schema===!1);g.assign(k,e._`${Z}${(0,n.callValidateCode)(m,E,W,we)}`,f.modifying)}function H(Z){var W;g.if((0,e.not)((W=f.valid)!==null&&W!==void 0?W:k),Z)}}t.funcKeywordCode=a;function o(m){let{gen:f,data:v,it:g}=m;f.if(g.parentData,()=>f.assign(v,e._`${g.parentData}[${g.parentDataProperty}]`))}function c(m,f){let{gen:v}=m;v.if(e._`Array.isArray(${f})`,()=>{v.assign(r.default.vErrors,e._`${r.default.vErrors} === null ? ${f} : ${r.default.vErrors}.concat(${f})`).assign(r.default.errors,e._`${r.default.vErrors}.length`),(0,s.extendErrors)(m)},()=>m.error())}function l({schemaEnv:m},f){if(f.async&&!m.$async)throw Error("async keyword in sync schema")}function u(m,f,v){if(v===void 0)throw Error(`keyword "${f}" failed to compile`);return m.scopeValue("keyword",typeof v=="function"?{ref:v}:{ref:v,code:(0,e.stringify)(v)})}function p(m,f,v=!1){return!f.length||f.some(g=>g==="array"?Array.isArray(m):g==="object"?m&&typeof m=="object"&&!Array.isArray(m):typeof m==g||v&&typeof m>"u")}t.validSchemaType=p;function d({schema:m,opts:f,self:v,errSchemaPath:g},h,y){if(Array.isArray(h.keyword)?!h.keyword.includes(y):h.keyword!==y)throw Error("ajv implementation error");let b=h.dependencies;if(b?.some(x=>!Object.prototype.hasOwnProperty.call(m,x)))throw Error(`parent schema must have dependencies of ${y}: ${b.join(",")}`);if(h.validateSchema&&!h.validateSchema(m[y])){let x=`keyword "${y}" value is invalid at path "${g}": `+v.errorsText(h.validateSchema.errors);if(f.validateSchema==="log")v.logger.error(x);else throw Error(x)}}t.validateKeywordUsage=d}),Qte=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.extendSubschemaMode=t.extendSubschemaData=t.getSubschema=void 0;var e=Te(),r=We();function n(a,{keyword:o,schemaProp:c,schema:l,schemaPath:u,errSchemaPath:p,topSchemaRef:d}){if(o!==void 0&&l!==void 0)throw Error('both "keyword" and "schema" passed, only one allowed');if(o!==void 0){let m=a.schema[o];return c===void 0?{schema:m,schemaPath:e._`${a.schemaPath}${(0,e.getProperty)(o)}`,errSchemaPath:`${a.errSchemaPath}/${o}`}:{schema:m[c],schemaPath:e._`${a.schemaPath}${(0,e.getProperty)(o)}${(0,e.getProperty)(c)}`,errSchemaPath:`${a.errSchemaPath}/${o}/${(0,r.escapeFragment)(c)}`}}if(l!==void 0){if(u===void 0||p===void 0||d===void 0)throw Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:l,schemaPath:u,topSchemaRef:d,errSchemaPath:p}}throw Error('either "keyword" or "schema" must be passed')}t.getSubschema=n;function s(a,o,{dataProp:c,dataPropType:l,data:u,dataTypes:p,propertyName:d}){if(u!==void 0&&c!==void 0)throw Error('both "data" and "dataProp" passed, only one allowed');let{gen:m}=o;if(c!==void 0){let{errorPath:v,dataPathArr:g,opts:h}=o,y=m.let("data",e._`${o.data}${(0,e.getProperty)(c)}`,!0);f(y),a.errorPath=e.str`${v}${(0,r.getErrorPath)(c,l,h.jsPropertySyntax)}`,a.parentDataProperty=e._`${c}`,a.dataPathArr=[...g,a.parentDataProperty]}if(u!==void 0){let v=u instanceof e.Name?u:m.let("data",u,!0);f(v),d!==void 0&&(a.propertyName=d)}p&&(a.dataTypes=p);function f(v){a.data=v,a.dataLevel=o.dataLevel+1,a.dataTypes=[],o.definedProperties=new Set,a.parentData=o.data,a.dataNames=[...o.dataNames,v]}}t.extendSubschemaData=s;function i(a,{jtdDiscriminator:o,jtdMetadata:c,compositeRule:l,createErrors:u,allErrors:p}){l!==void 0&&(a.compositeRule=l),u!==void 0&&(a.createErrors=u),p!==void 0&&(a.allErrors=p),a.jtdDiscriminator=o,a.jtdMetadata=c}t.extendSubschemaMode=i}),VM=X((t,e)=>{e.exports=function r(n,s){if(n===s)return!0;if(n&&s&&typeof n=="object"&&typeof s=="object"){if(n.constructor!==s.constructor)return!1;var i,a,o;if(Array.isArray(n)){if(i=n.length,i!=s.length)return!1;for(a=i;a--!==0;)if(!r(n[a],s[a]))return!1;return!0}if(n.constructor===RegExp)return n.source===s.source&&n.flags===s.flags;if(n.valueOf!==Object.prototype.valueOf)return n.valueOf()===s.valueOf();if(n.toString!==Object.prototype.toString)return n.toString()===s.toString();if(o=Object.keys(n),i=o.length,i!==Object.keys(s).length)return!1;for(a=i;a--!==0;)if(!Object.prototype.hasOwnProperty.call(s,o[a]))return!1;for(a=i;a--!==0;){var c=o[a];if(!r(n[c],s[c]))return!1}return!0}return n!==n&&s!==s}}),Xte=X((t,e)=>{var r=e.exports=function(i,a,o){typeof a=="function"&&(o=a,a={}),o=a.cb||o;var c=typeof o=="function"?o:o.pre||function(){},l=o.post||function(){};n(a,c,l,i,"",i)};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(i,a,o,c,l,u,p,d,m,f){if(c&&typeof c=="object"&&!Array.isArray(c)){a(c,l,u,p,d,m,f);for(var v in c){var g=c[v];if(Array.isArray(g)){if(v in r.arrayKeywords)for(var h=0;h{Object.defineProperty(t,"__esModule",{value:!0}),t.getSchemaRefs=t.resolveUrl=t.normalizeId=t._getFullPath=t.getFullPath=t.inlineRef=void 0;var e=We(),r=VM(),n=Xte(),s=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function i(g,h=!0){return typeof g=="boolean"?!0:h===!0?!o(g):h?c(g)<=h:!1}t.inlineRef=i;var a=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function o(g){for(let h in g){if(a.has(h))return!0;let y=g[h];if(Array.isArray(y)&&y.some(o)||typeof y=="object"&&o(y))return!0}return!1}function c(g){let h=0;for(let y in g){if(y==="$ref")return 1/0;if(h++,!s.has(y)&&(typeof g[y]=="object"&&(0,e.eachItem)(g[y],b=>h+=c(b)),h===1/0))return 1/0}return h}function l(g,h="",y){y!==!1&&(h=d(h));let b=g.parse(h);return u(g,b)}t.getFullPath=l;function u(g,h){return g.serialize(h).split("#")[0]+"#"}t._getFullPath=u;var p=/#\/?$/;function d(g){return g?g.replace(p,""):""}t.normalizeId=d;function m(g,h,y){return y=d(y),g.resolve(h,y)}t.resolveUrl=m;var f=/^[a-z_][-a-z0-9._]*$/i;function v(g,h){if(typeof g=="boolean")return{};let{schemaId:y,uriResolver:b}=this.opts,x=d(g[y]||h),w={"":x},S=l(b,x,!1),E={},k=new Set;return n(g,{allKeys:!0},(I,q,H,Z)=>{if(Z===void 0)return;let W=S+q,we=w[Z];typeof I[y]=="string"&&(we=et.call(this,I[y])),zt.call(this,I.$anchor),zt.call(this,I.$dynamicAnchor),w[q]=we;function et(Ce){let G=this.opts.uriResolver.resolve;if(Ce=d(we?G(we,Ce):Ce),k.has(Ce))throw j(Ce);k.add(Ce);let P=this.refs[Ce];return typeof P=="string"&&(P=this.refs[P]),typeof P=="object"?$(I,P.schema,Ce):Ce!==d(W)&&(Ce[0]==="#"?($(I,E[Ce],Ce),E[Ce]=I):this.refs[Ce]=W),Ce}function zt(Ce){if(typeof Ce=="string"){if(!f.test(Ce))throw Error(`invalid anchor "${Ce}"`);et.call(this,`#${Ce}`)}}}),E;function $(I,q,H){if(q!==void 0&&!r(I,q))throw j(H)}function j(I){return Error(`reference "${I}" resolves to more than one schema`)}}t.getSchemaRefs=v}),cf=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getData=t.KeywordCxt=t.validateFunctionCode=void 0;var e=Yte(),r=Jm(),n=ZM(),s=Jm(),i=Kte(),a=Jte(),o=Qte(),c=Te(),l=Qs(),u=of(),p=We(),d=af();function m(C){if(S(C)&&(k(C),w(C))){h(C);return}f(C,()=>(0,e.topBoolOrEmptySchema)(C))}t.validateFunctionCode=m;function f({gen:C,validateName:N,schema:B,schemaEnv:K,opts:le},Oe){le.code.es5?C.func(N,c._`${l.default.data}, ${l.default.valCxt}`,K.$async,()=>{C.code(c._`"use strict"; ${b(B,le)}`),g(C,le),C.code(Oe)}):C.func(N,c._`${l.default.data}, ${v(le)}`,K.$async,()=>C.code(b(B,le)).code(Oe))}function v(C){return c._`{${l.default.instancePath}="", ${l.default.parentData}, ${l.default.parentDataProperty}, ${l.default.rootData}=${l.default.data}${C.dynamicRef?c._`, ${l.default.dynamicAnchors}={}`:c.nil}}={}`}function g(C,N){C.if(l.default.valCxt,()=>{C.var(l.default.instancePath,c._`${l.default.valCxt}.${l.default.instancePath}`),C.var(l.default.parentData,c._`${l.default.valCxt}.${l.default.parentData}`),C.var(l.default.parentDataProperty,c._`${l.default.valCxt}.${l.default.parentDataProperty}`),C.var(l.default.rootData,c._`${l.default.valCxt}.${l.default.rootData}`),N.dynamicRef&&C.var(l.default.dynamicAnchors,c._`${l.default.valCxt}.${l.default.dynamicAnchors}`)},()=>{C.var(l.default.instancePath,c._`""`),C.var(l.default.parentData,c._`undefined`),C.var(l.default.parentDataProperty,c._`undefined`),C.var(l.default.rootData,l.default.data),N.dynamicRef&&C.var(l.default.dynamicAnchors,c._`{}`)})}function h(C){let{schema:N,opts:B,gen:K}=C;f(C,()=>{B.$comment&&N.$comment&&Z(C),I(C),K.let(l.default.vErrors,null),K.let(l.default.errors,0),B.unevaluated&&y(C),$(C),W(C)})}function y(C){let{gen:N,validateName:B}=C;C.evaluated=N.const("evaluated",c._`${B}.evaluated`),N.if(c._`${C.evaluated}.dynamicProps`,()=>N.assign(c._`${C.evaluated}.props`,c._`undefined`)),N.if(c._`${C.evaluated}.dynamicItems`,()=>N.assign(c._`${C.evaluated}.items`,c._`undefined`))}function b(C,N){let B=typeof C=="object"&&C[N.schemaId];return B&&(N.code.source||N.code.process)?c._`/*# sourceURL=${B} */`:c.nil}function x(C,N){if(S(C)&&(k(C),w(C))){E(C,N);return}(0,e.boolOrEmptySchema)(C,N)}function w({schema:C,self:N}){if(typeof C=="boolean")return!C;for(let B in C)if(N.RULES.all[B])return!0;return!1}function S(C){return typeof C.schema!="boolean"}function E(C,N){let{schema:B,gen:K,opts:le}=C;le.$comment&&B.$comment&&Z(C),q(C),H(C);let Oe=K.const("_errs",l.default.errors);$(C,Oe),K.var(N,c._`${Oe} === ${l.default.errors}`)}function k(C){(0,p.checkUnknownRules)(C),j(C)}function $(C,N){if(C.opts.jtd)return et(C,[],!1,N);let B=(0,r.getSchemaTypes)(C.schema),K=(0,r.coerceAndCheckDataType)(C,B);et(C,B,!K,N)}function j(C){let{schema:N,errSchemaPath:B,opts:K,self:le}=C;N.$ref&&K.ignoreKeywordsWithRef&&(0,p.schemaHasRulesButRef)(N,le.RULES)&&le.logger.warn(`$ref: keywords ignored in schema at path "${B}"`)}function I(C){let{schema:N,opts:B}=C;N.default!==void 0&&B.useDefaults&&B.strictSchema&&(0,p.checkStrictMode)(C,"default is ignored in the schema root")}function q(C){let N=C.schema[C.opts.schemaId];N&&(C.baseId=(0,u.resolveUrl)(C.opts.uriResolver,C.baseId,N))}function H(C){if(C.schema.$async&&!C.schemaEnv.$async)throw Error("async schema in sync schema")}function Z({gen:C,schemaEnv:N,schema:B,errSchemaPath:K,opts:le}){let Oe=B.$comment;if(le.$comment===!0)C.code(c._`${l.default.self}.logger.log(${Oe})`);else if(typeof le.$comment=="function"){let Zt=c.str`${K}/$comment`,pn=C.scopeValue("root",{ref:N.root});C.code(c._`${l.default.self}.opts.$comment(${Oe}, ${Zt}, ${pn}.schema)`)}}function W(C){let{gen:N,schemaEnv:B,validateName:K,ValidationError:le,opts:Oe}=C;B.$async?N.if(c._`${l.default.errors} === 0`,()=>N.return(l.default.data),()=>N.throw(c._`new ${le}(${l.default.vErrors})`)):(N.assign(c._`${K}.errors`,l.default.vErrors),Oe.unevaluated&&we(C),N.return(c._`${l.default.errors} === 0`))}function we({gen:C,evaluated:N,props:B,items:K}){B instanceof c.Name&&C.assign(c._`${N}.props`,B),K instanceof c.Name&&C.assign(c._`${N}.items`,K)}function et(C,N,B,K){let{gen:le,schema:Oe,data:Zt,allErrors:pn,opts:Er,self:kr}=C,{RULES:Vt}=kr;if(Oe.$ref&&(Er.ignoreKeywordsWithRef||!(0,p.schemaHasRulesButRef)(Oe,Vt))){le.block(()=>ce(C,"$ref",Vt.all.$ref.definition));return}Er.jtd||Ce(C,N),le.block(()=>{for(let Vr of Vt.rules)Gi(Vr);Gi(Vt.post)});function Gi(Vr){(0,n.shouldUseGroup)(Oe,Vr)&&(Vr.type?(le.if((0,s.checkDataType)(Vr.type,Zt,Er.strictNumbers)),zt(C,Vr),N.length===1&&N[0]===Vr.type&&B&&(le.else(),(0,s.reportTypeError)(C)),le.endIf()):zt(C,Vr),pn||le.if(c._`${l.default.errors} === ${K||0}`))}}function zt(C,N){let{gen:B,schema:K,opts:{useDefaults:le}}=C;le&&(0,i.assignDefaults)(C,N.type),B.block(()=>{for(let Oe of N.rules)(0,n.shouldUseRule)(K,Oe)&&ce(C,Oe.keyword,Oe.definition,N.type)})}function Ce(C,N){C.schemaEnv.meta||!C.opts.strictTypes||(G(C,N),!C.opts.allowUnionTypes&&P(C,N),U(C,C.dataTypes))}function G(C,N){if(N.length){if(!C.dataTypes.length){C.dataTypes=N;return}N.forEach(B=>{T(C.dataTypes,B)||F(C,`type "${B}" not allowed by context "${C.dataTypes.join(",")}"`)}),O(C,N)}}function P(C,N){N.length>1&&!(N.length===2&&N.includes("null"))&&F(C,"use allowUnionTypes to allow union type keyword")}function U(C,N){let B=C.self.RULES.all;for(let K in B){let le=B[K];if(typeof le=="object"&&(0,n.shouldUseRule)(C.schema,le)){let{type:Oe}=le.definition;Oe.length&&!Oe.some(Zt=>A(N,Zt))&&F(C,`missing type "${Oe.join(",")}" for keyword "${K}"`)}}}function A(C,N){return C.includes(N)||N==="number"&&C.includes("integer")}function T(C,N){return C.includes(N)||N==="integer"&&C.includes("number")}function O(C,N){let B=[];for(let K of C.dataTypes)T(N,K)?B.push(K):N.includes("integer")&&K==="number"&&B.push("integer");C.dataTypes=B}function F(C,N){let B=C.schemaEnv.baseId+C.errSchemaPath;N+=` at "${B}" (strictTypes)`,(0,p.checkStrictMode)(C,N,C.opts.strictTypes)}class se{constructor(N,B,K){if((0,a.validateKeywordUsage)(N,B,K),this.gen=N.gen,this.allErrors=N.allErrors,this.keyword=K,this.data=N.data,this.schema=N.schema[K],this.$data=B.$data&&N.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,p.schemaRefOrVal)(N,this.schema,K,this.$data),this.schemaType=B.schemaType,this.parentSchema=N.schema,this.params={},this.it=N,this.def=B,this.$data)this.schemaCode=N.gen.const("vSchema",Pt(this.$data,N));else if(this.schemaCode=this.schemaValue,!(0,a.validSchemaType)(this.schema,B.schemaType,B.allowUndefined))throw Error(`${K} value must be ${JSON.stringify(B.schemaType)}`);("code"in B?B.trackErrors:B.errors!==!1)&&(this.errsCount=N.gen.const("_errs",l.default.errors))}result(N,B,K){this.failResult((0,c.not)(N),B,K)}failResult(N,B,K){this.gen.if(N),K?K():this.error(),B?(this.gen.else(),B(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(N,B){this.failResult((0,c.not)(N),void 0,B)}fail(N){if(N===void 0){this.error(),!this.allErrors&&this.gen.if(!1);return}this.gen.if(N),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(N){if(!this.$data)return this.fail(N);let{schemaCode:B}=this;this.fail(c._`${B} !== undefined && (${(0,c.or)(this.invalid$data(),N)})`)}error(N,B,K){if(B){this.setParams(B),this._error(N,K),this.setParams({});return}this._error(N,K)}_error(N,B){(N?d.reportExtraError:d.reportError)(this,this.def.error,B)}$dataError(){(0,d.reportError)(this,this.def.$dataError||d.keyword$DataError)}reset(){if(this.errsCount===void 0)throw Error('add "trackErrors" to keyword definition');(0,d.resetErrorsCount)(this.gen,this.errsCount)}ok(N){this.allErrors||this.gen.if(N)}setParams(N,B){B?Object.assign(this.params,N):this.params=N}block$data(N,B,K=c.nil){this.gen.block(()=>{this.check$data(N,K),B()})}check$data(N=c.nil,B=c.nil){if(!this.$data)return;let{gen:K,schemaCode:le,schemaType:Oe,def:Zt}=this;K.if((0,c.or)(c._`${le} === undefined`,B)),N!==c.nil&&K.assign(N,!0),(Oe.length||Zt.validateSchema)&&(K.elseIf(this.invalid$data()),this.$dataError(),N!==c.nil&&K.assign(N,!1)),K.else()}invalid$data(){let{gen:N,schemaCode:B,schemaType:K,def:le,it:Oe}=this;return(0,c.or)(Zt(),pn());function Zt(){if(K.length){if(!(B instanceof c.Name))throw Error("ajv implementation error");let Er=Array.isArray(K)?K:[K];return c._`${(0,s.checkDataTypes)(Er,B,Oe.opts.strictNumbers,s.DataType.Wrong)}`}return c.nil}function pn(){if(le.validateSchema){let Er=N.scopeValue("validate$data",{ref:le.validateSchema});return c._`!${Er}(${B})`}return c.nil}}subschema(N,B){let K=(0,o.getSubschema)(this.it,N);(0,o.extendSubschemaData)(K,this.it,N),(0,o.extendSubschemaMode)(K,N);let le={...this.it,...K,items:void 0,props:void 0};return x(le,B),le}mergeEvaluated(N,B){let{it:K,gen:le}=this;K.opts.unevaluated&&(K.props!==!0&&N.props!==void 0&&(K.props=p.mergeEvaluated.props(le,N.props,K.props,B)),K.items!==!0&&N.items!==void 0&&(K.items=p.mergeEvaluated.items(le,N.items,K.items,B)))}mergeValidEvaluated(N,B){let{it:K,gen:le}=this;if(K.opts.unevaluated&&(K.props!==!0||K.items!==!0))return le.if(B,()=>this.mergeEvaluated(N,c.Name)),!0}}t.KeywordCxt=se;function ce(C,N,B,K){let le=new se(C,B,N);"code"in B?B.code(le,K):le.$data&&B.validate?(0,a.funcKeywordCode)(le,B):"macro"in B?(0,a.macroKeywordCode)(le,B):(B.compile||B.validate)&&(0,a.funcKeywordCode)(le,B)}var Ze=/^\/(?:[^~]|~0|~1)*$/,Le=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function Pt(C,{dataLevel:N,dataNames:B,dataPathArr:K}){let le,Oe;if(C==="")return l.default.rootData;if(C[0]==="/"){if(!Ze.test(C))throw Error(`Invalid JSON-pointer: ${C}`);le=C,Oe=l.default.rootData}else{let kr=Le.exec(C);if(!kr)throw Error(`Invalid JSON-pointer: ${C}`);let Vt=+kr[1];if(le=kr[2],le==="#"){if(Vt>=N)throw Error(Er("property/index",Vt));return K[N-Vt]}if(Vt>N)throw Error(Er("data",Vt));if(Oe=B[N-Vt],!le)return Oe}let Zt=Oe,pn=le.split("/");for(let kr of pn)kr&&(Oe=c._`${Oe}${(0,c.getProperty)((0,p.unescapeJsonPointer)(kr))}`,Zt=c._`${Zt} && ${Oe}`);return Zt;function Er(kr,Vt){return`Cannot access ${kr} ${Vt} levels up, current level is ${N}`}}t.getData=Pt}),i0=X(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}),lf=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=of();class r extends Error{constructor(s,i,a,o){super(o||`can't resolve reference ${a} from id ${i}`),this.missingRef=(0,e.resolveUrl)(s,i,a),this.missingSchema=(0,e.normalizeId)((0,e.getFullPath)(s,this.missingRef))}}t.default=r}),a0=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.resolveSchema=t.getCompilingSchema=t.resolveRef=t.compileSchema=t.SchemaEnv=void 0;var e=Te(),r=i0(),n=Qs(),s=of(),i=We(),a=cf();class o{constructor(y){var b;this.refs={},this.dynamicAnchors={};let x;typeof y.schema=="object"&&(x=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,s.normalizeId)(x?.[y.schemaId||"$id"]),this.schemaPath=y.schemaPath,this.localRefs=y.localRefs,this.meta=y.meta,this.$async=x?.$async,this.refs={}}}t.SchemaEnv=o;function c(h){let y=p.call(this,h);if(y)return y;let b=(0,s.getFullPath)(this.opts.uriResolver,h.root.baseId),{es5:x,lines:w}=this.opts.code,{ownProperties:S}=this.opts,E=new e.CodeGen(this.scope,{es5:x,lines:w,ownProperties:S}),k;h.$async&&(k=E.scopeValue("Error",{ref:r.default,code:e._`require("ajv/dist/runtime/validation_error").default`}));let $=E.scopeName("validate");h.validateName=$;let j={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:h.schema,code:(0,e.stringify)(h.schema)}:{ref:h.schema}),validateName:$,ValidationError:k,schema:h.schema,schemaEnv:h,rootId:b,baseId:h.baseId||b,schemaPath:e.nil,errSchemaPath:h.schemaPath||(this.opts.jtd?"":"#"),errorPath:e._`""`,opts:this.opts,self:this},I;try{this._compilations.add(h),(0,a.validateFunctionCode)(j),E.optimize(this.opts.code.optimize);let q=E.toString();I=`${E.scopeRefs(n.default.scope)}return ${q}`,this.opts.code.process&&(I=this.opts.code.process(I,h));let H=Function(`${n.default.self}`,`${n.default.scope}`,I)(this,this.scope.get());if(this.scope.value($,{ref:H}),H.errors=null,H.schema=h.schema,H.schemaEnv=h,h.$async&&(H.$async=!0),this.opts.code.source===!0&&(H.source={validateName:$,validateCode:q,scopeValues:E._values}),this.opts.unevaluated){let{props:Z,items:W}=j;H.evaluated={props:Z instanceof e.Name?void 0:Z,items:W instanceof e.Name?void 0:W,dynamicProps:Z instanceof e.Name,dynamicItems:W instanceof e.Name},H.source&&(H.source.evaluated=(0,e.stringify)(H.evaluated))}return h.validate=H,h}catch(q){throw delete h.validate,delete h.validateName,I&&this.logger.error("Error compiling schema, function code:",I),q}finally{this._compilations.delete(h)}}t.compileSchema=c;function l(h,y,b){var x;b=(0,s.resolveUrl)(this.opts.uriResolver,y,b);let w=h.refs[b];if(w)return w;let S=m.call(this,h,b);if(S===void 0){let E=(x=h.localRefs)===null||x===void 0?void 0:x[b],{schemaId:k}=this.opts;E&&(S=new o({schema:E,schemaId:k,root:h,baseId:y}))}if(S!==void 0)return h.refs[b]=u.call(this,S)}t.resolveRef=l;function u(h){return(0,s.inlineRef)(h.schema,this.opts.inlineRefs)?h.schema:h.validate?h:c.call(this,h)}function p(h){for(let y of this._compilations)if(d(y,h))return y}t.getCompilingSchema=p;function d(h,y){return h.schema===y.schema&&h.root===y.root&&h.baseId===y.baseId}function m(h,y){let b;for(;typeof(b=this.refs[y])=="string";)y=b;return b||this.schemas[y]||f.call(this,h,y)}function f(h,y){let b=this.opts.uriResolver.parse(y),x=(0,s._getFullPath)(this.opts.uriResolver,b),w=(0,s.getFullPath)(this.opts.uriResolver,h.baseId,void 0);if(Object.keys(h.schema).length>0&&x===w)return g.call(this,b,h);let S=(0,s.normalizeId)(x),E=this.refs[S]||this.schemas[S];if(typeof E=="string"){let k=f.call(this,h,E);return typeof k?.schema!="object"?void 0:g.call(this,b,k)}if(typeof E?.schema=="object"){if(E.validate||c.call(this,E),S===(0,s.normalizeId)(y)){let{schema:k}=E,{schemaId:$}=this.opts,j=k[$];return j&&(w=(0,s.resolveUrl)(this.opts.uriResolver,w,j)),new o({schema:k,schemaId:$,root:h,baseId:w})}return g.call(this,b,E)}}t.resolveSchema=f;var v=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function g(h,{baseId:y,schema:b,root:x}){var w;if(((w=h.fragment)===null||w===void 0?void 0:w[0])!=="/")return;for(let k of h.fragment.slice(1).split("/")){if(typeof b=="boolean")return;let $=b[(0,i.unescapeFragment)(k)];if($===void 0)return;b=$;let j=typeof b=="object"&&b[this.opts.schemaId];!v.has(k)&&j&&(y=(0,s.resolveUrl)(this.opts.uriResolver,y,j))}let S;if(typeof b!="boolean"&&b.$ref&&!(0,i.schemaHasRulesButRef)(b,this.RULES)){let k=(0,s.resolveUrl)(this.opts.uriResolver,y,b.$ref);S=f.call(this,x,k)}let{schemaId:E}=this.opts;if(S=S||new o({schema:b,schemaId:E,root:x,baseId:y}),S.schema!==S.root.schema)return S}}),ere=X((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}}),tre=X((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}}),rre=X((t,e)=>{var{HEX:r}=tre(),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 s(h){if(l(h,".")<3)return{host:h,isIPV4:!1};let y=h.match(n)||[],[b]=y;return b?{host:c(b,"."),isIPV4:!0}:{host:h,isIPV4:!1}}function i(h,y=!1){let b="",x=!0;for(let w of h){if(r[w]===void 0)return;w!=="0"&&x===!0&&(x=!1),x||(b+=w)}return y&&b.length===0&&(b="0"),b}function a(h){let y=0,b={error:!1,address:"",zone:""},x=[],w=[],S=!1,E=!1,k=!1;function $(){if(w.length){if(S===!1){let j=i(w);if(j!==void 0)x.push(j);else return b.error=!0,!1}w.length=0}return!0}for(let j=0;j7){b.error=!0;break}j-1>=0&&h[j-1]===":"&&(E=!0);continue}else if(I==="%"){if(!$())break;S=!0}else{w.push(I);continue}}return w.length&&(S?b.zone=w.join(""):k?x.push(w.join("")):x.push(i(w))),b.address=x.join(""),b}function o(h){if(l(h,":")<2)return{host:h,isIPV6:!1};let y=a(h);if(y.error)return{host:h,isIPV6:!1};{let{address:b,address:x}=y;return y.zone&&(b+="%"+y.zone,x+="%25"+y.zone),{host:b,escapedHost:x,isIPV6:!0}}}function c(h,y){let b="",x=!0,w=h.length;for(let S=0;S{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 s(x){return typeof x.secure=="boolean"?x.secure:String(x.scheme).toLowerCase()==="wss"}function i(x){return x.host||(x.error=x.error||"HTTP URIs must have a host."),x}function a(x){let w=String(x.scheme).toLowerCase()==="https";return(x.port===(w?443:80)||x.port==="")&&(x.port=void 0),x.path||(x.path="/"),x}function o(x){return x.secure=s(x),x.resourceName=(x.path||"/")+(x.query?"?"+x.query:""),x.path=void 0,x.query=void 0,x}function c(x){if((x.port===(s(x)?443:80)||x.port==="")&&(x.port=void 0),typeof x.secure=="boolean"&&(x.scheme=x.secure?"wss":"ws",x.secure=void 0),x.resourceName){let[w,S]=x.resourceName.split("?");x.path=w&&w!=="/"?w:void 0,x.query=S,x.resourceName=void 0}return x.fragment=void 0,x}function l(x,w){if(!x.path)return x.error="URN can not be parsed",x;let S=x.path.match(n);if(S){let E=w.scheme||x.scheme||"urn";x.nid=S[1].toLowerCase(),x.nss=S[2];let k=`${E}:${w.nid||x.nid}`,$=b[k];x.path=void 0,$&&(x=$.parse(x,w))}else x.error=x.error||"URN can not be parsed.";return x}function u(x,w){let S=w.scheme||x.scheme||"urn",E=x.nid.toLowerCase(),k=`${S}:${w.nid||E}`,$=b[k];$&&(x=$.serialize(x,w));let j=x,I=x.nss;return j.path=`${E||w.nid}:${I}`,w.skipEscape=!0,j}function p(x,w){let S=x;return S.uuid=S.nss,S.nss=void 0,!w.tolerant&&(!S.uuid||!r.test(S.uuid))&&(S.error=S.error||"UUID is not valid."),S}function d(x){let w=x;return w.nss=(x.uuid||"").toLowerCase(),w}var m={scheme:"http",domainHost:!0,parse:i,serialize:a},f={scheme:"https",domainHost:m.domainHost,parse:i,serialize:a},v={scheme:"ws",domainHost:!0,parse:o,serialize:c},g={scheme:"wss",domainHost:v.domainHost,parse:v.parse,serialize:v.serialize},h={scheme:"urn",parse:l,serialize:u,skipNormalize:!0},y={scheme:"urn:uuid",parse:p,serialize:d,skipNormalize:!0},b={http:m,https:f,ws:v,wss:g,urn:h,"urn:uuid":y};e.exports=b}),sre=X((t,e)=>{var{normalizeIPv6:r,normalizeIPv4:n,removeDotSegments:s,recomposeAuthority:i,normalizeComponentEncoding:a}=rre(),o=nre();function c(y,b){return typeof y=="string"?y=d(g(y,b),b):typeof y=="object"&&(y=g(d(y,b),b)),y}function l(y,b,x){let w=Object.assign({scheme:"null"},x),S=u(g(y,w),g(b,w),w,!0);return d(S,{...w,skipEscape:!0})}function u(y,b,x,w){let S={};return w||(y=g(d(y,x),x),b=g(d(b,x),x)),x=x||{},!x.tolerant&&b.scheme?(S.scheme=b.scheme,S.userinfo=b.userinfo,S.host=b.host,S.port=b.port,S.path=s(b.path||""),S.query=b.query):(b.userinfo!==void 0||b.host!==void 0||b.port!==void 0?(S.userinfo=b.userinfo,S.host=b.host,S.port=b.port,S.path=s(b.path||""),S.query=b.query):(b.path?(b.path.charAt(0)==="/"?S.path=s(b.path):((y.userinfo!==void 0||y.host!==void 0||y.port!==void 0)&&!y.path?S.path="/"+b.path:y.path?S.path=y.path.slice(0,y.path.lastIndexOf("/")+1)+b.path:S.path=b.path,S.path=s(S.path)),S.query=b.query):(S.path=y.path,b.query!==void 0?S.query=b.query:S.query=y.query),S.userinfo=y.userinfo,S.host=y.host,S.port=y.port),S.scheme=y.scheme),S.fragment=b.fragment,S}function p(y,b,x){return typeof y=="string"?(y=unescape(y),y=d(a(g(y,x),!0),{...x,skipEscape:!0})):typeof y=="object"&&(y=d(a(y,!0),{...x,skipEscape:!0})),typeof b=="string"?(b=unescape(b),b=d(a(g(b,x),!0),{...x,skipEscape:!0})):typeof b=="object"&&(b=d(a(b,!0),{...x,skipEscape:!0})),y.toLowerCase()===b.toLowerCase()}function d(y,b){let x={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:""},w=Object.assign({},b),S=[],E=o[(w.scheme||x.scheme||"").toLowerCase()];E&&E.serialize&&E.serialize(x,w),x.path!==void 0&&(w.skipEscape?x.path=unescape(x.path):(x.path=escape(x.path),x.scheme!==void 0&&(x.path=x.path.split("%3A").join(":")))),w.reference!=="suffix"&&x.scheme&&S.push(x.scheme,":");let k=i(x);if(k!==void 0&&(w.reference!=="suffix"&&S.push("//"),S.push(k),x.path&&x.path.charAt(0)!=="/"&&S.push("/")),x.path!==void 0){let $=x.path;!w.absolutePath&&(!E||!E.absolutePath)&&($=s($)),k===void 0&&($=$.replace(/^\/\//u,"/%2F")),S.push($)}return x.query!==void 0&&S.push("?",x.query),x.fragment!==void 0&&S.push("#",x.fragment),S.join("")}var m=Array.from({length:127},(y,b)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(b)));function f(y){let b=0;for(let x=0,w=y.length;x126||m[b])return!0;return!1}var v=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function g(y,b){let x=Object.assign({},b),w={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},S=y.indexOf("%")!==-1,E=!1;x.reference==="suffix"&&(y=(x.scheme?x.scheme+":":"")+"//"+y);let k=y.match(v);if(k){if(w.scheme=k[1],w.userinfo=k[3],w.host=k[4],w.port=parseInt(k[5],10),w.path=k[6]||"",w.query=k[7],w.fragment=k[8],isNaN(w.port)&&(w.port=k[5]),w.host){let j=n(w.host);if(j.isIPV4===!1){let I=r(j.host);w.host=I.host.toLowerCase(),E=I.isIPV6}else w.host=j.host,E=!0}w.scheme===void 0&&w.userinfo===void 0&&w.host===void 0&&w.port===void 0&&w.query===void 0&&!w.path?w.reference="same-document":w.scheme===void 0?w.reference="relative":w.fragment===void 0?w.reference="absolute":w.reference="uri",x.reference&&x.reference!=="suffix"&&x.reference!==w.reference&&(w.error=w.error||"URI is not a "+x.reference+" reference.");let $=o[(x.scheme||w.scheme||"").toLowerCase()];if(!x.unicodeSupport&&(!$||!$.unicodeSupport)&&w.host&&(x.domainHost||$&&$.domainHost)&&E===!1&&f(w.host))try{w.host=URL.domainToASCII(w.host.toLowerCase())}catch(j){w.error=w.error||"Host's domain name can not be converted to ASCII: "+j}(!$||$&&!$.skipNormalize)&&(S&&w.scheme!==void 0&&(w.scheme=unescape(w.scheme)),S&&w.host!==void 0&&(w.host=unescape(w.host)),w.path&&(w.path=escape(unescape(w.path))),w.fragment&&(w.fragment=encodeURI(decodeURIComponent(w.fragment)))),$&&$.parse&&$.parse(w,x)}else w.error=w.error||"URI can not be parsed.";return w}var h={SCHEMES:o,normalize:c,resolve:l,resolveComponents:u,equal:p,serialize:d,parse:g};e.exports=h,e.exports.default=h,e.exports.fastUri=h}),ire=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=sre();e.code='require("ajv/dist/runtime/uri").default',t.default=e}),are=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CodeGen=t.Name=t.nil=t.stringify=t.str=t._=t.KeywordCxt=void 0;var e=cf();Object.defineProperty(t,"KeywordCxt",{enumerable:!0,get:function(){return e.KeywordCxt}});var r=Te();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=i0(),s=lf(),i=WM(),a=a0(),o=Te(),c=of(),l=Jm(),u=We(),p=ere(),d=ire(),m=(G,P)=>new RegExp(G,P);m.code="new RegExp";var f=["removeAdditional","useDefaults","coerceTypes"],v=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."},h={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},y=200;function b(G){var P,U,A,T,O,F,se,ce,Ze,Le,Pt,C,N,B,K,le,Oe,Zt,pn,Er,kr,Vt,Gi,Vr,vh;let Wo=G.strict,yh=(P=G.code)===null||P===void 0?void 0:P.optimize,cw=yh===!0||yh===void 0?1:yh||0,lw=(A=(U=G.code)===null||U===void 0?void 0:U.regExp)!==null&&A!==void 0?A:m,eq=(T=G.uriResolver)!==null&&T!==void 0?T:d.default;return{strictSchema:(F=(O=G.strictSchema)!==null&&O!==void 0?O:Wo)!==null&&F!==void 0?F:!0,strictNumbers:(ce=(se=G.strictNumbers)!==null&&se!==void 0?se:Wo)!==null&&ce!==void 0?ce:!0,strictTypes:(Le=(Ze=G.strictTypes)!==null&&Ze!==void 0?Ze:Wo)!==null&&Le!==void 0?Le:"log",strictTuples:(C=(Pt=G.strictTuples)!==null&&Pt!==void 0?Pt:Wo)!==null&&C!==void 0?C:"log",strictRequired:(B=(N=G.strictRequired)!==null&&N!==void 0?N:Wo)!==null&&B!==void 0?B:!1,code:G.code?{...G.code,optimize:cw,regExp:lw}:{optimize:cw,regExp:lw},loopRequired:(K=G.loopRequired)!==null&&K!==void 0?K:y,loopEnum:(le=G.loopEnum)!==null&&le!==void 0?le:y,meta:(Oe=G.meta)!==null&&Oe!==void 0?Oe:!0,messages:(Zt=G.messages)!==null&&Zt!==void 0?Zt:!0,inlineRefs:(pn=G.inlineRefs)!==null&&pn!==void 0?pn:!0,schemaId:(Er=G.schemaId)!==null&&Er!==void 0?Er:"$id",addUsedSchema:(kr=G.addUsedSchema)!==null&&kr!==void 0?kr:!0,validateSchema:(Vt=G.validateSchema)!==null&&Vt!==void 0?Vt:!0,validateFormats:(Gi=G.validateFormats)!==null&&Gi!==void 0?Gi:!0,unicodeRegExp:(Vr=G.unicodeRegExp)!==null&&Vr!==void 0?Vr:!0,int32range:(vh=G.int32range)!==null&&vh!==void 0?vh:!0,uriResolver:eq}}class x{constructor(P={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,P=this.opts={...P,...b(P)};let{es5:U,lines:A}=this.opts.code;this.scope=new o.ValueScope({scope:{},prefixes:v,es5:U,lines:A}),this.logger=q(P.logger);let T=P.validateFormats;P.validateFormats=!1,this.RULES=(0,i.getRules)(),w.call(this,g,P,"NOT SUPPORTED"),w.call(this,h,P,"DEPRECATED","warn"),this._metaOpts=j.call(this),P.formats&&k.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),P.keywords&&$.call(this,P.keywords),typeof P.meta=="object"&&this.addMetaSchema(P.meta),E.call(this),P.validateFormats=T}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:P,meta:U,schemaId:A}=this.opts,T=p;A==="id"&&(T={...p},T.id=T.$id,delete T.$id),U&&P&&this.addMetaSchema(T,T[A],!1)}defaultMeta(){let{meta:P,schemaId:U}=this.opts;return this.opts.defaultMeta=typeof P=="object"?P[U]||P:void 0}validate(P,U){let A;if(typeof P=="string"){if(A=this.getSchema(P),!A)throw Error(`no schema with key or ref "${P}"`)}else A=this.compile(P);let T=A(U);return"$async"in A||(this.errors=A.errors),T}compile(P,U){let A=this._addSchema(P,U);return A.validate||this._compileSchemaEnv(A)}compileAsync(P,U){if(typeof this.opts.loadSchema!="function")throw Error("options.loadSchema should be a function");let{loadSchema:A}=this.opts;return T.call(this,P,U);async function T(Le,Pt){await O.call(this,Le.$schema);let C=this._addSchema(Le,Pt);return C.validate||F.call(this,C)}async function O(Le){Le&&!this.getSchema(Le)&&await T.call(this,{$ref:Le},!0)}async function F(Le){try{return this._compileSchemaEnv(Le)}catch(Pt){if(!(Pt instanceof s.default))throw Pt;return se.call(this,Pt),await ce.call(this,Pt.missingSchema),F.call(this,Le)}}function se({missingSchema:Le,missingRef:Pt}){if(this.refs[Le])throw Error(`AnySchema ${Le} is loaded but ${Pt} cannot be resolved`)}async function ce(Le){let Pt=await Ze.call(this,Le);this.refs[Le]||await O.call(this,Pt.$schema),this.refs[Le]||this.addSchema(Pt,Le,U)}async function Ze(Le){let Pt=this._loading[Le];if(Pt)return Pt;try{return await(this._loading[Le]=A(Le))}finally{delete this._loading[Le]}}}addSchema(P,U,A,T=this.opts.validateSchema){if(Array.isArray(P)){for(let F of P)this.addSchema(F,void 0,A,T);return this}let O;if(typeof P=="object"){let{schemaId:F}=this.opts;if(O=P[F],O!==void 0&&typeof O!="string")throw Error(`schema ${F} must be string`)}return U=(0,c.normalizeId)(U||O),this._checkUnique(U),this.schemas[U]=this._addSchema(P,A,U,T,!0),this}addMetaSchema(P,U,A=this.opts.validateSchema){return this.addSchema(P,U,!0,A),this}validateSchema(P,U){if(typeof P=="boolean")return!0;let A;if(A=P.$schema,A!==void 0&&typeof A!="string")throw Error("$schema must be a string");if(A=A||this.opts.defaultMeta||this.defaultMeta(),!A)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let T=this.validate(A,P);if(!T&&U){let O="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(O);else throw Error(O)}return T}getSchema(P){let U;for(;typeof(U=S.call(this,P))=="string";)P=U;if(U===void 0){let{schemaId:A}=this.opts,T=new a.SchemaEnv({schema:{},schemaId:A});if(U=a.resolveSchema.call(this,T,P),!U)return;this.refs[P]=U}return U.validate||this._compileSchemaEnv(U)}removeSchema(P){if(P instanceof RegExp)return this._removeAllSchemas(this.schemas,P),this._removeAllSchemas(this.refs,P),this;switch(typeof P){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let U=S.call(this,P);return typeof U=="object"&&this._cache.delete(U.schema),delete this.schemas[P],delete this.refs[P],this}case"object":{let U=P;this._cache.delete(U);let A=P[this.opts.schemaId];return A&&(A=(0,c.normalizeId)(A),delete this.schemas[A],delete this.refs[A]),this}default:throw Error("ajv.removeSchema: invalid parameter")}}addVocabulary(P){for(let U of P)this.addKeyword(U);return this}addKeyword(P,U){let A;if(typeof P=="string")A=P,typeof U=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),U.keyword=A);else if(typeof P=="object"&&U===void 0){if(U=P,A=U.keyword,Array.isArray(A)&&!A.length)throw Error("addKeywords: keyword must be string or non-empty array")}else throw Error("invalid addKeywords parameters");if(Z.call(this,A,U),!U)return(0,u.eachItem)(A,O=>W.call(this,O)),this;et.call(this,U);let T={...U,type:(0,l.getJSONTypes)(U.type),schemaType:(0,l.getJSONTypes)(U.schemaType)};return(0,u.eachItem)(A,T.type.length===0?O=>W.call(this,O,T):O=>T.type.forEach(F=>W.call(this,O,T,F))),this}getKeyword(P){let U=this.RULES.all[P];return typeof U=="object"?U.definition:!!U}removeKeyword(P){let{RULES:U}=this;delete U.keywords[P],delete U.all[P];for(let A of U.rules){let T=A.rules.findIndex(O=>O.keyword===P);T>=0&&A.rules.splice(T,1)}return this}addFormat(P,U){return typeof U=="string"&&(U=new RegExp(U)),this.formats[P]=U,this}errorsText(P=this.errors,{separator:U=", ",dataVar:A="data"}={}){return!P||P.length===0?"No errors":P.map(T=>`${A}${T.instancePath} ${T.message}`).reduce((T,O)=>T+U+O)}$dataMetaSchema(P,U){let A=this.RULES.all;P=JSON.parse(JSON.stringify(P));for(let T of U){let O=T.split("/").slice(1),F=P;for(let se of O)F=F[se];for(let se in A){let ce=A[se];if(typeof ce!="object")continue;let{$data:Ze}=ce.definition,Le=F[se];Ze&&Le&&(F[se]=Ce(Le))}}return P}_removeAllSchemas(P,U){for(let A in P){let T=P[A];(!U||U.test(A))&&(typeof T=="string"?delete P[A]:T&&!T.meta&&(this._cache.delete(T.schema),delete P[A]))}}_addSchema(P,U,A,T=this.opts.validateSchema,O=this.opts.addUsedSchema){let F,{schemaId:se}=this.opts;if(typeof P=="object")F=P[se];else{if(this.opts.jtd)throw Error("schema must be object");if(typeof P!="boolean")throw Error("schema must be object or boolean")}let ce=this._cache.get(P);if(ce!==void 0)return ce;A=(0,c.normalizeId)(F||A);let Ze=c.getSchemaRefs.call(this,P,A);return ce=new a.SchemaEnv({schema:P,schemaId:se,meta:U,baseId:A,localRefs:Ze}),this._cache.set(ce.schema,ce),O&&!A.startsWith("#")&&(A&&this._checkUnique(A),this.refs[A]=ce),T&&this.validateSchema(P,!0),ce}_checkUnique(P){if(this.schemas[P]||this.refs[P])throw Error(`schema with key or id "${P}" already exists`)}_compileSchemaEnv(P){if(P.meta?this._compileMetaSchema(P):a.compileSchema.call(this,P),!P.validate)throw Error("ajv implementation error");return P.validate}_compileMetaSchema(P){let U=this.opts;this.opts=this._metaOpts;try{a.compileSchema.call(this,P)}finally{this.opts=U}}}x.ValidationError=n.default,x.MissingRefError=s.default,t.default=x;function w(G,P,U,A="error"){for(let T in G){let O=T;O in P&&this.logger[A](`${U}: option ${T}. ${G[O]}`)}}function S(G){return G=(0,c.normalizeId)(G),this.schemas[G]||this.refs[G]}function E(){let G=this.opts.schemas;if(G)if(Array.isArray(G))this.addSchema(G);else for(let P in G)this.addSchema(G[P],P)}function k(){for(let G in this.opts.formats){let P=this.opts.formats[G];P&&this.addFormat(G,P)}}function $(G){if(Array.isArray(G)){this.addVocabulary(G);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let P in G){let U=G[P];U.keyword||(U.keyword=P),this.addKeyword(U)}}function j(){let G={...this.opts};for(let P of f)delete G[P];return G}var I={log(){},warn(){},error(){}};function q(G){if(G===!1)return I;if(G===void 0)return console;if(G.log&&G.warn&&G.error)return G;throw Error("logger must implement log, warn and error methods")}var H=/^[a-z_$][a-z0-9_$:-]*$/i;function Z(G,P){let{RULES:U}=this;if((0,u.eachItem)(G,A=>{if(U.keywords[A])throw Error(`Keyword ${A} is already defined`);if(!H.test(A))throw Error(`Keyword ${A} has invalid name`)}),!!P&&P.$data&&!("code"in P||"validate"in P))throw Error('$data keyword must have "code" or "validate" function')}function W(G,P,U){var A;let T=P?.post;if(U&&T)throw Error('keyword with "post" flag cannot have "type"');let{RULES:O}=this,F=T?O.post:O.rules.find(({type:ce})=>ce===U);if(F||(F={type:U,rules:[]},O.rules.push(F)),O.keywords[G]=!0,!P)return;let se={keyword:G,definition:{...P,type:(0,l.getJSONTypes)(P.type),schemaType:(0,l.getJSONTypes)(P.schemaType)}};P.before?we.call(this,F,se,P.before):F.rules.push(se),O.all[G]=se,(A=P.implements)===null||A===void 0||A.forEach(ce=>this.addKeyword(ce))}function we(G,P,U){let A=G.rules.findIndex(T=>T.keyword===U);A>=0?G.rules.splice(A,0,P):(G.rules.push(P),this.logger.warn(`rule ${U} is not defined`))}function et(G){let{metaSchema:P}=G;P!==void 0&&(G.$data&&this.opts.$data&&(P=Ce(P)),G.validateSchema=this.compile(P,!0))}var zt={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Ce(G){return{anyOf:[G,zt]}}}),ore=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e={keyword:"id",code(){throw Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};t.default=e}),cre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.callRef=t.getValidate=void 0;var e=lf(),r=In(),n=Te(),s=Qs(),i=a0(),a=We(),o={keyword:"$ref",schemaType:"string",code(u){let{gen:p,schema:d,it:m}=u,{baseId:f,schemaEnv:v,validateName:g,opts:h,self:y}=m,{root:b}=v;if((d==="#"||d==="#/")&&f===b.baseId)return w();let x=i.resolveRef.call(y,b,f,d);if(x===void 0)throw new e.default(m.opts.uriResolver,f,d);if(x instanceof i.SchemaEnv)return S(x);return E(x);function w(){if(v===b)return l(u,g,v,v.$async);let k=p.scopeValue("root",{ref:b});return l(u,n._`${k}.validate`,b,b.$async)}function S(k){let $=c(u,k);l(u,$,k,k.$async)}function E(k){let $=p.scopeValue("schema",h.code.source===!0?{ref:k,code:(0,n.stringify)(k)}:{ref:k}),j=p.name("valid"),I=u.subschema({schema:k,dataTypes:[],schemaPath:n.nil,topSchemaRef:$,errSchemaPath:d},j);u.mergeEvaluated(I),u.ok(j)}}};function c(u,p){let{gen:d}=u;return p.validate?d.scopeValue("validate",{ref:p.validate}):n._`${d.scopeValue("wrapper",{ref:p})}.validate`}t.getValidate=c;function l(u,p,d,m){let{gen:f,it:v}=u,{allErrors:g,schemaEnv:h,opts:y}=v,b=y.passContext?s.default.this:n.nil;m?x():w();function x(){if(!h.$async)throw Error("async schema referenced by sync schema");let k=f.let("valid");f.try(()=>{f.code(n._`await ${(0,r.callValidateCode)(u,p,b)}`),E(p),!g&&f.assign(k,!0)},$=>{f.if(n._`!(${$} instanceof ${v.ValidationError})`,()=>f.throw($)),S($),!g&&f.assign(k,!1)}),u.ok(k)}function w(){u.result((0,r.callValidateCode)(u,p,b),()=>E(p),()=>S(p))}function S(k){let $=n._`${k}.errors`;f.assign(s.default.vErrors,n._`${s.default.vErrors} === null ? ${$} : ${s.default.vErrors}.concat(${$})`),f.assign(s.default.errors,n._`${s.default.vErrors}.length`)}function E(k){var $;if(!v.opts.unevaluated)return;let j=($=d?.validate)===null||$===void 0?void 0:$.evaluated;if(v.props!==!0)if(j&&!j.dynamicProps)j.props!==void 0&&(v.props=a.mergeEvaluated.props(f,j.props,v.props));else{let I=f.var("props",n._`${k}.evaluated.props`);v.props=a.mergeEvaluated.props(f,I,v.props,n.Name)}if(v.items!==!0)if(j&&!j.dynamicItems)j.items!==void 0&&(v.items=a.mergeEvaluated.items(f,j.items,v.items));else{let I=f.var("items",n._`${k}.evaluated.items`);v.items=a.mergeEvaluated.items(f,I,v.items,n.Name)}}}t.callRef=l,t.default=o}),lre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=ore(),r=cre(),n=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",e.default,r.default];t.default=n}),ure=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),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}},s={message:({keyword:a,schemaCode:o})=>e.str`must be ${n[a].okStr} ${o}`,params:({keyword:a,schemaCode:o})=>e._`{comparison: ${n[a].okStr}, limit: ${o}}`},i={keyword:Object.keys(n),type:"number",schemaType:"number",$data:!0,error:s,code(a){let{keyword:o,data:c,schemaCode:l}=a;a.fail$data(e._`${c} ${n[o].fail} ${l} || isNaN(${c})`)}};t.default=i}),pre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),r={message:({schemaCode:s})=>e.str`must be multiple of ${s}`,params:({schemaCode:s})=>e._`{multipleOf: ${s}}`},n={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:r,code(s){let{gen:i,data:a,schemaCode:o,it:c}=s,l=c.opts.multipleOfPrecision,u=i.let("res"),p=l?e._`Math.abs(Math.round(${u}) - ${u}) > 1e-${l}`:e._`${u} !== parseInt(${u})`;s.fail$data(e._`(${o} === 0 || (${u} = ${a}/${o}, ${p}))`)}};t.default=n}),dre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});function e(r){let n=r.length,s=0,i=0,a;for(;i=55296&&a<=56319&&i{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),r=We(),n=dre(),s={message({keyword:a,schemaCode:o}){let c=a==="maxLength"?"more":"fewer";return e.str`must NOT have ${c} than ${o} characters`},params:({schemaCode:a})=>e._`{limit: ${a}}`},i={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:s,code(a){let{keyword:o,data:c,schemaCode:l,it:u}=a,p=o==="maxLength"?e.operators.GT:e.operators.LT,d=u.opts.unicode===!1?e._`${c}.length`:e._`${(0,r.useFunc)(a.gen,n.default)}(${c})`;a.fail$data(e._`${d} ${p} ${l}`)}};t.default=i}),fre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=In(),r=Te(),n={message:({schemaCode:i})=>r.str`must match pattern "${i}"`,params:({schemaCode:i})=>r._`{pattern: ${i}}`},s={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:n,code(i){let{data:a,$data:o,schema:c,schemaCode:l,it:u}=i,p=u.opts.unicodeRegExp?"u":"",d=o?r._`(new RegExp(${l}, ${p}))`:(0,e.usePattern)(i,c);i.fail$data(r._`!${d}.test(${a})`)}};t.default=s}),hre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),r={message({keyword:s,schemaCode:i}){let a=s==="maxProperties"?"more":"fewer";return e.str`must NOT have ${a} than ${i} properties`},params:({schemaCode:s})=>e._`{limit: ${s}}`},n={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:r,code(s){let{keyword:i,data:a,schemaCode:o}=s,c=i==="maxProperties"?e.operators.GT:e.operators.LT;s.fail$data(e._`Object.keys(${a}).length ${c} ${o}`)}};t.default=n}),gre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=In(),r=Te(),n=We(),s={message:({params:{missingProperty:a}})=>r.str`must have required property '${a}'`,params:({params:{missingProperty:a}})=>r._`{missingProperty: ${a}}`},i={keyword:"required",type:"object",schemaType:"array",$data:!0,error:s,code(a){let{gen:o,schema:c,schemaCode:l,data:u,$data:p,it:d}=a,{opts:m}=d;if(!p&&c.length===0)return;let f=c.length>=m.loopRequired;if(d.allErrors?v():g(),m.strictRequired){let b=a.parentSchema.properties,{definedProperties:x}=a.it;for(let w of c)if(b?.[w]===void 0&&!x.has(w)){let S=d.schemaEnv.baseId+d.errSchemaPath,E=`required property "${w}" is not defined at "${S}" (strictRequired)`;(0,n.checkStrictMode)(d,E,d.opts.strictRequired)}}function v(){if(f||p)a.block$data(r.nil,h);else for(let b of c)(0,e.checkReportMissingProp)(a,b)}function g(){let b=o.let("missing");if(f||p){let x=o.let("valid",!0);a.block$data(x,()=>y(b,x)),a.ok(x)}else o.if((0,e.checkMissingProp)(a,c,b)),(0,e.reportMissingProp)(a,b),o.else()}function h(){o.forOf("prop",l,b=>{a.setParams({missingProperty:b}),o.if((0,e.noPropertyInData)(o,u,b,m.ownProperties),()=>a.error())})}function y(b,x){a.setParams({missingProperty:b}),o.forOf(b,l,()=>{o.assign(x,(0,e.propertyInData)(o,u,b,m.ownProperties)),o.if((0,r.not)(x),()=>{a.error(),o.break()})},r.nil)}}};t.default=i}),vre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),r={message({keyword:s,schemaCode:i}){let a=s==="maxItems"?"more":"fewer";return e.str`must NOT have ${a} than ${i} items`},params:({schemaCode:s})=>e._`{limit: ${s}}`},n={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:r,code(s){let{keyword:i,data:a,schemaCode:o}=s,c=i==="maxItems"?e.operators.GT:e.operators.LT;s.fail$data(e._`${a}.length ${c} ${o}`)}};t.default=n}),o0=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=VM();e.code='require("ajv/dist/runtime/equal").default',t.default=e}),yre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Jm(),r=Te(),n=We(),s=o0(),i={message:({params:{i:o,j:c}})=>r.str`must NOT have duplicate items (items ## ${c} and ${o} are identical)`,params:({params:{i:o,j:c}})=>r._`{i: ${o}, j: ${c}}`},a={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:i,code(o){let{gen:c,data:l,$data:u,schema:p,parentSchema:d,schemaCode:m,it:f}=o;if(!u&&!p)return;let v=c.let("valid"),g=d.items?(0,e.getSchemaTypes)(d.items):[];o.block$data(v,h,r._`${m} === false`),o.ok(v);function h(){let w=c.let("i",r._`${l}.length`),S=c.let("j");o.setParams({i:w,j:S}),c.assign(v,!0),c.if(r._`${w} > 1`,()=>(y()?b:x)(w,S))}function y(){return g.length>0&&!g.some(w=>w==="object"||w==="array")}function b(w,S){let E=c.name("item"),k=(0,e.checkDataTypes)(g,E,f.opts.strictNumbers,e.DataType.Wrong),$=c.const("indices",r._`{}`);c.for(r._`;${w}--;`,()=>{c.let(E,r._`${l}[${w}]`),c.if(k,r._`continue`),g.length>1&&c.if(r._`typeof ${E} == "string"`,r._`${E} += "_"`),c.if(r._`typeof ${$}[${E}] == "number"`,()=>{c.assign(S,r._`${$}[${E}]`),o.error(),c.assign(v,!1).break()}).code(r._`${$}[${E}] = ${w}`)})}function x(w,S){let E=(0,n.useFunc)(c,s.default),k=c.name("outer");c.label(k).for(r._`;${w}--;`,()=>c.for(r._`${S} = ${w}; ${S}--;`,()=>c.if(r._`${E}(${l}[${w}], ${l}[${S}])`,()=>{o.error(),c.assign(v,!1).break(k)})))}}};t.default=a}),bre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),r=We(),n=o0(),s={message:"must be equal to constant",params:({schemaCode:a})=>e._`{allowedValue: ${a}}`},i={keyword:"const",$data:!0,error:s,code(a){let{gen:o,data:c,$data:l,schemaCode:u,schema:p}=a;l||p&&typeof p=="object"?a.fail$data(e._`!${(0,r.useFunc)(o,n.default)}(${c}, ${u})`):a.fail(e._`${p} !== ${c}`)}};t.default=i}),xre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),r=We(),n=o0(),s={message:"must be equal to one of the allowed values",params:({schemaCode:a})=>e._`{allowedValues: ${a}}`},i={keyword:"enum",schemaType:"array",$data:!0,error:s,code(a){let{gen:o,data:c,$data:l,schema:u,schemaCode:p,it:d}=a;if(!l&&u.length===0)throw Error("enum must have non-empty array");let m=u.length>=d.opts.loopEnum,f,v=()=>f??(f=(0,r.useFunc)(o,n.default)),g;if(m||l)g=o.let("valid"),a.block$data(g,h);else{if(!Array.isArray(u))throw Error("ajv implementation error");let b=o.const("vSchema",p);g=(0,e.or)(...u.map((x,w)=>y(b,w)))}a.pass(g);function h(){o.assign(g,!1),o.forOf("v",p,b=>o.if(e._`${v()}(${c}, ${b})`,()=>o.assign(g,!0).break()))}function y(b,x){let w=u[x];return typeof w=="object"&&w!==null?e._`${v()}(${c}, ${b}[${x}])`:e._`${c} === ${w}`}}};t.default=i}),_re=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=ure(),r=pre(),n=mre(),s=fre(),i=hre(),a=gre(),o=vre(),c=yre(),l=bre(),u=xre(),p=[e.default,r.default,n.default,s.default,i.default,a.default,o.default,c.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},l.default,u.default];t.default=p}),GM=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.validateAdditionalItems=void 0;var e=Te(),r=We(),n={message:({params:{len:a}})=>e.str`must NOT have more than ${a} items`,params:({params:{len:a}})=>e._`{limit: ${a}}`},s={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:n,code(a){let{parentSchema:o,it:c}=a,{items:l}=o;if(!Array.isArray(l)){(0,r.checkStrictMode)(c,'"additionalItems" is ignored when "items" is not an array of schemas');return}i(a,l)}};function i(a,o){let{gen:c,schema:l,data:u,keyword:p,it:d}=a;d.items=!0;let m=c.const("len",e._`${u}.length`);if(l===!1)a.setParams({len:o.length}),a.pass(e._`${m} <= ${o.length}`);else if(typeof l=="object"&&!(0,r.alwaysValidSchema)(d,l)){let v=c.var("valid",e._`${m} <= ${o.length}`);c.if((0,e.not)(v),()=>f(v)),a.ok(v)}function f(v){c.forRange("i",o.length,m,g=>{a.subschema({keyword:p,dataProp:g,dataPropType:r.Type.Num},v),!d.allErrors&&c.if((0,e.not)(v),()=>c.break())})}}t.validateAdditionalItems=i,t.default=s}),YM=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.validateTuple=void 0;var e=Te(),r=We(),n=In(),s={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(a){let{schema:o,it:c}=a;if(Array.isArray(o))return i(a,"additionalItems",o);c.items=!0,!(0,r.alwaysValidSchema)(c,o)&&a.ok((0,n.validateArray)(a))}};function i(a,o,c=a.schema){let{gen:l,parentSchema:u,data:p,keyword:d,it:m}=a;g(u),m.opts.unevaluated&&c.length&&m.items!==!0&&(m.items=r.mergeEvaluated.items(l,c.length,m.items));let f=l.name("valid"),v=l.const("len",e._`${p}.length`);c.forEach((h,y)=>{(0,r.alwaysValidSchema)(m,h)||(l.if(e._`${v} > ${y}`,()=>a.subschema({keyword:d,schemaProp:y,dataProp:y},f)),a.ok(f))});function g(h){let{opts:y,errSchemaPath:b}=m,x=c.length,w=x===h.minItems&&(x===h.maxItems||h[o]===!1);if(y.strictTuples&&!w){let S=`"${d}" is ${x}-tuple, but minItems or maxItems/${o} are not specified or different at path "${b}"`;(0,r.checkStrictMode)(m,S,y.strictTuples)}}}t.validateTuple=i,t.default=s}),wre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=YM(),r={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:n=>(0,e.validateTuple)(n,"items")};t.default=r}),Sre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),r=We(),n=In(),s=GM(),i={message:({params:{len:o}})=>e.str`must NOT have more than ${o} items`,params:({params:{len:o}})=>e._`{limit: ${o}}`},a={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:i,code(o){let{schema:c,parentSchema:l,it:u}=o,{prefixItems:p}=l;u.items=!0,!(0,r.alwaysValidSchema)(u,c)&&(p?(0,s.validateAdditionalItems)(o,p):o.ok((0,n.validateArray)(o)))}};t.default=a}),Ere=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),r=We(),n={message:({params:{min:i,max:a}})=>a===void 0?e.str`must contain at least ${i} valid item(s)`:e.str`must contain at least ${i} and no more than ${a} valid item(s)`,params:({params:{min:i,max:a}})=>a===void 0?e._`{minContains: ${i}}`:e._`{minContains: ${i}, maxContains: ${a}}`},s={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:n,code(i){let{gen:a,schema:o,parentSchema:c,data:l,it:u}=i,p,d,{minContains:m,maxContains:f}=c;u.opts.next?(p=m===void 0?1:m,d=f):p=1;let v=a.const("len",e._`${l}.length`);if(i.setParams({min:p,max:d}),d===void 0&&p===0){(0,r.checkStrictMode)(u,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(d!==void 0&&p>d){(0,r.checkStrictMode)(u,'"minContains" > "maxContains" is always invalid'),i.fail();return}if((0,r.alwaysValidSchema)(u,o)){let x=e._`${v} >= ${p}`;d!==void 0&&(x=e._`${x} && ${v} <= ${d}`),i.pass(x);return}u.items=!0;let g=a.name("valid");d===void 0&&p===1?y(g,()=>a.if(g,()=>a.break())):p===0?(a.let(g,!0),d!==void 0&&a.if(e._`${l}.length > 0`,h)):(a.let(g,!1),h()),i.result(g,()=>i.reset());function h(){let x=a.name("_valid"),w=a.let("count",0);y(x,()=>a.if(x,()=>b(w)))}function y(x,w){a.forRange("i",0,v,S=>{i.subschema({keyword:"contains",dataProp:S,dataPropType:r.Type.Num,compositeRule:!0},x),w()})}function b(x){a.code(e._`${x}++`),d===void 0?a.if(e._`${x} >= ${p}`,()=>a.assign(g,!0).break()):(a.if(e._`${x} > ${d}`,()=>a.assign(g,!1).break()),p===1?a.assign(g,!0):a.if(e._`${x} >= ${p}`,()=>a.assign(g,!0)))}}};t.default=s}),kre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.validateSchemaDeps=t.validatePropertyDeps=t.error=void 0;var e=Te(),r=We(),n=In();t.error={message:({params:{property:c,depsCount:l,deps:u}})=>{let p=l===1?"property":"properties";return e.str`must have ${p} ${u} when property ${c} is present`},params:({params:{property:c,depsCount:l,deps:u,missingProperty:p}})=>e._`{property: ${c}, missingProperty: ${p}, depsCount: ${l}, - deps: ${u}}`};var s={keyword:"dependencies",type:"object",schemaType:"object",error:t.error,code(c){let[l,u]=i(c);a(c,l),o(c,u)}};function i({schema:c}){let l={},u={};for(let p in c){if(p==="__proto__")continue;let d=Array.isArray(c[p])?l:u;d[p]=c[p]}return[l,u]}function a(c,l=c.schema){let{gen:u,data:p,it:d}=c;if(Object.keys(l).length===0)return;let m=u.let("missing");for(let f in l){let v=l[f];if(v.length===0)continue;let g=(0,n.propertyInData)(u,p,f,d.opts.ownProperties);c.setParams({property:f,depsCount:v.length,deps:v.join(", ")}),d.allErrors?u.if(g,()=>{for(let h of v)(0,n.checkReportMissingProp)(c,h)}):(u.if(e._`${g} && (${(0,n.checkMissingProp)(c,v,m)})`),(0,n.reportMissingProp)(c,m),u.else())}}t.validatePropertyDeps=a;function o(c,l=c.schema){let{gen:u,data:p,keyword:d,it:m}=c,f=u.name("valid");for(let v in l)(0,r.alwaysValidSchema)(m,l[v])||(u.if((0,n.propertyInData)(u,p,v,m.opts.ownProperties),()=>{let g=c.subschema({keyword:d,schemaProp:v},f);c.mergeValidEvaluated(g,f)},()=>u.var(f,!0)),c.ok(f))}t.validateSchemaDeps=o,t.default=s}),bre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),r=We(),n={message:"property name must be valid",params:({params:i})=>e._`{propertyName: ${i.propertyName}}`},s={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:n,code(i){let{gen:a,schema:o,data:c,it:l}=i;if((0,r.alwaysValidSchema)(l,o))return;let u=a.name("valid");a.forIn("key",c,p=>{i.setParams({propertyName:p}),i.subschema({keyword:"propertyNames",data:p,dataTypes:["string"],propertyName:p,compositeRule:!0},u),a.if((0,e.not)(u),()=>{i.error(!0),!l.allErrors&&a.break()})}),i.ok(u)}};t.default=s}),BM=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=In(),r=Te(),n=Qs(),s=We(),i={message:"must NOT have additional properties",params:({params:o})=>r._`{additionalProperty: ${o.additionalProperty}}`},a={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:i,code(o){let{gen:c,schema:l,parentSchema:u,data:p,errsCount:d,it:m}=o;if(!d)throw Error("ajv implementation error");let{allErrors:f,opts:v}=m;if(m.props=!0,v.removeAdditional!=="all"&&(0,s.alwaysValidSchema)(m,l))return;let g=(0,e.allSchemaProperties)(u.properties),h=(0,e.allSchemaProperties)(u.patternProperties);y(),o.ok(r._`${d} === ${n.default.errors}`);function y(){c.forIn("key",p,E=>{!g.length&&!h.length?w(E):c.if(b(E),()=>w(E))})}function b(E){let k;if(g.length>8){let $=(0,s.schemaRefOrVal)(m,u.properties,"properties");k=(0,e.isOwnProperty)(c,$,E)}else g.length?k=(0,r.or)(...g.map($=>r._`${E} === ${$}`)):k=r.nil;return h.length&&(k=(0,r.or)(k,...h.map($=>r._`${(0,e.usePattern)(o,$)}.test(${E})`))),(0,r.not)(k)}function x(E){c.code(r._`delete ${p}[${E}]`)}function w(E){if(v.removeAdditional==="all"||v.removeAdditional&&l===!1){x(E);return}if(l===!1){o.setParams({additionalProperty:E}),o.error(),!f&&c.break();return}if(typeof l=="object"&&!(0,s.alwaysValidSchema)(m,l)){let k=c.name("valid");v.removeAdditional==="failing"?(S(E,k,!1),c.if((0,r.not)(k),()=>{o.reset(),x(E)})):(S(E,k),!f&&c.if((0,r.not)(k),()=>c.break()))}}function S(E,k,$){let j={keyword:"additionalProperties",dataProp:E,dataPropType:s.Type.Str};$===!1&&Object.assign(j,{compositeRule:!0,createErrors:!1,allErrors:!1}),o.subschema(j,k)}}};t.default=a}),xre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=af(),r=In(),n=We(),s=BM(),i={keyword:"properties",type:"object",schemaType:"object",code(a){let{gen:o,schema:c,parentSchema:l,data:u,it:p}=a;p.opts.removeAdditional==="all"&&l.additionalProperties===void 0&&s.default.code(new e.KeywordCxt(p,s.default,"additionalProperties"));let d=(0,r.allSchemaProperties)(c);for(let h of d)p.definedProperties.add(h);p.opts.unevaluated&&d.length&&p.props!==!0&&(p.props=n.mergeEvaluated.props(o,(0,n.toHash)(d),p.props));let m=d.filter(h=>!(0,n.alwaysValidSchema)(p,c[h]));if(m.length===0)return;let f=o.name("valid");for(let h of m)v(h)?g(h):(o.if((0,r.propertyInData)(o,u,h,p.opts.ownProperties)),g(h),!p.allErrors&&o.else().var(f,!0),o.endIf()),a.it.definedProperties.add(h),a.ok(f);function v(h){return p.opts.useDefaults&&!p.compositeRule&&c[h].default!==void 0}function g(h){a.subschema({keyword:"properties",schemaProp:h,dataProp:h},f)}}};t.default=i}),_re=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=In(),r=Te(),n=We(),s=We(),i={keyword:"patternProperties",type:"object",schemaType:"object",code(a){let{gen:o,schema:c,data:l,parentSchema:u,it:p}=a,{opts:d}=p,m=(0,e.allSchemaProperties)(c),f=m.filter(w=>(0,n.alwaysValidSchema)(p,c[w]));if(m.length===0||f.length===m.length&&(!p.opts.unevaluated||p.props===!0))return;let v=d.strictSchema&&!d.allowMatchingProperties&&u.properties,g=o.name("valid");p.props!==!0&&!(p.props instanceof r.Name)&&(p.props=(0,s.evaluatedPropsToName)(o,p.props));let{props:h}=p;y();function y(){for(let w of m)v&&b(w),p.allErrors?x(w):(o.var(g,!0),x(w),o.if(g))}function b(w){for(let S in v)new RegExp(w).test(S)&&(0,n.checkStrictMode)(p,`property ${S} matches pattern ${w} (use allowMatchingProperties)`)}function x(w){o.forIn("key",l,S=>{o.if(r._`${(0,e.usePattern)(a,w)}.test(${S})`,()=>{let E=f.includes(w);E||a.subschema({keyword:"patternProperties",schemaProp:w,dataProp:S,dataPropType:s.Type.Str},g),p.opts.unevaluated&&h!==!0?o.assign(r._`${h}[${S}]`,!0):!E&&!p.allErrors&&o.if((0,r.not)(g),()=>o.break())})})}}};t.default=i}),wre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=We(),r={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(n){let{gen:s,schema:i,it:a}=n;if((0,e.alwaysValidSchema)(a,i)){n.fail();return}let o=s.name("valid");n.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},o),n.failResult(o,()=>n.reset(),()=>n.error())},error:{message:"must NOT be valid"}};t.default=r}),Sre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=In(),r={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:e.validateUnion,error:{message:"must match a schema in anyOf"}};t.default=r}),Ere=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),r=We(),n={message:"must match exactly one schema in oneOf",params:({params:i})=>e._`{passingSchemas: ${i.passing}}`},s={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:n,code(i){let{gen:a,schema:o,parentSchema:c,it:l}=i;if(!Array.isArray(o))throw Error("ajv implementation error");if(l.opts.discriminator&&c.discriminator)return;let u=o,p=a.let("valid",!1),d=a.let("passing",null),m=a.name("_valid");i.setParams({passing:d}),a.block(f),i.result(p,()=>i.reset(),()=>i.error(!0));function f(){u.forEach((v,g)=>{let h;(0,r.alwaysValidSchema)(l,v)?a.var(m,!0):h=i.subschema({keyword:"oneOf",schemaProp:g,compositeRule:!0},m),g>0&&a.if(e._`${m} && ${p}`).assign(p,!1).assign(d,e._`[${d}, ${g}]`).else(),a.if(m,()=>{a.assign(p,!0),a.assign(d,g),h&&i.mergeEvaluated(h,e.Name)})})}}};t.default=s}),kre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=We(),r={keyword:"allOf",schemaType:"array",code(n){let{gen:s,schema:i,it:a}=n;if(!Array.isArray(i))throw Error("ajv implementation error");let o=s.name("valid");i.forEach((c,l)=>{if((0,e.alwaysValidSchema)(a,c))return;let u=n.subschema({keyword:"allOf",schemaProp:l},o);n.ok(o),n.mergeEvaluated(u)})}};t.default=r}),Tre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),r=We(),n={message:({params:a})=>e.str`must match "${a.ifClause}" schema`,params:({params:a})=>e._`{failingKeyword: ${a.ifClause}}`},s={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:n,code(a){let{gen:o,parentSchema:c,it:l}=a;c.then===void 0&&c.else===void 0&&(0,r.checkStrictMode)(l,'"if" without "then" and "else" is ignored');let u=i(l,"then"),p=i(l,"else");if(!u&&!p)return;let d=o.let("valid",!0),m=o.name("_valid");if(f(),a.reset(),u&&p){let g=o.let("ifClause");a.setParams({ifClause:g}),o.if(m,v("then",g),v("else",g))}else u?o.if(m,v("then")):o.if((0,e.not)(m),v("else"));a.pass(d,()=>a.error(!0));function f(){let g=a.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},m);a.mergeEvaluated(g)}function v(g,h){return()=>{let y=a.subschema({keyword:g},m);o.assign(d,m),a.mergeValidEvaluated(y,d),h?o.assign(h,e._`${g}`):a.setParams({ifClause:g})}}}};function i(a,o){let c=a.schema[o];return c!==void 0&&!(0,r.alwaysValidSchema)(a,c)}t.default=s}),Rre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=We(),r={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:n,parentSchema:s,it:i}){s.if===void 0&&(0,e.checkStrictMode)(i,`"${n}" without "if" is ignored`)}};t.default=r}),$re=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=UM(),r=hre(),n=HM(),s=gre(),i=vre(),a=yre(),o=bre(),c=BM(),l=xre(),u=_re(),p=wre(),d=Sre(),m=Ere(),f=kre(),v=Tre(),g=Rre();function h(y=!1){let b=[p.default,d.default,m.default,f.default,v.default,g.default,o.default,c.default,a.default,l.default,u.default];return y?b.push(r.default,s.default):b.push(e.default,n.default),b.push(i.default),b}t.default=h}),Ore=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),r={message:({schemaCode:s})=>e.str`must match format "${s}"`,params:({schemaCode:s})=>e._`{format: ${s}}`},n={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:r,code(s,i){let{gen:a,data:o,$data:c,schema:l,schemaCode:u,it:p}=s,{opts:d,errSchemaPath:m,schemaEnv:f,self:v}=p;if(!d.validateFormats)return;c?g():h();function g(){let y=a.scopeValue("formats",{ref:v.formats,code:d.code.formats}),b=a.const("fDef",e._`${y}[${u}]`),x=a.let("fType"),w=a.let("format");a.if(e._`typeof ${b} == "object" && !(${b} instanceof RegExp)`,()=>a.assign(x,e._`${b}.type || "string"`).assign(w,e._`${b}.validate`),()=>a.assign(x,e._`"string"`).assign(w,b)),s.fail$data((0,e.or)(S(),E()));function S(){return d.strictSchema===!1?e.nil:e._`${u} && !${w}`}function E(){let k=f.$async?e._`(${b}.async ? await ${w}(${o}) : ${w}(${o}))`:e._`${w}(${o})`,$=e._`(typeof ${w} == "function" ? ${k} : ${w}.test(${o}))`;return e._`${w} && ${w} !== true && ${x} === ${i} && !${$}`}}function h(){let y=v.formats[l];if(!y){S();return}if(y===!0)return;let[b,x,w]=E(y);b===i&&s.pass(k());function S(){if(d.strictSchema===!1){v.logger.warn($());return}throw Error($());function $(){return`unknown format "${l}" ignored in schema at path "${m}"`}}function E($){let j=$ instanceof RegExp?(0,e.regexpCode)($):d.code.formats?e._`${d.code.formats}${(0,e.getProperty)(l)}`:void 0,I=a.scopeValue("formats",{key:l,ref:$,code:j});return typeof $=="object"&&!($ instanceof RegExp)?[$.type||"string",$.validate,e._`${I}.validate`]:["string",$,I]}function k(){if(typeof y=="object"&&!(y instanceof RegExp)&&y.async){if(!f.$async)throw Error("async format in sync schema");return e._`await ${w}(${o})`}return typeof x=="function"?e._`${w}(${o})`:e._`${w}.test(${o})`}}}};t.default=n}),Pre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ore(),r=[e.default];t.default=r}),Cre=X(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"]}),Ire=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=rre(),r=fre(),n=$re(),s=Pre(),i=Cre(),a=[e.default,r.default,(0,n.default)(),s.default,i.metadataVocabulary,i.contentVocabulary];t.default=a}),Are=X(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={}))}),Nre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),r=Are(),n=r0(),s=of(),i=We(),a={message:({params:{discrError:c,tagName:l}})=>c===r.DiscrError.Tag?`tag "${l}" must be string`:`value of tag "${l}" must be in oneOf`,params:({params:{discrError:c,tag:l,tagName:u}})=>e._`{error: ${c}, tag: ${u}, tagValue: ${l}}`},o={keyword:"discriminator",type:"object",schemaType:"object",error:a,code(c){let{gen:l,data:u,schema:p,parentSchema:d,it:m}=c,{oneOf:f}=d;if(!m.opts.discriminator)throw Error("discriminator: requires discriminator option");let v=p.propertyName;if(typeof v!="string")throw Error("discriminator: requires propertyName");if(p.mapping)throw Error("discriminator: mapping is not supported");if(!f)throw Error("discriminator: requires oneOf keyword");let g=l.let("valid",!1),h=l.const("tag",e._`${u}${(0,e.getProperty)(v)}`);l.if(e._`typeof ${h} == "string"`,()=>y(),()=>c.error(!1,{discrError:r.DiscrError.Tag,tag:h,tagName:v})),c.ok(g);function y(){let w=x();l.if(!1);for(let S in w)l.elseIf(e._`${h} === ${S}`),l.assign(g,b(w[S]));l.else(),c.error(!1,{discrError:r.DiscrError.Mapping,tag:h,tagName:v}),l.endIf()}function b(w){let S=l.name("valid"),E=c.subschema({keyword:"oneOf",schemaProp:w},S);return c.mergeEvaluated(E,e.Name),S}function x(){var w;let S={},E=$(d),k=!0;for(let q=0;q{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}}),WM=X((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=Xte(),n=Ire(),s=Nre(),i=jre(),a=["/properties"],o="http://json-schema.org/draft-07/schema";class c extends r.default{_addVocabularies(){super._addVocabularies(),n.default.forEach(f=>this.addVocabulary(f)),this.opts.discriminator&&this.addKeyword(s.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let f=this.opts.$data?this.$dataMetaSchema(i,a):i;this.addMetaSchema(f,o,!1),this.refs["http://json-schema.org/schema"]=o}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(o)?o:void 0)}}t.Ajv=c,e.exports=t=c,e.exports.Ajv=c,Object.defineProperty(t,"__esModule",{value:!0}),t.default=c;var l=af();Object.defineProperty(t,"KeywordCxt",{enumerable:!0,get:function(){return l.KeywordCxt}});var u=Te();Object.defineProperty(t,"_",{enumerable:!0,get:function(){return u._}}),Object.defineProperty(t,"str",{enumerable:!0,get:function(){return u.str}}),Object.defineProperty(t,"stringify",{enumerable:!0,get:function(){return u.stringify}}),Object.defineProperty(t,"nil",{enumerable:!0,get:function(){return u.nil}}),Object.defineProperty(t,"Name",{enumerable:!0,get:function(){return u.Name}}),Object.defineProperty(t,"CodeGen",{enumerable:!0,get:function(){return u.CodeGen}});var p=t0();Object.defineProperty(t,"ValidationError",{enumerable:!0,get:function(){return p.default}});var d=of();Object.defineProperty(t,"MissingRefError",{enumerable:!0,get:function(){return d.default}})}),Dre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.formatNames=t.fastFormats=t.fullFormats=void 0;function e(I,q){return{validate:I,compare:q}}t.fullFormats={date:e(i,a),time:e(c(!0),l),"date-time":e(d(!0),m),"iso-time":e(c(),u),"iso-date-time":e(d(),f),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:h,"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:j,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:S},int64:{type:"number",validate:E},float:{type:"number",validate:k},double:{type:"number",validate:k},password:!0,binary:!0},t.fastFormats={...t.fullFormats,date:e(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,a),time:e(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,l),"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,m),"iso-time":e(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,u),"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,f),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(I){return I%4===0&&(I%100!==0||I%400===0)}var n=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,s=[0,31,28,31,30,31,30,31,31,30,31,30,31];function i(I){let q=n.exec(I);if(!q)return!1;let H=+q[1],Z=+q[2],W=+q[3];return Z>=1&&Z<=12&&W>=1&&W<=(Z===2&&r(H)?29:s[Z])}function a(I,q){if(I&&q)return I>q?1:I23||G>59||I&&!et)return!1;if(Z<=23&&W<=59&&we<60)return!0;let P=W-G*zt,U=Z-Ce*zt-(P<0?1:0);return(U===23||U===-1)&&(P===59||P===-1)&&we<61}}function l(I,q){if(!(I&&q))return;let H=new Date("2020-01-01T"+I).valueOf(),Z=new Date("2020-01-01T"+q).valueOf();if(H&&Z)return H-Z}function u(I,q){if(!(I&&q))return;let H=o.exec(I),Z=o.exec(q);if(H&&Z)return I=H[1]+H[2]+H[3],q=Z[1]+Z[2]+Z[3],I>q?1:I=x}function E(I){return Number.isInteger(I)}function k(){return!0}var $=/[^\\]\\Z/;function j(I){if($.test(I))return!1;try{return new RegExp(I),!0}catch{return!1}}}),Mre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.formatLimitDefinition=void 0;var e=WM(),r=Te(),n=r.operators,s={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}},i={message:({keyword:o,schemaCode:c})=>r.str`should be ${s[o].okStr} ${c}`,params:({keyword:o,schemaCode:c})=>r._`{comparison: ${s[o].okStr}, limit: ${c}}`};t.formatLimitDefinition={keyword:Object.keys(s),type:"string",schemaType:"string",$data:!0,error:i,code(o){let{gen:c,data:l,schemaCode:u,keyword:p,it:d}=o,{opts:m,self:f}=d;if(!m.validateFormats)return;let v=new e.KeywordCxt(d,f.RULES.all.format.definition,"format");v.$data?g():h();function g(){let b=c.scopeValue("formats",{ref:f.formats,code:m.code.formats}),x=c.const("fmt",r._`${b}[${v.schemaCode}]`);o.fail$data((0,r.or)(r._`typeof ${x} != "object"`,r._`${x} instanceof RegExp`,r._`typeof ${x}.compare != "function"`,y(x)))}function h(){let b=v.schema,x=f.formats[b];if(!x||x===!0)return;if(typeof x!="object"||x instanceof RegExp||typeof x.compare!="function")throw Error(`"${p}": format "${b}" does not define "compare" function`);let w=c.scopeValue("formats",{key:b,ref:x,code:m.code.formats?r._`${m.code.formats}${(0,r.getProperty)(b)}`:void 0});o.fail$data(y(w))}function y(b){return r._`${b}.compare(${l}, ${u}) ${s[p].fail} 0`}},dependencies:["format"]};var a=o=>(o.addKeyword(t.formatLimitDefinition),o);t.default=a}),zre=X((t,e)=>{Object.defineProperty(t,"__esModule",{value:!0});var r=Dre(),n=Mre(),s=Te(),i=new s.Name("fullFormats"),a=new s.Name("fastFormats"),o=(l,u={keywords:!0})=>{if(Array.isArray(u))return c(l,u,r.fullFormats,i),l;let[p,d]=u.mode==="fast"?[r.fastFormats,a]:[r.fullFormats,i],m=u.formats||r.formatNames;return c(l,m,p,d),u.keywords&&(0,n.default)(l),l};o.get=(l,u="full")=>{let p=(u==="fast"?r.fastFormats:r.fullFormats)[l];if(!p)throw Error(`Unknown format "${l}"`);return p};function c(l,u,p,d){var m,f;(m=(f=l.opts.code).formats)!==null&&m!==void 0||(f.formats=s._`require("ajv-formats/dist/formats").${d}`);for(let v of u)l.addFormat(v,p[v])}e.exports=t=o,Object.defineProperty(t,"__esModule",{value:!0}),t.default=o}),Lre=50;function VM(t=Lre){let e=new AbortController;return(0,ZM.setMaxListeners)(t,e.signal),e}var qre=typeof global=="object"&&global&&global.Object===Object&&global,Fre=qre,Ure=typeof self=="object"&&self&&self.Object===Object&&self,Hre=Fre||Ure||Function("return this")(),s0=Hre,Bre=s0.Symbol,Km=Bre,KM=Object.prototype,Wre=KM.hasOwnProperty,Zre=KM.toString,ru=Km?Km.toStringTag:void 0;function Vre(t){var e=Wre.call(t,ru),r=t[ru];try{t[ru]=void 0;var n=!0}catch{}var s=Zre.call(t);return n&&(e?t[ru]=r:delete t[ru]),s}var Gre=Vre,Yre=Object.prototype,Kre=Yre.toString;function Jre(t){return Kre.call(t)}var Qre=Jre,Xre="[object Null]",ene="[object Undefined]",cM=Km?Km.toStringTag:void 0;function tne(t){return t==null?t===void 0?ene:Xre:cM&&cM in Object(t)?Gre(t):Qre(t)}var rne=tne;function nne(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}var JM=nne,sne="[object AsyncFunction]",ine="[object Function]",ane="[object GeneratorFunction]",one="[object Proxy]";function cne(t){if(!JM(t))return!1;var e=rne(t);return e==ine||e==ane||e==sne||e==one}var lne=cne,une=s0["__core-js_shared__"],O_=une,lM=(function(){var t=/[^.]+$/.exec(O_&&O_.keys&&O_.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""})();function pne(t){return!!lM&&lM in t}var dne=pne,mne=Function.prototype,fne=mne.toString;function hne(t){if(t!=null){try{return fne.call(t)}catch{}try{return t+""}catch{}}return""}var gne=hne,vne=/[\\^$.*+?()[\]{}|]/g,yne=/^\[object .+?Constructor\]$/,bne=Function.prototype,xne=Object.prototype,_ne=bne.toString,wne=xne.hasOwnProperty,Sne=RegExp("^"+_ne.call(wne).replace(vne,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Ene(t){if(!JM(t)||dne(t))return!1;var e=lne(t)?Sne:yne;return e.test(gne(t))}var kne=Ene;function Tne(t,e){return t?.[e]}var Rne=Tne;function $ne(t,e){var r=Rne(t,e);return kne(r)?r:void 0}var QM=$ne,One=QM(Object,"create"),iu=One;function Pne(){this.__data__=iu?iu(null):{},this.size=0}var Cne=Pne;function Ine(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}var Ane=Ine,Nne="__lodash_hash_undefined__",jne=Object.prototype,Dne=jne.hasOwnProperty;function Mne(t){var e=this.__data__;if(iu){var r=e[t];return r===Nne?void 0:r}return Dne.call(e,t)?e[t]:void 0}var zne=Mne,Lne=Object.prototype,qne=Lne.hasOwnProperty;function Fne(t){var e=this.__data__;return iu?e[t]!==void 0:qne.call(e,t)}var Une=Fne,Hne="__lodash_hash_undefined__";function Bne(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=iu&&e===void 0?Hne:e,this}var Wne=Bne;function ko(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e-1}var sse=nse;function ise(t,e){var r=this.__data__,n=cf(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this}var ase=ise;function To(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(i=>i.trim()).filter(Boolean);if(e.length===0)return null;let r=e.some(i=>i.startsWith("!")),n=e.some(i=>!i.startsWith("!"));if(r&&n)return null;let s=e.map(i=>i.replace(/^!/,"").toLowerCase());return{include:r?[]:s,exclude:r?s:[],isExclusive:r}});function Rse(t){let e=[],r=t.match(/^MCP server ["']([^"']+)["']/);if(r&&r[1])e.push("mcp"),e.push(r[1].toLowerCase());else{let i=t.match(/^([^:[]+):/);i&&i[1]&&e.push(i[1].trim().toLowerCase())}let n=t.match(/^\[([^\]]+)]/);n&&n[1]&&e.push(n[1].trim().toLowerCase()),t.toLowerCase().includes("1p event:")&&e.push("1p");let s=t.match(/:\s*([^:]+?)(?:\s+(?:type|mode|status|event))?:/);if(s&&s[1]){let i=s[1].trim().toLowerCase();i.length<30&&!i.includes(" ")&&e.push(i)}return Array.from(new Set(e))}function $se(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 Ose(t,e){if(!e)return!0;let r=Rse(t);return $se(r,e)}function rz(){return process.env.CLAUDE_CONFIG_DIR??(0,ez.join)((0,tz.homedir)(),".claude")}function pM(t){if(!t)return!1;if(typeof t=="boolean")return t;let e=t.toLowerCase().trim();return["1","true","yes","on"].includes(e)}function iz(t){return{name:t,default:3e4,validate:e=>{if(!e)return{effective:3e4,status:"valid"};let r=parseInt(e,10);return isNaN(r)||r<=0?{effective:3e4,status:"invalid",message:`Invalid value "${e}" (using default: 30000)`}:r>15e4?{effective:15e4,status:"capped",message:`Capped from ${r} to 150000`}:{effective:r,status:"valid"}}}}var Pse=iz("BASH_MAX_OUTPUT_LENGTH"),wSe=iz("TASK_MAX_OUTPUT_LENGTH"),Cse={name:"CLAUDE_CODE_MAX_OUTPUT_TOKENS",default:32e3,validate:t=>{if(!t)return{effective:32e3,status:"valid"};let e=parseInt(t,10);return isNaN(e)||e<=0?{effective:32e3,status:"invalid",message:`Invalid value "${t}" (using default: 32000)`}:e>64e3?{effective:64e3,status:"capped",message:`Capped from ${e} to 64000`}:{effective:e,status:"valid"}}};function Ise(){let t="";return typeof process<"u"&&typeof process.cwd=="function"&&typeof N_.realpathSync=="function"&&(t=(0,N_.realpathSync)((0,nz.cwd)())),{originalCwd:t,projectRoot: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,sz.randomUUID)(),parentSessionId:void 0,loggerProvider:null,eventLogger:null,meterProvider:null,tracerProvider:null,agentColorMap:new Map,agentColorIndex:0,envVarValidators:[Pse,Cse],lastAPIRequest:null,inMemoryErrorLog:[],inlinePlugins:[],useCoworkPlugins:!1,sessionBypassPermissionsMode:!1,sessionTrustAccepted:!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:[],promptCacheBreaks:[],sdkBetas:void 0,mainThreadAgentType:void 0,isRemoteMode:!1,directConnectServerUrl:void 0,additionalDirectoriesForClaudeMd:[],resumedTranscriptPath:null}}var Ase=Ise();function Nse(){return Ase.sessionId}function jse({writeFn:t,flushIntervalMs:e=1e3,maxBufferSize:r=100,immediateMode:n=!1}){let s=[],i=null;function a(){i&&(clearTimeout(i),i=null)}function o(){s.length!==0&&(t(s.join("")),s=[],a())}function c(){i||(i=setTimeout(o,e))}return{write(l){if(n){t(l);return}s.push(l),c(),s.length>=r&&o()},flush:o,dispose(){o()}}}var dM=new Set;function Dse(t){return dM.add(t),()=>dM.delete(t)}var az=1/0;function Mse(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 oz(t,e){let r=performance.now();try{return e()}finally{performance.now()-r>az}}function gs(t,e,r){let n=Mse(t);return oz(`JSON.stringify(${n})`,()=>JSON.stringify(t,e,r))}var cz=(t,e)=>{let r=typeof t=="string"?t.length:0;return oz(`JSON.parse(${r} chars)`,()=>JSON.parse(t,e))},zse=$o(()=>pM(process.env.DEBUG)||pM(process.env.DEBUG_SDK)||process.argv.includes("--debug")||process.argv.includes("-d")||lz()||process.argv.some(t=>t.startsWith("--debug="))||uz()!==null),Lse=$o(()=>{let t=process.argv.find(r=>r.startsWith("--debug="));if(!t)return null;let e=t.substring(8);return Tse(e)}),lz=$o(()=>process.argv.includes("--debug-to-stderr")||process.argv.includes("-d2e")),uz=$o(()=>{for(let t=0;t"u"||typeof process.versions>"u"||typeof process.versions.node>"u")return!1;let e=Lse();return Ose(t,e)}var Fse=!1,Hm=null;function Use(){return Hm||(Hm=jse({writeFn:t=>{let e=pz();vs().existsSync((0,qi.dirname)(e))||vs().mkdirSync((0,qi.dirname)(e)),vs().appendFileSync(e,t),Hse()},flushIntervalMs:1e3,maxBufferSize:100,immediateMode:zse()}),Dse(async()=>Hm?.dispose())),Hm}function zi(t,{level:e}={level:"debug"}){if(!qse(t))return;Fse&&t.includes(` + deps: ${u}}`};var s={keyword:"dependencies",type:"object",schemaType:"object",error:t.error,code(c){let[l,u]=i(c);a(c,l),o(c,u)}};function i({schema:c}){let l={},u={};for(let p in c){if(p==="__proto__")continue;let d=Array.isArray(c[p])?l:u;d[p]=c[p]}return[l,u]}function a(c,l=c.schema){let{gen:u,data:p,it:d}=c;if(Object.keys(l).length===0)return;let m=u.let("missing");for(let f in l){let v=l[f];if(v.length===0)continue;let g=(0,n.propertyInData)(u,p,f,d.opts.ownProperties);c.setParams({property:f,depsCount:v.length,deps:v.join(", ")}),d.allErrors?u.if(g,()=>{for(let h of v)(0,n.checkReportMissingProp)(c,h)}):(u.if(e._`${g} && (${(0,n.checkMissingProp)(c,v,m)})`),(0,n.reportMissingProp)(c,m),u.else())}}t.validatePropertyDeps=a;function o(c,l=c.schema){let{gen:u,data:p,keyword:d,it:m}=c,f=u.name("valid");for(let v in l)(0,r.alwaysValidSchema)(m,l[v])||(u.if((0,n.propertyInData)(u,p,v,m.opts.ownProperties),()=>{let g=c.subschema({keyword:d,schemaProp:v},f);c.mergeValidEvaluated(g,f)},()=>u.var(f,!0)),c.ok(f))}t.validateSchemaDeps=o,t.default=s}),Tre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),r=We(),n={message:"property name must be valid",params:({params:i})=>e._`{propertyName: ${i.propertyName}}`},s={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:n,code(i){let{gen:a,schema:o,data:c,it:l}=i;if((0,r.alwaysValidSchema)(l,o))return;let u=a.name("valid");a.forIn("key",c,p=>{i.setParams({propertyName:p}),i.subschema({keyword:"propertyNames",data:p,dataTypes:["string"],propertyName:p,compositeRule:!0},u),a.if((0,e.not)(u),()=>{i.error(!0),!l.allErrors&&a.break()})}),i.ok(u)}};t.default=s}),KM=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=In(),r=Te(),n=Qs(),s=We(),i={message:"must NOT have additional properties",params:({params:o})=>r._`{additionalProperty: ${o.additionalProperty}}`},a={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:i,code(o){let{gen:c,schema:l,parentSchema:u,data:p,errsCount:d,it:m}=o;if(!d)throw Error("ajv implementation error");let{allErrors:f,opts:v}=m;if(m.props=!0,v.removeAdditional!=="all"&&(0,s.alwaysValidSchema)(m,l))return;let g=(0,e.allSchemaProperties)(u.properties),h=(0,e.allSchemaProperties)(u.patternProperties);y(),o.ok(r._`${d} === ${n.default.errors}`);function y(){c.forIn("key",p,E=>{!g.length&&!h.length?w(E):c.if(b(E),()=>w(E))})}function b(E){let k;if(g.length>8){let $=(0,s.schemaRefOrVal)(m,u.properties,"properties");k=(0,e.isOwnProperty)(c,$,E)}else g.length?k=(0,r.or)(...g.map($=>r._`${E} === ${$}`)):k=r.nil;return h.length&&(k=(0,r.or)(k,...h.map($=>r._`${(0,e.usePattern)(o,$)}.test(${E})`))),(0,r.not)(k)}function x(E){c.code(r._`delete ${p}[${E}]`)}function w(E){if(v.removeAdditional==="all"||v.removeAdditional&&l===!1){x(E);return}if(l===!1){o.setParams({additionalProperty:E}),o.error(),!f&&c.break();return}if(typeof l=="object"&&!(0,s.alwaysValidSchema)(m,l)){let k=c.name("valid");v.removeAdditional==="failing"?(S(E,k,!1),c.if((0,r.not)(k),()=>{o.reset(),x(E)})):(S(E,k),!f&&c.if((0,r.not)(k),()=>c.break()))}}function S(E,k,$){let j={keyword:"additionalProperties",dataProp:E,dataPropType:s.Type.Str};$===!1&&Object.assign(j,{compositeRule:!0,createErrors:!1,allErrors:!1}),o.subschema(j,k)}}};t.default=a}),Rre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=cf(),r=In(),n=We(),s=KM(),i={keyword:"properties",type:"object",schemaType:"object",code(a){let{gen:o,schema:c,parentSchema:l,data:u,it:p}=a;p.opts.removeAdditional==="all"&&l.additionalProperties===void 0&&s.default.code(new e.KeywordCxt(p,s.default,"additionalProperties"));let d=(0,r.allSchemaProperties)(c);for(let h of d)p.definedProperties.add(h);p.opts.unevaluated&&d.length&&p.props!==!0&&(p.props=n.mergeEvaluated.props(o,(0,n.toHash)(d),p.props));let m=d.filter(h=>!(0,n.alwaysValidSchema)(p,c[h]));if(m.length===0)return;let f=o.name("valid");for(let h of m)v(h)?g(h):(o.if((0,r.propertyInData)(o,u,h,p.opts.ownProperties)),g(h),!p.allErrors&&o.else().var(f,!0),o.endIf()),a.it.definedProperties.add(h),a.ok(f);function v(h){return p.opts.useDefaults&&!p.compositeRule&&c[h].default!==void 0}function g(h){a.subschema({keyword:"properties",schemaProp:h,dataProp:h},f)}}};t.default=i}),$re=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=In(),r=Te(),n=We(),s=We(),i={keyword:"patternProperties",type:"object",schemaType:"object",code(a){let{gen:o,schema:c,data:l,parentSchema:u,it:p}=a,{opts:d}=p,m=(0,e.allSchemaProperties)(c),f=m.filter(w=>(0,n.alwaysValidSchema)(p,c[w]));if(m.length===0||f.length===m.length&&(!p.opts.unevaluated||p.props===!0))return;let v=d.strictSchema&&!d.allowMatchingProperties&&u.properties,g=o.name("valid");p.props!==!0&&!(p.props instanceof r.Name)&&(p.props=(0,s.evaluatedPropsToName)(o,p.props));let{props:h}=p;y();function y(){for(let w of m)v&&b(w),p.allErrors?x(w):(o.var(g,!0),x(w),o.if(g))}function b(w){for(let S in v)new RegExp(w).test(S)&&(0,n.checkStrictMode)(p,`property ${S} matches pattern ${w} (use allowMatchingProperties)`)}function x(w){o.forIn("key",l,S=>{o.if(r._`${(0,e.usePattern)(a,w)}.test(${S})`,()=>{let E=f.includes(w);E||a.subschema({keyword:"patternProperties",schemaProp:w,dataProp:S,dataPropType:s.Type.Str},g),p.opts.unevaluated&&h!==!0?o.assign(r._`${h}[${S}]`,!0):!E&&!p.allErrors&&o.if((0,r.not)(g),()=>o.break())})})}}};t.default=i}),Ore=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=We(),r={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(n){let{gen:s,schema:i,it:a}=n;if((0,e.alwaysValidSchema)(a,i)){n.fail();return}let o=s.name("valid");n.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},o),n.failResult(o,()=>n.reset(),()=>n.error())},error:{message:"must NOT be valid"}};t.default=r}),Pre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=In(),r={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:e.validateUnion,error:{message:"must match a schema in anyOf"}};t.default=r}),Cre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),r=We(),n={message:"must match exactly one schema in oneOf",params:({params:i})=>e._`{passingSchemas: ${i.passing}}`},s={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:n,code(i){let{gen:a,schema:o,parentSchema:c,it:l}=i;if(!Array.isArray(o))throw Error("ajv implementation error");if(l.opts.discriminator&&c.discriminator)return;let u=o,p=a.let("valid",!1),d=a.let("passing",null),m=a.name("_valid");i.setParams({passing:d}),a.block(f),i.result(p,()=>i.reset(),()=>i.error(!0));function f(){u.forEach((v,g)=>{let h;(0,r.alwaysValidSchema)(l,v)?a.var(m,!0):h=i.subschema({keyword:"oneOf",schemaProp:g,compositeRule:!0},m),g>0&&a.if(e._`${m} && ${p}`).assign(p,!1).assign(d,e._`[${d}, ${g}]`).else(),a.if(m,()=>{a.assign(p,!0),a.assign(d,g),h&&i.mergeEvaluated(h,e.Name)})})}}};t.default=s}),Ire=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=We(),r={keyword:"allOf",schemaType:"array",code(n){let{gen:s,schema:i,it:a}=n;if(!Array.isArray(i))throw Error("ajv implementation error");let o=s.name("valid");i.forEach((c,l)=>{if((0,e.alwaysValidSchema)(a,c))return;let u=n.subschema({keyword:"allOf",schemaProp:l},o);n.ok(o),n.mergeEvaluated(u)})}};t.default=r}),Are=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),r=We(),n={message:({params:a})=>e.str`must match "${a.ifClause}" schema`,params:({params:a})=>e._`{failingKeyword: ${a.ifClause}}`},s={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:n,code(a){let{gen:o,parentSchema:c,it:l}=a;c.then===void 0&&c.else===void 0&&(0,r.checkStrictMode)(l,'"if" without "then" and "else" is ignored');let u=i(l,"then"),p=i(l,"else");if(!u&&!p)return;let d=o.let("valid",!0),m=o.name("_valid");if(f(),a.reset(),u&&p){let g=o.let("ifClause");a.setParams({ifClause:g}),o.if(m,v("then",g),v("else",g))}else u?o.if(m,v("then")):o.if((0,e.not)(m),v("else"));a.pass(d,()=>a.error(!0));function f(){let g=a.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},m);a.mergeEvaluated(g)}function v(g,h){return()=>{let y=a.subschema({keyword:g},m);o.assign(d,m),a.mergeValidEvaluated(y,d),h?o.assign(h,e._`${g}`):a.setParams({ifClause:g})}}}};function i(a,o){let c=a.schema[o];return c!==void 0&&!(0,r.alwaysValidSchema)(a,c)}t.default=s}),Nre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=We(),r={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:n,parentSchema:s,it:i}){s.if===void 0&&(0,e.checkStrictMode)(i,`"${n}" without "if" is ignored`)}};t.default=r}),jre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=GM(),r=wre(),n=YM(),s=Sre(),i=Ere(),a=kre(),o=Tre(),c=KM(),l=Rre(),u=$re(),p=Ore(),d=Pre(),m=Cre(),f=Ire(),v=Are(),g=Nre();function h(y=!1){let b=[p.default,d.default,m.default,f.default,v.default,g.default,o.default,c.default,a.default,l.default,u.default];return y?b.push(r.default,s.default):b.push(e.default,n.default),b.push(i.default),b}t.default=h}),Dre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),r={message:({schemaCode:s})=>e.str`must match format "${s}"`,params:({schemaCode:s})=>e._`{format: ${s}}`},n={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:r,code(s,i){let{gen:a,data:o,$data:c,schema:l,schemaCode:u,it:p}=s,{opts:d,errSchemaPath:m,schemaEnv:f,self:v}=p;if(!d.validateFormats)return;c?g():h();function g(){let y=a.scopeValue("formats",{ref:v.formats,code:d.code.formats}),b=a.const("fDef",e._`${y}[${u}]`),x=a.let("fType"),w=a.let("format");a.if(e._`typeof ${b} == "object" && !(${b} instanceof RegExp)`,()=>a.assign(x,e._`${b}.type || "string"`).assign(w,e._`${b}.validate`),()=>a.assign(x,e._`"string"`).assign(w,b)),s.fail$data((0,e.or)(S(),E()));function S(){return d.strictSchema===!1?e.nil:e._`${u} && !${w}`}function E(){let k=f.$async?e._`(${b}.async ? await ${w}(${o}) : ${w}(${o}))`:e._`${w}(${o})`,$=e._`(typeof ${w} == "function" ? ${k} : ${w}.test(${o}))`;return e._`${w} && ${w} !== true && ${x} === ${i} && !${$}`}}function h(){let y=v.formats[l];if(!y){S();return}if(y===!0)return;let[b,x,w]=E(y);b===i&&s.pass(k());function S(){if(d.strictSchema===!1){v.logger.warn($());return}throw Error($());function $(){return`unknown format "${l}" ignored in schema at path "${m}"`}}function E($){let j=$ instanceof RegExp?(0,e.regexpCode)($):d.code.formats?e._`${d.code.formats}${(0,e.getProperty)(l)}`:void 0,I=a.scopeValue("formats",{key:l,ref:$,code:j});return typeof $=="object"&&!($ instanceof RegExp)?[$.type||"string",$.validate,e._`${I}.validate`]:["string",$,I]}function k(){if(typeof y=="object"&&!(y instanceof RegExp)&&y.async){if(!f.$async)throw Error("async format in sync schema");return e._`await ${w}(${o})`}return typeof x=="function"?e._`${w}(${o})`:e._`${w}.test(${o})`}}}};t.default=n}),Mre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Dre(),r=[e.default];t.default=r}),zre=X(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"]}),Lre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=lre(),r=_re(),n=jre(),s=Mre(),i=zre(),a=[e.default,r.default,(0,n.default)(),s.default,i.metadataVocabulary,i.contentVocabulary];t.default=a}),qre=X(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={}))}),Fre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Te(),r=qre(),n=a0(),s=lf(),i=We(),a={message:({params:{discrError:c,tagName:l}})=>c===r.DiscrError.Tag?`tag "${l}" must be string`:`value of tag "${l}" must be in oneOf`,params:({params:{discrError:c,tag:l,tagName:u}})=>e._`{error: ${c}, tag: ${u}, tagValue: ${l}}`},o={keyword:"discriminator",type:"object",schemaType:"object",error:a,code(c){let{gen:l,data:u,schema:p,parentSchema:d,it:m}=c,{oneOf:f}=d;if(!m.opts.discriminator)throw Error("discriminator: requires discriminator option");let v=p.propertyName;if(typeof v!="string")throw Error("discriminator: requires propertyName");if(p.mapping)throw Error("discriminator: mapping is not supported");if(!f)throw Error("discriminator: requires oneOf keyword");let g=l.let("valid",!1),h=l.const("tag",e._`${u}${(0,e.getProperty)(v)}`);l.if(e._`typeof ${h} == "string"`,()=>y(),()=>c.error(!1,{discrError:r.DiscrError.Tag,tag:h,tagName:v})),c.ok(g);function y(){let w=x();l.if(!1);for(let S in w)l.elseIf(e._`${h} === ${S}`),l.assign(g,b(w[S]));l.else(),c.error(!1,{discrError:r.DiscrError.Mapping,tag:h,tagName:v}),l.endIf()}function b(w){let S=l.name("valid"),E=c.subschema({keyword:"oneOf",schemaProp:w},S);return c.mergeEvaluated(E,e.Name),S}function x(){var w;let S={},E=$(d),k=!0;for(let q=0;q{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}}),JM=X((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=are(),n=Lre(),s=Fre(),i=Ure(),a=["/properties"],o="http://json-schema.org/draft-07/schema";class c extends r.default{_addVocabularies(){super._addVocabularies(),n.default.forEach(f=>this.addVocabulary(f)),this.opts.discriminator&&this.addKeyword(s.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let f=this.opts.$data?this.$dataMetaSchema(i,a):i;this.addMetaSchema(f,o,!1),this.refs["http://json-schema.org/schema"]=o}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(o)?o:void 0)}}t.Ajv=c,e.exports=t=c,e.exports.Ajv=c,Object.defineProperty(t,"__esModule",{value:!0}),t.default=c;var l=cf();Object.defineProperty(t,"KeywordCxt",{enumerable:!0,get:function(){return l.KeywordCxt}});var u=Te();Object.defineProperty(t,"_",{enumerable:!0,get:function(){return u._}}),Object.defineProperty(t,"str",{enumerable:!0,get:function(){return u.str}}),Object.defineProperty(t,"stringify",{enumerable:!0,get:function(){return u.stringify}}),Object.defineProperty(t,"nil",{enumerable:!0,get:function(){return u.nil}}),Object.defineProperty(t,"Name",{enumerable:!0,get:function(){return u.Name}}),Object.defineProperty(t,"CodeGen",{enumerable:!0,get:function(){return u.CodeGen}});var p=i0();Object.defineProperty(t,"ValidationError",{enumerable:!0,get:function(){return p.default}});var d=lf();Object.defineProperty(t,"MissingRefError",{enumerable:!0,get:function(){return d.default}})}),Hre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.formatNames=t.fastFormats=t.fullFormats=void 0;function e(I,q){return{validate:I,compare:q}}t.fullFormats={date:e(i,a),time:e(c(!0),l),"date-time":e(d(!0),m),"iso-time":e(c(),u),"iso-date-time":e(d(),f),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:h,"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:j,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:S},int64:{type:"number",validate:E},float:{type:"number",validate:k},double:{type:"number",validate:k},password:!0,binary:!0},t.fastFormats={...t.fullFormats,date:e(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,a),time:e(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,l),"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,m),"iso-time":e(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,u),"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,f),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(I){return I%4===0&&(I%100!==0||I%400===0)}var n=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,s=[0,31,28,31,30,31,30,31,31,30,31,30,31];function i(I){let q=n.exec(I);if(!q)return!1;let H=+q[1],Z=+q[2],W=+q[3];return Z>=1&&Z<=12&&W>=1&&W<=(Z===2&&r(H)?29:s[Z])}function a(I,q){if(I&&q)return I>q?1:I23||G>59||I&&!et)return!1;if(Z<=23&&W<=59&&we<60)return!0;let P=W-G*zt,U=Z-Ce*zt-(P<0?1:0);return(U===23||U===-1)&&(P===59||P===-1)&&we<61}}function l(I,q){if(!(I&&q))return;let H=new Date("2020-01-01T"+I).valueOf(),Z=new Date("2020-01-01T"+q).valueOf();if(H&&Z)return H-Z}function u(I,q){if(!(I&&q))return;let H=o.exec(I),Z=o.exec(q);if(H&&Z)return I=H[1]+H[2]+H[3],q=Z[1]+Z[2]+Z[3],I>q?1:I=x}function E(I){return Number.isInteger(I)}function k(){return!0}var $=/[^\\]\\Z/;function j(I){if($.test(I))return!1;try{return new RegExp(I),!0}catch{return!1}}}),Bre=X(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.formatLimitDefinition=void 0;var e=JM(),r=Te(),n=r.operators,s={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}},i={message:({keyword:o,schemaCode:c})=>r.str`should be ${s[o].okStr} ${c}`,params:({keyword:o,schemaCode:c})=>r._`{comparison: ${s[o].okStr}, limit: ${c}}`};t.formatLimitDefinition={keyword:Object.keys(s),type:"string",schemaType:"string",$data:!0,error:i,code(o){let{gen:c,data:l,schemaCode:u,keyword:p,it:d}=o,{opts:m,self:f}=d;if(!m.validateFormats)return;let v=new e.KeywordCxt(d,f.RULES.all.format.definition,"format");v.$data?g():h();function g(){let b=c.scopeValue("formats",{ref:f.formats,code:m.code.formats}),x=c.const("fmt",r._`${b}[${v.schemaCode}]`);o.fail$data((0,r.or)(r._`typeof ${x} != "object"`,r._`${x} instanceof RegExp`,r._`typeof ${x}.compare != "function"`,y(x)))}function h(){let b=v.schema,x=f.formats[b];if(!x||x===!0)return;if(typeof x!="object"||x instanceof RegExp||typeof x.compare!="function")throw Error(`"${p}": format "${b}" does not define "compare" function`);let w=c.scopeValue("formats",{key:b,ref:x,code:m.code.formats?r._`${m.code.formats}${(0,r.getProperty)(b)}`:void 0});o.fail$data(y(w))}function y(b){return r._`${b}.compare(${l}, ${u}) ${s[p].fail} 0`}},dependencies:["format"]};var a=o=>(o.addKeyword(t.formatLimitDefinition),o);t.default=a}),Wre=X((t,e)=>{Object.defineProperty(t,"__esModule",{value:!0});var r=Hre(),n=Bre(),s=Te(),i=new s.Name("fullFormats"),a=new s.Name("fastFormats"),o=(l,u={keywords:!0})=>{if(Array.isArray(u))return c(l,u,r.fullFormats,i),l;let[p,d]=u.mode==="fast"?[r.fastFormats,a]:[r.fullFormats,i],m=u.formats||r.formatNames;return c(l,m,p,d),u.keywords&&(0,n.default)(l),l};o.get=(l,u="full")=>{let p=(u==="fast"?r.fastFormats:r.fullFormats)[l];if(!p)throw Error(`Unknown format "${l}"`);return p};function c(l,u,p,d){var m,f;(m=(f=l.opts.code).formats)!==null&&m!==void 0||(f.formats=s._`require("ajv-formats/dist/formats").${d}`);for(let v of u)l.addFormat(v,p[v])}e.exports=t=o,Object.defineProperty(t,"__esModule",{value:!0}),t.default=o}),Zre=50;function XM(t=Zre){let e=new AbortController;return(0,QM.setMaxListeners)(t,e.signal),e}var Vre=typeof global=="object"&&global&&global.Object===Object&&global,Gre=Vre,Yre=typeof self=="object"&&self&&self.Object===Object&&self,Kre=Gre||Yre||Function("return this")(),c0=Kre,Jre=c0.Symbol,Qm=Jre,rz=Object.prototype,Qre=rz.hasOwnProperty,Xre=rz.toString,su=Qm?Qm.toStringTag:void 0;function ene(t){var e=Qre.call(t,su),r=t[su];try{t[su]=void 0;var n=!0}catch{}var s=Xre.call(t);return n&&(e?t[su]=r:delete t[su]),s}var tne=ene,rne=Object.prototype,nne=rne.toString;function sne(t){return nne.call(t)}var ine=sne,ane="[object Null]",one="[object Undefined]",fM=Qm?Qm.toStringTag:void 0;function cne(t){return t==null?t===void 0?one:ane:fM&&fM in Object(t)?tne(t):ine(t)}var lne=cne;function une(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}var nz=une,pne="[object AsyncFunction]",dne="[object Function]",mne="[object GeneratorFunction]",fne="[object Proxy]";function hne(t){if(!nz(t))return!1;var e=lne(t);return e==dne||e==mne||e==pne||e==fne}var gne=hne,vne=c0["__core-js_shared__"],A_=vne,hM=(function(){var t=/[^.]+$/.exec(A_&&A_.keys&&A_.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""})();function yne(t){return!!hM&&hM in t}var bne=yne,xne=Function.prototype,_ne=xne.toString;function wne(t){if(t!=null){try{return _ne.call(t)}catch{}try{return t+""}catch{}}return""}var Sne=wne,Ene=/[\\^$.*+?()[\]{}|]/g,kne=/^\[object .+?Constructor\]$/,Tne=Function.prototype,Rne=Object.prototype,$ne=Tne.toString,One=Rne.hasOwnProperty,Pne=RegExp("^"+$ne.call(One).replace(Ene,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Cne(t){if(!nz(t)||bne(t))return!1;var e=gne(t)?Pne:kne;return e.test(Sne(t))}var Ine=Cne;function Ane(t,e){return t?.[e]}var Nne=Ane;function jne(t,e){var r=Nne(t,e);return Ine(r)?r:void 0}var sz=jne,Dne=sz(Object,"create"),ou=Dne;function Mne(){this.__data__=ou?ou(null):{},this.size=0}var zne=Mne;function Lne(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}var qne=Lne,Fne="__lodash_hash_undefined__",Une=Object.prototype,Hne=Une.hasOwnProperty;function Bne(t){var e=this.__data__;if(ou){var r=e[t];return r===Fne?void 0:r}return Hne.call(e,t)?e[t]:void 0}var Wne=Bne,Zne=Object.prototype,Vne=Zne.hasOwnProperty;function Gne(t){var e=this.__data__;return ou?e[t]!==void 0:Vne.call(e,t)}var Yne=Gne,Kne="__lodash_hash_undefined__";function Jne(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=ou&&e===void 0?Kne:e,this}var Qne=Jne;function To(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e-1}var pse=use;function dse(t,e){var r=this.__data__,n=uf(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this}var mse=dse;function Ro(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(i=>i.trim()).filter(Boolean);if(e.length===0)return null;let r=e.some(i=>i.startsWith("!")),n=e.some(i=>!i.startsWith("!"));if(r&&n)return null;let s=e.map(i=>i.replace(/^!/,"").toLowerCase());return{include:r?[]:s,exclude:r?s:[],isExclusive:r}});function Nse(t){let e=[],r=t.match(/^MCP server ["']([^"']+)["']/);if(r&&r[1])e.push("mcp"),e.push(r[1].toLowerCase());else{let i=t.match(/^([^:[]+):/);i&&i[1]&&e.push(i[1].trim().toLowerCase())}let n=t.match(/^\[([^\]]+)]/);n&&n[1]&&e.push(n[1].trim().toLowerCase()),t.toLowerCase().includes("1p event:")&&e.push("1p");let s=t.match(/:\s*([^:]+?)(?:\s+(?:type|mode|status|event))?:/);if(s&&s[1]){let i=s[1].trim().toLowerCase();i.length<30&&!i.includes(" ")&&e.push(i)}return Array.from(new Set(e))}function jse(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 Dse(t,e){if(!e)return!0;let r=Nse(t);return jse(r,e)}function cz(){return process.env.CLAUDE_CONFIG_DIR??(0,az.join)((0,oz.homedir)(),".claude")}function vM(t){if(!t)return!1;if(typeof t=="boolean")return t;let e=t.toLowerCase().trim();return["1","true","yes","on"].includes(e)}function pz(t){return{name:t,default:3e4,validate:e=>{if(!e)return{effective:3e4,status:"valid"};let r=parseInt(e,10);return isNaN(r)||r<=0?{effective:3e4,status:"invalid",message:`Invalid value "${e}" (using default: 30000)`}:r>15e4?{effective:15e4,status:"capped",message:`Capped from ${r} to 150000`}:{effective:r,status:"valid"}}}}var Mse=pz("BASH_MAX_OUTPUT_LENGTH"),OSe=pz("TASK_MAX_OUTPUT_LENGTH"),zse={name:"CLAUDE_CODE_MAX_OUTPUT_TOKENS",default:32e3,validate:t=>{if(!t)return{effective:32e3,status:"valid"};let e=parseInt(t,10);return isNaN(e)||e<=0?{effective:32e3,status:"invalid",message:`Invalid value "${t}" (using default: 32000)`}:e>64e3?{effective:64e3,status:"capped",message:`Capped from ${e} to 64000`}:{effective:e,status:"valid"}}};function Lse(){let t="";return typeof process<"u"&&typeof process.cwd=="function"&&typeof z_.realpathSync=="function"&&(t=(0,z_.realpathSync)((0,lz.cwd)())),{originalCwd:t,projectRoot: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,uz.randomUUID)(),parentSessionId:void 0,loggerProvider:null,eventLogger:null,meterProvider:null,tracerProvider:null,agentColorMap:new Map,agentColorIndex:0,envVarValidators:[Mse,zse],lastAPIRequest:null,inMemoryErrorLog:[],inlinePlugins:[],useCoworkPlugins:!1,sessionBypassPermissionsMode:!1,sessionTrustAccepted:!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:[],promptCacheBreaks:[],sdkBetas:void 0,mainThreadAgentType:void 0,isRemoteMode:!1,directConnectServerUrl:void 0,additionalDirectoriesForClaudeMd:[],resumedTranscriptPath:null}}var qse=Lse();function Fse(){return qse.sessionId}function Use({writeFn:t,flushIntervalMs:e=1e3,maxBufferSize:r=100,immediateMode:n=!1}){let s=[],i=null;function a(){i&&(clearTimeout(i),i=null)}function o(){s.length!==0&&(t(s.join("")),s=[],a())}function c(){i||(i=setTimeout(o,e))}return{write(l){if(n){t(l);return}s.push(l),c(),s.length>=r&&o()},flush:o,dispose(){o()}}}var yM=new Set;function Hse(t){return yM.add(t),()=>yM.delete(t)}var dz=1/0;function Bse(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 mz(t,e){let r=performance.now();try{return e()}finally{performance.now()-r>dz}}function gs(t,e,r){let n=Bse(t);return mz(`JSON.stringify(${n})`,()=>JSON.stringify(t,e,r))}var fz=(t,e)=>{let r=typeof t=="string"?t.length:0;return mz(`JSON.parse(${r} chars)`,()=>JSON.parse(t,e))},Wse=Oo(()=>vM(process.env.DEBUG)||vM(process.env.DEBUG_SDK)||process.argv.includes("--debug")||process.argv.includes("-d")||hz()||process.argv.some(t=>t.startsWith("--debug="))||gz()!==null),Zse=Oo(()=>{let t=process.argv.find(r=>r.startsWith("--debug="));if(!t)return null;let e=t.substring(8);return Ase(e)}),hz=Oo(()=>process.argv.includes("--debug-to-stderr")||process.argv.includes("-d2e")),gz=Oo(()=>{for(let t=0;t"u"||typeof process.versions>"u"||typeof process.versions.node>"u")return!1;let e=Zse();return Dse(t,e)}var Gse=!1,Wm=null;function Yse(){return Wm||(Wm=Use({writeFn:t=>{let e=vz();vs().existsSync((0,Fi.dirname)(e))||vs().mkdirSync((0,Fi.dirname)(e)),vs().appendFileSync(e,t),Kse()},flushIntervalMs:1e3,maxBufferSize:100,immediateMode:Wse()}),Hse(async()=>Wm?.dispose())),Wm}function Li(t,{level:e}={level:"debug"}){if(!Vse(t))return;Gse&&t.includes(` `)&&(t=gs(t));let r=`${new Date().toISOString()} [${e.toUpperCase()}] ${t.trim()} -`;if(lz()){kse(r);return}Use().write(r)}function pz(){return uz()??process.env.CLAUDE_CODE_DEBUG_LOGS_DIR??(0,qi.join)(rz(),"debug",`${Nse()}.txt`)}var Hse=$o(()=>{if(process.argv[2]!=="--ripgrep")try{let t=pz(),e=(0,qi.dirname)(t),r=(0,qi.join)(e,"latest");if(vs().existsSync(e)||vs().mkdirSync(e),vs().existsSync(r))try{vs().unlinkSync(r)}catch{}vs().symlinkSync(t,r)}catch{}});function Nt(t,e){let r=performance.now();try{return e()}finally{performance.now()-r>az}}var Bse={cwd(){return process.cwd()},existsSync(t){return Nt(`existsSync(${t})`,()=>ve.existsSync(t))},async stat(t){return(0,Xn.stat)(t)},async readdir(t){return(0,Xn.readdir)(t,{withFileTypes:!0})},async unlink(t){return(0,Xn.unlink)(t)},async rmdir(t){return(0,Xn.rmdir)(t)},async rm(t,e){return(0,Xn.rm)(t,e)},statSync(t){return Nt(`statSync(${t})`,()=>ve.statSync(t))},lstatSync(t){return Nt(`lstatSync(${t})`,()=>ve.lstatSync(t))},readFileSync(t,e){return Nt(`readFileSync(${t})`,()=>ve.readFileSync(t,{encoding:e.encoding}))},readFileBytesSync(t){return Nt(`readFileBytesSync(${t})`,()=>ve.readFileSync(t))},readSync(t,e){return Nt(`readSync(${t}, ${e.length} bytes)`,()=>{let r;try{r=ve.openSync(t,"r");let n=Buffer.alloc(e.length),s=ve.readSync(r,n,0,e.length,0);return{buffer:n,bytesRead:s}}finally{r&&ve.closeSync(r)}})},appendFileSync(t,e,r){return Nt(`appendFileSync(${t}, ${e.length} chars)`,()=>{if(!ve.existsSync(t)&&r?.mode!==void 0){let n=ve.openSync(t,"a",r.mode);try{ve.appendFileSync(n,e)}finally{ve.closeSync(n)}}else ve.appendFileSync(t,e)})},copyFileSync(t,e){return Nt(`copyFileSync(${t} \u2192 ${e})`,()=>ve.copyFileSync(t,e))},unlinkSync(t){return Nt(`unlinkSync(${t})`,()=>ve.unlinkSync(t))},renameSync(t,e){return Nt(`renameSync(${t} \u2192 ${e})`,()=>ve.renameSync(t,e))},linkSync(t,e){return Nt(`linkSync(${t} \u2192 ${e})`,()=>ve.linkSync(t,e))},symlinkSync(t,e){return Nt(`symlinkSync(${t} \u2192 ${e})`,()=>ve.symlinkSync(t,e))},readlinkSync(t){return Nt(`readlinkSync(${t})`,()=>ve.readlinkSync(t))},realpathSync(t){return Nt(`realpathSync(${t})`,()=>ve.realpathSync(t))},mkdirSync(t,e){return Nt(`mkdirSync(${t})`,()=>{if(!ve.existsSync(t)){let r={recursive:!0};e?.mode!==void 0&&(r.mode=e.mode),ve.mkdirSync(t,r)}})},readdirSync(t){return Nt(`readdirSync(${t})`,()=>ve.readdirSync(t,{withFileTypes:!0}))},readdirStringSync(t){return Nt(`readdirStringSync(${t})`,()=>ve.readdirSync(t))},isDirEmptySync(t){return Nt(`isDirEmptySync(${t})`,()=>this.readdirSync(t).length===0)},rmdirSync(t){return Nt(`rmdirSync(${t})`,()=>ve.rmdirSync(t))},rmSync(t,e){return Nt(`rmSync(${t})`,()=>ve.rmSync(t,e))},createWriteStream(t){return ve.createWriteStream(t)}},Wse=Bse;function vs(){return Wse}var Li=class extends Error{};function dz(){return process.versions.bun!==void 0}var Bm=null,mM=!1;function Zse(){if(mM)return Bm;if(mM=!0,!process.env.DEBUG_CLAUDE_AGENT_SDK)return null;let t=(0,j_.join)(rz(),"debug");return Bm=(0,j_.join)(t,`sdk-${(0,mz.randomUUID)()}.txt`),!(0,Oo.existsSync)(t)&&(0,Oo.mkdirSync)(t,{recursive:!0}),process.stderr.write(`SDK debug logs: ${Bm} -`),Bm}function Vs(t){let e=Zse();if(!e)return;let r=`${new Date().toISOString()} ${t} -`;(0,Oo.appendFileSync)(e,r)}function Vse(t,e){let r={...t};if(e){let n={sandbox:e};if(r.settings)try{n={...cz(r.settings),sandbox:e}}catch{}r.settings=gs(n)}return r}var D_=class{options;process;processStdin;processStdout;ready=!1;abortController;exitError;exitListeners=[];processExitHandler;abortHandler;constructor(e){this.options=e,this.abortController=e.abortController||VM(),this.initialize()}getDefaultExecutable(){return dz()?"bun":"node"}spawnLocalProcess(e){let{command:r,args:n,cwd:s,env:i,signal:a}=e,o=i.DEBUG_CLAUDE_AGENT_SDK||this.options.stderr?"pipe":"ignore",c=(0,GM.spawn)(r,n,{cwd:s,stdio:["pipe","pipe",o],signal:a,env:i,windowsHide:!0});return(i.DEBUG_CLAUDE_AGENT_SDK||this.options.stderr)&&c.stderr.on("data",l=>{let u=l.toString();Vs(u),this.options.stderr&&this.options.stderr(u)}),{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=[],agent:r,betas:n,cwd:s,executable:i=this.getDefaultExecutable(),executableArgs:a=[],extraArgs:o={},pathToClaudeCodeExecutable:c,env:l={...process.env},maxThinkingTokens:u,maxTurns:p,maxBudgetUsd:d,model:m,fallbackModel:f,jsonSchema:v,permissionMode:g,allowDangerouslySkipPermissions:h,permissionPromptToolName:y,continueConversation:b,resume:x,settingSources:w,allowedTools:S=[],disallowedTools:E=[],tools:k,mcpServers:$,strictMcpConfig:j,canUseTool:I,includePartialMessages:q,plugins:H,sandbox:Z}=this.options,W=["--output-format","stream-json","--verbose","--input-format","stream-json"];if(u!==void 0&&W.push("--max-thinking-tokens",u.toString()),p&&W.push("--max-turns",p.toString()),d!==void 0&&W.push("--max-budget-usd",d.toString()),m&&W.push("--model",m),r&&W.push("--agent",r),n&&n.length>0&&W.push("--betas",n.join(",")),v&&W.push("--json-schema",gs(v)),this.options.debugFile?W.push("--debug-file",this.options.debugFile):this.options.debug&&W.push("--debug"),l.DEBUG_CLAUDE_AGENT_SDK&&W.push("--debug-to-stderr"),I){if(y)throw Error("canUseTool callback cannot be used with permissionPromptToolName. Please use one or the other.");W.push("--permission-prompt-tool","stdio")}else y&&W.push("--permission-prompt-tool",y);if(b&&W.push("--continue"),x&&W.push("--resume",x),S.length>0&&W.push("--allowedTools",S.join(",")),E.length>0&&W.push("--disallowedTools",E.join(",")),k!==void 0&&(Array.isArray(k)?k.length===0?W.push("--tools",""):W.push("--tools",k.join(",")):W.push("--tools","default")),$&&Object.keys($).length>0&&W.push("--mcp-config",gs({mcpServers:$})),w&&W.push("--setting-sources",w.join(",")),j&&W.push("--strict-mcp-config"),g&&W.push("--permission-mode",g),h&&W.push("--allow-dangerously-skip-permissions"),f){if(m&&f===m)throw Error("Fallback model cannot be the same as the main model. Please specify a different model for fallbackModel option.");W.push("--fallback-model",f)}q&&W.push("--include-partial-messages");for(let U of e)W.push("--add-dir",U);if(H&&H.length>0)for(let U of H)if(U.type==="local")W.push("--plugin-dir",U.path);else throw Error(`Unsupported plugin type: ${U.type}`);this.options.forkSession&&W.push("--fork-session"),this.options.resumeSessionAt&&W.push("--resume-session-at",this.options.resumeSessionAt),this.options.persistSession===!1&&W.push("--no-session-persistence");let we=Vse(o??{},Z);for(let[U,A]of Object.entries(we))A===null?W.push(`--${U}`):W.push(`--${U}`,A);l.CLAUDE_CODE_ENTRYPOINT||(l.CLAUDE_CODE_ENTRYPOINT="sdk-ts"),delete l.NODE_OPTIONS,l.DEBUG_CLAUDE_AGENT_SDK?l.DEBUG="1":delete l.DEBUG;let et=Gse(c),zt=et?c:i,Ce=et?[...a,...W]:[...a,c,...W],G={command:zt,args:Ce,cwd:s,env:l,signal:this.abortController.signal};if(this.options.spawnClaudeCodeProcess)Vs(`Spawning Claude Code (custom): ${zt} ${Ce.join(" ")}`),this.process=this.options.spawnClaudeCodeProcess(G);else{if(!vs().existsSync(c)){let U=et?`Claude Code native binary not found at ${c}. Please ensure Claude Code is installed via native installer or specify a valid path with options.pathToClaudeCodeExecutable.`:`Claude Code executable not found at ${c}. Is options.pathToClaudeCodeExecutable set?`;throw ReferenceError(U)}Vs(`Spawning Claude Code: ${zt} ${Ce.join(" ")}`),this.process=this.spawnLocalProcess(G)}this.processStdin=this.process.stdin,this.processStdout=this.process.stdout;let P=()=>{this.process&&!this.process.killed&&this.process.kill("SIGTERM")};this.processExitHandler=P,this.abortHandler=P,process.on("exit",this.processExitHandler),this.abortController.signal.addEventListener("abort",this.abortHandler),this.process.on("error",U=>{this.ready=!1,this.abortController.signal.aborted?this.exitError=new Li("Claude Code process aborted by user"):(this.exitError=Error(`Failed to spawn Claude Code process: ${U.message}`),Vs(this.exitError.message))}),this.process.on("exit",(U,A)=>{if(this.ready=!1,this.abortController.signal.aborted)this.exitError=new Li("Claude Code process aborted by user");else{let T=this.getProcessExitError(U,A);T&&(this.exitError=T,Vs(T.message))}}),this.ready=!0}catch(e){throw this.ready=!1,e}}getProcessExitError(e,r){if(e!==0&&e!==null)return Error(`Claude Code process exited with code ${e}`);if(r)return Error(`Claude Code process terminated by signal ${r}`)}write(e){if(this.abortController.signal.aborted)throw new Li("Operation aborted");if(!this.ready||!this.processStdin)throw Error("ProcessTransport is not ready for writing");if(this.process?.killed||this.process?.exitCode!==null)throw Error("Cannot write to terminated process");if(this.exitError)throw Error(`Cannot write to process that exited with error: ${this.exitError.message}`);Vs(`[ProcessTransport] Writing to stdin: ${e.substring(0,100)}`);try{this.processStdin.write(e)||Vs("[ProcessTransport] Write buffer full, data queued")}catch(r){throw this.ready=!1,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 Error("ProcessTransport output stream not available");let e=(0,YM.createInterface)({input:this.processStdout});try{for await(let r of e)if(r.trim())try{yield cz(r)}catch{throw Vs(`Non-JSON stdout: ${r}`),Error(`CLI output was not valid JSON. This may indicate an error during startup. Output: ${r.slice(0,200)}${r.length>200?"...":""}`)}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,s)=>{let i=this.getProcessExitError(n,s);e(i)};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(s=>s.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=(i,a)=>{if(this.abortController.signal.aborted){r(new Li("Operation aborted"));return}let o=this.getProcessExitError(i,a);o?r(o):e()};this.process.once("exit",n);let s=i=>{this.process.off("exit",n),r(i)};this.process.once("error",s),this.process.once("exit",()=>{this.process.off("error",s)})})}};function Gse(t){return![".js",".mjs",".tsx",".ts",".jsx"].some(e=>t.endsWith(e))}var Jm=class{returned;queue=[];readResolve;readReject;isDone=!1;hasError;started=!1;constructor(e){this.returned=e}[Symbol.asyncIterator](){if(this.started)throw 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 Error("Transport is closed");this.sendMcpMessage(e)}async close(){this.isClosed||(this.isClosed=!0,this.onclose?.())}},z_=class{transport;isSingleUserTurn;canUseTool;hooks;abortController;jsonSchema;initConfig;pendingControlResponses=new Map;cleanupPerformed=!1;sdkMessages;inputStream=new Jm;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,s,i,a=new Map,o,c){this.transport=e,this.isSingleUserTurn=r,this.canUseTool=n,this.hooks=s,this.abortController=i,this.jsonSchema=o,this.initConfig=c;for(let[l,u]of a)this.connectSdkMcpServer(l,u);this.sdkMessages=this.readSdkMessages(),this.readMessages(),this.initialization=this.initialize(),this.initialization.catch(()=>{})}setError(e){this.inputStream.error(e)}close(){this.cleanup()}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==="streamlined_text"||e.type==="streamlined_tool_use_summary"||(e.type==="result"&&(this.firstResultReceived=!0,this.firstResultReceivedResolve&&this.firstResultReceivedResolve(),this.isSingleUserTurn&&(zi("[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),s={type:"control_response",response:{subtype:"success",request_id:e.request_id,response:n}};await Promise.resolve(this.transport.write(gs(s)+` +`;if(hz()){Ise(r);return}Yse().write(r)}function vz(){return gz()??process.env.CLAUDE_CODE_DEBUG_LOGS_DIR??(0,Fi.join)(cz(),"debug",`${Fse()}.txt`)}var Kse=Oo(()=>{if(process.argv[2]!=="--ripgrep")try{let t=vz(),e=(0,Fi.dirname)(t),r=(0,Fi.join)(e,"latest");if(vs().existsSync(e)||vs().mkdirSync(e),vs().existsSync(r))try{vs().unlinkSync(r)}catch{}vs().symlinkSync(t,r)}catch{}});function Nt(t,e){let r=performance.now();try{return e()}finally{performance.now()-r>dz}}var Jse={cwd(){return process.cwd()},existsSync(t){return Nt(`existsSync(${t})`,()=>ve.existsSync(t))},async stat(t){return(0,Xn.stat)(t)},async readdir(t){return(0,Xn.readdir)(t,{withFileTypes:!0})},async unlink(t){return(0,Xn.unlink)(t)},async rmdir(t){return(0,Xn.rmdir)(t)},async rm(t,e){return(0,Xn.rm)(t,e)},statSync(t){return Nt(`statSync(${t})`,()=>ve.statSync(t))},lstatSync(t){return Nt(`lstatSync(${t})`,()=>ve.lstatSync(t))},readFileSync(t,e){return Nt(`readFileSync(${t})`,()=>ve.readFileSync(t,{encoding:e.encoding}))},readFileBytesSync(t){return Nt(`readFileBytesSync(${t})`,()=>ve.readFileSync(t))},readSync(t,e){return Nt(`readSync(${t}, ${e.length} bytes)`,()=>{let r;try{r=ve.openSync(t,"r");let n=Buffer.alloc(e.length),s=ve.readSync(r,n,0,e.length,0);return{buffer:n,bytesRead:s}}finally{r&&ve.closeSync(r)}})},appendFileSync(t,e,r){return Nt(`appendFileSync(${t}, ${e.length} chars)`,()=>{if(!ve.existsSync(t)&&r?.mode!==void 0){let n=ve.openSync(t,"a",r.mode);try{ve.appendFileSync(n,e)}finally{ve.closeSync(n)}}else ve.appendFileSync(t,e)})},copyFileSync(t,e){return Nt(`copyFileSync(${t} \u2192 ${e})`,()=>ve.copyFileSync(t,e))},unlinkSync(t){return Nt(`unlinkSync(${t})`,()=>ve.unlinkSync(t))},renameSync(t,e){return Nt(`renameSync(${t} \u2192 ${e})`,()=>ve.renameSync(t,e))},linkSync(t,e){return Nt(`linkSync(${t} \u2192 ${e})`,()=>ve.linkSync(t,e))},symlinkSync(t,e){return Nt(`symlinkSync(${t} \u2192 ${e})`,()=>ve.symlinkSync(t,e))},readlinkSync(t){return Nt(`readlinkSync(${t})`,()=>ve.readlinkSync(t))},realpathSync(t){return Nt(`realpathSync(${t})`,()=>ve.realpathSync(t))},mkdirSync(t,e){return Nt(`mkdirSync(${t})`,()=>{if(!ve.existsSync(t)){let r={recursive:!0};e?.mode!==void 0&&(r.mode=e.mode),ve.mkdirSync(t,r)}})},readdirSync(t){return Nt(`readdirSync(${t})`,()=>ve.readdirSync(t,{withFileTypes:!0}))},readdirStringSync(t){return Nt(`readdirStringSync(${t})`,()=>ve.readdirSync(t))},isDirEmptySync(t){return Nt(`isDirEmptySync(${t})`,()=>this.readdirSync(t).length===0)},rmdirSync(t){return Nt(`rmdirSync(${t})`,()=>ve.rmdirSync(t))},rmSync(t,e){return Nt(`rmSync(${t})`,()=>ve.rmSync(t,e))},createWriteStream(t){return ve.createWriteStream(t)}},Qse=Jse;function vs(){return Qse}var qi=class extends Error{};function yz(){return process.versions.bun!==void 0}var Zm=null,bM=!1;function Xse(){if(bM)return Zm;if(bM=!0,!process.env.DEBUG_CLAUDE_AGENT_SDK)return null;let t=(0,L_.join)(cz(),"debug");return Zm=(0,L_.join)(t,`sdk-${(0,bz.randomUUID)()}.txt`),!(0,Po.existsSync)(t)&&(0,Po.mkdirSync)(t,{recursive:!0}),process.stderr.write(`SDK debug logs: ${Zm} +`),Zm}function Vs(t){let e=Xse();if(!e)return;let r=`${new Date().toISOString()} ${t} +`;(0,Po.appendFileSync)(e,r)}function eie(t,e){let r={...t};if(e){let n={sandbox:e};if(r.settings)try{n={...fz(r.settings),sandbox:e}}catch{}r.settings=gs(n)}return r}var q_=class{options;process;processStdin;processStdout;ready=!1;abortController;exitError;exitListeners=[];processExitHandler;abortHandler;constructor(e){this.options=e,this.abortController=e.abortController||XM(),this.initialize()}getDefaultExecutable(){return yz()?"bun":"node"}spawnLocalProcess(e){let{command:r,args:n,cwd:s,env:i,signal:a}=e,o=i.DEBUG_CLAUDE_AGENT_SDK||this.options.stderr?"pipe":"ignore",c=(0,ez.spawn)(r,n,{cwd:s,stdio:["pipe","pipe",o],signal:a,env:i,windowsHide:!0});return(i.DEBUG_CLAUDE_AGENT_SDK||this.options.stderr)&&c.stderr.on("data",l=>{let u=l.toString();Vs(u),this.options.stderr&&this.options.stderr(u)}),{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=[],agent:r,betas:n,cwd:s,executable:i=this.getDefaultExecutable(),executableArgs:a=[],extraArgs:o={},pathToClaudeCodeExecutable:c,env:l={...process.env},maxThinkingTokens:u,maxTurns:p,maxBudgetUsd:d,model:m,fallbackModel:f,jsonSchema:v,permissionMode:g,allowDangerouslySkipPermissions:h,permissionPromptToolName:y,continueConversation:b,resume:x,settingSources:w,allowedTools:S=[],disallowedTools:E=[],tools:k,mcpServers:$,strictMcpConfig:j,canUseTool:I,includePartialMessages:q,plugins:H,sandbox:Z}=this.options,W=["--output-format","stream-json","--verbose","--input-format","stream-json"];if(u!==void 0&&W.push("--max-thinking-tokens",u.toString()),p&&W.push("--max-turns",p.toString()),d!==void 0&&W.push("--max-budget-usd",d.toString()),m&&W.push("--model",m),r&&W.push("--agent",r),n&&n.length>0&&W.push("--betas",n.join(",")),v&&W.push("--json-schema",gs(v)),this.options.debugFile?W.push("--debug-file",this.options.debugFile):this.options.debug&&W.push("--debug"),l.DEBUG_CLAUDE_AGENT_SDK&&W.push("--debug-to-stderr"),I){if(y)throw Error("canUseTool callback cannot be used with permissionPromptToolName. Please use one or the other.");W.push("--permission-prompt-tool","stdio")}else y&&W.push("--permission-prompt-tool",y);if(b&&W.push("--continue"),x&&W.push("--resume",x),S.length>0&&W.push("--allowedTools",S.join(",")),E.length>0&&W.push("--disallowedTools",E.join(",")),k!==void 0&&(Array.isArray(k)?k.length===0?W.push("--tools",""):W.push("--tools",k.join(",")):W.push("--tools","default")),$&&Object.keys($).length>0&&W.push("--mcp-config",gs({mcpServers:$})),w&&W.push("--setting-sources",w.join(",")),j&&W.push("--strict-mcp-config"),g&&W.push("--permission-mode",g),h&&W.push("--allow-dangerously-skip-permissions"),f){if(m&&f===m)throw Error("Fallback model cannot be the same as the main model. Please specify a different model for fallbackModel option.");W.push("--fallback-model",f)}q&&W.push("--include-partial-messages");for(let U of e)W.push("--add-dir",U);if(H&&H.length>0)for(let U of H)if(U.type==="local")W.push("--plugin-dir",U.path);else throw Error(`Unsupported plugin type: ${U.type}`);this.options.forkSession&&W.push("--fork-session"),this.options.resumeSessionAt&&W.push("--resume-session-at",this.options.resumeSessionAt),this.options.persistSession===!1&&W.push("--no-session-persistence");let we=eie(o??{},Z);for(let[U,A]of Object.entries(we))A===null?W.push(`--${U}`):W.push(`--${U}`,A);l.CLAUDE_CODE_ENTRYPOINT||(l.CLAUDE_CODE_ENTRYPOINT="sdk-ts"),delete l.NODE_OPTIONS,l.DEBUG_CLAUDE_AGENT_SDK?l.DEBUG="1":delete l.DEBUG;let et=tie(c),zt=et?c:i,Ce=et?[...a,...W]:[...a,c,...W],G={command:zt,args:Ce,cwd:s,env:l,signal:this.abortController.signal};if(this.options.spawnClaudeCodeProcess)Vs(`Spawning Claude Code (custom): ${zt} ${Ce.join(" ")}`),this.process=this.options.spawnClaudeCodeProcess(G);else{if(!vs().existsSync(c)){let U=et?`Claude Code native binary not found at ${c}. Please ensure Claude Code is installed via native installer or specify a valid path with options.pathToClaudeCodeExecutable.`:`Claude Code executable not found at ${c}. Is options.pathToClaudeCodeExecutable set?`;throw ReferenceError(U)}Vs(`Spawning Claude Code: ${zt} ${Ce.join(" ")}`),this.process=this.spawnLocalProcess(G)}this.processStdin=this.process.stdin,this.processStdout=this.process.stdout;let P=()=>{this.process&&!this.process.killed&&this.process.kill("SIGTERM")};this.processExitHandler=P,this.abortHandler=P,process.on("exit",this.processExitHandler),this.abortController.signal.addEventListener("abort",this.abortHandler),this.process.on("error",U=>{this.ready=!1,this.abortController.signal.aborted?this.exitError=new qi("Claude Code process aborted by user"):(this.exitError=Error(`Failed to spawn Claude Code process: ${U.message}`),Vs(this.exitError.message))}),this.process.on("exit",(U,A)=>{if(this.ready=!1,this.abortController.signal.aborted)this.exitError=new qi("Claude Code process aborted by user");else{let T=this.getProcessExitError(U,A);T&&(this.exitError=T,Vs(T.message))}}),this.ready=!0}catch(e){throw this.ready=!1,e}}getProcessExitError(e,r){if(e!==0&&e!==null)return Error(`Claude Code process exited with code ${e}`);if(r)return Error(`Claude Code process terminated by signal ${r}`)}write(e){if(this.abortController.signal.aborted)throw new qi("Operation aborted");if(!this.ready||!this.processStdin)throw Error("ProcessTransport is not ready for writing");if(this.process?.killed||this.process?.exitCode!==null)throw Error("Cannot write to terminated process");if(this.exitError)throw Error(`Cannot write to process that exited with error: ${this.exitError.message}`);Vs(`[ProcessTransport] Writing to stdin: ${e.substring(0,100)}`);try{this.processStdin.write(e)||Vs("[ProcessTransport] Write buffer full, data queued")}catch(r){throw this.ready=!1,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 Error("ProcessTransport output stream not available");let e=(0,tz.createInterface)({input:this.processStdout});try{for await(let r of e)if(r.trim())try{yield fz(r)}catch{throw Vs(`Non-JSON stdout: ${r}`),Error(`CLI output was not valid JSON. This may indicate an error during startup. Output: ${r.slice(0,200)}${r.length>200?"...":""}`)}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,s)=>{let i=this.getProcessExitError(n,s);e(i)};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(s=>s.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=(i,a)=>{if(this.abortController.signal.aborted){r(new qi("Operation aborted"));return}let o=this.getProcessExitError(i,a);o?r(o):e()};this.process.once("exit",n);let s=i=>{this.process.off("exit",n),r(i)};this.process.once("error",s),this.process.once("exit",()=>{this.process.off("error",s)})})}};function tie(t){return![".js",".mjs",".tsx",".ts",".jsx"].some(e=>t.endsWith(e))}var Xm=class{returned;queue=[];readResolve;readReject;isDone=!1;hasError;started=!1;constructor(e){this.returned=e}[Symbol.asyncIterator](){if(this.started)throw 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})}},F_=class{sendMcpMessage;isClosed=!1;constructor(e){this.sendMcpMessage=e}onclose;onerror;onmessage;async start(){}async send(e){if(this.isClosed)throw Error("Transport is closed");this.sendMcpMessage(e)}async close(){this.isClosed||(this.isClosed=!0,this.onclose?.())}},U_=class{transport;isSingleUserTurn;canUseTool;hooks;abortController;jsonSchema;initConfig;pendingControlResponses=new Map;cleanupPerformed=!1;sdkMessages;inputStream=new Xm;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,s,i,a=new Map,o,c){this.transport=e,this.isSingleUserTurn=r,this.canUseTool=n,this.hooks=s,this.abortController=i,this.jsonSchema=o,this.initConfig=c;for(let[l,u]of a)this.connectSdkMcpServer(l,u);this.sdkMessages=this.readSdkMessages(),this.readMessages(),this.initialization=this.initialize(),this.initialization.catch(()=>{})}setError(e){this.inputStream.error(e)}close(){this.cleanup()}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==="streamlined_text"||e.type==="streamlined_tool_use_summary"||(e.type==="result"&&(this.firstResultReceived=!0,this.firstResultReceivedResolve&&this.firstResultReceivedResolve(),this.isSingleUserTurn&&(Li("[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),s={type:"control_response",response:{subtype:"success",request_id:e.request_id,response:n}};await Promise.resolve(this.transport.write(gs(s)+` `))}catch(n){let s={type:"control_response",response:{subtype:"error",request_id:e.request_id,error:n.message||String(n)}};await Promise.resolve(this.transport.write(gs(s)+` `))}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 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,s=this.sdkMcpTransports.get(n.server_name);if(!s)throw 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,s)}:(s.onmessage&&s.onmessage(n.message),{mcp_response:{jsonrpc:"2.0",result:{},id:0}})}}throw 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,i]of Object.entries(this.hooks))i.length>0&&(e[s]=i.map(a=>{let o=[];for(let c of a.hooks){let l=`hook_${this.nextCallbackId++}`;this.hookCallbacks.set(l,c),o.push(l)}return{matcher:a.matcher,hookCallbackIds:o,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((s,i)=>{this.pendingControlResponses.set(r,a=>{a.subtype==="success"?s(a):(i(Error(a.error)),a.pending_permission_requests&&this.processPendingPermissionRequests(a.pending_permission_requests))}),Promise.resolve(this.transport.write(gs(n)+` -`))})}async initializationResult(){return this.initialization}async supportedCommands(){return(await this.initialization).commands}async supportedModels(){return(await this.initialization).models}async reconnectMcpServer(e){await this.request({subtype:"mcp_reconnect",serverName:e})}async toggleMcpServer(e,r){await this.request({subtype:"mcp_toggle",serverName:e,enabled:r})}async mcpServerStatus(){return(await this.request({subtype:"mcp_status"})).response.mcpServers}async setMcpServers(e){let r={},n={};for(let[o,c]of Object.entries(e))c.type==="sdk"&&"instance"in c?r[o]=c.instance:n[o]=c;let s=new Set(this.sdkMcpServerInstances.keys()),i=new Set(Object.keys(r));for(let o of s)i.has(o)||await this.disconnectSdkMcpServer(o);for(let[o,c]of Object.entries(r))s.has(o)||this.connectSdkMcpServer(o,c);let a={};for(let o of Object.keys(r))a[o]={type:"sdk",name:o};return(await this.request({subtype:"mcp_set_servers",servers:{...n,...a}})).response}async accountInfo(){return(await this.initialization).account}async streamInput(e){zi("[Query.streamInput] Starting to process input stream");try{let r=0;for await(let n of e){if(r++,zi(`[Query.streamInput] Processing message ${r}: ${n.type}`),this.abortController?.signal.aborted)break;await Promise.resolve(this.transport.write(gs(n)+` -`))}zi(`[Query.streamInput] Finished processing ${r} messages from input stream`),r>0&&this.hasBidirectionalNeeds()&&(zi("[Query.streamInput] Has bidirectional needs, waiting for first result"),await this.waitForFirstResult()),zi("[Query] Calling transport.endInput() to close stdin to CLI process"),this.transport.endInput()}catch(r){if(!(r instanceof Li))throw r}}waitForFirstResult(){return this.firstResultReceived?(zi("[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,s){let i=this.hookCallbacks.get(e);if(!i)throw Error(`No hook callback found for ID: ${e}`);return i(r,n,{signal:s})}connectSdkMcpServer(e,r){let n=new M_(s=>this.sendMcpServerMessageToCli(e,s));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 s=`${e}:${r.id}`,i=this.pendingMcpResponses.get(s);if(i){i.resolve(r),this.pendingMcpResponses.delete(s);return}}let n={type:"control_request",request_id:(0,fz.randomUUID)(),request:{subtype:"mcp_message",server_name:e,message:r}};this.transport.write(gs(n)+` -`)}handleMcpControlRequest(e,r,n){let s="id"in r.message?r.message.id:null,i=`${e}:${s}`;return new Promise((a,o)=>{let c=()=>{this.pendingMcpResponses.delete(i)},l=p=>{c(),a(p)},u=p=>{c(),o(p)};if(this.pendingMcpResponses.set(i,{resolve:l,reject:u}),n.onmessage)n.onmessage(r.message);else{c(),o(Error("No message handler registered"));return}})}},q_=class{closed=!1;inputStream;query;queryIterator=null;abortController;_sessionId=null;get sessionId(){if(this._sessionId===null)throw Error("Session ID not available until after receiving messages");return this._sessionId}constructor(e){e.resume&&(this._sessionId=e.resume),this.inputStream=new Jm;let r=e.pathToClaudeCodeExecutable;if(!r){let i=(0,hz.fileURLToPath)(spe.url),a=(0,L_.join)(i,"..");r=(0,L_.join)(a,"cli.js")}let n={...e.env??process.env};n.CLAUDE_CODE_ENTRYPOINT||(n.CLAUDE_CODE_ENTRYPOINT="sdk-ts"),this.abortController=VM();let s=new D_({abortController:this.abortController,pathToClaudeCodeExecutable:r,env:n,executable:e.executable??(dz()?"bun":"node"),executableArgs:e.executableArgs??[],extraArgs:{},maxThinkingTokens:void 0,maxTurns:void 0,maxBudgetUsd:void 0,model:e.model,fallbackModel:void 0,permissionMode:e.permissionMode??"default",allowDangerouslySkipPermissions:!1,continueConversation:!1,resume:e.resume,settingSources:[],allowedTools:e.allowedTools??[],disallowedTools:e.disallowedTools??[],mcpServers:{},strictMcpConfig:!1,canUseTool:!!e.canUseTool,hooks:!!e.hooks,includePartialMessages:!1,forkSession:!1,resumeSessionAt:void 0});this.query=new z_(s,!1,e.canUseTool,e.hooks,this.abortController,new Map),this.query.streamInput(this.inputStream)}async send(e){if(this.closed)throw Error("Cannot send to closed session");let r=typeof e=="string"?{type:"user",session_id:"",message:{role:"user",content:[{type:"text",text:e}]},parent_tool_use_id:null}:e;this.inputStream.enqueue(r)}async*stream(){for(this.queryIterator||(this.queryIterator=this.query[Symbol.asyncIterator]());;){let{value:e,done:r}=await this.queryIterator.next();if(r||(e.type==="system"&&e.subtype==="init"&&(this._sessionId=e.session_id),yield e,e.type==="result"))return}}close(){this.closed||(this.closed=!0,this.inputStream.done(),this.abortController.abort())}async[Symbol.asyncDispose](){this.close()}};function Yse(t){return new q_(t)}var He;(function(t){t.assertEqual=s=>{};function e(s){}t.assertIs=e;function r(s){throw Error()}t.assertNever=r,t.arrayToEnum=s=>{let i={};for(let a of s)i[a]=a;return i},t.getValidEnumValues=s=>{let i=t.objectKeys(s).filter(o=>typeof s[s[o]]!="number"),a={};for(let o of i)a[o]=s[o];return t.objectValues(a)},t.objectValues=s=>t.objectKeys(s).map(function(i){return s[i]}),t.objectKeys=typeof Object.keys=="function"?s=>Object.keys(s):s=>{let i=[];for(let a in s)Object.prototype.hasOwnProperty.call(s,a)&&i.push(a);return i},t.find=(s,i)=>{for(let a of s)if(i(a))return a},t.isInteger=typeof Number.isInteger=="function"?s=>Number.isInteger(s):s=>typeof s=="number"&&Number.isFinite(s)&&Math.floor(s)===s;function n(s,i=" | "){return s.map(a=>typeof a=="string"?`'${a}'`:a).join(i)}t.joinValues=n,t.jsonStringifyReplacer=(s,i)=>typeof i=="bigint"?i.toString():i})(He||(He={}));var fM;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(fM||(fM={}));var te=He.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Gs=t=>{switch(typeof t){case"undefined":return te.undefined;case"string":return te.string;case"number":return Number.isNaN(t)?te.nan:te.number;case"boolean":return te.boolean;case"function":return te.function;case"bigint":return te.bigint;case"symbol":return te.symbol;case"object":return Array.isArray(t)?te.array:t===null?te.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?te.promise:typeof Map<"u"&&t instanceof Map?te.map:typeof Set<"u"&&t instanceof Set?te.set:typeof Date<"u"&&t instanceof Date?te.date:te.object;default:return te.unknown}},V=He.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"]),cn=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(i){return i.message},n={_errors:[]},s=i=>{for(let a of i.issues)if(a.code==="invalid_union")a.unionErrors.map(s);else if(a.code==="invalid_return_type")s(a.returnTypeError);else if(a.code==="invalid_arguments")s(a.argumentsError);else if(a.path.length===0)n._errors.push(r(a));else{let o=n,c=0;for(;cr.message){let r={},n=[];for(let s of this.issues)if(s.path.length>0){let i=s.path[0];r[i]=r[i]||[],r[i].push(e(s))}else n.push(e(s));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};cn.create=t=>new cn(t);var Kse=(t,e)=>{let r;switch(t.code){case V.invalid_type:t.received===te.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case V.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,He.jsonStringifyReplacer)}`;break;case V.unrecognized_keys:r=`Unrecognized key(s) in object: ${He.joinValues(t.keys,", ")}`;break;case V.invalid_union:r="Invalid input";break;case V.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${He.joinValues(t.options)}`;break;case V.invalid_enum_value:r=`Invalid enum value. Expected ${He.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}"`:He.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,He.assertNever(t)}return{message:r}},au=Kse,Jse=au;function F_(){return Jse}var U_=t=>{let{data:e,path:r,errorMaps:n,issueData:s}=t,i=[...r,...s.path||[]],a={...s,path:i};if(s.message!==void 0)return{...s,path:i,message:s.message};let o="",c=n.filter(l=>!!l).slice().reverse();for(let l of c)o=l(a,{data:e,defaultError:o}).message;return{...s,path:i,message:o}};function Q(t,e){let r=F_(),n=U_({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===au?void 0:au].filter(s=>!!s)});t.common.issues.push(n)}var _r=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 s of r){if(s.status==="aborted")return he;s.status==="dirty"&&e.dirty(),n.push(s.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let s of r){let i=await s.key,a=await s.value;n.push({key:i,value:a})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let s of r){let{key:i,value:a}=s;if(i.status==="aborted"||a.status==="aborted")return he;i.status==="dirty"&&e.dirty(),a.status==="dirty"&&e.dirty(),i.value!=="__proto__"&&(typeof a.value<"u"||s.alwaysSet)&&(n[i.value]=a.value)}return{status:e.value,value:n}}},he=Object.freeze({status:"aborted"}),nu=t=>({status:"dirty",value:t}),Lr=t=>({status:"valid",value:t}),hM=t=>t.status==="aborted",gM=t=>t.status==="dirty",uo=t=>t.status==="valid",Qm=t=>typeof Promise<"u"&&t instanceof Promise,re;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(re||(re={}));var ln=class{constructor(e,r,n,s){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=s}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}},vM=(t,e)=>{if(uo(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new cn(t.common.issues);return this._error=r,this._error}}};function _e(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:s}=t;if(e&&(r||n))throw Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:s}:{errorMap:(i,a)=>{let{message:o}=t;return i.code==="invalid_enum_value"?{message:o??a.defaultError}:typeof a.data>"u"?{message:o??n??a.defaultError}:i.code!=="invalid_type"?{message:a.defaultError}:{message:o??r??a.defaultError}},description:s}}var Re=class{get description(){return this._def.description}_getType(e){return Gs(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:Gs(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new _r,ctx:{common:e.parent.common,data:e.data,parsedType:Gs(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(Qm(r))throw 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:Gs(e)},s=this._parseSync({data:e,path:n.path,parent:n});return vM(n,s)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Gs(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return uo(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=>uo(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:Gs(e)},s=this._parse({data:e,path:n.path,parent:n}),i=await(Qm(s)?s:Promise.resolve(s));return vM(n,i)}refine(e,r){let n=s=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(s):r;return this._refinement((s,i)=>{let a=e(s),o=()=>i.addIssue({code:V.custom,...n(s)});return typeof Promise<"u"&&a instanceof Promise?a.then(c=>c?!0:(o(),!1)):a?!0:(o(),!1)})}refinement(e,r){return this._refinement((n,s)=>e(n)?!0:(s.addIssue(typeof r=="function"?r(n,s):r),!1))}_refinement(e){return new Pn({schema:this,typeName:ge.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 On.create(this,this._def)}nullable(){return bs.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Js.create(this)}promise(){return Fi.create(this,this._def)}or(e){return ho.create([this,e],this._def)}and(e){return go.create(this,e,this._def)}transform(e){return new Pn({..._e(this._def),schema:this,typeName:ge.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new _o({..._e(this._def),innerType:this,defaultValue:r,typeName:ge.ZodDefault})}brand(){return new Xm({typeName:ge.ZodBranded,type:this,..._e(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new wo({..._e(this._def),innerType:this,catchValue:r,typeName:ge.ZodCatch})}describe(e){return new this.constructor({...this._def,description:e})}pipe(e){return ef.create(this,e)}readonly(){return So.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Qse=/^c[^\s-]{8,}$/i,Xse=/^[0-9a-z]+$/,eie=/^[0-9A-HJKMNP-TV-Z]{26}$/i,tie=/^[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,rie=/^[a-z0-9_-]{21}$/i,nie=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,sie=/^[-+]?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)?)??$/,iie=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,aie="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",P_,oie=/^(?:(?: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])$/,cie=/^(?:(?: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])$/,lie=/^(([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]))$/,uie=/^(([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])$/,pie=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,die=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,gz="((\\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])))",mie=new RegExp(`^${gz}$`);function vz(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 fie(t){return new RegExp(`^${vz(t)}$`)}function hie(t){let e=`${gz}T${vz(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 gie(t,e){return!!((e==="v4"||!e)&&oie.test(t)||(e==="v6"||!e)&&lie.test(t))}function vie(t,e){if(!nie.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,"="),s=JSON.parse(atob(n));return!(typeof s!="object"||s===null||"typ"in s&&s?.typ!=="JWT"||!s.alg||e&&s.alg!==e)}catch{return!1}}function yie(t,e){return!!((e==="v4"||!e)&&cie.test(t)||(e==="v6"||!e)&&uie.test(t))}var po=class t extends Re{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==te.string){let s=this._getOrReturnCtx(e);return Q(s,{code:V.invalid_type,expected:te.string,received:s.parsedType}),he}let r=new _r,n;for(let s of this._def.checks)if(s.kind==="min")e.data.lengths.value&&(n=this._getOrReturnCtx(e,n),Q(n,{code:V.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),r.dirty());else if(s.kind==="length"){let i=e.data.length>s.value,a=e.data.lengthe.test(s),{validation:r,code:V.invalid_string,...re.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...re.errToObj(e)})}url(e){return this._addCheck({kind:"url",...re.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...re.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...re.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...re.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...re.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...re.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...re.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...re.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...re.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...re.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...re.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...re.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,...re.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,...re.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...re.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...re.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...re.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...re.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...re.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...re.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...re.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...re.errToObj(r)})}nonempty(e){return this.min(1,re.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 po({checks:[],typeName:ge.ZodString,coerce:t?.coerce??!1,..._e(t)});function bie(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,s=r>n?r:n,i=Number.parseInt(t.toFixed(s).replace(".","")),a=Number.parseInt(e.toFixed(s).replace(".",""));return i%a/10**s}var ou=class t extends Re{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)!==te.number){let s=this._getOrReturnCtx(e);return Q(s,{code:V.invalid_type,expected:te.number,received:s.parsedType}),he}let r,n=new _r;for(let s of this._def.checks)s.kind==="int"?He.isInteger(e.data)||(r=this._getOrReturnCtx(e,r),Q(r,{code:V.invalid_type,expected:"integer",received:"float",message:s.message}),n.dirty()):s.kind==="min"?(s.inclusive?e.datas.value:e.data>=s.value)&&(r=this._getOrReturnCtx(e,r),Q(r,{code:V.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),n.dirty()):s.kind==="multipleOf"?bie(e.data,s.value)!==0&&(r=this._getOrReturnCtx(e,r),Q(r,{code:V.not_multiple_of,multipleOf:s.value,message:s.message}),n.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(r=this._getOrReturnCtx(e,r),Q(r,{code:V.not_finite,message:s.message}),n.dirty()):He.assertNever(s);return{status:n.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,re.toString(r))}gt(e,r){return this.setLimit("min",e,!1,re.toString(r))}lte(e,r){return this.setLimit("max",e,!0,re.toString(r))}lt(e,r){return this.setLimit("max",e,!1,re.toString(r))}setLimit(e,r,n,s){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:re.toString(s)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:re.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:re.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:re.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:re.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:re.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:re.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:re.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:re.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:re.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"&&He.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 ou({checks:[],typeName:ge.ZodNumber,coerce:t?.coerce||!1,..._e(t)});var cu=class t extends Re{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)!==te.bigint)return this._getInvalidInput(e);let r,n=new _r;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.datas.value:e.data>=s.value)&&(r=this._getOrReturnCtx(e,r),Q(r,{code:V.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),n.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(r=this._getOrReturnCtx(e,r),Q(r,{code:V.not_multiple_of,multipleOf:s.value,message:s.message}),n.dirty()):He.assertNever(s);return{status:n.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return Q(r,{code:V.invalid_type,expected:te.bigint,received:r.parsedType}),he}gte(e,r){return this.setLimit("min",e,!0,re.toString(r))}gt(e,r){return this.setLimit("min",e,!1,re.toString(r))}lte(e,r){return this.setLimit("max",e,!0,re.toString(r))}lt(e,r){return this.setLimit("max",e,!1,re.toString(r))}setLimit(e,r,n,s){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:re.toString(s)}]})}_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:re.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:re.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:re.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:re.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:re.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 cu({checks:[],typeName:ge.ZodBigInt,coerce:t?.coerce??!1,..._e(t)});var lu=class extends Re{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==te.boolean){let r=this._getOrReturnCtx(e);return Q(r,{code:V.invalid_type,expected:te.boolean,received:r.parsedType}),he}return Lr(e.data)}};lu.create=t=>new lu({typeName:ge.ZodBoolean,coerce:t?.coerce||!1,..._e(t)});var uu=class t extends Re{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==te.date){let s=this._getOrReturnCtx(e);return Q(s,{code:V.invalid_type,expected:te.date,received:s.parsedType}),he}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return Q(s,{code:V.invalid_date}),he}let r=new _r,n;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()s.value&&(n=this._getOrReturnCtx(e,n),Q(n,{code:V.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),r.dirty()):He.assertNever(s);return{status:r.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:re.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:re.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 uu({checks:[],coerce:t?.coerce||!1,typeName:ge.ZodDate,..._e(t)});var pu=class extends Re{_parse(e){if(this._getType(e)!==te.symbol){let r=this._getOrReturnCtx(e);return Q(r,{code:V.invalid_type,expected:te.symbol,received:r.parsedType}),he}return Lr(e.data)}};pu.create=t=>new pu({typeName:ge.ZodSymbol,..._e(t)});var mo=class extends Re{_parse(e){if(this._getType(e)!==te.undefined){let r=this._getOrReturnCtx(e);return Q(r,{code:V.invalid_type,expected:te.undefined,received:r.parsedType}),he}return Lr(e.data)}};mo.create=t=>new mo({typeName:ge.ZodUndefined,..._e(t)});var fo=class extends Re{_parse(e){if(this._getType(e)!==te.null){let r=this._getOrReturnCtx(e);return Q(r,{code:V.invalid_type,expected:te.null,received:r.parsedType}),he}return Lr(e.data)}};fo.create=t=>new fo({typeName:ge.ZodNull,..._e(t)});var du=class extends Re{constructor(){super(...arguments),this._any=!0}_parse(e){return Lr(e.data)}};du.create=t=>new du({typeName:ge.ZodAny,..._e(t)});var Ks=class extends Re{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Lr(e.data)}};Ks.create=t=>new Ks({typeName:ge.ZodUnknown,..._e(t)});var Qn=class extends Re{_parse(e){let r=this._getOrReturnCtx(e);return Q(r,{code:V.invalid_type,expected:te.never,received:r.parsedType}),he}};Qn.create=t=>new Qn({typeName:ge.ZodNever,..._e(t)});var mu=class extends Re{_parse(e){if(this._getType(e)!==te.undefined){let r=this._getOrReturnCtx(e);return Q(r,{code:V.invalid_type,expected:te.void,received:r.parsedType}),he}return Lr(e.data)}};mu.create=t=>new mu({typeName:ge.ZodVoid,..._e(t)});var Js=class t extends Re{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),s=this._def;if(r.parsedType!==te.array)return Q(r,{code:V.invalid_type,expected:te.array,received:r.parsedType}),he;if(s.exactLength!==null){let a=r.data.length>s.exactLength.value,o=r.data.lengths.maxLength.value&&(Q(r,{code:V.too_big,maximum:s.maxLength.value,type:"array",inclusive:!0,exact:!1,message:s.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((a,o)=>s.type._parseAsync(new ln(r,a,r.path,o)))).then(a=>_r.mergeArray(n,a));let i=[...r.data].map((a,o)=>s.type._parseSync(new ln(r,a,r.path,o)));return _r.mergeArray(n,i)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:re.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:re.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:re.toString(r)}})}nonempty(e){return this.min(1,e)}};Js.create=(t,e)=>new Js({type:t,minLength:null,maxLength:null,exactLength:null,typeName:ge.ZodArray,..._e(e)});function oo(t){if(t instanceof Zr){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=On.create(oo(n))}return new Zr({...t._def,shape:()=>e})}else return t instanceof Js?new Js({...t._def,type:oo(t.element)}):t instanceof On?On.create(oo(t.unwrap())):t instanceof bs?bs.create(oo(t.unwrap())):t instanceof ys?ys.create(t.items.map(e=>oo(e))):t}var Zr=class t extends Re{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=He.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==te.object){let c=this._getOrReturnCtx(e);return Q(c,{code:V.invalid_type,expected:te.object,received:c.parsedType}),he}let{status:r,ctx:n}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof Qn&&this._def.unknownKeys==="strip"))for(let c in n.data)i.includes(c)||a.push(c);let o=[];for(let c of i){let l=s[c],u=n.data[c];o.push({key:{status:"valid",value:c},value:l._parse(new ln(n,u,n.path,c)),alwaysSet:c in n.data})}if(this._def.catchall instanceof Qn){let c=this._def.unknownKeys;if(c==="passthrough")for(let l of a)o.push({key:{status:"valid",value:l},value:{status:"valid",value:n.data[l]}});else if(c==="strict")a.length>0&&(Q(n,{code:V.unrecognized_keys,keys:a}),r.dirty());else if(c!=="strip")throw Error("Internal ZodObject error: invalid unknownKeys value.")}else{let c=this._def.catchall;for(let l of a){let u=n.data[l];o.push({key:{status:"valid",value:l},value:c._parse(new ln(n,u,n.path,l)),alwaysSet:l in n.data})}}return n.common.async?Promise.resolve().then(async()=>{let c=[];for(let l of o){let u=await l.key,p=await l.value;c.push({key:u,value:p,alwaysSet:l.alwaysSet})}return c}).then(c=>_r.mergeObjectSync(r,c)):_r.mergeObjectSync(r,o)}get shape(){return this._def.shape()}strict(e){return re.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let s=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:re.errToObj(e).message??s}:{message:s}}}:{}})}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:ge.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 He.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 He.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return oo(this)}partial(e){let r={};for(let n of He.objectKeys(this.shape)){let s=this.shape[n];e&&!e[n]?r[n]=s:r[n]=s.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of He.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof On;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return yz(He.objectKeys(this.shape))}};Zr.create=(t,e)=>new Zr({shape:()=>t,unknownKeys:"strip",catchall:Qn.create(),typeName:ge.ZodObject,..._e(e)});Zr.strictCreate=(t,e)=>new Zr({shape:()=>t,unknownKeys:"strict",catchall:Qn.create(),typeName:ge.ZodObject,..._e(e)});Zr.lazycreate=(t,e)=>new Zr({shape:t,unknownKeys:"strip",catchall:Qn.create(),typeName:ge.ZodObject,..._e(e)});var ho=class extends Re{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function s(i){for(let o of i)if(o.result.status==="valid")return o.result;for(let o of i)if(o.result.status==="dirty")return r.common.issues.push(...o.ctx.common.issues),o.result;let a=i.map(o=>new cn(o.ctx.common.issues));return Q(r,{code:V.invalid_union,unionErrors:a}),he}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(s);{let i,a=[];for(let c of n){let l={...r,common:{...r.common,issues:[]},parent:null},u=c._parseSync({data:r.data,path:r.path,parent:l});if(u.status==="valid")return u;u.status==="dirty"&&!i&&(i={result:u,ctx:l}),l.common.issues.length&&a.push(l.common.issues)}if(i)return r.common.issues.push(...i.ctx.common.issues),i.result;let o=a.map(c=>new cn(c));return Q(r,{code:V.invalid_union,unionErrors:o}),he}}get options(){return this._def.options}};ho.create=(t,e)=>new ho({options:t,typeName:ge.ZodUnion,..._e(e)});var hs=t=>t instanceof vo?hs(t.schema):t instanceof Pn?hs(t.innerType()):t instanceof yo?[t.value]:t instanceof bo?t.options:t instanceof xo?He.objectValues(t.enum):t instanceof _o?hs(t._def.innerType):t instanceof mo?[void 0]:t instanceof fo?[null]:t instanceof On?[void 0,...hs(t.unwrap())]:t instanceof bs?[null,...hs(t.unwrap())]:t instanceof Xm||t instanceof So?hs(t.unwrap()):t instanceof wo?hs(t._def.innerType):[],H_=class t extends Re{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==te.object)return Q(r,{code:V.invalid_type,expected:te.object,received:r.parsedType}),he;let n=this.discriminator,s=r.data[n],i=this.optionsMap.get(s);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}):(Q(r,{code:V.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),he)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let s=new Map;for(let i of r){let a=hs(i.shape[e]);if(!a.length)throw Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let o of a){if(s.has(o))throw Error(`Discriminator property ${String(e)} has duplicate value ${String(o)}`);s.set(o,i)}}return new t({typeName:ge.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:s,..._e(n)})}};function B_(t,e){let r=Gs(t),n=Gs(e);if(t===e)return{valid:!0,data:t};if(r===te.object&&n===te.object){let s=He.objectKeys(e),i=He.objectKeys(t).filter(o=>s.indexOf(o)!==-1),a={...t,...e};for(let o of i){let c=B_(t[o],e[o]);if(!c.valid)return{valid:!1};a[o]=c.data}return{valid:!0,data:a}}else if(r===te.array&&n===te.array){if(t.length!==e.length)return{valid:!1};let s=[];for(let i=0;i{if(hM(i)||hM(a))return he;let o=B_(i.value,a.value);return o.valid?((gM(i)||gM(a))&&r.dirty(),{status:r.value,value:o.data}):(Q(n,{code:V.invalid_intersection_types}),he)};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])=>s(i,a)):s(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};go.create=(t,e,r)=>new go({left:t,right:e,typeName:ge.ZodIntersection,..._e(r)});var ys=class t extends Re{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==te.array)return Q(n,{code:V.invalid_type,expected:te.array,received:n.parsedType}),he;if(n.data.lengththis._def.items.length&&(Q(n,{code:V.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let s=[...n.data].map((i,a)=>{let o=this._def.items[a]||this._def.rest;return o?o._parse(new ln(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>_r.mergeArray(r,i)):_r.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};ys.create=(t,e)=>{if(!Array.isArray(t))throw Error("You must pass an array of schemas to z.tuple([ ... ])");return new ys({items:t,typeName:ge.ZodTuple,rest:null,..._e(e)})};var W_=class t extends Re{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!==te.object)return Q(n,{code:V.invalid_type,expected:te.object,received:n.parsedType}),he;let s=[],i=this._def.keyType,a=this._def.valueType;for(let o in n.data)s.push({key:i._parse(new ln(n,o,n.path,o)),value:a._parse(new ln(n,n.data[o],n.path,o)),alwaysSet:o in n.data});return n.common.async?_r.mergeObjectAsync(r,s):_r.mergeObjectSync(r,s)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof Re?new t({keyType:e,valueType:r,typeName:ge.ZodRecord,..._e(n)}):new t({keyType:po.create(),valueType:e,typeName:ge.ZodRecord,..._e(r)})}},fu=class extends Re{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!==te.map)return Q(n,{code:V.invalid_type,expected:te.map,received:n.parsedType}),he;let s=this._def.keyType,i=this._def.valueType,a=[...n.data.entries()].map(([o,c],l)=>({key:s._parse(new ln(n,o,n.path,[l,"key"])),value:i._parse(new ln(n,c,n.path,[l,"value"]))}));if(n.common.async){let o=new Map;return Promise.resolve().then(async()=>{for(let c of a){let l=await c.key,u=await c.value;if(l.status==="aborted"||u.status==="aborted")return he;(l.status==="dirty"||u.status==="dirty")&&r.dirty(),o.set(l.value,u.value)}return{status:r.value,value:o}})}else{let o=new Map;for(let c of a){let{key:l,value:u}=c;if(l.status==="aborted"||u.status==="aborted")return he;(l.status==="dirty"||u.status==="dirty")&&r.dirty(),o.set(l.value,u.value)}return{status:r.value,value:o}}}};fu.create=(t,e,r)=>new fu({valueType:e,keyType:t,typeName:ge.ZodMap,..._e(r)});var hu=class t extends Re{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==te.set)return Q(n,{code:V.invalid_type,expected:te.set,received:n.parsedType}),he;let s=this._def;s.minSize!==null&&n.data.sizes.maxSize.value&&(Q(n,{code:V.too_big,maximum:s.maxSize.value,type:"set",inclusive:!0,exact:!1,message:s.maxSize.message}),r.dirty());let i=this._def.valueType;function a(c){let l=new Set;for(let u of c){if(u.status==="aborted")return he;u.status==="dirty"&&r.dirty(),l.add(u.value)}return{status:r.value,value:l}}let o=[...n.data.values()].map((c,l)=>i._parse(new ln(n,c,n.path,l)));return n.common.async?Promise.all(o).then(c=>a(c)):a(o)}min(e,r){return new t({...this._def,minSize:{value:e,message:re.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:re.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};hu.create=(t,e)=>new hu({valueType:t,minSize:null,maxSize:null,typeName:ge.ZodSet,..._e(e)});var Z_=class t extends Re{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==te.function)return Q(r,{code:V.invalid_type,expected:te.function,received:r.parsedType}),he;function n(o,c){return U_({data:o,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,F_(),au].filter(l=>!!l),issueData:{code:V.invalid_arguments,argumentsError:c}})}function s(o,c){return U_({data:o,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,F_(),au].filter(l=>!!l),issueData:{code:V.invalid_return_type,returnTypeError:c}})}let i={errorMap:r.common.contextualErrorMap},a=r.data;if(this._def.returns instanceof Fi){let o=this;return Lr(async function(...c){let l=new cn([]),u=await o._def.args.parseAsync(c,i).catch(d=>{throw l.addIssue(n(c,d)),l}),p=await Reflect.apply(a,this,u);return await o._def.returns._def.type.parseAsync(p,i).catch(d=>{throw l.addIssue(s(p,d)),l})})}else{let o=this;return Lr(function(...c){let l=o._def.args.safeParse(c,i);if(!l.success)throw new cn([n(c,l.error)]);let u=Reflect.apply(a,this,l.data),p=o._def.returns.safeParse(u,i);if(!p.success)throw new cn([s(u,p.error)]);return p.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:ys.create(e).rest(Ks.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||ys.create([]).rest(Ks.create()),returns:r||Ks.create(),typeName:ge.ZodFunction,..._e(n)})}},vo=class extends Re{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})}};vo.create=(t,e)=>new vo({getter:t,typeName:ge.ZodLazy,..._e(e)});var yo=class extends Re{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return Q(r,{received:r.data,code:V.invalid_literal,expected:this._def.value}),he}return{status:"valid",value:e.data}}get value(){return this._def.value}};yo.create=(t,e)=>new yo({value:t,typeName:ge.ZodLiteral,..._e(e)});function yz(t,e){return new bo({values:t,typeName:ge.ZodEnum,..._e(e)})}var bo=class t extends Re{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return Q(r,{expected:He.joinValues(n),received:r.parsedType,code:V.invalid_type}),he}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:V.invalid_enum_value,options:n}),he}return Lr(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})}};bo.create=yz;var xo=class extends Re{_parse(e){let r=He.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==te.string&&n.parsedType!==te.number){let s=He.objectValues(r);return Q(n,{expected:He.joinValues(s),received:n.parsedType,code:V.invalid_type}),he}if(this._cache||(this._cache=new Set(He.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let s=He.objectValues(r);return Q(n,{received:n.data,code:V.invalid_enum_value,options:s}),he}return Lr(e.data)}get enum(){return this._def.values}};xo.create=(t,e)=>new xo({values:t,typeName:ge.ZodNativeEnum,..._e(e)});var Fi=class extends Re{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==te.promise&&r.common.async===!1)return Q(r,{code:V.invalid_type,expected:te.promise,received:r.parsedType}),he;let n=r.parsedType===te.promise?r.data:Promise.resolve(r.data);return Lr(n.then(s=>this._def.type.parseAsync(s,{path:r.path,errorMap:r.common.contextualErrorMap})))}};Fi.create=(t,e)=>new Fi({type:t,typeName:ge.ZodPromise,..._e(e)});var Pn=class extends Re{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===ge.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),s=this._def.effect||null,i={addIssue:a=>{Q(n,a),a.fatal?r.abort():r.dirty()},get path(){return n.path}};if(i.addIssue=i.addIssue.bind(i),s.type==="preprocess"){let a=s.transform(n.data,i);if(n.common.async)return Promise.resolve(a).then(async o=>{if(r.value==="aborted")return he;let c=await this._def.schema._parseAsync({data:o,path:n.path,parent:n});return c.status==="aborted"?he:c.status==="dirty"||r.value==="dirty"?nu(c.value):c});{if(r.value==="aborted")return he;let o=this._def.schema._parseSync({data:a,path:n.path,parent:n});return o.status==="aborted"?he:o.status==="dirty"||r.value==="dirty"?nu(o.value):o}}if(s.type==="refinement"){let a=o=>{let c=s.refinement(o,i);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return o};if(n.common.async===!1){let o=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?he:(o.status==="dirty"&&r.dirty(),a(o.value),{status:r.value,value:o.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(o=>o.status==="aborted"?he:(o.status==="dirty"&&r.dirty(),a(o.value).then(()=>({status:r.value,value:o.value}))))}if(s.type==="transform")if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!uo(a))return he;let o=s.transform(a.value,i);if(o instanceof Promise)throw Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:o}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>uo(a)?Promise.resolve(s.transform(a.value,i)).then(o=>({status:r.value,value:o})):he);He.assertNever(s)}};Pn.create=(t,e,r)=>new Pn({schema:t,typeName:ge.ZodEffects,effect:e,..._e(r)});Pn.createWithPreprocess=(t,e,r)=>new Pn({schema:e,effect:{type:"preprocess",transform:t},typeName:ge.ZodEffects,..._e(r)});var On=class extends Re{_parse(e){return this._getType(e)===te.undefined?Lr(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};On.create=(t,e)=>new On({innerType:t,typeName:ge.ZodOptional,..._e(e)});var bs=class extends Re{_parse(e){return this._getType(e)===te.null?Lr(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};bs.create=(t,e)=>new bs({innerType:t,typeName:ge.ZodNullable,..._e(e)});var _o=class extends Re{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===te.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};_o.create=(t,e)=>new _o({innerType:t,typeName:ge.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,..._e(e)});var wo=class extends Re{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},s=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return Qm(s)?s.then(i=>({status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new cn(n.common.issues)},input:n.data})})):{status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new cn(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};wo.create=(t,e)=>new wo({innerType:t,typeName:ge.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,..._e(e)});var gu=class extends Re{_parse(e){if(this._getType(e)!==te.nan){let r=this._getOrReturnCtx(e);return Q(r,{code:V.invalid_type,expected:te.nan,received:r.parsedType}),he}return{status:"valid",value:e.data}}};gu.create=t=>new gu({typeName:ge.ZodNaN,..._e(t)});var Xm=class extends Re{_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}},ef=class t extends Re{_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"?he:s.status==="dirty"?(r.dirty(),nu(s.value)):this._def.out._parseAsync({data:s.value,path:n.path,parent:n})})();{let s=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?he:s.status==="dirty"?(r.dirty(),{status:"dirty",value:s.value}):this._def.out._parseSync({data:s.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:ge.ZodPipeline})}},So=class extends Re{_parse(e){let r=this._def.innerType._parse(e),n=s=>(uo(s)&&(s.value=Object.freeze(s.value)),s);return Qm(r)?r.then(s=>n(s)):n(r)}unwrap(){return this._def.innerType}};So.create=(t,e)=>new So({innerType:t,typeName:ge.ZodReadonly,..._e(e)});var SSe={object:Zr.lazycreate},ge;(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"})(ge||(ge={}));var ESe=po.create,kSe=ou.create,TSe=gu.create,RSe=cu.create,$Se=lu.create,OSe=uu.create,PSe=pu.create,CSe=mo.create,ISe=fo.create,ASe=du.create,NSe=Ks.create,jSe=Qn.create,DSe=mu.create,MSe=Js.create,zSe=Zr.create,LSe=Zr.strictCreate,qSe=ho.create,FSe=H_.create,USe=go.create,HSe=ys.create,BSe=W_.create,WSe=fu.create,ZSe=hu.create,VSe=Z_.create,GSe=vo.create,YSe=yo.create,KSe=bo.create,JSe=xo.create,QSe=Fi.create,XSe=Pn.create,eEe=On.create,tEe=bs.create,rEe=Pn.createWithPreprocess,nEe=ef.create,sEe=Object.freeze({status:"aborted"});function L(t,e,r){function n(o,c){var l;Object.defineProperty(o,"_zod",{value:o._zod??{},enumerable:!1}),(l=o._zod).traits??(l.traits=new Set),o._zod.traits.add(t),e(o,c);for(let u in a.prototype)u in o||Object.defineProperty(o,u,{value:a.prototype[u].bind(o)});o._zod.constr=a,o._zod.def=c}let s=r?.Parent??Object;class i extends s{}Object.defineProperty(i,"name",{value:t});function a(o){var c;let l=r?.Parent?new i:this;n(l,o),(c=l._zod).deferred??(c.deferred=[]);for(let u of l._zod.deferred)u();return l}return Object.defineProperty(a,"init",{value:n}),Object.defineProperty(a,Symbol.hasInstance,{value:o=>r?.Parent&&o instanceof r.Parent?!0:o?._zod?.traits?.has(t)}),Object.defineProperty(a,"name",{value:t}),a}var Ui=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},V_={};function xs(t){return t&&Object.assign(V_,t),V_}var ut={};zM(ut,{unwrapMessage:()=>su,stringifyPrimitive:()=>c0,required:()=>zie,randomString:()=>Rie,propertyKeyTypes:()=>Sz,promiseAllObject:()=>Tie,primitiveTypes:()=>Pie,prefixIssues:()=>Ys,pick:()=>Aie,partial:()=>Mie,optionalKeys:()=>Ez,omit:()=>Nie,numKeys:()=>$ie,nullish:()=>pf,normalizeParams:()=>fe,merge:()=>Die,jsonStringifyReplacer:()=>xz,joinValues:()=>G_,issue:()=>Tz,isPlainObject:()=>yu,isObject:()=>vu,getSizableOrigin:()=>Lie,getParsedType:()=>Oie,getLengthableOrigin:()=>mf,getEnumValues:()=>bz,getElementAtPath:()=>kie,floatSafeRemainder:()=>_z,finalizeIssue:()=>_s,extend:()=>jie,escapeRegex:()=>Po,esc:()=>co,defineLazy:()=>vt,createTransparentProxy:()=>Cie,clone:()=>ws,cleanRegex:()=>df,cleanEnum:()=>qie,captureStackTrace:()=>o0,cached:()=>uf,assignProp:()=>a0,assertNotEqual:()=>_ie,assertNever:()=>Sie,assertIs:()=>wie,assertEqual:()=>xie,assert:()=>Eie,allowsEval:()=>wz,aborted:()=>lo,NUMBER_FORMAT_RANGES:()=>kz,Class:()=>Y_,BIGINT_FORMAT_RANGES:()=>Iie});function xie(t){return t}function _ie(t){return t}function wie(t){}function Sie(t){throw Error()}function Eie(t){}function bz(t){let e=Object.values(t).filter(r=>typeof r=="number");return Object.entries(t).filter(([r,n])=>e.indexOf(+r)===-1).map(([r,n])=>n)}function G_(t,e="|"){return t.map(r=>c0(r)).join(e)}function xz(t,e){return typeof e=="bigint"?e.toString():e}function uf(t){return{get value(){{let e=t();return Object.defineProperty(this,"value",{value:e}),e}throw Error("cached value already set")}}}function pf(t){return t==null}function df(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function _z(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,s=r>n?r:n,i=Number.parseInt(t.toFixed(s).replace(".","")),a=Number.parseInt(e.toFixed(s).replace(".",""));return i%a/10**s}function vt(t,e,r){Object.defineProperty(t,e,{get(){{let n=r();return t[e]=n,n}throw Error("cached value already set")},set(n){Object.defineProperty(t,e,{value:n})},configurable:!0})}function a0(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function kie(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function Tie(t){let e=Object.keys(t),r=e.map(n=>t[n]);return Promise.all(r).then(n=>{let s={};for(let i=0;i{};function vu(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var wz=uf(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch{return!1}});function yu(t){if(vu(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(vu(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function $ie(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var Oie=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 Error(`Unknown data type: ${e}`)}},Sz=new Set(["string","number","symbol"]),Pie=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Po(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function ws(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function fe(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 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 Cie(t){let e;return new Proxy({},{get(r,n,s){return e??(e=t()),Reflect.get(e,n,s)},set(r,n,s,i){return e??(e=t()),Reflect.set(e,n,s,i)},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,s){return e??(e=t()),Reflect.defineProperty(e,n,s)}})}function c0(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Ez(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var kz={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]},Iie={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function Aie(t,e){let r={},n=t._zod.def;for(let s in e){if(!(s in n.shape))throw Error(`Unrecognized key: "${s}"`);e[s]&&(r[s]=n.shape[s])}return ws(t,{...t._zod.def,shape:r,checks:[]})}function Nie(t,e){let r={...t._zod.def.shape},n=t._zod.def;for(let s in e){if(!(s in n.shape))throw Error(`Unrecognized key: "${s}"`);e[s]&&delete r[s]}return ws(t,{...t._zod.def,shape:r,checks:[]})}function jie(t,e){if(!yu(e))throw Error("Invalid input to extend: expected a plain object");let r={...t._zod.def,get shape(){let n={...t._zod.def.shape,...e};return a0(this,"shape",n),n},checks:[]};return ws(t,r)}function Die(t,e){return ws(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return a0(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function Mie(t,e,r){let n=e._zod.def.shape,s={...n};if(r)for(let i in r){if(!(i in n))throw Error(`Unrecognized key: "${i}"`);r[i]&&(s[i]=t?new t({type:"optional",innerType:n[i]}):n[i])}else for(let i in n)s[i]=t?new t({type:"optional",innerType:n[i]}):n[i];return ws(e,{...e._zod.def,shape:s,checks:[]})}function zie(t,e,r){let n=e._zod.def.shape,s={...n};if(r)for(let i in r){if(!(i in s))throw Error(`Unrecognized key: "${i}"`);r[i]&&(s[i]=new t({type:"nonoptional",innerType:n[i]}))}else for(let i in n)s[i]=new t({type:"nonoptional",innerType:n[i]});return ws(e,{...e._zod.def,shape:s,checks:[]})}function lo(t,e=0){for(let r=e;r{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function su(t){return typeof t=="string"?t:t?.message}function _s(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let s=su(t.inst?._zod.def?.error?.(t))??su(e?.error?.(t))??su(r.customError?.(t))??su(r.localeError?.(t))??"Invalid input";n.message=s}return delete n.inst,delete n.continue,!e?.reportInput&&delete n.input,n}function Lie(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function mf(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Tz(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function qie(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var Y_=class{constructor(...e){}},Rz=(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,xz,2)},enumerable:!0})},$z=L("$ZodError",Rz),ff=L("$ZodError",Rz,{Parent:Error});function Fie(t,e=r=>r.message){let r={},n=[];for(let s of t.issues)s.path.length>0?(r[s.path[0]]=r[s.path[0]]||[],r[s.path[0]].push(e(s))):n.push(e(s));return{formErrors:n,fieldErrors:r}}function Uie(t,e){let r=e||function(i){return i.message},n={_errors:[]},s=i=>{for(let a of i.issues)if(a.code==="invalid_union"&&a.errors.length)a.errors.map(o=>s({issues:o}));else if(a.code==="invalid_key")s({issues:a.issues});else if(a.code==="invalid_element")s({issues:a.issues});else if(a.path.length===0)n._errors.push(r(a));else{let o=n,c=0;for(;c(e,r,n,s)=>{let i=n?Object.assign(n,{async:!1}):{async:!1},a=e._zod.run({value:r,issues:[]},i);if(a instanceof Promise)throw new Ui;if(a.issues.length){let o=new(s?.Err??t)(a.issues.map(c=>_s(c,i,xs())));throw o0(o,s?.callee),o}return a.value},Hie=Oz(ff),Pz=t=>async(e,r,n,s)=>{let i=n?Object.assign(n,{async:!0}):{async:!0},a=e._zod.run({value:r,issues:[]},i);if(a instanceof Promise&&(a=await a),a.issues.length){let o=new(s?.Err??t)(a.issues.map(c=>_s(c,i,xs())));throw o0(o,s?.callee),o}return a.value},Bie=Pz(ff),Cz=t=>(e,r,n)=>{let s=n?{...n,async:!1}:{async:!1},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise)throw new Ui;return i.issues.length?{success:!1,error:new(t??$z)(i.issues.map(a=>_s(a,s,xs())))}:{success:!0,data:i.value}},Iz=Cz(ff),Az=t=>async(e,r,n)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},i=e._zod.run({value:r,issues:[]},s);return i instanceof Promise&&(i=await i),i.issues.length?{success:!1,error:new t(i.issues.map(a=>_s(a,s,xs())))}:{success:!0,data:i.value}},Nz=Az(ff),Wie=/^[cC][^\s-]{8,}$/,Zie=/^[0-9a-z]+$/,Vie=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Gie=/^[0-9a-vA-V]{20}$/,Yie=/^[A-Za-z0-9]{27}$/,Kie=/^[a-zA-Z0-9_-]{21}$/,Jie=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,Qie=/^([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})$/,yM=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)$/,Xie=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;function eae(){return new RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")}var tae=/^(?:(?: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])$/,rae=/^(([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})$/,nae=/^((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])$/,sae=/^(([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])$/,iae=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,jz=/^[A-Za-z0-9_-]*$/,aae=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/,oae=/^\+(?:[0-9]){6,14}[0-9]$/,Dz="(?:(?:\\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])))",cae=new RegExp(`^${Dz}$`);function Mz(t){return typeof t.precision=="number"?t.precision===-1?"(?:[01]\\d|2[0-3]):[0-5]\\d":t.precision===0?"(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d":`(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{${t.precision}}`:"(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?"}function lae(t){return new RegExp(`^${Mz(t)}$`)}function uae(t){let e=Mz({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(`^${Dz}T(?:${n})$`)}var pae=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)},dae=/^\d+$/,mae=/^-?\d+(?:\.\d+)?/i,fae=/true|false/i,hae=/null/i,gae=/^[^A-Z]*$/,vae=/^[^a-z]*$/,qr=L("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),zz={number:"number",bigint:"bigint",object:"date"},Lz=L("$ZodCheckLessThan",(t,e)=>{qr.init(t,e);let r=zz[typeof e.value];t._zod.onattach.push(n=>{let s=n._zod.bag,i=(e.inclusive?s.maximum:s.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value{(e.inclusive?n.value<=e.value:n.value{qr.init(t,e);let r=zz[typeof e.value];t._zod.onattach.push(n=>{let s=n._zod.bag,i=(e.inclusive?s.minimum:s.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>i&&(e.inclusive?s.minimum=e.value:s.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})}}),yae=L("$ZodCheckMultipleOf",(t,e)=>{qr.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 Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%e.value===BigInt(0):_z(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})}}),bae=L("$ZodCheckNumberFormat",(t,e)=>{qr.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[s,i]=kz[e.format];t._zod.onattach.push(a=>{let o=a._zod.bag;o.format=e.format,o.minimum=s,o.maximum=i,r&&(o.pattern=dae)}),t._zod.check=a=>{let o=a.value;if(r){if(!Number.isInteger(o)){a.issues.push({expected:n,format:e.format,code:"invalid_type",input:o,inst:t});return}if(!Number.isSafeInteger(o)){o>0?a.issues.push({input:o,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,continue:!e.abort}):a.issues.push({input:o,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}}oi&&a.issues.push({origin:"number",input:o,code:"too_big",maximum:i,inst:t})}}),xae=L("$ZodCheckMaxLength",(t,e)=>{qr.init(t,e),t._zod.when=r=>{let n=r.value;return!pf(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=mf(n);r.issues.push({origin:s,code:"too_big",maximum:e.maximum,inclusive:!0,input:n,inst:t,continue:!e.abort})}}),_ae=L("$ZodCheckMinLength",(t,e)=>{qr.init(t,e),t._zod.when=r=>{let n=r.value;return!pf(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=mf(n);r.issues.push({origin:s,code:"too_small",minimum:e.minimum,inclusive:!0,input:n,inst:t,continue:!e.abort})}}),wae=L("$ZodCheckLengthEquals",(t,e)=>{qr.init(t,e),t._zod.when=r=>{let n=r.value;return!pf(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,s=n.length;if(s===e.length)return;let i=mf(n),a=s>e.length;r.issues.push({origin:i,...a?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:r.value,inst:t,continue:!e.abort})}}),hf=L("$ZodCheckStringFormat",(t,e)=>{var r,n;qr.init(t,e),t._zod.onattach.push(s=>{let i=s._zod.bag;i.format=e.format,e.pattern&&(i.patterns??(i.patterns=new Set),i.patterns.add(e.pattern))}),e.pattern?(r=t._zod).check??(r.check=s=>{e.pattern.lastIndex=0,!e.pattern.test(s.value)&&s.issues.push({origin:"string",code:"invalid_format",format:e.format,input:s.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(n=t._zod).check??(n.check=()=>{})}),Sae=L("$ZodCheckRegex",(t,e)=>{hf.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})}}),Eae=L("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=gae),hf.init(t,e)}),kae=L("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=vae),hf.init(t,e)}),Tae=L("$ZodCheckIncludes",(t,e)=>{qr.init(t,e);let r=Po(e.includes),n=new RegExp(typeof e.position=="number"?`^.{${e.position}}${r}`:r);e.pattern=n,t._zod.onattach.push(s=>{let i=s._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(n)}),t._zod.check=s=>{s.value.includes(e.includes,e.position)||s.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:s.value,inst:t,continue:!e.abort})}}),Rae=L("$ZodCheckStartsWith",(t,e)=>{qr.init(t,e);let r=new RegExp(`^${Po(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let s=n._zod.bag;s.patterns??(s.patterns=new Set),s.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})}}),$ae=L("$ZodCheckEndsWith",(t,e)=>{qr.init(t,e);let r=new RegExp(`.*${Po(e.suffix)}$`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let s=n._zod.bag;s.patterns??(s.patterns=new Set),s.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})}}),Oae=L("$ZodCheckOverwrite",(t,e)=>{qr.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}}),K_=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 r=e.split(` +`))})}async initializationResult(){return this.initialization}async supportedCommands(){return(await this.initialization).commands}async supportedModels(){return(await this.initialization).models}async reconnectMcpServer(e){await this.request({subtype:"mcp_reconnect",serverName:e})}async toggleMcpServer(e,r){await this.request({subtype:"mcp_toggle",serverName:e,enabled:r})}async mcpServerStatus(){return(await this.request({subtype:"mcp_status"})).response.mcpServers}async setMcpServers(e){let r={},n={};for(let[o,c]of Object.entries(e))c.type==="sdk"&&"instance"in c?r[o]=c.instance:n[o]=c;let s=new Set(this.sdkMcpServerInstances.keys()),i=new Set(Object.keys(r));for(let o of s)i.has(o)||await this.disconnectSdkMcpServer(o);for(let[o,c]of Object.entries(r))s.has(o)||this.connectSdkMcpServer(o,c);let a={};for(let o of Object.keys(r))a[o]={type:"sdk",name:o};return(await this.request({subtype:"mcp_set_servers",servers:{...n,...a}})).response}async accountInfo(){return(await this.initialization).account}async streamInput(e){Li("[Query.streamInput] Starting to process input stream");try{let r=0;for await(let n of e){if(r++,Li(`[Query.streamInput] Processing message ${r}: ${n.type}`),this.abortController?.signal.aborted)break;await Promise.resolve(this.transport.write(gs(n)+` +`))}Li(`[Query.streamInput] Finished processing ${r} messages from input stream`),r>0&&this.hasBidirectionalNeeds()&&(Li("[Query.streamInput] Has bidirectional needs, waiting for first result"),await this.waitForFirstResult()),Li("[Query] Calling transport.endInput() to close stdin to CLI process"),this.transport.endInput()}catch(r){if(!(r instanceof qi))throw r}}waitForFirstResult(){return this.firstResultReceived?(Li("[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,s){let i=this.hookCallbacks.get(e);if(!i)throw Error(`No hook callback found for ID: ${e}`);return i(r,n,{signal:s})}connectSdkMcpServer(e,r){let n=new F_(s=>this.sendMcpServerMessageToCli(e,s));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 s=`${e}:${r.id}`,i=this.pendingMcpResponses.get(s);if(i){i.resolve(r),this.pendingMcpResponses.delete(s);return}}let n={type:"control_request",request_id:(0,xz.randomUUID)(),request:{subtype:"mcp_message",server_name:e,message:r}};this.transport.write(gs(n)+` +`)}handleMcpControlRequest(e,r,n){let s="id"in r.message?r.message.id:null,i=`${e}:${s}`;return new Promise((a,o)=>{let c=()=>{this.pendingMcpResponses.delete(i)},l=p=>{c(),a(p)},u=p=>{c(),o(p)};if(this.pendingMcpResponses.set(i,{resolve:l,reject:u}),n.onmessage)n.onmessage(r.message);else{c(),o(Error("No message handler registered"));return}})}},B_=class{closed=!1;inputStream;query;queryIterator=null;abortController;_sessionId=null;get sessionId(){if(this._sessionId===null)throw Error("Session ID not available until after receiving messages");return this._sessionId}constructor(e){e.resume&&(this._sessionId=e.resume),this.inputStream=new Xm;let r=e.pathToClaudeCodeExecutable;if(!r){let i=(0,_z.fileURLToPath)(ppe.url),a=(0,H_.join)(i,"..");r=(0,H_.join)(a,"cli.js")}let n={...e.env??process.env};n.CLAUDE_CODE_ENTRYPOINT||(n.CLAUDE_CODE_ENTRYPOINT="sdk-ts"),this.abortController=XM();let s=new q_({abortController:this.abortController,pathToClaudeCodeExecutable:r,env:n,executable:e.executable??(yz()?"bun":"node"),executableArgs:e.executableArgs??[],extraArgs:{},maxThinkingTokens:void 0,maxTurns:void 0,maxBudgetUsd:void 0,model:e.model,fallbackModel:void 0,permissionMode:e.permissionMode??"default",allowDangerouslySkipPermissions:!1,continueConversation:!1,resume:e.resume,settingSources:[],allowedTools:e.allowedTools??[],disallowedTools:e.disallowedTools??[],mcpServers:{},strictMcpConfig:!1,canUseTool:!!e.canUseTool,hooks:!!e.hooks,includePartialMessages:!1,forkSession:!1,resumeSessionAt:void 0});this.query=new U_(s,!1,e.canUseTool,e.hooks,this.abortController,new Map),this.query.streamInput(this.inputStream)}async send(e){if(this.closed)throw Error("Cannot send to closed session");let r=typeof e=="string"?{type:"user",session_id:"",message:{role:"user",content:[{type:"text",text:e}]},parent_tool_use_id:null}:e;this.inputStream.enqueue(r)}async*stream(){for(this.queryIterator||(this.queryIterator=this.query[Symbol.asyncIterator]());;){let{value:e,done:r}=await this.queryIterator.next();if(r||(e.type==="system"&&e.subtype==="init"&&(this._sessionId=e.session_id),yield e,e.type==="result"))return}}close(){this.closed||(this.closed=!0,this.inputStream.done(),this.abortController.abort())}async[Symbol.asyncDispose](){this.close()}};function rie(t){return new B_(t)}var He;(function(t){t.assertEqual=s=>{};function e(s){}t.assertIs=e;function r(s){throw Error()}t.assertNever=r,t.arrayToEnum=s=>{let i={};for(let a of s)i[a]=a;return i},t.getValidEnumValues=s=>{let i=t.objectKeys(s).filter(o=>typeof s[s[o]]!="number"),a={};for(let o of i)a[o]=s[o];return t.objectValues(a)},t.objectValues=s=>t.objectKeys(s).map(function(i){return s[i]}),t.objectKeys=typeof Object.keys=="function"?s=>Object.keys(s):s=>{let i=[];for(let a in s)Object.prototype.hasOwnProperty.call(s,a)&&i.push(a);return i},t.find=(s,i)=>{for(let a of s)if(i(a))return a},t.isInteger=typeof Number.isInteger=="function"?s=>Number.isInteger(s):s=>typeof s=="number"&&Number.isFinite(s)&&Math.floor(s)===s;function n(s,i=" | "){return s.map(a=>typeof a=="string"?`'${a}'`:a).join(i)}t.joinValues=n,t.jsonStringifyReplacer=(s,i)=>typeof i=="bigint"?i.toString():i})(He||(He={}));var xM;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(xM||(xM={}));var te=He.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Gs=t=>{switch(typeof t){case"undefined":return te.undefined;case"string":return te.string;case"number":return Number.isNaN(t)?te.nan:te.number;case"boolean":return te.boolean;case"function":return te.function;case"bigint":return te.bigint;case"symbol":return te.symbol;case"object":return Array.isArray(t)?te.array:t===null?te.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?te.promise:typeof Map<"u"&&t instanceof Map?te.map:typeof Set<"u"&&t instanceof Set?te.set:typeof Date<"u"&&t instanceof Date?te.date:te.object;default:return te.unknown}},V=He.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"]),cn=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(i){return i.message},n={_errors:[]},s=i=>{for(let a of i.issues)if(a.code==="invalid_union")a.unionErrors.map(s);else if(a.code==="invalid_return_type")s(a.returnTypeError);else if(a.code==="invalid_arguments")s(a.argumentsError);else if(a.path.length===0)n._errors.push(r(a));else{let o=n,c=0;for(;cr.message){let r={},n=[];for(let s of this.issues)if(s.path.length>0){let i=s.path[0];r[i]=r[i]||[],r[i].push(e(s))}else n.push(e(s));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};cn.create=t=>new cn(t);var nie=(t,e)=>{let r;switch(t.code){case V.invalid_type:t.received===te.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case V.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,He.jsonStringifyReplacer)}`;break;case V.unrecognized_keys:r=`Unrecognized key(s) in object: ${He.joinValues(t.keys,", ")}`;break;case V.invalid_union:r="Invalid input";break;case V.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${He.joinValues(t.options)}`;break;case V.invalid_enum_value:r=`Invalid enum value. Expected ${He.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}"`:He.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,He.assertNever(t)}return{message:r}},cu=nie,sie=cu;function W_(){return sie}var Z_=t=>{let{data:e,path:r,errorMaps:n,issueData:s}=t,i=[...r,...s.path||[]],a={...s,path:i};if(s.message!==void 0)return{...s,path:i,message:s.message};let o="",c=n.filter(l=>!!l).slice().reverse();for(let l of c)o=l(a,{data:e,defaultError:o}).message;return{...s,path:i,message:o}};function Q(t,e){let r=W_(),n=Z_({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===cu?void 0:cu].filter(s=>!!s)});t.common.issues.push(n)}var _r=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 s of r){if(s.status==="aborted")return he;s.status==="dirty"&&e.dirty(),n.push(s.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let s of r){let i=await s.key,a=await s.value;n.push({key:i,value:a})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let s of r){let{key:i,value:a}=s;if(i.status==="aborted"||a.status==="aborted")return he;i.status==="dirty"&&e.dirty(),a.status==="dirty"&&e.dirty(),i.value!=="__proto__"&&(typeof a.value<"u"||s.alwaysSet)&&(n[i.value]=a.value)}return{status:e.value,value:n}}},he=Object.freeze({status:"aborted"}),iu=t=>({status:"dirty",value:t}),Lr=t=>({status:"valid",value:t}),_M=t=>t.status==="aborted",wM=t=>t.status==="dirty",po=t=>t.status==="valid",ef=t=>typeof Promise<"u"&&t instanceof Promise,ne;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(ne||(ne={}));var ln=class{constructor(e,r,n,s){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=s}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}},SM=(t,e)=>{if(po(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new cn(t.common.issues);return this._error=r,this._error}}};function _e(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:s}=t;if(e&&(r||n))throw Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:s}:{errorMap:(i,a)=>{let{message:o}=t;return i.code==="invalid_enum_value"?{message:o??a.defaultError}:typeof a.data>"u"?{message:o??n??a.defaultError}:i.code!=="invalid_type"?{message:a.defaultError}:{message:o??r??a.defaultError}},description:s}}var Re=class{get description(){return this._def.description}_getType(e){return Gs(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:Gs(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new _r,ctx:{common:e.parent.common,data:e.data,parsedType:Gs(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(ef(r))throw 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:Gs(e)},s=this._parseSync({data:e,path:n.path,parent:n});return SM(n,s)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Gs(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return po(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=>po(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:Gs(e)},s=this._parse({data:e,path:n.path,parent:n}),i=await(ef(s)?s:Promise.resolve(s));return SM(n,i)}refine(e,r){let n=s=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(s):r;return this._refinement((s,i)=>{let a=e(s),o=()=>i.addIssue({code:V.custom,...n(s)});return typeof Promise<"u"&&a instanceof Promise?a.then(c=>c?!0:(o(),!1)):a?!0:(o(),!1)})}refinement(e,r){return this._refinement((n,s)=>e(n)?!0:(s.addIssue(typeof r=="function"?r(n,s):r),!1))}_refinement(e){return new Pn({schema:this,typeName:ge.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 On.create(this,this._def)}nullable(){return bs.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Js.create(this)}promise(){return Ui.create(this,this._def)}or(e){return go.create([this,e],this._def)}and(e){return vo.create(this,e,this._def)}transform(e){return new Pn({..._e(this._def),schema:this,typeName:ge.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new wo({..._e(this._def),innerType:this,defaultValue:r,typeName:ge.ZodDefault})}brand(){return new tf({typeName:ge.ZodBranded,type:this,..._e(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new So({..._e(this._def),innerType:this,catchValue:r,typeName:ge.ZodCatch})}describe(e){return new this.constructor({...this._def,description:e})}pipe(e){return rf.create(this,e)}readonly(){return Eo.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},iie=/^c[^\s-]{8,}$/i,aie=/^[0-9a-z]+$/,oie=/^[0-9A-HJKMNP-TV-Z]{26}$/i,cie=/^[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,lie=/^[a-z0-9_-]{21}$/i,uie=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,pie=/^[-+]?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)?)??$/,die=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,mie="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",N_,fie=/^(?:(?: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])$/,hie=/^(?:(?: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])$/,gie=/^(([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]))$/,vie=/^(([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])$/,yie=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,bie=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,wz="((\\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])))",xie=new RegExp(`^${wz}$`);function Sz(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 _ie(t){return new RegExp(`^${Sz(t)}$`)}function wie(t){let e=`${wz}T${Sz(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 Sie(t,e){return!!((e==="v4"||!e)&&fie.test(t)||(e==="v6"||!e)&&gie.test(t))}function Eie(t,e){if(!uie.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,"="),s=JSON.parse(atob(n));return!(typeof s!="object"||s===null||"typ"in s&&s?.typ!=="JWT"||!s.alg||e&&s.alg!==e)}catch{return!1}}function kie(t,e){return!!((e==="v4"||!e)&&hie.test(t)||(e==="v6"||!e)&&vie.test(t))}var mo=class t extends Re{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==te.string){let s=this._getOrReturnCtx(e);return Q(s,{code:V.invalid_type,expected:te.string,received:s.parsedType}),he}let r=new _r,n;for(let s of this._def.checks)if(s.kind==="min")e.data.lengths.value&&(n=this._getOrReturnCtx(e,n),Q(n,{code:V.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),r.dirty());else if(s.kind==="length"){let i=e.data.length>s.value,a=e.data.lengthe.test(s),{validation:r,code:V.invalid_string,...ne.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...ne.errToObj(e)})}url(e){return this._addCheck({kind:"url",...ne.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...ne.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...ne.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...ne.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...ne.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...ne.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...ne.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...ne.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...ne.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...ne.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...ne.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...ne.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,...ne.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,...ne.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...ne.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...ne.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...ne.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...ne.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...ne.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...ne.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...ne.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...ne.errToObj(r)})}nonempty(e){return this.min(1,ne.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 mo({checks:[],typeName:ge.ZodString,coerce:t?.coerce??!1,..._e(t)});function Tie(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,s=r>n?r:n,i=Number.parseInt(t.toFixed(s).replace(".","")),a=Number.parseInt(e.toFixed(s).replace(".",""));return i%a/10**s}var lu=class t extends Re{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)!==te.number){let s=this._getOrReturnCtx(e);return Q(s,{code:V.invalid_type,expected:te.number,received:s.parsedType}),he}let r,n=new _r;for(let s of this._def.checks)s.kind==="int"?He.isInteger(e.data)||(r=this._getOrReturnCtx(e,r),Q(r,{code:V.invalid_type,expected:"integer",received:"float",message:s.message}),n.dirty()):s.kind==="min"?(s.inclusive?e.datas.value:e.data>=s.value)&&(r=this._getOrReturnCtx(e,r),Q(r,{code:V.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),n.dirty()):s.kind==="multipleOf"?Tie(e.data,s.value)!==0&&(r=this._getOrReturnCtx(e,r),Q(r,{code:V.not_multiple_of,multipleOf:s.value,message:s.message}),n.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(r=this._getOrReturnCtx(e,r),Q(r,{code:V.not_finite,message:s.message}),n.dirty()):He.assertNever(s);return{status:n.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,ne.toString(r))}gt(e,r){return this.setLimit("min",e,!1,ne.toString(r))}lte(e,r){return this.setLimit("max",e,!0,ne.toString(r))}lt(e,r){return this.setLimit("max",e,!1,ne.toString(r))}setLimit(e,r,n,s){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:ne.toString(s)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:ne.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:ne.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:ne.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:ne.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:ne.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:ne.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:ne.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:ne.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:ne.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"&&He.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 lu({checks:[],typeName:ge.ZodNumber,coerce:t?.coerce||!1,..._e(t)});var uu=class t extends Re{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)!==te.bigint)return this._getInvalidInput(e);let r,n=new _r;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.datas.value:e.data>=s.value)&&(r=this._getOrReturnCtx(e,r),Q(r,{code:V.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),n.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(r=this._getOrReturnCtx(e,r),Q(r,{code:V.not_multiple_of,multipleOf:s.value,message:s.message}),n.dirty()):He.assertNever(s);return{status:n.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return Q(r,{code:V.invalid_type,expected:te.bigint,received:r.parsedType}),he}gte(e,r){return this.setLimit("min",e,!0,ne.toString(r))}gt(e,r){return this.setLimit("min",e,!1,ne.toString(r))}lte(e,r){return this.setLimit("max",e,!0,ne.toString(r))}lt(e,r){return this.setLimit("max",e,!1,ne.toString(r))}setLimit(e,r,n,s){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:ne.toString(s)}]})}_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:ne.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:ne.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:ne.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:ne.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:ne.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 uu({checks:[],typeName:ge.ZodBigInt,coerce:t?.coerce??!1,..._e(t)});var pu=class extends Re{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==te.boolean){let r=this._getOrReturnCtx(e);return Q(r,{code:V.invalid_type,expected:te.boolean,received:r.parsedType}),he}return Lr(e.data)}};pu.create=t=>new pu({typeName:ge.ZodBoolean,coerce:t?.coerce||!1,..._e(t)});var du=class t extends Re{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==te.date){let s=this._getOrReturnCtx(e);return Q(s,{code:V.invalid_type,expected:te.date,received:s.parsedType}),he}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return Q(s,{code:V.invalid_date}),he}let r=new _r,n;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()s.value&&(n=this._getOrReturnCtx(e,n),Q(n,{code:V.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),r.dirty()):He.assertNever(s);return{status:r.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:ne.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:ne.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 du({checks:[],coerce:t?.coerce||!1,typeName:ge.ZodDate,..._e(t)});var mu=class extends Re{_parse(e){if(this._getType(e)!==te.symbol){let r=this._getOrReturnCtx(e);return Q(r,{code:V.invalid_type,expected:te.symbol,received:r.parsedType}),he}return Lr(e.data)}};mu.create=t=>new mu({typeName:ge.ZodSymbol,..._e(t)});var fo=class extends Re{_parse(e){if(this._getType(e)!==te.undefined){let r=this._getOrReturnCtx(e);return Q(r,{code:V.invalid_type,expected:te.undefined,received:r.parsedType}),he}return Lr(e.data)}};fo.create=t=>new fo({typeName:ge.ZodUndefined,..._e(t)});var ho=class extends Re{_parse(e){if(this._getType(e)!==te.null){let r=this._getOrReturnCtx(e);return Q(r,{code:V.invalid_type,expected:te.null,received:r.parsedType}),he}return Lr(e.data)}};ho.create=t=>new ho({typeName:ge.ZodNull,..._e(t)});var fu=class extends Re{constructor(){super(...arguments),this._any=!0}_parse(e){return Lr(e.data)}};fu.create=t=>new fu({typeName:ge.ZodAny,..._e(t)});var Ks=class extends Re{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Lr(e.data)}};Ks.create=t=>new Ks({typeName:ge.ZodUnknown,..._e(t)});var Qn=class extends Re{_parse(e){let r=this._getOrReturnCtx(e);return Q(r,{code:V.invalid_type,expected:te.never,received:r.parsedType}),he}};Qn.create=t=>new Qn({typeName:ge.ZodNever,..._e(t)});var hu=class extends Re{_parse(e){if(this._getType(e)!==te.undefined){let r=this._getOrReturnCtx(e);return Q(r,{code:V.invalid_type,expected:te.void,received:r.parsedType}),he}return Lr(e.data)}};hu.create=t=>new hu({typeName:ge.ZodVoid,..._e(t)});var Js=class t extends Re{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),s=this._def;if(r.parsedType!==te.array)return Q(r,{code:V.invalid_type,expected:te.array,received:r.parsedType}),he;if(s.exactLength!==null){let a=r.data.length>s.exactLength.value,o=r.data.lengths.maxLength.value&&(Q(r,{code:V.too_big,maximum:s.maxLength.value,type:"array",inclusive:!0,exact:!1,message:s.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((a,o)=>s.type._parseAsync(new ln(r,a,r.path,o)))).then(a=>_r.mergeArray(n,a));let i=[...r.data].map((a,o)=>s.type._parseSync(new ln(r,a,r.path,o)));return _r.mergeArray(n,i)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:ne.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:ne.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:ne.toString(r)}})}nonempty(e){return this.min(1,e)}};Js.create=(t,e)=>new Js({type:t,minLength:null,maxLength:null,exactLength:null,typeName:ge.ZodArray,..._e(e)});function co(t){if(t instanceof Zr){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=On.create(co(n))}return new Zr({...t._def,shape:()=>e})}else return t instanceof Js?new Js({...t._def,type:co(t.element)}):t instanceof On?On.create(co(t.unwrap())):t instanceof bs?bs.create(co(t.unwrap())):t instanceof ys?ys.create(t.items.map(e=>co(e))):t}var Zr=class t extends Re{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=He.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==te.object){let c=this._getOrReturnCtx(e);return Q(c,{code:V.invalid_type,expected:te.object,received:c.parsedType}),he}let{status:r,ctx:n}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof Qn&&this._def.unknownKeys==="strip"))for(let c in n.data)i.includes(c)||a.push(c);let o=[];for(let c of i){let l=s[c],u=n.data[c];o.push({key:{status:"valid",value:c},value:l._parse(new ln(n,u,n.path,c)),alwaysSet:c in n.data})}if(this._def.catchall instanceof Qn){let c=this._def.unknownKeys;if(c==="passthrough")for(let l of a)o.push({key:{status:"valid",value:l},value:{status:"valid",value:n.data[l]}});else if(c==="strict")a.length>0&&(Q(n,{code:V.unrecognized_keys,keys:a}),r.dirty());else if(c!=="strip")throw Error("Internal ZodObject error: invalid unknownKeys value.")}else{let c=this._def.catchall;for(let l of a){let u=n.data[l];o.push({key:{status:"valid",value:l},value:c._parse(new ln(n,u,n.path,l)),alwaysSet:l in n.data})}}return n.common.async?Promise.resolve().then(async()=>{let c=[];for(let l of o){let u=await l.key,p=await l.value;c.push({key:u,value:p,alwaysSet:l.alwaysSet})}return c}).then(c=>_r.mergeObjectSync(r,c)):_r.mergeObjectSync(r,o)}get shape(){return this._def.shape()}strict(e){return ne.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let s=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:ne.errToObj(e).message??s}:{message:s}}}:{}})}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:ge.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 He.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 He.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return co(this)}partial(e){let r={};for(let n of He.objectKeys(this.shape)){let s=this.shape[n];e&&!e[n]?r[n]=s:r[n]=s.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of He.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof On;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return Ez(He.objectKeys(this.shape))}};Zr.create=(t,e)=>new Zr({shape:()=>t,unknownKeys:"strip",catchall:Qn.create(),typeName:ge.ZodObject,..._e(e)});Zr.strictCreate=(t,e)=>new Zr({shape:()=>t,unknownKeys:"strict",catchall:Qn.create(),typeName:ge.ZodObject,..._e(e)});Zr.lazycreate=(t,e)=>new Zr({shape:t,unknownKeys:"strip",catchall:Qn.create(),typeName:ge.ZodObject,..._e(e)});var go=class extends Re{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function s(i){for(let o of i)if(o.result.status==="valid")return o.result;for(let o of i)if(o.result.status==="dirty")return r.common.issues.push(...o.ctx.common.issues),o.result;let a=i.map(o=>new cn(o.ctx.common.issues));return Q(r,{code:V.invalid_union,unionErrors:a}),he}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(s);{let i,a=[];for(let c of n){let l={...r,common:{...r.common,issues:[]},parent:null},u=c._parseSync({data:r.data,path:r.path,parent:l});if(u.status==="valid")return u;u.status==="dirty"&&!i&&(i={result:u,ctx:l}),l.common.issues.length&&a.push(l.common.issues)}if(i)return r.common.issues.push(...i.ctx.common.issues),i.result;let o=a.map(c=>new cn(c));return Q(r,{code:V.invalid_union,unionErrors:o}),he}}get options(){return this._def.options}};go.create=(t,e)=>new go({options:t,typeName:ge.ZodUnion,..._e(e)});var hs=t=>t instanceof yo?hs(t.schema):t instanceof Pn?hs(t.innerType()):t instanceof bo?[t.value]:t instanceof xo?t.options:t instanceof _o?He.objectValues(t.enum):t instanceof wo?hs(t._def.innerType):t instanceof fo?[void 0]:t instanceof ho?[null]:t instanceof On?[void 0,...hs(t.unwrap())]:t instanceof bs?[null,...hs(t.unwrap())]:t instanceof tf||t instanceof Eo?hs(t.unwrap()):t instanceof So?hs(t._def.innerType):[],V_=class t extends Re{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==te.object)return Q(r,{code:V.invalid_type,expected:te.object,received:r.parsedType}),he;let n=this.discriminator,s=r.data[n],i=this.optionsMap.get(s);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}):(Q(r,{code:V.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),he)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let s=new Map;for(let i of r){let a=hs(i.shape[e]);if(!a.length)throw Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let o of a){if(s.has(o))throw Error(`Discriminator property ${String(e)} has duplicate value ${String(o)}`);s.set(o,i)}}return new t({typeName:ge.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:s,..._e(n)})}};function G_(t,e){let r=Gs(t),n=Gs(e);if(t===e)return{valid:!0,data:t};if(r===te.object&&n===te.object){let s=He.objectKeys(e),i=He.objectKeys(t).filter(o=>s.indexOf(o)!==-1),a={...t,...e};for(let o of i){let c=G_(t[o],e[o]);if(!c.valid)return{valid:!1};a[o]=c.data}return{valid:!0,data:a}}else if(r===te.array&&n===te.array){if(t.length!==e.length)return{valid:!1};let s=[];for(let i=0;i{if(_M(i)||_M(a))return he;let o=G_(i.value,a.value);return o.valid?((wM(i)||wM(a))&&r.dirty(),{status:r.value,value:o.data}):(Q(n,{code:V.invalid_intersection_types}),he)};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])=>s(i,a)):s(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};vo.create=(t,e,r)=>new vo({left:t,right:e,typeName:ge.ZodIntersection,..._e(r)});var ys=class t extends Re{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==te.array)return Q(n,{code:V.invalid_type,expected:te.array,received:n.parsedType}),he;if(n.data.lengththis._def.items.length&&(Q(n,{code:V.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let s=[...n.data].map((i,a)=>{let o=this._def.items[a]||this._def.rest;return o?o._parse(new ln(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>_r.mergeArray(r,i)):_r.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};ys.create=(t,e)=>{if(!Array.isArray(t))throw Error("You must pass an array of schemas to z.tuple([ ... ])");return new ys({items:t,typeName:ge.ZodTuple,rest:null,..._e(e)})};var Y_=class t extends Re{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!==te.object)return Q(n,{code:V.invalid_type,expected:te.object,received:n.parsedType}),he;let s=[],i=this._def.keyType,a=this._def.valueType;for(let o in n.data)s.push({key:i._parse(new ln(n,o,n.path,o)),value:a._parse(new ln(n,n.data[o],n.path,o)),alwaysSet:o in n.data});return n.common.async?_r.mergeObjectAsync(r,s):_r.mergeObjectSync(r,s)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof Re?new t({keyType:e,valueType:r,typeName:ge.ZodRecord,..._e(n)}):new t({keyType:mo.create(),valueType:e,typeName:ge.ZodRecord,..._e(r)})}},gu=class extends Re{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!==te.map)return Q(n,{code:V.invalid_type,expected:te.map,received:n.parsedType}),he;let s=this._def.keyType,i=this._def.valueType,a=[...n.data.entries()].map(([o,c],l)=>({key:s._parse(new ln(n,o,n.path,[l,"key"])),value:i._parse(new ln(n,c,n.path,[l,"value"]))}));if(n.common.async){let o=new Map;return Promise.resolve().then(async()=>{for(let c of a){let l=await c.key,u=await c.value;if(l.status==="aborted"||u.status==="aborted")return he;(l.status==="dirty"||u.status==="dirty")&&r.dirty(),o.set(l.value,u.value)}return{status:r.value,value:o}})}else{let o=new Map;for(let c of a){let{key:l,value:u}=c;if(l.status==="aborted"||u.status==="aborted")return he;(l.status==="dirty"||u.status==="dirty")&&r.dirty(),o.set(l.value,u.value)}return{status:r.value,value:o}}}};gu.create=(t,e,r)=>new gu({valueType:e,keyType:t,typeName:ge.ZodMap,..._e(r)});var vu=class t extends Re{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==te.set)return Q(n,{code:V.invalid_type,expected:te.set,received:n.parsedType}),he;let s=this._def;s.minSize!==null&&n.data.sizes.maxSize.value&&(Q(n,{code:V.too_big,maximum:s.maxSize.value,type:"set",inclusive:!0,exact:!1,message:s.maxSize.message}),r.dirty());let i=this._def.valueType;function a(c){let l=new Set;for(let u of c){if(u.status==="aborted")return he;u.status==="dirty"&&r.dirty(),l.add(u.value)}return{status:r.value,value:l}}let o=[...n.data.values()].map((c,l)=>i._parse(new ln(n,c,n.path,l)));return n.common.async?Promise.all(o).then(c=>a(c)):a(o)}min(e,r){return new t({...this._def,minSize:{value:e,message:ne.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:ne.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};vu.create=(t,e)=>new vu({valueType:t,minSize:null,maxSize:null,typeName:ge.ZodSet,..._e(e)});var K_=class t extends Re{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==te.function)return Q(r,{code:V.invalid_type,expected:te.function,received:r.parsedType}),he;function n(o,c){return Z_({data:o,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,W_(),cu].filter(l=>!!l),issueData:{code:V.invalid_arguments,argumentsError:c}})}function s(o,c){return Z_({data:o,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,W_(),cu].filter(l=>!!l),issueData:{code:V.invalid_return_type,returnTypeError:c}})}let i={errorMap:r.common.contextualErrorMap},a=r.data;if(this._def.returns instanceof Ui){let o=this;return Lr(async function(...c){let l=new cn([]),u=await o._def.args.parseAsync(c,i).catch(d=>{throw l.addIssue(n(c,d)),l}),p=await Reflect.apply(a,this,u);return await o._def.returns._def.type.parseAsync(p,i).catch(d=>{throw l.addIssue(s(p,d)),l})})}else{let o=this;return Lr(function(...c){let l=o._def.args.safeParse(c,i);if(!l.success)throw new cn([n(c,l.error)]);let u=Reflect.apply(a,this,l.data),p=o._def.returns.safeParse(u,i);if(!p.success)throw new cn([s(u,p.error)]);return p.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:ys.create(e).rest(Ks.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||ys.create([]).rest(Ks.create()),returns:r||Ks.create(),typeName:ge.ZodFunction,..._e(n)})}},yo=class extends Re{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})}};yo.create=(t,e)=>new yo({getter:t,typeName:ge.ZodLazy,..._e(e)});var bo=class extends Re{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return Q(r,{received:r.data,code:V.invalid_literal,expected:this._def.value}),he}return{status:"valid",value:e.data}}get value(){return this._def.value}};bo.create=(t,e)=>new bo({value:t,typeName:ge.ZodLiteral,..._e(e)});function Ez(t,e){return new xo({values:t,typeName:ge.ZodEnum,..._e(e)})}var xo=class t extends Re{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return Q(r,{expected:He.joinValues(n),received:r.parsedType,code:V.invalid_type}),he}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:V.invalid_enum_value,options:n}),he}return Lr(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})}};xo.create=Ez;var _o=class extends Re{_parse(e){let r=He.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==te.string&&n.parsedType!==te.number){let s=He.objectValues(r);return Q(n,{expected:He.joinValues(s),received:n.parsedType,code:V.invalid_type}),he}if(this._cache||(this._cache=new Set(He.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let s=He.objectValues(r);return Q(n,{received:n.data,code:V.invalid_enum_value,options:s}),he}return Lr(e.data)}get enum(){return this._def.values}};_o.create=(t,e)=>new _o({values:t,typeName:ge.ZodNativeEnum,..._e(e)});var Ui=class extends Re{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==te.promise&&r.common.async===!1)return Q(r,{code:V.invalid_type,expected:te.promise,received:r.parsedType}),he;let n=r.parsedType===te.promise?r.data:Promise.resolve(r.data);return Lr(n.then(s=>this._def.type.parseAsync(s,{path:r.path,errorMap:r.common.contextualErrorMap})))}};Ui.create=(t,e)=>new Ui({type:t,typeName:ge.ZodPromise,..._e(e)});var Pn=class extends Re{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===ge.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),s=this._def.effect||null,i={addIssue:a=>{Q(n,a),a.fatal?r.abort():r.dirty()},get path(){return n.path}};if(i.addIssue=i.addIssue.bind(i),s.type==="preprocess"){let a=s.transform(n.data,i);if(n.common.async)return Promise.resolve(a).then(async o=>{if(r.value==="aborted")return he;let c=await this._def.schema._parseAsync({data:o,path:n.path,parent:n});return c.status==="aborted"?he:c.status==="dirty"||r.value==="dirty"?iu(c.value):c});{if(r.value==="aborted")return he;let o=this._def.schema._parseSync({data:a,path:n.path,parent:n});return o.status==="aborted"?he:o.status==="dirty"||r.value==="dirty"?iu(o.value):o}}if(s.type==="refinement"){let a=o=>{let c=s.refinement(o,i);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return o};if(n.common.async===!1){let o=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?he:(o.status==="dirty"&&r.dirty(),a(o.value),{status:r.value,value:o.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(o=>o.status==="aborted"?he:(o.status==="dirty"&&r.dirty(),a(o.value).then(()=>({status:r.value,value:o.value}))))}if(s.type==="transform")if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!po(a))return he;let o=s.transform(a.value,i);if(o instanceof Promise)throw Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:o}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>po(a)?Promise.resolve(s.transform(a.value,i)).then(o=>({status:r.value,value:o})):he);He.assertNever(s)}};Pn.create=(t,e,r)=>new Pn({schema:t,typeName:ge.ZodEffects,effect:e,..._e(r)});Pn.createWithPreprocess=(t,e,r)=>new Pn({schema:e,effect:{type:"preprocess",transform:t},typeName:ge.ZodEffects,..._e(r)});var On=class extends Re{_parse(e){return this._getType(e)===te.undefined?Lr(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};On.create=(t,e)=>new On({innerType:t,typeName:ge.ZodOptional,..._e(e)});var bs=class extends Re{_parse(e){return this._getType(e)===te.null?Lr(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};bs.create=(t,e)=>new bs({innerType:t,typeName:ge.ZodNullable,..._e(e)});var wo=class extends Re{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===te.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};wo.create=(t,e)=>new wo({innerType:t,typeName:ge.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,..._e(e)});var So=class extends Re{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},s=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return ef(s)?s.then(i=>({status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new cn(n.common.issues)},input:n.data})})):{status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new cn(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};So.create=(t,e)=>new So({innerType:t,typeName:ge.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,..._e(e)});var yu=class extends Re{_parse(e){if(this._getType(e)!==te.nan){let r=this._getOrReturnCtx(e);return Q(r,{code:V.invalid_type,expected:te.nan,received:r.parsedType}),he}return{status:"valid",value:e.data}}};yu.create=t=>new yu({typeName:ge.ZodNaN,..._e(t)});var tf=class extends Re{_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}},rf=class t extends Re{_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"?he:s.status==="dirty"?(r.dirty(),iu(s.value)):this._def.out._parseAsync({data:s.value,path:n.path,parent:n})})();{let s=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?he:s.status==="dirty"?(r.dirty(),{status:"dirty",value:s.value}):this._def.out._parseSync({data:s.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:ge.ZodPipeline})}},Eo=class extends Re{_parse(e){let r=this._def.innerType._parse(e),n=s=>(po(s)&&(s.value=Object.freeze(s.value)),s);return ef(r)?r.then(s=>n(s)):n(r)}unwrap(){return this._def.innerType}};Eo.create=(t,e)=>new Eo({innerType:t,typeName:ge.ZodReadonly,..._e(e)});var PSe={object:Zr.lazycreate},ge;(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"})(ge||(ge={}));var CSe=mo.create,ISe=lu.create,ASe=yu.create,NSe=uu.create,jSe=pu.create,DSe=du.create,MSe=mu.create,zSe=fo.create,LSe=ho.create,qSe=fu.create,FSe=Ks.create,USe=Qn.create,HSe=hu.create,BSe=Js.create,WSe=Zr.create,ZSe=Zr.strictCreate,VSe=go.create,GSe=V_.create,YSe=vo.create,KSe=ys.create,JSe=Y_.create,QSe=gu.create,XSe=vu.create,eEe=K_.create,tEe=yo.create,rEe=bo.create,nEe=xo.create,sEe=_o.create,iEe=Ui.create,aEe=Pn.create,oEe=On.create,cEe=bs.create,lEe=Pn.createWithPreprocess,uEe=rf.create,pEe=Object.freeze({status:"aborted"});function L(t,e,r){function n(o,c){var l;Object.defineProperty(o,"_zod",{value:o._zod??{},enumerable:!1}),(l=o._zod).traits??(l.traits=new Set),o._zod.traits.add(t),e(o,c);for(let u in a.prototype)u in o||Object.defineProperty(o,u,{value:a.prototype[u].bind(o)});o._zod.constr=a,o._zod.def=c}let s=r?.Parent??Object;class i extends s{}Object.defineProperty(i,"name",{value:t});function a(o){var c;let l=r?.Parent?new i:this;n(l,o),(c=l._zod).deferred??(c.deferred=[]);for(let u of l._zod.deferred)u();return l}return Object.defineProperty(a,"init",{value:n}),Object.defineProperty(a,Symbol.hasInstance,{value:o=>r?.Parent&&o instanceof r.Parent?!0:o?._zod?.traits?.has(t)}),Object.defineProperty(a,"name",{value:t}),a}var Hi=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},J_={};function xs(t){return t&&Object.assign(J_,t),J_}var ut={};BM(ut,{unwrapMessage:()=>au,stringifyPrimitive:()=>d0,required:()=>Wie,randomString:()=>Nie,propertyKeyTypes:()=>Oz,promiseAllObject:()=>Aie,primitiveTypes:()=>Mie,prefixIssues:()=>Ys,pick:()=>qie,partial:()=>Bie,optionalKeys:()=>Pz,omit:()=>Fie,numKeys:()=>jie,nullish:()=>mf,normalizeParams:()=>fe,merge:()=>Hie,jsonStringifyReplacer:()=>Tz,joinValues:()=>Q_,issue:()=>Iz,isPlainObject:()=>xu,isObject:()=>bu,getSizableOrigin:()=>Zie,getParsedType:()=>Die,getLengthableOrigin:()=>hf,getEnumValues:()=>kz,getElementAtPath:()=>Iie,floatSafeRemainder:()=>Rz,finalizeIssue:()=>_s,extend:()=>Uie,escapeRegex:()=>Co,esc:()=>lo,defineLazy:()=>vt,createTransparentProxy:()=>zie,clone:()=>ws,cleanRegex:()=>ff,cleanEnum:()=>Vie,captureStackTrace:()=>p0,cached:()=>df,assignProp:()=>u0,assertNotEqual:()=>$ie,assertNever:()=>Pie,assertIs:()=>Oie,assertEqual:()=>Rie,assert:()=>Cie,allowsEval:()=>$z,aborted:()=>uo,NUMBER_FORMAT_RANGES:()=>Cz,Class:()=>X_,BIGINT_FORMAT_RANGES:()=>Lie});function Rie(t){return t}function $ie(t){return t}function Oie(t){}function Pie(t){throw Error()}function Cie(t){}function kz(t){let e=Object.values(t).filter(r=>typeof r=="number");return Object.entries(t).filter(([r,n])=>e.indexOf(+r)===-1).map(([r,n])=>n)}function Q_(t,e="|"){return t.map(r=>d0(r)).join(e)}function Tz(t,e){return typeof e=="bigint"?e.toString():e}function df(t){return{get value(){{let e=t();return Object.defineProperty(this,"value",{value:e}),e}throw Error("cached value already set")}}}function mf(t){return t==null}function ff(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Rz(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,s=r>n?r:n,i=Number.parseInt(t.toFixed(s).replace(".","")),a=Number.parseInt(e.toFixed(s).replace(".",""));return i%a/10**s}function vt(t,e,r){Object.defineProperty(t,e,{get(){{let n=r();return t[e]=n,n}throw Error("cached value already set")},set(n){Object.defineProperty(t,e,{value:n})},configurable:!0})}function u0(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function Iie(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function Aie(t){let e=Object.keys(t),r=e.map(n=>t[n]);return Promise.all(r).then(n=>{let s={};for(let i=0;i{};function bu(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var $z=df(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch{return!1}});function xu(t){if(bu(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(bu(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function jie(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var Die=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 Error(`Unknown data type: ${e}`)}},Oz=new Set(["string","number","symbol"]),Mie=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Co(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function ws(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function fe(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 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 zie(t){let e;return new Proxy({},{get(r,n,s){return e??(e=t()),Reflect.get(e,n,s)},set(r,n,s,i){return e??(e=t()),Reflect.set(e,n,s,i)},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,s){return e??(e=t()),Reflect.defineProperty(e,n,s)}})}function d0(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Pz(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Cz={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]},Lie={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function qie(t,e){let r={},n=t._zod.def;for(let s in e){if(!(s in n.shape))throw Error(`Unrecognized key: "${s}"`);e[s]&&(r[s]=n.shape[s])}return ws(t,{...t._zod.def,shape:r,checks:[]})}function Fie(t,e){let r={...t._zod.def.shape},n=t._zod.def;for(let s in e){if(!(s in n.shape))throw Error(`Unrecognized key: "${s}"`);e[s]&&delete r[s]}return ws(t,{...t._zod.def,shape:r,checks:[]})}function Uie(t,e){if(!xu(e))throw Error("Invalid input to extend: expected a plain object");let r={...t._zod.def,get shape(){let n={...t._zod.def.shape,...e};return u0(this,"shape",n),n},checks:[]};return ws(t,r)}function Hie(t,e){return ws(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return u0(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function Bie(t,e,r){let n=e._zod.def.shape,s={...n};if(r)for(let i in r){if(!(i in n))throw Error(`Unrecognized key: "${i}"`);r[i]&&(s[i]=t?new t({type:"optional",innerType:n[i]}):n[i])}else for(let i in n)s[i]=t?new t({type:"optional",innerType:n[i]}):n[i];return ws(e,{...e._zod.def,shape:s,checks:[]})}function Wie(t,e,r){let n=e._zod.def.shape,s={...n};if(r)for(let i in r){if(!(i in s))throw Error(`Unrecognized key: "${i}"`);r[i]&&(s[i]=new t({type:"nonoptional",innerType:n[i]}))}else for(let i in n)s[i]=new t({type:"nonoptional",innerType:n[i]});return ws(e,{...e._zod.def,shape:s,checks:[]})}function uo(t,e=0){for(let r=e;r{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function au(t){return typeof t=="string"?t:t?.message}function _s(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let s=au(t.inst?._zod.def?.error?.(t))??au(e?.error?.(t))??au(r.customError?.(t))??au(r.localeError?.(t))??"Invalid input";n.message=s}return delete n.inst,delete n.continue,!e?.reportInput&&delete n.input,n}function Zie(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function hf(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Iz(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function Vie(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var X_=class{constructor(...e){}},Az=(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,Tz,2)},enumerable:!0})},Nz=L("$ZodError",Az),gf=L("$ZodError",Az,{Parent:Error});function Gie(t,e=r=>r.message){let r={},n=[];for(let s of t.issues)s.path.length>0?(r[s.path[0]]=r[s.path[0]]||[],r[s.path[0]].push(e(s))):n.push(e(s));return{formErrors:n,fieldErrors:r}}function Yie(t,e){let r=e||function(i){return i.message},n={_errors:[]},s=i=>{for(let a of i.issues)if(a.code==="invalid_union"&&a.errors.length)a.errors.map(o=>s({issues:o}));else if(a.code==="invalid_key")s({issues:a.issues});else if(a.code==="invalid_element")s({issues:a.issues});else if(a.path.length===0)n._errors.push(r(a));else{let o=n,c=0;for(;c(e,r,n,s)=>{let i=n?Object.assign(n,{async:!1}):{async:!1},a=e._zod.run({value:r,issues:[]},i);if(a instanceof Promise)throw new Hi;if(a.issues.length){let o=new(s?.Err??t)(a.issues.map(c=>_s(c,i,xs())));throw p0(o,s?.callee),o}return a.value},Kie=jz(gf),Dz=t=>async(e,r,n,s)=>{let i=n?Object.assign(n,{async:!0}):{async:!0},a=e._zod.run({value:r,issues:[]},i);if(a instanceof Promise&&(a=await a),a.issues.length){let o=new(s?.Err??t)(a.issues.map(c=>_s(c,i,xs())));throw p0(o,s?.callee),o}return a.value},Jie=Dz(gf),Mz=t=>(e,r,n)=>{let s=n?{...n,async:!1}:{async:!1},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise)throw new Hi;return i.issues.length?{success:!1,error:new(t??Nz)(i.issues.map(a=>_s(a,s,xs())))}:{success:!0,data:i.value}},zz=Mz(gf),Lz=t=>async(e,r,n)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},i=e._zod.run({value:r,issues:[]},s);return i instanceof Promise&&(i=await i),i.issues.length?{success:!1,error:new t(i.issues.map(a=>_s(a,s,xs())))}:{success:!0,data:i.value}},qz=Lz(gf),Qie=/^[cC][^\s-]{8,}$/,Xie=/^[0-9a-z]+$/,eae=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,tae=/^[0-9a-vA-V]{20}$/,rae=/^[A-Za-z0-9]{27}$/,nae=/^[a-zA-Z0-9_-]{21}$/,sae=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,iae=/^([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})$/,EM=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)$/,aae=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;function oae(){return new RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")}var cae=/^(?:(?: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])$/,lae=/^(([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})$/,uae=/^((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])$/,pae=/^(([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])$/,dae=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Fz=/^[A-Za-z0-9_-]*$/,mae=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/,fae=/^\+(?:[0-9]){6,14}[0-9]$/,Uz="(?:(?:\\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])))",hae=new RegExp(`^${Uz}$`);function Hz(t){return typeof t.precision=="number"?t.precision===-1?"(?:[01]\\d|2[0-3]):[0-5]\\d":t.precision===0?"(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d":`(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{${t.precision}}`:"(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?"}function gae(t){return new RegExp(`^${Hz(t)}$`)}function vae(t){let e=Hz({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(`^${Uz}T(?:${n})$`)}var yae=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)},bae=/^\d+$/,xae=/^-?\d+(?:\.\d+)?/i,_ae=/true|false/i,wae=/null/i,Sae=/^[^A-Z]*$/,Eae=/^[^a-z]*$/,qr=L("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),Bz={number:"number",bigint:"bigint",object:"date"},Wz=L("$ZodCheckLessThan",(t,e)=>{qr.init(t,e);let r=Bz[typeof e.value];t._zod.onattach.push(n=>{let s=n._zod.bag,i=(e.inclusive?s.maximum:s.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value{(e.inclusive?n.value<=e.value:n.value{qr.init(t,e);let r=Bz[typeof e.value];t._zod.onattach.push(n=>{let s=n._zod.bag,i=(e.inclusive?s.minimum:s.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>i&&(e.inclusive?s.minimum=e.value:s.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})}}),kae=L("$ZodCheckMultipleOf",(t,e)=>{qr.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 Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%e.value===BigInt(0):Rz(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})}}),Tae=L("$ZodCheckNumberFormat",(t,e)=>{qr.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[s,i]=Cz[e.format];t._zod.onattach.push(a=>{let o=a._zod.bag;o.format=e.format,o.minimum=s,o.maximum=i,r&&(o.pattern=bae)}),t._zod.check=a=>{let o=a.value;if(r){if(!Number.isInteger(o)){a.issues.push({expected:n,format:e.format,code:"invalid_type",input:o,inst:t});return}if(!Number.isSafeInteger(o)){o>0?a.issues.push({input:o,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,continue:!e.abort}):a.issues.push({input:o,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}}oi&&a.issues.push({origin:"number",input:o,code:"too_big",maximum:i,inst:t})}}),Rae=L("$ZodCheckMaxLength",(t,e)=>{qr.init(t,e),t._zod.when=r=>{let n=r.value;return!mf(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=hf(n);r.issues.push({origin:s,code:"too_big",maximum:e.maximum,inclusive:!0,input:n,inst:t,continue:!e.abort})}}),$ae=L("$ZodCheckMinLength",(t,e)=>{qr.init(t,e),t._zod.when=r=>{let n=r.value;return!mf(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=hf(n);r.issues.push({origin:s,code:"too_small",minimum:e.minimum,inclusive:!0,input:n,inst:t,continue:!e.abort})}}),Oae=L("$ZodCheckLengthEquals",(t,e)=>{qr.init(t,e),t._zod.when=r=>{let n=r.value;return!mf(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,s=n.length;if(s===e.length)return;let i=hf(n),a=s>e.length;r.issues.push({origin:i,...a?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:r.value,inst:t,continue:!e.abort})}}),vf=L("$ZodCheckStringFormat",(t,e)=>{var r,n;qr.init(t,e),t._zod.onattach.push(s=>{let i=s._zod.bag;i.format=e.format,e.pattern&&(i.patterns??(i.patterns=new Set),i.patterns.add(e.pattern))}),e.pattern?(r=t._zod).check??(r.check=s=>{e.pattern.lastIndex=0,!e.pattern.test(s.value)&&s.issues.push({origin:"string",code:"invalid_format",format:e.format,input:s.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(n=t._zod).check??(n.check=()=>{})}),Pae=L("$ZodCheckRegex",(t,e)=>{vf.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})}}),Cae=L("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=Sae),vf.init(t,e)}),Iae=L("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=Eae),vf.init(t,e)}),Aae=L("$ZodCheckIncludes",(t,e)=>{qr.init(t,e);let r=Co(e.includes),n=new RegExp(typeof e.position=="number"?`^.{${e.position}}${r}`:r);e.pattern=n,t._zod.onattach.push(s=>{let i=s._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(n)}),t._zod.check=s=>{s.value.includes(e.includes,e.position)||s.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:s.value,inst:t,continue:!e.abort})}}),Nae=L("$ZodCheckStartsWith",(t,e)=>{qr.init(t,e);let r=new RegExp(`^${Co(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let s=n._zod.bag;s.patterns??(s.patterns=new Set),s.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})}}),jae=L("$ZodCheckEndsWith",(t,e)=>{qr.init(t,e);let r=new RegExp(`.*${Co(e.suffix)}$`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let s=n._zod.bag;s.patterns??(s.patterns=new Set),s.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})}}),Dae=L("$ZodCheckOverwrite",(t,e)=>{qr.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}}),e0=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 r=e.split(` `).filter(i=>i),n=Math.min(...r.map(i=>i.length-i.trimStart().length)),s=r.map(i=>i.slice(n)).map(i=>" ".repeat(this.indent*2)+i);for(let i of s)this.content.push(i)}compile(){let e=Function,r=this?.args,n=[...(this?.content??[""]).map(s=>` ${s}`)];return new e(...r,n.join(` -`))}},Pae={major:4,minor:0,patch:0},dt=L("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=Pae;let n=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&n.unshift(t);for(let s of n)for(let i of s._zod.onattach)i(t);if(n.length===0)(r=t._zod).deferred??(r.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{let s=(i,a,o)=>{let c=lo(i),l;for(let u of a){if(u._zod.when){if(!u._zod.when(i))continue}else if(c)continue;let p=i.issues.length,d=u._zod.check(i);if(d instanceof Promise&&o?.async===!1)throw new Ui;if(l||d instanceof Promise)l=(l??Promise.resolve()).then(async()=>{await d,i.issues.length!==p&&(c||(c=lo(i,p)))});else{if(i.issues.length===p)continue;c||(c=lo(i,p))}}return l?l.then(()=>i):i};t._zod.run=(i,a)=>{let o=t._zod.parse(i,a);if(o instanceof Promise){if(a.async===!1)throw new Ui;return o.then(c=>s(c,n,a))}return s(o,n,a)}}t["~standard"]={validate:s=>{try{let i=Iz(t,s);return i.success?{value:i.data}:{issues:i.error?.issues}}catch{return Nz(t,s).then(a=>a.success?{value:a.data}:{issues:a.error?.issues})}},vendor:"zod",version:1}}),l0=L("$ZodString",(t,e)=>{dt.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??pae(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}}),_t=L("$ZodStringFormat",(t,e)=>{hf.init(t,e),l0.init(t,e)}),Cae=L("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=Qie),_t.init(t,e)}),Iae=L("$ZodUUID",(t,e)=>{if(e.version){let r={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(r===void 0)throw Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=yM(r))}else e.pattern??(e.pattern=yM());_t.init(t,e)}),Aae=L("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Xie),_t.init(t,e)}),Nae=L("$ZodURL",(t,e)=>{_t.init(t,e),t._zod.check=r=>{try{let n=r.value,s=new URL(n),i=s.href;e.hostname&&(e.hostname.lastIndex=0,!e.hostname.test(s.hostname)&&r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:aae.source,input:r.value,inst:t,continue:!e.abort})),e.protocol&&(e.protocol.lastIndex=0,!e.protocol.test(s.protocol.endsWith(":")?s.protocol.slice(0,-1):s.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("/")&&i.endsWith("/")?r.value=i.slice(0,-1):r.value=i;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:t,continue:!e.abort})}}}),jae=L("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=eae()),_t.init(t,e)}),Dae=L("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Kie),_t.init(t,e)}),Mae=L("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Wie),_t.init(t,e)}),zae=L("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Zie),_t.init(t,e)}),Lae=L("$ZodULID",(t,e)=>{e.pattern??(e.pattern=Vie),_t.init(t,e)}),qae=L("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Gie),_t.init(t,e)}),Fae=L("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Yie),_t.init(t,e)}),Uae=L("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=uae(e)),_t.init(t,e)}),Hae=L("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=cae),_t.init(t,e)}),Bae=L("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=lae(e)),_t.init(t,e)}),Wae=L("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Jie),_t.init(t,e)}),Zae=L("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=tae),_t.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),Vae=L("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=rae),_t.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})}}}),Gae=L("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=nae),_t.init(t,e)}),Yae=L("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=sae),_t.init(t,e),t._zod.check=r=>{let[n,s]=r.value.split("/");try{if(!s)throw Error();let i=Number(s);if(`${i}`!==s||i<0||i>128)throw Error();new URL(`http://[${n}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:t,continue:!e.abort})}}});function Fz(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var Kae=L("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=iae),_t.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Fz(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function Jae(t){if(!jz.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Fz(r)}var Qae=L("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=jz),_t.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{Jae(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),Xae=L("$ZodE164",(t,e)=>{e.pattern??(e.pattern=oae),_t.init(t,e)});function eoe(t,e=null){try{let r=t.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let s=JSON.parse(atob(n));return!("typ"in s&&s?.typ!=="JWT"||!s.alg||e&&(!("alg"in s)||s.alg!==e))}catch{return!1}}var toe=L("$ZodJWT",(t,e)=>{_t.init(t,e),t._zod.check=r=>{eoe(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}}),Uz=L("$ZodNumber",(t,e)=>{dt.init(t,e),t._zod.pattern=t._zod.bag.pattern??mae,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=Number(r.value)}catch{}let s=r.value;if(typeof s=="number"&&!Number.isNaN(s)&&Number.isFinite(s))return r;let i=typeof s=="number"?Number.isNaN(s)?"NaN":Number.isFinite(s)?void 0:"Infinity":void 0;return r.issues.push({expected:"number",code:"invalid_type",input:s,inst:t,...i?{received:i}:{}}),r}}),roe=L("$ZodNumber",(t,e)=>{bae.init(t,e),Uz.init(t,e)}),noe=L("$ZodBoolean",(t,e)=>{dt.init(t,e),t._zod.pattern=fae,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=!!r.value}catch{}let s=r.value;return typeof s=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:s,inst:t}),r}}),soe=L("$ZodNull",(t,e)=>{dt.init(t,e),t._zod.pattern=hae,t._zod.values=new Set([null]),t._zod.parse=(r,n)=>{let s=r.value;return s===null||r.issues.push({expected:"null",code:"invalid_type",input:s,inst:t}),r}}),ioe=L("$ZodUnknown",(t,e)=>{dt.init(t,e),t._zod.parse=r=>r}),aoe=L("$ZodNever",(t,e)=>{dt.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function bM(t,e,r){t.issues.length&&e.issues.push(...Ys(r,t.issues)),e.value[r]=t.value}var ooe=L("$ZodArray",(t,e)=>{dt.init(t,e),t._zod.parse=(r,n)=>{let s=r.value;if(!Array.isArray(s))return r.issues.push({expected:"array",code:"invalid_type",input:s,inst:t}),r;r.value=Array(s.length);let i=[];for(let a=0;abM(l,r,a))):bM(c,r,a)}return i.length?Promise.all(i).then(()=>r):r}});function Wm(t,e,r){t.issues.length&&e.issues.push(...Ys(r,t.issues)),e.value[r]=t.value}function xM(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(...Ys(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var Hz=L("$ZodObject",(t,e)=>{dt.init(t,e);let r=uf(()=>{let u=Object.keys(e.shape);for(let d of u)if(!(e.shape[d]instanceof dt))throw Error(`Invalid element at key "${d}": expected a Zod schema`);let p=Ez(e.shape);return{shape:e.shape,keys:u,keySet:new Set(u),numKeys:u.length,optionalKeys:new Set(p)}});vt(t._zod,"propValues",()=>{let u=e.shape,p={};for(let d in u){let m=u[d]._zod;if(m.values){p[d]??(p[d]=new Set);for(let f of m.values)p[d].add(f)}}return p});let n=u=>{let p=new K_(["shape","payload","ctx"]),d=r.value,m=h=>{let y=co(h);return`shape[${y}]._zod.run({ value: input[${y}], issues: [] }, ctx)`};p.write("const input = payload.value;");let f=Object.create(null),v=0;for(let h of d.keys)f[h]=`key_${v++}`;p.write("const newResult = {}");for(let h of d.keys)if(d.optionalKeys.has(h)){let y=f[h];p.write(`const ${y} = ${m(h)};`);let b=co(h);p.write(` +`))}},Mae={major:4,minor:0,patch:0},dt=L("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=Mae;let n=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&n.unshift(t);for(let s of n)for(let i of s._zod.onattach)i(t);if(n.length===0)(r=t._zod).deferred??(r.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{let s=(i,a,o)=>{let c=uo(i),l;for(let u of a){if(u._zod.when){if(!u._zod.when(i))continue}else if(c)continue;let p=i.issues.length,d=u._zod.check(i);if(d instanceof Promise&&o?.async===!1)throw new Hi;if(l||d instanceof Promise)l=(l??Promise.resolve()).then(async()=>{await d,i.issues.length!==p&&(c||(c=uo(i,p)))});else{if(i.issues.length===p)continue;c||(c=uo(i,p))}}return l?l.then(()=>i):i};t._zod.run=(i,a)=>{let o=t._zod.parse(i,a);if(o instanceof Promise){if(a.async===!1)throw new Hi;return o.then(c=>s(c,n,a))}return s(o,n,a)}}t["~standard"]={validate:s=>{try{let i=zz(t,s);return i.success?{value:i.data}:{issues:i.error?.issues}}catch{return qz(t,s).then(a=>a.success?{value:a.data}:{issues:a.error?.issues})}},vendor:"zod",version:1}}),m0=L("$ZodString",(t,e)=>{dt.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??yae(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}}),_t=L("$ZodStringFormat",(t,e)=>{vf.init(t,e),m0.init(t,e)}),zae=L("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=iae),_t.init(t,e)}),Lae=L("$ZodUUID",(t,e)=>{if(e.version){let r={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(r===void 0)throw Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=EM(r))}else e.pattern??(e.pattern=EM());_t.init(t,e)}),qae=L("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=aae),_t.init(t,e)}),Fae=L("$ZodURL",(t,e)=>{_t.init(t,e),t._zod.check=r=>{try{let n=r.value,s=new URL(n),i=s.href;e.hostname&&(e.hostname.lastIndex=0,!e.hostname.test(s.hostname)&&r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:mae.source,input:r.value,inst:t,continue:!e.abort})),e.protocol&&(e.protocol.lastIndex=0,!e.protocol.test(s.protocol.endsWith(":")?s.protocol.slice(0,-1):s.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("/")&&i.endsWith("/")?r.value=i.slice(0,-1):r.value=i;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:t,continue:!e.abort})}}}),Uae=L("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=oae()),_t.init(t,e)}),Hae=L("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=nae),_t.init(t,e)}),Bae=L("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Qie),_t.init(t,e)}),Wae=L("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Xie),_t.init(t,e)}),Zae=L("$ZodULID",(t,e)=>{e.pattern??(e.pattern=eae),_t.init(t,e)}),Vae=L("$ZodXID",(t,e)=>{e.pattern??(e.pattern=tae),_t.init(t,e)}),Gae=L("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=rae),_t.init(t,e)}),Yae=L("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=vae(e)),_t.init(t,e)}),Kae=L("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=hae),_t.init(t,e)}),Jae=L("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=gae(e)),_t.init(t,e)}),Qae=L("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=sae),_t.init(t,e)}),Xae=L("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=cae),_t.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),eoe=L("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=lae),_t.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})}}}),toe=L("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=uae),_t.init(t,e)}),roe=L("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=pae),_t.init(t,e),t._zod.check=r=>{let[n,s]=r.value.split("/");try{if(!s)throw Error();let i=Number(s);if(`${i}`!==s||i<0||i>128)throw Error();new URL(`http://[${n}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:t,continue:!e.abort})}}});function Vz(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var noe=L("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=dae),_t.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Vz(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function soe(t){if(!Fz.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Vz(r)}var ioe=L("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=Fz),_t.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{soe(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),aoe=L("$ZodE164",(t,e)=>{e.pattern??(e.pattern=fae),_t.init(t,e)});function ooe(t,e=null){try{let r=t.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let s=JSON.parse(atob(n));return!("typ"in s&&s?.typ!=="JWT"||!s.alg||e&&(!("alg"in s)||s.alg!==e))}catch{return!1}}var coe=L("$ZodJWT",(t,e)=>{_t.init(t,e),t._zod.check=r=>{ooe(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}}),Gz=L("$ZodNumber",(t,e)=>{dt.init(t,e),t._zod.pattern=t._zod.bag.pattern??xae,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=Number(r.value)}catch{}let s=r.value;if(typeof s=="number"&&!Number.isNaN(s)&&Number.isFinite(s))return r;let i=typeof s=="number"?Number.isNaN(s)?"NaN":Number.isFinite(s)?void 0:"Infinity":void 0;return r.issues.push({expected:"number",code:"invalid_type",input:s,inst:t,...i?{received:i}:{}}),r}}),loe=L("$ZodNumber",(t,e)=>{Tae.init(t,e),Gz.init(t,e)}),uoe=L("$ZodBoolean",(t,e)=>{dt.init(t,e),t._zod.pattern=_ae,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=!!r.value}catch{}let s=r.value;return typeof s=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:s,inst:t}),r}}),poe=L("$ZodNull",(t,e)=>{dt.init(t,e),t._zod.pattern=wae,t._zod.values=new Set([null]),t._zod.parse=(r,n)=>{let s=r.value;return s===null||r.issues.push({expected:"null",code:"invalid_type",input:s,inst:t}),r}}),doe=L("$ZodUnknown",(t,e)=>{dt.init(t,e),t._zod.parse=r=>r}),moe=L("$ZodNever",(t,e)=>{dt.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function kM(t,e,r){t.issues.length&&e.issues.push(...Ys(r,t.issues)),e.value[r]=t.value}var foe=L("$ZodArray",(t,e)=>{dt.init(t,e),t._zod.parse=(r,n)=>{let s=r.value;if(!Array.isArray(s))return r.issues.push({expected:"array",code:"invalid_type",input:s,inst:t}),r;r.value=Array(s.length);let i=[];for(let a=0;akM(l,r,a))):kM(c,r,a)}return i.length?Promise.all(i).then(()=>r):r}});function Vm(t,e,r){t.issues.length&&e.issues.push(...Ys(r,t.issues)),e.value[r]=t.value}function TM(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(...Ys(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var Yz=L("$ZodObject",(t,e)=>{dt.init(t,e);let r=df(()=>{let u=Object.keys(e.shape);for(let d of u)if(!(e.shape[d]instanceof dt))throw Error(`Invalid element at key "${d}": expected a Zod schema`);let p=Pz(e.shape);return{shape:e.shape,keys:u,keySet:new Set(u),numKeys:u.length,optionalKeys:new Set(p)}});vt(t._zod,"propValues",()=>{let u=e.shape,p={};for(let d in u){let m=u[d]._zod;if(m.values){p[d]??(p[d]=new Set);for(let f of m.values)p[d].add(f)}}return p});let n=u=>{let p=new e0(["shape","payload","ctx"]),d=r.value,m=h=>{let y=lo(h);return`shape[${y}]._zod.run({ value: input[${y}], issues: [] }, ctx)`};p.write("const input = payload.value;");let f=Object.create(null),v=0;for(let h of d.keys)f[h]=`key_${v++}`;p.write("const newResult = {}");for(let h of d.keys)if(d.optionalKeys.has(h)){let y=f[h];p.write(`const ${y} = ${m(h)};`);let b=lo(h);p.write(` if (${y}.issues.length) { if (input[${b}] === undefined) { if (${b} in input) { @@ -1294,12 +1294,12 @@ ${n}`}function wte(t,e){if(!(0,on.existsSync)(t)){_.debug("FOLDER_INDEX","Skippi `)}else{let y=f[h];p.write(`const ${y} = ${m(h)};`),p.write(` if (${y}.issues.length) payload.issues = payload.issues.concat(${y}.issues.map(iss => ({ ...iss, - path: iss.path ? [${co(h)}, ...iss.path] : [${co(h)}] - })));`),p.write(`newResult[${co(h)}] = ${y}.value`)}p.write("payload.value = newResult;"),p.write("return payload;");let g=p.compile();return(h,y)=>g(u,h,y)},s,i=vu,a=!V_.jitless,o=a&&wz.value,c=e.catchall,l;t._zod.parse=(u,p)=>{l??(l=r.value);let d=u.value;if(!i(d))return u.issues.push({expected:"object",code:"invalid_type",input:d,inst:t}),u;let m=[];if(a&&o&&p?.async===!1&&p.jitless!==!0)s||(s=n(e.shape)),u=s(u,p);else{u.value={};let y=l.shape;for(let b of l.keys){let x=y[b],w=x._zod.run({value:d[b],issues:[]},p),S=x._zod.optin==="optional"&&x._zod.optout==="optional";w instanceof Promise?m.push(w.then(E=>S?xM(E,u,b,d):Wm(E,u,b))):S?xM(w,u,b,d):Wm(w,u,b)}}if(!c)return m.length?Promise.all(m).then(()=>u):u;let f=[],v=l.keySet,g=c._zod,h=g.def.type;for(let y of Object.keys(d)){if(v.has(y))continue;if(h==="never"){f.push(y);continue}let b=g.run({value:d[y],issues:[]},p);b instanceof Promise?m.push(b.then(x=>Wm(x,u,y))):Wm(b,u,y)}return f.length&&u.issues.push({code:"unrecognized_keys",keys:f,input:d,inst:t}),m.length?Promise.all(m).then(()=>u):u}});function _M(t,e,r,n){for(let s of t)if(s.issues.length===0)return e.value=s.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(s=>s.issues.map(i=>_s(i,n,xs())))}),e}var Bz=L("$ZodUnion",(t,e)=>{dt.init(t,e),vt(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),vt(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),vt(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),vt(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=>df(n.source)).join("|")})$`)}}),t._zod.parse=(r,n)=>{let s=!1,i=[];for(let a of e.options){let o=a._zod.run({value:r.value,issues:[]},n);if(o instanceof Promise)i.push(o),s=!0;else{if(o.issues.length===0)return o;i.push(o)}}return s?Promise.all(i).then(a=>_M(a,r,t,n)):_M(i,r,t,n)}}),coe=L("$ZodDiscriminatedUnion",(t,e)=>{Bz.init(t,e);let r=t._zod.parse;vt(t._zod,"propValues",()=>{let s={};for(let i of e.options){let a=i._zod.propValues;if(!a||Object.keys(a).length===0)throw Error(`Invalid discriminated union option at index "${e.options.indexOf(i)}"`);for(let[o,c]of Object.entries(a)){s[o]||(s[o]=new Set);for(let l of c)s[o].add(l)}}return s});let n=uf(()=>{let s=e.options,i=new Map;for(let a of s){let o=a._zod.propValues[e.discriminator];if(!o||o.size===0)throw Error(`Invalid discriminated union option at index "${e.options.indexOf(a)}"`);for(let c of o){if(i.has(c))throw Error(`Duplicate discriminator value "${String(c)}"`);i.set(c,a)}}return i});t._zod.parse=(s,i)=>{let a=s.value;if(!vu(a))return s.issues.push({code:"invalid_type",expected:"object",input:a,inst:t}),s;let o=n.value.get(a?.[e.discriminator]);return o?o._zod.run(s,i):e.unionFallback?r(s,i):(s.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:a,path:[e.discriminator],inst:t}),s)}}),loe=L("$ZodIntersection",(t,e)=>{dt.init(t,e),t._zod.parse=(r,n)=>{let s=r.value,i=e.left._zod.run({value:s,issues:[]},n),a=e.right._zod.run({value:s,issues:[]},n);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([o,c])=>wM(r,o,c)):wM(r,i,a)}});function J_(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(yu(t)&&yu(e)){let r=Object.keys(e),n=Object.keys(t).filter(i=>r.indexOf(i)!==-1),s={...t,...e};for(let i of n){let a=J_(t[i],e[i]);if(!a.valid)return{valid:!1,mergeErrorPath:[i,...a.mergeErrorPath]};s[i]=a.data}return{valid:!0,data:s}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n{dt.init(t,e),t._zod.parse=(r,n)=>{let s=r.value;if(!yu(s))return r.issues.push({expected:"record",code:"invalid_type",input:s,inst:t}),r;let i=[];if(e.keyType._zod.values){let a=e.keyType._zod.values;r.value={};for(let c of a)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){let l=e.valueType._zod.run({value:s[c],issues:[]},n);l instanceof Promise?i.push(l.then(u=>{u.issues.length&&r.issues.push(...Ys(c,u.issues)),r.value[c]=u.value})):(l.issues.length&&r.issues.push(...Ys(c,l.issues)),r.value[c]=l.value)}let o;for(let c in s)a.has(c)||(o=o??[],o.push(c));o&&o.length>0&&r.issues.push({code:"unrecognized_keys",input:s,inst:t,keys:o})}else{r.value={};for(let a of Reflect.ownKeys(s)){if(a==="__proto__")continue;let o=e.keyType._zod.run({value:a,issues:[]},n);if(o instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(o.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:o.issues.map(l=>_s(l,n,xs())),input:a,path:[a],inst:t}),r.value[o.value]=o.value;continue}let c=e.valueType._zod.run({value:s[a],issues:[]},n);c instanceof Promise?i.push(c.then(l=>{l.issues.length&&r.issues.push(...Ys(a,l.issues)),r.value[o.value]=l.value})):(c.issues.length&&r.issues.push(...Ys(a,c.issues)),r.value[o.value]=c.value)}}return i.length?Promise.all(i).then(()=>r):r}}),poe=L("$ZodEnum",(t,e)=>{dt.init(t,e);let r=bz(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Sz.has(typeof n)).map(n=>typeof n=="string"?Po(n):n.toString()).join("|")})$`),t._zod.parse=(n,s)=>{let i=n.value;return t._zod.values.has(i)||n.issues.push({code:"invalid_value",values:r,input:i,inst:t}),n}}),doe=L("$ZodLiteral",(t,e)=>{dt.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?Po(r):r?r.toString():String(r)).join("|")})$`),t._zod.parse=(r,n)=>{let s=r.value;return t._zod.values.has(s)||r.issues.push({code:"invalid_value",values:e.values,input:s,inst:t}),r}}),moe=L("$ZodTransform",(t,e)=>{dt.init(t,e),t._zod.parse=(r,n)=>{let s=e.transform(r.value,r);if(n.async)return(s instanceof Promise?s:Promise.resolve(s)).then(i=>(r.value=i,r));if(s instanceof Promise)throw new Ui;return r.value=s,r}}),foe=L("$ZodOptional",(t,e)=>{dt.init(t,e),t._zod.optin="optional",t._zod.optout="optional",vt(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),vt(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${df(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)}),hoe=L("$ZodNullable",(t,e)=>{dt.init(t,e),vt(t._zod,"optin",()=>e.innerType._zod.optin),vt(t._zod,"optout",()=>e.innerType._zod.optout),vt(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${df(r.source)}|null)$`):void 0}),vt(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)}),goe=L("$ZodDefault",(t,e)=>{dt.init(t,e),t._zod.optin="optional",vt(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(r.value===void 0)return r.value=e.defaultValue,r;let s=e.innerType._zod.run(r,n);return s instanceof Promise?s.then(i=>SM(i,e)):SM(s,e)}});function SM(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var voe=L("$ZodPrefault",(t,e)=>{dt.init(t,e),t._zod.optin="optional",vt(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))}),yoe=L("$ZodNonOptional",(t,e)=>{dt.init(t,e),vt(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 s=e.innerType._zod.run(r,n);return s instanceof Promise?s.then(i=>EM(i,t)):EM(s,t)}});function EM(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 boe=L("$ZodCatch",(t,e)=>{dt.init(t,e),t._zod.optin="optional",vt(t._zod,"optout",()=>e.innerType._zod.optout),vt(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{let s=e.innerType._zod.run(r,n);return s instanceof Promise?s.then(i=>(r.value=i.value,i.issues.length&&(r.value=e.catchValue({...r,error:{issues:i.issues.map(a=>_s(a,n,xs()))},input:r.value}),r.issues=[]),r)):(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(i=>_s(i,n,xs()))},input:r.value}),r.issues=[]),r)}}),xoe=L("$ZodPipe",(t,e)=>{dt.init(t,e),vt(t._zod,"values",()=>e.in._zod.values),vt(t._zod,"optin",()=>e.in._zod.optin),vt(t._zod,"optout",()=>e.out._zod.optout),t._zod.parse=(r,n)=>{let s=e.in._zod.run(r,n);return s instanceof Promise?s.then(i=>kM(i,e,n)):kM(s,e,n)}});function kM(t,e,r){return lo(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var _oe=L("$ZodReadonly",(t,e)=>{dt.init(t,e),vt(t._zod,"propValues",()=>e.innerType._zod.propValues),vt(t._zod,"values",()=>e.innerType._zod.values),vt(t._zod,"optin",()=>e.innerType._zod.optin),vt(t._zod,"optout",()=>e.innerType._zod.optout),t._zod.parse=(r,n)=>{let s=e.innerType._zod.run(r,n);return s instanceof Promise?s.then(TM):TM(s)}});function TM(t){return t.value=Object.freeze(t.value),t}var woe=L("$ZodCustom",(t,e)=>{qr.init(t,e),dt.init(t,e),t._zod.parse=(r,n)=>r,t._zod.check=r=>{let n=r.value,s=e.fn(n);if(s instanceof Promise)return s.then(i=>RM(i,r,n,t));RM(s,r,n,t)}});function RM(t,e,r,n){if(!t){let s={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(s.params=n._zod.def.params),e.issues.push(Tz(s))}}var Soe=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},Eoe=()=>{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 ${Soe(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${c0(n.values[0])}`:`Invalid option: expected one of ${G_(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",i=e(n.origin);return i?`Too big: expected ${n.origin??"value"} to have ${s}${n.maximum.toString()} ${i.unit??"elements"}`:`Too big: expected ${n.origin??"value"} to be ${s}${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?">=":">",i=e(n.origin);return i?`Too small: expected ${n.origin} to have ${s}${n.minimum.toString()} ${i.unit}`:`Too small: expected ${n.origin} to be ${s}${n.minimum.toString()}`}case"invalid_format":{let s=n;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]??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":""}: ${G_(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 koe(){return{localeError:Eoe()}}var Q_=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 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 Toe(){return new Q_}var Zm=Toe();function Roe(t,e){return new t({type:"string",...fe(e)})}function $oe(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...fe(e)})}function $M(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...fe(e)})}function Ooe(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...fe(e)})}function Poe(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...fe(e)})}function Coe(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...fe(e)})}function Ioe(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...fe(e)})}function Aoe(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...fe(e)})}function Noe(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...fe(e)})}function joe(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...fe(e)})}function Doe(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...fe(e)})}function Moe(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...fe(e)})}function zoe(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...fe(e)})}function Loe(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...fe(e)})}function qoe(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...fe(e)})}function Foe(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...fe(e)})}function Uoe(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...fe(e)})}function Hoe(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...fe(e)})}function Boe(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...fe(e)})}function Woe(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...fe(e)})}function Zoe(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...fe(e)})}function Voe(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...fe(e)})}function Goe(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...fe(e)})}function Yoe(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...fe(e)})}function Koe(t,e){return new t({type:"string",format:"date",check:"string_format",...fe(e)})}function Joe(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...fe(e)})}function Qoe(t,e){return new t({type:"string",format:"duration",check:"string_format",...fe(e)})}function Xoe(t,e){return new t({type:"number",checks:[],...fe(e)})}function ece(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...fe(e)})}function tce(t,e){return new t({type:"boolean",...fe(e)})}function rce(t,e){return new t({type:"null",...fe(e)})}function nce(t){return new t({type:"unknown"})}function sce(t,e){return new t({type:"never",...fe(e)})}function OM(t,e){return new Lz({check:"less_than",...fe(e),value:t,inclusive:!1})}function C_(t,e){return new Lz({check:"less_than",...fe(e),value:t,inclusive:!0})}function PM(t,e){return new qz({check:"greater_than",...fe(e),value:t,inclusive:!1})}function I_(t,e){return new qz({check:"greater_than",...fe(e),value:t,inclusive:!0})}function CM(t,e){return new yae({check:"multiple_of",...fe(e),value:t})}function Wz(t,e){return new xae({check:"max_length",...fe(e),maximum:t})}function tf(t,e){return new _ae({check:"min_length",...fe(e),minimum:t})}function Zz(t,e){return new wae({check:"length_equals",...fe(e),length:t})}function ice(t,e){return new Sae({check:"string_format",format:"regex",...fe(e),pattern:t})}function ace(t){return new Eae({check:"string_format",format:"lowercase",...fe(t)})}function oce(t){return new kae({check:"string_format",format:"uppercase",...fe(t)})}function cce(t,e){return new Tae({check:"string_format",format:"includes",...fe(e),includes:t})}function lce(t,e){return new Rae({check:"string_format",format:"starts_with",...fe(e),prefix:t})}function uce(t,e){return new $ae({check:"string_format",format:"ends_with",...fe(e),suffix:t})}function bu(t){return new Oae({check:"overwrite",tx:t})}function pce(t){return bu(e=>e.normalize(t))}function dce(){return bu(t=>t.trim())}function mce(){return bu(t=>t.toLowerCase())}function fce(){return bu(t=>t.toUpperCase())}function hce(t,e,r){return new t({type:"array",element:e,...fe(r)})}function gce(t,e,r){let n=fe(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function vce(t,e,r){return new t({type:"custom",check:"custom",fn:e,...fe(r)})}var yce=L("ZodMiniType",(t,e)=>{if(!t._zod)throw Error("Uninitialized schema in ZodMiniType.");dt.init(t,e),t.def=e,t.parse=(r,n)=>Hie(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Iz(t,r,n),t.parseAsync=async(r,n)=>Bie(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Nz(t,r,n),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)=>ws(t,r,n),t.brand=()=>t,t.register=(r,n)=>(r.add(t,n),t)}),iEe=L("ZodMiniObject",(t,e)=>{Hz.init(t,e),yce.init(t,e),ut.defineLazy(t,"shape",()=>e.shape)});var Vz={};zM(Vz,{time:()=>Xz,duration:()=>t2,datetime:()=>Yz,date:()=>Jz,ZodISOTime:()=>Qz,ZodISODuration:()=>e2,ZodISODateTime:()=>Gz,ZodISODate:()=>Kz});var Gz=L("ZodISODateTime",(t,e)=>{Uae.init(t,e),Rt.init(t,e)});function Yz(t){return Yoe(Gz,t)}var Kz=L("ZodISODate",(t,e)=>{Hae.init(t,e),Rt.init(t,e)});function Jz(t){return Koe(Kz,t)}var Qz=L("ZodISOTime",(t,e)=>{Bae.init(t,e),Rt.init(t,e)});function Xz(t){return Joe(Qz,t)}var e2=L("ZodISODuration",(t,e)=>{Wae.init(t,e),Rt.init(t,e)});function t2(t){return Qoe(e2,t)}var r2=(t,e)=>{$z.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Uie(t,r)},flatten:{value:r=>Fie(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},aEe=L("ZodError",r2),gf=L("ZodError",r2,{Parent:Error}),bce=Oz(gf),xce=Pz(gf),_ce=Cz(gf),wce=Az(gf),Tt=L("ZodType",(t,e)=>(dt.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)=>ws(t,r,n),t.brand=()=>t,t.register=(r,n)=>(r.add(t,n),t),t.parse=(r,n)=>bce(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>_ce(t,r,n),t.parseAsync=async(r,n)=>xce(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>wce(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(dle(r,n)),t.superRefine=r=>t.check(mle(r)),t.overwrite=r=>t.check(bu(r)),t.optional=()=>le(t),t.nullable=()=>NM(t),t.nullish=()=>le(NM(t)),t.nonoptional=r=>sle(t,r),t.array=()=>Me(t),t.or=r=>wt([t,r]),t.and=r=>u0(t,r),t.transform=r=>e0(t,l2(r)),t.default=r=>tle(t,r),t.prefault=r=>nle(t,r),t.catch=r=>ale(t,r),t.pipe=r=>e0(t,r),t.readonly=()=>lle(t),t.describe=r=>{let n=t.clone();return Zm.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return Zm.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return Zm.get(t);let n=t.clone();return Zm.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),n2=L("_ZodString",(t,e)=>{l0.init(t,e),Tt.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(ice(...n)),t.includes=(...n)=>t.check(cce(...n)),t.startsWith=(...n)=>t.check(lce(...n)),t.endsWith=(...n)=>t.check(uce(...n)),t.min=(...n)=>t.check(tf(...n)),t.max=(...n)=>t.check(Wz(...n)),t.length=(...n)=>t.check(Zz(...n)),t.nonempty=(...n)=>t.check(tf(1,...n)),t.lowercase=n=>t.check(ace(n)),t.uppercase=n=>t.check(oce(n)),t.trim=()=>t.check(dce()),t.normalize=(...n)=>t.check(pce(...n)),t.toLowerCase=()=>t.check(mce()),t.toUpperCase=()=>t.check(fce())}),Sce=L("ZodString",(t,e)=>{l0.init(t,e),n2.init(t,e),t.email=r=>t.check($oe(Ece,r)),t.url=r=>t.check(Aoe(kce,r)),t.jwt=r=>t.check(Goe(qce,r)),t.emoji=r=>t.check(Noe(Tce,r)),t.guid=r=>t.check($M(IM,r)),t.uuid=r=>t.check(Ooe(Vm,r)),t.uuidv4=r=>t.check(Poe(Vm,r)),t.uuidv6=r=>t.check(Coe(Vm,r)),t.uuidv7=r=>t.check(Ioe(Vm,r)),t.nanoid=r=>t.check(joe(Rce,r)),t.guid=r=>t.check($M(IM,r)),t.cuid=r=>t.check(Doe($ce,r)),t.cuid2=r=>t.check(Moe(Oce,r)),t.ulid=r=>t.check(zoe(Pce,r)),t.base64=r=>t.check(Woe(Mce,r)),t.base64url=r=>t.check(Zoe(zce,r)),t.xid=r=>t.check(Loe(Cce,r)),t.ksuid=r=>t.check(qoe(Ice,r)),t.ipv4=r=>t.check(Foe(Ace,r)),t.ipv6=r=>t.check(Uoe(Nce,r)),t.cidrv4=r=>t.check(Hoe(jce,r)),t.cidrv6=r=>t.check(Boe(Dce,r)),t.e164=r=>t.check(Voe(Lce,r)),t.datetime=r=>t.check(Yz(r)),t.date=r=>t.check(Jz(r)),t.time=r=>t.check(Xz(r)),t.duration=r=>t.check(t2(r))});function M(t){return Roe(Sce,t)}var Rt=L("ZodStringFormat",(t,e)=>{_t.init(t,e),n2.init(t,e)}),Ece=L("ZodEmail",(t,e)=>{Aae.init(t,e),Rt.init(t,e)}),IM=L("ZodGUID",(t,e)=>{Cae.init(t,e),Rt.init(t,e)}),Vm=L("ZodUUID",(t,e)=>{Iae.init(t,e),Rt.init(t,e)}),kce=L("ZodURL",(t,e)=>{Nae.init(t,e),Rt.init(t,e)}),Tce=L("ZodEmoji",(t,e)=>{jae.init(t,e),Rt.init(t,e)}),Rce=L("ZodNanoID",(t,e)=>{Dae.init(t,e),Rt.init(t,e)}),$ce=L("ZodCUID",(t,e)=>{Mae.init(t,e),Rt.init(t,e)}),Oce=L("ZodCUID2",(t,e)=>{zae.init(t,e),Rt.init(t,e)}),Pce=L("ZodULID",(t,e)=>{Lae.init(t,e),Rt.init(t,e)}),Cce=L("ZodXID",(t,e)=>{qae.init(t,e),Rt.init(t,e)}),Ice=L("ZodKSUID",(t,e)=>{Fae.init(t,e),Rt.init(t,e)}),Ace=L("ZodIPv4",(t,e)=>{Zae.init(t,e),Rt.init(t,e)}),Nce=L("ZodIPv6",(t,e)=>{Vae.init(t,e),Rt.init(t,e)}),jce=L("ZodCIDRv4",(t,e)=>{Gae.init(t,e),Rt.init(t,e)}),Dce=L("ZodCIDRv6",(t,e)=>{Yae.init(t,e),Rt.init(t,e)}),Mce=L("ZodBase64",(t,e)=>{Kae.init(t,e),Rt.init(t,e)}),zce=L("ZodBase64URL",(t,e)=>{Qae.init(t,e),Rt.init(t,e)}),Lce=L("ZodE164",(t,e)=>{Xae.init(t,e),Rt.init(t,e)}),qce=L("ZodJWT",(t,e)=>{toe.init(t,e),Rt.init(t,e)}),s2=L("ZodNumber",(t,e)=>{Uz.init(t,e),Tt.init(t,e),t.gt=(n,s)=>t.check(PM(n,s)),t.gte=(n,s)=>t.check(I_(n,s)),t.min=(n,s)=>t.check(I_(n,s)),t.lt=(n,s)=>t.check(OM(n,s)),t.lte=(n,s)=>t.check(C_(n,s)),t.max=(n,s)=>t.check(C_(n,s)),t.int=n=>t.check(AM(n)),t.safe=n=>t.check(AM(n)),t.positive=n=>t.check(PM(0,n)),t.nonnegative=n=>t.check(I_(0,n)),t.negative=n=>t.check(OM(0,n)),t.nonpositive=n=>t.check(C_(0,n)),t.multipleOf=(n,s)=>t.check(CM(n,s)),t.step=(n,s)=>t.check(CM(n,s)),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 Xoe(s2,t)}var Fce=L("ZodNumberFormat",(t,e)=>{roe.init(t,e),s2.init(t,e)});function AM(t){return ece(Fce,t)}var Uce=L("ZodBoolean",(t,e)=>{noe.init(t,e),Tt.init(t,e)});function or(t){return tce(Uce,t)}var Hce=L("ZodNull",(t,e)=>{soe.init(t,e),Tt.init(t,e)});function i2(t){return rce(Hce,t)}var Bce=L("ZodUnknown",(t,e)=>{ioe.init(t,e),Tt.init(t,e)});function Dt(){return nce(Bce)}var Wce=L("ZodNever",(t,e)=>{aoe.init(t,e),Tt.init(t,e)});function Zce(t){return sce(Wce,t)}var Vce=L("ZodArray",(t,e)=>{ooe.init(t,e),Tt.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(tf(r,n)),t.nonempty=r=>t.check(tf(1,r)),t.max=(r,n)=>t.check(Wz(r,n)),t.length=(r,n)=>t.check(Zz(r,n)),t.unwrap=()=>t.element});function Me(t,e){return hce(Vce,t,e)}var a2=L("ZodObject",(t,e)=>{Hz.init(t,e),Tt.init(t,e),ut.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:Dt()}),t.loose=()=>t.clone({...t._zod.def,catchall:Dt()}),t.strict=()=>t.clone({...t._zod.def,catchall:Zce()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>ut.extend(t,r),t.merge=r=>ut.merge(t,r),t.pick=r=>ut.pick(t,r),t.omit=r=>ut.omit(t,r),t.partial=(...r)=>ut.partial(u2,t,r[0]),t.required=(...r)=>ut.required(p2,t,r[0])});function Y(t,e){let r={type:"object",get shape(){return ut.assignProp(this,"shape",{...t}),this.shape},...ut.normalizeParams(e)};return new a2(r)}function Cn(t,e){return new a2({type:"object",get shape(){return ut.assignProp(this,"shape",{...t}),this.shape},catchall:Dt(),...ut.normalizeParams(e)})}var o2=L("ZodUnion",(t,e)=>{Bz.init(t,e),Tt.init(t,e),t.options=e.options});function wt(t,e){return new o2({type:"union",options:t,...ut.normalizeParams(e)})}var Gce=L("ZodDiscriminatedUnion",(t,e)=>{o2.init(t,e),coe.init(t,e)});function c2(t,e,r){return new Gce({type:"union",options:e,discriminator:t,...ut.normalizeParams(r)})}var Yce=L("ZodIntersection",(t,e)=>{loe.init(t,e),Tt.init(t,e)});function u0(t,e){return new Yce({type:"intersection",left:t,right:e})}var Kce=L("ZodRecord",(t,e)=>{uoe.init(t,e),Tt.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function Mt(t,e,r){return new Kce({type:"record",keyType:t,valueType:e,...ut.normalizeParams(r)})}var X_=L("ZodEnum",(t,e)=>{poe.init(t,e),Tt.init(t,e),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(n,s)=>{let i={};for(let a of n)if(r.has(a))i[a]=e.entries[a];else throw Error(`Key ${a} not found in enum`);return new X_({...e,checks:[],...ut.normalizeParams(s),entries:i})},t.exclude=(n,s)=>{let i={...e.entries};for(let a of n)if(r.has(a))delete i[a];else throw Error(`Key ${a} not found in enum`);return new X_({...e,checks:[],...ut.normalizeParams(s),entries:i})}});function cr(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new X_({type:"enum",entries:r,...ut.normalizeParams(e)})}var Jce=L("ZodLiteral",(t,e)=>{doe.init(t,e),Tt.init(t,e),t.values=new Set(e.values),Object.defineProperty(t,"value",{get(){if(e.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return e.values[0]}})});function ue(t,e){return new Jce({type:"literal",values:Array.isArray(t)?t:[t],...ut.normalizeParams(e)})}var Qce=L("ZodTransform",(t,e)=>{moe.init(t,e),Tt.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=i=>{if(typeof i=="string")r.issues.push(ut.issue(i,r.value,e));else{let a=i;a.fatal&&(a.continue=!1),a.code??(a.code="custom"),a.input??(a.input=r.value),a.inst??(a.inst=t),a.continue??(a.continue=!0),r.issues.push(ut.issue(a))}};let s=e.transform(r.value,r);return s instanceof Promise?s.then(i=>(r.value=i,r)):(r.value=s,r)}});function l2(t){return new Qce({type:"transform",transform:t})}var u2=L("ZodOptional",(t,e)=>{foe.init(t,e),Tt.init(t,e),t.unwrap=()=>t._zod.def.innerType});function le(t){return new u2({type:"optional",innerType:t})}var Xce=L("ZodNullable",(t,e)=>{hoe.init(t,e),Tt.init(t,e),t.unwrap=()=>t._zod.def.innerType});function NM(t){return new Xce({type:"nullable",innerType:t})}var ele=L("ZodDefault",(t,e)=>{goe.init(t,e),Tt.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function tle(t,e){return new ele({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var rle=L("ZodPrefault",(t,e)=>{voe.init(t,e),Tt.init(t,e),t.unwrap=()=>t._zod.def.innerType});function nle(t,e){return new rle({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var p2=L("ZodNonOptional",(t,e)=>{yoe.init(t,e),Tt.init(t,e),t.unwrap=()=>t._zod.def.innerType});function sle(t,e){return new p2({type:"nonoptional",innerType:t,...ut.normalizeParams(e)})}var ile=L("ZodCatch",(t,e)=>{boe.init(t,e),Tt.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function ale(t,e){return new ile({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var ole=L("ZodPipe",(t,e)=>{xoe.init(t,e),Tt.init(t,e),t.in=e.in,t.out=e.out});function e0(t,e){return new ole({type:"pipe",in:t,out:e})}var cle=L("ZodReadonly",(t,e)=>{_oe.init(t,e),Tt.init(t,e)});function lle(t){return new cle({type:"readonly",innerType:t})}var d2=L("ZodCustom",(t,e)=>{woe.init(t,e),Tt.init(t,e)});function ule(t,e){let r=new qr({check:"custom",...ut.normalizeParams(e)});return r._zod.check=t,r}function ple(t,e){return gce(d2,t??(()=>!0),e)}function dle(t,e={}){return vce(d2,t,e)}function mle(t,e){let r=ule(n=>(n.addIssue=s=>{if(typeof s=="string")n.issues.push(ut.issue(s,n.value,r._zod.def));else{let i=s;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=n.value),i.inst??(i.inst=r),i.continue??(i.continue=!r._zod.def.abort),n.issues.push(ut.issue(i))}},t(n.value,n)),e);return r}function m2(t,e){return e0(l2(t),e)}xs(koe());var p0="io.modelcontextprotocol/related-task",vf="2.0",Jn=ple(t=>t!==null&&(typeof t=="object"||typeof t=="function")),f2=wt([M(),pt().int()]),h2=M(),fle=Cn({ttl:wt([pt(),i2()]).optional(),pollInterval:pt().optional()}),d0=Cn({taskId:M()}),hle=Cn({progressToken:f2.optional(),[p0]:d0.optional()}),Fr=Cn({task:fle.optional(),_meta:hle.optional()}),tr=Y({method:M(),params:Fr.optional()}),Hi=Cn({_meta:Y({[p0]:le(d0)}).passthrough().optional()}),un=Y({method:M(),params:Hi.optional()}),lr=Cn({_meta:Cn({[p0]:d0.optional()}).optional()}),yf=wt([M(),pt().int()]),gle=Y({jsonrpc:ue(vf),id:yf,...tr.shape}).strict();var vle=Y({jsonrpc:ue(vf),...un.shape}).strict();var yle=Y({jsonrpc:ue(vf),id:yf,result:lr}).strict();var jM;(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"})(jM||(jM={}));var ble=Y({jsonrpc:ue(vf),id:yf,error:Y({code:pt().int(),message:M(),data:le(Dt())})}).strict();var oEe=wt([gle,vle,yle,ble]),g2=lr.strict(),xle=Hi.extend({requestId:yf,reason:M().optional()}),v2=un.extend({method:ue("notifications/cancelled"),params:xle}),_le=Y({src:M(),mimeType:M().optional(),sizes:Me(M()).optional()}),xu=Y({icons:Me(_le).optional()}),Eo=Y({name:M(),title:M().optional()}),y2=Eo.extend({...Eo.shape,...xu.shape,version:M(),websiteUrl:M().optional()}),wle=u0(Y({applyDefaults:or().optional()}),Mt(M(),Dt())),Sle=m2(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,u0(Y({form:wle.optional(),url:Jn.optional()}),Mt(M(),Dt()).optional())),Ele=Y({list:le(Y({}).passthrough()),cancel:le(Y({}).passthrough()),requests:le(Y({sampling:le(Y({createMessage:le(Y({}).passthrough())}).passthrough()),elicitation:le(Y({create:le(Y({}).passthrough())}).passthrough())}).passthrough())}).passthrough(),kle=Y({list:le(Y({}).passthrough()),cancel:le(Y({}).passthrough()),requests:le(Y({tools:le(Y({call:le(Y({}).passthrough())}).passthrough())}).passthrough())}).passthrough(),Tle=Y({experimental:Mt(M(),Jn).optional(),sampling:Y({context:Jn.optional(),tools:Jn.optional()}).optional(),elicitation:Sle.optional(),roots:Y({listChanged:or().optional()}).optional(),tasks:le(Ele)}),Rle=Fr.extend({protocolVersion:M(),capabilities:Tle,clientInfo:y2}),$le=tr.extend({method:ue("initialize"),params:Rle}),Ole=Y({experimental:Mt(M(),Jn).optional(),logging:Jn.optional(),completions:Jn.optional(),prompts:le(Y({listChanged:le(or())})),resources:Y({subscribe:or().optional(),listChanged:or().optional()}).optional(),tools:Y({listChanged:or().optional()}).optional(),tasks:le(kle)}).passthrough(),Ple=lr.extend({protocolVersion:M(),capabilities:Ole,serverInfo:y2,instructions:M().optional()}),Cle=un.extend({method:ue("notifications/initialized")}),b2=tr.extend({method:ue("ping")}),Ile=Y({progress:pt(),total:le(pt()),message:le(M())}),Ale=Y({...Hi.shape,...Ile.shape,progressToken:f2}),x2=un.extend({method:ue("notifications/progress"),params:Ale}),Nle=Fr.extend({cursor:h2.optional()}),_u=tr.extend({params:Nle.optional()}),wu=lr.extend({nextCursor:le(h2)}),Su=Y({taskId:M(),status:cr(["working","input_required","completed","failed","cancelled"]),ttl:wt([pt(),i2()]),createdAt:M(),lastUpdatedAt:M(),pollInterval:le(pt()),statusMessage:le(M())}),_2=lr.extend({task:Su}),jle=Hi.merge(Su),w2=un.extend({method:ue("notifications/tasks/status"),params:jle}),S2=tr.extend({method:ue("tasks/get"),params:Fr.extend({taskId:M()})}),E2=lr.merge(Su),k2=tr.extend({method:ue("tasks/result"),params:Fr.extend({taskId:M()})}),T2=_u.extend({method:ue("tasks/list")}),R2=wu.extend({tasks:Me(Su)}),cEe=tr.extend({method:ue("tasks/cancel"),params:Fr.extend({taskId:M()})}),lEe=lr.merge(Su),$2=Y({uri:M(),mimeType:le(M()),_meta:Mt(M(),Dt()).optional()}),O2=$2.extend({text:M()}),m0=M().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),P2=$2.extend({blob:m0}),Co=Y({audience:Me(cr(["user","assistant"])).optional(),priority:pt().min(0).max(1).optional(),lastModified:Vz.datetime({offset:!0}).optional()}),C2=Y({...Eo.shape,...xu.shape,uri:M(),description:le(M()),mimeType:le(M()),annotations:Co.optional(),_meta:le(Cn({}))}),Dle=Y({...Eo.shape,...xu.shape,uriTemplate:M(),description:le(M()),mimeType:le(M()),annotations:Co.optional(),_meta:le(Cn({}))}),Mle=_u.extend({method:ue("resources/list")}),zle=wu.extend({resources:Me(C2)}),Lle=_u.extend({method:ue("resources/templates/list")}),qle=wu.extend({resourceTemplates:Me(Dle)}),f0=Fr.extend({uri:M()}),Fle=f0,Ule=tr.extend({method:ue("resources/read"),params:Fle}),Hle=lr.extend({contents:Me(wt([O2,P2]))}),Ble=un.extend({method:ue("notifications/resources/list_changed")}),Wle=f0,Zle=tr.extend({method:ue("resources/subscribe"),params:Wle}),Vle=f0,Gle=tr.extend({method:ue("resources/unsubscribe"),params:Vle}),Yle=Hi.extend({uri:M()}),Kle=un.extend({method:ue("notifications/resources/updated"),params:Yle}),Jle=Y({name:M(),description:le(M()),required:le(or())}),Qle=Y({...Eo.shape,...xu.shape,description:le(M()),arguments:le(Me(Jle)),_meta:le(Cn({}))}),Xle=_u.extend({method:ue("prompts/list")}),eue=wu.extend({prompts:Me(Qle)}),tue=Fr.extend({name:M(),arguments:Mt(M(),M()).optional()}),rue=tr.extend({method:ue("prompts/get"),params:tue}),h0=Y({type:ue("text"),text:M(),annotations:Co.optional(),_meta:Mt(M(),Dt()).optional()}),g0=Y({type:ue("image"),data:m0,mimeType:M(),annotations:Co.optional(),_meta:Mt(M(),Dt()).optional()}),v0=Y({type:ue("audio"),data:m0,mimeType:M(),annotations:Co.optional(),_meta:Mt(M(),Dt()).optional()}),nue=Y({type:ue("tool_use"),name:M(),id:M(),input:Y({}).passthrough(),_meta:le(Y({}).passthrough())}).passthrough(),sue=Y({type:ue("resource"),resource:wt([O2,P2]),annotations:Co.optional(),_meta:Mt(M(),Dt()).optional()}),iue=C2.extend({type:ue("resource_link")}),y0=wt([h0,g0,v0,iue,sue]),aue=Y({role:cr(["user","assistant"]),content:y0}),oue=lr.extend({description:le(M()),messages:Me(aue)}),cue=un.extend({method:ue("notifications/prompts/list_changed")}),lue=Y({title:M().optional(),readOnlyHint:or().optional(),destructiveHint:or().optional(),idempotentHint:or().optional(),openWorldHint:or().optional()}),uue=Y({taskSupport:cr(["required","optional","forbidden"]).optional()}),I2=Y({...Eo.shape,...xu.shape,description:M().optional(),inputSchema:Y({type:ue("object"),properties:Mt(M(),Jn).optional(),required:Me(M()).optional()}).catchall(Dt()),outputSchema:Y({type:ue("object"),properties:Mt(M(),Jn).optional(),required:Me(M()).optional()}).catchall(Dt()).optional(),annotations:le(lue),execution:le(uue),_meta:Mt(M(),Dt()).optional()}),pue=_u.extend({method:ue("tools/list")}),due=wu.extend({tools:Me(I2)}),A2=lr.extend({content:Me(y0).default([]),structuredContent:Mt(M(),Dt()).optional(),isError:le(or())}),uEe=A2.or(lr.extend({toolResult:Dt()})),mue=Fr.extend({name:M(),arguments:le(Mt(M(),Dt()))}),fue=tr.extend({method:ue("tools/call"),params:mue}),hue=un.extend({method:ue("notifications/tools/list_changed")}),N2=cr(["debug","info","notice","warning","error","critical","alert","emergency"]),gue=Fr.extend({level:N2}),vue=tr.extend({method:ue("logging/setLevel"),params:gue}),yue=Hi.extend({level:N2,logger:M().optional(),data:Dt()}),bue=un.extend({method:ue("notifications/message"),params:yue}),xue=Y({name:M().optional()}),_ue=Y({hints:le(Me(xue)),costPriority:le(pt().min(0).max(1)),speedPriority:le(pt().min(0).max(1)),intelligencePriority:le(pt().min(0).max(1))}),wue=Y({mode:le(cr(["auto","required","none"]))}),Sue=Y({type:ue("tool_result"),toolUseId:M().describe("The unique identifier for the corresponding tool call."),content:Me(y0).default([]),structuredContent:Y({}).passthrough().optional(),isError:le(or()),_meta:le(Y({}).passthrough())}).passthrough(),Eue=c2("type",[h0,g0,v0]),rf=c2("type",[h0,g0,v0,nue,Sue]),kue=Y({role:cr(["user","assistant"]),content:wt([rf,Me(rf)]),_meta:le(Y({}).passthrough())}).passthrough(),Tue=Fr.extend({messages:Me(kue),modelPreferences:_ue.optional(),systemPrompt:M().optional(),includeContext:cr(["none","thisServer","allServers"]).optional(),temperature:pt().optional(),maxTokens:pt().int(),stopSequences:Me(M()).optional(),metadata:Jn.optional(),tools:le(Me(I2)),toolChoice:le(wue)}),Rue=tr.extend({method:ue("sampling/createMessage"),params:Tue}),$ue=lr.extend({model:M(),stopReason:le(cr(["endTurn","stopSequence","maxTokens"]).or(M())),role:cr(["user","assistant"]),content:Eue}),Oue=lr.extend({model:M(),stopReason:le(cr(["endTurn","stopSequence","maxTokens","toolUse"]).or(M())),role:cr(["user","assistant"]),content:wt([rf,Me(rf)])}),Pue=Y({type:ue("boolean"),title:M().optional(),description:M().optional(),default:or().optional()}),Cue=Y({type:ue("string"),title:M().optional(),description:M().optional(),minLength:pt().optional(),maxLength:pt().optional(),format:cr(["email","uri","date","date-time"]).optional(),default:M().optional()}),Iue=Y({type:cr(["number","integer"]),title:M().optional(),description:M().optional(),minimum:pt().optional(),maximum:pt().optional(),default:pt().optional()}),Aue=Y({type:ue("string"),title:M().optional(),description:M().optional(),enum:Me(M()),default:M().optional()}),Nue=Y({type:ue("string"),title:M().optional(),description:M().optional(),oneOf:Me(Y({const:M(),title:M()})),default:M().optional()}),jue=Y({type:ue("string"),title:M().optional(),description:M().optional(),enum:Me(M()),enumNames:Me(M()).optional(),default:M().optional()}),Due=wt([Aue,Nue]),Mue=Y({type:ue("array"),title:M().optional(),description:M().optional(),minItems:pt().optional(),maxItems:pt().optional(),items:Y({type:ue("string"),enum:Me(M())}),default:Me(M()).optional()}),zue=Y({type:ue("array"),title:M().optional(),description:M().optional(),minItems:pt().optional(),maxItems:pt().optional(),items:Y({anyOf:Me(Y({const:M(),title:M()}))}),default:Me(M()).optional()}),Lue=wt([Mue,zue]),que=wt([jue,Due,Lue]),Fue=wt([que,Pue,Cue,Iue]),Uue=Fr.extend({mode:ue("form").optional(),message:M(),requestedSchema:Y({type:ue("object"),properties:Mt(M(),Fue),required:Me(M()).optional()})}),Hue=Fr.extend({mode:ue("url"),message:M(),elicitationId:M(),url:M().url()}),Bue=wt([Uue,Hue]),Wue=tr.extend({method:ue("elicitation/create"),params:Bue}),Zue=Hi.extend({elicitationId:M()}),Vue=un.extend({method:ue("notifications/elicitation/complete"),params:Zue}),Gue=lr.extend({action:cr(["accept","decline","cancel"]),content:m2(t=>t===null?void 0:t,Mt(M(),wt([M(),pt(),or(),Me(M())])).optional())}),Yue=Y({type:ue("ref/resource"),uri:M()}),Kue=Y({type:ue("ref/prompt"),name:M()}),Jue=Fr.extend({ref:wt([Kue,Yue]),argument:Y({name:M(),value:M()}),context:Y({arguments:Mt(M(),M()).optional()}).optional()}),Que=tr.extend({method:ue("completion/complete"),params:Jue});var Xue=lr.extend({completion:Cn({values:Me(M()).max(100),total:le(pt().int()),hasMore:le(or())})}),epe=Y({uri:M().startsWith("file://"),name:M().optional(),_meta:Mt(M(),Dt()).optional()}),tpe=tr.extend({method:ue("roots/list")}),rpe=lr.extend({roots:Me(epe)}),npe=un.extend({method:ue("notifications/roots/list_changed")}),pEe=wt([b2,$le,Que,vue,rue,Xle,Mle,Lle,Ule,Zle,Gle,fue,pue,S2,k2,T2]),dEe=wt([v2,x2,Cle,npe,w2]),mEe=wt([g2,$ue,Oue,Gue,rpe,E2,R2,_2]),fEe=wt([b2,Rue,Wue,tpe,S2,k2,T2]),hEe=wt([v2,x2,bue,Kle,Ble,hue,cue,w2,Vue]),gEe=wt([g2,Ple,Xue,oue,eue,zle,qle,Hle,A2,due,E2,R2,_2]);var vEe=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");var yEe=MM(WM(),1),bEe=MM(zre(),1);var DM;(function(t){t.Completable="McpCompletable"})(DM||(DM={}));function j2(t){return Yse(t)}var D2=1e5,bf=class{dbManager;sessionManager;constructor(e,r){this.dbManager=e,this.sessionManager=r}async startSession(e,r){let n,s=this.findClaudeExecutable(),i=this.getModelId(),a=["Bash","Read","Write","Edit","Grep","Glob","WebFetch","WebSearch","Task","NotebookEdit","AskUserQuestion","TodoWrite"];if(!e.memorySessionId)throw new Error(`Session ${e.sessionDbId} has no memory_session_id - this should not happen`);_.info("SDK","Starting SDK V2 session",{sessionDbId:e.sessionDbId,contentSessionId:e.contentSessionId,memorySessionId:e.memorySessionId,lastPromptNumber:e.lastPromptNumber});let o=aM(),c=this.createSDKSession(i,s,a);try{let l=Ue.getInstance().getActiveMode(),p=e.lastPromptNumber===1?UD(e.project,e.contentSessionId,e.userPrompt,l):__(e.userPrompt,e.lastPromptNumber,e.contentSessionId,l);e.conversationHistory.push({role:"user",content:p}),await c.send(p),await this.processStreamResponse(c,e,r,n);for await(let m of this.sessionManager.getMessageBatchIterator(e.sessionDbId)){if(e.abortController.signal.aborted){_.warn("SDK","Session aborted",{sessionId:e.sessionDbId});break}let f=m.filter(g=>g.type==="observation"),v=m.filter(g=>g.type==="summarize");if(m.length>1&&_.info("SDK","Processing batch",{sessionId:e.sessionDbId,total:m.length,observations:f.length,summarizes:v.length}),f.length>0){for(let y of f)y.cwd&&(n=y.cwd),y.prompt_number!==void 0&&(e.lastPromptNumber=y.prompt_number);let g=f.map(y=>({id:0,tool_name:y.tool_name,tool_input:JSON.stringify(y.tool_input),tool_output:JSON.stringify(y.tool_response),created_at_epoch:y._originalTimestamp??Date.now(),cwd:y.cwd})),h=f.length===1?x_(g[0]):HD(g);if(e.conversationHistory.push({role:"user",content:h}),e.conversationHistory.length>12){let y=e.conversationHistory.slice(0,2),b=e.conversationHistory.slice(-10);e.conversationHistory.length=0,e.conversationHistory.push(...y,...b)}await c.send(h),await this.processStreamResponse(c,e,r,n),c=await this.maybeRotateSession(c,e,i,s,a,l,r,n)}for(let g of v){if(e.abortController.signal.aborted)break;let h=BD({id:e.sessionDbId,memory_session_id:e.memorySessionId,project:e.project,user_prompt:e.userPrompt,last_assistant_message:g.last_assistant_message||""},l);e.conversationHistory.push({role:"user",content:h}),await c.send(h),await this.processStreamResponse(c,e,r,n),c=await this.maybeRotateSession(c,e,i,s,a,l,r,n)}}let d=Date.now()-e.startTime;_.success("SDK","V2 Agent completed",{sessionId:e.sessionDbId,duration:`${(d/1e3).toFixed(1)}s`})}finally{c.close(),o&&o()}}async processStreamResponse(e,r,n,s){let i=r.earliestPendingTimestamp;for await(let a of e.stream())if(a.type==="assistant"){let o=a.message.content,c=Array.isArray(o)?o.filter(m=>m.type==="text").map(m=>m.text).join(` -`):typeof o=="string"?o:"",l=c.length,u=r.cumulativeInputTokens+r.cumulativeOutputTokens,p=a.message.usage;p&&(r.cumulativeInputTokens+=p.input_tokens||0,r.cumulativeOutputTokens+=p.output_tokens||0,p.cache_creation_input_tokens&&(r.cumulativeInputTokens+=p.cache_creation_input_tokens),_.debug("SDK","Token usage captured",{sessionId:r.sessionDbId,inputTokens:p.input_tokens,outputTokens:p.output_tokens,cumulativeInput:r.cumulativeInputTokens,cumulativeOutput:r.cumulativeOutputTokens}));let d=r.cumulativeInputTokens+r.cumulativeOutputTokens-u;if(l>0){let m=l>100?c.substring(0,100)+"...":c;_.dataOut("SDK",`V2 Response received (${l} chars)`,{sessionId:r.sessionDbId,promptNumber:r.lastPromptNumber},m)}await $_(c,r,this.dbManager,this.sessionManager,n,d,i,"SDK",s)}}createSDKSession(e,r,n){return j2({model:e,disallowedTools:n,pathToClaudeCodeExecutable:r})}async maybeRotateSession(e,r,n,s,i,a,o,c){let l=r.cumulativeInputTokens+r.cumulativeOutputTokens;if(l<=D2)return e;_.info("SDK","Rotating SDK session due to token limit",{totalTokens:l,threshold:D2});try{e.close()}catch(d){_.warn("SDK","Error closing session during rotation",{},d)}let u=this.createSDKSession(n,s,i),p=__(r.userPrompt,r.lastPromptNumber,r.contentSessionId,a);return await u.send(p),await this.processStreamResponse(u,r,o,c),r.cumulativeInputTokens=0,r.cumulativeOutputTokens=0,u}findClaudeExecutable(){let e=De.loadFromFile(ar);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}try{let r=(0,M2.execSync)(process.platform==="win32"?"where claude":"which claude",{encoding:"utf8",windowsHide:!0,stdio:["ignore","pipe","ignore"]}).trim().split(` + path: iss.path ? [${lo(h)}, ...iss.path] : [${lo(h)}] + })));`),p.write(`newResult[${lo(h)}] = ${y}.value`)}p.write("payload.value = newResult;"),p.write("return payload;");let g=p.compile();return(h,y)=>g(u,h,y)},s,i=bu,a=!J_.jitless,o=a&&$z.value,c=e.catchall,l;t._zod.parse=(u,p)=>{l??(l=r.value);let d=u.value;if(!i(d))return u.issues.push({expected:"object",code:"invalid_type",input:d,inst:t}),u;let m=[];if(a&&o&&p?.async===!1&&p.jitless!==!0)s||(s=n(e.shape)),u=s(u,p);else{u.value={};let y=l.shape;for(let b of l.keys){let x=y[b],w=x._zod.run({value:d[b],issues:[]},p),S=x._zod.optin==="optional"&&x._zod.optout==="optional";w instanceof Promise?m.push(w.then(E=>S?TM(E,u,b,d):Vm(E,u,b))):S?TM(w,u,b,d):Vm(w,u,b)}}if(!c)return m.length?Promise.all(m).then(()=>u):u;let f=[],v=l.keySet,g=c._zod,h=g.def.type;for(let y of Object.keys(d)){if(v.has(y))continue;if(h==="never"){f.push(y);continue}let b=g.run({value:d[y],issues:[]},p);b instanceof Promise?m.push(b.then(x=>Vm(x,u,y))):Vm(b,u,y)}return f.length&&u.issues.push({code:"unrecognized_keys",keys:f,input:d,inst:t}),m.length?Promise.all(m).then(()=>u):u}});function RM(t,e,r,n){for(let s of t)if(s.issues.length===0)return e.value=s.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(s=>s.issues.map(i=>_s(i,n,xs())))}),e}var Kz=L("$ZodUnion",(t,e)=>{dt.init(t,e),vt(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),vt(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),vt(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),vt(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=>ff(n.source)).join("|")})$`)}}),t._zod.parse=(r,n)=>{let s=!1,i=[];for(let a of e.options){let o=a._zod.run({value:r.value,issues:[]},n);if(o instanceof Promise)i.push(o),s=!0;else{if(o.issues.length===0)return o;i.push(o)}}return s?Promise.all(i).then(a=>RM(a,r,t,n)):RM(i,r,t,n)}}),hoe=L("$ZodDiscriminatedUnion",(t,e)=>{Kz.init(t,e);let r=t._zod.parse;vt(t._zod,"propValues",()=>{let s={};for(let i of e.options){let a=i._zod.propValues;if(!a||Object.keys(a).length===0)throw Error(`Invalid discriminated union option at index "${e.options.indexOf(i)}"`);for(let[o,c]of Object.entries(a)){s[o]||(s[o]=new Set);for(let l of c)s[o].add(l)}}return s});let n=df(()=>{let s=e.options,i=new Map;for(let a of s){let o=a._zod.propValues[e.discriminator];if(!o||o.size===0)throw Error(`Invalid discriminated union option at index "${e.options.indexOf(a)}"`);for(let c of o){if(i.has(c))throw Error(`Duplicate discriminator value "${String(c)}"`);i.set(c,a)}}return i});t._zod.parse=(s,i)=>{let a=s.value;if(!bu(a))return s.issues.push({code:"invalid_type",expected:"object",input:a,inst:t}),s;let o=n.value.get(a?.[e.discriminator]);return o?o._zod.run(s,i):e.unionFallback?r(s,i):(s.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:a,path:[e.discriminator],inst:t}),s)}}),goe=L("$ZodIntersection",(t,e)=>{dt.init(t,e),t._zod.parse=(r,n)=>{let s=r.value,i=e.left._zod.run({value:s,issues:[]},n),a=e.right._zod.run({value:s,issues:[]},n);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([o,c])=>$M(r,o,c)):$M(r,i,a)}});function t0(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(xu(t)&&xu(e)){let r=Object.keys(e),n=Object.keys(t).filter(i=>r.indexOf(i)!==-1),s={...t,...e};for(let i of n){let a=t0(t[i],e[i]);if(!a.valid)return{valid:!1,mergeErrorPath:[i,...a.mergeErrorPath]};s[i]=a.data}return{valid:!0,data:s}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n{dt.init(t,e),t._zod.parse=(r,n)=>{let s=r.value;if(!xu(s))return r.issues.push({expected:"record",code:"invalid_type",input:s,inst:t}),r;let i=[];if(e.keyType._zod.values){let a=e.keyType._zod.values;r.value={};for(let c of a)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){let l=e.valueType._zod.run({value:s[c],issues:[]},n);l instanceof Promise?i.push(l.then(u=>{u.issues.length&&r.issues.push(...Ys(c,u.issues)),r.value[c]=u.value})):(l.issues.length&&r.issues.push(...Ys(c,l.issues)),r.value[c]=l.value)}let o;for(let c in s)a.has(c)||(o=o??[],o.push(c));o&&o.length>0&&r.issues.push({code:"unrecognized_keys",input:s,inst:t,keys:o})}else{r.value={};for(let a of Reflect.ownKeys(s)){if(a==="__proto__")continue;let o=e.keyType._zod.run({value:a,issues:[]},n);if(o instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(o.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:o.issues.map(l=>_s(l,n,xs())),input:a,path:[a],inst:t}),r.value[o.value]=o.value;continue}let c=e.valueType._zod.run({value:s[a],issues:[]},n);c instanceof Promise?i.push(c.then(l=>{l.issues.length&&r.issues.push(...Ys(a,l.issues)),r.value[o.value]=l.value})):(c.issues.length&&r.issues.push(...Ys(a,c.issues)),r.value[o.value]=c.value)}}return i.length?Promise.all(i).then(()=>r):r}}),yoe=L("$ZodEnum",(t,e)=>{dt.init(t,e);let r=kz(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Oz.has(typeof n)).map(n=>typeof n=="string"?Co(n):n.toString()).join("|")})$`),t._zod.parse=(n,s)=>{let i=n.value;return t._zod.values.has(i)||n.issues.push({code:"invalid_value",values:r,input:i,inst:t}),n}}),boe=L("$ZodLiteral",(t,e)=>{dt.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?Co(r):r?r.toString():String(r)).join("|")})$`),t._zod.parse=(r,n)=>{let s=r.value;return t._zod.values.has(s)||r.issues.push({code:"invalid_value",values:e.values,input:s,inst:t}),r}}),xoe=L("$ZodTransform",(t,e)=>{dt.init(t,e),t._zod.parse=(r,n)=>{let s=e.transform(r.value,r);if(n.async)return(s instanceof Promise?s:Promise.resolve(s)).then(i=>(r.value=i,r));if(s instanceof Promise)throw new Hi;return r.value=s,r}}),_oe=L("$ZodOptional",(t,e)=>{dt.init(t,e),t._zod.optin="optional",t._zod.optout="optional",vt(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),vt(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${ff(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)}),woe=L("$ZodNullable",(t,e)=>{dt.init(t,e),vt(t._zod,"optin",()=>e.innerType._zod.optin),vt(t._zod,"optout",()=>e.innerType._zod.optout),vt(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${ff(r.source)}|null)$`):void 0}),vt(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)}),Soe=L("$ZodDefault",(t,e)=>{dt.init(t,e),t._zod.optin="optional",vt(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(r.value===void 0)return r.value=e.defaultValue,r;let s=e.innerType._zod.run(r,n);return s instanceof Promise?s.then(i=>OM(i,e)):OM(s,e)}});function OM(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Eoe=L("$ZodPrefault",(t,e)=>{dt.init(t,e),t._zod.optin="optional",vt(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))}),koe=L("$ZodNonOptional",(t,e)=>{dt.init(t,e),vt(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 s=e.innerType._zod.run(r,n);return s instanceof Promise?s.then(i=>PM(i,t)):PM(s,t)}});function PM(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 Toe=L("$ZodCatch",(t,e)=>{dt.init(t,e),t._zod.optin="optional",vt(t._zod,"optout",()=>e.innerType._zod.optout),vt(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{let s=e.innerType._zod.run(r,n);return s instanceof Promise?s.then(i=>(r.value=i.value,i.issues.length&&(r.value=e.catchValue({...r,error:{issues:i.issues.map(a=>_s(a,n,xs()))},input:r.value}),r.issues=[]),r)):(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(i=>_s(i,n,xs()))},input:r.value}),r.issues=[]),r)}}),Roe=L("$ZodPipe",(t,e)=>{dt.init(t,e),vt(t._zod,"values",()=>e.in._zod.values),vt(t._zod,"optin",()=>e.in._zod.optin),vt(t._zod,"optout",()=>e.out._zod.optout),t._zod.parse=(r,n)=>{let s=e.in._zod.run(r,n);return s instanceof Promise?s.then(i=>CM(i,e,n)):CM(s,e,n)}});function CM(t,e,r){return uo(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var $oe=L("$ZodReadonly",(t,e)=>{dt.init(t,e),vt(t._zod,"propValues",()=>e.innerType._zod.propValues),vt(t._zod,"values",()=>e.innerType._zod.values),vt(t._zod,"optin",()=>e.innerType._zod.optin),vt(t._zod,"optout",()=>e.innerType._zod.optout),t._zod.parse=(r,n)=>{let s=e.innerType._zod.run(r,n);return s instanceof Promise?s.then(IM):IM(s)}});function IM(t){return t.value=Object.freeze(t.value),t}var Ooe=L("$ZodCustom",(t,e)=>{qr.init(t,e),dt.init(t,e),t._zod.parse=(r,n)=>r,t._zod.check=r=>{let n=r.value,s=e.fn(n);if(s instanceof Promise)return s.then(i=>AM(i,r,n,t));AM(s,r,n,t)}});function AM(t,e,r,n){if(!t){let s={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(s.params=n._zod.def.params),e.issues.push(Iz(s))}}var Poe=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},Coe=()=>{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 ${Poe(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${d0(n.values[0])}`:`Invalid option: expected one of ${Q_(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",i=e(n.origin);return i?`Too big: expected ${n.origin??"value"} to have ${s}${n.maximum.toString()} ${i.unit??"elements"}`:`Too big: expected ${n.origin??"value"} to be ${s}${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?">=":">",i=e(n.origin);return i?`Too small: expected ${n.origin} to have ${s}${n.minimum.toString()} ${i.unit}`:`Too small: expected ${n.origin} to be ${s}${n.minimum.toString()}`}case"invalid_format":{let s=n;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]??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":""}: ${Q_(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 Ioe(){return{localeError:Coe()}}var r0=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 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 Aoe(){return new r0}var Gm=Aoe();function Noe(t,e){return new t({type:"string",...fe(e)})}function joe(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...fe(e)})}function NM(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...fe(e)})}function Doe(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...fe(e)})}function Moe(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...fe(e)})}function zoe(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...fe(e)})}function Loe(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...fe(e)})}function qoe(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...fe(e)})}function Foe(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...fe(e)})}function Uoe(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...fe(e)})}function Hoe(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...fe(e)})}function Boe(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...fe(e)})}function Woe(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...fe(e)})}function Zoe(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...fe(e)})}function Voe(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...fe(e)})}function Goe(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...fe(e)})}function Yoe(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...fe(e)})}function Koe(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...fe(e)})}function Joe(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...fe(e)})}function Qoe(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...fe(e)})}function Xoe(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...fe(e)})}function ece(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...fe(e)})}function tce(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...fe(e)})}function rce(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...fe(e)})}function nce(t,e){return new t({type:"string",format:"date",check:"string_format",...fe(e)})}function sce(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...fe(e)})}function ice(t,e){return new t({type:"string",format:"duration",check:"string_format",...fe(e)})}function ace(t,e){return new t({type:"number",checks:[],...fe(e)})}function oce(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...fe(e)})}function cce(t,e){return new t({type:"boolean",...fe(e)})}function lce(t,e){return new t({type:"null",...fe(e)})}function uce(t){return new t({type:"unknown"})}function pce(t,e){return new t({type:"never",...fe(e)})}function jM(t,e){return new Wz({check:"less_than",...fe(e),value:t,inclusive:!1})}function j_(t,e){return new Wz({check:"less_than",...fe(e),value:t,inclusive:!0})}function DM(t,e){return new Zz({check:"greater_than",...fe(e),value:t,inclusive:!1})}function D_(t,e){return new Zz({check:"greater_than",...fe(e),value:t,inclusive:!0})}function MM(t,e){return new kae({check:"multiple_of",...fe(e),value:t})}function Jz(t,e){return new Rae({check:"max_length",...fe(e),maximum:t})}function nf(t,e){return new $ae({check:"min_length",...fe(e),minimum:t})}function Qz(t,e){return new Oae({check:"length_equals",...fe(e),length:t})}function dce(t,e){return new Pae({check:"string_format",format:"regex",...fe(e),pattern:t})}function mce(t){return new Cae({check:"string_format",format:"lowercase",...fe(t)})}function fce(t){return new Iae({check:"string_format",format:"uppercase",...fe(t)})}function hce(t,e){return new Aae({check:"string_format",format:"includes",...fe(e),includes:t})}function gce(t,e){return new Nae({check:"string_format",format:"starts_with",...fe(e),prefix:t})}function vce(t,e){return new jae({check:"string_format",format:"ends_with",...fe(e),suffix:t})}function _u(t){return new Dae({check:"overwrite",tx:t})}function yce(t){return _u(e=>e.normalize(t))}function bce(){return _u(t=>t.trim())}function xce(){return _u(t=>t.toLowerCase())}function _ce(){return _u(t=>t.toUpperCase())}function wce(t,e,r){return new t({type:"array",element:e,...fe(r)})}function Sce(t,e,r){let n=fe(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function Ece(t,e,r){return new t({type:"custom",check:"custom",fn:e,...fe(r)})}var kce=L("ZodMiniType",(t,e)=>{if(!t._zod)throw Error("Uninitialized schema in ZodMiniType.");dt.init(t,e),t.def=e,t.parse=(r,n)=>Kie(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>zz(t,r,n),t.parseAsync=async(r,n)=>Jie(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>qz(t,r,n),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)=>ws(t,r,n),t.brand=()=>t,t.register=(r,n)=>(r.add(t,n),t)}),dEe=L("ZodMiniObject",(t,e)=>{Yz.init(t,e),kce.init(t,e),ut.defineLazy(t,"shape",()=>e.shape)});var Xz={};BM(Xz,{time:()=>i2,duration:()=>o2,datetime:()=>t2,date:()=>n2,ZodISOTime:()=>s2,ZodISODuration:()=>a2,ZodISODateTime:()=>e2,ZodISODate:()=>r2});var e2=L("ZodISODateTime",(t,e)=>{Yae.init(t,e),Rt.init(t,e)});function t2(t){return rce(e2,t)}var r2=L("ZodISODate",(t,e)=>{Kae.init(t,e),Rt.init(t,e)});function n2(t){return nce(r2,t)}var s2=L("ZodISOTime",(t,e)=>{Jae.init(t,e),Rt.init(t,e)});function i2(t){return sce(s2,t)}var a2=L("ZodISODuration",(t,e)=>{Qae.init(t,e),Rt.init(t,e)});function o2(t){return ice(a2,t)}var c2=(t,e)=>{Nz.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Yie(t,r)},flatten:{value:r=>Gie(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},mEe=L("ZodError",c2),yf=L("ZodError",c2,{Parent:Error}),Tce=jz(yf),Rce=Dz(yf),$ce=Mz(yf),Oce=Lz(yf),Tt=L("ZodType",(t,e)=>(dt.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)=>ws(t,r,n),t.brand=()=>t,t.register=(r,n)=>(r.add(t,n),t),t.parse=(r,n)=>Tce(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>$ce(t,r,n),t.parseAsync=async(r,n)=>Rce(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Oce(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(ble(r,n)),t.superRefine=r=>t.check(xle(r)),t.overwrite=r=>t.check(_u(r)),t.optional=()=>ue(t),t.nullable=()=>qM(t),t.nullish=()=>ue(qM(t)),t.nonoptional=r=>ple(t,r),t.array=()=>ze(t),t.or=r=>wt([t,r]),t.and=r=>f0(t,r),t.transform=r=>s0(t,h2(r)),t.default=r=>cle(t,r),t.prefault=r=>ule(t,r),t.catch=r=>mle(t,r),t.pipe=r=>s0(t,r),t.readonly=()=>gle(t),t.describe=r=>{let n=t.clone();return Gm.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return Gm.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return Gm.get(t);let n=t.clone();return Gm.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),l2=L("_ZodString",(t,e)=>{m0.init(t,e),Tt.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(dce(...n)),t.includes=(...n)=>t.check(hce(...n)),t.startsWith=(...n)=>t.check(gce(...n)),t.endsWith=(...n)=>t.check(vce(...n)),t.min=(...n)=>t.check(nf(...n)),t.max=(...n)=>t.check(Jz(...n)),t.length=(...n)=>t.check(Qz(...n)),t.nonempty=(...n)=>t.check(nf(1,...n)),t.lowercase=n=>t.check(mce(n)),t.uppercase=n=>t.check(fce(n)),t.trim=()=>t.check(bce()),t.normalize=(...n)=>t.check(yce(...n)),t.toLowerCase=()=>t.check(xce()),t.toUpperCase=()=>t.check(_ce())}),Pce=L("ZodString",(t,e)=>{m0.init(t,e),l2.init(t,e),t.email=r=>t.check(joe(Cce,r)),t.url=r=>t.check(qoe(Ice,r)),t.jwt=r=>t.check(tce(Vce,r)),t.emoji=r=>t.check(Foe(Ace,r)),t.guid=r=>t.check(NM(zM,r)),t.uuid=r=>t.check(Doe(Ym,r)),t.uuidv4=r=>t.check(Moe(Ym,r)),t.uuidv6=r=>t.check(zoe(Ym,r)),t.uuidv7=r=>t.check(Loe(Ym,r)),t.nanoid=r=>t.check(Uoe(Nce,r)),t.guid=r=>t.check(NM(zM,r)),t.cuid=r=>t.check(Hoe(jce,r)),t.cuid2=r=>t.check(Boe(Dce,r)),t.ulid=r=>t.check(Woe(Mce,r)),t.base64=r=>t.check(Qoe(Bce,r)),t.base64url=r=>t.check(Xoe(Wce,r)),t.xid=r=>t.check(Zoe(zce,r)),t.ksuid=r=>t.check(Voe(Lce,r)),t.ipv4=r=>t.check(Goe(qce,r)),t.ipv6=r=>t.check(Yoe(Fce,r)),t.cidrv4=r=>t.check(Koe(Uce,r)),t.cidrv6=r=>t.check(Joe(Hce,r)),t.e164=r=>t.check(ece(Zce,r)),t.datetime=r=>t.check(t2(r)),t.date=r=>t.check(n2(r)),t.time=r=>t.check(i2(r)),t.duration=r=>t.check(o2(r))});function M(t){return Noe(Pce,t)}var Rt=L("ZodStringFormat",(t,e)=>{_t.init(t,e),l2.init(t,e)}),Cce=L("ZodEmail",(t,e)=>{qae.init(t,e),Rt.init(t,e)}),zM=L("ZodGUID",(t,e)=>{zae.init(t,e),Rt.init(t,e)}),Ym=L("ZodUUID",(t,e)=>{Lae.init(t,e),Rt.init(t,e)}),Ice=L("ZodURL",(t,e)=>{Fae.init(t,e),Rt.init(t,e)}),Ace=L("ZodEmoji",(t,e)=>{Uae.init(t,e),Rt.init(t,e)}),Nce=L("ZodNanoID",(t,e)=>{Hae.init(t,e),Rt.init(t,e)}),jce=L("ZodCUID",(t,e)=>{Bae.init(t,e),Rt.init(t,e)}),Dce=L("ZodCUID2",(t,e)=>{Wae.init(t,e),Rt.init(t,e)}),Mce=L("ZodULID",(t,e)=>{Zae.init(t,e),Rt.init(t,e)}),zce=L("ZodXID",(t,e)=>{Vae.init(t,e),Rt.init(t,e)}),Lce=L("ZodKSUID",(t,e)=>{Gae.init(t,e),Rt.init(t,e)}),qce=L("ZodIPv4",(t,e)=>{Xae.init(t,e),Rt.init(t,e)}),Fce=L("ZodIPv6",(t,e)=>{eoe.init(t,e),Rt.init(t,e)}),Uce=L("ZodCIDRv4",(t,e)=>{toe.init(t,e),Rt.init(t,e)}),Hce=L("ZodCIDRv6",(t,e)=>{roe.init(t,e),Rt.init(t,e)}),Bce=L("ZodBase64",(t,e)=>{noe.init(t,e),Rt.init(t,e)}),Wce=L("ZodBase64URL",(t,e)=>{ioe.init(t,e),Rt.init(t,e)}),Zce=L("ZodE164",(t,e)=>{aoe.init(t,e),Rt.init(t,e)}),Vce=L("ZodJWT",(t,e)=>{coe.init(t,e),Rt.init(t,e)}),u2=L("ZodNumber",(t,e)=>{Gz.init(t,e),Tt.init(t,e),t.gt=(n,s)=>t.check(DM(n,s)),t.gte=(n,s)=>t.check(D_(n,s)),t.min=(n,s)=>t.check(D_(n,s)),t.lt=(n,s)=>t.check(jM(n,s)),t.lte=(n,s)=>t.check(j_(n,s)),t.max=(n,s)=>t.check(j_(n,s)),t.int=n=>t.check(LM(n)),t.safe=n=>t.check(LM(n)),t.positive=n=>t.check(DM(0,n)),t.nonnegative=n=>t.check(D_(0,n)),t.negative=n=>t.check(jM(0,n)),t.nonpositive=n=>t.check(j_(0,n)),t.multipleOf=(n,s)=>t.check(MM(n,s)),t.step=(n,s)=>t.check(MM(n,s)),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 ace(u2,t)}var Gce=L("ZodNumberFormat",(t,e)=>{loe.init(t,e),u2.init(t,e)});function LM(t){return oce(Gce,t)}var Yce=L("ZodBoolean",(t,e)=>{uoe.init(t,e),Tt.init(t,e)});function or(t){return cce(Yce,t)}var Kce=L("ZodNull",(t,e)=>{poe.init(t,e),Tt.init(t,e)});function p2(t){return lce(Kce,t)}var Jce=L("ZodUnknown",(t,e)=>{doe.init(t,e),Tt.init(t,e)});function Dt(){return uce(Jce)}var Qce=L("ZodNever",(t,e)=>{moe.init(t,e),Tt.init(t,e)});function Xce(t){return pce(Qce,t)}var ele=L("ZodArray",(t,e)=>{foe.init(t,e),Tt.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(nf(r,n)),t.nonempty=r=>t.check(nf(1,r)),t.max=(r,n)=>t.check(Jz(r,n)),t.length=(r,n)=>t.check(Qz(r,n)),t.unwrap=()=>t.element});function ze(t,e){return wce(ele,t,e)}var d2=L("ZodObject",(t,e)=>{Yz.init(t,e),Tt.init(t,e),ut.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:Dt()}),t.loose=()=>t.clone({...t._zod.def,catchall:Dt()}),t.strict=()=>t.clone({...t._zod.def,catchall:Xce()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>ut.extend(t,r),t.merge=r=>ut.merge(t,r),t.pick=r=>ut.pick(t,r),t.omit=r=>ut.omit(t,r),t.partial=(...r)=>ut.partial(g2,t,r[0]),t.required=(...r)=>ut.required(v2,t,r[0])});function Y(t,e){let r={type:"object",get shape(){return ut.assignProp(this,"shape",{...t}),this.shape},...ut.normalizeParams(e)};return new d2(r)}function Cn(t,e){return new d2({type:"object",get shape(){return ut.assignProp(this,"shape",{...t}),this.shape},catchall:Dt(),...ut.normalizeParams(e)})}var m2=L("ZodUnion",(t,e)=>{Kz.init(t,e),Tt.init(t,e),t.options=e.options});function wt(t,e){return new m2({type:"union",options:t,...ut.normalizeParams(e)})}var tle=L("ZodDiscriminatedUnion",(t,e)=>{m2.init(t,e),hoe.init(t,e)});function f2(t,e,r){return new tle({type:"union",options:e,discriminator:t,...ut.normalizeParams(r)})}var rle=L("ZodIntersection",(t,e)=>{goe.init(t,e),Tt.init(t,e)});function f0(t,e){return new rle({type:"intersection",left:t,right:e})}var nle=L("ZodRecord",(t,e)=>{voe.init(t,e),Tt.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function Mt(t,e,r){return new nle({type:"record",keyType:t,valueType:e,...ut.normalizeParams(r)})}var n0=L("ZodEnum",(t,e)=>{yoe.init(t,e),Tt.init(t,e),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(n,s)=>{let i={};for(let a of n)if(r.has(a))i[a]=e.entries[a];else throw Error(`Key ${a} not found in enum`);return new n0({...e,checks:[],...ut.normalizeParams(s),entries:i})},t.exclude=(n,s)=>{let i={...e.entries};for(let a of n)if(r.has(a))delete i[a];else throw Error(`Key ${a} not found in enum`);return new n0({...e,checks:[],...ut.normalizeParams(s),entries:i})}});function cr(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new n0({type:"enum",entries:r,...ut.normalizeParams(e)})}var sle=L("ZodLiteral",(t,e)=>{boe.init(t,e),Tt.init(t,e),t.values=new Set(e.values),Object.defineProperty(t,"value",{get(){if(e.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return e.values[0]}})});function pe(t,e){return new sle({type:"literal",values:Array.isArray(t)?t:[t],...ut.normalizeParams(e)})}var ile=L("ZodTransform",(t,e)=>{xoe.init(t,e),Tt.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=i=>{if(typeof i=="string")r.issues.push(ut.issue(i,r.value,e));else{let a=i;a.fatal&&(a.continue=!1),a.code??(a.code="custom"),a.input??(a.input=r.value),a.inst??(a.inst=t),a.continue??(a.continue=!0),r.issues.push(ut.issue(a))}};let s=e.transform(r.value,r);return s instanceof Promise?s.then(i=>(r.value=i,r)):(r.value=s,r)}});function h2(t){return new ile({type:"transform",transform:t})}var g2=L("ZodOptional",(t,e)=>{_oe.init(t,e),Tt.init(t,e),t.unwrap=()=>t._zod.def.innerType});function ue(t){return new g2({type:"optional",innerType:t})}var ale=L("ZodNullable",(t,e)=>{woe.init(t,e),Tt.init(t,e),t.unwrap=()=>t._zod.def.innerType});function qM(t){return new ale({type:"nullable",innerType:t})}var ole=L("ZodDefault",(t,e)=>{Soe.init(t,e),Tt.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function cle(t,e){return new ole({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var lle=L("ZodPrefault",(t,e)=>{Eoe.init(t,e),Tt.init(t,e),t.unwrap=()=>t._zod.def.innerType});function ule(t,e){return new lle({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var v2=L("ZodNonOptional",(t,e)=>{koe.init(t,e),Tt.init(t,e),t.unwrap=()=>t._zod.def.innerType});function ple(t,e){return new v2({type:"nonoptional",innerType:t,...ut.normalizeParams(e)})}var dle=L("ZodCatch",(t,e)=>{Toe.init(t,e),Tt.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function mle(t,e){return new dle({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var fle=L("ZodPipe",(t,e)=>{Roe.init(t,e),Tt.init(t,e),t.in=e.in,t.out=e.out});function s0(t,e){return new fle({type:"pipe",in:t,out:e})}var hle=L("ZodReadonly",(t,e)=>{$oe.init(t,e),Tt.init(t,e)});function gle(t){return new hle({type:"readonly",innerType:t})}var y2=L("ZodCustom",(t,e)=>{Ooe.init(t,e),Tt.init(t,e)});function vle(t,e){let r=new qr({check:"custom",...ut.normalizeParams(e)});return r._zod.check=t,r}function yle(t,e){return Sce(y2,t??(()=>!0),e)}function ble(t,e={}){return Ece(y2,t,e)}function xle(t,e){let r=vle(n=>(n.addIssue=s=>{if(typeof s=="string")n.issues.push(ut.issue(s,n.value,r._zod.def));else{let i=s;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=n.value),i.inst??(i.inst=r),i.continue??(i.continue=!r._zod.def.abort),n.issues.push(ut.issue(i))}},t(n.value,n)),e);return r}function b2(t,e){return s0(h2(t),e)}xs(Ioe());var h0="io.modelcontextprotocol/related-task",bf="2.0",Jn=yle(t=>t!==null&&(typeof t=="object"||typeof t=="function")),x2=wt([M(),pt().int()]),_2=M(),_le=Cn({ttl:wt([pt(),p2()]).optional(),pollInterval:pt().optional()}),g0=Cn({taskId:M()}),wle=Cn({progressToken:x2.optional(),[h0]:g0.optional()}),Fr=Cn({task:_le.optional(),_meta:wle.optional()}),tr=Y({method:M(),params:Fr.optional()}),Bi=Cn({_meta:Y({[h0]:ue(g0)}).passthrough().optional()}),un=Y({method:M(),params:Bi.optional()}),lr=Cn({_meta:Cn({[h0]:g0.optional()}).optional()}),xf=wt([M(),pt().int()]),Sle=Y({jsonrpc:pe(bf),id:xf,...tr.shape}).strict();var Ele=Y({jsonrpc:pe(bf),...un.shape}).strict();var kle=Y({jsonrpc:pe(bf),id:xf,result:lr}).strict();var FM;(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"})(FM||(FM={}));var Tle=Y({jsonrpc:pe(bf),id:xf,error:Y({code:pt().int(),message:M(),data:ue(Dt())})}).strict();var fEe=wt([Sle,Ele,kle,Tle]),w2=lr.strict(),Rle=Bi.extend({requestId:xf,reason:M().optional()}),S2=un.extend({method:pe("notifications/cancelled"),params:Rle}),$le=Y({src:M(),mimeType:M().optional(),sizes:ze(M()).optional()}),wu=Y({icons:ze($le).optional()}),ko=Y({name:M(),title:M().optional()}),E2=ko.extend({...ko.shape,...wu.shape,version:M(),websiteUrl:M().optional()}),Ole=f0(Y({applyDefaults:or().optional()}),Mt(M(),Dt())),Ple=b2(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,f0(Y({form:Ole.optional(),url:Jn.optional()}),Mt(M(),Dt()).optional())),Cle=Y({list:ue(Y({}).passthrough()),cancel:ue(Y({}).passthrough()),requests:ue(Y({sampling:ue(Y({createMessage:ue(Y({}).passthrough())}).passthrough()),elicitation:ue(Y({create:ue(Y({}).passthrough())}).passthrough())}).passthrough())}).passthrough(),Ile=Y({list:ue(Y({}).passthrough()),cancel:ue(Y({}).passthrough()),requests:ue(Y({tools:ue(Y({call:ue(Y({}).passthrough())}).passthrough())}).passthrough())}).passthrough(),Ale=Y({experimental:Mt(M(),Jn).optional(),sampling:Y({context:Jn.optional(),tools:Jn.optional()}).optional(),elicitation:Ple.optional(),roots:Y({listChanged:or().optional()}).optional(),tasks:ue(Cle)}),Nle=Fr.extend({protocolVersion:M(),capabilities:Ale,clientInfo:E2}),jle=tr.extend({method:pe("initialize"),params:Nle}),Dle=Y({experimental:Mt(M(),Jn).optional(),logging:Jn.optional(),completions:Jn.optional(),prompts:ue(Y({listChanged:ue(or())})),resources:Y({subscribe:or().optional(),listChanged:or().optional()}).optional(),tools:Y({listChanged:or().optional()}).optional(),tasks:ue(Ile)}).passthrough(),Mle=lr.extend({protocolVersion:M(),capabilities:Dle,serverInfo:E2,instructions:M().optional()}),zle=un.extend({method:pe("notifications/initialized")}),k2=tr.extend({method:pe("ping")}),Lle=Y({progress:pt(),total:ue(pt()),message:ue(M())}),qle=Y({...Bi.shape,...Lle.shape,progressToken:x2}),T2=un.extend({method:pe("notifications/progress"),params:qle}),Fle=Fr.extend({cursor:_2.optional()}),Su=tr.extend({params:Fle.optional()}),Eu=lr.extend({nextCursor:ue(_2)}),ku=Y({taskId:M(),status:cr(["working","input_required","completed","failed","cancelled"]),ttl:wt([pt(),p2()]),createdAt:M(),lastUpdatedAt:M(),pollInterval:ue(pt()),statusMessage:ue(M())}),R2=lr.extend({task:ku}),Ule=Bi.merge(ku),$2=un.extend({method:pe("notifications/tasks/status"),params:Ule}),O2=tr.extend({method:pe("tasks/get"),params:Fr.extend({taskId:M()})}),P2=lr.merge(ku),C2=tr.extend({method:pe("tasks/result"),params:Fr.extend({taskId:M()})}),I2=Su.extend({method:pe("tasks/list")}),A2=Eu.extend({tasks:ze(ku)}),hEe=tr.extend({method:pe("tasks/cancel"),params:Fr.extend({taskId:M()})}),gEe=lr.merge(ku),N2=Y({uri:M(),mimeType:ue(M()),_meta:Mt(M(),Dt()).optional()}),j2=N2.extend({text:M()}),v0=M().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),D2=N2.extend({blob:v0}),Io=Y({audience:ze(cr(["user","assistant"])).optional(),priority:pt().min(0).max(1).optional(),lastModified:Xz.datetime({offset:!0}).optional()}),M2=Y({...ko.shape,...wu.shape,uri:M(),description:ue(M()),mimeType:ue(M()),annotations:Io.optional(),_meta:ue(Cn({}))}),Hle=Y({...ko.shape,...wu.shape,uriTemplate:M(),description:ue(M()),mimeType:ue(M()),annotations:Io.optional(),_meta:ue(Cn({}))}),Ble=Su.extend({method:pe("resources/list")}),Wle=Eu.extend({resources:ze(M2)}),Zle=Su.extend({method:pe("resources/templates/list")}),Vle=Eu.extend({resourceTemplates:ze(Hle)}),y0=Fr.extend({uri:M()}),Gle=y0,Yle=tr.extend({method:pe("resources/read"),params:Gle}),Kle=lr.extend({contents:ze(wt([j2,D2]))}),Jle=un.extend({method:pe("notifications/resources/list_changed")}),Qle=y0,Xle=tr.extend({method:pe("resources/subscribe"),params:Qle}),eue=y0,tue=tr.extend({method:pe("resources/unsubscribe"),params:eue}),rue=Bi.extend({uri:M()}),nue=un.extend({method:pe("notifications/resources/updated"),params:rue}),sue=Y({name:M(),description:ue(M()),required:ue(or())}),iue=Y({...ko.shape,...wu.shape,description:ue(M()),arguments:ue(ze(sue)),_meta:ue(Cn({}))}),aue=Su.extend({method:pe("prompts/list")}),oue=Eu.extend({prompts:ze(iue)}),cue=Fr.extend({name:M(),arguments:Mt(M(),M()).optional()}),lue=tr.extend({method:pe("prompts/get"),params:cue}),b0=Y({type:pe("text"),text:M(),annotations:Io.optional(),_meta:Mt(M(),Dt()).optional()}),x0=Y({type:pe("image"),data:v0,mimeType:M(),annotations:Io.optional(),_meta:Mt(M(),Dt()).optional()}),_0=Y({type:pe("audio"),data:v0,mimeType:M(),annotations:Io.optional(),_meta:Mt(M(),Dt()).optional()}),uue=Y({type:pe("tool_use"),name:M(),id:M(),input:Y({}).passthrough(),_meta:ue(Y({}).passthrough())}).passthrough(),pue=Y({type:pe("resource"),resource:wt([j2,D2]),annotations:Io.optional(),_meta:Mt(M(),Dt()).optional()}),due=M2.extend({type:pe("resource_link")}),w0=wt([b0,x0,_0,due,pue]),mue=Y({role:cr(["user","assistant"]),content:w0}),fue=lr.extend({description:ue(M()),messages:ze(mue)}),hue=un.extend({method:pe("notifications/prompts/list_changed")}),gue=Y({title:M().optional(),readOnlyHint:or().optional(),destructiveHint:or().optional(),idempotentHint:or().optional(),openWorldHint:or().optional()}),vue=Y({taskSupport:cr(["required","optional","forbidden"]).optional()}),z2=Y({...ko.shape,...wu.shape,description:M().optional(),inputSchema:Y({type:pe("object"),properties:Mt(M(),Jn).optional(),required:ze(M()).optional()}).catchall(Dt()),outputSchema:Y({type:pe("object"),properties:Mt(M(),Jn).optional(),required:ze(M()).optional()}).catchall(Dt()).optional(),annotations:ue(gue),execution:ue(vue),_meta:Mt(M(),Dt()).optional()}),yue=Su.extend({method:pe("tools/list")}),bue=Eu.extend({tools:ze(z2)}),L2=lr.extend({content:ze(w0).default([]),structuredContent:Mt(M(),Dt()).optional(),isError:ue(or())}),vEe=L2.or(lr.extend({toolResult:Dt()})),xue=Fr.extend({name:M(),arguments:ue(Mt(M(),Dt()))}),_ue=tr.extend({method:pe("tools/call"),params:xue}),wue=un.extend({method:pe("notifications/tools/list_changed")}),q2=cr(["debug","info","notice","warning","error","critical","alert","emergency"]),Sue=Fr.extend({level:q2}),Eue=tr.extend({method:pe("logging/setLevel"),params:Sue}),kue=Bi.extend({level:q2,logger:M().optional(),data:Dt()}),Tue=un.extend({method:pe("notifications/message"),params:kue}),Rue=Y({name:M().optional()}),$ue=Y({hints:ue(ze(Rue)),costPriority:ue(pt().min(0).max(1)),speedPriority:ue(pt().min(0).max(1)),intelligencePriority:ue(pt().min(0).max(1))}),Oue=Y({mode:ue(cr(["auto","required","none"]))}),Pue=Y({type:pe("tool_result"),toolUseId:M().describe("The unique identifier for the corresponding tool call."),content:ze(w0).default([]),structuredContent:Y({}).passthrough().optional(),isError:ue(or()),_meta:ue(Y({}).passthrough())}).passthrough(),Cue=f2("type",[b0,x0,_0]),sf=f2("type",[b0,x0,_0,uue,Pue]),Iue=Y({role:cr(["user","assistant"]),content:wt([sf,ze(sf)]),_meta:ue(Y({}).passthrough())}).passthrough(),Aue=Fr.extend({messages:ze(Iue),modelPreferences:$ue.optional(),systemPrompt:M().optional(),includeContext:cr(["none","thisServer","allServers"]).optional(),temperature:pt().optional(),maxTokens:pt().int(),stopSequences:ze(M()).optional(),metadata:Jn.optional(),tools:ue(ze(z2)),toolChoice:ue(Oue)}),Nue=tr.extend({method:pe("sampling/createMessage"),params:Aue}),jue=lr.extend({model:M(),stopReason:ue(cr(["endTurn","stopSequence","maxTokens"]).or(M())),role:cr(["user","assistant"]),content:Cue}),Due=lr.extend({model:M(),stopReason:ue(cr(["endTurn","stopSequence","maxTokens","toolUse"]).or(M())),role:cr(["user","assistant"]),content:wt([sf,ze(sf)])}),Mue=Y({type:pe("boolean"),title:M().optional(),description:M().optional(),default:or().optional()}),zue=Y({type:pe("string"),title:M().optional(),description:M().optional(),minLength:pt().optional(),maxLength:pt().optional(),format:cr(["email","uri","date","date-time"]).optional(),default:M().optional()}),Lue=Y({type:cr(["number","integer"]),title:M().optional(),description:M().optional(),minimum:pt().optional(),maximum:pt().optional(),default:pt().optional()}),que=Y({type:pe("string"),title:M().optional(),description:M().optional(),enum:ze(M()),default:M().optional()}),Fue=Y({type:pe("string"),title:M().optional(),description:M().optional(),oneOf:ze(Y({const:M(),title:M()})),default:M().optional()}),Uue=Y({type:pe("string"),title:M().optional(),description:M().optional(),enum:ze(M()),enumNames:ze(M()).optional(),default:M().optional()}),Hue=wt([que,Fue]),Bue=Y({type:pe("array"),title:M().optional(),description:M().optional(),minItems:pt().optional(),maxItems:pt().optional(),items:Y({type:pe("string"),enum:ze(M())}),default:ze(M()).optional()}),Wue=Y({type:pe("array"),title:M().optional(),description:M().optional(),minItems:pt().optional(),maxItems:pt().optional(),items:Y({anyOf:ze(Y({const:M(),title:M()}))}),default:ze(M()).optional()}),Zue=wt([Bue,Wue]),Vue=wt([Uue,Hue,Zue]),Gue=wt([Vue,Mue,zue,Lue]),Yue=Fr.extend({mode:pe("form").optional(),message:M(),requestedSchema:Y({type:pe("object"),properties:Mt(M(),Gue),required:ze(M()).optional()})}),Kue=Fr.extend({mode:pe("url"),message:M(),elicitationId:M(),url:M().url()}),Jue=wt([Yue,Kue]),Que=tr.extend({method:pe("elicitation/create"),params:Jue}),Xue=Bi.extend({elicitationId:M()}),epe=un.extend({method:pe("notifications/elicitation/complete"),params:Xue}),tpe=lr.extend({action:cr(["accept","decline","cancel"]),content:b2(t=>t===null?void 0:t,Mt(M(),wt([M(),pt(),or(),ze(M())])).optional())}),rpe=Y({type:pe("ref/resource"),uri:M()}),npe=Y({type:pe("ref/prompt"),name:M()}),spe=Fr.extend({ref:wt([npe,rpe]),argument:Y({name:M(),value:M()}),context:Y({arguments:Mt(M(),M()).optional()}).optional()}),ipe=tr.extend({method:pe("completion/complete"),params:spe});var ape=lr.extend({completion:Cn({values:ze(M()).max(100),total:ue(pt().int()),hasMore:ue(or())})}),ope=Y({uri:M().startsWith("file://"),name:M().optional(),_meta:Mt(M(),Dt()).optional()}),cpe=tr.extend({method:pe("roots/list")}),lpe=lr.extend({roots:ze(ope)}),upe=un.extend({method:pe("notifications/roots/list_changed")}),yEe=wt([k2,jle,ipe,Eue,lue,aue,Ble,Zle,Yle,Xle,tue,_ue,yue,O2,C2,I2]),bEe=wt([S2,T2,zle,upe,$2]),xEe=wt([w2,jue,Due,tpe,lpe,P2,A2,R2]),_Ee=wt([k2,Nue,Que,cpe,O2,C2,I2]),wEe=wt([S2,T2,Tue,nue,Jle,wue,hue,$2,epe]),SEe=wt([w2,Mle,ape,fue,oue,Wle,Vle,Kle,L2,bue,P2,A2,R2]);var EEe=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");var kEe=HM(JM(),1),TEe=HM(Wre(),1);var UM;(function(t){t.Completable="McpCompletable"})(UM||(UM={}));function F2(t){return rie(t)}var U2=1e5,_f=class{dbManager;sessionManager;constructor(e,r){this.dbManager=e,this.sessionManager=r}async startSession(e,r){let n,s=this.findClaudeExecutable(),i=this.getModelId(),a=["Bash","Read","Write","Edit","Grep","Glob","WebFetch","WebSearch","Task","NotebookEdit","AskUserQuestion","TodoWrite"];if(!e.memorySessionId)throw new Error(`Session ${e.sessionDbId} has no memory_session_id - this should not happen`);_.info("SDK","Starting SDK V2 session",{sessionDbId:e.sessionDbId,contentSessionId:e.contentSessionId,memorySessionId:e.memorySessionId,lastPromptNumber:e.lastPromptNumber});let o=dM(),c=this.createSDKSession(i,s,a);try{let l=Ue.getInstance().getActiveMode(),p=e.lastPromptNumber===1?GD(e.project,e.contentSessionId,e.userPrompt,l):k_(e.userPrompt,e.lastPromptNumber,e.contentSessionId,l);e.conversationHistory.push({role:"user",content:p}),await c.send(p),await this.processStreamResponse(c,e,r,n);for await(let m of this.sessionManager.getMessageBatchIterator(e.sessionDbId)){if(e.abortController.signal.aborted){_.warn("SDK","Session aborted",{sessionId:e.sessionDbId});break}let f=m.filter(g=>g.type==="observation"),v=m.filter(g=>g.type==="summarize");if(m.length>1&&_.info("SDK","Processing batch",{sessionId:e.sessionDbId,total:m.length,observations:f.length,summarizes:v.length}),f.length>0){for(let y of f)y.cwd&&(n=y.cwd),y.prompt_number!==void 0&&(e.lastPromptNumber=y.prompt_number);let g=f.map(y=>({id:0,tool_name:y.tool_name,tool_input:JSON.stringify(y.tool_input),tool_output:JSON.stringify(y.tool_response),created_at_epoch:y._originalTimestamp??Date.now(),cwd:y.cwd})),h=f.length===1?E_(g[0]):YD(g);if(e.conversationHistory.push({role:"user",content:h}),e.conversationHistory.length>12){let y=e.conversationHistory.slice(0,2),b=e.conversationHistory.slice(-10);e.conversationHistory.length=0,e.conversationHistory.push(...y,...b)}await c.send(h),await this.processStreamResponse(c,e,r,n),c=await this.maybeRotateSession(c,e,i,s,a,l,r,n)}for(let g of v){if(e.abortController.signal.aborted)break;let h=KD({id:e.sessionDbId,memory_session_id:e.memorySessionId,project:e.project,user_prompt:e.userPrompt,last_assistant_message:g.last_assistant_message||""},l);e.conversationHistory.push({role:"user",content:h}),await c.send(h),await this.processStreamResponse(c,e,r,n),c=await this.maybeRotateSession(c,e,i,s,a,l,r,n)}}let d=Date.now()-e.startTime;_.success("SDK","V2 Agent completed",{sessionId:e.sessionDbId,duration:`${(d/1e3).toFixed(1)}s`})}finally{c.close(),o&&o()}}async processStreamResponse(e,r,n,s){let i=r.earliestPendingTimestamp;for await(let a of e.stream())if(a.type==="assistant"){let o=a.message.content,c=Array.isArray(o)?o.filter(m=>m.type==="text").map(m=>m.text).join(` +`):typeof o=="string"?o:"",l=c.length,u=r.cumulativeInputTokens+r.cumulativeOutputTokens,p=a.message.usage;p&&(r.cumulativeInputTokens+=p.input_tokens||0,r.cumulativeOutputTokens+=p.output_tokens||0,p.cache_creation_input_tokens&&(r.cumulativeInputTokens+=p.cache_creation_input_tokens),_.debug("SDK","Token usage captured",{sessionId:r.sessionDbId,inputTokens:p.input_tokens,outputTokens:p.output_tokens,cumulativeInput:r.cumulativeInputTokens,cumulativeOutput:r.cumulativeOutputTokens}));let d=r.cumulativeInputTokens+r.cumulativeOutputTokens-u;if(l>0){let m=l>100?c.substring(0,100)+"...":c;_.dataOut("SDK",`V2 Response received (${l} chars)`,{sessionId:r.sessionDbId,promptNumber:r.lastPromptNumber},m)}await I_(c,r,this.dbManager,this.sessionManager,n,d,i,"SDK",s)}}createSDKSession(e,r,n){return F2({model:e,disallowedTools:n,pathToClaudeCodeExecutable:r})}async maybeRotateSession(e,r,n,s,i,a,o,c){let l=r.cumulativeInputTokens+r.cumulativeOutputTokens;if(l<=U2)return e;_.info("SDK","Rotating SDK session due to token limit",{totalTokens:l,threshold:U2});try{e.close()}catch(d){_.warn("SDK","Error closing session during rotation",{},d)}let u=this.createSDKSession(n,s,i),p=k_(r.userPrompt,r.lastPromptNumber,r.contentSessionId,a);return await u.send(p),await this.processStreamResponse(u,r,o,c),r.cumulativeInputTokens=0,r.cumulativeOutputTokens=0,u}findClaudeExecutable(){let e=Me.loadFromFile(ar);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}try{let r=(0,H2.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 ~/.pilot/memory/settings.json`)}getModelId(){let e=L2.default.join((0,z2.homedir)(),".pilot/memory","settings.json");return De.loadFromFile(e).CLAUDE_PILOT_MODEL}};se();var xf=class{dbManager;constructor(e){this.dbManager=e}stripProjectPath(e,r){let n=`/${r}/`,s=e.indexOf(n);return s!==-1?e.substring(s+n.length):e}stripProjectPaths(e,r){if(!e)return e;try{let s=JSON.parse(e).map(i=>this.stripProjectPath(i,r));return JSON.stringify(s)}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 s=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{...s,items:s.items.map(i=>this.sanitizeObservation(i))}}getSummaries(e,r,n){let s=this.dbManager.getSessionStore().db,i=` +2. Set CLAUDE_CODE_PATH in ~/.pilot/memory/settings.json`)}getModelId(){let e=W2.default.join((0,B2.homedir)(),".pilot/memory","settings.json");return Me.loadFromFile(e).CLAUDE_PILOT_MODEL}};re();var wf=class{dbManager;constructor(e){this.dbManager=e}stripProjectPath(e,r){let n=`/${r}/`,s=e.indexOf(n);return s!==-1?e.substring(s+n.length):e}stripProjectPaths(e,r){if(!e)return e;try{let s=JSON.parse(e).map(i=>this.stripProjectPath(i,r));return JSON.stringify(s)}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 s=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{...s,items:s.items.map(i=>this.sanitizeObservation(i))}}getSummaries(e,r,n){let s=this.dbManager.getSessionStore().db,i=` SELECT ss.id, s.content_session_id as session_id, @@ -1317,10 +1317,10 @@ ${n}`}function wte(t,e){if(!(0,on.existsSync)(t)){_.debug("FOLDER_INDEX","Skippi SELECT up.id, up.content_session_id, s.project, 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=[];n&&(i+=" WHERE s.project = ?",a.push(n)),i+=" ORDER BY up.created_at_epoch DESC LIMIT ? OFFSET ?",a.push(r+1,e);let c=s.prepare(i).all(...a);return{items:c.slice(0,r),hasMore:c.length>r,offset:e,limit:r}}paginate(e,r,n,s,i){let a=this.dbManager.getSessionStore().db,o=`SELECT ${r} FROM ${e}`,c=[];i&&(o+=" WHERE project = ?",c.push(i)),o+=" ORDER BY created_at_epoch DESC LIMIT ? OFFSET ?",c.push(s+1,n);let u=a.prepare(o).all(...c);return{items:u.slice(0,s),hasMore:u.length>s,offset:n,limit:s}}};var q2=require("path");se();ao();sn();var Ss=class{emptyResult(e){return{results:{observations:[],sessions:[],prompts:[]},usedChroma:e==="chroma"||e==="hybrid"||e==="vector",fellBack:!1,strategy:e}}};var mt={RECENCY_WINDOW_DAYS:90,RECENCY_WINDOW_MS:7776e6,DEFAULT_LIMIT:20,CHROMA_BATCH_SIZE:100};se();var Io=class extends Ss{constructor(r,n){super();this.vectorSync=r;this.sessionStore=n}name="vector";canHandle(r){return!!r.query&&!!this.vectorSync}async search(r){let{query:n,searchType:s="all",obsType:i,concepts:a,files:o,limit:c=mt.DEFAULT_LIMIT,project:l,orderBy:u="date_desc"}=r;if(!n)return this.emptyResult("vector");let p=s==="all"||s==="observations",d=s==="all"||s==="sessions",m=s==="all"||s==="prompts",f=[],v=[],g=[];try{let h=this.buildWhereFilter(s);_.debug("SEARCH","VectorSearchStrategy: Querying vector DB",{query:n,searchType:s});let y=await this.vectorSync.query(n,mt.CHROMA_BATCH_SIZE,h);if(_.debug("SEARCH","VectorSearchStrategy: Vector DB returned matches",{matchCount:y.ids.length}),y.ids.length===0)return{results:{observations:[],sessions:[],prompts:[]},usedChroma:!0,fellBack:!1,strategy:"vector"};let b=this.filterByRecency(y);_.debug("SEARCH","VectorSearchStrategy: Filtered by recency",{count:b.length});let x=this.categorizeByDocType(b,{searchObservations:p,searchSessions:d,searchPrompts:m});if(x.obsIds.length>0){let w={type:i,concepts:a,files:o,orderBy:u,limit:c,project:l};f=this.sessionStore.getObservationsByIds(x.obsIds,w)}return x.sessionIds.length>0&&(v=this.sessionStore.getSessionSummariesByIds(x.sessionIds,{orderBy:u,limit:c,project:l})),x.promptIds.length>0&&(g=this.sessionStore.getUserPromptsByIds(x.promptIds,{orderBy:u,limit:c,project:l})),_.debug("SEARCH","VectorSearchStrategy: Hydrated results",{observations:f.length,sessions:v.length,prompts:g.length}),{results:{observations:f,sessions:v,prompts:g},usedChroma:!0,fellBack:!1,strategy:"vector"}}catch(h){return _.error("SEARCH","VectorSearchStrategy: Search failed",{},h),{results:{observations:[],sessions:[],prompts:[]},usedChroma:!1,fellBack:!1,strategy:"vector"}}}buildWhereFilter(r){switch(r){case"observations":return{doc_type:"observation"};case"sessions":return{doc_type:"session_summary"};case"prompts":return{doc_type:"user_prompt"};default:return}}filterByRecency(r){let n=Date.now()-mt.RECENCY_WINDOW_MS;return r.metadatas.map((s,i)=>({id:r.ids[i],meta:s})).filter(s=>s.meta&&s.meta.created_at_epoch>n)}categorizeByDocType(r,n){let s=[],i=[],a=[];for(let o of r){let c=o.meta?.doc_type;c==="observation"&&n.searchObservations?s.push(o.id):c==="session_summary"&&n.searchSessions?i.push(o.id):c==="user_prompt"&&n.searchPrompts&&a.push(o.id)}return{obsIds:s,sessionIds:i,promptIds:a}}};se();var Eu=class extends Ss{constructor(r){super();this.sessionSearch=r}name="sqlite";canHandle(r){return!r.query||r.strategyHint==="sqlite"}async search(r){let{searchType:n="all",obsType:s,concepts:i,files:a,limit:o=mt.DEFAULT_LIMIT,offset:c=0,project:l,dateRange:u,orderBy:p="date_desc"}=r,d=n==="all"||n==="observations",m=n==="all"||n==="sessions",f=n==="all"||n==="prompts",v=[],g=[],h=[],y={limit:o,offset:c,orderBy:p,project:l,dateRange:u};_.debug("SEARCH","SQLiteSearchStrategy: Filter-only query",{searchType:n,hasDateRange:!!u,hasProject:!!l});try{if(d){let b={...y,type:s,concepts:i,files:a};v=this.sessionSearch.searchObservations(void 0,b)}return m&&(g=this.sessionSearch.searchSessions(void 0,y)),f&&(h=this.sessionSearch.searchUserPrompts(void 0,y)),_.debug("SEARCH","SQLiteSearchStrategy: Results",{observations:v.length,sessions:g.length,prompts:h.length}),{results:{observations:v,sessions:g,prompts:h},usedChroma:!1,fellBack:!1,strategy:"sqlite"}}catch(b){return _.error("SEARCH","SQLiteSearchStrategy: Search failed",{},b),this.emptyResult("sqlite")}}findByConcept(r,n){let{limit:s=mt.DEFAULT_LIMIT,project:i,dateRange:a,orderBy:o="date_desc"}=n;return this.sessionSearch.findByConcept(r,{limit:s,project:i,dateRange:a,orderBy:o})}findByType(r,n){let{limit:s=mt.DEFAULT_LIMIT,project:i,dateRange:a,orderBy:o="date_desc"}=n;return this.sessionSearch.findByType(r,{limit:s,project:i,dateRange:a,orderBy:o})}findByFile(r,n){let{limit:s=mt.DEFAULT_LIMIT,project:i,dateRange:a,orderBy:o="date_desc"}=n;return this.sessionSearch.findByFile(r,{limit:s,project:i,dateRange:a,orderBy:o})}};se();var ku=class extends Ss{constructor(r,n,s){super();this.vectorSync=r;this.sessionStore=n;this.sessionSearch=s}name="hybrid";canHandle(r){return!!this.vectorSync&&(!!r.concepts||!!r.files||!!r.type&&!!r.query||r.strategyHint==="hybrid")}async search(r){let{query:n,limit:s=mt.DEFAULT_LIMIT,project:i}=r;return n?this.emptyResult("hybrid"):this.emptyResult("hybrid")}async findByConcept(r,n){let{limit:s=mt.DEFAULT_LIMIT,project:i,dateRange:a,orderBy:o}=n,c={limit:s,project:i,dateRange:a,orderBy:o};try{_.debug("SEARCH","HybridSearchStrategy: findByConcept",{concept:r});let l=this.sessionSearch.findByConcept(r,c);if(_.debug("SEARCH","HybridSearchStrategy: Found metadata matches",{count:l.length}),l.length===0)return this.emptyResult("hybrid");let u=l.map(m=>m.id),p=await this.vectorSync.query(r,Math.min(u.length,mt.CHROMA_BATCH_SIZE)),d=this.intersectWithRanking(u,p.ids);if(_.debug("SEARCH","HybridSearchStrategy: Ranked by semantic relevance",{count:d.length}),d.length>0){let m=this.sessionStore.getObservationsByIds(d,{limit:s});return m.sort((f,v)=>d.indexOf(f.id)-d.indexOf(v.id)),{results:{observations:m,sessions:[],prompts:[]},usedChroma:!0,fellBack:!1,strategy:"hybrid"}}return this.emptyResult("hybrid")}catch(l){return _.error("SEARCH","HybridSearchStrategy: findByConcept failed",{},l),{results:{observations:this.sessionSearch.findByConcept(r,c),sessions:[],prompts:[]},usedChroma:!1,fellBack:!0,strategy:"hybrid"}}}async findByType(r,n){let{limit:s=mt.DEFAULT_LIMIT,project:i,dateRange:a,orderBy:o}=n,c={limit:s,project:i,dateRange:a,orderBy:o},l=Array.isArray(r)?r.join(", "):r;try{_.debug("SEARCH","HybridSearchStrategy: findByType",{type:l});let u=this.sessionSearch.findByType(r,c);if(_.debug("SEARCH","HybridSearchStrategy: Found metadata matches",{count:u.length}),u.length===0)return this.emptyResult("hybrid");let p=u.map(f=>f.id),d=await this.vectorSync.query(l,Math.min(p.length,mt.CHROMA_BATCH_SIZE)),m=this.intersectWithRanking(p,d.ids);if(_.debug("SEARCH","HybridSearchStrategy: Ranked by semantic relevance",{count:m.length}),m.length>0){let f=this.sessionStore.getObservationsByIds(m,{limit:s});return f.sort((v,g)=>m.indexOf(v.id)-m.indexOf(g.id)),{results:{observations:f,sessions:[],prompts:[]},usedChroma:!0,fellBack:!1,strategy:"hybrid"}}return this.emptyResult("hybrid")}catch(u){return _.error("SEARCH","HybridSearchStrategy: findByType failed",{},u),{results:{observations:this.sessionSearch.findByType(r,c),sessions:[],prompts:[]},usedChroma:!1,fellBack:!0,strategy:"hybrid"}}}async findByFile(r,n){let{limit:s=mt.DEFAULT_LIMIT,project:i,dateRange:a,orderBy:o}=n,c={limit:s,project:i,dateRange:a,orderBy:o};try{_.debug("SEARCH","HybridSearchStrategy: findByFile",{filePath:r});let l=this.sessionSearch.findByFile(r,c);_.debug("SEARCH","HybridSearchStrategy: Found file matches",{observations:l.observations.length,sessions:l.sessions.length});let u=l.sessions;if(l.observations.length===0)return{observations:[],sessions:u,usedChroma:!1};let p=l.observations.map(f=>f.id),d=await this.vectorSync.query(r,Math.min(p.length,mt.CHROMA_BATCH_SIZE)),m=this.intersectWithRanking(p,d.ids);if(_.debug("SEARCH","HybridSearchStrategy: Ranked observations",{count:m.length}),m.length>0){let f=this.sessionStore.getObservationsByIds(m,{limit:s});return f.sort((v,g)=>m.indexOf(v.id)-m.indexOf(g.id)),{observations:f,sessions:u,usedChroma:!0}}return{observations:[],sessions:u,usedChroma:!1}}catch(l){_.error("SEARCH","HybridSearchStrategy: findByFile failed",{},l);let u=this.sessionSearch.findByFile(r,c);return{observations:u.observations,sessions:u.sessions,usedChroma:!1}}}intersectWithRanking(r,n){let s=new Set(r),i=[];for(let a of n)s.has(a)&&!i.includes(a)&&i.push(a);return i}};sn();ao();var ipe=4,Tu=class{formatSearchResults(e,r,n=!1){let s=e.observations.length+e.sessions.length+e.prompts.length;if(s===0)return n?this.formatChromaFailureMessage():`No results found matching "${r}"`;let i=this.combineResults(e);i.sort((l,u)=>u.epoch-l.epoch);let a=process.cwd(),o=Di(i,l=>l.created_at),c=[];c.push(`Found ${s} result(s) matching "${r}" (${e.observations.length} obs, ${e.sessions.length} sessions, ${e.prompts.length} prompts)`),c.push("");for(let[l,u]of o){c.push(`### ${l}`),c.push("");let p=new Map;for(let d of u){let m="General";if(d.type==="observation"){let f=d.data;m=$n(f.files_modified,a,f.files_read)}p.has(m)||p.set(m,[]),p.get(m).push(d)}for(let[d,m]of p){c.push(`**${d}**`),c.push(this.formatSearchTableHeader());let f="";for(let v of m)if(v.type==="observation"){let g=this.formatObservationSearchRow(v.data,f);c.push(g.row),f=g.time}else if(v.type==="session"){let g=this.formatSessionSearchRow(v.data,f);c.push(g.row),f=g.time}else{let g=this.formatPromptSearchRow(v.data,f);c.push(g.row),f=g.time}c.push("")}}return c.join(` + `,a=[];n&&(i+=" WHERE s.project = ?",a.push(n)),i+=" ORDER BY up.created_at_epoch DESC LIMIT ? OFFSET ?",a.push(r+1,e);let c=s.prepare(i).all(...a);return{items:c.slice(0,r),hasMore:c.length>r,offset:e,limit:r}}paginate(e,r,n,s,i){let a=this.dbManager.getSessionStore().db,o=`SELECT ${r} FROM ${e}`,c=[];i&&(o+=" WHERE project = ?",c.push(i)),o+=" ORDER BY created_at_epoch DESC LIMIT ? OFFSET ?",c.push(s+1,n);let u=a.prepare(o).all(...c);return{items:u.slice(0,s),hasMore:u.length>s,offset:n,limit:s}}};var Z2=require("path");re();oo();sn();var Ss=class{emptyResult(e){return{results:{observations:[],sessions:[],prompts:[]},usedChroma:e==="chroma"||e==="hybrid"||e==="vector",fellBack:!1,strategy:e}}};var mt={RECENCY_WINDOW_DAYS:90,RECENCY_WINDOW_MS:7776e6,DEFAULT_LIMIT:20,CHROMA_BATCH_SIZE:100};re();var Ao=class extends Ss{constructor(r,n){super();this.vectorSync=r;this.sessionStore=n}name="vector";canHandle(r){return!!r.query&&!!this.vectorSync}async search(r){let{query:n,searchType:s="all",obsType:i,concepts:a,files:o,limit:c=mt.DEFAULT_LIMIT,project:l,orderBy:u="date_desc"}=r;if(!n)return this.emptyResult("vector");let p=s==="all"||s==="observations",d=s==="all"||s==="sessions",m=s==="all"||s==="prompts",f=[],v=[],g=[];try{let h=this.buildWhereFilter(s);_.debug("SEARCH","VectorSearchStrategy: Querying vector DB",{query:n,searchType:s});let y=await this.vectorSync.query(n,mt.CHROMA_BATCH_SIZE,h);if(_.debug("SEARCH","VectorSearchStrategy: Vector DB returned matches",{matchCount:y.ids.length}),y.ids.length===0)return{results:{observations:[],sessions:[],prompts:[]},usedChroma:!0,fellBack:!1,strategy:"vector"};let b=this.filterByRecency(y);_.debug("SEARCH","VectorSearchStrategy: Filtered by recency",{count:b.length});let x=this.categorizeByDocType(b,{searchObservations:p,searchSessions:d,searchPrompts:m});if(x.obsIds.length>0){let w={type:i,concepts:a,files:o,orderBy:u,limit:c,project:l};f=this.sessionStore.getObservationsByIds(x.obsIds,w)}return x.sessionIds.length>0&&(v=this.sessionStore.getSessionSummariesByIds(x.sessionIds,{orderBy:u,limit:c,project:l})),x.promptIds.length>0&&(g=this.sessionStore.getUserPromptsByIds(x.promptIds,{orderBy:u,limit:c,project:l})),_.debug("SEARCH","VectorSearchStrategy: Hydrated results",{observations:f.length,sessions:v.length,prompts:g.length}),{results:{observations:f,sessions:v,prompts:g},usedChroma:!0,fellBack:!1,strategy:"vector"}}catch(h){return _.error("SEARCH","VectorSearchStrategy: Search failed",{},h),{results:{observations:[],sessions:[],prompts:[]},usedChroma:!1,fellBack:!1,strategy:"vector"}}}buildWhereFilter(r){switch(r){case"observations":return{doc_type:"observation"};case"sessions":return{doc_type:"session_summary"};case"prompts":return{doc_type:"user_prompt"};default:return}}filterByRecency(r){let n=Date.now()-mt.RECENCY_WINDOW_MS;return r.metadatas.map((s,i)=>({id:r.ids[i],meta:s})).filter(s=>s.meta&&s.meta.created_at_epoch>n)}categorizeByDocType(r,n){let s=[],i=[],a=[];for(let o of r){let c=o.meta?.doc_type;c==="observation"&&n.searchObservations?s.push(o.id):c==="session_summary"&&n.searchSessions?i.push(o.id):c==="user_prompt"&&n.searchPrompts&&a.push(o.id)}return{obsIds:s,sessionIds:i,promptIds:a}}};re();var Tu=class extends Ss{constructor(r){super();this.sessionSearch=r}name="sqlite";canHandle(r){return!r.query||r.strategyHint==="sqlite"}async search(r){let{searchType:n="all",obsType:s,concepts:i,files:a,limit:o=mt.DEFAULT_LIMIT,offset:c=0,project:l,dateRange:u,orderBy:p="date_desc"}=r,d=n==="all"||n==="observations",m=n==="all"||n==="sessions",f=n==="all"||n==="prompts",v=[],g=[],h=[],y={limit:o,offset:c,orderBy:p,project:l,dateRange:u};_.debug("SEARCH","SQLiteSearchStrategy: Filter-only query",{searchType:n,hasDateRange:!!u,hasProject:!!l});try{if(d){let b={...y,type:s,concepts:i,files:a};v=this.sessionSearch.searchObservations(void 0,b)}return m&&(g=this.sessionSearch.searchSessions(void 0,y)),f&&(h=this.sessionSearch.searchUserPrompts(void 0,y)),_.debug("SEARCH","SQLiteSearchStrategy: Results",{observations:v.length,sessions:g.length,prompts:h.length}),{results:{observations:v,sessions:g,prompts:h},usedChroma:!1,fellBack:!1,strategy:"sqlite"}}catch(b){return _.error("SEARCH","SQLiteSearchStrategy: Search failed",{},b),this.emptyResult("sqlite")}}findByConcept(r,n){let{limit:s=mt.DEFAULT_LIMIT,project:i,dateRange:a,orderBy:o="date_desc"}=n;return this.sessionSearch.findByConcept(r,{limit:s,project:i,dateRange:a,orderBy:o})}findByType(r,n){let{limit:s=mt.DEFAULT_LIMIT,project:i,dateRange:a,orderBy:o="date_desc"}=n;return this.sessionSearch.findByType(r,{limit:s,project:i,dateRange:a,orderBy:o})}findByFile(r,n){let{limit:s=mt.DEFAULT_LIMIT,project:i,dateRange:a,orderBy:o="date_desc"}=n;return this.sessionSearch.findByFile(r,{limit:s,project:i,dateRange:a,orderBy:o})}};re();var Ru=class extends Ss{constructor(r,n,s){super();this.vectorSync=r;this.sessionStore=n;this.sessionSearch=s}name="hybrid";canHandle(r){return!!this.vectorSync&&(!!r.concepts||!!r.files||!!r.type&&!!r.query||r.strategyHint==="hybrid")}async search(r){let{query:n,limit:s=mt.DEFAULT_LIMIT,project:i}=r;return n?this.emptyResult("hybrid"):this.emptyResult("hybrid")}async findByConcept(r,n){let{limit:s=mt.DEFAULT_LIMIT,project:i,dateRange:a,orderBy:o}=n,c={limit:s,project:i,dateRange:a,orderBy:o};try{_.debug("SEARCH","HybridSearchStrategy: findByConcept",{concept:r});let l=this.sessionSearch.findByConcept(r,c);if(_.debug("SEARCH","HybridSearchStrategy: Found metadata matches",{count:l.length}),l.length===0)return this.emptyResult("hybrid");let u=l.map(m=>m.id),p=await this.vectorSync.query(r,Math.min(u.length,mt.CHROMA_BATCH_SIZE)),d=this.intersectWithRanking(u,p.ids);if(_.debug("SEARCH","HybridSearchStrategy: Ranked by semantic relevance",{count:d.length}),d.length>0){let m=this.sessionStore.getObservationsByIds(d,{limit:s});return m.sort((f,v)=>d.indexOf(f.id)-d.indexOf(v.id)),{results:{observations:m,sessions:[],prompts:[]},usedChroma:!0,fellBack:!1,strategy:"hybrid"}}return this.emptyResult("hybrid")}catch(l){return _.error("SEARCH","HybridSearchStrategy: findByConcept failed",{},l),{results:{observations:this.sessionSearch.findByConcept(r,c),sessions:[],prompts:[]},usedChroma:!1,fellBack:!0,strategy:"hybrid"}}}async findByType(r,n){let{limit:s=mt.DEFAULT_LIMIT,project:i,dateRange:a,orderBy:o}=n,c={limit:s,project:i,dateRange:a,orderBy:o},l=Array.isArray(r)?r.join(", "):r;try{_.debug("SEARCH","HybridSearchStrategy: findByType",{type:l});let u=this.sessionSearch.findByType(r,c);if(_.debug("SEARCH","HybridSearchStrategy: Found metadata matches",{count:u.length}),u.length===0)return this.emptyResult("hybrid");let p=u.map(f=>f.id),d=await this.vectorSync.query(l,Math.min(p.length,mt.CHROMA_BATCH_SIZE)),m=this.intersectWithRanking(p,d.ids);if(_.debug("SEARCH","HybridSearchStrategy: Ranked by semantic relevance",{count:m.length}),m.length>0){let f=this.sessionStore.getObservationsByIds(m,{limit:s});return f.sort((v,g)=>m.indexOf(v.id)-m.indexOf(g.id)),{results:{observations:f,sessions:[],prompts:[]},usedChroma:!0,fellBack:!1,strategy:"hybrid"}}return this.emptyResult("hybrid")}catch(u){return _.error("SEARCH","HybridSearchStrategy: findByType failed",{},u),{results:{observations:this.sessionSearch.findByType(r,c),sessions:[],prompts:[]},usedChroma:!1,fellBack:!0,strategy:"hybrid"}}}async findByFile(r,n){let{limit:s=mt.DEFAULT_LIMIT,project:i,dateRange:a,orderBy:o}=n,c={limit:s,project:i,dateRange:a,orderBy:o};try{_.debug("SEARCH","HybridSearchStrategy: findByFile",{filePath:r});let l=this.sessionSearch.findByFile(r,c);_.debug("SEARCH","HybridSearchStrategy: Found file matches",{observations:l.observations.length,sessions:l.sessions.length});let u=l.sessions;if(l.observations.length===0)return{observations:[],sessions:u,usedChroma:!1};let p=l.observations.map(f=>f.id),d=await this.vectorSync.query(r,Math.min(p.length,mt.CHROMA_BATCH_SIZE)),m=this.intersectWithRanking(p,d.ids);if(_.debug("SEARCH","HybridSearchStrategy: Ranked observations",{count:m.length}),m.length>0){let f=this.sessionStore.getObservationsByIds(m,{limit:s});return f.sort((v,g)=>m.indexOf(v.id)-m.indexOf(g.id)),{observations:f,sessions:u,usedChroma:!0}}return{observations:[],sessions:u,usedChroma:!1}}catch(l){_.error("SEARCH","HybridSearchStrategy: findByFile failed",{},l);let u=this.sessionSearch.findByFile(r,c);return{observations:u.observations,sessions:u.sessions,usedChroma:!1}}}intersectWithRanking(r,n){let s=new Set(r),i=[];for(let a of n)s.has(a)&&!i.includes(a)&&i.push(a);return i}};sn();oo();var dpe=4,$u=class{formatSearchResults(e,r,n=!1){let s=e.observations.length+e.sessions.length+e.prompts.length;if(s===0)return n?this.formatChromaFailureMessage():`No results found matching "${r}"`;let i=this.combineResults(e);i.sort((l,u)=>u.epoch-l.epoch);let a=process.cwd(),o=Mi(i,l=>l.created_at),c=[];c.push(`Found ${s} result(s) matching "${r}" (${e.observations.length} obs, ${e.sessions.length} sessions, ${e.prompts.length} prompts)`),c.push("");for(let[l,u]of o){c.push(`### ${l}`),c.push("");let p=new Map;for(let d of u){let m="General";if(d.type==="observation"){let f=d.data;m=$n(f.files_modified,a,f.files_read)}p.has(m)||p.set(m,[]),p.get(m).push(d)}for(let[d,m]of p){c.push(`**${d}**`),c.push(this.formatSearchTableHeader());let f="";for(let v of m)if(v.type==="observation"){let g=this.formatObservationSearchRow(v.data,f);c.push(g.row),f=g.time}else if(v.type==="session"){let g=this.formatSessionSearchRow(v.data,f);c.push(g.row),f=g.time}else{let g=this.formatPromptSearchRow(v.data,f);c.push(g.row),f=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}`,s=br(e.created_at_epoch),i=Ue.getInstance().getTypeIcon(e.type),a=e.title||"Untitled",o=this.estimateReadTokens(e);return{row:`| ${n} | ${s===r?'"':s} | ${i} | ${a} | ~${o} |`,time:s}}formatSessionSearchRow(e,r){let n=`#S${e.id}`,s=br(e.created_at_epoch),i="\u{1F3AF}",a=e.request||`Session ${e.memory_session_id?.substring(0,8)||"unknown"}`;return{row:`| ${n} | ${s===r?'"':s} | ${i} | ${a} | - |`,time:s}}formatPromptSearchRow(e,r){let n=`#P${e.id}`,s=br(e.created_at_epoch),i="\u{1F4AC}",a=e.prompt_text.length>60?e.prompt_text.substring(0,57)+"...":e.prompt_text;return{row:`| ${n} | ${s===r?'"':s} | ${i} | ${a} | - |`,time:s}}formatObservationIndex(e,r){let n=`#${e.id}`,s=br(e.created_at_epoch),i=Ue.getInstance().getTypeIcon(e.type),a=e.title||"Untitled",o=this.estimateReadTokens(e),c=Ue.getInstance().getWorkEmoji(e.type),l=e.discovery_tokens||0,u=l>0?`${c} ${l}`:"-";return`| ${n} | ${s} | ${i} | ${a} | ~${o} | ${u} |`}formatSessionIndex(e,r){let n=`#S${e.id}`,s=br(e.created_at_epoch),i="\u{1F3AF}",a=e.request||`Session ${e.memory_session_id?.substring(0,8)||"unknown"}`;return`| ${n} | ${s} | ${i} | ${a} | - | - |`}formatPromptIndex(e,r){let n=`#P${e.id}`,s=br(e.created_at_epoch),i="\u{1F4AC}",a=e.prompt_text.length>60?e.prompt_text.substring(0,57)+"...":e.prompt_text;return`| ${n} | ${s} | ${i} | ${a} | - | - |`}estimateReadTokens(e){let r=(e.title?.length||0)+(e.subtitle?.length||0)+(e.narrative?.length||0)+(e.facts?.length||0);return Math.ceil(r/ipe)}formatChromaFailureMessage(){return`Vector search failed - semantic search unavailable. +|-----|------|---|-------|------|------|`}formatObservationSearchRow(e,r){let n=`#${e.id}`,s=br(e.created_at_epoch),i=Ue.getInstance().getTypeIcon(e.type),a=e.title||"Untitled",o=this.estimateReadTokens(e);return{row:`| ${n} | ${s===r?'"':s} | ${i} | ${a} | ~${o} |`,time:s}}formatSessionSearchRow(e,r){let n=`#S${e.id}`,s=br(e.created_at_epoch),i="\u{1F3AF}",a=e.request||`Session ${e.memory_session_id?.substring(0,8)||"unknown"}`;return{row:`| ${n} | ${s===r?'"':s} | ${i} | ${a} | - |`,time:s}}formatPromptSearchRow(e,r){let n=`#P${e.id}`,s=br(e.created_at_epoch),i="\u{1F4AC}",a=e.prompt_text.length>60?e.prompt_text.substring(0,57)+"...":e.prompt_text;return{row:`| ${n} | ${s===r?'"':s} | ${i} | ${a} | - |`,time:s}}formatObservationIndex(e,r){let n=`#${e.id}`,s=br(e.created_at_epoch),i=Ue.getInstance().getTypeIcon(e.type),a=e.title||"Untitled",o=this.estimateReadTokens(e),c=Ue.getInstance().getWorkEmoji(e.type),l=e.discovery_tokens||0,u=l>0?`${c} ${l}`:"-";return`| ${n} | ${s} | ${i} | ${a} | ~${o} | ${u} |`}formatSessionIndex(e,r){let n=`#S${e.id}`,s=br(e.created_at_epoch),i="\u{1F3AF}",a=e.request||`Session ${e.memory_session_id?.substring(0,8)||"unknown"}`;return`| ${n} | ${s} | ${i} | ${a} | - | - |`}formatPromptIndex(e,r){let n=`#P${e.id}`,s=br(e.created_at_epoch),i="\u{1F4AC}",a=e.prompt_text.length>60?e.prompt_text.substring(0,57)+"...":e.prompt_text;return`| ${n} | ${s} | ${i} | ${a} | - | - |`}estimateReadTokens(e){let r=(e.title?.length||0)+(e.subtitle?.length||0)+(e.narrative?.length||0)+(e.facts?.length||0);return Math.ceil(r/dpe)}formatChromaFailureMessage(){return`Vector search failed - semantic search unavailable. To enable semantic search: 1. Install uv: https://docs.astral.sh/uv/getting-started/installation/ @@ -1336,15 +1336,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"`}};sn();ao();var Bi=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,s)=>n.epoch-s.epoch),r}filterByDepth(e,r,n,s,i){if(e.length===0)return e;let a=this.findAnchorIndex(e,r,n);if(a===-1)return e;let o=Math.max(0,a-s),c=Math.min(e.length,a+i+1);return e.slice(o,c)}findAnchorIndex(e,r,n){if(typeof r=="number")return e.findIndex(i=>i.type==="observation"&&i.data.id===r);if(typeof r=="string"&&r.startsWith("S")){let i=parseInt(r.slice(1),10);return e.findIndex(a=>a.type==="session"&&a.data.id===i)}let s=e.findIndex(i=>i.epoch>=n);return s===-1?e.length-1:s}formatTimeline(e,r,n={}){let{query:s,depthBefore:i,depthAfter:a,cwd:o=process.cwd()}=n;if(e.length===0)return s?`Found observation matching "${s}", but no timeline context available.`:"No timeline items found";let c=[];if(s&&r){let p=e.find(m=>m.type==="observation"&&m.data.id===r),d=p?p.data.title||"Untitled":"Unknown";c.push(`# Timeline for query: "${s}"`),c.push(`**Anchor:** Observation #${r} - ${d}`)}else r?c.push(`# Timeline around anchor: ${r}`):c.push("# Timeline");i!==void 0&&a!==void 0?c.push(`**Window:** ${i} records before -> ${a} records after | **Items:** ${e.length}`):c.push(`**Items:** ${e.length}`),c.push("");let l=this.groupByDay(e),u=this.sortDaysChronologically(l);for(let[p,d]of u){c.push(`### ${p}`),c.push("");let m=null,f="",v=!1;for(let g of d){let h=this.isAnchorItem(g,r);if(g.type==="session"){v&&(c.push(""),v=!1,m=null,f="");let y=g.data,b=y.request||"Session summary",x=h?" <- **ANCHOR**":"";c.push(`**\u{1F3AF} #S${y.id}** ${b} (${an(g.epoch)})${x}`),c.push("")}else if(g.type==="prompt"){v&&(c.push(""),v=!1,m=null,f="");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=$n(y.files_modified,o,y.files_read);b!==m&&(v&&c.push(""),c.push(`**${b}**`),c.push("| ID | Time | T | Title | Tokens |"),c.push("|----|------|---|-------|--------|"),m=b,v=!0,f="");let x=Ue.getInstance().getTypeIcon(y.type),w=br(g.epoch),S=y.title||"Untitled",E=io(y.narrative),$=w!==f?w:'"';f=w;let j=h?" <- **ANCHOR**":"";c.push(`| #${y.id} | ${$} | ${x} | ${S}${j} | ~${E} |`)}}v&&c.push("")}return c.join(` -`)}groupByDay(e){let r=new Map;for(let n of e){let s=ms(n.epoch);r.has(s)||r.set(s,[]),r.get(s).push(n)}return r}sortDaysChronologically(e){return Array.from(e.entries()).sort((r,n)=>{let s=new Date(r[0]).getTime(),i=new Date(n[0]).getTime();return s-i})}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}};se();var Ru=class{constructor(e,r,n){this.sessionSearch=e;this.sessionStore=r;this.vectorSync=n;this.sqliteStrategy=new Eu(e),n&&(this.vectorStrategy=new Io(n,r),this.hybridStrategy=new ku(n,r,e)),this.resultFormatter=new Tu,this.timelineBuilder=new Bi}vectorStrategy=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.vectorStrategy){_.debug("SEARCH","Orchestrator: Using vector semantic search",{});let r=await this.vectorStrategy.search(e);return r.usedChroma?r:(_.debug("SEARCH","Orchestrator: Vector search failed, falling back to SQLite",{}),{...await this.sqliteStrategy.search({...e,query:void 0}),fellBack:!0})}return _.debug("SEARCH","Orchestrator: Vector DB 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,s,i){let a=this.timelineBuilder.buildTimeline(e);return this.timelineBuilder.filterByDepth(a,r,n,s,i)}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}isVectorDbAvailable(){return!!this.vectorSync}isChromaAvailable(){return this.isVectorDbAvailable()}};var _f=class{constructor(e,r,n,s,i){this.sessionSearch=e;this.sessionStore=r;this.vectorSync=n;this.formatter=s;this.timelineService=i;this.orchestrator=new Ru(e,r,n),this.timelineBuilder=new Bi}orchestrator;timelineBuilder;async queryVector(e,r,n){return await this.vectorSync.query(e,r,n)}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:s,obs_type:i,concepts:a,files:o,format:c,...l}=r,u=[],p=[],d=[],m=!1,f=!s||s==="observations",v=!s||s==="sessions",g=!s||s==="prompts";if(!n||n==="*"){_.debug("SEARCH","Filter-only query (no query text), using direct SQLite filtering",{enablesDateFilters:!0});let k={...l,type:i,concepts:a,files:o};f&&(u=this.sessionSearch.searchObservations(void 0,k)),v&&(p=this.sessionSearch.searchSessions(void 0,l)),g&&(d=this.sessionSearch.searchUserPrompts(void 0,l))}else if(this.vectorSync){let k=!1;_.debug("SEARCH","Using ChromaDB semantic search",{typeFilter:s||"all"});let $;s==="observations"?$={doc_type:"observation"}:s==="sessions"?$={doc_type:"session_summary"}:s==="prompts"&&($={doc_type:"user_prompt"});let j=await this.queryVector(n,100,$);if(k=!0,_.debug("SEARCH","ChromaDB returned semantic matches",{matchCount:j.ids.length}),j.ids.length>0){let I=Date.now()-mt.RECENCY_WINDOW_MS,q=j.metadatas.map((we,et)=>({id:j.ids[et],meta:we,isRecent:we&&we.created_at_epoch>I})).filter(we=>we.isRecent);_.debug("SEARCH","Results within 90-day window",{count:q.length});let H=[],Z=[],W=[];for(let we of q){let et=we.meta?.doc_type;et==="observation"&&f?H.push(we.id):et==="session_summary"&&v?Z.push(we.id):et==="user_prompt"&&g&&W.push(we.id)}if(_.debug("SEARCH","Categorized results by type",{observations:H.length,sessions:Z.length,prompts:d.length}),H.length>0){let we={...l,type:i,concepts:a,files:o};u=this.sessionStore.getObservationsByIds(H,we)}Z.length>0&&(p=this.sessionStore.getSessionSummariesByIds(Z,{orderBy:"date_desc",limit:l.limit,project:l.project})),W.length>0&&(d=this.sessionStore.getUserPromptsByIds(W,{orderBy:"date_desc",limit:l.limit,project:l.project})),_.debug("SEARCH","Hydrated results from SQLite",{observations:u.length,sessions:p.length,prompts:d.length})}else _.debug("SEARCH","ChromaDB found no matches (final result, no FTS5 fallback)",{})}else n&&(m=!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/"}),u=[],p=[],d=[]);let h=u.length+p.length+d.length;if(c==="json")return{observations:u,sessions:p,prompts:d,totalResults:h,query:n||""};if(h===0)return m?{content:[{type:"text",text:`Vector search failed - semantic search unavailable. +- Sort: orderBy="date_desc" or "date_asc"`}};sn();oo();var Wi=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,s)=>n.epoch-s.epoch),r}filterByDepth(e,r,n,s,i){if(e.length===0)return e;let a=this.findAnchorIndex(e,r,n);if(a===-1)return e;let o=Math.max(0,a-s),c=Math.min(e.length,a+i+1);return e.slice(o,c)}findAnchorIndex(e,r,n){if(typeof r=="number")return e.findIndex(i=>i.type==="observation"&&i.data.id===r);if(typeof r=="string"&&r.startsWith("S")){let i=parseInt(r.slice(1),10);return e.findIndex(a=>a.type==="session"&&a.data.id===i)}let s=e.findIndex(i=>i.epoch>=n);return s===-1?e.length-1:s}formatTimeline(e,r,n={}){let{query:s,depthBefore:i,depthAfter:a,cwd:o=process.cwd()}=n;if(e.length===0)return s?`Found observation matching "${s}", but no timeline context available.`:"No timeline items found";let c=[];if(s&&r){let p=e.find(m=>m.type==="observation"&&m.data.id===r),d=p?p.data.title||"Untitled":"Unknown";c.push(`# Timeline for query: "${s}"`),c.push(`**Anchor:** Observation #${r} - ${d}`)}else r?c.push(`# Timeline around anchor: ${r}`):c.push("# Timeline");i!==void 0&&a!==void 0?c.push(`**Window:** ${i} records before -> ${a} records after | **Items:** ${e.length}`):c.push(`**Items:** ${e.length}`),c.push("");let l=this.groupByDay(e),u=this.sortDaysChronologically(l);for(let[p,d]of u){c.push(`### ${p}`),c.push("");let m=null,f="",v=!1;for(let g of d){let h=this.isAnchorItem(g,r);if(g.type==="session"){v&&(c.push(""),v=!1,m=null,f="");let y=g.data,b=y.request||"Session summary",x=h?" <- **ANCHOR**":"";c.push(`**\u{1F3AF} #S${y.id}** ${b} (${an(g.epoch)})${x}`),c.push("")}else if(g.type==="prompt"){v&&(c.push(""),v=!1,m=null,f="");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=$n(y.files_modified,o,y.files_read);b!==m&&(v&&c.push(""),c.push(`**${b}**`),c.push("| ID | Time | T | Title | Tokens |"),c.push("|----|------|---|-------|--------|"),m=b,v=!0,f="");let x=Ue.getInstance().getTypeIcon(y.type),w=br(g.epoch),S=y.title||"Untitled",E=ao(y.narrative),$=w!==f?w:'"';f=w;let j=h?" <- **ANCHOR**":"";c.push(`| #${y.id} | ${$} | ${x} | ${S}${j} | ~${E} |`)}}v&&c.push("")}return c.join(` +`)}groupByDay(e){let r=new Map;for(let n of e){let s=ms(n.epoch);r.has(s)||r.set(s,[]),r.get(s).push(n)}return r}sortDaysChronologically(e){return Array.from(e.entries()).sort((r,n)=>{let s=new Date(r[0]).getTime(),i=new Date(n[0]).getTime();return s-i})}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 Ou=class{constructor(e,r,n){this.sessionSearch=e;this.sessionStore=r;this.vectorSync=n;this.sqliteStrategy=new Tu(e),n&&(this.vectorStrategy=new Ao(n,r),this.hybridStrategy=new Ru(n,r,e)),this.resultFormatter=new $u,this.timelineBuilder=new Wi}vectorStrategy=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.vectorStrategy){_.debug("SEARCH","Orchestrator: Using vector semantic search",{});let r=await this.vectorStrategy.search(e);return r.usedChroma?r:(_.debug("SEARCH","Orchestrator: Vector search failed, falling back to SQLite",{}),{...await this.sqliteStrategy.search({...e,query:void 0}),fellBack:!0})}return _.debug("SEARCH","Orchestrator: Vector DB 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,s,i){let a=this.timelineBuilder.buildTimeline(e);return this.timelineBuilder.filterByDepth(a,r,n,s,i)}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}isVectorDbAvailable(){return!!this.vectorSync}isChromaAvailable(){return this.isVectorDbAvailable()}};var Sf=class{constructor(e,r,n,s,i){this.sessionSearch=e;this.sessionStore=r;this.vectorSync=n;this.formatter=s;this.timelineService=i;this.orchestrator=new Ou(e,r,n),this.timelineBuilder=new Wi}orchestrator;timelineBuilder;async queryVector(e,r,n){return await this.vectorSync.query(e,r,n)}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:s,obs_type:i,concepts:a,files:o,format:c,...l}=r,u=[],p=[],d=[],m=!1,f=!s||s==="observations",v=!s||s==="sessions",g=!s||s==="prompts";if(!n||n==="*"){_.debug("SEARCH","Filter-only query (no query text), using direct SQLite filtering",{enablesDateFilters:!0});let k={...l,type:i,concepts:a,files:o};f&&(u=this.sessionSearch.searchObservations(void 0,k)),v&&(p=this.sessionSearch.searchSessions(void 0,l)),g&&(d=this.sessionSearch.searchUserPrompts(void 0,l))}else if(this.vectorSync){let k=!1;_.debug("SEARCH","Using ChromaDB semantic search",{typeFilter:s||"all"});let $;s==="observations"?$={doc_type:"observation"}:s==="sessions"?$={doc_type:"session_summary"}:s==="prompts"&&($={doc_type:"user_prompt"});let j=await this.queryVector(n,100,$);if(k=!0,_.debug("SEARCH","ChromaDB returned semantic matches",{matchCount:j.ids.length}),j.ids.length>0){let I=Date.now()-mt.RECENCY_WINDOW_MS,q=j.metadatas.map((we,et)=>({id:j.ids[et],meta:we,isRecent:we&&we.created_at_epoch>I})).filter(we=>we.isRecent);_.debug("SEARCH","Results within 90-day window",{count:q.length});let H=[],Z=[],W=[];for(let we of q){let et=we.meta?.doc_type;et==="observation"&&f?H.push(we.id):et==="session_summary"&&v?Z.push(we.id):et==="user_prompt"&&g&&W.push(we.id)}if(_.debug("SEARCH","Categorized results by type",{observations:H.length,sessions:Z.length,prompts:d.length}),H.length>0){let we={...l,type:i,concepts:a,files:o};u=this.sessionStore.getObservationsByIds(H,we)}Z.length>0&&(p=this.sessionStore.getSessionSummariesByIds(Z,{orderBy:"date_desc",limit:l.limit,project:l.project})),W.length>0&&(d=this.sessionStore.getUserPromptsByIds(W,{orderBy:"date_desc",limit:l.limit,project:l.project})),_.debug("SEARCH","Hydrated results from SQLite",{observations:u.length,sessions:p.length,prompts:d.length})}else _.debug("SEARCH","ChromaDB found no matches (final result, no FTS5 fallback)",{})}else n&&(m=!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/"}),u=[],p=[],d=[]);let h=u.length+p.length+d.length;if(c==="json")return{observations:u,sessions:p,prompts:d,totalResults:h,query:n||""};if(h===0)return m?{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${n&&n!=="*"?` matching "${n}"`:""}`}]};let y=[...u.map(k=>({type:"observation",data:k,epoch:k.created_at_epoch,created_at:k.created_at})),...p.map(k=>({type:"session",data:k,epoch:k.created_at_epoch,created_at:k.created_at})),...d.map(k=>({type:"prompt",data:k,epoch:k.created_at_epoch,created_at:k.created_at}))];l.orderBy==="date_desc"?y.sort((k,$)=>$.epoch-k.epoch):l.orderBy==="date_asc"&&y.sort((k,$)=>k.epoch-$.epoch);let b=y.slice(0,l.limit||20),x=process.cwd(),w=Di(b,k=>k.created_at),S=[],E=n&&n!=="*"?` matching "${n}"`:"";S.push(`Found ${h} result(s)${E} (${u.length} obs, ${p.length} sessions, ${d.length} prompts)`),S.push("");for(let[k,$]of w){S.push(`### ${k}`),S.push("");let j=new Map;for(let I of $){let q="General";I.type==="observation"&&(q=$n(I.data.files_modified,x,I.data.files_read)),j.has(q)||j.set(q,[]),j.get(q).push(I)}for(let[I,q]of j){S.push(`**${I}**`),S.push(this.formatter.formatSearchTableHeader());let H="";for(let Z of q)if(Z.type==="observation"){let W=this.formatter.formatObservationSearchRow(Z.data,H);S.push(W.row),H=W.time}else if(Z.type==="session"){let W=this.formatter.formatSessionSearchRow(Z.data,H);S.push(W.row),H=W.time}else{let W=this.formatter.formatUserPromptSearchRow(Z.data,H);S.push(W.row),H=W.time}S.push("")}}return{content:[{type:"text",text:S.join(` -`)}]}}async semanticSearchWithScores(e){let r=this.normalizeParams(e),{query:n,type:s,obs_type:i,project:a,limit:o=20,dateStart:c,dateEnd:l}=r,u=[],p=!1,d=!!this.vectorSync;if(!n||n==="*"){let m={limit:o,project:a,type:i},f=this.sessionSearch.searchObservations(void 0,m);for(let v of f)u.push({id:v.id,type:"observation",title:v.title||"Untitled",content:v.narrative||v.text||"",project:v.project||"",timestamp:v.created_at,score:0,obsType:v.type});return{results:u.slice(0,o),query:n||"",usedSemantic:!1,vectorDbAvailable:d}}if(this.vectorSync)try{let m;s==="observations"?m={doc_type:"observation"}:s==="sessions"?m={doc_type:"session_summary"}:s==="prompts"&&(m={doc_type:"user_prompt"});let f=await this.queryVector(n,100,m);if(p=!0,f.ids.length>0){let v=new Map,g=new Map,h=Date.now()-mt.RECENCY_WINDOW_MS;for(let w=0;wh){let E=f.ids[w],k=f.distances[w]||0,$=Math.max(0,Math.min(1,1-k/2));(!v.has(E)||$>v.get(E))&&(v.set(E,$),g.set(E,S.doc_type))}}let y=[],b=[],x=[];for(let[w,S]of g)S==="observation"&&(!s||s==="observations")?y.push(w):S==="session_summary"&&(!s||s==="sessions")?b.push(w):S==="user_prompt"&&(!s||s==="prompts")&&x.push(w);if(y.length>0){let w={type:i,project:a},S=this.sessionStore.getObservationsByIds(y,w);for(let E of S)u.push({id:E.id,type:"observation",title:E.title||"Untitled",content:E.narrative||E.text||"",project:E.project||"",timestamp:E.created_at,score:v.get(E.id)||0,obsType:E.type})}if(b.length>0){let w=this.sessionStore.getSessionSummariesByIds(b,{project:a});for(let S of w)u.push({id:S.id,type:"summary",title:S.request||"Session Summary",content:S.learned||S.completed||"",project:S.project||"",timestamp:S.created_at,score:v.get(S.id)||0})}if(x.length>0){let w=this.sessionStore.getUserPromptsByIds(x,{project:a});for(let S of w)u.push({id:S.id,type:"prompt",title:`Prompt #${S.prompt_number}`,content:S.prompt_text||"",project:S.project||"",timestamp:S.created_at,score:v.get(S.id)||0})}u.sort((w,S)=>S.score-w.score)}}catch(m){_.error("SEARCH","Semantic search failed",{},m),p=!1}return{results:u.slice(0,o),query:n,usedSemantic:p,vectorDbAvailable:d}}async timeline(e){let{anchor:r,query:n,depth_before:s=10,depth_after:i=10,project:a}=e,o=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,l,u;if(n){let g=[];if(this.vectorSync)try{_.debug("SEARCH","Using hybrid semantic search for timeline query",{});let y=await this.queryVector(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()-mt.RECENCY_WINDOW_MS,x=y.ids.filter((w,S)=>{let E=y.metadatas[S];return E&&E.created_at_epoch>b});x.length>0&&(g=this.sessionStore.getObservationsByIds(x,{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 h=g[0];c=h.id,l=h.created_at_epoch,_.debug("SEARCH","Query mode: Using observation as timeline anchor",{observationId:h.id}),u=this.sessionStore.getTimelineAroundObservation(h.id,h.created_at_epoch,s,i,a)}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,l=g.created_at_epoch,u=this.sessionStore.getTimelineAroundObservation(r,l,s,i,a)}else if(typeof r=="string")if(r.startsWith("S")||r.startsWith("#S")){let g=r.replace(/^#?S/,""),h=parseInt(g,10),y=this.sessionStore.getSessionSummariesByIds([h]);if(y.length===0)return{content:[{type:"text",text:`Session #${h} not found`}],isError:!0};l=y[0].created_at_epoch,c=`S${h}`,u=this.sessionStore.getTimelineAroundTimestamp(l,s,i,a)}else{let g=new Date(r);if(isNaN(g.getTime()))return{content:[{type:"text",text:`Invalid timestamp: ${r}`}],isError:!0};l=g.getTime(),c=r,u=this.sessionStore.getTimelineAroundTimestamp(l,s,i,a)}else return{content:[{type:"text",text:'Invalid anchor: must be observation ID (number), session ID (e.g., "S123"), or ISO timestamp'}],isError:!0};let p=[...(u.observations||[]).map(g=>({type:"observation",data:g,epoch:g.created_at_epoch})),...(u.sessions||[]).map(g=>({type:"session",data:g,epoch:g.created_at_epoch})),...(u.prompts||[]).map(g=>({type:"prompt",data:g,epoch:g.created_at_epoch}))];p.sort((g,h)=>g.epoch-h.epoch);let d=this.timelineService.filterByDepth(p,c,l,s,i);if(!d||d.length===0)return{content:[{type:"text",text:n?`Found observation matching "${n}", but no timeline context available (${s} records before, ${i} records after).`:`No context found around anchor (${s} records before, ${i} records after)`}]};let m=[];if(n){let g=d.find(y=>y.type==="observation"&&y.data.id===c),h=g&&g.type==="observation"?g.data.title||"Untitled":"Unknown";m.push(`# Timeline for query: "${n}"`),m.push(`**Anchor:** Observation #${c} - ${h}`)}else m.push(`# Timeline around anchor: ${c}`);m.push(`**Window:** ${s} records before -> ${i} records after | **Items:** ${d?.length??0}`),m.push("");let f=new Map;for(let g of d){let h=ms(g.epoch);f.has(h)||f.set(h,[]),f.get(h).push(g)}let v=Array.from(f.entries()).sort((g,h)=>{let y=new Date(g[0]).getTime(),b=new Date(h[0]).getTime();return y-b});for(let[g,h]of v){m.push(`### ${g}`),m.push("");let y=null,b="",x=!1;for(let w of h){let S=typeof c=="number"&&w.type==="observation"&&w.data.id===c||typeof c=="string"&&c.startsWith("S")&&w.type==="session"&&`S${w.data.id}`===c;if(w.type==="session"){x&&(m.push(""),x=!1,y=null,b="");let E=w.data,k=E.request||"Session summary",$=S?" <- **ANCHOR**":"";m.push(`**\u{1F3AF} #S${E.id}** ${k} (${an(w.epoch)})${$}`),m.push("")}else if(w.type==="prompt"){x&&(m.push(""),x=!1,y=null,b="");let E=w.data,k=E.prompt_text.length>100?E.prompt_text.substring(0,100)+"...":E.prompt_text;m.push(`**\u{1F4AC} User Prompt #${E.prompt_number}** (${an(w.epoch)})`),m.push(`> ${k}`),m.push("")}else if(w.type==="observation"){let E=w.data,k=$n(E.files_modified,o,E.files_read);k!==y&&(x&&m.push(""),m.push(`**${k}**`),m.push("| ID | Time | T | Title | Tokens |"),m.push("|----|------|---|-------|--------|"),y=k,x=!0,b="");let $=Ue.getInstance().getTypeIcon(E.type),j=br(w.epoch),I=E.title||"Untitled",q=io(E.narrative),Z=j!==b?j:'"';b=j;let W=S?" <- **ANCHOR**":"";m.push(`| #${E.id} | ${Z} | ${$} | ${I}${W} | ~${q} |`)}}x&&m.push("")}return{content:[{type:"text",text:m.join(` +Note: You can still use filter-only searches (date ranges, types, files) without a query term.`}]}:{content:[{type:"text",text:`No results found${n&&n!=="*"?` matching "${n}"`:""}`}]};let y=[...u.map(k=>({type:"observation",data:k,epoch:k.created_at_epoch,created_at:k.created_at})),...p.map(k=>({type:"session",data:k,epoch:k.created_at_epoch,created_at:k.created_at})),...d.map(k=>({type:"prompt",data:k,epoch:k.created_at_epoch,created_at:k.created_at}))];l.orderBy==="date_desc"?y.sort((k,$)=>$.epoch-k.epoch):l.orderBy==="date_asc"&&y.sort((k,$)=>k.epoch-$.epoch);let b=y.slice(0,l.limit||20),x=process.cwd(),w=Mi(b,k=>k.created_at),S=[],E=n&&n!=="*"?` matching "${n}"`:"";S.push(`Found ${h} result(s)${E} (${u.length} obs, ${p.length} sessions, ${d.length} prompts)`),S.push("");for(let[k,$]of w){S.push(`### ${k}`),S.push("");let j=new Map;for(let I of $){let q="General";I.type==="observation"&&(q=$n(I.data.files_modified,x,I.data.files_read)),j.has(q)||j.set(q,[]),j.get(q).push(I)}for(let[I,q]of j){S.push(`**${I}**`),S.push(this.formatter.formatSearchTableHeader());let H="";for(let Z of q)if(Z.type==="observation"){let W=this.formatter.formatObservationSearchRow(Z.data,H);S.push(W.row),H=W.time}else if(Z.type==="session"){let W=this.formatter.formatSessionSearchRow(Z.data,H);S.push(W.row),H=W.time}else{let W=this.formatter.formatUserPromptSearchRow(Z.data,H);S.push(W.row),H=W.time}S.push("")}}return{content:[{type:"text",text:S.join(` +`)}]}}async semanticSearchWithScores(e){let r=this.normalizeParams(e),{query:n,type:s,obs_type:i,project:a,limit:o=20,dateStart:c,dateEnd:l}=r,u=[],p=!1,d=!!this.vectorSync;if(!n||n==="*"){let m={limit:o,project:a,type:i},f=this.sessionSearch.searchObservations(void 0,m);for(let v of f)u.push({id:v.id,type:"observation",title:v.title||"Untitled",content:v.narrative||v.text||"",project:v.project||"",timestamp:v.created_at,score:0,obsType:v.type});return{results:u.slice(0,o),query:n||"",usedSemantic:!1,vectorDbAvailable:d}}if(this.vectorSync)try{let m;s==="observations"?m={doc_type:"observation"}:s==="sessions"?m={doc_type:"session_summary"}:s==="prompts"&&(m={doc_type:"user_prompt"});let f=await this.queryVector(n,100,m);if(p=!0,f.ids.length>0){let v=new Map,g=new Map,h=Date.now()-mt.RECENCY_WINDOW_MS;for(let w=0;wh){let E=f.ids[w],k=f.distances[w]||0,$=Math.max(0,Math.min(1,1-k/2));(!v.has(E)||$>v.get(E))&&(v.set(E,$),g.set(E,S.doc_type))}}let y=[],b=[],x=[];for(let[w,S]of g)S==="observation"&&(!s||s==="observations")?y.push(w):S==="session_summary"&&(!s||s==="sessions")?b.push(w):S==="user_prompt"&&(!s||s==="prompts")&&x.push(w);if(y.length>0){let w={type:i,project:a},S=this.sessionStore.getObservationsByIds(y,w);for(let E of S)u.push({id:E.id,type:"observation",title:E.title||"Untitled",content:E.narrative||E.text||"",project:E.project||"",timestamp:E.created_at,score:v.get(E.id)||0,obsType:E.type})}if(b.length>0){let w=this.sessionStore.getSessionSummariesByIds(b,{project:a});for(let S of w)u.push({id:S.id,type:"summary",title:S.request||"Session Summary",content:S.learned||S.completed||"",project:S.project||"",timestamp:S.created_at,score:v.get(S.id)||0})}if(x.length>0){let w=this.sessionStore.getUserPromptsByIds(x,{project:a});for(let S of w)u.push({id:S.id,type:"prompt",title:`Prompt #${S.prompt_number}`,content:S.prompt_text||"",project:S.project||"",timestamp:S.created_at,score:v.get(S.id)||0})}u.sort((w,S)=>S.score-w.score)}}catch(m){_.error("SEARCH","Semantic search failed",{},m),p=!1}return{results:u.slice(0,o),query:n,usedSemantic:p,vectorDbAvailable:d}}async timeline(e){let{anchor:r,query:n,depth_before:s=10,depth_after:i=10,project:a}=e,o=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,l,u;if(n){let g=[];if(this.vectorSync)try{_.debug("SEARCH","Using hybrid semantic search for timeline query",{});let y=await this.queryVector(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()-mt.RECENCY_WINDOW_MS,x=y.ids.filter((w,S)=>{let E=y.metadatas[S];return E&&E.created_at_epoch>b});x.length>0&&(g=this.sessionStore.getObservationsByIds(x,{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 h=g[0];c=h.id,l=h.created_at_epoch,_.debug("SEARCH","Query mode: Using observation as timeline anchor",{observationId:h.id}),u=this.sessionStore.getTimelineAroundObservation(h.id,h.created_at_epoch,s,i,a)}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,l=g.created_at_epoch,u=this.sessionStore.getTimelineAroundObservation(r,l,s,i,a)}else if(typeof r=="string")if(r.startsWith("S")||r.startsWith("#S")){let g=r.replace(/^#?S/,""),h=parseInt(g,10),y=this.sessionStore.getSessionSummariesByIds([h]);if(y.length===0)return{content:[{type:"text",text:`Session #${h} not found`}],isError:!0};l=y[0].created_at_epoch,c=`S${h}`,u=this.sessionStore.getTimelineAroundTimestamp(l,s,i,a)}else{let g=new Date(r);if(isNaN(g.getTime()))return{content:[{type:"text",text:`Invalid timestamp: ${r}`}],isError:!0};l=g.getTime(),c=r,u=this.sessionStore.getTimelineAroundTimestamp(l,s,i,a)}else return{content:[{type:"text",text:'Invalid anchor: must be observation ID (number), session ID (e.g., "S123"), or ISO timestamp'}],isError:!0};let p=[...(u.observations||[]).map(g=>({type:"observation",data:g,epoch:g.created_at_epoch})),...(u.sessions||[]).map(g=>({type:"session",data:g,epoch:g.created_at_epoch})),...(u.prompts||[]).map(g=>({type:"prompt",data:g,epoch:g.created_at_epoch}))];p.sort((g,h)=>g.epoch-h.epoch);let d=this.timelineService.filterByDepth(p,c,l,s,i);if(!d||d.length===0)return{content:[{type:"text",text:n?`Found observation matching "${n}", but no timeline context available (${s} records before, ${i} records after).`:`No context found around anchor (${s} records before, ${i} records after)`}]};let m=[];if(n){let g=d.find(y=>y.type==="observation"&&y.data.id===c),h=g&&g.type==="observation"?g.data.title||"Untitled":"Unknown";m.push(`# Timeline for query: "${n}"`),m.push(`**Anchor:** Observation #${c} - ${h}`)}else m.push(`# Timeline around anchor: ${c}`);m.push(`**Window:** ${s} records before -> ${i} records after | **Items:** ${d?.length??0}`),m.push("");let f=new Map;for(let g of d){let h=ms(g.epoch);f.has(h)||f.set(h,[]),f.get(h).push(g)}let v=Array.from(f.entries()).sort((g,h)=>{let y=new Date(g[0]).getTime(),b=new Date(h[0]).getTime();return y-b});for(let[g,h]of v){m.push(`### ${g}`),m.push("");let y=null,b="",x=!1;for(let w of h){let S=typeof c=="number"&&w.type==="observation"&&w.data.id===c||typeof c=="string"&&c.startsWith("S")&&w.type==="session"&&`S${w.data.id}`===c;if(w.type==="session"){x&&(m.push(""),x=!1,y=null,b="");let E=w.data,k=E.request||"Session summary",$=S?" <- **ANCHOR**":"";m.push(`**\u{1F3AF} #S${E.id}** ${k} (${an(w.epoch)})${$}`),m.push("")}else if(w.type==="prompt"){x&&(m.push(""),x=!1,y=null,b="");let E=w.data,k=E.prompt_text.length>100?E.prompt_text.substring(0,100)+"...":E.prompt_text;m.push(`**\u{1F4AC} User Prompt #${E.prompt_number}** (${an(w.epoch)})`),m.push(`> ${k}`),m.push("")}else if(w.type==="observation"){let E=w.data,k=$n(E.files_modified,o,E.files_read);k!==y&&(x&&m.push(""),m.push(`**${k}**`),m.push("| ID | Time | T | Title | Tokens |"),m.push("|----|------|---|-------|--------|"),y=k,x=!0,b="");let $=Ue.getInstance().getTypeIcon(E.type),j=br(w.epoch),I=E.title||"Untitled",q=ao(E.narrative),Z=j!==b?j:'"';b=j;let W=S?" <- **ANCHOR**":"";m.push(`| #${E.id} | ${Z} | ${$} | ${I}${W} | ~${q} |`)}}x&&m.push("")}return{content:[{type:"text",text:m.join(` `)}]}}async decisions(e){let r=this.normalizeParams(e),{query:n,...s}=r,i=[];if(this.vectorSync)try{if(n){_.debug("SEARCH","Using Chroma semantic search with type=decision filter",{});let l=(await this.queryVector(n,Math.min((s.limit||20)*2,100),{type:"decision"})).ids;l.length>0&&(i=this.sessionStore.getObservationsByIds(l,{...s,type:"decision"}),i.sort((u,p)=>l.indexOf(u.id)-l.indexOf(p.id)))}else{_.debug("SEARCH","Using metadata-first + semantic ranking for decisions",{});let c=this.sessionSearch.findByType("decision",s);if(c.length>0){let l=c.map(d=>d.id),u=await this.queryVector("decision",Math.min(l.length,100)),p=[];for(let d of u.ids)l.includes(d)&&!p.includes(d)&&p.push(d);p.length>0&&(i=this.sessionStore.getObservationsByIds(p,{limit:s.limit||20}),i.sort((d,m)=>p.indexOf(d.id)-p.indexOf(m.id)))}}}catch(c){_.error("SEARCH","Chroma search failed for decisions, falling back to metadata search",{},c)}if(i.length===0&&(i=this.sessionSearch.findByType("decision",s)),i.length===0)return{content:[{type:"text",text:"No decision observations found"}]};let a=`Found ${i.length} decision(s) ${this.formatter.formatTableHeader()}`,o=i.map((c,l)=>this.formatter.formatObservationIndex(c,l));return{content:[{type:"text",text:a+` @@ -1373,18 +1373,18 @@ ${this.formatter.formatTableHeader()}`,o=i.map((c,l)=>this.formatter.formatUserP ${this.formatter.formatTableHeader()}`,o=i.map((c,l)=>this.formatter.formatObservationIndex(c,l));return{content:[{type:"text",text:a+` `+o.join(` -`)}]}}async findByFile(e){let r=this.normalizeParams(e),{files:n,...s}=r,i=Array.isArray(n)?n[0]:n,a=[],o=[];if(this.vectorSync){_.debug("SEARCH","Using metadata-first + semantic ranking for file search",{});let d=this.sessionSearch.findByFile(i,s);if(_.debug("SEARCH","Found results for file",{file:i,observations:d.observations.length,sessions:d.sessions.length}),o=d.sessions,d.observations.length>0){let m=d.observations.map(g=>g.id),f=await this.queryVector(i,Math.min(m.length,100)),v=[];for(let g of f.ids)m.includes(g)&&!v.includes(g)&&v.push(g);_.debug("SEARCH","Chroma ranked observations by semantic relevance",{count:v.length}),v.length>0&&(a=this.sessionStore.getObservationsByIds(v,{limit:s.limit||20}),a.sort((g,h)=>v.indexOf(g.id)-v.indexOf(h.id)))}}if(a.length===0&&o.length===0){_.debug("SEARCH","Using SQLite-only file search",{});let d=this.sessionSearch.findByFile(i,s);a=d.observations,o=d.sessions}let c=a.length+o.length;if(c===0)return{content:[{type:"text",text:`No results found for file "${i}"`}]};let l=[...a.map(d=>({type:"observation",data:d,epoch:d.created_at_epoch,created_at:d.created_at})),...o.map(d=>({type:"session",data:d,epoch:d.created_at_epoch,created_at:d.created_at}))];l.sort((d,m)=>m.epoch-d.epoch);let u=Di(l,d=>d.created_at),p=[];p.push(`Found ${c} result(s) for file "${i}"`),p.push("");for(let[d,m]of u){p.push(`### ${d}`),p.push(""),p.push(this.formatter.formatTableHeader());for(let f of m)f.type==="observation"?p.push(this.formatter.formatObservationIndex(f.data,0)):p.push(this.formatter.formatSessionIndex(f.data,0));p.push("")}return{content:[{type:"text",text:p.join(` +`)}]}}async findByFile(e){let r=this.normalizeParams(e),{files:n,...s}=r,i=Array.isArray(n)?n[0]:n,a=[],o=[];if(this.vectorSync){_.debug("SEARCH","Using metadata-first + semantic ranking for file search",{});let d=this.sessionSearch.findByFile(i,s);if(_.debug("SEARCH","Found results for file",{file:i,observations:d.observations.length,sessions:d.sessions.length}),o=d.sessions,d.observations.length>0){let m=d.observations.map(g=>g.id),f=await this.queryVector(i,Math.min(m.length,100)),v=[];for(let g of f.ids)m.includes(g)&&!v.includes(g)&&v.push(g);_.debug("SEARCH","Chroma ranked observations by semantic relevance",{count:v.length}),v.length>0&&(a=this.sessionStore.getObservationsByIds(v,{limit:s.limit||20}),a.sort((g,h)=>v.indexOf(g.id)-v.indexOf(h.id)))}}if(a.length===0&&o.length===0){_.debug("SEARCH","Using SQLite-only file search",{});let d=this.sessionSearch.findByFile(i,s);a=d.observations,o=d.sessions}let c=a.length+o.length;if(c===0)return{content:[{type:"text",text:`No results found for file "${i}"`}]};let l=[...a.map(d=>({type:"observation",data:d,epoch:d.created_at_epoch,created_at:d.created_at})),...o.map(d=>({type:"session",data:d,epoch:d.created_at_epoch,created_at:d.created_at}))];l.sort((d,m)=>m.epoch-d.epoch);let u=Mi(l,d=>d.created_at),p=[];p.push(`Found ${c} result(s) for file "${i}"`),p.push("");for(let[d,m]of u){p.push(`### ${d}`),p.push(""),p.push(this.formatter.formatTableHeader());for(let f of m)f.type==="observation"?p.push(this.formatter.formatObservationIndex(f.data,0)):p.push(this.formatter.formatSessionIndex(f.data,0));p.push("")}return{content:[{type:"text",text:p.join(` `)}]}}async findByType(e){let r=this.normalizeParams(e),{type:n,...s}=r,i=Array.isArray(n)?n.join(", "):n,a=[];if(this.vectorSync){_.debug("SEARCH","Using metadata-first + semantic ranking for type search",{});let l=this.sessionSearch.findByType(n,s);if(_.debug("SEARCH","Found observations with type",{type:i,count:l.length}),l.length>0){let u=l.map(m=>m.id),p=await this.queryVector(i,Math.min(u.length,100)),d=[];for(let m of p.ids)u.includes(m)&&!d.includes(m)&&d.push(m);_.debug("SEARCH","Chroma ranked results by semantic relevance",{count:d.length}),d.length>0&&(a=this.sessionStore.getObservationsByIds(d,{limit:s.limit||20}),a.sort((m,f)=>d.indexOf(m.id)-d.indexOf(f.id)))}}if(a.length===0&&(_.debug("SEARCH","Using SQLite-only type search",{}),a=this.sessionSearch.findByType(n,s)),a.length===0)return{content:[{type:"text",text:`No observations found with type "${i}"`}]};let o=`Found ${a.length} observation(s) with type "${i}" ${this.formatter.formatTableHeader()}`,c=a.map((l,u)=>this.formatter.formatObservationIndex(l,u));return{content:[{type:"text",text:o+` `+c.join(` -`)}]}}async getRecentContext(e){let r=e.project||(0,q2.basename)(process.cwd()),n=e.limit||3,s=this.sessionStore.getRecentSessionsWithStatus(r,n);if(s.length===0)return{content:[{type:"text",text:`# Recent Session Context +`)}]}}async getRecentContext(e){let r=e.project||(0,Z2.basename)(process.cwd()),n=e.limit||3,s=this.sessionStore.getRecentSessionsWithStatus(r,n);if(s.length===0)return{content:[{type:"text",text:`# Recent Session Context No previous sessions found for project "${r}".`}]};let i=[];i.push("# Recent Session Context"),i.push(""),i.push(`Showing last ${s.length} session(s) for **${r}**:`),i.push("");for(let a of s)if(a.memory_session_id){if(i.push("---"),i.push(""),a.has_summary){let o=this.sessionStore.getSummaryForSession(a.memory_session_id);if(o){let c=o.prompt_number?` (Prompt #${o.prompt_number})`:"";if(i.push(`**Summary${c}**`),i.push(""),o.request&&i.push(`**Request:** ${o.request}`),o.completed&&i.push(`**Completed:** ${o.completed}`),o.learned&&i.push(`**Learned:** ${o.learned}`),o.next_steps&&i.push(`**Next Steps:** ${o.next_steps}`),o.files_read)try{let u=JSON.parse(o.files_read);Array.isArray(u)&&u.length>0&&i.push(`**Files Read:** ${u.join(", ")}`)}catch(u){_.debug("WORKER","files_read is plain string, using as-is",{},u),o.files_read.trim()&&i.push(`**Files Read:** ${o.files_read}`)}if(o.files_edited)try{let u=JSON.parse(o.files_edited);Array.isArray(u)&&u.length>0&&i.push(`**Files Edited:** ${u.join(", ")}`)}catch(u){_.debug("WORKER","files_edited is plain string, using as-is",{},u),o.files_edited.trim()&&i.push(`**Files Edited:** ${o.files_edited}`)}let l=new Date(o.created_at).toLocaleString();i.push(`**Date:** ${l}`)}}else if(a.status==="active"){i.push("**In Progress**"),i.push(""),a.user_prompt&&i.push(`**Request:** ${a.user_prompt}`);let o=this.sessionStore.getObservationsForSession(a.memory_session_id);if(o.length>0){i.push(""),i.push(`**Observations (${o.length}):**`);for(let l of o)i.push(`- ${l.title}`)}else i.push(""),i.push("*No observations yet*");i.push(""),i.push("**Status:** Active - summary pending");let c=new Date(a.started_at).toLocaleString();i.push(`**Date:** ${c}`)}else{i.push(`**${a.status.charAt(0).toUpperCase()+a.status.slice(1)}**`),i.push(""),a.user_prompt&&i.push(`**Request:** ${a.user_prompt}`),i.push(""),i.push(`**Status:** ${a.status} - no summary available`);let o=new Date(a.started_at).toLocaleString();i.push(`**Date:** ${o}`)}i.push("")}return{content:[{type:"text",text:i.join(` -`)}]}}async getContextTimeline(e){let{anchor:r,depth_before:n=10,depth_after:s=10,project:i}=e,a=process.cwd(),o,c=r,l;if(typeof r=="number"){let v=this.sessionStore.getObservationById(r);if(!v)return{content:[{type:"text",text:`Observation #${r} not found`}],isError:!0};o=v.created_at_epoch,l=this.sessionStore.getTimelineAroundObservation(r,o,n,s,i)}else if(typeof r=="string")if(r.startsWith("S")||r.startsWith("#S")){let v=r.replace(/^#?S/,""),g=parseInt(v,10),h=this.sessionStore.getSessionSummariesByIds([g]);if(h.length===0)return{content:[{type:"text",text:`Session #${g} not found`}],isError:!0};o=h[0].created_at_epoch,c=`S${g}`,l=this.sessionStore.getTimelineAroundTimestamp(o,n,s,i)}else{let v=new Date(r);if(isNaN(v.getTime()))return{content:[{type:"text",text:`Invalid timestamp: ${r}`}],isError:!0};o=v.getTime(),l=this.sessionStore.getTimelineAroundTimestamp(o,n,s,i)}else return{content:[{type:"text",text:'Invalid anchor: must be observation ID (number), session ID (e.g., "S123"), or ISO timestamp'}],isError:!0};let u=[...l.observations.map(v=>({type:"observation",data:v,epoch:v.created_at_epoch})),...l.sessions.map(v=>({type:"session",data:v,epoch:v.created_at_epoch})),...l.prompts.map(v=>({type:"prompt",data:v,epoch:v.created_at_epoch}))];u.sort((v,g)=>v.epoch-g.epoch);let p=this.timelineService.filterByDepth(u,c,o,n,s);if(!p||p.length===0)return{content:[{type:"text",text:`No context found around ${new Date(o).toLocaleString()} (${n} records before, ${s} records after)`}]};let d=[];d.push(`# Timeline around anchor: ${c}`),d.push(`**Window:** ${n} records before -> ${s} records after | **Items:** ${p?.length??0}`),d.push("");let m=new Map;for(let v of p){let g=ms(v.epoch);m.has(g)||m.set(g,[]),m.get(g).push(v)}let f=Array.from(m.entries()).sort((v,g)=>{let h=new Date(v[0]).getTime(),y=new Date(g[0]).getTime();return h-y});for(let[v,g]of f){d.push(`### ${v}`),d.push("");let h=null,y="",b=!1;for(let x of g){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"){b&&(d.push(""),b=!1,h=null,y="");let S=x.data,E=S.request||"Session summary",k=w?" <- **ANCHOR**":"";d.push(`**\u{1F3AF} #S${S.id}** ${E} (${an(x.epoch)})${k}`),d.push("")}else if(x.type==="prompt"){b&&(d.push(""),b=!1,h=null,y="");let S=x.data,E=S.prompt_text.length>100?S.prompt_text.substring(0,100)+"...":S.prompt_text;d.push(`**\u{1F4AC} User Prompt #${S.prompt_number}** (${an(x.epoch)})`),d.push(`> ${E}`),d.push("")}else if(x.type==="observation"){let S=x.data,E=$n(S.files_modified,a,S.files_read);E!==h&&(b&&d.push(""),d.push(`**${E}**`),d.push("| ID | Time | T | Title | Tokens |"),d.push("|----|------|---|-------|--------|"),h=E,b=!0,y="");let k=Ue.getInstance().getTypeIcon(S.type),$=br(x.epoch),j=S.title||"Untitled",I=io(S.narrative),H=$!==y?$:'"';y=$;let Z=w?" <- **ANCHOR**":"";d.push(`| #${S.id} | ${H} | ${k} | ${j}${Z} | ~${I} |`)}}b&&d.push("")}return{content:[{type:"text",text:d.join(` +`)}]}}async getContextTimeline(e){let{anchor:r,depth_before:n=10,depth_after:s=10,project:i}=e,a=process.cwd(),o,c=r,l;if(typeof r=="number"){let v=this.sessionStore.getObservationById(r);if(!v)return{content:[{type:"text",text:`Observation #${r} not found`}],isError:!0};o=v.created_at_epoch,l=this.sessionStore.getTimelineAroundObservation(r,o,n,s,i)}else if(typeof r=="string")if(r.startsWith("S")||r.startsWith("#S")){let v=r.replace(/^#?S/,""),g=parseInt(v,10),h=this.sessionStore.getSessionSummariesByIds([g]);if(h.length===0)return{content:[{type:"text",text:`Session #${g} not found`}],isError:!0};o=h[0].created_at_epoch,c=`S${g}`,l=this.sessionStore.getTimelineAroundTimestamp(o,n,s,i)}else{let v=new Date(r);if(isNaN(v.getTime()))return{content:[{type:"text",text:`Invalid timestamp: ${r}`}],isError:!0};o=v.getTime(),l=this.sessionStore.getTimelineAroundTimestamp(o,n,s,i)}else return{content:[{type:"text",text:'Invalid anchor: must be observation ID (number), session ID (e.g., "S123"), or ISO timestamp'}],isError:!0};let u=[...l.observations.map(v=>({type:"observation",data:v,epoch:v.created_at_epoch})),...l.sessions.map(v=>({type:"session",data:v,epoch:v.created_at_epoch})),...l.prompts.map(v=>({type:"prompt",data:v,epoch:v.created_at_epoch}))];u.sort((v,g)=>v.epoch-g.epoch);let p=this.timelineService.filterByDepth(u,c,o,n,s);if(!p||p.length===0)return{content:[{type:"text",text:`No context found around ${new Date(o).toLocaleString()} (${n} records before, ${s} records after)`}]};let d=[];d.push(`# Timeline around anchor: ${c}`),d.push(`**Window:** ${n} records before -> ${s} records after | **Items:** ${p?.length??0}`),d.push("");let m=new Map;for(let v of p){let g=ms(v.epoch);m.has(g)||m.set(g,[]),m.get(g).push(v)}let f=Array.from(m.entries()).sort((v,g)=>{let h=new Date(v[0]).getTime(),y=new Date(g[0]).getTime();return h-y});for(let[v,g]of f){d.push(`### ${v}`),d.push("");let h=null,y="",b=!1;for(let x of g){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"){b&&(d.push(""),b=!1,h=null,y="");let S=x.data,E=S.request||"Session summary",k=w?" <- **ANCHOR**":"";d.push(`**\u{1F3AF} #S${S.id}** ${E} (${an(x.epoch)})${k}`),d.push("")}else if(x.type==="prompt"){b&&(d.push(""),b=!1,h=null,y="");let S=x.data,E=S.prompt_text.length>100?S.prompt_text.substring(0,100)+"...":S.prompt_text;d.push(`**\u{1F4AC} User Prompt #${S.prompt_number}** (${an(x.epoch)})`),d.push(`> ${E}`),d.push("")}else if(x.type==="observation"){let S=x.data,E=$n(S.files_modified,a,S.files_read);E!==h&&(b&&d.push(""),d.push(`**${E}**`),d.push("| ID | Time | T | Title | Tokens |"),d.push("|----|------|---|-------|--------|"),h=E,b=!0,y="");let k=Ue.getInstance().getTypeIcon(S.type),$=br(x.epoch),j=S.title||"Untitled",I=ao(S.narrative),H=$!==y?$:'"';y=$;let Z=w?" <- **ANCHOR**":"";d.push(`| #${S.id} | ${H} | ${k} | ${j}${Z} | ~${I} |`)}}b&&d.push("")}return{content:[{type:"text",text:d.join(` `)}]}}async getTimelineByQuery(e){let{query:r,mode:n="auto",depth_before:s=10,depth_after:i=10,limit:a=5,project:o}=e,c=process.cwd(),l=[];if(this.vectorSync){_.debug("SEARCH","Using hybrid semantic search for timeline query",{});let u=await this.queryVector(r,100);if(_.debug("SEARCH","Chroma returned semantic matches for timeline",{matchCount:u.ids.length}),u.ids.length>0){let p=Date.now()-mt.RECENCY_WINDOW_MS,d=u.ids.filter((m,f)=>{let v=u.metadatas[f];return v&&v.created_at_epoch>p});_.debug("SEARCH","Results within 90-day window",{count:d.length}),d.length>0&&(l=this.sessionStore.getObservationsByIds(d,{orderBy:"date_desc",limit:n==="auto"?1:a}),_.debug("SEARCH","Hydrated observations from SQLite",{count:l.length}))}}if(l.length===0)return{content:[{type:"text",text:`No observations found matching "${r}". Try a different search query.`}]};if(n==="interactive"){let u=[];u.push("# Timeline Anchor Search Results"),u.push(""),u.push(`Found ${l.length} observation(s) matching "${r}"`),u.push(""),u.push("To get timeline context around any of these observations, use the `get_context_timeline` tool with the observation ID as the anchor."),u.push(""),u.push(`**Top ${l.length} matches:**`),u.push("");for(let p=0;p({type:"observation",data:h,epoch:h.created_at_epoch})),...(p.sessions||[]).map(h=>({type:"session",data:h,epoch:h.created_at_epoch})),...(p.prompts||[]).map(h=>({type:"prompt",data:h,epoch:h.created_at_epoch}))];d.sort((h,y)=>h.epoch-y.epoch);let m=this.timelineService.filterByDepth(d,u.id,0,s,i);if(!m||m.length===0)return{content:[{type:"text",text:`Found observation #${u.id} matching "${r}", but no timeline context available (${s} records before, ${i} records after).`}]};let f=[];f.push(`# Timeline for query: "${r}"`),f.push(`**Anchor:** Observation #${u.id} - ${u.title||"Untitled"}`),f.push(`**Window:** ${s} records before -> ${i} records after | **Items:** ${m?.length??0}`),f.push("");let v=new Map;for(let h of m){let y=ms(h.epoch);v.has(y)||v.set(y,[]),v.get(y).push(h)}let g=Array.from(v.entries()).sort((h,y)=>{let b=new Date(h[0]).getTime(),x=new Date(y[0]).getTime();return b-x});for(let[h,y]of g){f.push(`### ${h}`),f.push("");let b=null,x="",w=!1;for(let S of y){let E=S.type==="observation"&&S.data.id===u.id;if(S.type==="session"){w&&(f.push(""),w=!1,b=null,x="");let k=S.data,$=k.request||"Session summary";f.push(`**\u{1F3AF} #S${k.id}** ${$} (${an(S.epoch)})`),f.push("")}else if(S.type==="prompt"){w&&(f.push(""),w=!1,b=null,x="");let k=S.data,$=k.prompt_text.length>100?k.prompt_text.substring(0,100)+"...":k.prompt_text;f.push(`**\u{1F4AC} User Prompt #${k.prompt_number}** (${an(S.epoch)})`),f.push(`> ${$}`),f.push("")}else if(S.type==="observation"){let k=S.data,$=$n(k.files_modified,c,k.files_read);$!==b&&(w&&f.push(""),f.push(`**${$}**`),f.push("| ID | Time | T | Title | Tokens |"),f.push("|----|------|---|-------|--------|"),b=$,w=!0,x="");let j=Ue.getInstance().getTypeIcon(k.type),I=br(S.epoch),q=k.title||"Untitled",H=io(k.narrative),W=I!==x?I:'"';x=I;let we=E?" <- **ANCHOR**":"";f.push(`| #${k.id} | ${W} | ${j} | ${q}${we} | ~${H} |`)}}w&&f.push("")}return{content:[{type:"text",text:f.join(` -`)}]}}}};sn();var ape=4,wf=class{formatSearchTips(){return` +`)}]}}else{let u=l[0];_.debug("SEARCH","Auto mode: Using observation as timeline anchor",{observationId:u.id});let p=this.sessionStore.getTimelineAroundObservation(u.id,u.created_at_epoch,s,i,o),d=[...(p.observations||[]).map(h=>({type:"observation",data:h,epoch:h.created_at_epoch})),...(p.sessions||[]).map(h=>({type:"session",data:h,epoch:h.created_at_epoch})),...(p.prompts||[]).map(h=>({type:"prompt",data:h,epoch:h.created_at_epoch}))];d.sort((h,y)=>h.epoch-y.epoch);let m=this.timelineService.filterByDepth(d,u.id,0,s,i);if(!m||m.length===0)return{content:[{type:"text",text:`Found observation #${u.id} matching "${r}", but no timeline context available (${s} records before, ${i} records after).`}]};let f=[];f.push(`# Timeline for query: "${r}"`),f.push(`**Anchor:** Observation #${u.id} - ${u.title||"Untitled"}`),f.push(`**Window:** ${s} records before -> ${i} records after | **Items:** ${m?.length??0}`),f.push("");let v=new Map;for(let h of m){let y=ms(h.epoch);v.has(y)||v.set(y,[]),v.get(y).push(h)}let g=Array.from(v.entries()).sort((h,y)=>{let b=new Date(h[0]).getTime(),x=new Date(y[0]).getTime();return b-x});for(let[h,y]of g){f.push(`### ${h}`),f.push("");let b=null,x="",w=!1;for(let S of y){let E=S.type==="observation"&&S.data.id===u.id;if(S.type==="session"){w&&(f.push(""),w=!1,b=null,x="");let k=S.data,$=k.request||"Session summary";f.push(`**\u{1F3AF} #S${k.id}** ${$} (${an(S.epoch)})`),f.push("")}else if(S.type==="prompt"){w&&(f.push(""),w=!1,b=null,x="");let k=S.data,$=k.prompt_text.length>100?k.prompt_text.substring(0,100)+"...":k.prompt_text;f.push(`**\u{1F4AC} User Prompt #${k.prompt_number}** (${an(S.epoch)})`),f.push(`> ${$}`),f.push("")}else if(S.type==="observation"){let k=S.data,$=$n(k.files_modified,c,k.files_read);$!==b&&(w&&f.push(""),f.push(`**${$}**`),f.push("| ID | Time | T | Title | Tokens |"),f.push("|----|------|---|-------|--------|"),b=$,w=!0,x="");let j=Ue.getInstance().getTypeIcon(k.type),I=br(S.epoch),q=k.title||"Untitled",H=ao(k.narrative),W=I!==x?I:'"';x=I;let we=E?" <- **ANCHOR**":"";f.push(`| #${k.id} | ${W} | ${j} | ${q}${we} | ~${H} |`)}}w&&f.push("")}return{content:[{type:"text",text:f.join(` +`)}]}}}};sn();var mpe=4,Ef=class{formatSearchTips(){return` --- \u{1F4A1} Search Strategy: 1. Search with index to see titles, dates, IDs @@ -1394,23 +1394,23 @@ No previous sessions found for project "${r}".`}]};let i=[];i.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/ape)}formatObservationIndex(e,r){let n=`#${e.id}`,s=this.formatTime(e.created_at_epoch),i=Ue.getInstance().getTypeIcon(e.type),a=e.title||"Untitled",o=this.estimateReadTokens(e),c=Ue.getInstance().getWorkEmoji(e.type),l=e.discovery_tokens||0,u=l>0?`${c} ${l}`:"-";return`| ${n} | ${s} | ${i} | ${a} | ~${o} | ${u} |`}formatSessionIndex(e,r){let n=`#S${e.id}`,s=this.formatTime(e.created_at_epoch),i="\u{1F3AF}",a=e.request||`Session ${e.memory_session_id?.substring(0,8)||"unknown"}`;return`| ${n} | ${s} | ${i} | ${a} | - | - |`}formatUserPromptIndex(e,r){let n=`#P${e.id}`,s=this.formatTime(e.created_at_epoch),i="\u{1F4AC}",a=e.prompt_text.length>60?e.prompt_text.substring(0,57)+"...":e.prompt_text;return`| ${n} | ${s} | ${i} | ${a} | - | - |`}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/mpe)}formatObservationIndex(e,r){let n=`#${e.id}`,s=this.formatTime(e.created_at_epoch),i=Ue.getInstance().getTypeIcon(e.type),a=e.title||"Untitled",o=this.estimateReadTokens(e),c=Ue.getInstance().getWorkEmoji(e.type),l=e.discovery_tokens||0,u=l>0?`${c} ${l}`:"-";return`| ${n} | ${s} | ${i} | ${a} | ~${o} | ${u} |`}formatSessionIndex(e,r){let n=`#S${e.id}`,s=this.formatTime(e.created_at_epoch),i="\u{1F3AF}",a=e.request||`Session ${e.memory_session_id?.substring(0,8)||"unknown"}`;return`| ${n} | ${s} | ${i} | ${a} | - | - |`}formatUserPromptIndex(e,r){let n=`#P${e.id}`,s=this.formatTime(e.created_at_epoch),i="\u{1F4AC}",a=e.prompt_text.length>60?e.prompt_text.substring(0,57)+"...":e.prompt_text;return`| ${n} | ${s} | ${i} | ${a} | - | - |`}formatTableHeader(){return`| ID | Time | T | Title | Read | Work | |-----|------|---|-------|------|------|`}formatSearchTableHeader(){return`| ID | Time | T | Title | Read | -|----|------|---|-------|------|`}formatObservationSearchRow(e,r){let n=`#${e.id}`,s=this.formatTime(e.created_at_epoch),i=Ue.getInstance().getTypeIcon(e.type),a=e.title||"Untitled",o=this.estimateReadTokens(e);return{row:`| ${n} | ${s===r?"\u2033":s} | ${i} | ${a} | ~${o} |`,time:s}}formatSessionSearchRow(e,r){let n=`#S${e.id}`,s=this.formatTime(e.created_at_epoch),i="\u{1F3AF}",a=e.request||`Session ${e.memory_session_id?.substring(0,8)||"unknown"}`;return{row:`| ${n} | ${s===r?"\u2033":s} | ${i} | ${a} | - |`,time:s}}formatUserPromptSearchRow(e,r){let n=`#P${e.id}`,s=this.formatTime(e.created_at_epoch),i="\u{1F4AC}",a=e.prompt_text.length>60?e.prompt_text.substring(0,57)+"...":e.prompt_text;return{row:`| ${n} | ${s===r?"\u2033":s} | ${i} | ${a} | - |`,time:s}}};sn();var Sf=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,s)=>n.epoch-s.epoch),r}filterByDepth(e,r,n,s,i){if(e.length===0)return e;let a=-1;if(typeof r=="number")a=e.findIndex(l=>l.type==="observation"&&l.data.id===r);else if(typeof r=="string"&&r.startsWith("S")){let l=parseInt(r.slice(1),10);a=e.findIndex(u=>u.type==="session"&&u.data.id===l)}else a=e.findIndex(l=>l.epoch>=n),a===-1&&(a=e.length-1);if(a===-1)return e;let o=Math.max(0,a-s),c=Math.min(e.length,a+i+1);return e.slice(o,c)}formatTimeline(e,r,n,s,i){if(e.length===0)return n?`Found observation matching "${n}", but no timeline context available.`:"No timeline items found";let a=[];if(n&&r){let l=e.find(p=>p.type==="observation"&&p.data.id===r),u=l?l.data.title||"Untitled":"Unknown";a.push(`# Timeline for query: "${n}"`),a.push(`**Anchor:** Observation #${r} - ${u}`)}else r?a.push(`# Timeline around anchor: ${r}`):a.push("# Timeline");s!==void 0&&i!==void 0?a.push(`**Window:** ${s} records before \u2192 ${i} records after | **Items:** ${e.length}`):a.push(`**Items:** ${e.length}`),a.push(""),a.push("**Legend:** \u{1F3AF} session-request | \u{1F534} bugfix | \u{1F7E3} feature | \u{1F504} refactor | \u2705 change | \u{1F535} discovery | \u{1F9E0} decision"),a.push("");let o=new Map;for(let l of e){let u=this.formatDate(l.epoch);o.has(u)||o.set(u,[]),o.get(u).push(l)}let c=Array.from(o.entries()).sort((l,u)=>{let p=new Date(l[0]).getTime(),d=new Date(u[0]).getTime();return p-d});for(let[l,u]of c){a.push(`### ${l}`),a.push("");let p=null,d="",m=!1;for(let f of u){let v=typeof r=="number"&&f.type==="observation"&&f.data.id===r||typeof r=="string"&&r.startsWith("S")&&f.type==="session"&&`S${f.data.id}`===r;if(f.type==="session"){m&&(a.push(""),m=!1,p=null,d="");let g=f.data,h=g.request||"Session summary",y=v?" \u2190 **ANCHOR**":"";a.push(`**\u{1F3AF} #S${g.id}** ${h} (${this.formatDateTime(f.epoch)})${y}`),a.push("")}else if(f.type==="prompt"){m&&(a.push(""),m=!1,p=null,d="");let g=f.data,h=g.prompt_text.length>100?g.prompt_text.substring(0,100)+"...":g.prompt_text;a.push(`**\u{1F4AC} User Prompt #${g.prompt_number}** (${this.formatDateTime(f.epoch)})`),a.push(`> ${h}`),a.push("")}else if(f.type==="observation"){let g=f.data,h="General";h!==p&&(m&&a.push(""),a.push(`**${h}**`),a.push("| ID | Time | T | Title | Tokens |"),a.push("|----|------|---|-------|--------|"),p=h,m=!0,d="");let y=this.getTypeIcon(g.type),b=this.formatTime(f.epoch),x=g.title||"Untitled",w=this.estimateTokens(g.narrative),E=b!==d?b:"\u2033";d=b;let k=v?" \u2190 **ANCHOR**":"";a.push(`| #${g.id} | ${E} | ${y} | ${x}${k} | ~${w} |`)}}m&&a.push("")}return a.join(` -`)}getTypeIcon(e){return Ue.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 Ef=class{constructor(e,r){this.sseBroadcaster=e;this.workerService=r}broadcastNewPrompt(e){this.sseBroadcaster.broadcast({type:"new_prompt",prompt:e}),this.sseBroadcaster.broadcast({type:"processing_status",isProcessing:!0}),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 W2=pe(Kl(),1),Tf=pe(require("path"),1),$u=require("fs");se();yr();se();var ze=class{wrapHandler(e){return(r,n)=>{n.setHeader?.("Cache-Control","no-store");try{let s=e(r,n);s instanceof Promise&&s.catch(i=>this.handleError(n,i))}catch(s){_.error("HTTP","Route handler error",{path:r.path},s),this.handleError(n,s)}}}parseIntParam(e,r,n){let s=parseInt(e.params[n],10);return isNaN(s)?(this.badRequest(r,`Invalid ${n}`),null):s}validateRequired(e,r,n){for(let s of n)if(e.body[s]===void 0||e.body[s]===null)return this.badRequest(r,`Missing ${s}`),!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})}};function b0(t,e,r,n){let s=new Date().toISOString();return t.prepare(`INSERT INTO session_plans (session_db_id, plan_path, plan_status, created_at, updated_at) +|----|------|---|-------|------|`}formatObservationSearchRow(e,r){let n=`#${e.id}`,s=this.formatTime(e.created_at_epoch),i=Ue.getInstance().getTypeIcon(e.type),a=e.title||"Untitled",o=this.estimateReadTokens(e);return{row:`| ${n} | ${s===r?"\u2033":s} | ${i} | ${a} | ~${o} |`,time:s}}formatSessionSearchRow(e,r){let n=`#S${e.id}`,s=this.formatTime(e.created_at_epoch),i="\u{1F3AF}",a=e.request||`Session ${e.memory_session_id?.substring(0,8)||"unknown"}`;return{row:`| ${n} | ${s===r?"\u2033":s} | ${i} | ${a} | - |`,time:s}}formatUserPromptSearchRow(e,r){let n=`#P${e.id}`,s=this.formatTime(e.created_at_epoch),i="\u{1F4AC}",a=e.prompt_text.length>60?e.prompt_text.substring(0,57)+"...":e.prompt_text;return{row:`| ${n} | ${s===r?"\u2033":s} | ${i} | ${a} | - |`,time:s}}};sn();var kf=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,s)=>n.epoch-s.epoch),r}filterByDepth(e,r,n,s,i){if(e.length===0)return e;let a=-1;if(typeof r=="number")a=e.findIndex(l=>l.type==="observation"&&l.data.id===r);else if(typeof r=="string"&&r.startsWith("S")){let l=parseInt(r.slice(1),10);a=e.findIndex(u=>u.type==="session"&&u.data.id===l)}else a=e.findIndex(l=>l.epoch>=n),a===-1&&(a=e.length-1);if(a===-1)return e;let o=Math.max(0,a-s),c=Math.min(e.length,a+i+1);return e.slice(o,c)}formatTimeline(e,r,n,s,i){if(e.length===0)return n?`Found observation matching "${n}", but no timeline context available.`:"No timeline items found";let a=[];if(n&&r){let l=e.find(p=>p.type==="observation"&&p.data.id===r),u=l?l.data.title||"Untitled":"Unknown";a.push(`# Timeline for query: "${n}"`),a.push(`**Anchor:** Observation #${r} - ${u}`)}else r?a.push(`# Timeline around anchor: ${r}`):a.push("# Timeline");s!==void 0&&i!==void 0?a.push(`**Window:** ${s} records before \u2192 ${i} records after | **Items:** ${e.length}`):a.push(`**Items:** ${e.length}`),a.push(""),a.push("**Legend:** \u{1F3AF} session-request | \u{1F534} bugfix | \u{1F7E3} feature | \u{1F504} refactor | \u2705 change | \u{1F535} discovery | \u{1F9E0} decision"),a.push("");let o=new Map;for(let l of e){let u=this.formatDate(l.epoch);o.has(u)||o.set(u,[]),o.get(u).push(l)}let c=Array.from(o.entries()).sort((l,u)=>{let p=new Date(l[0]).getTime(),d=new Date(u[0]).getTime();return p-d});for(let[l,u]of c){a.push(`### ${l}`),a.push("");let p=null,d="",m=!1;for(let f of u){let v=typeof r=="number"&&f.type==="observation"&&f.data.id===r||typeof r=="string"&&r.startsWith("S")&&f.type==="session"&&`S${f.data.id}`===r;if(f.type==="session"){m&&(a.push(""),m=!1,p=null,d="");let g=f.data,h=g.request||"Session summary",y=v?" \u2190 **ANCHOR**":"";a.push(`**\u{1F3AF} #S${g.id}** ${h} (${this.formatDateTime(f.epoch)})${y}`),a.push("")}else if(f.type==="prompt"){m&&(a.push(""),m=!1,p=null,d="");let g=f.data,h=g.prompt_text.length>100?g.prompt_text.substring(0,100)+"...":g.prompt_text;a.push(`**\u{1F4AC} User Prompt #${g.prompt_number}** (${this.formatDateTime(f.epoch)})`),a.push(`> ${h}`),a.push("")}else if(f.type==="observation"){let g=f.data,h="General";h!==p&&(m&&a.push(""),a.push(`**${h}**`),a.push("| ID | Time | T | Title | Tokens |"),a.push("|----|------|---|-------|--------|"),p=h,m=!0,d="");let y=this.getTypeIcon(g.type),b=this.formatTime(f.epoch),x=g.title||"Untitled",w=this.estimateTokens(g.narrative),E=b!==d?b:"\u2033";d=b;let k=v?" \u2190 **ANCHOR**":"";a.push(`| #${g.id} | ${E} | ${y} | ${x}${k} | ~${w} |`)}}m&&a.push("")}return a.join(` +`)}getTypeIcon(e){return Ue.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 Tf=class{constructor(e,r){this.sseBroadcaster=e;this.workerService=r}broadcastNewPrompt(e){this.sseBroadcaster.broadcast({type:"new_prompt",prompt:e}),this.sseBroadcaster.broadcast({type:"processing_status",isProcessing:!0}),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 J2=ie(Ql(),1),$f=ie(require("path"),1),Pu=require("fs");re();yr();re();var Ae=class{wrapHandler(e){return(r,n)=>{n.setHeader?.("Cache-Control","no-store");try{let s=e(r,n);s instanceof Promise&&s.catch(i=>this.handleError(n,i))}catch(s){_.error("HTTP","Route handler error",{path:r.path},s),this.handleError(n,s)}}}parseIntParam(e,r,n){let s=parseInt(e.params[n],10);return isNaN(s)?(this.badRequest(r,`Invalid ${n}`),null):s}validateRequired(e,r,n){for(let s of n)if(e.body[s]===void 0||e.body[s]===null)return this.badRequest(r,`Missing ${s}`),!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})}};function S0(t,e,r,n){let s=new Date().toISOString();return t.prepare(`INSERT INTO session_plans (session_db_id, plan_path, plan_status, created_at, updated_at) VALUES (?, ?, ?, ?, ?) ON CONFLICT(session_db_id) DO UPDATE SET plan_path = excluded.plan_path, plan_status = excluded.plan_status, - updated_at = excluded.updated_at`).run(e,r,n,s,s),kf(t,e)}function kf(t,e){return t.prepare("SELECT * FROM session_plans WHERE session_db_id = ?").get(e)}function F2(t,e){return t.prepare(`SELECT sp.* FROM session_plans sp + updated_at = excluded.updated_at`).run(e,r,n,s,s),Rf(t,e)}function Rf(t,e){return t.prepare("SELECT * FROM session_plans WHERE session_db_id = ?").get(e)}function V2(t,e){return t.prepare(`SELECT sp.* FROM session_plans sp JOIN sdk_sessions ss ON sp.session_db_id = ss.id - WHERE ss.content_session_id = ?`).get(e)}function U2(t,e,r){let n=new Date().toISOString();t.prepare("UPDATE session_plans SET plan_status = ?, updated_at = ? WHERE session_db_id = ?").run(r,n,e)}function H2(t,e){t.prepare("DELETE FROM session_plans WHERE session_db_id = ?").run(e)}function B2(t){return t.prepare(`SELECT ss.id AS session_db_id, ss.content_session_id, ss.project, + WHERE ss.content_session_id = ?`).get(e)}function G2(t,e,r){let n=new Date().toISOString();t.prepare("UPDATE session_plans SET plan_status = ?, updated_at = ? WHERE session_db_id = ?").run(r,n,e)}function Y2(t,e){t.prepare("DELETE FROM session_plans WHERE session_db_id = ?").run(e)}function K2(t){return t.prepare(`SELECT ss.id AS session_db_id, ss.content_session_id, ss.project, ss.status, ss.started_at, sp.plan_path, sp.plan_status FROM sdk_sessions ss LEFT JOIN session_plans sp ON sp.session_db_id = ss.id WHERE ss.status = 'active' - ORDER BY ss.started_at_epoch DESC`).all()}var Rf=class extends ze{constructor(r,n,s){super();this.sseBroadcaster=r;this.dbManager=n;this.sessionManager=s}setupRoutes(r){let n=ds(),s=Tf.default.join(n,"ui");_.info("VIEWER","Setting up static file serving",{packageRoot:n,uiPath:s,exists:(0,$u.existsSync)(s)}),r.use(W2.default.static(s,{setHeaders:(i,a)=>{a.endsWith(".js")||a.endsWith(".css")?(i.setHeader("Cache-Control","no-cache, no-store, must-revalidate"),i.setHeader("Pragma","no-cache"),i.setHeader("Expires","0")):a.endsWith(".html")?i.setHeader("Cache-Control","no-cache, no-store, must-revalidate"):i.setHeader("Cache-Control","public, max-age=3600")}})),r.get("/health",this.handleHealth.bind(this)),r.get("/api/health",this.handleHealth.bind(this)),r.get("/api/version",this.handleVersion.bind(this)),r.post("/api/restart",this.handleRestart.bind(this)),r.get("/api/dashboard/sessions",this.handleDashboardSessions.bind(this)),r.get("/",this.handleViewerUI.bind(this)),r.get("/stream",this.handleSSEStream.bind(this))}handleHealth=this.wrapHandler((r,n)=>{let s=this.sessionManager.getTotalActiveWork(),i=this.sessionManager.isAnySessionProcessing();n.json({status:"ok",timestamp:Date.now(),queueDepth:s,isProcessing:i})});handleRestart=this.wrapHandler((r,n)=>{_.info("SYSTEM","Restart requested via API"),n.json({status:"restarting",message:"Worker will restart"}),setTimeout(()=>{_.info("SYSTEM","Exiting for restart..."),process.exit(0)},500)});handleVersion=this.wrapHandler((r,n)=>{let s=km();n.json({version:s})});handleViewerUI=this.wrapHandler((r,n)=>{let s=ds(),i=km(),o=[Tf.default.join(s,"ui","viewer.html"),Tf.default.join(s,"plugin","ui","viewer.html")].find(l=>(0,$u.existsSync)(l));if(!o)throw new Error("Viewer UI not found at any expected location");let c=(0,$u.readFileSync)(o,"utf-8");c=c.replace(/viewer-bundle\.js/g,`viewer-bundle.js?v=${i}`),c=c.replace(/viewer\.css/g,`viewer.css?v=${i}`),c=c.replace("",` -`),n.setHeader("Content-Type","text/html"),n.setHeader("Cache-Control","no-cache, no-store, must-revalidate"),n.setHeader("Pragma","no-cache"),n.setHeader("Expires","0"),n.send(c)});handleDashboardSessions=this.wrapHandler((r,n)=>{let s=this.dbManager.getSessionStore().db,i=B2(s);n.json({sessions:i})});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 s=this.dbManager.getSessionStore().getAllProjects();this.sseBroadcaster.broadcast({type:"initial_load",projects:s,timestamp:Date.now()});let i=this.sessionManager.isAnySessionProcessing(),a=this.sessionManager.getTotalActiveWork();this.sseBroadcaster.broadcast({type:"processing_status",isProcessing:i,queueDepth:a})})};_n();se();se();var Z2=100;function ope(t){let e=(t.match(//g)||[]).length,r=(t.match(//g)||[]).length;return e+r}function V2(t){let e=ope(t);return e>Z2&&_.warn("SYSTEM","tag count exceeds limit",void 0,{tagCount:e,maxAllowed:Z2,contentLength:t.length}),t.replace(/[\s\S]*?<\/pilot-memory-context>/g,"").replace(/[\s\S]*?<\/private>/g,"").trim()}function x0(t){return V2(t)}function G2(t){return V2(t)}var $f=class{constructor(e,r){this.sessionManager=e;this.eventBroadcaster=r}async completeByDbId(e){await this.sessionManager.deleteSession(e),this.eventBroadcaster.broadcastSessionCompleted(e)}};se();var Ou=class{static checkUserPromptPrivacy(e,r,n,s,i,a){let o=e.getUserPrompt(r,n);return!o||o.trim()===""?(_.debug("HOOK",`Skipping ${s} - user prompt was entirely private`,{sessionId:i,promptNumber:n,...a}),null):o}};Br();yr();var Of=class extends ze{constructor(r,n,s,i,a){super();this.sessionManager=r;this.dbManager=n;this.sdkAgent=s;this.eventBroadcaster=i;this.workerService=a;this.completionHandler=new $f(r,i)}completionHandler;getActiveAgent(){return this.sdkAgent}getSelectedProvider(){return"claude"}ensureGeneratorRunning(r,n){let s=this.sessionManager.getSession(r);s&&(s.generatorPromise||this.startGenerator(s,n))}startGenerator(r,n){r&&(r.abortController.signal.aborted&&(_.info("SESSION","Replacing aborted AbortController before generator start",{sessionId:r.sessionDbId,source:n}),r.abortController=new AbortController),_.info("SESSION",`Generator auto-starting (${n}) using Claude SDK`,{sessionId:r.sessionDbId,queueDepth:r.pendingMessages.length,historyLength:r.conversationHistory.length}),r.currentProvider="claude",r.generatorPromise=this.sdkAgent.startSession(r,this.workerService).catch(s=>{if(r.abortController.signal.aborted)return;_.error("SESSION","Generator failed",{sessionId:r.sessionDbId,provider:"claude",error:s.message},s);let i=this.sessionManager.getPendingMessageStore();try{let a=i.markAllSessionMessagesFailed(r.sessionDbId);a>0&&_.error("SESSION","Marked messages as failed after generator error",{sessionId:r.sessionDbId,failedCount:a})}catch(a){_.error("SESSION","Failed to mark messages as failed",{sessionId:r.sessionDbId},a)}}).finally(()=>{let s=r.sessionDbId,i=r.abortController.signal.aborted;if(i?_.info("SESSION","Generator aborted",{sessionId:s}):_.error("SESSION","Generator exited unexpectedly",{sessionId:s}),r.generatorPromise=null,r.currentProvider=null,this.workerService.broadcastProcessingStatus(),!i)try{let a=this.sessionManager.getPendingMessageStore(),o=a.getPendingCount(s),c=3;if(o>0){if(r.consecutiveRestarts=(r.consecutiveRestarts||0)+1,r.consecutiveRestarts>c){let p=a.markAllSessionMessagesFailed(s);_.error("SESSION","CRITICAL: Generator restart limit exceeded - marking pending messages as failed",{sessionId:s,pendingCount:o,failedCount:p,consecutiveRestarts:r.consecutiveRestarts,maxRestarts:c}),r.abortController.abort();return}_.info("SESSION","Restarting generator after crash/exit with pending work",{sessionId:s,pendingCount:o,consecutiveRestarts:r.consecutiveRestarts,maxRestarts:c});let l=r.abortController;r.abortController=new AbortController,l.abort();let u=Math.min(1e3*Math.pow(2,r.consecutiveRestarts-1),8e3);setTimeout(()=>{let p=this.sessionManager.getSession(s);p&&!p.generatorPromise&&this.startGenerator(p,"crash-recovery")},u)}else r.abortController.abort(),r.consecutiveRestarts=0,_.debug("SESSION","Aborted controller after natural completion",{sessionId:s})}catch(a){_.debug("SESSION","Error during recovery check, aborting to prevent leaks",{sessionId:s,error:a instanceof Error?a.message:String(a)}),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))}handleSessionInit=this.wrapHandler((r,n)=>{let s=this.parseIntParam(r,n,"sessionDbId");if(s===null)return;let{userPrompt:i,promptNumber:a}=r.body;_.info("HTTP","SessionRoutes: handleSessionInit called",{sessionDbId:s,promptNumber:a,has_userPrompt:!!i});let o=this.sessionManager.initializeSession(s,i,a),c=this.dbManager.getSessionStore().getLatestUserPrompt(o.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 l=Date.now(),u=c.prompt_text;this.dbManager.getChromaSync().syncUserPrompt(c.id,c.memory_session_id,c.project,u,c.prompt_number,c.created_at_epoch).then(()=>{let p=Date.now()-l,d=u.length>60?u.substring(0,60)+"...":u;_.debug("CHROMA","User prompt synced",{promptId:c.id,duration:`${p}ms`,prompt:d})}).catch(p=>{_.error("CHROMA","User prompt sync failed, continuing without vector search",{promptId:c.id,prompt:u.length>60?u.substring(0,60)+"...":u},p)})}this.ensureGeneratorRunning(s,"init"),this.eventBroadcaster.broadcastSessionStarted(s,o.project),n.json({status:"initialized",sessionDbId:s,port:Cr()})});handleObservations=this.wrapHandler((r,n)=>{let s=this.parseIntParam(r,n,"sessionDbId");if(s===null)return;let{tool_name:i,tool_input:a,tool_response:o,prompt_number:c,cwd:l}=r.body;this.sessionManager.queueObservation(s,{tool_name:i,tool_input:a,tool_response:o,prompt_number:c,cwd:l}),this.ensureGeneratorRunning(s,"observation"),this.eventBroadcaster.broadcastObservationQueued(s),n.json({status:"queued"})});handleSummarize=this.wrapHandler((r,n)=>{let s=this.parseIntParam(r,n,"sessionDbId");if(s===null)return;let{last_assistant_message:i}=r.body;this.sessionManager.queueSummarize(s,i),this.ensureGeneratorRunning(s,"summarize"),this.eventBroadcaster.broadcastSummarizeQueued(),n.json({status:"queued"})});handleSessionStatus=this.wrapHandler((r,n)=>{let s=this.parseIntParam(r,n,"sessionDbId");if(s===null)return;let i=this.sessionManager.getSession(s);if(!i){n.json({status:"not_found"});return}n.json({status:"active",sessionDbId:s,project:i.project,queueLength:i.pendingMessages.length,uptime:Date.now()-i.startTime})});handleSessionDelete=this.wrapHandler(async(r,n)=>{let s=this.parseIntParam(r,n,"sessionDbId");s!==null&&(await this.completionHandler.completeByDbId(s),n.json({status:"deleted"}))});handleSessionComplete=this.wrapHandler(async(r,n)=>{let s=this.parseIntParam(r,n,"sessionDbId");s!==null&&(await this.completionHandler.completeByDbId(s),n.json({success:!0}))});handleObservationsByClaudeId=this.wrapHandler((r,n)=>{let{contentSessionId:s,tool_name:i,tool_input:a,tool_response:o,cwd:c}=r.body;if(!s)return this.badRequest(n,"Missing contentSessionId");let l=De.loadFromFile(ar);if(new Set(l.CLAUDE_PILOT_SKIP_TOOLS.split(",").map(y=>y.trim()).filter(Boolean)).has(i)){_.debug("SESSION","Skipping observation for tool",{tool_name:i}),n.json({status:"skipped",reason:"tool_excluded"});return}if(new Set(["Edit","Write","Read","NotebookEdit"]).has(i)&&a){let y=a.file_path||a.notebook_path;if(y&&y.includes("session-memory")){_.debug("SESSION","Skipping meta-observation for session-memory file",{tool_name:i,file_path:y}),n.json({status:"skipped",reason:"session_memory_meta"});return}}let d=this.dbManager.getSessionStore(),m=d.createSDKSession(s,"",""),f=d.getPromptNumberFromUserPrompts(s);if(!Ou.checkUserPromptPrivacy(d,s,f,"observation",m,{tool_name:i})){n.json({status:"skipped",reason:"private"});return}let g=a!==void 0?x0(JSON.stringify(a)):"{}",h=o!==void 0?x0(JSON.stringify(o)):"{}";this.sessionManager.queueObservation(m,{tool_name:i,tool_input:g,tool_response:h,prompt_number:f,cwd:c||(_.error("SESSION","Missing cwd when queueing observation in SessionRoutes",{sessionId:m,tool_name:i}),"")}),this.ensureGeneratorRunning(m,"observation"),this.eventBroadcaster.broadcastObservationQueued(m),n.json({status:"queued"})});handleSummarizeByClaudeId=this.wrapHandler((r,n)=>{let{contentSessionId:s,last_assistant_message:i}=r.body;if(!s)return this.badRequest(n,"Missing contentSessionId");let a=this.dbManager.getSessionStore(),o=a.createSDKSession(s,"",""),c=a.getPromptNumberFromUserPrompts(s);if(!Ou.checkUserPromptPrivacy(a,s,c,"summarize",o)){n.json({status:"skipped",reason:"private"});return}this.sessionManager.queueSummarize(o,i),this.ensureGeneratorRunning(o,"summarize"),this.eventBroadcaster.broadcastSummarizeQueued(),n.json({status:"queued"})});handleSessionInitByClaudeId=this.wrapHandler((r,n)=>{let{contentSessionId:s,project:i,prompt:a,projectRoot:o}=r.body;if(_.info("HTTP","SessionRoutes: handleSessionInitByClaudeId called",{contentSessionId:s,project:i,prompt_length:a?.length}),!this.validateRequired(r,n,["contentSessionId","project","prompt"]))return;let c=this.dbManager.getSessionStore(),l=c.createSDKSession(s,i,a);o&&c.upsertProjectRoot(i,o);let u=c.getSessionById(l),p=!u?.memory_session_id;_.info("SESSION",`CREATED | contentSessionId=${s} \u2192 sessionDbId=${l} | isNew=${p} | project=${i}`,{sessionId:l});let m=c.getPromptNumberFromUserPrompts(s)+1,f=u?.memory_session_id||null;m>1?_.debug("HTTP",`[ALIGNMENT] DB Lookup Proof | contentSessionId=${s} \u2192 memorySessionId=${f||"(not yet captured)"} | prompt#=${m}`):_.debug("HTTP",`[ALIGNMENT] New Session | contentSessionId=${s} | prompt#=${m} | memorySessionId will be captured on first SDK response`);let v=G2(a);if(!v||v.trim()===""){_.debug("HOOK","Session init - prompt entirely private",{sessionId:l,promptNumber:m,originalLength:a.length}),n.json({sessionDbId:l,promptNumber:m,skipped:!0,reason:"private"});return}c.saveUserPrompt(s,m,v),_.debug("SESSION","User prompt saved",{sessionId:l,promptNumber:m}),n.json({sessionDbId:l,promptNumber:m,skipped:!1})})};var Pf=pe(require("path"),1),Ao=require("fs");se();var Y2=require("os");yr();_n();var Cf=class extends ze{constructor(r,n,s,i,a,o){super();this.paginationHelper=r;this.dbManager=n;this.sessionManager=s;this.sseBroadcaster=i;this.workerService=a;this.startTime=o}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.get("/api/sessions",this.handleGetSessions.bind(this)),r.get("/api/sessions/:id/timeline",this.handleGetSessionTimeline.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.post("/api/pending-queue/:id/retry",this.handleRetryMessage.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)),r.get("/api/export",this.handleExport.bind(this)),r.delete("/api/observation/:id",this.handleDeleteObservation.bind(this)),r.post("/api/observations/delete",this.handleBulkDeleteObservations.bind(this)),r.get("/api/project-roots",this.handleGetProjectRoots.bind(this)),r.get("/api/analytics/timeline",this.handleGetAnalyticsTimeline.bind(this)),r.get("/api/analytics/types",this.handleGetAnalyticsTypes.bind(this)),r.get("/api/analytics/projects",this.handleGetAnalyticsProjects.bind(this)),r.get("/api/analytics/tokens",this.handleGetAnalyticsTokens.bind(this))}handleGetObservations=this.wrapHandler((r,n)=>{let{offset:s,limit:i,project:a}=this.parsePaginationParams(r),o=this.paginationHelper.getObservations(s,i,a);n.json(o)});handleGetSummaries=this.wrapHandler((r,n)=>{let{offset:s,limit:i,project:a}=this.parsePaginationParams(r),o=this.paginationHelper.getSummaries(s,i,a);n.json(o)});handleGetPrompts=this.wrapHandler((r,n)=>{let{offset:s,limit:i,project:a}=this.parsePaginationParams(r),o=this.paginationHelper.getPrompts(s,i,a);n.json(o)});handleGetObservationById=this.wrapHandler((r,n)=>{let s=this.parseIntParam(r,n,"id");if(s===null)return;let a=this.dbManager.getSessionStore().getObservationById(s);if(!a){this.notFound(n,`Observation #${s} not found`);return}n.json(a)});handleGetObservationsByIds=this.wrapHandler((r,n)=>{let{ids:s,orderBy:i,limit:a,project:o}=r.body;if(!s||!Array.isArray(s)){this.badRequest(n,"ids must be an array of numbers");return}if(s.length===0){n.json([]);return}if(!s.every(u=>typeof u=="number"&&Number.isInteger(u))){this.badRequest(n,"All ids must be integers");return}let l=this.dbManager.getSessionStore().getObservationsByIds(s,{orderBy:i,limit:a,project:o});n.json(l)});handleGetSessionById=this.wrapHandler((r,n)=>{let s=this.parseIntParam(r,n,"id");if(s===null)return;let a=this.dbManager.getSessionStore().getSessionSummariesByIds([s]);if(a.length===0){this.notFound(n,`Session #${s} not found`);return}n.json(a[0])});handleGetSessions=this.wrapHandler((r,n)=>{let s=parseInt(r.query.offset,10)||0,i=Math.min(parseInt(r.query.limit,10)||20,100),a=r.query.project,o=this.dbManager.getSessionStore().db,c="",l=[];a&&(c="WHERE o.project = ?",l.push(a));let u=` + ORDER BY ss.started_at_epoch DESC`).all()}var Of=class extends Ae{constructor(r,n,s){super();this.sseBroadcaster=r;this.dbManager=n;this.sessionManager=s}setupRoutes(r){let n=ds(),s=$f.default.join(n,"ui");_.info("VIEWER","Setting up static file serving",{packageRoot:n,uiPath:s,exists:(0,Pu.existsSync)(s)}),r.use(J2.default.static(s,{setHeaders:(i,a)=>{a.endsWith(".js")||a.endsWith(".css")?(i.setHeader("Cache-Control","no-cache, no-store, must-revalidate"),i.setHeader("Pragma","no-cache"),i.setHeader("Expires","0")):a.endsWith(".html")?i.setHeader("Cache-Control","no-cache, no-store, must-revalidate"):i.setHeader("Cache-Control","public, max-age=3600")}})),r.get("/health",this.handleHealth.bind(this)),r.get("/api/health",this.handleHealth.bind(this)),r.get("/api/version",this.handleVersion.bind(this)),r.post("/api/restart",this.handleRestart.bind(this)),r.get("/api/dashboard/sessions",this.handleDashboardSessions.bind(this)),r.get("/",this.handleViewerUI.bind(this)),r.get("/stream",this.handleSSEStream.bind(this))}handleHealth=this.wrapHandler((r,n)=>{let s=this.sessionManager.getTotalActiveWork(),i=this.sessionManager.isAnySessionProcessing();n.json({status:"ok",timestamp:Date.now(),queueDepth:s,isProcessing:i})});handleRestart=this.wrapHandler((r,n)=>{_.info("SYSTEM","Restart requested via API"),n.json({status:"restarting",message:"Worker will restart"}),setTimeout(()=>{_.info("SYSTEM","Exiting for restart..."),process.exit(0)},500)});handleVersion=this.wrapHandler((r,n)=>{let s=Rm();n.json({version:s})});handleViewerUI=this.wrapHandler((r,n)=>{let s=ds(),i=Rm(),o=[$f.default.join(s,"ui","viewer.html"),$f.default.join(s,"plugin","ui","viewer.html")].find(l=>(0,Pu.existsSync)(l));if(!o)throw new Error("Viewer UI not found at any expected location");let c=(0,Pu.readFileSync)(o,"utf-8");c=c.replace(/viewer-bundle\.js/g,`viewer-bundle.js?v=${i}`),c=c.replace(/viewer\.css/g,`viewer.css?v=${i}`),c=c.replace("",` +`),n.setHeader("Content-Type","text/html"),n.setHeader("Cache-Control","no-cache, no-store, must-revalidate"),n.setHeader("Pragma","no-cache"),n.setHeader("Expires","0"),n.send(c)});handleDashboardSessions=this.wrapHandler((r,n)=>{let s=this.dbManager.getSessionStore().db,i=K2(s);n.json({sessions:i})});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 s=this.dbManager.getSessionStore().getAllProjects();this.sseBroadcaster.broadcast({type:"initial_load",projects:s,timestamp:Date.now()});let i=this.sessionManager.isAnySessionProcessing(),a=this.sessionManager.getTotalActiveWork();this.sseBroadcaster.broadcast({type:"processing_status",isProcessing:i,queueDepth:a})})};_n();re();re();var Q2=100;function fpe(t){let e=(t.match(//g)||[]).length,r=(t.match(//g)||[]).length;return e+r}function X2(t){let e=fpe(t);return e>Q2&&_.warn("SYSTEM","tag count exceeds limit",void 0,{tagCount:e,maxAllowed:Q2,contentLength:t.length}),t.replace(/[\s\S]*?<\/pilot-memory-context>/g,"").replace(/[\s\S]*?<\/private>/g,"").trim()}function E0(t){return X2(t)}function e4(t){return X2(t)}var Pf=class{constructor(e,r){this.sessionManager=e;this.eventBroadcaster=r}async completeByDbId(e){await this.sessionManager.deleteSession(e),this.eventBroadcaster.broadcastSessionCompleted(e)}};re();var Cu=class{static checkUserPromptPrivacy(e,r,n,s,i,a){let o=e.getUserPrompt(r,n);return!o||o.trim()===""?(_.debug("HOOK",`Skipping ${s} - user prompt was entirely private`,{sessionId:i,promptNumber:n,...a}),null):o}};Br();yr();var Cf=class extends Ae{constructor(r,n,s,i,a){super();this.sessionManager=r;this.dbManager=n;this.sdkAgent=s;this.eventBroadcaster=i;this.workerService=a;this.completionHandler=new Pf(r,i)}completionHandler;getActiveAgent(){return this.sdkAgent}getSelectedProvider(){return"claude"}ensureGeneratorRunning(r,n){let s=this.sessionManager.getSession(r);s&&(s.generatorPromise||this.startGenerator(s,n))}startGenerator(r,n){r&&(r.abortController.signal.aborted&&(_.info("SESSION","Replacing aborted AbortController before generator start",{sessionId:r.sessionDbId,source:n}),r.abortController=new AbortController),_.info("SESSION",`Generator auto-starting (${n}) using Claude SDK`,{sessionId:r.sessionDbId,queueDepth:r.pendingMessages.length,historyLength:r.conversationHistory.length}),r.currentProvider="claude",r.generatorPromise=this.sdkAgent.startSession(r,this.workerService).catch(s=>{if(r.abortController.signal.aborted)return;_.error("SESSION","Generator failed",{sessionId:r.sessionDbId,provider:"claude",error:s.message},s);let i=this.sessionManager.getPendingMessageStore();try{let a=i.markAllSessionMessagesFailed(r.sessionDbId);a>0&&_.error("SESSION","Marked messages as failed after generator error",{sessionId:r.sessionDbId,failedCount:a})}catch(a){_.error("SESSION","Failed to mark messages as failed",{sessionId:r.sessionDbId},a)}}).finally(()=>{let s=r.sessionDbId,i=r.abortController.signal.aborted;if(i?_.info("SESSION","Generator aborted",{sessionId:s}):_.error("SESSION","Generator exited unexpectedly",{sessionId:s}),r.generatorPromise=null,r.currentProvider=null,this.workerService.broadcastProcessingStatus(),!i)try{let a=this.sessionManager.getPendingMessageStore(),o=a.getPendingCount(s),c=3;if(o>0){if(r.consecutiveRestarts=(r.consecutiveRestarts||0)+1,r.consecutiveRestarts>c){let p=a.markAllSessionMessagesFailed(s);_.error("SESSION","CRITICAL: Generator restart limit exceeded - marking pending messages as failed",{sessionId:s,pendingCount:o,failedCount:p,consecutiveRestarts:r.consecutiveRestarts,maxRestarts:c}),r.abortController.abort();return}_.info("SESSION","Restarting generator after crash/exit with pending work",{sessionId:s,pendingCount:o,consecutiveRestarts:r.consecutiveRestarts,maxRestarts:c});let l=r.abortController;r.abortController=new AbortController,l.abort();let u=Math.min(1e3*Math.pow(2,r.consecutiveRestarts-1),8e3);setTimeout(()=>{let p=this.sessionManager.getSession(s);p&&!p.generatorPromise&&this.startGenerator(p,"crash-recovery")},u)}else r.abortController.abort(),r.consecutiveRestarts=0,_.debug("SESSION","Aborted controller after natural completion",{sessionId:s})}catch(a){_.debug("SESSION","Error during recovery check, aborting to prevent leaks",{sessionId:s,error:a instanceof Error?a.message:String(a)}),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))}handleSessionInit=this.wrapHandler((r,n)=>{let s=this.parseIntParam(r,n,"sessionDbId");if(s===null)return;let{userPrompt:i,promptNumber:a}=r.body;_.info("HTTP","SessionRoutes: handleSessionInit called",{sessionDbId:s,promptNumber:a,has_userPrompt:!!i});let o=this.sessionManager.initializeSession(s,i,a),c=this.dbManager.getSessionStore().getLatestUserPrompt(o.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 l=Date.now(),u=c.prompt_text;this.dbManager.getChromaSync().syncUserPrompt(c.id,c.memory_session_id,c.project,u,c.prompt_number,c.created_at_epoch).then(()=>{let p=Date.now()-l,d=u.length>60?u.substring(0,60)+"...":u;_.debug("CHROMA","User prompt synced",{promptId:c.id,duration:`${p}ms`,prompt:d})}).catch(p=>{_.error("CHROMA","User prompt sync failed, continuing without vector search",{promptId:c.id,prompt:u.length>60?u.substring(0,60)+"...":u},p)})}this.ensureGeneratorRunning(s,"init"),this.eventBroadcaster.broadcastSessionStarted(s,o.project),n.json({status:"initialized",sessionDbId:s,port:Cr()})});handleObservations=this.wrapHandler((r,n)=>{let s=this.parseIntParam(r,n,"sessionDbId");if(s===null)return;let{tool_name:i,tool_input:a,tool_response:o,prompt_number:c,cwd:l}=r.body;this.sessionManager.queueObservation(s,{tool_name:i,tool_input:a,tool_response:o,prompt_number:c,cwd:l}),this.ensureGeneratorRunning(s,"observation"),this.eventBroadcaster.broadcastObservationQueued(s),n.json({status:"queued"})});handleSummarize=this.wrapHandler((r,n)=>{let s=this.parseIntParam(r,n,"sessionDbId");if(s===null)return;let{last_assistant_message:i}=r.body;this.sessionManager.queueSummarize(s,i),this.ensureGeneratorRunning(s,"summarize"),this.eventBroadcaster.broadcastSummarizeQueued(),n.json({status:"queued"})});handleSessionStatus=this.wrapHandler((r,n)=>{let s=this.parseIntParam(r,n,"sessionDbId");if(s===null)return;let i=this.sessionManager.getSession(s);if(!i){n.json({status:"not_found"});return}n.json({status:"active",sessionDbId:s,project:i.project,queueLength:i.pendingMessages.length,uptime:Date.now()-i.startTime})});handleSessionDelete=this.wrapHandler(async(r,n)=>{let s=this.parseIntParam(r,n,"sessionDbId");s!==null&&(await this.completionHandler.completeByDbId(s),n.json({status:"deleted"}))});handleSessionComplete=this.wrapHandler(async(r,n)=>{let s=this.parseIntParam(r,n,"sessionDbId");s!==null&&(await this.completionHandler.completeByDbId(s),n.json({success:!0}))});handleObservationsByClaudeId=this.wrapHandler((r,n)=>{let{contentSessionId:s,tool_name:i,tool_input:a,tool_response:o,cwd:c}=r.body;if(!s)return this.badRequest(n,"Missing contentSessionId");let l=Me.loadFromFile(ar);if(new Set(l.CLAUDE_PILOT_SKIP_TOOLS.split(",").map(y=>y.trim()).filter(Boolean)).has(i)){_.debug("SESSION","Skipping observation for tool",{tool_name:i}),n.json({status:"skipped",reason:"tool_excluded"});return}if(new Set(["Edit","Write","Read","NotebookEdit"]).has(i)&&a){let y=a.file_path||a.notebook_path;if(y&&y.includes("session-memory")){_.debug("SESSION","Skipping meta-observation for session-memory file",{tool_name:i,file_path:y}),n.json({status:"skipped",reason:"session_memory_meta"});return}}let d=this.dbManager.getSessionStore(),m=d.createSDKSession(s,"",""),f=d.getPromptNumberFromUserPrompts(s);if(!Cu.checkUserPromptPrivacy(d,s,f,"observation",m,{tool_name:i})){n.json({status:"skipped",reason:"private"});return}let g=a!==void 0?E0(JSON.stringify(a)):"{}",h=o!==void 0?E0(JSON.stringify(o)):"{}";this.sessionManager.queueObservation(m,{tool_name:i,tool_input:g,tool_response:h,prompt_number:f,cwd:c||(_.error("SESSION","Missing cwd when queueing observation in SessionRoutes",{sessionId:m,tool_name:i}),"")}),this.ensureGeneratorRunning(m,"observation"),this.eventBroadcaster.broadcastObservationQueued(m),n.json({status:"queued"})});handleSummarizeByClaudeId=this.wrapHandler((r,n)=>{let{contentSessionId:s,last_assistant_message:i}=r.body;if(!s)return this.badRequest(n,"Missing contentSessionId");let a=this.dbManager.getSessionStore(),o=a.createSDKSession(s,"",""),c=a.getPromptNumberFromUserPrompts(s);if(!Cu.checkUserPromptPrivacy(a,s,c,"summarize",o)){n.json({status:"skipped",reason:"private"});return}this.sessionManager.queueSummarize(o,i),this.ensureGeneratorRunning(o,"summarize"),this.eventBroadcaster.broadcastSummarizeQueued(),n.json({status:"queued"})});handleSessionInitByClaudeId=this.wrapHandler((r,n)=>{let{contentSessionId:s,project:i,prompt:a,projectRoot:o}=r.body;if(_.info("HTTP","SessionRoutes: handleSessionInitByClaudeId called",{contentSessionId:s,project:i,prompt_length:a?.length}),!this.validateRequired(r,n,["contentSessionId","project","prompt"]))return;let c=this.dbManager.getSessionStore(),l=c.createSDKSession(s,i,a);o&&c.upsertProjectRoot(i,o);let u=c.getSessionById(l),p=!u?.memory_session_id;_.info("SESSION",`CREATED | contentSessionId=${s} \u2192 sessionDbId=${l} | isNew=${p} | project=${i}`,{sessionId:l});let m=c.getPromptNumberFromUserPrompts(s)+1,f=u?.memory_session_id||null;m>1?_.debug("HTTP",`[ALIGNMENT] DB Lookup Proof | contentSessionId=${s} \u2192 memorySessionId=${f||"(not yet captured)"} | prompt#=${m}`):_.debug("HTTP",`[ALIGNMENT] New Session | contentSessionId=${s} | prompt#=${m} | memorySessionId will be captured on first SDK response`);let v=e4(a);if(!v||v.trim()===""){_.debug("HOOK","Session init - prompt entirely private",{sessionId:l,promptNumber:m,originalLength:a.length}),n.json({sessionDbId:l,promptNumber:m,skipped:!0,reason:"private"});return}c.saveUserPrompt(s,m,v),_.debug("SESSION","User prompt saved",{sessionId:l,promptNumber:m}),n.json({sessionDbId:l,promptNumber:m,skipped:!1})})};var If=ie(require("path"),1),No=require("fs");re();var t4=require("os");yr();_n();var Af=class extends Ae{constructor(r,n,s,i,a,o){super();this.paginationHelper=r;this.dbManager=n;this.sessionManager=s;this.sseBroadcaster=i;this.workerService=a;this.startTime=o}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.get("/api/sessions",this.handleGetSessions.bind(this)),r.get("/api/sessions/:id/timeline",this.handleGetSessionTimeline.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.post("/api/pending-queue/:id/retry",this.handleRetryMessage.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)),r.get("/api/export",this.handleExport.bind(this)),r.delete("/api/observation/:id",this.handleDeleteObservation.bind(this)),r.post("/api/observations/delete",this.handleBulkDeleteObservations.bind(this)),r.get("/api/project-roots",this.handleGetProjectRoots.bind(this)),r.get("/api/analytics/timeline",this.handleGetAnalyticsTimeline.bind(this)),r.get("/api/analytics/types",this.handleGetAnalyticsTypes.bind(this)),r.get("/api/analytics/projects",this.handleGetAnalyticsProjects.bind(this)),r.get("/api/analytics/tokens",this.handleGetAnalyticsTokens.bind(this))}handleGetObservations=this.wrapHandler((r,n)=>{let{offset:s,limit:i,project:a}=this.parsePaginationParams(r),o=this.paginationHelper.getObservations(s,i,a);n.json(o)});handleGetSummaries=this.wrapHandler((r,n)=>{let{offset:s,limit:i,project:a}=this.parsePaginationParams(r),o=this.paginationHelper.getSummaries(s,i,a);n.json(o)});handleGetPrompts=this.wrapHandler((r,n)=>{let{offset:s,limit:i,project:a}=this.parsePaginationParams(r),o=this.paginationHelper.getPrompts(s,i,a);n.json(o)});handleGetObservationById=this.wrapHandler((r,n)=>{let s=this.parseIntParam(r,n,"id");if(s===null)return;let a=this.dbManager.getSessionStore().getObservationById(s);if(!a){this.notFound(n,`Observation #${s} not found`);return}n.json(a)});handleGetObservationsByIds=this.wrapHandler((r,n)=>{let{ids:s,orderBy:i,limit:a,project:o}=r.body;if(!s||!Array.isArray(s)){this.badRequest(n,"ids must be an array of numbers");return}if(s.length===0){n.json([]);return}if(!s.every(u=>typeof u=="number"&&Number.isInteger(u))){this.badRequest(n,"All ids must be integers");return}let l=this.dbManager.getSessionStore().getObservationsByIds(s,{orderBy:i,limit:a,project:o});n.json(l)});handleGetSessionById=this.wrapHandler((r,n)=>{let s=this.parseIntParam(r,n,"id");if(s===null)return;let a=this.dbManager.getSessionStore().getSessionSummariesByIds([s]);if(a.length===0){this.notFound(n,`Session #${s} not found`);return}n.json(a[0])});handleGetSessions=this.wrapHandler((r,n)=>{let s=parseInt(r.query.offset,10)||0,i=Math.min(parseInt(r.query.limit,10)||20,100),a=r.query.project,o=this.dbManager.getSessionStore().db,c="",l=[];a&&(c="WHERE o.project = ?",l.push(a));let u=` SELECT s.id, s.content_session_id, @@ -1448,10 +1448,10 @@ Tips: WHERE memory_session_id = ? ORDER BY created_at DESC LIMIT 1 - `).get(a.memory_session_id),u=[];for(let p of c)u.push({type:"prompt",id:p.id,timestamp:p.created_at_epoch,data:p});for(let p of o)u.push({type:"observation",id:p.id,timestamp:p.created_at_epoch,data:p});u.sort((p,d)=>p.timestamp-d.timestamp),n.json({session:a,timeline:u,summary:l,stats:{observations:o.length,prompts:c.length}})});handleGetSdkSessionsByIds=this.wrapHandler((r,n)=>{let{memorySessionIds:s}=r.body;if(!Array.isArray(s)){this.badRequest(n,"memorySessionIds must be an array");return}let a=this.dbManager.getSessionStore().getSdkSessionsBySessionIds(s);n.json(a)});handleGetPromptById=this.wrapHandler((r,n)=>{let s=this.parseIntParam(r,n,"id");if(s===null)return;let a=this.dbManager.getSessionStore().getUserPromptsByIds([s]);if(a.length===0){this.notFound(n,`Prompt #${s} not found`);return}n.json(a[0])});handleGetStats=this.wrapHandler((r,n)=>{let s=r.query.project,i=this.dbManager.getSessionStore().db,a=ds(),o=Pf.default.join(a,"package.json"),l=JSON.parse((0,Ao.readFileSync)(o,"utf-8")).version,u,p;s?(u=i.prepare("SELECT COUNT(*) as count FROM observations WHERE project = ?").get(s),p=i.prepare(`SELECT COUNT(DISTINCT ss.id) as count FROM session_summaries ss + `).get(a.memory_session_id),u=[];for(let p of c)u.push({type:"prompt",id:p.id,timestamp:p.created_at_epoch,data:p});for(let p of o)u.push({type:"observation",id:p.id,timestamp:p.created_at_epoch,data:p});u.sort((p,d)=>p.timestamp-d.timestamp),n.json({session:a,timeline:u,summary:l,stats:{observations:o.length,prompts:c.length}})});handleGetSdkSessionsByIds=this.wrapHandler((r,n)=>{let{memorySessionIds:s}=r.body;if(!Array.isArray(s)){this.badRequest(n,"memorySessionIds must be an array");return}let a=this.dbManager.getSessionStore().getSdkSessionsBySessionIds(s);n.json(a)});handleGetPromptById=this.wrapHandler((r,n)=>{let s=this.parseIntParam(r,n,"id");if(s===null)return;let a=this.dbManager.getSessionStore().getUserPromptsByIds([s]);if(a.length===0){this.notFound(n,`Prompt #${s} not found`);return}n.json(a[0])});handleGetStats=this.wrapHandler((r,n)=>{let s=r.query.project,i=this.dbManager.getSessionStore().db,a=ds(),o=If.default.join(a,"package.json"),l=JSON.parse((0,No.readFileSync)(o,"utf-8")).version,u,p;s?(u=i.prepare("SELECT COUNT(*) as count FROM observations WHERE project = ?").get(s),p=i.prepare(`SELECT COUNT(DISTINCT ss.id) as count FROM session_summaries ss INNER JOIN sdk_sessions s ON ss.memory_session_id = s.memory_session_id INNER JOIN observations o ON o.memory_session_id = s.memory_session_id - WHERE o.project = ?`).get(s)):(u=i.prepare("SELECT COUNT(*) as count FROM observations").get(),p=i.prepare("SELECT COUNT(*) as count FROM session_summaries").get());let d=i.prepare("SELECT COUNT(*) as count FROM sdk_sessions").get(),m=Pf.default.join((0,Y2.homedir)(),".pilot/memory","pilot-memory.db"),f=0;(0,Ao.existsSync)(m)&&(f=(0,Ao.statSync)(m).size);let v=Math.floor((Date.now()-this.startTime)/1e3),g=this.sseBroadcaster.getClientCount(),h=this.sessionManager.getSessionStats(),y=Pf.default.basename(process.env.CLAUDE_PROJECT_ROOT||process.cwd());n.json({worker:{version:l,uptime:v,workspaceProject:y,activeSessions:h.activeSessions,sessionsWithGenerators:h.sessionsWithGenerators,queueDepth:h.totalQueueDepth,oldestSessionAgeMs:h.oldestSessionAge,sseClients:g,port:Cr()},database:{path:m,size:f,observations:u.count,sessions:d.count,summaries:p.count}})});handleGetProjects=this.wrapHandler((r,n)=>{let a=this.dbManager.getSessionStore().db.prepare(` + WHERE o.project = ?`).get(s)):(u=i.prepare("SELECT COUNT(*) as count FROM observations").get(),p=i.prepare("SELECT COUNT(*) as count FROM session_summaries").get());let d=i.prepare("SELECT COUNT(*) as count FROM sdk_sessions").get(),m=If.default.join((0,t4.homedir)(),".pilot/memory","pilot-memory.db"),f=0;(0,No.existsSync)(m)&&(f=(0,No.statSync)(m).size);let v=Math.floor((Date.now()-this.startTime)/1e3),g=this.sseBroadcaster.getClientCount(),h=this.sessionManager.getSessionStats(),y=If.default.basename(process.env.CLAUDE_PROJECT_ROOT||process.cwd());n.json({worker:{version:l,uptime:v,workspaceProject:y,activeSessions:h.activeSessions,sessionsWithGenerators:h.sessionsWithGenerators,queueDepth:h.totalQueueDepth,oldestSessionAgeMs:h.oldestSessionAge,sseClients:g,port:Cr()},database:{path:m,size:f,observations:u.count,sessions:d.count,summaries:p.count}})});handleGetProjects=this.wrapHandler((r,n)=>{let a=this.dbManager.getSessionStore().db.prepare(` SELECT DISTINCT project FROM observations WHERE project IS NOT NULL @@ -1479,7 +1479,7 @@ Tips: GROUP BY p.id `).all(s):v=c.prepare("SELECT * FROM user_prompts").all();let g={exportedAt:new Date().toISOString(),project:s||"all",stats:{sessions:m.length,summaries:f.length,observations:d.length,prompts:v.length},sessions:m,summaries:f,observations:d,prompts:v},h=s?`pilot-memory-export-${s}-${new Date().toISOString().split("T")[0]}.json`:`pilot-memory-export-${new Date().toISOString().split("T")[0]}.json`;n.setHeader("Content-Disposition",`attachment; filename="${h}"`),n.setHeader("Content-Type","application/json"),n.json(g);return}if(i==="csv"){let f=[["id","type","title","project","created_at","text","files_read","files_modified"].join(",")];for(let g of d){let h=[g.id,`"${(g.type||"").replace(/"/g,'""')}"`,`"${(g.title||"").replace(/"/g,'""')}"`,`"${(g.project||"").replace(/"/g,'""')}"`,g.created_at||"",`"${(g.text||"").replace(/"/g,'""').substring(0,500)}"`,`"${(g.files_read||"").replace(/"/g,'""')}"`,`"${(g.files_modified||"").replace(/"/g,'""')}"`];f.push(h.join(","))}let v=s?`pilot-memory-export-${s}-${new Date().toISOString().split("T")[0]}.csv`:`pilot-memory-export-${new Date().toISOString().split("T")[0]}.csv`;n.setHeader("Content-Disposition",`attachment; filename="${v}"`),n.setHeader("Content-Type","text/csv"),n.send(f.join(` `));return}if(i==="markdown"||i==="md"){let m=["# Pilot Memory Export","",`**Exported:** ${new Date().toISOString()}`,`**Project:** ${s||"All"}`,`**Total Memories:** ${d.length}`,"","---",""];for(let v of d){let g=v.created_at?new Date(v.created_at).toLocaleString():"Unknown";if(m.push(`## #${v.id}: ${v.title||"Untitled"}`),m.push(""),m.push(`- **Type:** ${v.type||"unknown"}`),m.push(`- **Project:** ${v.project||"none"}`),m.push(`- **Date:** ${g}`),v.files_read)try{let h=JSON.parse(v.files_read);h.length>0&&m.push(`- **Files Read:** ${h.join(", ")}`)}catch{}if(v.files_modified)try{let h=JSON.parse(v.files_modified);h.length>0&&m.push(`- **Files Modified:** ${h.join(", ")}`)}catch{}m.push(""),m.push(v.text||"*No content*"),m.push(""),m.push("---"),m.push("")}let f=s?`pilot-memory-export-${s}-${new Date().toISOString().split("T")[0]}.md`:`pilot-memory-export-${new Date().toISOString().split("T")[0]}.md`;n.setHeader("Content-Disposition",`attachment; filename="${f}"`),n.setHeader("Content-Type","text/markdown"),n.send(m.join(` -`));return}});handleGetPendingQueue=this.wrapHandler((r,n)=>{let{PendingMessageStore:s}=(Zs(),Bo(ji)),i=new s(this.dbManager.getSessionStore().db,3),a=i.getQueueMessages(),o=i.getRecentlyProcessed(20,30),c=i.getStuckCount(300*1e3),l=i.getSessionsWithPendingMessages();n.json({queue:{messages:a,totalPending:a.filter(u=>u.status==="pending").length,totalProcessing:a.filter(u=>u.status==="processing").length,totalFailed:a.filter(u=>u.status==="failed").length,stuckCount:c},recentlyProcessed:o,sessionsWithPendingWork:l})});handleProcessPendingQueue=this.wrapHandler(async(r,n)=>{let s=Math.min(Math.max(parseInt(r.body.sessionLimit,10)||10,1),100),i=await this.workerService.processPendingQueues(s);n.json({success:!0,...i})});handleClearFailedQueue=this.wrapHandler((r,n)=>{let{PendingMessageStore:s}=(Zs(),Bo(ji)),a=new s(this.dbManager.getSessionStore().db,3).clearFailed();_.info("QUEUE","Cleared failed queue messages",{clearedCount:a}),n.json({success:!0,clearedCount:a})});handleClearAllQueue=this.wrapHandler((r,n)=>{let{PendingMessageStore:s}=(Zs(),Bo(ji)),a=new s(this.dbManager.getSessionStore().db,3).clearAll();_.warn("QUEUE","Cleared ALL queue messages (pending, processing, failed)",{clearedCount:a}),n.json({success:!0,clearedCount:a})});handleRetryMessage=this.wrapHandler((r,n)=>{let s=parseInt(r.params.id,10);if(isNaN(s)){n.status(400).json({error:"Invalid message ID"});return}let{PendingMessageStore:i}=(Zs(),Bo(ji));new i(this.dbManager.getSessionStore().db,3).retryMessage(s)?(_.info("QUEUE","Retried failed message",{messageId:s}),n.json({success:!0,messageId:s})):n.status(404).json({error:"Message not found or not in failed status"})});handleDeleteObservation=this.wrapHandler((r,n)=>{let s=this.parseIntParam(r,n,"id");if(s===null)return;this.dbManager.getSessionStore().deleteObservation(s)?(_.info("DATA","Deleted observation",{id:s}),n.json({success:!0,id:s})):this.notFound(n,`Observation #${s} not found`)});handleBulkDeleteObservations=this.wrapHandler((r,n)=>{let{ids:s}=r.body;if(!s||!Array.isArray(s)){this.badRequest(n,"ids must be an array of numbers");return}if(s.length===0){n.json({success:!0,deletedCount:0});return}if(!s.every(o=>typeof o=="number"&&Number.isInteger(o))){this.badRequest(n,"All ids must be integers");return}let a=this.dbManager.getSessionStore().deleteObservations(s);_.info("DATA","Bulk deleted observations",{count:a,requested:s.length}),n.json({success:!0,deletedCount:a})});handleGetAnalyticsTimeline=this.wrapHandler((r,n)=>{let s=r.query.range||"30d",i=r.query.project,a=this.dbManager.getSessionStore().db,o=30;s==="7d"?o=7:s==="90d"?o=90:s==="all"&&(o=365*10);let c=Date.now()-o*24*60*60*1e3,l=i?"AND project = ?":"",u=i?[c,i]:[c],p=a.prepare(` +`));return}});handleGetPendingQueue=this.wrapHandler((r,n)=>{let{PendingMessageStore:s}=(Zs(),Zo(Di)),i=new s(this.dbManager.getSessionStore().db,3),a=i.getQueueMessages(),o=i.getRecentlyProcessed(20,30),c=i.getStuckCount(300*1e3),l=i.getSessionsWithPendingMessages();n.json({queue:{messages:a,totalPending:a.filter(u=>u.status==="pending").length,totalProcessing:a.filter(u=>u.status==="processing").length,totalFailed:a.filter(u=>u.status==="failed").length,stuckCount:c},recentlyProcessed:o,sessionsWithPendingWork:l})});handleProcessPendingQueue=this.wrapHandler(async(r,n)=>{let s=Math.min(Math.max(parseInt(r.body.sessionLimit,10)||10,1),100),i=await this.workerService.processPendingQueues(s);n.json({success:!0,...i})});handleClearFailedQueue=this.wrapHandler((r,n)=>{let{PendingMessageStore:s}=(Zs(),Zo(Di)),a=new s(this.dbManager.getSessionStore().db,3).clearFailed();_.info("QUEUE","Cleared failed queue messages",{clearedCount:a}),n.json({success:!0,clearedCount:a})});handleClearAllQueue=this.wrapHandler((r,n)=>{let{PendingMessageStore:s}=(Zs(),Zo(Di)),a=new s(this.dbManager.getSessionStore().db,3).clearAll();_.warn("QUEUE","Cleared ALL queue messages (pending, processing, failed)",{clearedCount:a}),n.json({success:!0,clearedCount:a})});handleRetryMessage=this.wrapHandler((r,n)=>{let s=parseInt(r.params.id,10);if(isNaN(s)){n.status(400).json({error:"Invalid message ID"});return}let{PendingMessageStore:i}=(Zs(),Zo(Di));new i(this.dbManager.getSessionStore().db,3).retryMessage(s)?(_.info("QUEUE","Retried failed message",{messageId:s}),n.json({success:!0,messageId:s})):n.status(404).json({error:"Message not found or not in failed status"})});handleDeleteObservation=this.wrapHandler((r,n)=>{let s=this.parseIntParam(r,n,"id");if(s===null)return;this.dbManager.getSessionStore().deleteObservation(s)?(_.info("DATA","Deleted observation",{id:s}),n.json({success:!0,id:s})):this.notFound(n,`Observation #${s} not found`)});handleBulkDeleteObservations=this.wrapHandler((r,n)=>{let{ids:s}=r.body;if(!s||!Array.isArray(s)){this.badRequest(n,"ids must be an array of numbers");return}if(s.length===0){n.json({success:!0,deletedCount:0});return}if(!s.every(o=>typeof o=="number"&&Number.isInteger(o))){this.badRequest(n,"All ids must be integers");return}let a=this.dbManager.getSessionStore().deleteObservations(s);_.info("DATA","Bulk deleted observations",{count:a,requested:s.length}),n.json({success:!0,deletedCount:a})});handleGetAnalyticsTimeline=this.wrapHandler((r,n)=>{let s=r.query.range||"30d",i=r.query.project,a=this.dbManager.getSessionStore().db,o=30;s==="7d"?o=7:s==="90d"?o=90:s==="all"&&(o=365*10);let c=Date.now()-o*24*60*60*1e3,l=i?"AND project = ?":"",u=i?[c,i]:[c],p=a.prepare(` SELECT date(created_at_epoch / 1000, 'unixepoch', 'localtime') as date, COUNT(*) as count @@ -1532,19 +1532,19 @@ Tips: WHERE created_at_epoch >= ? ${l} GROUP BY type ORDER BY tokens DESC - `).all(...u);n.json({range:s,project:i||"all",totals:{totalTokens:p.totalTokens||0,avgTokensPerObservation:Math.round(p.avgTokens||0),totalObservations:p.totalObservations||0},daily:d,byType:m})})};var Df=class extends ze{constructor(r){super();this.searchManager=r}setupRoutes(r){r.get("/api/search",this.handleUnifiedSearch.bind(this)),r.get("/api/search/semantic",this.handleSemanticSearch.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.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 s=await this.searchManager.search(r.query);n.json(s)});handleSemanticSearch=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.semanticSearchWithScores(r.query);n.json(s)});handleUnifiedTimeline=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.timeline(r.query);n.json(s)});handleDecisions=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.decisions(r.query);n.json(s)});handleChanges=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.changes(r.query);n.json(s)});handleHowItWorks=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.howItWorks(r.query);n.json(s)});handleSearchObservations=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.searchObservations(r.query);n.json(s)});handleSearchSessions=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.searchSessions(r.query);n.json(s)});handleSearchPrompts=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.searchUserPrompts(r.query);n.json(s)});handleSearchByConcept=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.findByConcept(r.query);n.json(s)});handleSearchByFile=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.findByFile(r.query);n.json(s)});handleSearchByType=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.findByType(r.query);n.json(s)});handleGetRecentContext=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.getRecentContext(r.query);n.json(s)});handleGetContextTimeline=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.getContextTimeline(r.query);n.json(s)});handleContextPreview=this.wrapHandler(async(r,n)=>{let s=r.query.project;if(!s){this.badRequest(n,"Project parameter is required");return}let{generateContext:i}=await Promise.resolve().then(()=>(I0(),C0)),a=`/preview/${s}`,o=await i({session_id:"preview-"+Date.now(),cwd:a},!0);n.setHeader("Content-Type","text/plain; charset=utf-8"),n.send(o)});handleContextInject=this.wrapHandler(async(r,n)=>{let s=r.query.projects||r.query.project,i=r.query.colors==="true";if(!s){this.badRequest(n,"Project(s) parameter is required");return}let a=s.split(",").map(d=>d.trim()).filter(Boolean);if(a.length===0){this.badRequest(n,"At least one project is required");return}let{generateContext:o}=await Promise.resolve().then(()=>(I0(),C0)),l=`/context/${a[a.length-1]}`,u=r.query.planPath,p=await o({session_id:"context-inject-"+Date.now(),cwd:l,projects:a,planPath:u||void 0},i);n.setHeader("Content-Type","text/plain; charset=utf-8"),n.send(p)});handleGetTimelineByQuery=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.getTimelineByQuery(r.query);n.json(s)});handleSearchHelp=this.wrapHandler((r,n)=>{n.json({title:"Pilot Memory 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:41777/api/search/observations?query=authentication&limit=5"','curl "http://localhost:41777/api/search/by-type?type=bugfix&limit=10"','curl "http://localhost:41777/api/context/recent?project=pilot-memory&limit=3"','curl "http://localhost:41777/api/context/timeline?anchor=123&depth_before=5&depth_after=5"']})})};var Zi=require("fs"),Mf=require("path");se();Br();var zf=class extends ze{getLogFilePath(){let e=De.get("CLAUDE_PILOT_DATA_DIR"),r=(0,Mf.join)(e,"logs"),n=new Date().toISOString().split("T")[0];return(0,Mf.join)(r,`pilot-memory-${n}.log`)}getLogsDir(){let e=De.get("CLAUDE_PILOT_DATA_DIR");return(0,Mf.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,Zi.existsSync)(n)){r.json({logs:"",path:n,exists:!1});return}let s=parseInt(e.query.lines||"1000",10),i=Math.min(s,1e4),o=(0,Zi.readFileSync)(n,"utf-8").split(` + `).all(...u);n.json({range:s,project:i||"all",totals:{totalTokens:p.totalTokens||0,avgTokensPerObservation:Math.round(p.avgTokens||0),totalObservations:p.totalObservations||0},daily:d,byType:m})})};var zf=class extends Ae{constructor(r){super();this.searchManager=r}setupRoutes(r){r.get("/api/search",this.handleUnifiedSearch.bind(this)),r.get("/api/search/semantic",this.handleSemanticSearch.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.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 s=await this.searchManager.search(r.query);n.json(s)});handleSemanticSearch=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.semanticSearchWithScores(r.query);n.json(s)});handleUnifiedTimeline=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.timeline(r.query);n.json(s)});handleDecisions=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.decisions(r.query);n.json(s)});handleChanges=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.changes(r.query);n.json(s)});handleHowItWorks=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.howItWorks(r.query);n.json(s)});handleSearchObservations=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.searchObservations(r.query);n.json(s)});handleSearchSessions=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.searchSessions(r.query);n.json(s)});handleSearchPrompts=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.searchUserPrompts(r.query);n.json(s)});handleSearchByConcept=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.findByConcept(r.query);n.json(s)});handleSearchByFile=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.findByFile(r.query);n.json(s)});handleSearchByType=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.findByType(r.query);n.json(s)});handleGetRecentContext=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.getRecentContext(r.query);n.json(s)});handleGetContextTimeline=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.getContextTimeline(r.query);n.json(s)});handleContextPreview=this.wrapHandler(async(r,n)=>{let s=r.query.project;if(!s){this.badRequest(n,"Project parameter is required");return}let{generateContext:i}=await Promise.resolve().then(()=>(D0(),j0)),a=`/preview/${s}`,o=await i({session_id:"preview-"+Date.now(),cwd:a},!0);n.setHeader("Content-Type","text/plain; charset=utf-8"),n.send(o)});handleContextInject=this.wrapHandler(async(r,n)=>{let s=r.query.projects||r.query.project,i=r.query.colors==="true";if(!s){this.badRequest(n,"Project(s) parameter is required");return}let a=s.split(",").map(d=>d.trim()).filter(Boolean);if(a.length===0){this.badRequest(n,"At least one project is required");return}let{generateContext:o}=await Promise.resolve().then(()=>(D0(),j0)),l=`/context/${a[a.length-1]}`,u=r.query.planPath,p=await o({session_id:"context-inject-"+Date.now(),cwd:l,projects:a,planPath:u||void 0},i);n.setHeader("Content-Type","text/plain; charset=utf-8"),n.send(p)});handleGetTimelineByQuery=this.wrapHandler(async(r,n)=>{let s=await this.searchManager.getTimelineByQuery(r.query);n.json(s)});handleSearchHelp=this.wrapHandler((r,n)=>{n.json({title:"Pilot Memory 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:41777/api/search/observations?query=authentication&limit=5"','curl "http://localhost:41777/api/search/by-type?type=bugfix&limit=10"','curl "http://localhost:41777/api/context/recent?project=pilot-memory&limit=3"','curl "http://localhost:41777/api/context/timeline?anchor=123&depth_before=5&depth_after=5"']})})};var Vi=require("fs"),Lf=require("path");re();Br();var qf=class extends Ae{getLogFilePath(){let e=Me.get("CLAUDE_PILOT_DATA_DIR"),r=(0,Lf.join)(e,"logs"),n=new Date().toISOString().split("T")[0];return(0,Lf.join)(r,`pilot-memory-${n}.log`)}getLogsDir(){let e=Me.get("CLAUDE_PILOT_DATA_DIR");return(0,Lf.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,Vi.existsSync)(n)){r.json({logs:"",path:n,exists:!1});return}let s=parseInt(e.query.lines||"1000",10),i=Math.min(s,1e4),o=(0,Vi.readFileSync)(n,"utf-8").split(` `),c=Math.max(0,o.length-i),l=o.slice(c).join(` -`);r.json({logs:l,path:n,exists:!0,totalLines:o.length,returnedLines:o.length-c})});handleClearLogs=this.wrapHandler((e,r)=>{let n=this.getLogFilePath();if(!(0,Zi.existsSync)(n)){r.json({success:!0,message:"Log file does not exist",path:n});return}(0,Zi.writeFileSync)(n,"","utf-8"),_.info("SYSTEM","Log file cleared via UI",{path:n}),r.json({success:!0,message:"Log file cleared",path:n})})};se();var Lf=class extends ze{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:s,title:i,project:a}=r.body,o=a||this.defaultProject;if(!s||typeof s!="string"||s.trim().length===0){this.badRequest(n,"text is required and must be non-empty");return}let c=this.dbManager.getSessionStore(),l=this.dbManager.getChromaSync(),u=c.getOrCreateManualSession(o),p={type:"discovery",title:i||s.substring(0,60).trim()+(s.length>60?"...":""),subtitle:"Manual memory",facts:[],narrative:s,concepts:[],files_read:[],files_modified:[]},d=c.storeObservation(u,o,p,0,0);_.info("MEMORY","Manual observation saved",{id:d.id,project:o,title:p.title}),l.syncObservation(d.id,u,o,p,0,d.createdAtEpoch,0).catch(m=>{_.error("MEMORY","ChromaDB sync failed",{id:d.id},m)}),n.json({success:!0,id:d.id,title:p.title,project:o,message:`Memory saved as observation #${d.id}`})})};var Q4=pe(Kl(),1),wr=pe(require("path"),1),$e=require("fs"),Nu=require("zlib"),X4=require("stream/promises"),Mo=require("os");se();var qf=class extends ze{constructor(r){super();this.dbManager=r;this.backupDir=wr.default.join((0,Mo.homedir)(),".pilot/memory","backups"),this.ensureBackupDir()}backupDir;setupRoutes(r){r.get("/api/backups",this.handleListBackups.bind(this)),r.post("/api/backups/create",this.handleCreateBackup.bind(this)),r.delete("/api/backups/:filename",this.handleDeleteBackup.bind(this)),r.get("/api/backups/:filename/download",this.handleDownloadBackup.bind(this)),r.post("/api/backups/:filename/restore",this.handleRestoreBackup.bind(this)),r.post("/api/backups/restore/upload",Q4.default.raw({limit:"500mb",type:"application/gzip"}),this.handleRestoreFromUpload.bind(this)),r.get("/api/backups/:filename/info",this.handleGetBackupInfo.bind(this))}handleListBackups=this.wrapHandler((r,n)=>{let s=[];if((0,$e.existsSync)(this.backupDir)){let i=(0,$e.readdirSync)(this.backupDir).filter(a=>a.endsWith(".backup.gz")||a.endsWith(".backup.json")).sort((a,o)=>o.localeCompare(a));for(let a of i){let o=wr.default.join(this.backupDir,a),c=(0,$e.statSync)(o),l={filename:a,path:o,createdAt:c.mtime.toISOString(),sizeBytes:c.size},u=o.replace(/\.(backup\.gz|backup\.json)$/,".metadata.json");if((0,$e.existsSync)(u))try{l.metadata=JSON.parse((0,$e.readFileSync)(u,"utf-8"))}catch{}s.push(l)}}n.json({backupDir:this.backupDir,backups:s,totalCount:s.length})});handleCreateBackup=this.wrapHandler(async(r,n)=>{let s=r.body.includeSettings!==!1,i=r.body.compress!==!1,o=`pilot-memory-${new Date().toISOString().replace(/[:.]/g,"-").slice(0,19)}`,c=i?`${o}.backup.gz`:`${o}.backup.json`,l=wr.default.join(this.backupDir,c),u=wr.default.join(this.backupDir,`${o}.metadata.json`);_.info("BACKUP","Creating backup",{backupPath:l,includeSettings:s,compress:i});let d=this.dbManager.getSessionStore().db,m=d.prepare("SELECT * FROM sdk_sessions").all(),f=d.prepare("SELECT * FROM session_summaries").all(),v=d.prepare("SELECT * FROM observations").all(),g=d.prepare("SELECT * FROM user_prompts").all(),h=null,y=wr.default.join((0,Mo.homedir)(),".pilot/memory","settings.json");if(s&&(0,$e.existsSync)(y))try{h=JSON.parse((0,$e.readFileSync)(y,"utf-8"))}catch($){_.warn("BACKUP","Failed to read settings",{},$)}let b=wr.default.join((0,Mo.homedir)(),".pilot/memory","pilot-memory.db"),x=0;(0,$e.existsSync)(b)&&(x=(0,$e.statSync)(b).size);let w={version:"1.0",createdAt:new Date().toISOString(),data:{sessions:m,summaries:f,observations:v,prompts:g,settings:h}},S={version:"1.0",createdAt:new Date().toISOString(),createdAtEpoch:Date.now(),contents:{database:!0,settings:s&&h!==null},stats:{observations:v.length,sessions:m.length,summaries:f.length,prompts:g.length,dbSizeBytes:x}},E=JSON.stringify(w,null,2);if(i){let $=(0,Nu.createGzip)(),j=(0,$e.createWriteStream)(l);await(0,X4.pipeline)((async function*(){yield E})(),$,j)}else(0,$e.writeFileSync)(l,E,"utf-8");(0,$e.writeFileSync)(u,JSON.stringify(S,null,2),"utf-8");let k=(0,$e.statSync)(l);_.info("BACKUP","Backup created successfully",{filename:c,sizeBytes:k.size,observations:v.length}),n.json({success:!0,filename:c,path:l,sizeBytes:k.size,metadata:S})});handleDeleteBackup=this.wrapHandler((r,n)=>{let{filename:s}=r.params;if(s.includes("/")||s.includes("\\")||s.includes("..")){this.badRequest(n,"Invalid filename");return}let i=wr.default.join(this.backupDir,s),a=s.replace(/\.(backup\.gz|backup\.json)$/,""),o=wr.default.join(this.backupDir,`${a}.metadata.json`);if(!(0,$e.existsSync)(i)){this.notFound(n,"Backup not found");return}(0,$e.unlinkSync)(i),(0,$e.existsSync)(o)&&(0,$e.unlinkSync)(o),_.info("BACKUP","Backup deleted",{filename:s}),n.json({success:!0,filename:s})});handleDownloadBackup=this.wrapHandler((r,n)=>{let{filename:s}=r.params;if(s.includes("/")||s.includes("\\")||s.includes("..")){this.badRequest(n,"Invalid filename");return}let i=wr.default.join(this.backupDir,s);if(!(0,$e.existsSync)(i)){this.notFound(n,"Backup not found");return}n.setHeader("Content-Disposition",`attachment; filename="${s}"`),n.setHeader("Content-Type",s.endsWith(".gz")?"application/gzip":"application/json"),(0,$e.createReadStream)(i).pipe(n)});handleRestoreBackup=this.wrapHandler(async(r,n)=>{let{filename:s}=r.params,i=r.body.restoreSettings===!0,a=r.body.clearExisting===!0;if(s.includes("/")||s.includes("\\")||s.includes("..")){this.badRequest(n,"Invalid filename");return}let o=wr.default.join(this.backupDir,s);if(!(0,$e.existsSync)(o)){this.notFound(n,"Backup not found");return}_.info("BACKUP","Starting restore",{filename:s,restoreSettings:i,clearExisting:a});let c;try{if(s.endsWith(".gz")){let p=[],d=(0,Nu.createGunzip)(),m=(0,$e.createReadStream)(o);await new Promise((f,v)=>{m.pipe(d).on("data",g=>p.push(g)).on("end",()=>f()).on("error",v)}),c=JSON.parse(Buffer.concat(p).toString("utf-8"))}else c=JSON.parse((0,$e.readFileSync)(o,"utf-8"))}catch(p){_.error("BACKUP","Failed to read backup",{filename:s},p),this.badRequest(n,"Invalid or corrupted backup file");return}if(!c.data||!c.version){this.badRequest(n,"Invalid backup format");return}let l=this.dbManager.getSessionStore(),u={sessionsRestored:0,sessionsSkipped:0,summariesRestored:0,summariesSkipped:0,observationsRestored:0,observationsSkipped:0,promptsRestored:0,promptsSkipped:0,settingsRestored:!1};if(a&&(l.db.exec(` +`);r.json({logs:l,path:n,exists:!0,totalLines:o.length,returnedLines:o.length-c})});handleClearLogs=this.wrapHandler((e,r)=>{let n=this.getLogFilePath();if(!(0,Vi.existsSync)(n)){r.json({success:!0,message:"Log file does not exist",path:n});return}(0,Vi.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 Ff=class extends Ae{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:s,title:i,project:a}=r.body,o=a||this.defaultProject;if(!s||typeof s!="string"||s.trim().length===0){this.badRequest(n,"text is required and must be non-empty");return}let c=this.dbManager.getSessionStore(),l=this.dbManager.getChromaSync(),u=c.getOrCreateManualSession(o),p={type:"discovery",title:i||s.substring(0,60).trim()+(s.length>60?"...":""),subtitle:"Manual memory",facts:[],narrative:s,concepts:[],files_read:[],files_modified:[]},d=c.storeObservation(u,o,p,0,0);_.info("MEMORY","Manual observation saved",{id:d.id,project:o,title:p.title}),l.syncObservation(d.id,u,o,p,0,d.createdAtEpoch,0).catch(m=>{_.error("MEMORY","ChromaDB sync failed",{id:d.id},m)}),n.json({success:!0,id:d.id,title:p.title,project:o,message:`Memory saved as observation #${d.id}`})})};var sL=ie(Ql(),1),wr=ie(require("path"),1),$e=require("fs"),Du=require("zlib"),iL=require("stream/promises"),zo=require("os");re();var Uf=class extends Ae{constructor(r){super();this.dbManager=r;this.backupDir=wr.default.join((0,zo.homedir)(),".pilot/memory","backups"),this.ensureBackupDir()}backupDir;setupRoutes(r){r.get("/api/backups",this.handleListBackups.bind(this)),r.post("/api/backups/create",this.handleCreateBackup.bind(this)),r.delete("/api/backups/:filename",this.handleDeleteBackup.bind(this)),r.get("/api/backups/:filename/download",this.handleDownloadBackup.bind(this)),r.post("/api/backups/:filename/restore",this.handleRestoreBackup.bind(this)),r.post("/api/backups/restore/upload",sL.default.raw({limit:"500mb",type:"application/gzip"}),this.handleRestoreFromUpload.bind(this)),r.get("/api/backups/:filename/info",this.handleGetBackupInfo.bind(this))}handleListBackups=this.wrapHandler((r,n)=>{let s=[];if((0,$e.existsSync)(this.backupDir)){let i=(0,$e.readdirSync)(this.backupDir).filter(a=>a.endsWith(".backup.gz")||a.endsWith(".backup.json")).sort((a,o)=>o.localeCompare(a));for(let a of i){let o=wr.default.join(this.backupDir,a),c=(0,$e.statSync)(o),l={filename:a,path:o,createdAt:c.mtime.toISOString(),sizeBytes:c.size},u=o.replace(/\.(backup\.gz|backup\.json)$/,".metadata.json");if((0,$e.existsSync)(u))try{l.metadata=JSON.parse((0,$e.readFileSync)(u,"utf-8"))}catch{}s.push(l)}}n.json({backupDir:this.backupDir,backups:s,totalCount:s.length})});handleCreateBackup=this.wrapHandler(async(r,n)=>{let s=r.body.includeSettings!==!1,i=r.body.compress!==!1,o=`pilot-memory-${new Date().toISOString().replace(/[:.]/g,"-").slice(0,19)}`,c=i?`${o}.backup.gz`:`${o}.backup.json`,l=wr.default.join(this.backupDir,c),u=wr.default.join(this.backupDir,`${o}.metadata.json`);_.info("BACKUP","Creating backup",{backupPath:l,includeSettings:s,compress:i});let d=this.dbManager.getSessionStore().db,m=d.prepare("SELECT * FROM sdk_sessions").all(),f=d.prepare("SELECT * FROM session_summaries").all(),v=d.prepare("SELECT * FROM observations").all(),g=d.prepare("SELECT * FROM user_prompts").all(),h=null,y=wr.default.join((0,zo.homedir)(),".pilot/memory","settings.json");if(s&&(0,$e.existsSync)(y))try{h=JSON.parse((0,$e.readFileSync)(y,"utf-8"))}catch($){_.warn("BACKUP","Failed to read settings",{},$)}let b=wr.default.join((0,zo.homedir)(),".pilot/memory","pilot-memory.db"),x=0;(0,$e.existsSync)(b)&&(x=(0,$e.statSync)(b).size);let w={version:"1.0",createdAt:new Date().toISOString(),data:{sessions:m,summaries:f,observations:v,prompts:g,settings:h}},S={version:"1.0",createdAt:new Date().toISOString(),createdAtEpoch:Date.now(),contents:{database:!0,settings:s&&h!==null},stats:{observations:v.length,sessions:m.length,summaries:f.length,prompts:g.length,dbSizeBytes:x}},E=JSON.stringify(w,null,2);if(i){let $=(0,Du.createGzip)(),j=(0,$e.createWriteStream)(l);await(0,iL.pipeline)((async function*(){yield E})(),$,j)}else(0,$e.writeFileSync)(l,E,"utf-8");(0,$e.writeFileSync)(u,JSON.stringify(S,null,2),"utf-8");let k=(0,$e.statSync)(l);_.info("BACKUP","Backup created successfully",{filename:c,sizeBytes:k.size,observations:v.length}),n.json({success:!0,filename:c,path:l,sizeBytes:k.size,metadata:S})});handleDeleteBackup=this.wrapHandler((r,n)=>{let{filename:s}=r.params;if(s.includes("/")||s.includes("\\")||s.includes("..")){this.badRequest(n,"Invalid filename");return}let i=wr.default.join(this.backupDir,s),a=s.replace(/\.(backup\.gz|backup\.json)$/,""),o=wr.default.join(this.backupDir,`${a}.metadata.json`);if(!(0,$e.existsSync)(i)){this.notFound(n,"Backup not found");return}(0,$e.unlinkSync)(i),(0,$e.existsSync)(o)&&(0,$e.unlinkSync)(o),_.info("BACKUP","Backup deleted",{filename:s}),n.json({success:!0,filename:s})});handleDownloadBackup=this.wrapHandler((r,n)=>{let{filename:s}=r.params;if(s.includes("/")||s.includes("\\")||s.includes("..")){this.badRequest(n,"Invalid filename");return}let i=wr.default.join(this.backupDir,s);if(!(0,$e.existsSync)(i)){this.notFound(n,"Backup not found");return}n.setHeader("Content-Disposition",`attachment; filename="${s}"`),n.setHeader("Content-Type",s.endsWith(".gz")?"application/gzip":"application/json"),(0,$e.createReadStream)(i).pipe(n)});handleRestoreBackup=this.wrapHandler(async(r,n)=>{let{filename:s}=r.params,i=r.body.restoreSettings===!0,a=r.body.clearExisting===!0;if(s.includes("/")||s.includes("\\")||s.includes("..")){this.badRequest(n,"Invalid filename");return}let o=wr.default.join(this.backupDir,s);if(!(0,$e.existsSync)(o)){this.notFound(n,"Backup not found");return}_.info("BACKUP","Starting restore",{filename:s,restoreSettings:i,clearExisting:a});let c;try{if(s.endsWith(".gz")){let p=[],d=(0,Du.createGunzip)(),m=(0,$e.createReadStream)(o);await new Promise((f,v)=>{m.pipe(d).on("data",g=>p.push(g)).on("end",()=>f()).on("error",v)}),c=JSON.parse(Buffer.concat(p).toString("utf-8"))}else c=JSON.parse((0,$e.readFileSync)(o,"utf-8"))}catch(p){_.error("BACKUP","Failed to read backup",{filename:s},p),this.badRequest(n,"Invalid or corrupted backup file");return}if(!c.data||!c.version){this.badRequest(n,"Invalid backup format");return}let l=this.dbManager.getSessionStore(),u={sessionsRestored:0,sessionsSkipped:0,summariesRestored:0,summariesSkipped:0,observationsRestored:0,observationsSkipped:0,promptsRestored:0,promptsSkipped:0,settingsRestored:!1};if(a&&(l.db.exec(` DELETE FROM observations; DELETE FROM session_summaries; DELETE FROM user_prompts; DELETE FROM sdk_sessions; - `),_.info("BACKUP","Cleared existing data")),Array.isArray(c.data.sessions))for(let p of c.data.sessions)l.importSdkSession(p).imported?u.sessionsRestored++:u.sessionsSkipped++;if(Array.isArray(c.data.summaries))for(let p of c.data.summaries)l.importSessionSummary(p).imported?u.summariesRestored++:u.summariesSkipped++;if(Array.isArray(c.data.observations))for(let p of c.data.observations)l.importObservation(p).imported?u.observationsRestored++:u.observationsSkipped++;if(Array.isArray(c.data.prompts))for(let p of c.data.prompts)l.importUserPrompt(p).imported?u.promptsRestored++:u.promptsSkipped++;if(i&&c.data.settings){let p=wr.default.join((0,Mo.homedir)(),".pilot/memory","settings.json");(0,$e.writeFileSync)(p,JSON.stringify(c.data.settings,null,2),"utf-8"),u.settingsRestored=!0,_.info("BACKUP","Settings restored")}_.info("BACKUP","Restore completed",u),n.json({success:!0,filename:s,stats:u})});handleRestoreFromUpload=this.wrapHandler(async(r,n)=>{let s=r.query.restoreSettings==="true",i=r.query.clearExisting==="true";if(!r.body||r.body.length===0){this.badRequest(n,"No backup data provided");return}_.info("BACKUP","Starting restore from upload",{sizeBytes:r.body.length,restoreSettings:s,clearExisting:i});let a;try{let l=(0,Nu.createGunzip)(),u=[];await new Promise((p,d)=>{l.on("data",m=>u.push(m)),l.on("end",()=>p()),l.on("error",()=>{try{a=JSON.parse(r.body.toString("utf-8")),p()}catch{d(new Error("Invalid backup format"))}}),l.end(r.body)}),a||(a=JSON.parse(Buffer.concat(u).toString("utf-8")))}catch(l){_.error("BACKUP","Failed to parse uploaded backup",{},l),this.badRequest(n,"Invalid or corrupted backup file");return}if(!a.data||!a.version){this.badRequest(n,"Invalid backup format");return}let o=this.dbManager.getSessionStore(),c={sessionsRestored:0,sessionsSkipped:0,summariesRestored:0,summariesSkipped:0,observationsRestored:0,observationsSkipped:0,promptsRestored:0,promptsSkipped:0,settingsRestored:!1};if(i&&(o.db.exec(` + `),_.info("BACKUP","Cleared existing data")),Array.isArray(c.data.sessions))for(let p of c.data.sessions)l.importSdkSession(p).imported?u.sessionsRestored++:u.sessionsSkipped++;if(Array.isArray(c.data.summaries))for(let p of c.data.summaries)l.importSessionSummary(p).imported?u.summariesRestored++:u.summariesSkipped++;if(Array.isArray(c.data.observations))for(let p of c.data.observations)l.importObservation(p).imported?u.observationsRestored++:u.observationsSkipped++;if(Array.isArray(c.data.prompts))for(let p of c.data.prompts)l.importUserPrompt(p).imported?u.promptsRestored++:u.promptsSkipped++;if(i&&c.data.settings){let p=wr.default.join((0,zo.homedir)(),".pilot/memory","settings.json");(0,$e.writeFileSync)(p,JSON.stringify(c.data.settings,null,2),"utf-8"),u.settingsRestored=!0,_.info("BACKUP","Settings restored")}_.info("BACKUP","Restore completed",u),n.json({success:!0,filename:s,stats:u})});handleRestoreFromUpload=this.wrapHandler(async(r,n)=>{let s=r.query.restoreSettings==="true",i=r.query.clearExisting==="true";if(!r.body||r.body.length===0){this.badRequest(n,"No backup data provided");return}_.info("BACKUP","Starting restore from upload",{sizeBytes:r.body.length,restoreSettings:s,clearExisting:i});let a;try{let l=(0,Du.createGunzip)(),u=[];await new Promise((p,d)=>{l.on("data",m=>u.push(m)),l.on("end",()=>p()),l.on("error",()=>{try{a=JSON.parse(r.body.toString("utf-8")),p()}catch{d(new Error("Invalid backup format"))}}),l.end(r.body)}),a||(a=JSON.parse(Buffer.concat(u).toString("utf-8")))}catch(l){_.error("BACKUP","Failed to parse uploaded backup",{},l),this.badRequest(n,"Invalid or corrupted backup file");return}if(!a.data||!a.version){this.badRequest(n,"Invalid backup format");return}let o=this.dbManager.getSessionStore(),c={sessionsRestored:0,sessionsSkipped:0,summariesRestored:0,summariesSkipped:0,observationsRestored:0,observationsSkipped:0,promptsRestored:0,promptsSkipped:0,settingsRestored:!1};if(i&&(o.db.exec(` DELETE FROM observations; DELETE FROM session_summaries; DELETE FROM user_prompts; DELETE FROM sdk_sessions; - `),_.info("BACKUP","Cleared existing data")),Array.isArray(a.data.sessions))for(let l of a.data.sessions)o.importSdkSession(l).imported?c.sessionsRestored++:c.sessionsSkipped++;if(Array.isArray(a.data.summaries))for(let l of a.data.summaries)o.importSessionSummary(l).imported?c.summariesRestored++:c.summariesSkipped++;if(Array.isArray(a.data.observations))for(let l of a.data.observations)o.importObservation(l).imported?c.observationsRestored++:c.observationsSkipped++;if(Array.isArray(a.data.prompts))for(let l of a.data.prompts)o.importUserPrompt(l).imported?c.promptsRestored++:c.promptsSkipped++;if(s&&a.data.settings){let l=wr.default.join((0,Mo.homedir)(),".pilot/memory","settings.json");(0,$e.writeFileSync)(l,JSON.stringify(a.data.settings,null,2),"utf-8"),c.settingsRestored=!0}_.info("BACKUP","Restore from upload completed",c),n.json({success:!0,source:"upload",stats:c})});handleGetBackupInfo=this.wrapHandler((r,n)=>{let{filename:s}=r.params;if(s.includes("/")||s.includes("\\")||s.includes("..")){this.badRequest(n,"Invalid filename");return}let i=wr.default.join(this.backupDir,s),a=s.replace(/\.(backup\.gz|backup\.json)$/,""),o=wr.default.join(this.backupDir,`${a}.metadata.json`);if(!(0,$e.existsSync)(i)){this.notFound(n,"Backup not found");return}let c=(0,$e.statSync)(i),l={filename:s,path:i,createdAt:c.mtime.toISOString(),sizeBytes:c.size};if((0,$e.existsSync)(o))try{l.metadata=JSON.parse((0,$e.readFileSync)(o,"utf-8"))}catch{}n.json(l)});ensureBackupDir(){(0,$e.existsSync)(this.backupDir)||((0,$e.mkdirSync)(this.backupDir,{recursive:!0}),_.info("BACKUP","Created backup directory",{path:this.backupDir}))}};Br();yr();se();var zo=class{dbManager;vectorSync;constructor(e,r){this.dbManager=e,this.vectorSync=r??null}async deleteFromVectorDb(e,r){if(!(!this.vectorSync||e.length===0))try{await this.vectorSync.deleteDocuments(e,r)}catch(n){_.error("RETENTION","Vector deletion failed (non-fatal)",{ids:e.length,docType:r},n)}}getPolicy(){let e=De.loadFromFile(ar);return{enabled:e.CLAUDE_PILOT_RETENTION_ENABLED,maxAgeDays:parseInt(e.CLAUDE_PILOT_RETENTION_MAX_AGE_DAYS,10)||0,maxCount:parseInt(e.CLAUDE_PILOT_RETENTION_MAX_COUNT,10)||0,excludeTypes:this.parseJsonArray(e.CLAUDE_PILOT_RETENTION_EXCLUDE_TYPES),softDelete:e.CLAUDE_PILOT_RETENTION_SOFT_DELETE}}parseJsonArray(e){try{let r=JSON.parse(e);return Array.isArray(r)?r:[]}catch{return[]}}async preview(e){let r=e||this.getPolicy(),s=this.dbManager.getSessionStore().db,a=s.prepare("SELECT COUNT(*) as count FROM observations").get().count,o=r.excludeTypes.length>0?`AND type NOT IN (${r.excludeTypes.map(()=>"?").join(", ")})`:"",c=0;if(r.maxAgeDays>0){let v=Date.now()-r.maxAgeDays*24*60*60*1e3,g=` + `),_.info("BACKUP","Cleared existing data")),Array.isArray(a.data.sessions))for(let l of a.data.sessions)o.importSdkSession(l).imported?c.sessionsRestored++:c.sessionsSkipped++;if(Array.isArray(a.data.summaries))for(let l of a.data.summaries)o.importSessionSummary(l).imported?c.summariesRestored++:c.summariesSkipped++;if(Array.isArray(a.data.observations))for(let l of a.data.observations)o.importObservation(l).imported?c.observationsRestored++:c.observationsSkipped++;if(Array.isArray(a.data.prompts))for(let l of a.data.prompts)o.importUserPrompt(l).imported?c.promptsRestored++:c.promptsSkipped++;if(s&&a.data.settings){let l=wr.default.join((0,zo.homedir)(),".pilot/memory","settings.json");(0,$e.writeFileSync)(l,JSON.stringify(a.data.settings,null,2),"utf-8"),c.settingsRestored=!0}_.info("BACKUP","Restore from upload completed",c),n.json({success:!0,source:"upload",stats:c})});handleGetBackupInfo=this.wrapHandler((r,n)=>{let{filename:s}=r.params;if(s.includes("/")||s.includes("\\")||s.includes("..")){this.badRequest(n,"Invalid filename");return}let i=wr.default.join(this.backupDir,s),a=s.replace(/\.(backup\.gz|backup\.json)$/,""),o=wr.default.join(this.backupDir,`${a}.metadata.json`);if(!(0,$e.existsSync)(i)){this.notFound(n,"Backup not found");return}let c=(0,$e.statSync)(i),l={filename:s,path:i,createdAt:c.mtime.toISOString(),sizeBytes:c.size};if((0,$e.existsSync)(o))try{l.metadata=JSON.parse((0,$e.readFileSync)(o,"utf-8"))}catch{}n.json(l)});ensureBackupDir(){(0,$e.existsSync)(this.backupDir)||((0,$e.mkdirSync)(this.backupDir,{recursive:!0}),_.info("BACKUP","Created backup directory",{path:this.backupDir}))}};Br();yr();re();var Lo=class{dbManager;vectorSync;constructor(e,r){this.dbManager=e,this.vectorSync=r??null}async deleteFromVectorDb(e,r){if(!(!this.vectorSync||e.length===0))try{await this.vectorSync.deleteDocuments(e,r)}catch(n){_.error("RETENTION","Vector deletion failed (non-fatal)",{ids:e.length,docType:r},n)}}getPolicy(){let e=Me.loadFromFile(ar);return{enabled:e.CLAUDE_PILOT_RETENTION_ENABLED,maxAgeDays:parseInt(e.CLAUDE_PILOT_RETENTION_MAX_AGE_DAYS,10)||0,maxCount:parseInt(e.CLAUDE_PILOT_RETENTION_MAX_COUNT,10)||0,excludeTypes:this.parseJsonArray(e.CLAUDE_PILOT_RETENTION_EXCLUDE_TYPES),softDelete:e.CLAUDE_PILOT_RETENTION_SOFT_DELETE}}parseJsonArray(e){try{let r=JSON.parse(e);return Array.isArray(r)?r:[]}catch{return[]}}async preview(e){let r=e||this.getPolicy(),s=this.dbManager.getSessionStore().db,a=s.prepare("SELECT COUNT(*) as count FROM observations").get().count,o=r.excludeTypes.length>0?`AND type NOT IN (${r.excludeTypes.map(()=>"?").join(", ")})`:"",c=0;if(r.maxAgeDays>0){let v=Date.now()-r.maxAgeDays*24*60*60*1e3,g=` SELECT COUNT(*) as count FROM observations WHERE created_at_epoch < ? ${o} `;c=s.prepare(g).get(v,...r.excludeTypes).count}let l=0;if(r.maxCount>0){let v=` @@ -1619,7 +1619,7 @@ Tips: FROM deleted_observations ORDER BY deleted_at_epoch DESC LIMIT ? - `).all(e)}catch{return[]}}};se();var Ff=pe(require("fs"),1),A0=pe(require("path"),1),eL=pe(require("os"),1),Uf=class extends ze{dbManager;constructor(e){super(),this.dbManager=e}getRetentionService(){return new zo(this.dbManager,this.dbManager.getVectorSyncOrNull())}setupRoutes(e){e.get("/api/retention/policy",this.handleGetPolicy.bind(this)),e.get("/api/retention/preview",this.handlePreview.bind(this)),e.post("/api/retention/run",this.handleRun.bind(this)),e.get("/api/retention/archive",this.handleGetArchive.bind(this)),e.get("/api/retention/archive/list",this.handleListArchived.bind(this)),e.post("/api/retention/restore",this.handleRestore.bind(this)),e.post("/api/retention/vacuum",this.handleVacuum.bind(this)),e.get("/api/vector-db/health",this.handleVectorDbHealth.bind(this))}handleGetPolicy=this.wrapHandler(async(e,r)=>{let n=this.getRetentionService().getPolicy();r.json({policy:n})});handlePreview=this.wrapHandler(async(e,r)=>{let n=this.parseQueryPolicy(e.query),s=await this.getRetentionService().preview(n);r.json({preview:s,policy:n||this.getRetentionService().getPolicy()})});handleRun=this.wrapHandler(async(e,r)=>{let{dryRun:n=!1,policy:s}=e.body,i;s&&(i={enabled:s.enabled??!0,maxAgeDays:parseInt(s.maxAgeDays,10)||0,maxCount:parseInt(s.maxCount,10)||0,excludeTypes:Array.isArray(s.excludeTypes)?s.excludeTypes:[],softDelete:s.softDelete??!0}),_.info("RETENTION",`Running cleanup (dryRun: ${n})`,{policy:i||this.getRetentionService().getPolicy()});let a=await this.getRetentionService().run(i,n);r.json({success:a.errors.length===0,result:a,policy:i||this.getRetentionService().getPolicy()})});handleGetArchive=this.wrapHandler(async(e,r)=>{let n=this.getRetentionService().getArchiveCount();r.json({archived:n})});handleListArchived=this.wrapHandler(async(e,r)=>{let n=parseInt(e.query.limit,10)||100,s=this.getRetentionService().listArchived(n);r.json({observations:s,count:s.length,total:this.getRetentionService().getArchiveCount()})});handleRestore=this.wrapHandler(async(e,r)=>{let{ids:n}=e.body,s=Array.isArray(n)?n.map(a=>parseInt(String(a),10)).filter(a=>!isNaN(a)):void 0;_.info("RETENTION","Restoring from archive",{ids:s?.length??"all"});let i=await this.getRetentionService().restore(s);r.json({success:i.errors.length===0,restored:i.restored,errors:i.errors})});handleVacuum=this.wrapHandler(async(e,r)=>{let n=this.dbManager.getVectorSyncOrNull();if(!n){r.status(400).json({success:!1,error:"Vector database is not enabled"});return}_.info("RETENTION","Starting vacuum \u2014 rebuilding vector database index");let s=await n.vacuum();r.json({success:!s.error,...s})});handleVectorDbHealth=this.wrapHandler(async(e,r)=>{let n=A0.default.join(eL.default.homedir(),".pilot/memory/vector-db"),s=this.getDirectorySize(n),i=this.dbManager.getVectorSyncOrNull();if(!i){r.json({directorySize:s,embeddingCount:0,expectedSize:0,bloatRatio:0,healthy:!0,available:!1});return}let a=0;try{await i.isHealthy()&&(a=await i.getEmbeddingCount())}catch{}let o=384*4*a*10,c=o>0?s/o:0,l=c<20;r.json({directorySize:s,embeddingCount:a,expectedSize:o,bloatRatio:c,healthy:l,available:!0})});getDirectorySize(e){let r=0;try{if(!Ff.default.existsSync(e))return 0;let n=Ff.default.readdirSync(e,{withFileTypes:!0});for(let s of n){let i=A0.default.join(e,s.name);if(s.isDirectory())r+=this.getDirectorySize(i);else try{r+=Ff.default.statSync(i).size}catch{}}}catch{}return r}parseQueryPolicy(e){if(!e.maxAgeDays&&!e.maxCount)return;let r=this.getRetentionService().getPolicy();return{enabled:!0,maxAgeDays:e.maxAgeDays?parseInt(e.maxAgeDays,10):r.maxAgeDays,maxCount:e.maxCount?parseInt(e.maxCount,10):r.maxCount,excludeTypes:e.excludeTypes?e.excludeTypes.split(",").filter(Boolean):r.excludeTypes,softDelete:e.softDelete!=="false"}}};var Hf=class extends ze{metricsService;constructor(e){super(),this.metricsService=e}setupRoutes(e){e.get("/api/metrics",this.handleGetMetrics.bind(this)),e.get("/metrics",this.handleGetPrometheus.bind(this))}handleGetMetrics=this.wrapHandler(async(e,r)=>{let n=await this.metricsService.getMetrics();r.json(n)});handleGetPrometheus=this.wrapHandler(async(e,r)=>{let n=await this.metricsService.toPrometheus();r.set("Content-Type","text/plain; version=0.0.4"),r.send(n)})};se();var Bf=class extends ze{setupRoutes(e){e.get("/login",this.handleLoginPage.bind(this)),e.post("/api/auth/login",this.handleLogin.bind(this)),e.post("/api/auth/logout",this.handleLogout.bind(this)),e.get("/api/auth/status",this.handleAuthStatus.bind(this))}handleLoginPage=this.wrapHandler((e,r)=>{if(!no()){r.redirect("/");return}let n=` + `).all(e)}catch{return[]}}};re();var Hf=ie(require("fs"),1),M0=ie(require("path"),1),aL=ie(require("os"),1),Bf=class extends Ae{dbManager;constructor(e){super(),this.dbManager=e}getRetentionService(){return new Lo(this.dbManager,this.dbManager.getVectorSyncOrNull())}setupRoutes(e){e.get("/api/retention/policy",this.handleGetPolicy.bind(this)),e.get("/api/retention/preview",this.handlePreview.bind(this)),e.post("/api/retention/run",this.handleRun.bind(this)),e.get("/api/retention/archive",this.handleGetArchive.bind(this)),e.get("/api/retention/archive/list",this.handleListArchived.bind(this)),e.post("/api/retention/restore",this.handleRestore.bind(this)),e.post("/api/retention/vacuum",this.handleVacuum.bind(this)),e.get("/api/vector-db/health",this.handleVectorDbHealth.bind(this))}handleGetPolicy=this.wrapHandler(async(e,r)=>{let n=this.getRetentionService().getPolicy();r.json({policy:n})});handlePreview=this.wrapHandler(async(e,r)=>{let n=this.parseQueryPolicy(e.query),s=await this.getRetentionService().preview(n);r.json({preview:s,policy:n||this.getRetentionService().getPolicy()})});handleRun=this.wrapHandler(async(e,r)=>{let{dryRun:n=!1,policy:s}=e.body,i;s&&(i={enabled:s.enabled??!0,maxAgeDays:parseInt(s.maxAgeDays,10)||0,maxCount:parseInt(s.maxCount,10)||0,excludeTypes:Array.isArray(s.excludeTypes)?s.excludeTypes:[],softDelete:s.softDelete??!0}),_.info("RETENTION",`Running cleanup (dryRun: ${n})`,{policy:i||this.getRetentionService().getPolicy()});let a=await this.getRetentionService().run(i,n);r.json({success:a.errors.length===0,result:a,policy:i||this.getRetentionService().getPolicy()})});handleGetArchive=this.wrapHandler(async(e,r)=>{let n=this.getRetentionService().getArchiveCount();r.json({archived:n})});handleListArchived=this.wrapHandler(async(e,r)=>{let n=parseInt(e.query.limit,10)||100,s=this.getRetentionService().listArchived(n);r.json({observations:s,count:s.length,total:this.getRetentionService().getArchiveCount()})});handleRestore=this.wrapHandler(async(e,r)=>{let{ids:n}=e.body,s=Array.isArray(n)?n.map(a=>parseInt(String(a),10)).filter(a=>!isNaN(a)):void 0;_.info("RETENTION","Restoring from archive",{ids:s?.length??"all"});let i=await this.getRetentionService().restore(s);r.json({success:i.errors.length===0,restored:i.restored,errors:i.errors})});handleVacuum=this.wrapHandler(async(e,r)=>{let n=this.dbManager.getVectorSyncOrNull();if(!n){r.status(400).json({success:!1,error:"Vector database is not enabled"});return}_.info("RETENTION","Starting vacuum \u2014 rebuilding vector database index");let s=await n.vacuum();r.json({success:!s.error,...s})});handleVectorDbHealth=this.wrapHandler(async(e,r)=>{let n=M0.default.join(aL.default.homedir(),".pilot/memory/vector-db"),s=this.getDirectorySize(n),i=this.dbManager.getVectorSyncOrNull();if(!i){r.json({directorySize:s,embeddingCount:0,expectedSize:0,bloatRatio:0,healthy:!0,available:!1});return}let a=0;try{await i.isHealthy()&&(a=await i.getEmbeddingCount())}catch{}let o=384*4*a*10,c=o>0?s/o:0,l=c<20;r.json({directorySize:s,embeddingCount:a,expectedSize:o,bloatRatio:c,healthy:l,available:!0})});getDirectorySize(e){let r=0;try{if(!Hf.default.existsSync(e))return 0;let n=Hf.default.readdirSync(e,{withFileTypes:!0});for(let s of n){let i=M0.default.join(e,s.name);if(s.isDirectory())r+=this.getDirectorySize(i);else try{r+=Hf.default.statSync(i).size}catch{}}}catch{}return r}parseQueryPolicy(e){if(!e.maxAgeDays&&!e.maxCount)return;let r=this.getRetentionService().getPolicy();return{enabled:!0,maxAgeDays:e.maxAgeDays?parseInt(e.maxAgeDays,10):r.maxAgeDays,maxCount:e.maxCount?parseInt(e.maxCount,10):r.maxCount,excludeTypes:e.excludeTypes?e.excludeTypes.split(",").filter(Boolean):r.excludeTypes,softDelete:e.softDelete!=="false"}}};var Wf=class extends Ae{metricsService;constructor(e){super(),this.metricsService=e}setupRoutes(e){e.get("/api/metrics",this.handleGetMetrics.bind(this)),e.get("/metrics",this.handleGetPrometheus.bind(this))}handleGetMetrics=this.wrapHandler(async(e,r)=>{let n=await this.metricsService.getMetrics();r.json(n)});handleGetPrometheus=this.wrapHandler(async(e,r)=>{let n=await this.metricsService.toPrometheus();r.set("Content-Type","text/plain; version=0.0.4"),r.send(n)})};re();var Zf=class extends Ae{setupRoutes(e){e.get("/login",this.handleLoginPage.bind(this)),e.post("/api/auth/login",this.handleLogin.bind(this)),e.post("/api/auth/logout",this.handleLogout.bind(this)),e.get("/api/auth/status",this.handleAuthStatus.bind(this))}handleLoginPage=this.wrapHandler((e,r)=>{if(!so()){r.redirect("/");return}let n=` @@ -1813,14 +1813,14 @@ Tips: - `.trim();r.setHeader("Content-Type","text/html"),r.send(n)});handleLogin=this.wrapHandler((e,r)=>{let{token:n}=e.body;if(!n){r.status(400).json({code:"MISSING_TOKEN",message:"Token is required"});return}let s=Rm();if(!s){r.status(500).json({code:"NOT_CONFIGURED",message:"Remote authentication is not configured"});return}if(n!==s){_.warn("SECURITY","Failed login attempt",{ip:e.ip||e.socket.remoteAddress}),r.status(401).json({code:"INVALID_TOKEN",message:"Invalid token"});return}let i=e.ip||e.socket.remoteAddress||"unknown",a=AD(i);r.cookie(h_(),a,{httpOnly:!0,secure:e.protocol==="https",sameSite:"lax",maxAge:1440*60*1e3,path:"/"}),_.info("SECURITY","User logged in",{ip:i}),r.json({code:"SUCCESS",message:"Login successful"})});handleLogout=this.wrapHandler((e,r)=>{let n=h_(),s=e.cookies?.[n];s&&ND(s),r.clearCookie(n,{httpOnly:!0,secure:e.protocol==="https",sameSite:"lax",path:"/"}),_.info("SECURITY","User logged out",{ip:e.ip||e.socket.remoteAddress}),r.json({code:"SUCCESS",message:"Logout successful"})});handleAuthStatus=this.wrapHandler((e,r)=>{let n=no();r.json({authRequired:n,authenticated:!n||!!e.auth})})};var es=require("fs"),Xs=pe(require("path"),1);var Wf=require("fs");function An(t,e){let r=process.env.CLAUDE_PROJECT_ROOT||process.cwd();if(!e||!t)return r;let n=t.getSessionStore().getProjectRoot(e);return!n||!(0,Wf.existsSync)(n)||!(0,Wf.statSync)(n).isDirectory()?r:n}var N0=require("child_process");function tL(t){try{let e=(0,N0.execSync)("git rev-parse --abbrev-ref HEAD",{cwd:t,encoding:"utf-8",timeout:2e3}).trim(),r=(0,N0.execSync)("git status --porcelain",{cwd:t,encoding:"utf-8",timeout:2e3}),n=0,s=0,i=0;for(let a of r.split(` -`)){if(!a)continue;let o=a[0]||" ",c=a[1]||" ";o==="?"&&c==="?"?i++:(o!==" "&&o!=="?"&&n++,c!==" "&&s++)}return{branch:e,staged:n,unstaged:s,untracked:i}}catch{return{branch:null,staged:0,unstaged:0,untracked:0}}}var Ur=require("fs"),Lo=pe(require("path"),1);se();function Zf(t,e,r,n){let s=t.match(/^Status:\s*(\w+)/m);if(!s)return null;let i=s[1],a=(t.match(/^- \[x\] Task \d+:/gm)||[]).length,o=(t.match(/^- \[ \] Task \d+:/gm)||[]).length,c=a+o,l=t.match(/^Approved:\s*(\w+)/m),u=l?l[1].toLowerCase()==="yes":!1,p=t.match(/^Iterations:\s*(\d+)/m),d=p?parseInt(p[1],10):0,m=t.match(/^Worktree:\s*(\w+)/m),f=m?m[1].toLowerCase()!=="no":!0,v;i==="PENDING"&&!u?v="plan":i==="PENDING"&&u?v="implement":v="verify";let g=e.replace(".md","");return g.match(/^\d{4}-\d{2}-\d{2}-/)&&(g=g.split("-").slice(3).join("-")),{name:g,status:i,completed:a,total:c,phase:v,iterations:d,approved:u,worktree:f,filePath:r,modifiedAt:n.toISOString()}}function ype(t){let e=Lo.default.join(t,".worktrees");if(!(0,Ur.existsSync)(e))return[];let r=[];try{let n=(0,Ur.readdirSync)(e,{withFileTypes:!0});for(let s of n){if(!s.isDirectory())continue;let i=Lo.default.join(e,s.name,"docs","plans");(0,Ur.existsSync)(i)&&r.push(i)}}catch{}return r}function j0(t){let e=[];try{let r=(0,Ur.readdirSync)(t).filter(n=>n.endsWith(".md")).sort().reverse();for(let n of r){let s=Lo.default.join(t,n),i=(0,Ur.statSync)(s),a=(0,Ur.readFileSync)(s,"utf-8"),o=Zf(a,n,s,i.mtime);o&&e.push(o)}}catch(r){_.error("HTTP","Failed to read plans from directory",{plansDir:t},r)}return e}function Vf(t){let e=[],r=Lo.default.join(t,"docs","plans");return(0,Ur.existsSync)(r)&&e.push(r),e.push(...ype(t)),e}function rL(t){let e=new Date;e.setHours(0,0,0,0);let r=[];for(let n of Vf(t))try{let s=(0,Ur.readdirSync)(n).filter(i=>i.endsWith(".md")).sort().reverse();for(let i of s){let a=Lo.default.join(n,i),o=(0,Ur.statSync)(a),c=new Date(o.mtime);if(c.setHours(0,0,0,0),c.getTime()!==e.getTime())continue;let l=(0,Ur.readFileSync)(a,"utf-8"),u=Zf(l,i,a,o.mtime);u&&u.status!=="VERIFIED"&&r.push(u)}}catch(s){_.error("HTTP","Failed to read active plans",{plansDir:n},s)}return r}function nL(t){let e=[];for(let r of Vf(t))e.push(...j0(r));return e.sort((r,n)=>new Date(n.modifiedAt).getTime()-new Date(r.modifiedAt).getTime()).slice(0,10)}function D0(t){let e=[];for(let r of Vf(t))e.push(...j0(r));return e.sort((r,n)=>new Date(n.modifiedAt).getTime()-new Date(r.modifiedAt).getTime())}function sL(t){let e=[];for(let p of Vf(t))e.push(...j0(p));if(e.length===0)return{totalSpecs:0,verified:0,inProgress:0,pending:0,avgIterations:0,totalTasksCompleted:0,totalTasks:0,completionTimeline:[],recentlyVerified:[]};let r=e.filter(p=>p.status==="VERIFIED"),n=e.filter(p=>p.status==="PENDING"&&p.approved||p.status==="COMPLETE"),s=e.filter(p=>p.status==="PENDING"&&!p.approved),i=r.reduce((p,d)=>p+d.iterations,0),a=e.reduce((p,d)=>p+d.completed,0),o=e.reduce((p,d)=>p+d.total,0),c=new Map;for(let p of r){let d=p.modifiedAt.slice(0,10);c.set(d,(c.get(d)||0)+1)}let l=Array.from(c.entries()).sort(([p],[d])=>p.localeCompare(d)).map(([p,d])=>({date:p,count:d})),u=r.sort((p,d)=>new Date(d.modifiedAt).getTime()-new Date(p.modifiedAt).getTime()).slice(0,5).map(p=>({name:p.name,verifiedAt:p.modifiedAt}));return{totalSpecs:e.length,verified:r.length,inProgress:n.length,pending:s.length,avgIterations:r.length>0?Math.round(i/r.length*10)/10:0,totalTasksCompleted:a,totalTasks:o,completionTimeline:l,recentlyVerified:u}}function iL(t,e){if(!e.endsWith(".md"))return!1;let r=Xs.default.resolve(t),n=Xs.default.join(r,"docs","plans");if(e.startsWith(n+Xs.default.sep)||e.startsWith(n+"/"))return!0;let s=Xs.default.join(r,".worktrees");return!!(e.startsWith(s)&&e.includes("/docs/plans/"))}var Gf=class t extends ze{dbManager;sseBroadcaster;constructor(e,r){super(),this.dbManager=e??null,this.sseBroadcaster=r??null}static VALID_PLAN_STATUSES=new Set(["PENDING","COMPLETE","VERIFIED"]);isValidPlanStatus(e){return typeof e=="string"&&t.VALID_PLAN_STATUSES.has(e)}setupRoutes(e){e.get("/api/plan",this.handleGetActivePlan.bind(this)),e.get("/api/plans",this.handleGetAllPlans.bind(this)),e.get("/api/plans/active",this.handleGetActiveSpecs.bind(this)),e.get("/api/plan/content",this.handleGetPlanContent.bind(this)),e.delete("/api/plan",this.handleDeletePlan.bind(this)),e.get("/api/plans/stats",this.handleGetPlanStats.bind(this)),e.get("/api/git",this.handleGetGitInfo.bind(this)),e.post("/api/sessions/:sessionDbId/plan",this.handleAssociatePlan.bind(this)),e.post("/api/sessions/by-content-id/:contentSessionId/plan",this.handleAssociatePlanByContentId.bind(this)),e.get("/api/sessions/:sessionDbId/plan",this.handleGetSessionPlan.bind(this)),e.get("/api/sessions/by-content-id/:contentSessionId/plan",this.handleGetSessionPlanByContentId.bind(this)),e.delete("/api/sessions/:sessionDbId/plan",this.handleClearSessionPlan.bind(this)),e.put("/api/sessions/:sessionDbId/plan/status",this.handleUpdatePlanStatus.bind(this))}handleGetPlanStats=this.wrapHandler((e,r)=>{let n=e.query.project,s=An(this.dbManager,n);r.json(sL(s))});handleGetActivePlan=this.wrapHandler((e,r)=>{let n=e.query.project,s=An(this.dbManager,n),i=rL(s);r.json({active:i.length>0,plans:i,plan:i[0]||null})});handleGetAllPlans=this.wrapHandler((e,r)=>{let n=e.query.project,s=An(this.dbManager,n);r.json({plans:nL(s)})});handleGetGitInfo=this.wrapHandler((e,r)=>{let n=e.query.project,s=An(this.dbManager,n);r.json(tL(s))});handleGetActiveSpecs=this.wrapHandler((e,r)=>{let n=e.query.project,s=An(this.dbManager,n);r.json({specs:D0(s)})});handleGetPlanContent=this.wrapHandler((e,r)=>{let n=e.query.project,s=An(this.dbManager,n),i=e.query.path;if(!i){let p=D0(s);if(p.length===0){r.status(404).json({error:"No active specs found"});return}let d=p[0];try{let m=(0,es.readFileSync)(d.filePath,"utf-8");r.json({content:m,name:d.name,status:d.status,filePath:d.filePath})}catch{r.status(404).json({error:"Plan file not found"})}return}let a=Xs.default.resolve(s,i);if(!iL(s,a)){r.status(403).json({error:"Access denied: path must be within docs/plans/ or .worktrees/*/docs/plans/"});return}if(!(0,es.existsSync)(a)){r.status(404).json({error:"Plan not found"});return}let o=(0,es.readFileSync)(a,"utf-8"),c=Xs.default.basename(a),l=(0,es.statSync)(a),u=Zf(o,c,a,l.mtime);r.json({content:o,name:u?.name||c.replace(".md",""),status:u?.status||"UNKNOWN",filePath:a})});handleDeletePlan=this.wrapHandler((e,r)=>{let n=process.env.CLAUDE_PROJECT_ROOT||process.cwd(),s=e.query.path;if(!s){this.badRequest(r,"Missing path query parameter");return}let i=Xs.default.resolve(n,s);if(!iL(n,i)){r.status(403).json({error:"Access denied: path must be within docs/plans/ or .worktrees/*/docs/plans/"});return}if(!(0,es.existsSync)(i)){this.notFound(r,"Plan not found");return}(0,es.unlinkSync)(i),r.json({success:!0})});handleAssociatePlan=this.wrapHandler((e,r)=>{let n=this.parseIntParam(e,r,"sessionDbId");if(n===null||!this.validateRequired(e,r,["planPath","status"]))return;if(!this.isValidPlanStatus(e.body.status)){this.badRequest(r,`Invalid status: ${e.body.status}. Must be PENDING, COMPLETE, or VERIFIED`);return}let s=this.getDb(r);if(!s)return;let i=b0(s,n,e.body.planPath,e.body.status);this.broadcastPlanChange(),r.json({plan:i})});handleAssociatePlanByContentId=this.wrapHandler((e,r)=>{let n=e.params.contentSessionId;if(!n){this.badRequest(r,"Missing contentSessionId");return}if(!this.validateRequired(e,r,["planPath","status"]))return;if(!this.isValidPlanStatus(e.body.status)){this.badRequest(r,`Invalid status: ${e.body.status}. Must be PENDING, COMPLETE, or VERIFIED`);return}let s=this.getDb(r);if(!s)return;let i=s.prepare("SELECT id FROM sdk_sessions WHERE content_session_id = ?").get(n);if(!i){this.notFound(r,"Session not found");return}let a=b0(s,i.id,e.body.planPath,e.body.status);this.broadcastPlanChange(),r.json({plan:a})});handleGetSessionPlan=this.wrapHandler((e,r)=>{let n=this.parseIntParam(e,r,"sessionDbId");if(n===null)return;let s=this.getDb(r);s&&r.json({plan:kf(s,n)})});handleGetSessionPlanByContentId=this.wrapHandler((e,r)=>{let n=e.params.contentSessionId;if(!n){this.badRequest(r,"Missing contentSessionId");return}let s=this.getDb(r);s&&r.json({plan:F2(s,n)})});handleClearSessionPlan=this.wrapHandler((e,r)=>{let n=this.parseIntParam(e,r,"sessionDbId");if(n===null)return;let s=this.getDb(r);s&&(H2(s,n),this.broadcastPlanChange(),r.json({success:!0}))});handleUpdatePlanStatus=this.wrapHandler((e,r)=>{let n=this.parseIntParam(e,r,"sessionDbId");if(n===null||!this.validateRequired(e,r,["status"]))return;if(!this.isValidPlanStatus(e.body.status)){this.badRequest(r,`Invalid status: ${e.body.status}. Must be PENDING, COMPLETE, or VERIFIED`);return}let s=this.getDb(r);s&&(U2(s,n,e.body.status),this.broadcastPlanChange(),r.json({plan:kf(s,n)}))});broadcastPlanChange(){this.sseBroadcaster?.broadcast({type:"plan_association_changed"})}getDb(e){return this.dbManager?this.dbManager.getSessionStore().db:(e.status(503).json({error:"Database not available"}),null)}};var Sr=require("child_process"),Jf=require("fs"),Yf=pe(require("path"),1);var Kf=class extends ze{setupRoutes(e){e.get("/api/worktree/status",this.handleGetStatus.bind(this)),e.get("/api/worktree/diff",this.handleGetDiff.bind(this)),e.get("/api/worktree/diff/:file(*)",this.handleGetFileDiff.bind(this)),e.post("/api/worktree/sync",this.handleSync.bind(this)),e.post("/api/worktree/discard",this.handleDiscard.bind(this))}handleGetStatus=this.wrapHandler((e,r)=>{let n=process.env.CLAUDE_PROJECT_ROOT||process.cwd(),s=this.getWorktreeStatus(n);r.json(s)});handleGetDiff=this.wrapHandler((e,r)=>{let n=process.env.CLAUDE_PROJECT_ROOT||process.cwd(),s=this.getWorktreeStatus(n);if(!s.active||!s.branch||!s.baseBranch){r.json({active:!1,files:[]});return}let i=this.getChangedFiles(n,s.baseBranch,s.branch);r.json({active:!0,files:i})});handleGetFileDiff=this.wrapHandler((e,r)=>{let n=process.env.CLAUDE_PROJECT_ROOT||process.cwd(),s=this.getWorktreeStatus(n),i=e.params.file;if(!s.active||!s.branch||!s.baseBranch){this.badRequest(r,"No active worktree");return}if(!i){this.badRequest(r,"Missing file path");return}try{let a=(0,Sr.execFileSync)("git",["diff",`${s.baseBranch}...${s.branch}`,"--",i],{cwd:n,encoding:"utf-8",timeout:5e3});r.json({file:i,diff:a})}catch{this.notFound(r,"File not found in diff")}});handleSync=this.wrapHandler((e,r)=>{let n=process.env.CLAUDE_PROJECT_ROOT||process.cwd(),s=this.getWorktreeStatus(n);if(!s.active||!s.branch||!s.baseBranch){this.badRequest(r,"No active worktree");return}try{let i=this.getMainRepoRoot(n);if(!i){r.status(500).json({error:"Cannot determine main repository root"});return}(0,Sr.execFileSync)("git",["checkout",s.baseBranch],{cwd:i,encoding:"utf-8",timeout:1e4}),(0,Sr.execFileSync)("git",["merge","--squash",s.branch],{cwd:i,encoding:"utf-8",timeout:3e4});let a=s.planSlug||s.branch.replace("spec/","");(0,Sr.execFileSync)("git",["commit","-m",`feat: implement spec/${a}`],{cwd:i,encoding:"utf-8",timeout:1e4});let o=(0,Sr.execFileSync)("git",["rev-parse","HEAD"],{cwd:i,encoding:"utf-8",timeout:5e3}).toString().trim(),c=(0,Sr.execFileSync)("git",["diff","--stat","HEAD~1"],{cwd:i,encoding:"utf-8",timeout:5e3}).toString(),l=this.countFilesFromStat(c);(0,Sr.execFileSync)("git",["worktree","remove",n,"--force"],{cwd:i,encoding:"utf-8",timeout:1e4}),(0,Sr.execFileSync)("git",["branch","-D",s.branch],{cwd:i,encoding:"utf-8",timeout:5e3}),r.json({success:!0,files_changed:l,commit_hash:o})}catch(i){r.status(500).json({error:i.message})}});handleDiscard=this.wrapHandler((e,r)=>{let n=process.env.CLAUDE_PROJECT_ROOT||process.cwd(),s=this.getWorktreeStatus(n);if(!s.active||!s.branch){this.badRequest(r,"No active worktree");return}try{let i=this.getMainRepoRoot(n);if(!i){r.status(500).json({error:"Cannot determine main repository root"});return}(0,Sr.execFileSync)("git",["worktree","remove",n,"--force"],{cwd:i,encoding:"utf-8",timeout:1e4}),(0,Sr.execFileSync)("git",["branch","-D",s.branch],{cwd:i,encoding:"utf-8",timeout:5e3}),r.json({success:!0})}catch(i){r.status(500).json({error:i.message})}});getWorktreeStatus(e){try{let r=(0,Sr.execFileSync)("git",["rev-parse","--abbrev-ref","HEAD"],{cwd:e,encoding:"utf-8",timeout:2e3}).toString().trim();if(!r.startsWith("spec/"))return{active:!1,worktreePath:null,branch:null,baseBranch:null,planSlug:null};let n=this.getMainRepoRoot(e),s="main";if(n)try{let c=(0,Sr.execFileSync)("git",["worktree","list"],{cwd:n,encoding:"utf-8",timeout:2e3}).toString().split(` + `.trim();r.setHeader("Content-Type","text/html"),r.send(n)});handleLogin=this.wrapHandler((e,r)=>{let{token:n}=e.body;if(!n){r.status(400).json({code:"MISSING_TOKEN",message:"Token is required"});return}let s=Om();if(!s){r.status(500).json({code:"NOT_CONFIGURED",message:"Remote authentication is not configured"});return}if(n!==s){_.warn("SECURITY","Failed login attempt",{ip:e.ip||e.socket.remoteAddress}),r.status(401).json({code:"INVALID_TOKEN",message:"Invalid token"});return}let i=e.ip||e.socket.remoteAddress||"unknown",a=LD(i);r.cookie(b_(),a,{httpOnly:!0,secure:e.protocol==="https",sameSite:"lax",maxAge:1440*60*1e3,path:"/"}),_.info("SECURITY","User logged in",{ip:i}),r.json({code:"SUCCESS",message:"Login successful"})});handleLogout=this.wrapHandler((e,r)=>{let n=b_(),s=e.cookies?.[n];s&&qD(s),r.clearCookie(n,{httpOnly:!0,secure:e.protocol==="https",sameSite:"lax",path:"/"}),_.info("SECURITY","User logged out",{ip:e.ip||e.socket.remoteAddress}),r.json({code:"SUCCESS",message:"Logout successful"})});handleAuthStatus=this.wrapHandler((e,r)=>{let n=so();r.json({authRequired:n,authenticated:!n||!!e.auth})})};var es=require("fs"),Xs=ie(require("path"),1);var Vf=require("fs");function An(t,e){let r=process.env.CLAUDE_PROJECT_ROOT||process.cwd();if(!e||!t)return r;let n=t.getSessionStore().getProjectRoot(e);return!n||!(0,Vf.existsSync)(n)||!(0,Vf.statSync)(n).isDirectory()?r:n}var z0=require("child_process");function oL(t){try{let e=(0,z0.execSync)("git rev-parse --abbrev-ref HEAD",{cwd:t,encoding:"utf-8",timeout:2e3}).trim(),r=(0,z0.execSync)("git status --porcelain",{cwd:t,encoding:"utf-8",timeout:2e3}),n=0,s=0,i=0;for(let a of r.split(` +`)){if(!a)continue;let o=a[0]||" ",c=a[1]||" ";o==="?"&&c==="?"?i++:(o!==" "&&o!=="?"&&n++,c!==" "&&s++)}return{branch:e,staged:n,unstaged:s,untracked:i}}catch{return{branch:null,staged:0,unstaged:0,untracked:0}}}var Ur=require("fs"),qo=ie(require("path"),1);re();function Gf(t,e,r,n){let s=t.match(/^Status:\s*(\w+)/m);if(!s)return null;let i=s[1],a=(t.match(/^- \[x\] Task \d+:/gm)||[]).length,o=(t.match(/^- \[ \] Task \d+:/gm)||[]).length,c=a+o,l=t.match(/^Approved:\s*(\w+)/m),u=l?l[1].toLowerCase()==="yes":!1,p=t.match(/^Iterations:\s*(\d+)/m),d=p?parseInt(p[1],10):0,m=t.match(/^Worktree:\s*(\w+)/m),f=m?m[1].toLowerCase()!=="no":!0,v;i==="PENDING"&&!u?v="plan":i==="PENDING"&&u?v="implement":v="verify";let g=e.replace(".md","");return g.match(/^\d{4}-\d{2}-\d{2}-/)&&(g=g.split("-").slice(3).join("-")),{name:g,status:i,completed:a,total:c,phase:v,iterations:d,approved:u,worktree:f,filePath:r,modifiedAt:n.toISOString()}}function kpe(t){let e=qo.default.join(t,".worktrees");if(!(0,Ur.existsSync)(e))return[];let r=[];try{let n=(0,Ur.readdirSync)(e,{withFileTypes:!0});for(let s of n){if(!s.isDirectory())continue;let i=qo.default.join(e,s.name,"docs","plans");(0,Ur.existsSync)(i)&&r.push(i)}}catch{}return r}function L0(t){let e=[];try{let r=(0,Ur.readdirSync)(t).filter(n=>n.endsWith(".md")).sort().reverse();for(let n of r){let s=qo.default.join(t,n),i=(0,Ur.statSync)(s),a=(0,Ur.readFileSync)(s,"utf-8"),o=Gf(a,n,s,i.mtime);o&&e.push(o)}}catch(r){_.error("HTTP","Failed to read plans from directory",{plansDir:t},r)}return e}function Yf(t){let e=[],r=qo.default.join(t,"docs","plans");return(0,Ur.existsSync)(r)&&e.push(r),e.push(...kpe(t)),e}function cL(t){let e=new Date;e.setHours(0,0,0,0);let r=[];for(let n of Yf(t))try{let s=(0,Ur.readdirSync)(n).filter(i=>i.endsWith(".md")).sort().reverse();for(let i of s){let a=qo.default.join(n,i),o=(0,Ur.statSync)(a),c=new Date(o.mtime);if(c.setHours(0,0,0,0),c.getTime()!==e.getTime())continue;let l=(0,Ur.readFileSync)(a,"utf-8"),u=Gf(l,i,a,o.mtime);u&&u.status!=="VERIFIED"&&r.push(u)}}catch(s){_.error("HTTP","Failed to read active plans",{plansDir:n},s)}return r}function lL(t){let e=[];for(let r of Yf(t))e.push(...L0(r));return e.sort((r,n)=>new Date(n.modifiedAt).getTime()-new Date(r.modifiedAt).getTime()).slice(0,10)}function q0(t){let e=[];for(let r of Yf(t))e.push(...L0(r));return e.sort((r,n)=>new Date(n.modifiedAt).getTime()-new Date(r.modifiedAt).getTime())}function uL(t){let e=[];for(let p of Yf(t))e.push(...L0(p));if(e.length===0)return{totalSpecs:0,verified:0,inProgress:0,pending:0,avgIterations:0,totalTasksCompleted:0,totalTasks:0,completionTimeline:[],recentlyVerified:[]};let r=e.filter(p=>p.status==="VERIFIED"),n=e.filter(p=>p.status==="PENDING"&&p.approved||p.status==="COMPLETE"),s=e.filter(p=>p.status==="PENDING"&&!p.approved),i=r.reduce((p,d)=>p+d.iterations,0),a=e.reduce((p,d)=>p+d.completed,0),o=e.reduce((p,d)=>p+d.total,0),c=new Map;for(let p of r){let d=p.modifiedAt.slice(0,10);c.set(d,(c.get(d)||0)+1)}let l=Array.from(c.entries()).sort(([p],[d])=>p.localeCompare(d)).map(([p,d])=>({date:p,count:d})),u=r.sort((p,d)=>new Date(d.modifiedAt).getTime()-new Date(p.modifiedAt).getTime()).slice(0,5).map(p=>({name:p.name,verifiedAt:p.modifiedAt}));return{totalSpecs:e.length,verified:r.length,inProgress:n.length,pending:s.length,avgIterations:r.length>0?Math.round(i/r.length*10)/10:0,totalTasksCompleted:a,totalTasks:o,completionTimeline:l,recentlyVerified:u}}function pL(t,e){if(!e.endsWith(".md"))return!1;let r=Xs.default.resolve(t),n=Xs.default.join(r,"docs","plans");if(e.startsWith(n+Xs.default.sep)||e.startsWith(n+"/"))return!0;let s=Xs.default.join(r,".worktrees");return!!(e.startsWith(s)&&e.includes("/docs/plans/"))}var Kf=class t extends Ae{dbManager;sseBroadcaster;constructor(e,r){super(),this.dbManager=e??null,this.sseBroadcaster=r??null}static VALID_PLAN_STATUSES=new Set(["PENDING","COMPLETE","VERIFIED"]);isValidPlanStatus(e){return typeof e=="string"&&t.VALID_PLAN_STATUSES.has(e)}setupRoutes(e){e.get("/api/plan",this.handleGetActivePlan.bind(this)),e.get("/api/plans",this.handleGetAllPlans.bind(this)),e.get("/api/plans/active",this.handleGetActiveSpecs.bind(this)),e.get("/api/plan/content",this.handleGetPlanContent.bind(this)),e.delete("/api/plan",this.handleDeletePlan.bind(this)),e.get("/api/plans/stats",this.handleGetPlanStats.bind(this)),e.get("/api/git",this.handleGetGitInfo.bind(this)),e.post("/api/sessions/:sessionDbId/plan",this.handleAssociatePlan.bind(this)),e.post("/api/sessions/by-content-id/:contentSessionId/plan",this.handleAssociatePlanByContentId.bind(this)),e.get("/api/sessions/:sessionDbId/plan",this.handleGetSessionPlan.bind(this)),e.get("/api/sessions/by-content-id/:contentSessionId/plan",this.handleGetSessionPlanByContentId.bind(this)),e.delete("/api/sessions/:sessionDbId/plan",this.handleClearSessionPlan.bind(this)),e.put("/api/sessions/:sessionDbId/plan/status",this.handleUpdatePlanStatus.bind(this))}handleGetPlanStats=this.wrapHandler((e,r)=>{let n=e.query.project,s=An(this.dbManager,n);r.json(uL(s))});handleGetActivePlan=this.wrapHandler((e,r)=>{let n=e.query.project,s=An(this.dbManager,n),i=cL(s);r.json({active:i.length>0,plans:i,plan:i[0]||null})});handleGetAllPlans=this.wrapHandler((e,r)=>{let n=e.query.project,s=An(this.dbManager,n);r.json({plans:lL(s)})});handleGetGitInfo=this.wrapHandler((e,r)=>{let n=e.query.project,s=An(this.dbManager,n);r.json(oL(s))});handleGetActiveSpecs=this.wrapHandler((e,r)=>{let n=e.query.project,s=An(this.dbManager,n);r.json({specs:q0(s)})});handleGetPlanContent=this.wrapHandler((e,r)=>{let n=e.query.project,s=An(this.dbManager,n),i=e.query.path;if(!i){let p=q0(s);if(p.length===0){r.status(404).json({error:"No active specs found"});return}let d=p[0];try{let m=(0,es.readFileSync)(d.filePath,"utf-8");r.json({content:m,name:d.name,status:d.status,filePath:d.filePath})}catch{r.status(404).json({error:"Plan file not found"})}return}let a=Xs.default.resolve(s,i);if(!pL(s,a)){r.status(403).json({error:"Access denied: path must be within docs/plans/ or .worktrees/*/docs/plans/"});return}if(!(0,es.existsSync)(a)){r.status(404).json({error:"Plan not found"});return}let o=(0,es.readFileSync)(a,"utf-8"),c=Xs.default.basename(a),l=(0,es.statSync)(a),u=Gf(o,c,a,l.mtime);r.json({content:o,name:u?.name||c.replace(".md",""),status:u?.status||"UNKNOWN",filePath:a})});handleDeletePlan=this.wrapHandler((e,r)=>{let n=process.env.CLAUDE_PROJECT_ROOT||process.cwd(),s=e.query.path;if(!s){this.badRequest(r,"Missing path query parameter");return}let i=Xs.default.resolve(n,s);if(!pL(n,i)){r.status(403).json({error:"Access denied: path must be within docs/plans/ or .worktrees/*/docs/plans/"});return}if(!(0,es.existsSync)(i)){this.notFound(r,"Plan not found");return}(0,es.unlinkSync)(i),r.json({success:!0})});handleAssociatePlan=this.wrapHandler((e,r)=>{let n=this.parseIntParam(e,r,"sessionDbId");if(n===null||!this.validateRequired(e,r,["planPath","status"]))return;if(!this.isValidPlanStatus(e.body.status)){this.badRequest(r,`Invalid status: ${e.body.status}. Must be PENDING, COMPLETE, or VERIFIED`);return}let s=this.getDb(r);if(!s)return;let i=S0(s,n,e.body.planPath,e.body.status);this.broadcastPlanChange(),r.json({plan:i})});handleAssociatePlanByContentId=this.wrapHandler((e,r)=>{let n=e.params.contentSessionId;if(!n){this.badRequest(r,"Missing contentSessionId");return}if(!this.validateRequired(e,r,["planPath","status"]))return;if(!this.isValidPlanStatus(e.body.status)){this.badRequest(r,`Invalid status: ${e.body.status}. Must be PENDING, COMPLETE, or VERIFIED`);return}let s=this.getDb(r);if(!s)return;let i=s.prepare("SELECT id FROM sdk_sessions WHERE content_session_id = ?").get(n);if(!i){this.notFound(r,"Session not found");return}let a=S0(s,i.id,e.body.planPath,e.body.status);this.broadcastPlanChange(),r.json({plan:a})});handleGetSessionPlan=this.wrapHandler((e,r)=>{let n=this.parseIntParam(e,r,"sessionDbId");if(n===null)return;let s=this.getDb(r);s&&r.json({plan:Rf(s,n)})});handleGetSessionPlanByContentId=this.wrapHandler((e,r)=>{let n=e.params.contentSessionId;if(!n){this.badRequest(r,"Missing contentSessionId");return}let s=this.getDb(r);s&&r.json({plan:V2(s,n)})});handleClearSessionPlan=this.wrapHandler((e,r)=>{let n=this.parseIntParam(e,r,"sessionDbId");if(n===null)return;let s=this.getDb(r);s&&(Y2(s,n),this.broadcastPlanChange(),r.json({success:!0}))});handleUpdatePlanStatus=this.wrapHandler((e,r)=>{let n=this.parseIntParam(e,r,"sessionDbId");if(n===null||!this.validateRequired(e,r,["status"]))return;if(!this.isValidPlanStatus(e.body.status)){this.badRequest(r,`Invalid status: ${e.body.status}. Must be PENDING, COMPLETE, or VERIFIED`);return}let s=this.getDb(r);s&&(G2(s,n,e.body.status),this.broadcastPlanChange(),r.json({plan:Rf(s,n)}))});broadcastPlanChange(){this.sseBroadcaster?.broadcast({type:"plan_association_changed"})}getDb(e){return this.dbManager?this.dbManager.getSessionStore().db:(e.status(503).json({error:"Database not available"}),null)}};var Sr=require("child_process"),Xf=require("fs"),Jf=ie(require("path"),1);var Qf=class extends Ae{setupRoutes(e){e.get("/api/worktree/status",this.handleGetStatus.bind(this)),e.get("/api/worktree/diff",this.handleGetDiff.bind(this)),e.get("/api/worktree/diff/:file(*)",this.handleGetFileDiff.bind(this)),e.post("/api/worktree/sync",this.handleSync.bind(this)),e.post("/api/worktree/discard",this.handleDiscard.bind(this))}handleGetStatus=this.wrapHandler((e,r)=>{let n=process.env.CLAUDE_PROJECT_ROOT||process.cwd(),s=this.getWorktreeStatus(n);r.json(s)});handleGetDiff=this.wrapHandler((e,r)=>{let n=process.env.CLAUDE_PROJECT_ROOT||process.cwd(),s=this.getWorktreeStatus(n);if(!s.active||!s.branch||!s.baseBranch){r.json({active:!1,files:[]});return}let i=this.getChangedFiles(n,s.baseBranch,s.branch);r.json({active:!0,files:i})});handleGetFileDiff=this.wrapHandler((e,r)=>{let n=process.env.CLAUDE_PROJECT_ROOT||process.cwd(),s=this.getWorktreeStatus(n),i=e.params.file;if(!s.active||!s.branch||!s.baseBranch){this.badRequest(r,"No active worktree");return}if(!i){this.badRequest(r,"Missing file path");return}try{let a=(0,Sr.execFileSync)("git",["diff",`${s.baseBranch}...${s.branch}`,"--",i],{cwd:n,encoding:"utf-8",timeout:5e3});r.json({file:i,diff:a})}catch{this.notFound(r,"File not found in diff")}});handleSync=this.wrapHandler((e,r)=>{let n=process.env.CLAUDE_PROJECT_ROOT||process.cwd(),s=this.getWorktreeStatus(n);if(!s.active||!s.branch||!s.baseBranch){this.badRequest(r,"No active worktree");return}try{let i=this.getMainRepoRoot(n);if(!i){r.status(500).json({error:"Cannot determine main repository root"});return}(0,Sr.execFileSync)("git",["checkout",s.baseBranch],{cwd:i,encoding:"utf-8",timeout:1e4}),(0,Sr.execFileSync)("git",["merge","--squash",s.branch],{cwd:i,encoding:"utf-8",timeout:3e4});let a=s.planSlug||s.branch.replace("spec/","");(0,Sr.execFileSync)("git",["commit","-m",`feat: implement spec/${a}`],{cwd:i,encoding:"utf-8",timeout:1e4});let o=(0,Sr.execFileSync)("git",["rev-parse","HEAD"],{cwd:i,encoding:"utf-8",timeout:5e3}).toString().trim(),c=(0,Sr.execFileSync)("git",["diff","--stat","HEAD~1"],{cwd:i,encoding:"utf-8",timeout:5e3}).toString(),l=this.countFilesFromStat(c);(0,Sr.execFileSync)("git",["worktree","remove",n,"--force"],{cwd:i,encoding:"utf-8",timeout:1e4}),(0,Sr.execFileSync)("git",["branch","-D",s.branch],{cwd:i,encoding:"utf-8",timeout:5e3}),r.json({success:!0,files_changed:l,commit_hash:o})}catch(i){r.status(500).json({error:i.message})}});handleDiscard=this.wrapHandler((e,r)=>{let n=process.env.CLAUDE_PROJECT_ROOT||process.cwd(),s=this.getWorktreeStatus(n);if(!s.active||!s.branch){this.badRequest(r,"No active worktree");return}try{let i=this.getMainRepoRoot(n);if(!i){r.status(500).json({error:"Cannot determine main repository root"});return}(0,Sr.execFileSync)("git",["worktree","remove",n,"--force"],{cwd:i,encoding:"utf-8",timeout:1e4}),(0,Sr.execFileSync)("git",["branch","-D",s.branch],{cwd:i,encoding:"utf-8",timeout:5e3}),r.json({success:!0})}catch(i){r.status(500).json({error:i.message})}});getWorktreeStatus(e){try{let r=(0,Sr.execFileSync)("git",["rev-parse","--abbrev-ref","HEAD"],{cwd:e,encoding:"utf-8",timeout:2e3}).toString().trim();if(!r.startsWith("spec/"))return{active:!1,worktreePath:null,branch:null,baseBranch:null,planSlug:null};let n=this.getMainRepoRoot(e),s="main";if(n)try{let c=(0,Sr.execFileSync)("git",["worktree","list"],{cwd:n,encoding:"utf-8",timeout:2e3}).toString().split(` `)[0].match(/\[([^\]]+)\]/);c&&(s=c[1])}catch{}let i=r.replace("spec/","");return{active:!0,worktreePath:e,branch:r,baseBranch:s,planSlug:i}}catch{return{active:!1,worktreePath:null,branch:null,baseBranch:null,planSlug:null}}}getChangedFiles(e,r,n){try{let s=(0,Sr.execFileSync)("git",["diff","--name-status",`${r}...${n}`],{cwd:e,encoding:"utf-8",timeout:1e4}).toString(),i=(0,Sr.execFileSync)("git",["diff","--numstat",`${r}...${n}`],{cwd:e,encoding:"utf-8",timeout:1e4}).toString();return this.parseChangedFiles(s,i)}catch{return[]}}parseChangedFiles(e,r){let n=new Map;for(let i of r.split(` `)){if(!i.trim())continue;let a=i.split(" ");a.length>=3&&n.set(a[2],{additions:parseInt(a[0],10)||0,deletions:parseInt(a[1],10)||0})}let s=[];for(let i of e.split(` -`)){if(!i.trim())continue;let a=i.split(" ");if(a.length>=2){let o=a[0].charAt(0),c=a[a.length-1],l=n.get(c)||{additions:0,deletions:0};s.push({path:c,status:o,additions:l.additions,deletions:l.deletions})}}return s}getMainRepoRoot(e){try{let r=Yf.default.join(e,".git");if((0,Jf.existsSync)(r))try{let n=(0,Jf.readFileSync)(r,"utf-8").trim();if(n.startsWith("gitdir:")){let s=n.replace("gitdir:","").trim(),i=Yf.default.resolve(e,s,"..","..");return Yf.default.dirname(i)}}catch{return e}return e}catch{return null}}countFilesFromStat(e){let r=e.trim().split(` -`);if(r.length===0)return 0;let s=r[r.length-1].match(/(\d+) files? changed/);return s?parseInt(s[1],10):0}};var aL=/^\d{8}$/,bpe=300*1e3,Qf=class extends ze{cache=new Map;ccusagePath;pendingExecutions=new Map;constructor(){super(),this.ccusagePath=this.resolveCcusage()}setupRoutes(e){e.get("/api/usage/daily",this.wrapHandler(this.handleDaily.bind(this))),e.get("/api/usage/monthly",this.wrapHandler(this.handleMonthly.bind(this))),e.get("/api/usage/models",this.wrapHandler(this.handleModels.bind(this)))}async handleDaily(e,r){if(!this.ccusagePath){r.json({available:!1,error:"ccusage not installed"});return}let n=e.query.since,s=e.query.until;if(n&&!aL.test(n)){this.badRequest(r,"Invalid since parameter. Expected YYYYMMDD format.");return}if(s&&!aL.test(s)){this.badRequest(r,"Invalid until parameter. Expected YYYYMMDD format.");return}let i=n||this.defaultSince(),a=`daily-${i}-${s||""}`,o=await this.getCachedOrExecute(a,()=>{let c=["daily","--json","--since",i];return s&&c.push("--until",s),this.runCcusage(c)});r.json({available:!0,...o})}async handleMonthly(e,r){if(!this.ccusagePath){r.json({available:!1,error:"ccusage not installed"});return}let s=await this.getCachedOrExecute("monthly",()=>this.runCcusage(["monthly","--json"]));r.json({available:!0,...s})}async handleModels(e,r){if(!this.ccusagePath){r.json({available:!1,error:"ccusage not installed"});return}let s=await this.getCachedOrExecute("monthly",()=>this.runCcusage(["monthly","--json"])),i=new Map;for(let o of s.monthly||[])for(let c of o.modelBreakdowns||[]){let l=(c.inputTokens||0)+(c.outputTokens||0)+(c.cacheCreationTokens||0)+(c.cacheReadTokens||0),u=i.get(c.modelName);u?(u.totalCost+=c.cost||0,u.inputTokens+=c.inputTokens||0,u.outputTokens+=c.outputTokens||0,u.totalTokens+=l):i.set(c.modelName,{model:c.modelName,totalCost:c.cost||0,inputTokens:c.inputTokens||0,outputTokens:c.outputTokens||0,totalTokens:l})}let a=Array.from(i.values()).sort((o,c)=>c.totalCost-o.totalCost);r.json({available:!0,models:a})}async getCachedOrExecute(e,r){let n=this.cache.get(e);if(n&&Date.now()-n.timestamp(this.cache.set(e,{data:a,timestamp:Date.now()}),a)).finally(()=>{this.pendingExecutions.delete(e)});return this.pendingExecutions.set(e,i),i}async runCcusage(e){let r=Bun.spawn(["ccusage",...e],{stdout:"pipe",stderr:"pipe"}),n=setTimeout(()=>{try{r.kill("SIGTERM")}catch{}},3e4);try{let[s,i]=await Promise.all([new Response(r.stdout).text(),new Response(r.stderr).text()]);if(await r.exited!==0)throw new Error(`ccusage command failed: ${i.slice(0,200)}`);return JSON.parse(s)}finally{clearTimeout(n)}}resolveCcusage(){return Bun.which("ccusage")||null}defaultSince(){let e=new Date;e.setDate(e.getDate()-30);let r=e.getFullYear(),n=String(e.getMonth()+1).padStart(2,"0"),s=String(e.getDate()).padStart(2,"0");return`${r}${n}${s}`}};var M0=require("child_process"),z0=require("fs"),L0=require("os");var Xf={valid:!1,tier:null,email:null,daysRemaining:null,isExpired:!1},xpe=300*1e3,eh=class extends ze{cache=null;setupRoutes(e){e.get("/api/license",this.handleGetLicense.bind(this)),e.post("/api/license/activate",this.handleActivate.bind(this))}handleGetLicense=this.wrapHandler((e,r)=>{let n=e.query.refresh==="1";r.json(this.getLicenseInfo(n))});getLicenseInfo(e=!1){if(!e&&this.cache&&Date.now(){let{key:n}=e.body;if(!n||typeof n!="string"){this.badRequest(r,"License key is required");return}let s=this.activateLicense(n.trim());r.json(s)});activateLicense(e){let r=`${(0,L0.homedir)()}/.pilot/bin/pilot`;if(!(0,z0.existsSync)(r))return{success:!1,tier:null,email:null,error:"Pilot binary not found"};try{let s=(0,M0.spawnSync)(r,["activate",e,"--json"],{stdio:"pipe",timeout:1e4}).stdout?.toString().trim();if(!s)return{success:!1,tier:null,email:null,error:"No response from pilot"};let i=JSON.parse(s);return i.success?(this.cache=null,{success:!0,tier:i.tier??null,email:i.email??null,error:null}):{success:!1,tier:null,email:null,error:i.error??"Activation failed"}}catch{return{success:!1,tier:null,email:null,error:"Activation request failed"}}}fetchLicenseFromCLI(){let e=`${(0,L0.homedir)()}/.pilot/bin/pilot`;if(!(0,z0.existsSync)(e))return{...Xf};try{let n=(0,M0.spawnSync)(e,["status","--json"],{stdio:"pipe",timeout:5e3}).stdout?.toString().trim();if(!n)return{...Xf};let s=JSON.parse(n);return s.success?{valid:!0,tier:s.tier??null,email:s.email??null,daysRemaining:s.days_remaining??null,isExpired:!1}:s.error==="No license found"?{...Xf}:{valid:!1,tier:s.tier??null,email:s.email??null,daysRemaining:s.days_remaining??null,isExpired:!0}}catch{return{...Xf}}}};se();var q0=15e3,_pe=6e4,wpe=3e4,Spe=6e4,th=class extends ze{statusCache=null;detailCache=new Map;_isInstalling=!1;setupRoutes(e){e.get("/api/vault/status",this.handleStatus.bind(this)),e.post("/api/vault/install",this.handleInstall.bind(this)),e.get("/api/vault/detail/:name",this.handleDetail.bind(this))}handleStatus=this.wrapHandler(async(e,r)=>{if(this.statusCache&&Date.now()-this.statusCache.timestamp"[]")]),a=JSON.parse(s),o=JSON.parse(i).map(u=>({name:u.name,type:u.type,latestVersion:u.latestVersion,versionsCount:u.versionsCount,updatedAt:u.updatedAt})),c=[];for(let u of a.assets||[]){let p=u.scope||"Global";for(let d of u.assets||[])c.push({name:d.name,version:d.version,type:d.type,clients:d.clients||[],status:d.status||"unknown",scope:p})}let l={installed:!0,version:a.version?.version||null,configured:!!a.config?.repositoryUrl,vaultUrl:a.config?.repositoryUrl||null,profile:a.config?.profile||null,assets:c,catalog:o,isInstalling:this._isInstalling};this.statusCache={data:l,timestamp:Date.now()},r.json(l)}catch(s){_.error("HTTP","Vault status failed",{},s),r.json(this.emptyStatus())}});handleInstall=this.wrapHandler(async(e,r)=>{if(this._isInstalling){r.status(409).json({error:"Installation already in progress"});return}let n=this.resolveSxBinary();if(!n){r.status(500).json({error:"sx CLI not found"});return}let s=process.env.CLAUDE_PROJECT_ROOT||process.cwd();this._isInstalling=!0,this.statusCache=null,r.json({started:!0});try{await this.runSxCommand([n,"install","--repair","--target",s],_pe),_.info("HTTP","Vault install --repair completed")}catch(i){_.error("HTTP","Vault install failed",{},i)}finally{this._isInstalling=!1,this.statusCache=null,this.detailCache.clear()}});handleDetail=this.wrapHandler(async(e,r)=>{let n=e.params.name;if(!n||!/^[a-zA-Z0-9-]+$/.test(n)){r.status(400).json({error:"Invalid asset name: only alphanumeric characters and hyphens allowed"});return}let s=this.detailCache.get(n);if(s&&Date.now()-s.timestamp({version:l.version,createdAt:l.createdAt??null,filesCount:l.filesCount??0}))};this.detailCache.set(n,{data:c,timestamp:Date.now()}),r.json(c)}catch(a){(a.message||"").includes("exited with code")?r.status(404).json({error:`Asset '${n}' not found`}):(_.error("HTTP","Vault detail failed",{name:n},a),r.status(502).json({error:"Unexpected sx response format"}))}});emptyStatus(){return{installed:!1,version:null,configured:!1,vaultUrl:null,profile:null,assets:[],catalog:[],isInstalling:this._isInstalling}}resolveSxBinary(){return Bun.which("sx")||null}async runSxCommand(e,r){let n=Bun.spawn(e,{stdout:"pipe",stderr:"pipe"}),s=setTimeout(()=>{try{n.kill("SIGTERM"),setTimeout(()=>{try{n.kill("SIGKILL")}catch{}},1e3)}catch{}},r);try{let[i,a]=await Promise.all([new Response(n.stdout).text(),new Response(n.stderr).text()]),o=await n.exited;if(o!==0)throw new Error(`sx exited with code ${o}: ${a.slice(0,200)}`);return i}finally{clearTimeout(s)}}};se();var Epe=3,kpe=12e4,oL=6e5,Tpe=3e4,Rpe=6e4;function $pe(t){let e={isIndexed:!1,files:0,mode:"",model:"",generatedAt:null,embeddingDim:0,version:0};if(!t||!t.includes("Files:"))return e;let r=s=>{let i=t.match(new RegExp(`^${s}:\\s*(.+)$`,"m"));return i?i[1].trim():""},n=parseInt(r("Files"),10)||0;return{isIndexed:n>0,files:n,mode:r("Mode"),model:r("Model"),generatedAt:r("Generated at")||null,embeddingDim:parseInt(r("Embedding dimension"),10)||0,version:parseInt(r("Version"),10)||0}}function Ope(t){if(!t.trim())return[];let e=[];for(let r of t.trim().split(` -`)){let n=r.split(" ");if(n.length<7)continue;let s=parseInt(n[0],10),i=parseFloat(n[1]);isNaN(s)||isNaN(i)||e.push({rank:s,score:i,filePath:n[2],chunkIndex:parseInt(n[3],10)||0,startLine:n[4]==="-"?null:parseInt(n[4],10)||null,endLine:n[5]==="-"?null:parseInt(n[5],10)||null,snippet:n.slice(6).join(" ")})}return e}var rh=class extends ze{dbManager;activeProcesses=new Set;statusCache=new Map;_isReindexing=!1;constructor(e){super(),this.dbManager=e??null}setupRoutes(e){e.get("/api/vexor/status",this.handleStatus.bind(this)),e.get("/api/vexor/search",this.handleSearch.bind(this)),e.post("/api/vexor/reindex",this.handleReindex.bind(this))}dispose(){for(let e of this.activeProcesses)try{e.kill()}catch{}this.activeProcesses.clear(),_.debug("HTTP","VexorRoutes disposed, killed active processes")}handleStatus=this.wrapHandler(async(e,r)=>{let n=e.query.project,s=An(this.dbManager,n),i=this.statusCache.get(s);if(i&&Date.now()-i.timestamp{let n=e.query.query;if(!n){this.badRequest(r,"query parameter is required");return}if(this.activeProcesses.size>=Epe){r.status(429).json({error:"Too many concurrent searches. Try again shortly."});return}let s=this.resolveVexorBinary();if(!s){r.json({results:[],error:"Vexor CLI not found"});return}let i=e.query.project,a=An(this.dbManager,i),o=parseInt(e.query.top,10)||20,c=e.query.mode||"auto",l=[s,"search",n,"--top",String(o),"--mode",c,"--format","porcelain","--path",a],u=e.query.ext;u&&l.push("--ext",u);try{let p=await this.runVexorCommand(l,kpe),d=Ope(p);r.json({results:d,query:n})}catch(p){_.error("HTTP","Vexor search failed",{query:n},p),r.status(500).json({error:p.message})}});handleReindex=this.wrapHandler(async(e,r)=>{if(this._isReindexing){r.status(409).json({error:"Reindexing already in progress"});return}let n=this.resolveVexorBinary();if(!n){r.status(500).json({error:"Vexor CLI not found"});return}let s=e.query.project,i=An(this.dbManager,s);this._isReindexing=!0,this.statusCache.clear(),r.json({started:!0});try{await this.runVexorCommand([n,"index","--clear","--path",i],oL),await this.runVexorCommand([n,"index","--path",i],oL),_.info("HTTP","Vexor reindex completed")}catch(a){_.error("HTTP","Vexor reindex failed",{},a)}finally{this._isReindexing=!1,this.statusCache.clear()}});emptyStatus(){return{isIndexed:!1,files:0,mode:"",model:"",generatedAt:null,embeddingDim:0,version:0,isReindexing:this._isReindexing}}resolveVexorBinary(){return process.env.VEXOR_PATH?process.env.VEXOR_PATH:Bun.which("vexor")||null}async runVexorCommand(e,r){let n=Bun.spawn(e,{stdout:"pipe",stderr:"pipe"});this.activeProcesses.add(n);let s=setTimeout(()=>{try{n.kill()}catch{}},r);try{let[i,a]=await Promise.all([new Response(n.stdout).text(),new Response(n.stderr).text()]),o=await n.exited;if(o!==0)throw new Error(`Vexor exited with code ${o}: ${a.slice(0,200)}`);return i}finally{clearTimeout(s),this.activeProcesses.delete(n)}}};var nh=class{dbManager;sessionManager;startTime;requestMetrics=[];providerRequests=0;providerTokens=0;providerErrors=0;providerName="unknown";METRICS_WINDOW_MS=300*1e3;constructor(e,r,n){this.dbManager=e,this.sessionManager=r,this.startTime=n,setInterval(()=>this.cleanupOldMetrics(),6e4)}recordRequest(e,r,n=!1){this.requestMetrics.push({endpoint:e,responseTimeMs:r,timestamp:Date.now(),error:n})}recordProviderUsage(e,r,n=!1){this.providerName=e,this.providerRequests++,this.providerTokens+=r,n&&this.providerErrors++}cleanupOldMetrics(){let e=Date.now()-this.METRICS_WINDOW_MS;this.requestMetrics=this.requestMetrics.filter(r=>r.timestamp>e)}async getMetrics(){let r=this.dbManager.getSessionStore().db,n=$=>{try{return r.prepare(`SELECT COUNT(*) as count FROM ${$}`).get().count}catch{return 0}},s=n("observations"),i=n("sdk_sessions"),a=n("session_summaries"),o=n("prompts"),{DATA_DIR:c}=await Promise.resolve().then(()=>(yr(),SD)),l=await import("fs"),p=(await import("path")).join(c,"pilot-memory.db"),d=0;try{d=l.statSync(p).size}catch{}let m=process.memoryUsage(),f=this.requestMetrics.filter($=>$.timestamp>Date.now()-this.METRICS_WINDOW_MS),v=f.length,g=f.filter($=>$.error).length,h=v>0?f.reduce(($,j)=>$+j.responseTimeMs,0)/v:0,y={};for(let $ of f)y[$.endpoint]=(y[$.endpoint]||0)+1;let b=Date.now()-6e4,x=0;try{x=r.prepare("SELECT COUNT(*) as count FROM observations WHERE created_at_epoch > ?").get(b).count}catch{}let w=f.filter($=>$.timestamp>b).length,S=this.sessionManager.isAnySessionProcessing(),E=this.sessionManager.getTotalActiveWork(),k=this.sessionManager.getActiveSessionCount();return{uptime:Math.floor((Date.now()-this.startTime)/1e3),memoryUsage:{heapUsed:m.heapUsed,heapTotal:m.heapTotal,rss:m.rss,external:m.external},database:{observations:s,sessions:i,summaries:a,prompts:o,sizeBytes:d},processing:{activeSessions:k,queueDepth:E,isProcessing:S},requests:{total:v,byEndpoint:y,errors:g,avgResponseTimeMs:Math.round(h)},provider:{name:this.providerName,requestsTotal:this.providerRequests,tokensTotal:this.providerTokens,errorsTotal:this.providerErrors},rates:{observationsPerMinute:x,requestsPerMinute:w}}}async toPrometheus(){let e=await this.getMetrics(),r=[],n=(s,i,a,o="gauge",c={})=>{r.push(`# HELP claude_pilot_${s} ${a}`),r.push(`# TYPE claude_pilot_${s} ${o}`);let l=Object.entries(c).map(([p,d])=>`${p}="${d}"`).join(","),u=l?`{${l}}`:"";r.push(`claude_pilot_${s}${u} ${i}`)};return n("uptime_seconds",e.uptime,"Worker uptime in seconds"),n("memory_heap_used_bytes",e.memoryUsage.heapUsed,"Heap memory used"),n("memory_heap_total_bytes",e.memoryUsage.heapTotal,"Total heap memory"),n("memory_rss_bytes",e.memoryUsage.rss,"Resident set size"),n("database_observations_total",e.database.observations,"Total observations"),n("database_sessions_total",e.database.sessions,"Total sessions"),n("database_summaries_total",e.database.summaries,"Total summaries"),n("database_prompts_total",e.database.prompts,"Total prompts"),n("database_size_bytes",e.database.sizeBytes,"Database file size"),n("processing_active_sessions",e.processing.activeSessions,"Active processing sessions"),n("processing_queue_depth",e.processing.queueDepth,"Queue depth"),n("processing_is_active",e.processing.isProcessing?1:0,"Is processing active"),n("requests_total",e.requests.total,"Total requests in window","counter"),n("requests_errors_total",e.requests.errors,"Total request errors","counter"),n("requests_response_time_avg_ms",e.requests.avgResponseTimeMs,"Average response time"),n("provider_requests_total",e.provider.requestsTotal,"Provider requests","counter",{provider:e.provider.name}),n("provider_tokens_total",e.provider.tokensTotal,"Provider tokens used","counter",{provider:e.provider.name}),n("provider_errors_total",e.provider.errorsTotal,"Provider errors","counter",{provider:e.provider.name}),n("observations_per_minute",e.rates.observationsPerMinute,"Observations created per minute"),n("requests_per_minute",e.rates.requestsPerMinute,"Requests per minute"),r.join(` -`)}};se();var Ppe=1440*60*1e3,Cpe=3e4,sh=null,ih=null;async function cL(t){let e=t.getVectorSyncOrNull(),r=new zo(t,e),n=r.getPolicy();if(!n.enabled){_.debug("RETENTION","Auto-cleanup skipped: retention policy is disabled");return}_.info("RETENTION","Running scheduled auto-cleanup",{maxAgeDays:n.maxAgeDays,maxCount:n.maxCount});let s=await r.run();_.info("RETENTION","Auto-cleanup complete",{deleted:s.deleted,archived:s.archived,errors:s.errors.length,duration:s.duration})}function lL(t){F0(),ih=setTimeout(async()=>{try{await cL(t)}catch(e){_.error("RETENTION","Scheduled retention failed",{},e)}sh=setInterval(async()=>{try{await cL(t)}catch(e){_.error("RETENTION","Scheduled retention failed",{},e)}},Ppe),_.info("RETENTION","Scheduled daily auto-cleanup")},Cpe),_.info("RETENTION","Retention scheduler initialized (first run in 30s)")}function F0(){ih&&(clearTimeout(ih),ih=null),sh&&(clearInterval(sh),sh=null),_.debug("RETENTION","Retention scheduler stopped")}var Gpe={},Bpe="6.7.7";function WL(t,e){return{continue:!0,suppressOutput:!0,status:t,...e&&{message:e}}}function ZL(){let t=`${(0,BL.homedir)()}/.pilot/bin/pilot`;if(!(0,tw.existsSync)(t))return _.warn("SYSTEM","Pilot binary not found, skipping license check"),!0;try{return(0,HL.execSync)(`"${t}" verify`,{stdio:"pipe",timeout:5e3}),!0}catch{return!1}}var dh=class{server;startTime=Date.now();mcpClient;coreReady=!1;mcpReady=!1;initializationCompleteFlag=!1;isShuttingDown=!1;dbManager;sessionManager;sseBroadcaster;sdkAgent;paginationHelper;sessionEventBroadcaster;searchRoutes=null;metricsService=null;vexorRoutes=null;initializationComplete;resolveInitialization;cleanupInterval=null;constructor(){this.initializationComplete=new Promise(e=>{this.resolveInitialization=e}),this.dbManager=new Nm,this.sessionManager=new jm(this.dbManager),this.sseBroadcaster=new Dm,this.sdkAgent=new bf(this.dbManager,this.sessionManager),this.paginationHelper=new xf(this.dbManager),this.sessionEventBroadcaster=new Ef(this.sseBroadcaster,this),this.sessionManager.setOnSessionDeleted(()=>{this.broadcastProcessingStatus()}),this.mcpClient=new va({name:"worker-search-proxy",version:Bpe},{capabilities:{}}),this.server=new $m({getInitializationComplete:()=>this.initializationCompleteFlag,getCoreReady:()=>this.coreReady,getMcpReady:()=>this.mcpReady,onShutdown:()=>this.shutdown(),onRestart:()=>this.shutdown()}),this.registerRoutes(),this.registerSignalHandlers()}registerSignalHandlers(){let e={value:this.isShuttingDown},r=By(()=>this.shutdown(),e);process.on("SIGTERM",()=>{this.isShuttingDown=e.value,r("SIGTERM")}),process.on("SIGINT",()=>{this.isShuttingDown=e.value,r("SIGINT")}),process.platform!=="win32"&&process.on("SIGHUP",()=>{process.argv.includes("--daemon")?_.info("SYSTEM","Received SIGHUP in daemon mode, ignoring",{}):(this.isShuttingDown=e.value,r("SIGHUP"))})}registerRoutes(){this.server.app.get("/api/context/inject",async(e,r,n)=>{try{let i=new Promise((a,o)=>setTimeout(()=>o(new Error("Initialization timeout")),3e5));if(await Promise.race([this.initializationComplete,i]),!this.searchRoutes){r.status(503).json({error:"Search routes not initialized"});return}n()}catch{r.status(503).json({error:"Service initialization timed out"})}}),this.server.registerRoutes(new Bf),this.server.registerRoutes(new Rf(this.sseBroadcaster,this.dbManager,this.sessionManager)),this.server.registerRoutes(new Of(this.sessionManager,this.dbManager,this.sdkAgent,this.sessionEventBroadcaster,this)),this.server.registerRoutes(new Cf(this.paginationHelper,this.dbManager,this.sessionManager,this.sseBroadcaster,this,this.startTime)),this.server.registerRoutes(new zf),this.server.registerRoutes(new Lf(this.dbManager,"pilot-memory")),this.server.registerRoutes(new qf(this.dbManager)),this.server.registerRoutes(new Uf(this.dbManager)),this.server.registerRoutes(new Gf(this.dbManager,this.sseBroadcaster)),this.server.registerRoutes(new Kf),this.metricsService=new nh(this.dbManager,this.sessionManager,this.startTime),this.server.registerRoutes(new Hf(this.metricsService)),this.vexorRoutes=new rh(this.dbManager),this.server.registerRoutes(this.vexorRoutes),this.server.registerRoutes(new Qf),this.server.registerRoutes(new eh),this.server.registerRoutes(new th),lL(this.dbManager)}async start(){let e=Cr(),r=od(),n=xn();await this.server.listen(e,r),_.info("SYSTEM","Worker started",{bind:r,host:n,port:e,pid:process.pid}),this.initializeBackground().catch(s=>{_.error("SYSTEM","Background initialization failed",{},s)})}async initializeBackground(){try{await ud(),await ld();let{ModeManager:e}=await Promise.resolve().then(()=>(sn(),ZD));e.getInstance().loadMode(),_.info("SYSTEM","Mode loaded: Code Development"),await this.dbManager.initialize();let r=process.env.CLAUDE_PROJECT_ROOT||process.cwd(),n=Mu.default.basename(r);this.dbManager.getSessionStore().upsertProjectRoot(n,r);let{PendingMessageStore:s}=await Promise.resolve().then(()=>(Zs(),ji)),i=new s(this.dbManager.getSessionStore().db,3),a=300*1e3,o=i.resetStuckMessages(a);o>0&&_.info("SYSTEM",`Recovered ${o} stuck messages from previous session`,{thresholdMinutes:5});let c=new wf,l=new Sf,u=new _f(this.dbManager.getSessionSearch(),this.dbManager.getSessionStore(),this.dbManager.getVectorSync(),c,l);this.searchRoutes=new Df(u),this.server.registerRoutes(this.searchRoutes),_.info("WORKER","SearchManager initialized and search routes registered"),this.coreReady=!0,_.info("SYSTEM","Core services ready (hooks can proceed)");let p=[Mu.default.join(__dirname,"mcp-server.cjs"),Mu.default.join(__dirname,"..","servers","mcp-server.ts"),Mu.default.join(__dirname,"..","..","servers","mcp-server.ts")],d=p.find(x=>(0,tw.existsSync)(x))||p[0],m=d.endsWith(".ts"),f=new xa({command:m?"bun":"node",args:[d],env:process.env}),v=3e5,g=this.mcpClient.connect(f),h=new Promise((x,w)=>setTimeout(()=>w(new Error("MCP connection timeout after 5 minutes")),v));await Promise.race([g,h]),this.mcpReady=!0,_.success("WORKER","Connected to MCP server"),this.initializationCompleteFlag=!0,this.resolveInitialization(),_.info("SYSTEM","Background initialization complete"),this.processPendingQueues(50).then(x=>{x.sessionsStarted>0&&_.info("SYSTEM",`Auto-recovered ${x.sessionsStarted} sessions with pending work`,{totalPending:x.totalPendingSessions,started:x.sessionsStarted,sessionIds:x.startedSessionIds})}).catch(x=>{_.error("SYSTEM","Auto-recovery of pending queues failed",{},x)});let y=300*1e3,b=3600*1e3;this.cleanupInterval=setInterval(async()=>{try{let x=await this.sessionManager.cleanupStaleSessions(b);x>0&&_.info("SYSTEM",`Periodic cleanup: removed ${x} stale sessions`),await ud(),await ld(),_.debug("SYSTEM","Periodic cleanup completed")}catch(x){_.error("SYSTEM","Periodic cleanup failed",{},x)}},y),_.info("SYSTEM","Started periodic cleanup (every 5 minutes)")}catch(e){throw _.error("SYSTEM","Background initialization failed",{},e),e}}getActiveAgent(){return this.sdkAgent}startSessionProcessor(e,r){if(!e)return;e.abortController.signal.aborted&&(e.abortController=new AbortController,_.debug("SYSTEM","Reset AbortController for session restart",{sessionId:e.sessionDbId}));let n=e.sessionDbId,s=this.getActiveAgent(),i=s.constructor.name;_.info("SYSTEM",`Starting generator (${r}) using ${i}`,{sessionId:n}),e.generatorPromise=s.startSession(e,this).catch(a=>{_.error("SDK","Session generator failed",{sessionId:e.sessionDbId,project:e.project,provider:i},a)}).finally(()=>{e.generatorPromise=null,this.broadcastProcessingStatus()})}async processPendingQueues(e=10){let{PendingMessageStore:r}=await Promise.resolve().then(()=>(Zs(),ji)),n=new r(this.dbManager.getSessionStore().db,3),s=this.dbManager.getSessionStore(),i=1800*1e3,a=Date.now()-i;try{let l=s.db.prepare(` +`)){if(!i.trim())continue;let a=i.split(" ");if(a.length>=2){let o=a[0].charAt(0),c=a[a.length-1],l=n.get(c)||{additions:0,deletions:0};s.push({path:c,status:o,additions:l.additions,deletions:l.deletions})}}return s}getMainRepoRoot(e){try{let r=Jf.default.join(e,".git");if((0,Xf.existsSync)(r))try{let n=(0,Xf.readFileSync)(r,"utf-8").trim();if(n.startsWith("gitdir:")){let s=n.replace("gitdir:","").trim(),i=Jf.default.resolve(e,s,"..","..");return Jf.default.dirname(i)}}catch{return e}return e}catch{return null}}countFilesFromStat(e){let r=e.trim().split(` +`);if(r.length===0)return 0;let s=r[r.length-1].match(/(\d+) files? changed/);return s?parseInt(s[1],10):0}};var dL=/^\d{8}$/,Tpe=300*1e3,eh=class extends Ae{cache=new Map;ccusagePath;pendingExecutions=new Map;constructor(){super(),this.ccusagePath=this.resolveCcusage()}setupRoutes(e){e.get("/api/usage/daily",this.wrapHandler(this.handleDaily.bind(this))),e.get("/api/usage/monthly",this.wrapHandler(this.handleMonthly.bind(this))),e.get("/api/usage/models",this.wrapHandler(this.handleModels.bind(this)))}async handleDaily(e,r){if(!this.ccusagePath){r.json({available:!1,error:"ccusage not installed"});return}let n=e.query.since,s=e.query.until;if(n&&!dL.test(n)){this.badRequest(r,"Invalid since parameter. Expected YYYYMMDD format.");return}if(s&&!dL.test(s)){this.badRequest(r,"Invalid until parameter. Expected YYYYMMDD format.");return}let i=n||this.defaultSince(),a=`daily-${i}-${s||""}`,o=await this.getCachedOrExecute(a,()=>{let c=["daily","--json","--since",i];return s&&c.push("--until",s),this.runCcusage(c)});r.json({available:!0,...o})}async handleMonthly(e,r){if(!this.ccusagePath){r.json({available:!1,error:"ccusage not installed"});return}let s=await this.getCachedOrExecute("monthly",()=>this.runCcusage(["monthly","--json"]));r.json({available:!0,...s})}async handleModels(e,r){if(!this.ccusagePath){r.json({available:!1,error:"ccusage not installed"});return}let s=await this.getCachedOrExecute("monthly",()=>this.runCcusage(["monthly","--json"])),i=new Map;for(let o of s.monthly||[])for(let c of o.modelBreakdowns||[]){let l=(c.inputTokens||0)+(c.outputTokens||0)+(c.cacheCreationTokens||0)+(c.cacheReadTokens||0),u=i.get(c.modelName);u?(u.totalCost+=c.cost||0,u.inputTokens+=c.inputTokens||0,u.outputTokens+=c.outputTokens||0,u.totalTokens+=l):i.set(c.modelName,{model:c.modelName,totalCost:c.cost||0,inputTokens:c.inputTokens||0,outputTokens:c.outputTokens||0,totalTokens:l})}let a=Array.from(i.values()).sort((o,c)=>c.totalCost-o.totalCost);r.json({available:!0,models:a})}async getCachedOrExecute(e,r){let n=this.cache.get(e);if(n&&Date.now()-n.timestamp(this.cache.set(e,{data:a,timestamp:Date.now()}),a)).finally(()=>{this.pendingExecutions.delete(e)});return this.pendingExecutions.set(e,i),i}async runCcusage(e){let r=Bun.spawn(["ccusage",...e],{stdout:"pipe",stderr:"pipe"}),n=setTimeout(()=>{try{r.kill("SIGTERM")}catch{}},3e4);try{let[s,i]=await Promise.all([new Response(r.stdout).text(),new Response(r.stderr).text()]);if(await r.exited!==0)throw new Error(`ccusage command failed: ${i.slice(0,200)}`);return JSON.parse(s)}finally{clearTimeout(n)}}resolveCcusage(){return Bun.which("ccusage")||null}defaultSince(){let e=new Date;e.setDate(e.getDate()-30);let r=e.getFullYear(),n=String(e.getMonth()+1).padStart(2,"0"),s=String(e.getDate()).padStart(2,"0");return`${r}${n}${s}`}};var F0=require("child_process"),U0=require("fs"),H0=require("os");var th={valid:!1,tier:null,email:null,daysRemaining:null,isExpired:!1},Rpe=300*1e3,rh=class extends Ae{cache=null;setupRoutes(e){e.get("/api/license",this.handleGetLicense.bind(this)),e.post("/api/license/activate",this.handleActivate.bind(this))}handleGetLicense=this.wrapHandler((e,r)=>{let n=e.query.refresh==="1";r.json(this.getLicenseInfo(n))});getLicenseInfo(e=!1){if(!e&&this.cache&&Date.now(){let{key:n}=e.body;if(!n||typeof n!="string"){this.badRequest(r,"License key is required");return}let s=this.activateLicense(n.trim());r.json(s)});activateLicense(e){let r=`${(0,H0.homedir)()}/.pilot/bin/pilot`;if(!(0,U0.existsSync)(r))return{success:!1,tier:null,email:null,error:"Pilot binary not found"};try{let s=(0,F0.spawnSync)(r,["activate",e,"--json"],{stdio:"pipe",timeout:1e4}).stdout?.toString().trim();if(!s)return{success:!1,tier:null,email:null,error:"No response from pilot"};let i=JSON.parse(s);return i.success?(this.cache=null,{success:!0,tier:i.tier??null,email:i.email??null,error:null}):{success:!1,tier:null,email:null,error:i.error??"Activation failed"}}catch{return{success:!1,tier:null,email:null,error:"Activation request failed"}}}fetchLicenseFromCLI(){let e=`${(0,H0.homedir)()}/.pilot/bin/pilot`;if(!(0,U0.existsSync)(e))return{...th};try{let n=(0,F0.spawnSync)(e,["status","--json"],{stdio:"pipe",timeout:5e3}).stdout?.toString().trim();if(!n)return{...th};let s=JSON.parse(n);return s.success?{valid:!0,tier:s.tier??null,email:s.email??null,daysRemaining:s.days_remaining??null,isExpired:!1}:s.error==="No license found"?{...th}:{valid:!1,tier:s.tier??null,email:s.email??null,daysRemaining:s.days_remaining??null,isExpired:!0}}catch{return{...th}}}};re();var B0=15e3,$pe=6e4,Ope=3e4,Ppe=6e4,nh=class extends Ae{statusCache=null;detailCache=new Map;_isInstalling=!1;setupRoutes(e){e.get("/api/vault/status",this.handleStatus.bind(this)),e.post("/api/vault/install",this.handleInstall.bind(this)),e.get("/api/vault/detail/:name",this.handleDetail.bind(this))}handleStatus=this.wrapHandler(async(e,r)=>{if(this.statusCache&&Date.now()-this.statusCache.timestamp"[]")]),a=JSON.parse(s),o=JSON.parse(i).map(u=>({name:u.name,type:u.type,latestVersion:u.latestVersion,versionsCount:u.versionsCount,updatedAt:u.updatedAt})),c=[];for(let u of a.assets||[]){let p=u.scope||"Global";for(let d of u.assets||[])c.push({name:d.name,version:d.version,type:d.type,clients:d.clients||[],status:d.status||"unknown",scope:p})}let l={installed:!0,version:a.version?.version||null,configured:!!a.config?.repositoryUrl,vaultUrl:a.config?.repositoryUrl||null,profile:a.config?.profile||null,assets:c,catalog:o,isInstalling:this._isInstalling};this.statusCache={data:l,timestamp:Date.now()},r.json(l)}catch(s){_.error("HTTP","Vault status failed",{},s),r.json(this.emptyStatus())}});handleInstall=this.wrapHandler(async(e,r)=>{if(this._isInstalling){r.status(409).json({error:"Installation already in progress"});return}let n=this.resolveSxBinary();if(!n){r.status(500).json({error:"sx CLI not found"});return}let s=process.env.CLAUDE_PROJECT_ROOT||process.cwd();this._isInstalling=!0,this.statusCache=null,r.json({started:!0});try{await this.runSxCommand([n,"install","--repair","--target",s],$pe),_.info("HTTP","Vault install --repair completed")}catch(i){_.error("HTTP","Vault install failed",{},i)}finally{this._isInstalling=!1,this.statusCache=null,this.detailCache.clear()}});handleDetail=this.wrapHandler(async(e,r)=>{let n=e.params.name;if(!n||!/^[a-zA-Z0-9-]+$/.test(n)){r.status(400).json({error:"Invalid asset name: only alphanumeric characters and hyphens allowed"});return}let s=this.detailCache.get(n);if(s&&Date.now()-s.timestamp({version:l.version,createdAt:l.createdAt??null,filesCount:l.filesCount??0}))};this.detailCache.set(n,{data:c,timestamp:Date.now()}),r.json(c)}catch(a){(a.message||"").includes("exited with code")?r.status(404).json({error:`Asset '${n}' not found`}):(_.error("HTTP","Vault detail failed",{name:n},a),r.status(502).json({error:"Unexpected sx response format"}))}});emptyStatus(){return{installed:!1,version:null,configured:!1,vaultUrl:null,profile:null,assets:[],catalog:[],isInstalling:this._isInstalling}}resolveSxBinary(){return Bun.which("sx")||null}async runSxCommand(e,r){let n=Bun.spawn(e,{stdout:"pipe",stderr:"pipe"}),s=setTimeout(()=>{try{n.kill("SIGTERM"),setTimeout(()=>{try{n.kill("SIGKILL")}catch{}},1e3)}catch{}},r);try{let[i,a]=await Promise.all([new Response(n.stdout).text(),new Response(n.stderr).text()]),o=await n.exited;if(o!==0)throw new Error(`sx exited with code ${o}: ${a.slice(0,200)}`);return i}finally{clearTimeout(s)}}};re();var Cpe=3,Ipe=12e4,mL=6e5,Ape=3e4,Npe=6e4;function jpe(t){let e={isIndexed:!1,files:0,mode:"",model:"",generatedAt:null,embeddingDim:0,version:0};if(!t||!t.includes("Files:"))return e;let r=s=>{let i=t.match(new RegExp(`^${s}:\\s*(.+)$`,"m"));return i?i[1].trim():""},n=parseInt(r("Files"),10)||0;return{isIndexed:n>0,files:n,mode:r("Mode"),model:r("Model"),generatedAt:r("Generated at")||null,embeddingDim:parseInt(r("Embedding dimension"),10)||0,version:parseInt(r("Version"),10)||0}}function Dpe(t){if(!t.trim())return[];let e=[];for(let r of t.trim().split(` +`)){let n=r.split(" ");if(n.length<7)continue;let s=parseInt(n[0],10),i=parseFloat(n[1]);isNaN(s)||isNaN(i)||e.push({rank:s,score:i,filePath:n[2],chunkIndex:parseInt(n[3],10)||0,startLine:n[4]==="-"?null:parseInt(n[4],10)||null,endLine:n[5]==="-"?null:parseInt(n[5],10)||null,snippet:n.slice(6).join(" ")})}return e}var sh=class extends Ae{dbManager;activeProcesses=new Set;statusCache=new Map;_isReindexing=!1;constructor(e){super(),this.dbManager=e??null}setupRoutes(e){e.get("/api/vexor/status",this.handleStatus.bind(this)),e.get("/api/vexor/search",this.handleSearch.bind(this)),e.post("/api/vexor/reindex",this.handleReindex.bind(this))}dispose(){for(let e of this.activeProcesses)try{e.kill()}catch{}this.activeProcesses.clear(),_.debug("HTTP","VexorRoutes disposed, killed active processes")}handleStatus=this.wrapHandler(async(e,r)=>{let n=e.query.project,s=An(this.dbManager,n),i=this.statusCache.get(s);if(i&&Date.now()-i.timestamp{let n=e.query.query;if(!n){this.badRequest(r,"query parameter is required");return}if(this.activeProcesses.size>=Cpe){r.status(429).json({error:"Too many concurrent searches. Try again shortly."});return}let s=this.resolveVexorBinary();if(!s){r.json({results:[],error:"Vexor CLI not found"});return}let i=e.query.project,a=An(this.dbManager,i),o=parseInt(e.query.top,10)||20,c=e.query.mode||"auto",l=[s,"search",n,"--top",String(o),"--mode",c,"--format","porcelain","--path",a],u=e.query.ext;u&&l.push("--ext",u);try{let p=await this.runVexorCommand(l,Ipe),d=Dpe(p);r.json({results:d,query:n})}catch(p){_.error("HTTP","Vexor search failed",{query:n},p),r.status(500).json({error:p.message})}});handleReindex=this.wrapHandler(async(e,r)=>{if(this._isReindexing){r.status(409).json({error:"Reindexing already in progress"});return}let n=this.resolveVexorBinary();if(!n){r.status(500).json({error:"Vexor CLI not found"});return}let s=e.query.project,i=An(this.dbManager,s);this._isReindexing=!0,this.statusCache.clear(),r.json({started:!0});try{await this.runVexorCommand([n,"index","--clear","--path",i],mL),await this.runVexorCommand([n,"index","--path",i],mL),_.info("HTTP","Vexor reindex completed")}catch(a){_.error("HTTP","Vexor reindex failed",{},a)}finally{this._isReindexing=!1,this.statusCache.clear()}});emptyStatus(){return{isIndexed:!1,files:0,mode:"",model:"",generatedAt:null,embeddingDim:0,version:0,isReindexing:this._isReindexing}}resolveVexorBinary(){return process.env.VEXOR_PATH?process.env.VEXOR_PATH:Bun.which("vexor")||null}async runVexorCommand(e,r){let n=Bun.spawn(e,{stdout:"pipe",stderr:"pipe"});this.activeProcesses.add(n);let s=setTimeout(()=>{try{n.kill()}catch{}},r);try{let[i,a]=await Promise.all([new Response(n.stdout).text(),new Response(n.stderr).text()]),o=await n.exited;if(o!==0)throw new Error(`Vexor exited with code ${o}: ${a.slice(0,200)}`);return i}finally{clearTimeout(s),this.activeProcesses.delete(n)}}};var ei=ie(require("fs"),1),fL=ie(require("os"),1),ah=ie(require("path"),1);re();var Fo=["sonnet","sonnet[1m]","opus","opus[1m]"],W0=["sonnet","opus"],Z0={model:"sonnet",commands:{spec:"sonnet","spec-plan":"opus","spec-implement":"sonnet","spec-verify":"opus",vault:"sonnet",sync:"sonnet",learn:"sonnet"},agents:{"plan-challenger":"sonnet","plan-verifier":"sonnet","spec-reviewer-compliance":"sonnet","spec-reviewer-quality":"opus"}},ih=class extends Ae{configPath;constructor(e){super(),this.configPath=e??ah.join(fL.homedir(),".pilot","config.json")}setupRoutes(e){e.get("/api/settings",this.wrapHandler(this.handleGet.bind(this))),e.put("/api/settings",this.wrapHandler(this.handlePut.bind(this)))}readConfig(){try{let e=ei.readFileSync(this.configPath,"utf-8");return JSON.parse(e)}catch{return{}}}mergeWithDefaults(e){let r=typeof e.model=="string"&&Fo.includes(e.model)?e.model:Z0.model,n=e.commands,s={...Z0.commands};if(n&&typeof n=="object"&&!Array.isArray(n))for(let[o,c]of Object.entries(n))typeof c=="string"&&Fo.includes(c)&&(s[o]=c);let i=e.agents,a={...Z0.agents};if(i&&typeof i=="object"&&!Array.isArray(i))for(let[o,c]of Object.entries(i))typeof c=="string"&&W0.includes(c)&&(a[o]=c);return{model:r,commands:s,agents:a}}validateSettings(e){if(e.model!==void 0&&(typeof e.model!="string"||!Fo.includes(e.model)))return`Invalid model '${e.model}'; must be one of: ${Fo.join(", ")}`;if(e.commands!==void 0){if(typeof e.commands!="object"||Array.isArray(e.commands))return"commands must be an object";for(let[r,n]of Object.entries(e.commands))if(typeof n!="string"||!Fo.includes(n))return`Invalid model '${n}' for command '${r}'; must be one of: ${Fo.join(", ")}`}if(e.agents!==void 0){if(typeof e.agents!="object"||Array.isArray(e.agents))return"agents must be an object";for(let[r,n]of Object.entries(e.agents))if(typeof n!="string"||!W0.includes(n))return`Invalid model '${n}' for agent '${r}'; agents can only use: ${W0.join(", ")} (no 1M context)`}return null}writeConfigAtomic(e){let r=ah.dirname(this.configPath);ei.mkdirSync(r,{recursive:!0});let n=this.configPath+".tmp";ei.writeFileSync(n,JSON.stringify(e,null,2),"utf-8"),ei.renameSync(n,this.configPath)}async handleGet(e,r){let n=this.readConfig(),s=this.mergeWithDefaults(n);r.json(s)}async handlePut(e,r){let n=e.body,s=this.validateSettings(n);if(s){this.badRequest(r,s);return}let i=this.readConfig();if(n.model!==void 0&&(i.model=n.model),n.commands!==void 0){let o=i.commands??{};i.commands={...o,...n.commands}}if(n.agents!==void 0){let o=i.agents??{};i.agents={...o,...n.agents}}try{this.writeConfigAtomic(i)}catch(o){_.error("HTTP","Failed to write settings config",{},o),r.status(500).json({error:"Failed to save settings"});return}let a=this.mergeWithDefaults(i);r.json(a)}};var oh=class{dbManager;sessionManager;startTime;requestMetrics=[];providerRequests=0;providerTokens=0;providerErrors=0;providerName="unknown";METRICS_WINDOW_MS=300*1e3;constructor(e,r,n){this.dbManager=e,this.sessionManager=r,this.startTime=n,setInterval(()=>this.cleanupOldMetrics(),6e4)}recordRequest(e,r,n=!1){this.requestMetrics.push({endpoint:e,responseTimeMs:r,timestamp:Date.now(),error:n})}recordProviderUsage(e,r,n=!1){this.providerName=e,this.providerRequests++,this.providerTokens+=r,n&&this.providerErrors++}cleanupOldMetrics(){let e=Date.now()-this.METRICS_WINDOW_MS;this.requestMetrics=this.requestMetrics.filter(r=>r.timestamp>e)}async getMetrics(){let r=this.dbManager.getSessionStore().db,n=$=>{try{return r.prepare(`SELECT COUNT(*) as count FROM ${$}`).get().count}catch{return 0}},s=n("observations"),i=n("sdk_sessions"),a=n("session_summaries"),o=n("prompts"),{DATA_DIR:c}=await Promise.resolve().then(()=>(yr(),OD)),l=await import("fs"),p=(await import("path")).join(c,"pilot-memory.db"),d=0;try{d=l.statSync(p).size}catch{}let m=process.memoryUsage(),f=this.requestMetrics.filter($=>$.timestamp>Date.now()-this.METRICS_WINDOW_MS),v=f.length,g=f.filter($=>$.error).length,h=v>0?f.reduce(($,j)=>$+j.responseTimeMs,0)/v:0,y={};for(let $ of f)y[$.endpoint]=(y[$.endpoint]||0)+1;let b=Date.now()-6e4,x=0;try{x=r.prepare("SELECT COUNT(*) as count FROM observations WHERE created_at_epoch > ?").get(b).count}catch{}let w=f.filter($=>$.timestamp>b).length,S=this.sessionManager.isAnySessionProcessing(),E=this.sessionManager.getTotalActiveWork(),k=this.sessionManager.getActiveSessionCount();return{uptime:Math.floor((Date.now()-this.startTime)/1e3),memoryUsage:{heapUsed:m.heapUsed,heapTotal:m.heapTotal,rss:m.rss,external:m.external},database:{observations:s,sessions:i,summaries:a,prompts:o,sizeBytes:d},processing:{activeSessions:k,queueDepth:E,isProcessing:S},requests:{total:v,byEndpoint:y,errors:g,avgResponseTimeMs:Math.round(h)},provider:{name:this.providerName,requestsTotal:this.providerRequests,tokensTotal:this.providerTokens,errorsTotal:this.providerErrors},rates:{observationsPerMinute:x,requestsPerMinute:w}}}async toPrometheus(){let e=await this.getMetrics(),r=[],n=(s,i,a,o="gauge",c={})=>{r.push(`# HELP claude_pilot_${s} ${a}`),r.push(`# TYPE claude_pilot_${s} ${o}`);let l=Object.entries(c).map(([p,d])=>`${p}="${d}"`).join(","),u=l?`{${l}}`:"";r.push(`claude_pilot_${s}${u} ${i}`)};return n("uptime_seconds",e.uptime,"Worker uptime in seconds"),n("memory_heap_used_bytes",e.memoryUsage.heapUsed,"Heap memory used"),n("memory_heap_total_bytes",e.memoryUsage.heapTotal,"Total heap memory"),n("memory_rss_bytes",e.memoryUsage.rss,"Resident set size"),n("database_observations_total",e.database.observations,"Total observations"),n("database_sessions_total",e.database.sessions,"Total sessions"),n("database_summaries_total",e.database.summaries,"Total summaries"),n("database_prompts_total",e.database.prompts,"Total prompts"),n("database_size_bytes",e.database.sizeBytes,"Database file size"),n("processing_active_sessions",e.processing.activeSessions,"Active processing sessions"),n("processing_queue_depth",e.processing.queueDepth,"Queue depth"),n("processing_is_active",e.processing.isProcessing?1:0,"Is processing active"),n("requests_total",e.requests.total,"Total requests in window","counter"),n("requests_errors_total",e.requests.errors,"Total request errors","counter"),n("requests_response_time_avg_ms",e.requests.avgResponseTimeMs,"Average response time"),n("provider_requests_total",e.provider.requestsTotal,"Provider requests","counter",{provider:e.provider.name}),n("provider_tokens_total",e.provider.tokensTotal,"Provider tokens used","counter",{provider:e.provider.name}),n("provider_errors_total",e.provider.errorsTotal,"Provider errors","counter",{provider:e.provider.name}),n("observations_per_minute",e.rates.observationsPerMinute,"Observations created per minute"),n("requests_per_minute",e.rates.requestsPerMinute,"Requests per minute"),r.join(` +`)}};re();var Mpe=1440*60*1e3,zpe=3e4,ch=null,lh=null;async function hL(t){let e=t.getVectorSyncOrNull(),r=new Lo(t,e),n=r.getPolicy();if(!n.enabled){_.debug("RETENTION","Auto-cleanup skipped: retention policy is disabled");return}_.info("RETENTION","Running scheduled auto-cleanup",{maxAgeDays:n.maxAgeDays,maxCount:n.maxCount});let s=await r.run();_.info("RETENTION","Auto-cleanup complete",{deleted:s.deleted,archived:s.archived,errors:s.errors.length,duration:s.duration})}function gL(t){V0(),lh=setTimeout(async()=>{try{await hL(t)}catch(e){_.error("RETENTION","Scheduled retention failed",{},e)}ch=setInterval(async()=>{try{await hL(t)}catch(e){_.error("RETENTION","Scheduled retention failed",{},e)}},Mpe),_.info("RETENTION","Scheduled daily auto-cleanup")},zpe),_.info("RETENTION","Retention scheduler initialized (first run in 30s)")}function V0(){lh&&(clearTimeout(lh),lh=null),ch&&(clearInterval(ch),ch=null),_.debug("RETENTION","Retention scheduler stopped")}var tde={},Jpe="6.7.7";function QL(t,e){return{continue:!0,suppressOutput:!0,status:t,...e&&{message:e}}}function XL(){let t=`${(0,JL.homedir)()}/.pilot/bin/pilot`;if(!(0,ow.existsSync)(t))return _.warn("SYSTEM","Pilot binary not found, skipping license check"),!0;try{return(0,KL.execSync)(`"${t}" verify`,{stdio:"pipe",timeout:5e3}),!0}catch{return!1}}var gh=class{server;startTime=Date.now();mcpClient;coreReady=!1;mcpReady=!1;initializationCompleteFlag=!1;isShuttingDown=!1;dbManager;sessionManager;sseBroadcaster;sdkAgent;paginationHelper;sessionEventBroadcaster;searchRoutes=null;metricsService=null;vexorRoutes=null;initializationComplete;resolveInitialization;cleanupInterval=null;constructor(){this.initializationComplete=new Promise(e=>{this.resolveInitialization=e}),this.dbManager=new Dm,this.sessionManager=new Mm(this.dbManager),this.sseBroadcaster=new zm,this.sdkAgent=new _f(this.dbManager,this.sessionManager),this.paginationHelper=new wf(this.dbManager),this.sessionEventBroadcaster=new Tf(this.sseBroadcaster,this),this.sessionManager.setOnSessionDeleted(()=>{this.broadcastProcessingStatus()}),this.mcpClient=new ya({name:"worker-search-proxy",version:Jpe},{capabilities:{}}),this.server=new Pm({getInitializationComplete:()=>this.initializationCompleteFlag,getCoreReady:()=>this.coreReady,getMcpReady:()=>this.mcpReady,onShutdown:()=>this.shutdown(),onRestart:()=>this.shutdown()}),this.registerRoutes(),this.registerSignalHandlers()}registerSignalHandlers(){let e={value:this.isShuttingDown},r=Gy(()=>this.shutdown(),e);process.on("SIGTERM",()=>{this.isShuttingDown=e.value,r("SIGTERM")}),process.on("SIGINT",()=>{this.isShuttingDown=e.value,r("SIGINT")}),process.platform!=="win32"&&process.on("SIGHUP",()=>{process.argv.includes("--daemon")?_.info("SYSTEM","Received SIGHUP in daemon mode, ignoring",{}):(this.isShuttingDown=e.value,r("SIGHUP"))})}registerRoutes(){this.server.app.get("/api/context/inject",async(e,r,n)=>{try{let i=new Promise((a,o)=>setTimeout(()=>o(new Error("Initialization timeout")),3e5));if(await Promise.race([this.initializationComplete,i]),!this.searchRoutes){r.status(503).json({error:"Search routes not initialized"});return}n()}catch{r.status(503).json({error:"Service initialization timed out"})}}),this.server.registerRoutes(new Zf),this.server.registerRoutes(new Of(this.sseBroadcaster,this.dbManager,this.sessionManager)),this.server.registerRoutes(new Cf(this.sessionManager,this.dbManager,this.sdkAgent,this.sessionEventBroadcaster,this)),this.server.registerRoutes(new Af(this.paginationHelper,this.dbManager,this.sessionManager,this.sseBroadcaster,this,this.startTime)),this.server.registerRoutes(new qf),this.server.registerRoutes(new Ff(this.dbManager,"pilot-memory")),this.server.registerRoutes(new Uf(this.dbManager)),this.server.registerRoutes(new Bf(this.dbManager)),this.server.registerRoutes(new Kf(this.dbManager,this.sseBroadcaster)),this.server.registerRoutes(new Qf),this.metricsService=new oh(this.dbManager,this.sessionManager,this.startTime),this.server.registerRoutes(new Wf(this.metricsService)),this.vexorRoutes=new sh(this.dbManager),this.server.registerRoutes(this.vexorRoutes),this.server.registerRoutes(new eh),this.server.registerRoutes(new rh),this.server.registerRoutes(new nh),this.server.registerRoutes(new ih),gL(this.dbManager)}async start(){let e=Cr(),r=ld(),n=xn();await this.server.listen(e,r),_.info("SYSTEM","Worker started",{bind:r,host:n,port:e,pid:process.pid}),this.initializeBackground().catch(s=>{_.error("SYSTEM","Background initialization failed",{},s)})}async initializeBackground(){try{await dd(),await pd();let{ModeManager:e}=await Promise.resolve().then(()=>(sn(),QD));e.getInstance().loadMode(),_.info("SYSTEM","Mode loaded: Code Development"),await this.dbManager.initialize();let r=process.env.CLAUDE_PROJECT_ROOT||process.cwd(),n=Lu.default.basename(r);this.dbManager.getSessionStore().upsertProjectRoot(n,r);let{PendingMessageStore:s}=await Promise.resolve().then(()=>(Zs(),Di)),i=new s(this.dbManager.getSessionStore().db,3),a=300*1e3,o=i.resetStuckMessages(a);o>0&&_.info("SYSTEM",`Recovered ${o} stuck messages from previous session`,{thresholdMinutes:5});let c=new Ef,l=new kf,u=new Sf(this.dbManager.getSessionSearch(),this.dbManager.getSessionStore(),this.dbManager.getVectorSync(),c,l);this.searchRoutes=new zf(u),this.server.registerRoutes(this.searchRoutes),_.info("WORKER","SearchManager initialized and search routes registered"),this.coreReady=!0,_.info("SYSTEM","Core services ready (hooks can proceed)");let p=[Lu.default.join(__dirname,"mcp-server.cjs"),Lu.default.join(__dirname,"..","servers","mcp-server.ts"),Lu.default.join(__dirname,"..","..","servers","mcp-server.ts")],d=p.find(x=>(0,ow.existsSync)(x))||p[0],m=d.endsWith(".ts"),f=new _a({command:m?"bun":"node",args:[d],env:process.env}),v=3e5,g=this.mcpClient.connect(f),h=new Promise((x,w)=>setTimeout(()=>w(new Error("MCP connection timeout after 5 minutes")),v));await Promise.race([g,h]),this.mcpReady=!0,_.success("WORKER","Connected to MCP server"),this.initializationCompleteFlag=!0,this.resolveInitialization(),_.info("SYSTEM","Background initialization complete"),this.processPendingQueues(50).then(x=>{x.sessionsStarted>0&&_.info("SYSTEM",`Auto-recovered ${x.sessionsStarted} sessions with pending work`,{totalPending:x.totalPendingSessions,started:x.sessionsStarted,sessionIds:x.startedSessionIds})}).catch(x=>{_.error("SYSTEM","Auto-recovery of pending queues failed",{},x)});let y=300*1e3,b=3600*1e3;this.cleanupInterval=setInterval(async()=>{try{let x=await this.sessionManager.cleanupStaleSessions(b);x>0&&_.info("SYSTEM",`Periodic cleanup: removed ${x} stale sessions`),await dd(),await pd(),_.debug("SYSTEM","Periodic cleanup completed")}catch(x){_.error("SYSTEM","Periodic cleanup failed",{},x)}},y),_.info("SYSTEM","Started periodic cleanup (every 5 minutes)")}catch(e){throw _.error("SYSTEM","Background initialization failed",{},e),e}}getActiveAgent(){return this.sdkAgent}startSessionProcessor(e,r){if(!e)return;e.abortController.signal.aborted&&(e.abortController=new AbortController,_.debug("SYSTEM","Reset AbortController for session restart",{sessionId:e.sessionDbId}));let n=e.sessionDbId,s=this.getActiveAgent(),i=s.constructor.name;_.info("SYSTEM",`Starting generator (${r}) using ${i}`,{sessionId:n}),e.generatorPromise=s.startSession(e,this).catch(a=>{_.error("SDK","Session generator failed",{sessionId:e.sessionDbId,project:e.project,provider:i},a)}).finally(()=>{e.generatorPromise=null,this.broadcastProcessingStatus()})}async processPendingQueues(e=10){let{PendingMessageStore:r}=await Promise.resolve().then(()=>(Zs(),Di)),n=new r(this.dbManager.getSessionStore().db,3),s=this.dbManager.getSessionStore(),i=1800*1e3,a=Date.now()-i;try{let l=s.db.prepare(` SELECT s.id FROM sdk_sessions s WHERE s.status = 'active' AND s.started_at_epoch < ? @@ -1845,7 +1845,7 @@ Tips: SET status = 'failed', failed_at_epoch = ? WHERE status = 'pending' AND session_db_id IN (${p}) - `).run(Date.now(),...u);h.changes>0&&_.info("SYSTEM",`Marked ${h.changes} pending messages from stale sessions as failed`)}}catch(l){_.error("SYSTEM","Failed to clean up stale sessions",{},l)}let o=n.getSessionsWithPendingMessages(),c={totalPendingSessions:o.length,sessionsStarted:0,sessionsSkipped:0,startedSessionIds:[]};if(o.length===0)return c;_.info("SYSTEM",`Processing up to ${e} of ${o.length} pending session queues`);for(let l of o){if(c.sessionsStarted>=e)break;try{if(this.sessionManager.getSession(l)?.generatorPromise){c.sessionsSkipped++;continue}let p=this.sessionManager.initializeSession(l);_.info("SYSTEM",`Starting processor for session ${l}`,{project:p.project,pendingCount:n.getPendingCount(l)}),this.startSessionProcessor(p,"startup-recovery"),c.sessionsStarted++,c.startedSessionIds.push(l),await new Promise(d=>setTimeout(d,100))}catch(u){_.error("SYSTEM",`Failed to process session ${l}`,{},u),c.sessionsSkipped++}}return c}async shutdown(){this.cleanupInterval&&(clearInterval(this.cleanupInterval),this.cleanupInterval=null,_.info("SYSTEM","Stopped periodic orphan cleanup")),F0(),this.vexorRoutes&&this.vexorRoutes.dispose(),await S$({server:this.server.getHttpServer(),sessionManager:this.sessionManager,mcpClient:this.mcpClient,dbManager:this.dbManager})}broadcastProcessingStatus(){let e=this.sessionManager.isAnySessionProcessing(),r=this.sessionManager.getTotalActiveWork(),n=this.sessionManager.getActiveSessionCount();_.info("WORKER","Broadcasting processing status",{isProcessing:e,queueDepth:r,activeSessions:n}),this.sseBroadcaster.broadcast({type:"processing_status",isProcessing:e,queueDepth:r})}};async function Wpe(){let t=process.argv[2],e=Cr();function r(n,s){let i=WL(n,s);console.log(JSON.stringify(i)),process.exit(0)}switch(t){case"start":{ZL()||(_.error("SYSTEM","License verification failed"),r("error","UNLICENSED: Using Claude Pilot without a valid license is not permitted. Subscribe at https://claude-pilot.com then run: pilot activate "));let n=await Zy(e,__filename);n.ready?(_.info("SYSTEM","Worker started successfully"),r("ready")):(_.error("SYSTEM",n.error??"Worker failed to start"),r("error",n.error))}case"stop":await Kc(e),await Yc(e,yi(15e3))||_.warn("SYSTEM","Port did not free up after shutdown",{port:e}),Sn(),_.info("SYSTEM","Worker stopped successfully"),process.exit(0);case"restart":{_.info("SYSTEM","Restarting worker"),await Kc(e),await Yc(e,yi(15e3))||(_.error("SYSTEM","Port did not free up after shutdown, aborting restart",{port:e}),process.exit(0)),Sn();let s=Vc(__filename,e);s===void 0&&(_.error("SYSTEM","Failed to spawn worker daemon during restart"),process.exit(0)),Zc({pid:s,port:e,startedAt:new Date().toISOString()}),await md(e,yi(3e4))||(Sn(),_.error("SYSTEM","Worker failed to restart"),process.exit(0)),_.info("SYSTEM","Worker restarted successfully"),process.exit(0)}case"status":{let{runCLI:n}=await Promise.resolve().then(()=>(H0(),U0));await n(process.argv.slice(2)),process.exit(0)}case"hook":{let n=process.argv[3],s=process.argv[4];(!n||!s)&&(console.error("Usage: pilot-memory hook "),console.error("Platforms: claude-code, raw"),console.error("Events: context, session-init, observation, summarize, user-message"),process.exit(1)),await Zy(e,__filename);let{hookCommand:i}=await Promise.resolve().then(()=>(UL(),FL));await i(n,s);break}case"search":case"export":case"import":case"cleanup":case"backup":case"doctor":case"retention":case"vacuum":{let{runCLI:n}=await Promise.resolve().then(()=>(H0(),U0));await n(process.argv.slice(2)),process.exit(0)}default:process.on("unhandledRejection",(s,i)=>{_.failure("SYSTEM","Unhandled rejection in daemon mode",{promise:String(i)},s instanceof Error?s:new Error(String(s)))}),process.on("uncaughtException",s=>{_.failure("SYSTEM","Uncaught exception in daemon mode",{},s)}),new dh().start().catch(s=>{_.failure("SYSTEM","Worker failed to start",{},s),Sn(),process.exit(0)})}}var Zpe=typeof require<"u"&&typeof module<"u"?require.main===module||!module.parent:Gpe.url===`file://${process.argv[1]}`||process.argv[1]?.endsWith("worker-service");Zpe&&Wpe();0&&(module.exports={WorkerService,buildStatusOutput,verifyLicense}); + `).run(Date.now(),...u);h.changes>0&&_.info("SYSTEM",`Marked ${h.changes} pending messages from stale sessions as failed`)}}catch(l){_.error("SYSTEM","Failed to clean up stale sessions",{},l)}let o=n.getSessionsWithPendingMessages(),c={totalPendingSessions:o.length,sessionsStarted:0,sessionsSkipped:0,startedSessionIds:[]};if(o.length===0)return c;_.info("SYSTEM",`Processing up to ${e} of ${o.length} pending session queues`);for(let l of o){if(c.sessionsStarted>=e)break;try{if(this.sessionManager.getSession(l)?.generatorPromise){c.sessionsSkipped++;continue}let p=this.sessionManager.initializeSession(l);_.info("SYSTEM",`Starting processor for session ${l}`,{project:p.project,pendingCount:n.getPendingCount(l)}),this.startSessionProcessor(p,"startup-recovery"),c.sessionsStarted++,c.startedSessionIds.push(l),await new Promise(d=>setTimeout(d,100))}catch(u){_.error("SYSTEM",`Failed to process session ${l}`,{},u),c.sessionsSkipped++}}return c}async shutdown(){this.cleanupInterval&&(clearInterval(this.cleanupInterval),this.cleanupInterval=null,_.info("SYSTEM","Stopped periodic orphan cleanup")),V0(),this.vexorRoutes&&this.vexorRoutes.dispose(),await O$({server:this.server.getHttpServer(),sessionManager:this.sessionManager,mcpClient:this.mcpClient,dbManager:this.dbManager})}broadcastProcessingStatus(){let e=this.sessionManager.isAnySessionProcessing(),r=this.sessionManager.getTotalActiveWork(),n=this.sessionManager.getActiveSessionCount();_.info("WORKER","Broadcasting processing status",{isProcessing:e,queueDepth:r,activeSessions:n}),this.sseBroadcaster.broadcast({type:"processing_status",isProcessing:e,queueDepth:r})}};async function Qpe(){let t=process.argv[2],e=Cr();function r(n,s){let i=QL(n,s);console.log(JSON.stringify(i)),process.exit(0)}switch(t){case"start":{XL()||(_.error("SYSTEM","License verification failed"),r("error","UNLICENSED: Using Claude Pilot without a valid license is not permitted. Subscribe at https://claude-pilot.com then run: pilot activate "));let n=await Ky(e,__filename);n.ready?(_.info("SYSTEM","Worker started successfully"),r("ready")):(_.error("SYSTEM",n.error??"Worker failed to start"),r("error",n.error))}case"stop":await Qc(e),await Jc(e,bi(15e3))||_.warn("SYSTEM","Port did not free up after shutdown",{port:e}),Sn(),_.info("SYSTEM","Worker stopped successfully"),process.exit(0);case"restart":{_.info("SYSTEM","Restarting worker"),await Qc(e),await Jc(e,bi(15e3))||(_.error("SYSTEM","Port did not free up after shutdown, aborting restart",{port:e}),process.exit(0)),Sn();let s=Yc(__filename,e);s===void 0&&(_.error("SYSTEM","Failed to spawn worker daemon during restart"),process.exit(0)),Gc({pid:s,port:e,startedAt:new Date().toISOString()}),await hd(e,bi(3e4))||(Sn(),_.error("SYSTEM","Worker failed to restart"),process.exit(0)),_.info("SYSTEM","Worker restarted successfully"),process.exit(0)}case"status":{let{runCLI:n}=await Promise.resolve().then(()=>(Y0(),G0));await n(process.argv.slice(2)),process.exit(0)}case"hook":{let n=process.argv[3],s=process.argv[4];(!n||!s)&&(console.error("Usage: pilot-memory hook "),console.error("Platforms: claude-code, raw"),console.error("Events: context, session-init, observation, summarize, user-message"),process.exit(1)),await Ky(e,__filename);let{hookCommand:i}=await Promise.resolve().then(()=>(YL(),GL));await i(n,s);break}case"search":case"export":case"import":case"cleanup":case"backup":case"doctor":case"retention":case"vacuum":{let{runCLI:n}=await Promise.resolve().then(()=>(Y0(),G0));await n(process.argv.slice(2)),process.exit(0)}default:process.on("unhandledRejection",(s,i)=>{_.failure("SYSTEM","Unhandled rejection in daemon mode",{promise:String(i)},s instanceof Error?s:new Error(String(s)))}),process.on("uncaughtException",s=>{_.failure("SYSTEM","Uncaught exception in daemon mode",{},s)}),new gh().start().catch(s=>{_.failure("SYSTEM","Worker failed to start",{},s),Sn(),process.exit(0)})}}var Xpe=typeof require<"u"&&typeof module<"u"?require.main===module||!module.parent:tde.url===`file://${process.argv[1]}`||process.argv[1]?.endsWith("worker-service");Xpe&&Qpe();0&&(module.exports={WorkerService,buildStatusOutput,verifyLicense}); /*! Bundled license information: depd/index.js: diff --git a/pilot/ui/viewer-bundle.js b/pilot/ui/viewer-bundle.js index f19698d1..d59b2f4b 100644 --- a/pilot/ui/viewer-bundle.js +++ b/pilot/ui/viewer-bundle.js @@ -1,4 +1,4 @@ -var CD=Object.defineProperty;var OD=(e,t,n)=>t in e?CD(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var xp=(e,t,n)=>OD(e,typeof t!="symbol"?t+"":t,n);function ND(e,t){for(var n=0;nr[i]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))r(i);new MutationObserver(i=>{for(const a of i)if(a.type==="childList")for(const l of a.addedNodes)l.tagName==="LINK"&&l.rel==="modulepreload"&&r(l)}).observe(document,{childList:!0,subtree:!0});function n(i){const a={};return i.integrity&&(a.integrity=i.integrity),i.referrerPolicy&&(a.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?a.credentials="include":i.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function r(i){if(i.ep)return;i.ep=!0;const a=n(i);fetch(i.href,a)}})();function yr(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var bp={exports:{}},Dl={},wp={exports:{}},Le={};/** +var IM=Object.defineProperty;var TM=(e,t,n)=>t in e?IM(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var bp=(e,t,n)=>TM(e,typeof t!="symbol"?t+"":t,n);function MM(e,t){for(var n=0;nr[i]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))r(i);new MutationObserver(i=>{for(const a of i)if(a.type==="childList")for(const l of a.addedNodes)l.tagName==="LINK"&&l.rel==="modulepreload"&&r(l)}).observe(document,{childList:!0,subtree:!0});function n(i){const a={};return i.integrity&&(a.integrity=i.integrity),i.referrerPolicy&&(a.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?a.credentials="include":i.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function r(i){if(i.ep)return;i.ep=!0;const a=n(i);fetch(i.href,a)}})();function xr(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var wp={exports:{}},Dl={},kp={exports:{}},Le={};/** * @license React * react.production.min.js * @@ -6,7 +6,7 @@ var CD=Object.defineProperty;var OD=(e,t,n)=>t in e?CD(e,t,{enumerable:!0,config * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var Ew;function AD(){if(Ew)return Le;Ew=1;var e=Symbol.for("react.element"),t=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),i=Symbol.for("react.profiler"),a=Symbol.for("react.provider"),l=Symbol.for("react.context"),u=Symbol.for("react.forward_ref"),c=Symbol.for("react.suspense"),f=Symbol.for("react.memo"),d=Symbol.for("react.lazy"),p=Symbol.iterator;function g($){return $===null||typeof $!="object"?null:($=p&&$[p]||$["@@iterator"],typeof $=="function"?$:null)}var y={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},b=Object.assign,S={};function w($,U,_){this.props=$,this.context=U,this.refs=S,this.updater=_||y}w.prototype.isReactComponent={},w.prototype.setState=function($,U){if(typeof $!="object"&&typeof $!="function"&&$!=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,$,U,"setState")},w.prototype.forceUpdate=function($){this.updater.enqueueForceUpdate(this,$,"forceUpdate")};function P(){}P.prototype=w.prototype;function C($,U,_){this.props=$,this.context=U,this.refs=S,this.updater=_||y}var O=C.prototype=new P;O.constructor=C,b(O,w.prototype),O.isPureReactComponent=!0;var A=Array.isArray,I=Object.prototype.hasOwnProperty,E={current:null},L={key:!0,ref:!0,__self:!0,__source:!0};function F($,U,_){var te,fe={},ce=null,Se=null;if(U!=null)for(te in U.ref!==void 0&&(Se=U.ref),U.key!==void 0&&(ce=""+U.key),U)I.call(U,te)&&!L.hasOwnProperty(te)&&(fe[te]=U[te]);var je=arguments.length-2;if(je===1)fe.children=_;else if(1t in e?CD(e,t,{enumerable:!0,config * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var Ow;function _D(){if(Ow)return Dl;Ow=1;var e=$o(),t=Symbol.for("react.element"),n=Symbol.for("react.fragment"),r=Object.prototype.hasOwnProperty,i=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,a={key:!0,ref:!0,__self:!0,__source:!0};function l(u,c,f){var d,p={},g=null,y=null;f!==void 0&&(g=""+f),c.key!==void 0&&(g=""+c.key),c.ref!==void 0&&(y=c.ref);for(d in c)r.call(c,d)&&!a.hasOwnProperty(d)&&(p[d]=c[d]);if(u&&u.defaultProps)for(d in c=u.defaultProps,c)p[d]===void 0&&(p[d]=c[d]);return{$$typeof:t,type:u,key:g,ref:y,props:p,_owner:i.current}}return Dl.Fragment=n,Dl.jsx=l,Dl.jsxs=l,Dl}var Nw;function ID(){return Nw||(Nw=1,bp.exports=_D()),bp.exports}var m=ID(),ic={},kp={exports:{}},kn={},Sp={exports:{}},jp={};/** + */var Aw;function LM(){if(Aw)return Dl;Aw=1;var e=Fo(),t=Symbol.for("react.element"),n=Symbol.for("react.fragment"),r=Object.prototype.hasOwnProperty,i=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,a={key:!0,ref:!0,__self:!0,__source:!0};function l(u,c,f){var d,p={},g=null,y=null;f!==void 0&&(g=""+f),c.key!==void 0&&(g=""+c.key),c.ref!==void 0&&(y=c.ref);for(d in c)r.call(c,d)&&!a.hasOwnProperty(d)&&(p[d]=c[d]);if(u&&u.defaultProps)for(d in c=u.defaultProps,c)p[d]===void 0&&(p[d]=c[d]);return{$$typeof:t,type:u,key:g,ref:y,props:p,_owner:i.current}}return Dl.Fragment=n,Dl.jsx=l,Dl.jsxs=l,Dl}var _w;function RM(){return _w||(_w=1,wp.exports=LM()),wp.exports}var m=RM(),ac={},Sp={exports:{}},kn={},jp={exports:{}},Pp={};/** * @license React * scheduler.production.min.js * @@ -22,7 +22,7 @@ var CD=Object.defineProperty;var OD=(e,t,n)=>t in e?CD(e,t,{enumerable:!0,config * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var Aw;function TD(){return Aw||(Aw=1,(function(e){function t(J,ae){var T=J.length;J.push(ae);e:for(;0>>1,U=J[$];if(0>>1;$<_;){var te=2*($+1)-1,fe=J[te],ce=te+1,Se=J[ce];if(0>i(fe,T))cei(Se,fe)?(J[$]=Se,J[ce]=T,$=ce):(J[$]=fe,J[te]=T,$=te);else if(cei(Se,T))J[$]=Se,J[ce]=T,$=ce;else break e}}return ae}function i(J,ae){var T=J.sortIndex-ae.sortIndex;return T!==0?T:J.id-ae.id}if(typeof performance=="object"&&typeof performance.now=="function"){var a=performance;e.unstable_now=function(){return a.now()}}else{var l=Date,u=l.now();e.unstable_now=function(){return l.now()-u}}var c=[],f=[],d=1,p=null,g=3,y=!1,b=!1,S=!1,w=typeof setTimeout=="function"?setTimeout:null,P=typeof clearTimeout=="function"?clearTimeout:null,C=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function O(J){for(var ae=n(f);ae!==null;){if(ae.callback===null)r(f);else if(ae.startTime<=J)r(f),ae.sortIndex=ae.expirationTime,t(c,ae);else break;ae=n(f)}}function A(J){if(S=!1,O(J),!b)if(n(c)!==null)b=!0,he(I);else{var ae=n(f);ae!==null&&de(A,ae.startTime-J)}}function I(J,ae){b=!1,S&&(S=!1,P(F),F=-1),y=!0;var T=g;try{for(O(ae),p=n(c);p!==null&&(!(p.expirationTime>ae)||J&&!W());){var $=p.callback;if(typeof $=="function"){p.callback=null,g=p.priorityLevel;var U=$(p.expirationTime<=ae);ae=e.unstable_now(),typeof U=="function"?p.callback=U:p===n(c)&&r(c),O(ae)}else r(c);p=n(c)}if(p!==null)var _=!0;else{var te=n(f);te!==null&&de(A,te.startTime-ae),_=!1}return _}finally{p=null,g=T,y=!1}}var E=!1,L=null,F=-1,H=5,R=-1;function W(){return!(e.unstable_now()-RJ||125$?(J.sortIndex=T,t(f,J),n(c)===null&&J===n(f)&&(S?(P(F),F=-1):S=!0,de(A,T-$))):(J.sortIndex=U,t(c,J),b||y||(b=!0,he(I))),J},e.unstable_shouldYield=W,e.unstable_wrapCallback=function(J){var ae=g;return function(){var T=g;g=ae;try{return J.apply(this,arguments)}finally{g=T}}}})(jp)),jp}var _w;function DD(){return _w||(_w=1,Sp.exports=TD()),Sp.exports}/** + */var Iw;function zM(){return Iw||(Iw=1,(function(e){function t(J,ae){var T=J.length;J.push(ae);e:for(;0>>1,U=J[$];if(0>>1;$<_;){var te=2*($+1)-1,fe=J[te],ce=te+1,Se=J[ce];if(0>i(fe,T))cei(Se,fe)?(J[$]=Se,J[ce]=T,$=ce):(J[$]=fe,J[te]=T,$=te);else if(cei(Se,T))J[$]=Se,J[ce]=T,$=ce;else break e}}return ae}function i(J,ae){var T=J.sortIndex-ae.sortIndex;return T!==0?T:J.id-ae.id}if(typeof performance=="object"&&typeof performance.now=="function"){var a=performance;e.unstable_now=function(){return a.now()}}else{var l=Date,u=l.now();e.unstable_now=function(){return l.now()-u}}var c=[],f=[],d=1,p=null,g=3,y=!1,x=!1,S=!1,w=typeof setTimeout=="function"?setTimeout:null,P=typeof clearTimeout=="function"?clearTimeout:null,C=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function O(J){for(var ae=n(f);ae!==null;){if(ae.callback===null)r(f);else if(ae.startTime<=J)r(f),ae.sortIndex=ae.expirationTime,t(c,ae);else break;ae=n(f)}}function A(J){if(S=!1,O(J),!x)if(n(c)!==null)x=!0,he(I);else{var ae=n(f);ae!==null&&de(A,ae.startTime-J)}}function I(J,ae){x=!1,S&&(S=!1,P(F),F=-1),y=!0;var T=g;try{for(O(ae),p=n(c);p!==null&&(!(p.expirationTime>ae)||J&&!W());){var $=p.callback;if(typeof $=="function"){p.callback=null,g=p.priorityLevel;var U=$(p.expirationTime<=ae);ae=e.unstable_now(),typeof U=="function"?p.callback=U:p===n(c)&&r(c),O(ae)}else r(c);p=n(c)}if(p!==null)var _=!0;else{var te=n(f);te!==null&&de(A,te.startTime-ae),_=!1}return _}finally{p=null,g=T,y=!1}}var E=!1,L=null,F=-1,H=5,R=-1;function W(){return!(e.unstable_now()-RJ||125$?(J.sortIndex=T,t(f,J),n(c)===null&&J===n(f)&&(S?(P(F),F=-1):S=!0,de(A,T-$))):(J.sortIndex=U,t(c,J),x||y||(x=!0,he(I))),J},e.unstable_shouldYield=W,e.unstable_wrapCallback=function(J){var ae=g;return function(){var T=g;g=ae;try{return J.apply(this,arguments)}finally{g=T}}}})(Pp)),Pp}var Tw;function $M(){return Tw||(Tw=1,jp.exports=zM()),jp.exports}/** * @license React * react-dom.production.min.js * @@ -30,42 +30,42 @@ var CD=Object.defineProperty;var OD=(e,t,n)=>t in e?CD(e,t,{enumerable:!0,config * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var Iw;function MD(){if(Iw)return kn;Iw=1;var e=$o(),t=DD();function n(o){for(var s="https://reactjs.org/docs/error-decoder.html?invariant="+o,h=1;h"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),c=Object.prototype.hasOwnProperty,f=/^[: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]*$/,d={},p={};function g(o){return c.call(p,o)?!0:c.call(d,o)?!1:f.test(o)?p[o]=!0:(d[o]=!0,!1)}function y(o,s,h,v){if(h!==null&&h.type===0)return!1;switch(typeof s){case"function":case"symbol":return!0;case"boolean":return v?!1:h!==null?!h.acceptsBooleans:(o=o.toLowerCase().slice(0,5),o!=="data-"&&o!=="aria-");default:return!1}}function b(o,s,h,v){if(s===null||typeof s>"u"||y(o,s,h,v))return!0;if(v)return!1;if(h!==null)switch(h.type){case 3:return!s;case 4:return s===!1;case 5:return isNaN(s);case 6:return isNaN(s)||1>s}return!1}function S(o,s,h,v,x,j,N){this.acceptsBooleans=s===2||s===3||s===4,this.attributeName=v,this.attributeNamespace=x,this.mustUseProperty=h,this.propertyName=o,this.type=s,this.sanitizeURL=j,this.removeEmptyString=N}var w={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(o){w[o]=new S(o,0,!1,o,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(o){var s=o[0];w[s]=new S(s,1,!1,o[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(o){w[o]=new S(o,2,!1,o.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(o){w[o]=new S(o,2,!1,o,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(o){w[o]=new S(o,3,!1,o.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(o){w[o]=new S(o,3,!0,o,null,!1,!1)}),["capture","download"].forEach(function(o){w[o]=new S(o,4,!1,o,null,!1,!1)}),["cols","rows","size","span"].forEach(function(o){w[o]=new S(o,6,!1,o,null,!1,!1)}),["rowSpan","start"].forEach(function(o){w[o]=new S(o,5,!1,o.toLowerCase(),null,!1,!1)});var P=/[\-:]([a-z])/g;function C(o){return o[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(o){var s=o.replace(P,C);w[s]=new S(s,1,!1,o,null,!1,!1)}),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(o){var s=o.replace(P,C);w[s]=new S(s,1,!1,o,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(o){var s=o.replace(P,C);w[s]=new S(s,1,!1,o,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(o){w[o]=new S(o,1,!1,o.toLowerCase(),null,!1,!1)}),w.xlinkHref=new S("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(o){w[o]=new S(o,1,!1,o.toLowerCase(),null,!0,!0)});function O(o,s,h,v){var x=w.hasOwnProperty(s)?w[s]:null;(x!==null?x.type!==0:v||!(2"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),c=Object.prototype.hasOwnProperty,f=/^[: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]*$/,d={},p={};function g(o){return c.call(p,o)?!0:c.call(d,o)?!1:f.test(o)?p[o]=!0:(d[o]=!0,!1)}function y(o,s,h,v){if(h!==null&&h.type===0)return!1;switch(typeof s){case"function":case"symbol":return!0;case"boolean":return v?!1:h!==null?!h.acceptsBooleans:(o=o.toLowerCase().slice(0,5),o!=="data-"&&o!=="aria-");default:return!1}}function x(o,s,h,v){if(s===null||typeof s>"u"||y(o,s,h,v))return!0;if(v)return!1;if(h!==null)switch(h.type){case 3:return!s;case 4:return s===!1;case 5:return isNaN(s);case 6:return isNaN(s)||1>s}return!1}function S(o,s,h,v,b,j,N){this.acceptsBooleans=s===2||s===3||s===4,this.attributeName=v,this.attributeNamespace=b,this.mustUseProperty=h,this.propertyName=o,this.type=s,this.sanitizeURL=j,this.removeEmptyString=N}var w={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(o){w[o]=new S(o,0,!1,o,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(o){var s=o[0];w[s]=new S(s,1,!1,o[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(o){w[o]=new S(o,2,!1,o.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(o){w[o]=new S(o,2,!1,o,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(o){w[o]=new S(o,3,!1,o.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(o){w[o]=new S(o,3,!0,o,null,!1,!1)}),["capture","download"].forEach(function(o){w[o]=new S(o,4,!1,o,null,!1,!1)}),["cols","rows","size","span"].forEach(function(o){w[o]=new S(o,6,!1,o,null,!1,!1)}),["rowSpan","start"].forEach(function(o){w[o]=new S(o,5,!1,o.toLowerCase(),null,!1,!1)});var P=/[\-:]([a-z])/g;function C(o){return o[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(o){var s=o.replace(P,C);w[s]=new S(s,1,!1,o,null,!1,!1)}),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(o){var s=o.replace(P,C);w[s]=new S(s,1,!1,o,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(o){var s=o.replace(P,C);w[s]=new S(s,1,!1,o,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(o){w[o]=new S(o,1,!1,o.toLowerCase(),null,!1,!1)}),w.xlinkHref=new S("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(o){w[o]=new S(o,1,!1,o.toLowerCase(),null,!0,!0)});function O(o,s,h,v){var b=w.hasOwnProperty(s)?w[s]:null;(b!==null?b.type!==0:v||!(2M||x[N]!==j[M]){var z=` -`+x[N].replace(" at new "," at ");return o.displayName&&z.includes("")&&(z=z.replace("",o.displayName)),z}while(1<=N&&0<=M);break}}}finally{_=!1,Error.prepareStackTrace=h}return(o=o?o.displayName||o.name:"")?U(o):""}function fe(o){switch(o.tag){case 5:return U(o.type);case 16:return U("Lazy");case 13:return U("Suspense");case 19:return U("SuspenseList");case 0:case 2:case 15:return o=te(o.type,!1),o;case 11:return o=te(o.type.render,!1),o;case 1:return o=te(o.type,!0),o;default:return""}}function ce(o){if(o==null)return null;if(typeof o=="function")return o.displayName||o.name||null;if(typeof o=="string")return o;switch(o){case L:return"Fragment";case E:return"Portal";case H:return"Profiler";case F:return"StrictMode";case Z:return"Suspense";case Y:return"SuspenseList"}if(typeof o=="object")switch(o.$$typeof){case W:return(o.displayName||"Context")+".Consumer";case R:return(o._context.displayName||"Context")+".Provider";case D:var s=o.render;return o=o.displayName,o||(o=s.displayName||s.name||"",o=o!==""?"ForwardRef("+o+")":"ForwardRef"),o;case Q:return s=o.displayName||null,s!==null?s:ce(o.type)||"Memo";case he:s=o._payload,o=o._init;try{return ce(o(s))}catch{}}return null}function Se(o){var s=o.type;switch(o.tag){case 24:return"Cache";case 9:return(s.displayName||"Context")+".Consumer";case 10:return(s._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return o=s.render,o=o.displayName||o.name||"",s.displayName||(o!==""?"ForwardRef("+o+")":"ForwardRef");case 7:return"Fragment";case 5:return s;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return ce(s);case 8:return s===F?"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 s=="function")return s.displayName||s.name||null;if(typeof s=="string")return s}return null}function je(o){switch(typeof o){case"boolean":case"number":case"string":case"undefined":return o;case"object":return o;default:return""}}function X(o){var s=o.type;return(o=o.nodeName)&&o.toLowerCase()==="input"&&(s==="checkbox"||s==="radio")}function we(o){var s=X(o)?"checked":"value",h=Object.getOwnPropertyDescriptor(o.constructor.prototype,s),v=""+o[s];if(!o.hasOwnProperty(s)&&typeof h<"u"&&typeof h.get=="function"&&typeof h.set=="function"){var x=h.get,j=h.set;return Object.defineProperty(o,s,{configurable:!0,get:function(){return x.call(this)},set:function(N){v=""+N,j.call(this,N)}}),Object.defineProperty(o,s,{enumerable:h.enumerable}),{getValue:function(){return v},setValue:function(N){v=""+N},stopTracking:function(){o._valueTracker=null,delete o[s]}}}}function Ae(o){o._valueTracker||(o._valueTracker=we(o))}function ie(o){if(!o)return!1;var s=o._valueTracker;if(!s)return!0;var h=s.getValue(),v="";return o&&(v=X(o)?o.checked?"true":"false":o.value),o=v,o!==h?(s.setValue(o),!0):!1}function rt(o){if(o=o||(typeof document<"u"?document:void 0),typeof o>"u")return null;try{return o.activeElement||o.body}catch{return o.body}}function ze(o,s){var h=s.checked;return T({},s,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:h??o._wrapperState.initialChecked})}function ct(o,s){var h=s.defaultValue==null?"":s.defaultValue,v=s.checked!=null?s.checked:s.defaultChecked;h=je(s.value!=null?s.value:h),o._wrapperState={initialChecked:v,initialValue:h,controlled:s.type==="checkbox"||s.type==="radio"?s.checked!=null:s.value!=null}}function ft(o,s){s=s.checked,s!=null&&O(o,"checked",s,!1)}function Ut(o,s){ft(o,s);var h=je(s.value),v=s.type;if(h!=null)v==="number"?(h===0&&o.value===""||o.value!=h)&&(o.value=""+h):o.value!==""+h&&(o.value=""+h);else if(v==="submit"||v==="reset"){o.removeAttribute("value");return}s.hasOwnProperty("value")?Br(o,s.type,h):s.hasOwnProperty("defaultValue")&&Br(o,s.type,je(s.defaultValue)),s.checked==null&&s.defaultChecked!=null&&(o.defaultChecked=!!s.defaultChecked)}function Pt(o,s,h){if(s.hasOwnProperty("value")||s.hasOwnProperty("defaultValue")){var v=s.type;if(!(v!=="submit"&&v!=="reset"||s.value!==void 0&&s.value!==null))return;s=""+o._wrapperState.initialValue,h||s===o.value||(o.value=s),o.defaultValue=s}h=o.name,h!==""&&(o.name=""),o.defaultChecked=!!o._wrapperState.initialChecked,h!==""&&(o.name=h)}function Br(o,s,h){(s!=="number"||rt(o.ownerDocument)!==o)&&(h==null?o.defaultValue=""+o._wrapperState.initialValue:o.defaultValue!==""+h&&(o.defaultValue=""+h))}var yi=Array.isArray;function xi(o,s,h,v){if(o=o.options,s){s={};for(var x=0;x"+s.valueOf().toString()+"",s=Ne.firstChild;o.firstChild;)o.removeChild(o.firstChild);for(;s.firstChild;)o.appendChild(s.firstChild)}});function Fe(o,s){if(s){var h=o.firstChild;if(h&&h===o.lastChild&&h.nodeType===3){h.nodeValue=s;return}}o.textContent=s}var Wt={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},Ur=["Webkit","ms","Moz","O"];Object.keys(Wt).forEach(function(o){Ur.forEach(function(s){s=s+o.charAt(0).toUpperCase()+o.substring(1),Wt[s]=Wt[o]})});function Fn(o,s,h){return s==null||typeof s=="boolean"||s===""?"":h||typeof s!="number"||s===0||Wt.hasOwnProperty(o)&&Wt[o]?(""+s).trim():s+"px"}function bi(o,s){o=o.style;for(var h in s)if(s.hasOwnProperty(h)){var v=h.indexOf("--")===0,x=Fn(h,s[h],v);h==="float"&&(h="cssFloat"),v?o.setProperty(h,x):o[h]=x}}var ta=T({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 qt(o,s){if(s){if(ta[o]&&(s.children!=null||s.dangerouslySetInnerHTML!=null))throw Error(n(137,o));if(s.dangerouslySetInnerHTML!=null){if(s.children!=null)throw Error(n(60));if(typeof s.dangerouslySetInnerHTML!="object"||!("__html"in s.dangerouslySetInnerHTML))throw Error(n(61))}if(s.style!=null&&typeof s.style!="object")throw Error(n(62))}}function br(o,s){if(o.indexOf("-")===-1)return typeof s.is=="string";switch(o){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 Nn=null;function Dd(o){return o=o.target||o.srcElement||window,o.correspondingUseElement&&(o=o.correspondingUseElement),o.nodeType===3?o.parentNode:o}var Md=null,Wa=null,qa=null;function Wx(o){if(o=xl(o)){if(typeof Md!="function")throw Error(n(280));var s=o.stateNode;s&&(s=xu(s),Md(o.stateNode,o.type,s))}}function qx(o){Wa?qa?qa.push(o):qa=[o]:Wa=o}function Hx(){if(Wa){var o=Wa,s=qa;if(qa=Wa=null,Wx(o),s)for(o=0;o>>=0,o===0?32:31-(WT(o)/qT|0)|0}var tu=64,nu=4194304;function tl(o){switch(o&-o){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 o&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return o&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return o}}function ru(o,s){var h=o.pendingLanes;if(h===0)return 0;var v=0,x=o.suspendedLanes,j=o.pingedLanes,N=h&268435455;if(N!==0){var M=N&~x;M!==0?v=tl(M):(j&=N,j!==0&&(v=tl(j)))}else N=h&~x,N!==0?v=tl(N):j!==0&&(v=tl(j));if(v===0)return 0;if(s!==0&&s!==v&&(s&x)===0&&(x=v&-v,j=s&-s,x>=j||x===16&&(j&4194240)!==0))return s;if((v&4)!==0&&(v|=h&16),s=o.entangledLanes,s!==0)for(o=o.entanglements,s&=v;0h;h++)s.push(o);return s}function nl(o,s,h){o.pendingLanes|=s,s!==536870912&&(o.suspendedLanes=0,o.pingedLanes=0),o=o.eventTimes,s=31-rr(s),o[s]=h}function GT(o,s){var h=o.pendingLanes&~s;o.pendingLanes=s,o.suspendedLanes=0,o.pingedLanes=0,o.expiredLanes&=s,o.mutableReadLanes&=s,o.entangledLanes&=s,s=o.entanglements;var v=o.eventTimes;for(o=o.expirationTimes;0=cl),x0=" ",b0=!1;function w0(o,s){switch(o){case"keyup":return k2.indexOf(s.keyCode)!==-1;case"keydown":return s.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function k0(o){return o=o.detail,typeof o=="object"&&"data"in o?o.data:null}var Ka=!1;function j2(o,s){switch(o){case"compositionend":return k0(s);case"keypress":return s.which!==32?null:(b0=!0,x0);case"textInput":return o=s.data,o===x0&&b0?null:o;default:return null}}function P2(o,s){if(Ka)return o==="compositionend"||!Jd&&w0(o,s)?(o=h0(),su=Kd=Pi=null,Ka=!1,o):null;switch(o){case"paste":return null;case"keypress":if(!(s.ctrlKey||s.altKey||s.metaKey)||s.ctrlKey&&s.altKey){if(s.char&&1=s)return{node:h,offset:s-o};o=v}e:{for(;h;){if(h.nextSibling){h=h.nextSibling;break e}h=h.parentNode}h=void 0}h=N0(h)}}function _0(o,s){return o&&s?o===s?!0:o&&o.nodeType===3?!1:s&&s.nodeType===3?_0(o,s.parentNode):"contains"in o?o.contains(s):o.compareDocumentPosition?!!(o.compareDocumentPosition(s)&16):!1:!1}function I0(){for(var o=window,s=rt();s instanceof o.HTMLIFrameElement;){try{var h=typeof s.contentWindow.location.href=="string"}catch{h=!1}if(h)o=s.contentWindow;else break;s=rt(o.document)}return s}function nh(o){var s=o&&o.nodeName&&o.nodeName.toLowerCase();return s&&(s==="input"&&(o.type==="text"||o.type==="search"||o.type==="tel"||o.type==="url"||o.type==="password")||s==="textarea"||o.contentEditable==="true")}function D2(o){var s=I0(),h=o.focusedElem,v=o.selectionRange;if(s!==h&&h&&h.ownerDocument&&_0(h.ownerDocument.documentElement,h)){if(v!==null&&nh(h)){if(s=v.start,o=v.end,o===void 0&&(o=s),"selectionStart"in h)h.selectionStart=s,h.selectionEnd=Math.min(o,h.value.length);else if(o=(s=h.ownerDocument||document)&&s.defaultView||window,o.getSelection){o=o.getSelection();var x=h.textContent.length,j=Math.min(v.start,x);v=v.end===void 0?j:Math.min(v.end,x),!o.extend&&j>v&&(x=v,v=j,j=x),x=A0(h,j);var N=A0(h,v);x&&N&&(o.rangeCount!==1||o.anchorNode!==x.node||o.anchorOffset!==x.offset||o.focusNode!==N.node||o.focusOffset!==N.offset)&&(s=s.createRange(),s.setStart(x.node,x.offset),o.removeAllRanges(),j>v?(o.addRange(s),o.extend(N.node,N.offset)):(s.setEnd(N.node,N.offset),o.addRange(s)))}}for(s=[],o=h;o=o.parentNode;)o.nodeType===1&&s.push({element:o,left:o.scrollLeft,top:o.scrollTop});for(typeof h.focus=="function"&&h.focus(),h=0;h=document.documentMode,Ga=null,rh=null,pl=null,ih=!1;function T0(o,s,h){var v=h.window===h?h.document:h.nodeType===9?h:h.ownerDocument;ih||Ga==null||Ga!==rt(v)||(v=Ga,"selectionStart"in v&&nh(v)?v={start:v.selectionStart,end:v.selectionEnd}:(v=(v.ownerDocument&&v.ownerDocument.defaultView||window).getSelection(),v={anchorNode:v.anchorNode,anchorOffset:v.anchorOffset,focusNode:v.focusNode,focusOffset:v.focusOffset}),pl&&hl(pl,v)||(pl=v,v=gu(rh,"onSelect"),0Ja||(o.current=gh[Ja],gh[Ja]=null,Ja--)}function Qe(o,s){Ja++,gh[Ja]=o.current,o.current=s}var Ni={},Qt=Oi(Ni),vn=Oi(!1),ia=Ni;function eo(o,s){var h=o.type.contextTypes;if(!h)return Ni;var v=o.stateNode;if(v&&v.__reactInternalMemoizedUnmaskedChildContext===s)return v.__reactInternalMemoizedMaskedChildContext;var x={},j;for(j in h)x[j]=s[j];return v&&(o=o.stateNode,o.__reactInternalMemoizedUnmaskedChildContext=s,o.__reactInternalMemoizedMaskedChildContext=x),x}function yn(o){return o=o.childContextTypes,o!=null}function bu(){tt(vn),tt(Qt)}function G0(o,s,h){if(Qt.current!==Ni)throw Error(n(168));Qe(Qt,s),Qe(vn,h)}function Y0(o,s,h){var v=o.stateNode;if(s=s.childContextTypes,typeof v.getChildContext!="function")return h;v=v.getChildContext();for(var x in v)if(!(x in s))throw Error(n(108,Se(o)||"Unknown",x));return T({},h,v)}function wu(o){return o=(o=o.stateNode)&&o.__reactInternalMemoizedMergedChildContext||Ni,ia=Qt.current,Qe(Qt,o),Qe(vn,vn.current),!0}function X0(o,s,h){var v=o.stateNode;if(!v)throw Error(n(169));h?(o=Y0(o,s,ia),v.__reactInternalMemoizedMergedChildContext=o,tt(vn),tt(Qt),Qe(Qt,o)):tt(vn),Qe(vn,h)}var qr=null,ku=!1,vh=!1;function Q0(o){qr===null?qr=[o]:qr.push(o)}function V2(o){ku=!0,Q0(o)}function Ai(){if(!vh&&qr!==null){vh=!0;var o=0,s=Ve;try{var h=qr;for(Ve=1;o>=N,x-=N,Hr=1<<32-rr(s)+x|h<_e?(Tt=Ce,Ce=null):Tt=Ce.sibling;var Ue=ne(q,Ce,V[_e],ue);if(Ue===null){Ce===null&&(Ce=Tt);break}o&&Ce&&Ue.alternate===null&&s(q,Ce),B=j(Ue,B,_e),Ee===null?ke=Ue:Ee.sibling=Ue,Ee=Ue,Ce=Tt}if(_e===V.length)return h(q,Ce),it&&oa(q,_e),ke;if(Ce===null){for(;_e_e?(Tt=Ce,Ce=null):Tt=Ce.sibling;var $i=ne(q,Ce,Ue.value,ue);if($i===null){Ce===null&&(Ce=Tt);break}o&&Ce&&$i.alternate===null&&s(q,Ce),B=j($i,B,_e),Ee===null?ke=$i:Ee.sibling=$i,Ee=$i,Ce=Tt}if(Ue.done)return h(q,Ce),it&&oa(q,_e),ke;if(Ce===null){for(;!Ue.done;_e++,Ue=V.next())Ue=oe(q,Ue.value,ue),Ue!==null&&(B=j(Ue,B,_e),Ee===null?ke=Ue:Ee.sibling=Ue,Ee=Ue);return it&&oa(q,_e),ke}for(Ce=v(q,Ce);!Ue.done;_e++,Ue=V.next())Ue=me(Ce,q,_e,Ue.value,ue),Ue!==null&&(o&&Ue.alternate!==null&&Ce.delete(Ue.key===null?_e:Ue.key),B=j(Ue,B,_e),Ee===null?ke=Ue:Ee.sibling=Ue,Ee=Ue);return o&&Ce.forEach(function(ED){return s(q,ED)}),it&&oa(q,_e),ke}function vt(q,B,V,ue){if(typeof V=="object"&&V!==null&&V.type===L&&V.key===null&&(V=V.props.children),typeof V=="object"&&V!==null){switch(V.$$typeof){case I:e:{for(var ke=V.key,Ee=B;Ee!==null;){if(Ee.key===ke){if(ke=V.type,ke===L){if(Ee.tag===7){h(q,Ee.sibling),B=x(Ee,V.props.children),B.return=q,q=B;break e}}else if(Ee.elementType===ke||typeof ke=="object"&&ke!==null&&ke.$$typeof===he&&rb(ke)===Ee.type){h(q,Ee.sibling),B=x(Ee,V.props),B.ref=bl(q,Ee,V),B.return=q,q=B;break e}h(q,Ee);break}else s(q,Ee);Ee=Ee.sibling}V.type===L?(B=pa(V.props.children,q.mode,ue,V.key),B.return=q,q=B):(ue=Xu(V.type,V.key,V.props,null,q.mode,ue),ue.ref=bl(q,B,V),ue.return=q,q=ue)}return N(q);case E:e:{for(Ee=V.key;B!==null;){if(B.key===Ee)if(B.tag===4&&B.stateNode.containerInfo===V.containerInfo&&B.stateNode.implementation===V.implementation){h(q,B.sibling),B=x(B,V.children||[]),B.return=q,q=B;break e}else{h(q,B);break}else s(q,B);B=B.sibling}B=pp(V,q.mode,ue),B.return=q,q=B}return N(q);case he:return Ee=V._init,vt(q,B,Ee(V._payload),ue)}if(yi(V))return xe(q,B,V,ue);if(ae(V))return be(q,B,V,ue);Eu(q,V)}return typeof V=="string"&&V!==""||typeof V=="number"?(V=""+V,B!==null&&B.tag===6?(h(q,B.sibling),B=x(B,V),B.return=q,q=B):(h(q,B),B=hp(V,q.mode,ue),B.return=q,q=B),N(q)):h(q,B)}return vt}var io=ib(!0),ab=ib(!1),Cu=Oi(null),Ou=null,ao=null,Sh=null;function jh(){Sh=ao=Ou=null}function Ph(o){var s=Cu.current;tt(Cu),o._currentValue=s}function Eh(o,s,h){for(;o!==null;){var v=o.alternate;if((o.childLanes&s)!==s?(o.childLanes|=s,v!==null&&(v.childLanes|=s)):v!==null&&(v.childLanes&s)!==s&&(v.childLanes|=s),o===h)break;o=o.return}}function oo(o,s){Ou=o,Sh=ao=null,o=o.dependencies,o!==null&&o.firstContext!==null&&((o.lanes&s)!==0&&(xn=!0),o.firstContext=null)}function Wn(o){var s=o._currentValue;if(Sh!==o)if(o={context:o,memoizedValue:s,next:null},ao===null){if(Ou===null)throw Error(n(308));ao=o,Ou.dependencies={lanes:0,firstContext:o}}else ao=ao.next=o;return s}var la=null;function Ch(o){la===null?la=[o]:la.push(o)}function ob(o,s,h,v){var x=s.interleaved;return x===null?(h.next=h,Ch(s)):(h.next=x.next,x.next=h),s.interleaved=h,Kr(o,v)}function Kr(o,s){o.lanes|=s;var h=o.alternate;for(h!==null&&(h.lanes|=s),h=o,o=o.return;o!==null;)o.childLanes|=s,h=o.alternate,h!==null&&(h.childLanes|=s),h=o,o=o.return;return h.tag===3?h.stateNode:null}var _i=!1;function Oh(o){o.updateQueue={baseState:o.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function lb(o,s){o=o.updateQueue,s.updateQueue===o&&(s.updateQueue={baseState:o.baseState,firstBaseUpdate:o.firstBaseUpdate,lastBaseUpdate:o.lastBaseUpdate,shared:o.shared,effects:o.effects})}function Gr(o,s){return{eventTime:o,lane:s,tag:0,payload:null,callback:null,next:null}}function Ii(o,s,h){var v=o.updateQueue;if(v===null)return null;if(v=v.shared,(Be&2)!==0){var x=v.pending;return x===null?s.next=s:(s.next=x.next,x.next=s),v.pending=s,Kr(o,h)}return x=v.interleaved,x===null?(s.next=s,Ch(v)):(s.next=x.next,x.next=s),v.interleaved=s,Kr(o,h)}function Nu(o,s,h){if(s=s.updateQueue,s!==null&&(s=s.shared,(h&4194240)!==0)){var v=s.lanes;v&=o.pendingLanes,h|=v,s.lanes=h,Ud(o,h)}}function sb(o,s){var h=o.updateQueue,v=o.alternate;if(v!==null&&(v=v.updateQueue,h===v)){var x=null,j=null;if(h=h.firstBaseUpdate,h!==null){do{var N={eventTime:h.eventTime,lane:h.lane,tag:h.tag,payload:h.payload,callback:h.callback,next:null};j===null?x=j=N:j=j.next=N,h=h.next}while(h!==null);j===null?x=j=s:j=j.next=s}else x=j=s;h={baseState:v.baseState,firstBaseUpdate:x,lastBaseUpdate:j,shared:v.shared,effects:v.effects},o.updateQueue=h;return}o=h.lastBaseUpdate,o===null?h.firstBaseUpdate=s:o.next=s,h.lastBaseUpdate=s}function Au(o,s,h,v){var x=o.updateQueue;_i=!1;var j=x.firstBaseUpdate,N=x.lastBaseUpdate,M=x.shared.pending;if(M!==null){x.shared.pending=null;var z=M,K=z.next;z.next=null,N===null?j=K:N.next=K,N=z;var re=o.alternate;re!==null&&(re=re.updateQueue,M=re.lastBaseUpdate,M!==N&&(M===null?re.firstBaseUpdate=K:M.next=K,re.lastBaseUpdate=z))}if(j!==null){var oe=x.baseState;N=0,re=K=z=null,M=j;do{var ne=M.lane,me=M.eventTime;if((v&ne)===ne){re!==null&&(re=re.next={eventTime:me,lane:0,tag:M.tag,payload:M.payload,callback:M.callback,next:null});e:{var xe=o,be=M;switch(ne=s,me=h,be.tag){case 1:if(xe=be.payload,typeof xe=="function"){oe=xe.call(me,oe,ne);break e}oe=xe;break e;case 3:xe.flags=xe.flags&-65537|128;case 0:if(xe=be.payload,ne=typeof xe=="function"?xe.call(me,oe,ne):xe,ne==null)break e;oe=T({},oe,ne);break e;case 2:_i=!0}}M.callback!==null&&M.lane!==0&&(o.flags|=64,ne=x.effects,ne===null?x.effects=[M]:ne.push(M))}else me={eventTime:me,lane:ne,tag:M.tag,payload:M.payload,callback:M.callback,next:null},re===null?(K=re=me,z=oe):re=re.next=me,N|=ne;if(M=M.next,M===null){if(M=x.shared.pending,M===null)break;ne=M,M=ne.next,ne.next=null,x.lastBaseUpdate=ne,x.shared.pending=null}}while(!0);if(re===null&&(z=oe),x.baseState=z,x.firstBaseUpdate=K,x.lastBaseUpdate=re,s=x.shared.interleaved,s!==null){x=s;do N|=x.lane,x=x.next;while(x!==s)}else j===null&&(x.shared.lanes=0);ca|=N,o.lanes=N,o.memoizedState=oe}}function ub(o,s,h){if(o=s.effects,s.effects=null,o!==null)for(s=0;sh?h:4,o(!0);var v=Th.transition;Th.transition={};try{o(!1),s()}finally{Ve=h,Th.transition=v}}function Ob(){return qn().memoizedState}function X2(o,s,h){var v=Li(o);if(h={lane:v,action:h,hasEagerState:!1,eagerState:null,next:null},Nb(o))Ab(s,h);else if(h=ob(o,s,h,v),h!==null){var x=sn();ur(h,o,v,x),_b(h,s,v)}}function Q2(o,s,h){var v=Li(o),x={lane:v,action:h,hasEagerState:!1,eagerState:null,next:null};if(Nb(o))Ab(s,x);else{var j=o.alternate;if(o.lanes===0&&(j===null||j.lanes===0)&&(j=s.lastRenderedReducer,j!==null))try{var N=s.lastRenderedState,M=j(N,h);if(x.hasEagerState=!0,x.eagerState=M,ir(M,N)){var z=s.interleaved;z===null?(x.next=x,Ch(s)):(x.next=z.next,z.next=x),s.interleaved=x;return}}catch{}finally{}h=ob(o,s,x,v),h!==null&&(x=sn(),ur(h,o,v,x),_b(h,s,v))}}function Nb(o){var s=o.alternate;return o===st||s!==null&&s===st}function Ab(o,s){jl=Tu=!0;var h=o.pending;h===null?s.next=s:(s.next=h.next,h.next=s),o.pending=s}function _b(o,s,h){if((h&4194240)!==0){var v=s.lanes;v&=o.pendingLanes,h|=v,s.lanes=h,Ud(o,h)}}var Lu={readContext:Wn,useCallback:Zt,useContext:Zt,useEffect:Zt,useImperativeHandle:Zt,useInsertionEffect:Zt,useLayoutEffect:Zt,useMemo:Zt,useReducer:Zt,useRef:Zt,useState:Zt,useDebugValue:Zt,useDeferredValue:Zt,useTransition:Zt,useMutableSource:Zt,useSyncExternalStore:Zt,useId:Zt,unstable_isNewReconciler:!1},Z2={readContext:Wn,useCallback:function(o,s){return jr().memoizedState=[o,s===void 0?null:s],o},useContext:Wn,useEffect:bb,useImperativeHandle:function(o,s,h){return h=h!=null?h.concat([o]):null,Du(4194308,4,Sb.bind(null,s,o),h)},useLayoutEffect:function(o,s){return Du(4194308,4,o,s)},useInsertionEffect:function(o,s){return Du(4,2,o,s)},useMemo:function(o,s){var h=jr();return s=s===void 0?null:s,o=o(),h.memoizedState=[o,s],o},useReducer:function(o,s,h){var v=jr();return s=h!==void 0?h(s):s,v.memoizedState=v.baseState=s,o={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:o,lastRenderedState:s},v.queue=o,o=o.dispatch=X2.bind(null,st,o),[v.memoizedState,o]},useRef:function(o){var s=jr();return o={current:o},s.memoizedState=o},useState:yb,useDebugValue:Fh,useDeferredValue:function(o){return jr().memoizedState=o},useTransition:function(){var o=yb(!1),s=o[0];return o=Y2.bind(null,o[1]),jr().memoizedState=o,[s,o]},useMutableSource:function(){},useSyncExternalStore:function(o,s,h){var v=st,x=jr();if(it){if(h===void 0)throw Error(n(407));h=h()}else{if(h=s(),It===null)throw Error(n(349));(ua&30)!==0||hb(v,s,h)}x.memoizedState=h;var j={value:h,getSnapshot:s};return x.queue=j,bb(mb.bind(null,v,j,o),[o]),v.flags|=2048,Cl(9,pb.bind(null,v,j,h,s),void 0,null),h},useId:function(){var o=jr(),s=It.identifierPrefix;if(it){var h=Vr,v=Hr;h=(v&~(1<<32-rr(v)-1)).toString(32)+h,s=":"+s+"R"+h,h=Pl++,0D||b[N]!==j[D]){var z=` +`+b[N].replace(" at new "," at ");return o.displayName&&z.includes("")&&(z=z.replace("",o.displayName)),z}while(1<=N&&0<=D);break}}}finally{_=!1,Error.prepareStackTrace=h}return(o=o?o.displayName||o.name:"")?U(o):""}function fe(o){switch(o.tag){case 5:return U(o.type);case 16:return U("Lazy");case 13:return U("Suspense");case 19:return U("SuspenseList");case 0:case 2:case 15:return o=te(o.type,!1),o;case 11:return o=te(o.type.render,!1),o;case 1:return o=te(o.type,!0),o;default:return""}}function ce(o){if(o==null)return null;if(typeof o=="function")return o.displayName||o.name||null;if(typeof o=="string")return o;switch(o){case L:return"Fragment";case E:return"Portal";case H:return"Profiler";case F:return"StrictMode";case Z:return"Suspense";case Y:return"SuspenseList"}if(typeof o=="object")switch(o.$$typeof){case W:return(o.displayName||"Context")+".Consumer";case R:return(o._context.displayName||"Context")+".Provider";case M:var s=o.render;return o=o.displayName,o||(o=s.displayName||s.name||"",o=o!==""?"ForwardRef("+o+")":"ForwardRef"),o;case Q:return s=o.displayName||null,s!==null?s:ce(o.type)||"Memo";case he:s=o._payload,o=o._init;try{return ce(o(s))}catch{}}return null}function Se(o){var s=o.type;switch(o.tag){case 24:return"Cache";case 9:return(s.displayName||"Context")+".Consumer";case 10:return(s._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return o=s.render,o=o.displayName||o.name||"",s.displayName||(o!==""?"ForwardRef("+o+")":"ForwardRef");case 7:return"Fragment";case 5:return s;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return ce(s);case 8:return s===F?"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 s=="function")return s.displayName||s.name||null;if(typeof s=="string")return s}return null}function je(o){switch(typeof o){case"boolean":case"number":case"string":case"undefined":return o;case"object":return o;default:return""}}function X(o){var s=o.type;return(o=o.nodeName)&&o.toLowerCase()==="input"&&(s==="checkbox"||s==="radio")}function we(o){var s=X(o)?"checked":"value",h=Object.getOwnPropertyDescriptor(o.constructor.prototype,s),v=""+o[s];if(!o.hasOwnProperty(s)&&typeof h<"u"&&typeof h.get=="function"&&typeof h.set=="function"){var b=h.get,j=h.set;return Object.defineProperty(o,s,{configurable:!0,get:function(){return b.call(this)},set:function(N){v=""+N,j.call(this,N)}}),Object.defineProperty(o,s,{enumerable:h.enumerable}),{getValue:function(){return v},setValue:function(N){v=""+N},stopTracking:function(){o._valueTracker=null,delete o[s]}}}}function Ae(o){o._valueTracker||(o._valueTracker=we(o))}function ie(o){if(!o)return!1;var s=o._valueTracker;if(!s)return!0;var h=s.getValue(),v="";return o&&(v=X(o)?o.checked?"true":"false":o.value),o=v,o!==h?(s.setValue(o),!0):!1}function rt(o){if(o=o||(typeof document<"u"?document:void 0),typeof o>"u")return null;try{return o.activeElement||o.body}catch{return o.body}}function ze(o,s){var h=s.checked;return T({},s,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:h??o._wrapperState.initialChecked})}function ct(o,s){var h=s.defaultValue==null?"":s.defaultValue,v=s.checked!=null?s.checked:s.defaultChecked;h=je(s.value!=null?s.value:h),o._wrapperState={initialChecked:v,initialValue:h,controlled:s.type==="checkbox"||s.type==="radio"?s.checked!=null:s.value!=null}}function ft(o,s){s=s.checked,s!=null&&O(o,"checked",s,!1)}function Ut(o,s){ft(o,s);var h=je(s.value),v=s.type;if(h!=null)v==="number"?(h===0&&o.value===""||o.value!=h)&&(o.value=""+h):o.value!==""+h&&(o.value=""+h);else if(v==="submit"||v==="reset"){o.removeAttribute("value");return}s.hasOwnProperty("value")?Ur(o,s.type,h):s.hasOwnProperty("defaultValue")&&Ur(o,s.type,je(s.defaultValue)),s.checked==null&&s.defaultChecked!=null&&(o.defaultChecked=!!s.defaultChecked)}function Pt(o,s,h){if(s.hasOwnProperty("value")||s.hasOwnProperty("defaultValue")){var v=s.type;if(!(v!=="submit"&&v!=="reset"||s.value!==void 0&&s.value!==null))return;s=""+o._wrapperState.initialValue,h||s===o.value||(o.value=s),o.defaultValue=s}h=o.name,h!==""&&(o.name=""),o.defaultChecked=!!o._wrapperState.initialChecked,h!==""&&(o.name=h)}function Ur(o,s,h){(s!=="number"||rt(o.ownerDocument)!==o)&&(h==null?o.defaultValue=""+o._wrapperState.initialValue:o.defaultValue!==""+h&&(o.defaultValue=""+h))}var xi=Array.isArray;function bi(o,s,h,v){if(o=o.options,s){s={};for(var b=0;b"+s.valueOf().toString()+"",s=Ne.firstChild;o.firstChild;)o.removeChild(o.firstChild);for(;s.firstChild;)o.appendChild(s.firstChild)}});function Fe(o,s){if(s){var h=o.firstChild;if(h&&h===o.lastChild&&h.nodeType===3){h.nodeValue=s;return}}o.textContent=s}var Wt={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},Wr=["Webkit","ms","Moz","O"];Object.keys(Wt).forEach(function(o){Wr.forEach(function(s){s=s+o.charAt(0).toUpperCase()+o.substring(1),Wt[s]=Wt[o]})});function Fn(o,s,h){return s==null||typeof s=="boolean"||s===""?"":h||typeof s!="number"||s===0||Wt.hasOwnProperty(o)&&Wt[o]?(""+s).trim():s+"px"}function wi(o,s){o=o.style;for(var h in s)if(s.hasOwnProperty(h)){var v=h.indexOf("--")===0,b=Fn(h,s[h],v);h==="float"&&(h="cssFloat"),v?o.setProperty(h,b):o[h]=b}}var na=T({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 qt(o,s){if(s){if(na[o]&&(s.children!=null||s.dangerouslySetInnerHTML!=null))throw Error(n(137,o));if(s.dangerouslySetInnerHTML!=null){if(s.children!=null)throw Error(n(60));if(typeof s.dangerouslySetInnerHTML!="object"||!("__html"in s.dangerouslySetInnerHTML))throw Error(n(61))}if(s.style!=null&&typeof s.style!="object")throw Error(n(62))}}function wr(o,s){if(o.indexOf("-")===-1)return typeof s.is=="string";switch(o){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 Nn=null;function Dd(o){return o=o.target||o.srcElement||window,o.correspondingUseElement&&(o=o.correspondingUseElement),o.nodeType===3?o.parentNode:o}var Ld=null,qa=null,Ha=null;function Hx(o){if(o=bl(o)){if(typeof Ld!="function")throw Error(n(280));var s=o.stateNode;s&&(s=bu(s),Ld(o.stateNode,o.type,s))}}function Vx(o){qa?Ha?Ha.push(o):Ha=[o]:qa=o}function Kx(){if(qa){var o=qa,s=Ha;if(Ha=qa=null,Hx(o),s)for(o=0;o>>=0,o===0?32:31-(GT(o)/YT|0)|0}var nu=64,ru=4194304;function nl(o){switch(o&-o){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 o&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return o&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return o}}function iu(o,s){var h=o.pendingLanes;if(h===0)return 0;var v=0,b=o.suspendedLanes,j=o.pingedLanes,N=h&268435455;if(N!==0){var D=N&~b;D!==0?v=nl(D):(j&=N,j!==0&&(v=nl(j)))}else N=h&~b,N!==0?v=nl(N):j!==0&&(v=nl(j));if(v===0)return 0;if(s!==0&&s!==v&&(s&b)===0&&(b=v&-v,j=s&-s,b>=j||b===16&&(j&4194240)!==0))return s;if((v&4)!==0&&(v|=h&16),s=o.entangledLanes,s!==0)for(o=o.entanglements,s&=v;0h;h++)s.push(o);return s}function rl(o,s,h){o.pendingLanes|=s,s!==536870912&&(o.suspendedLanes=0,o.pingedLanes=0),o=o.eventTimes,s=31-ir(s),o[s]=h}function JT(o,s){var h=o.pendingLanes&~s;o.pendingLanes=s,o.suspendedLanes=0,o.pingedLanes=0,o.expiredLanes&=s,o.mutableReadLanes&=s,o.entangledLanes&=s,s=o.entanglements;var v=o.eventTimes;for(o=o.expirationTimes;0=fl),w0=" ",k0=!1;function S0(o,s){switch(o){case"keyup":return C2.indexOf(s.keyCode)!==-1;case"keydown":return s.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function j0(o){return o=o.detail,typeof o=="object"&&"data"in o?o.data:null}var Ga=!1;function N2(o,s){switch(o){case"compositionend":return j0(s);case"keypress":return s.which!==32?null:(k0=!0,w0);case"textInput":return o=s.data,o===w0&&k0?null:o;default:return null}}function A2(o,s){if(Ga)return o==="compositionend"||!eh&&S0(o,s)?(o=m0(),uu=Gd=Ei=null,Ga=!1,o):null;switch(o){case"paste":return null;case"keypress":if(!(s.ctrlKey||s.altKey||s.metaKey)||s.ctrlKey&&s.altKey){if(s.char&&1=s)return{node:h,offset:s-o};o=v}e:{for(;h;){if(h.nextSibling){h=h.nextSibling;break e}h=h.parentNode}h=void 0}h=_0(h)}}function T0(o,s){return o&&s?o===s?!0:o&&o.nodeType===3?!1:s&&s.nodeType===3?T0(o,s.parentNode):"contains"in o?o.contains(s):o.compareDocumentPosition?!!(o.compareDocumentPosition(s)&16):!1:!1}function M0(){for(var o=window,s=rt();s instanceof o.HTMLIFrameElement;){try{var h=typeof s.contentWindow.location.href=="string"}catch{h=!1}if(h)o=s.contentWindow;else break;s=rt(o.document)}return s}function rh(o){var s=o&&o.nodeName&&o.nodeName.toLowerCase();return s&&(s==="input"&&(o.type==="text"||o.type==="search"||o.type==="tel"||o.type==="url"||o.type==="password")||s==="textarea"||o.contentEditable==="true")}function $2(o){var s=M0(),h=o.focusedElem,v=o.selectionRange;if(s!==h&&h&&h.ownerDocument&&T0(h.ownerDocument.documentElement,h)){if(v!==null&&rh(h)){if(s=v.start,o=v.end,o===void 0&&(o=s),"selectionStart"in h)h.selectionStart=s,h.selectionEnd=Math.min(o,h.value.length);else if(o=(s=h.ownerDocument||document)&&s.defaultView||window,o.getSelection){o=o.getSelection();var b=h.textContent.length,j=Math.min(v.start,b);v=v.end===void 0?j:Math.min(v.end,b),!o.extend&&j>v&&(b=v,v=j,j=b),b=I0(h,j);var N=I0(h,v);b&&N&&(o.rangeCount!==1||o.anchorNode!==b.node||o.anchorOffset!==b.offset||o.focusNode!==N.node||o.focusOffset!==N.offset)&&(s=s.createRange(),s.setStart(b.node,b.offset),o.removeAllRanges(),j>v?(o.addRange(s),o.extend(N.node,N.offset)):(s.setEnd(N.node,N.offset),o.addRange(s)))}}for(s=[],o=h;o=o.parentNode;)o.nodeType===1&&s.push({element:o,left:o.scrollLeft,top:o.scrollTop});for(typeof h.focus=="function"&&h.focus(),h=0;h=document.documentMode,Ya=null,ih=null,ml=null,ah=!1;function D0(o,s,h){var v=h.window===h?h.document:h.nodeType===9?h:h.ownerDocument;ah||Ya==null||Ya!==rt(v)||(v=Ya,"selectionStart"in v&&rh(v)?v={start:v.selectionStart,end:v.selectionEnd}:(v=(v.ownerDocument&&v.ownerDocument.defaultView||window).getSelection(),v={anchorNode:v.anchorNode,anchorOffset:v.anchorOffset,focusNode:v.focusNode,focusOffset:v.focusOffset}),ml&&pl(ml,v)||(ml=v,v=vu(ih,"onSelect"),0eo||(o.current=vh[eo],vh[eo]=null,eo--)}function Qe(o,s){eo++,vh[eo]=o.current,o.current=s}var Ai={},Qt=Ni(Ai),vn=Ni(!1),aa=Ai;function to(o,s){var h=o.type.contextTypes;if(!h)return Ai;var v=o.stateNode;if(v&&v.__reactInternalMemoizedUnmaskedChildContext===s)return v.__reactInternalMemoizedMaskedChildContext;var b={},j;for(j in h)b[j]=s[j];return v&&(o=o.stateNode,o.__reactInternalMemoizedUnmaskedChildContext=s,o.__reactInternalMemoizedMaskedChildContext=b),b}function yn(o){return o=o.childContextTypes,o!=null}function wu(){tt(vn),tt(Qt)}function X0(o,s,h){if(Qt.current!==Ai)throw Error(n(168));Qe(Qt,s),Qe(vn,h)}function Q0(o,s,h){var v=o.stateNode;if(s=s.childContextTypes,typeof v.getChildContext!="function")return h;v=v.getChildContext();for(var b in v)if(!(b in s))throw Error(n(108,Se(o)||"Unknown",b));return T({},h,v)}function ku(o){return o=(o=o.stateNode)&&o.__reactInternalMemoizedMergedChildContext||Ai,aa=Qt.current,Qe(Qt,o),Qe(vn,vn.current),!0}function Z0(o,s,h){var v=o.stateNode;if(!v)throw Error(n(169));h?(o=Q0(o,s,aa),v.__reactInternalMemoizedMergedChildContext=o,tt(vn),tt(Qt),Qe(Qt,o)):tt(vn),Qe(vn,h)}var Hr=null,Su=!1,yh=!1;function J0(o){Hr===null?Hr=[o]:Hr.push(o)}function Q2(o){Su=!0,J0(o)}function _i(){if(!yh&&Hr!==null){yh=!0;var o=0,s=Ve;try{var h=Hr;for(Ve=1;o>=N,b-=N,Vr=1<<32-ir(s)+b|h<_e?(Tt=Ce,Ce=null):Tt=Ce.sibling;var Ue=ne(q,Ce,V[_e],ue);if(Ue===null){Ce===null&&(Ce=Tt);break}o&&Ce&&Ue.alternate===null&&s(q,Ce),B=j(Ue,B,_e),Ee===null?ke=Ue:Ee.sibling=Ue,Ee=Ue,Ce=Tt}if(_e===V.length)return h(q,Ce),it&&la(q,_e),ke;if(Ce===null){for(;_e_e?(Tt=Ce,Ce=null):Tt=Ce.sibling;var Fi=ne(q,Ce,Ue.value,ue);if(Fi===null){Ce===null&&(Ce=Tt);break}o&&Ce&&Fi.alternate===null&&s(q,Ce),B=j(Fi,B,_e),Ee===null?ke=Fi:Ee.sibling=Fi,Ee=Fi,Ce=Tt}if(Ue.done)return h(q,Ce),it&&la(q,_e),ke;if(Ce===null){for(;!Ue.done;_e++,Ue=V.next())Ue=oe(q,Ue.value,ue),Ue!==null&&(B=j(Ue,B,_e),Ee===null?ke=Ue:Ee.sibling=Ue,Ee=Ue);return it&&la(q,_e),ke}for(Ce=v(q,Ce);!Ue.done;_e++,Ue=V.next())Ue=me(Ce,q,_e,Ue.value,ue),Ue!==null&&(o&&Ue.alternate!==null&&Ce.delete(Ue.key===null?_e:Ue.key),B=j(Ue,B,_e),Ee===null?ke=Ue:Ee.sibling=Ue,Ee=Ue);return o&&Ce.forEach(function(_M){return s(q,_M)}),it&&la(q,_e),ke}function vt(q,B,V,ue){if(typeof V=="object"&&V!==null&&V.type===L&&V.key===null&&(V=V.props.children),typeof V=="object"&&V!==null){switch(V.$$typeof){case I:e:{for(var ke=V.key,Ee=B;Ee!==null;){if(Ee.key===ke){if(ke=V.type,ke===L){if(Ee.tag===7){h(q,Ee.sibling),B=b(Ee,V.props.children),B.return=q,q=B;break e}}else if(Ee.elementType===ke||typeof ke=="object"&&ke!==null&&ke.$$typeof===he&&ab(ke)===Ee.type){h(q,Ee.sibling),B=b(Ee,V.props),B.ref=wl(q,Ee,V),B.return=q,q=B;break e}h(q,Ee);break}else s(q,Ee);Ee=Ee.sibling}V.type===L?(B=ma(V.props.children,q.mode,ue,V.key),B.return=q,q=B):(ue=Qu(V.type,V.key,V.props,null,q.mode,ue),ue.ref=wl(q,B,V),ue.return=q,q=ue)}return N(q);case E:e:{for(Ee=V.key;B!==null;){if(B.key===Ee)if(B.tag===4&&B.stateNode.containerInfo===V.containerInfo&&B.stateNode.implementation===V.implementation){h(q,B.sibling),B=b(B,V.children||[]),B.return=q,q=B;break e}else{h(q,B);break}else s(q,B);B=B.sibling}B=mp(V,q.mode,ue),B.return=q,q=B}return N(q);case he:return Ee=V._init,vt(q,B,Ee(V._payload),ue)}if(xi(V))return xe(q,B,V,ue);if(ae(V))return be(q,B,V,ue);Cu(q,V)}return typeof V=="string"&&V!==""||typeof V=="number"?(V=""+V,B!==null&&B.tag===6?(h(q,B.sibling),B=b(B,V),B.return=q,q=B):(h(q,B),B=pp(V,q.mode,ue),B.return=q,q=B),N(q)):h(q,B)}return vt}var ao=ob(!0),lb=ob(!1),Ou=Ni(null),Nu=null,oo=null,jh=null;function Ph(){jh=oo=Nu=null}function Eh(o){var s=Ou.current;tt(Ou),o._currentValue=s}function Ch(o,s,h){for(;o!==null;){var v=o.alternate;if((o.childLanes&s)!==s?(o.childLanes|=s,v!==null&&(v.childLanes|=s)):v!==null&&(v.childLanes&s)!==s&&(v.childLanes|=s),o===h)break;o=o.return}}function lo(o,s){Nu=o,jh=oo=null,o=o.dependencies,o!==null&&o.firstContext!==null&&((o.lanes&s)!==0&&(xn=!0),o.firstContext=null)}function Wn(o){var s=o._currentValue;if(jh!==o)if(o={context:o,memoizedValue:s,next:null},oo===null){if(Nu===null)throw Error(n(308));oo=o,Nu.dependencies={lanes:0,firstContext:o}}else oo=oo.next=o;return s}var sa=null;function Oh(o){sa===null?sa=[o]:sa.push(o)}function sb(o,s,h,v){var b=s.interleaved;return b===null?(h.next=h,Oh(s)):(h.next=b.next,b.next=h),s.interleaved=h,Gr(o,v)}function Gr(o,s){o.lanes|=s;var h=o.alternate;for(h!==null&&(h.lanes|=s),h=o,o=o.return;o!==null;)o.childLanes|=s,h=o.alternate,h!==null&&(h.childLanes|=s),h=o,o=o.return;return h.tag===3?h.stateNode:null}var Ii=!1;function Nh(o){o.updateQueue={baseState:o.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function ub(o,s){o=o.updateQueue,s.updateQueue===o&&(s.updateQueue={baseState:o.baseState,firstBaseUpdate:o.firstBaseUpdate,lastBaseUpdate:o.lastBaseUpdate,shared:o.shared,effects:o.effects})}function Yr(o,s){return{eventTime:o,lane:s,tag:0,payload:null,callback:null,next:null}}function Ti(o,s,h){var v=o.updateQueue;if(v===null)return null;if(v=v.shared,(Be&2)!==0){var b=v.pending;return b===null?s.next=s:(s.next=b.next,b.next=s),v.pending=s,Gr(o,h)}return b=v.interleaved,b===null?(s.next=s,Oh(v)):(s.next=b.next,b.next=s),v.interleaved=s,Gr(o,h)}function Au(o,s,h){if(s=s.updateQueue,s!==null&&(s=s.shared,(h&4194240)!==0)){var v=s.lanes;v&=o.pendingLanes,h|=v,s.lanes=h,Wd(o,h)}}function cb(o,s){var h=o.updateQueue,v=o.alternate;if(v!==null&&(v=v.updateQueue,h===v)){var b=null,j=null;if(h=h.firstBaseUpdate,h!==null){do{var N={eventTime:h.eventTime,lane:h.lane,tag:h.tag,payload:h.payload,callback:h.callback,next:null};j===null?b=j=N:j=j.next=N,h=h.next}while(h!==null);j===null?b=j=s:j=j.next=s}else b=j=s;h={baseState:v.baseState,firstBaseUpdate:b,lastBaseUpdate:j,shared:v.shared,effects:v.effects},o.updateQueue=h;return}o=h.lastBaseUpdate,o===null?h.firstBaseUpdate=s:o.next=s,h.lastBaseUpdate=s}function _u(o,s,h,v){var b=o.updateQueue;Ii=!1;var j=b.firstBaseUpdate,N=b.lastBaseUpdate,D=b.shared.pending;if(D!==null){b.shared.pending=null;var z=D,K=z.next;z.next=null,N===null?j=K:N.next=K,N=z;var re=o.alternate;re!==null&&(re=re.updateQueue,D=re.lastBaseUpdate,D!==N&&(D===null?re.firstBaseUpdate=K:D.next=K,re.lastBaseUpdate=z))}if(j!==null){var oe=b.baseState;N=0,re=K=z=null,D=j;do{var ne=D.lane,me=D.eventTime;if((v&ne)===ne){re!==null&&(re=re.next={eventTime:me,lane:0,tag:D.tag,payload:D.payload,callback:D.callback,next:null});e:{var xe=o,be=D;switch(ne=s,me=h,be.tag){case 1:if(xe=be.payload,typeof xe=="function"){oe=xe.call(me,oe,ne);break e}oe=xe;break e;case 3:xe.flags=xe.flags&-65537|128;case 0:if(xe=be.payload,ne=typeof xe=="function"?xe.call(me,oe,ne):xe,ne==null)break e;oe=T({},oe,ne);break e;case 2:Ii=!0}}D.callback!==null&&D.lane!==0&&(o.flags|=64,ne=b.effects,ne===null?b.effects=[D]:ne.push(D))}else me={eventTime:me,lane:ne,tag:D.tag,payload:D.payload,callback:D.callback,next:null},re===null?(K=re=me,z=oe):re=re.next=me,N|=ne;if(D=D.next,D===null){if(D=b.shared.pending,D===null)break;ne=D,D=ne.next,ne.next=null,b.lastBaseUpdate=ne,b.shared.pending=null}}while(!0);if(re===null&&(z=oe),b.baseState=z,b.firstBaseUpdate=K,b.lastBaseUpdate=re,s=b.shared.interleaved,s!==null){b=s;do N|=b.lane,b=b.next;while(b!==s)}else j===null&&(b.shared.lanes=0);fa|=N,o.lanes=N,o.memoizedState=oe}}function fb(o,s,h){if(o=s.effects,s.effects=null,o!==null)for(s=0;sh?h:4,o(!0);var v=Mh.transition;Mh.transition={};try{o(!1),s()}finally{Ve=h,Mh.transition=v}}function Ab(){return qn().memoizedState}function tM(o,s,h){var v=Ri(o);if(h={lane:v,action:h,hasEagerState:!1,eagerState:null,next:null},_b(o))Ib(s,h);else if(h=sb(o,s,h,v),h!==null){var b=sn();cr(h,o,v,b),Tb(h,s,v)}}function nM(o,s,h){var v=Ri(o),b={lane:v,action:h,hasEagerState:!1,eagerState:null,next:null};if(_b(o))Ib(s,b);else{var j=o.alternate;if(o.lanes===0&&(j===null||j.lanes===0)&&(j=s.lastRenderedReducer,j!==null))try{var N=s.lastRenderedState,D=j(N,h);if(b.hasEagerState=!0,b.eagerState=D,ar(D,N)){var z=s.interleaved;z===null?(b.next=b,Oh(s)):(b.next=z.next,z.next=b),s.interleaved=b;return}}catch{}finally{}h=sb(o,s,b,v),h!==null&&(b=sn(),cr(h,o,v,b),Tb(h,s,v))}}function _b(o){var s=o.alternate;return o===st||s!==null&&s===st}function Ib(o,s){Pl=Mu=!0;var h=o.pending;h===null?s.next=s:(s.next=h.next,h.next=s),o.pending=s}function Tb(o,s,h){if((h&4194240)!==0){var v=s.lanes;v&=o.pendingLanes,h|=v,s.lanes=h,Wd(o,h)}}var Ru={readContext:Wn,useCallback:Zt,useContext:Zt,useEffect:Zt,useImperativeHandle:Zt,useInsertionEffect:Zt,useLayoutEffect:Zt,useMemo:Zt,useReducer:Zt,useRef:Zt,useState:Zt,useDebugValue:Zt,useDeferredValue:Zt,useTransition:Zt,useMutableSource:Zt,useSyncExternalStore:Zt,useId:Zt,unstable_isNewReconciler:!1},rM={readContext:Wn,useCallback:function(o,s){return Pr().memoizedState=[o,s===void 0?null:s],o},useContext:Wn,useEffect:kb,useImperativeHandle:function(o,s,h){return h=h!=null?h.concat([o]):null,Du(4194308,4,Pb.bind(null,s,o),h)},useLayoutEffect:function(o,s){return Du(4194308,4,o,s)},useInsertionEffect:function(o,s){return Du(4,2,o,s)},useMemo:function(o,s){var h=Pr();return s=s===void 0?null:s,o=o(),h.memoizedState=[o,s],o},useReducer:function(o,s,h){var v=Pr();return s=h!==void 0?h(s):s,v.memoizedState=v.baseState=s,o={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:o,lastRenderedState:s},v.queue=o,o=o.dispatch=tM.bind(null,st,o),[v.memoizedState,o]},useRef:function(o){var s=Pr();return o={current:o},s.memoizedState=o},useState:bb,useDebugValue:Bh,useDeferredValue:function(o){return Pr().memoizedState=o},useTransition:function(){var o=bb(!1),s=o[0];return o=eM.bind(null,o[1]),Pr().memoizedState=o,[s,o]},useMutableSource:function(){},useSyncExternalStore:function(o,s,h){var v=st,b=Pr();if(it){if(h===void 0)throw Error(n(407));h=h()}else{if(h=s(),It===null)throw Error(n(349));(ca&30)!==0||mb(v,s,h)}b.memoizedState=h;var j={value:h,getSnapshot:s};return b.queue=j,kb(vb.bind(null,v,j,o),[o]),v.flags|=2048,Ol(9,gb.bind(null,v,j,h,s),void 0,null),h},useId:function(){var o=Pr(),s=It.identifierPrefix;if(it){var h=Kr,v=Vr;h=(v&~(1<<32-ir(v)-1)).toString(32)+h,s=":"+s+"R"+h,h=El++,0<\/script>",o=o.removeChild(o.firstChild)):typeof v.is=="string"?o=N.createElement(h,{is:v.is}):(o=N.createElement(h),h==="select"&&(N=o,v.multiple?N.multiple=!0:v.size&&(N.size=v.size))):o=N.createElementNS(o,h),o[kr]=s,o[yl]=v,Qb(o,s,!1,!1),s.stateNode=o;e:{switch(N=br(h,v),h){case"dialog":et("cancel",o),et("close",o),x=v;break;case"iframe":case"object":case"embed":et("load",o),x=v;break;case"video":case"audio":for(x=0;xfo&&(s.flags|=128,v=!0,Ol(j,!1),s.lanes=4194304)}else{if(!v)if(o=_u(N),o!==null){if(s.flags|=128,v=!0,h=o.updateQueue,h!==null&&(s.updateQueue=h,s.flags|=4),Ol(j,!0),j.tail===null&&j.tailMode==="hidden"&&!N.alternate&&!it)return Jt(s),null}else 2*gt()-j.renderingStartTime>fo&&h!==1073741824&&(s.flags|=128,v=!0,Ol(j,!1),s.lanes=4194304);j.isBackwards?(N.sibling=s.child,s.child=N):(h=j.last,h!==null?h.sibling=N:s.child=N,j.last=N)}return j.tail!==null?(s=j.tail,j.rendering=s,j.tail=s.sibling,j.renderingStartTime=gt(),s.sibling=null,h=lt.current,Qe(lt,v?h&1|2:h&1),s):(Jt(s),null);case 22:case 23:return cp(),v=s.memoizedState!==null,o!==null&&o.memoizedState!==null!==v&&(s.flags|=8192),v&&(s.mode&1)!==0?(Tn&1073741824)!==0&&(Jt(s),s.subtreeFlags&6&&(s.flags|=8192)):Jt(s),null;case 24:return null;case 25:return null}throw Error(n(156,s.tag))}function oD(o,s){switch(xh(s),s.tag){case 1:return yn(s.type)&&bu(),o=s.flags,o&65536?(s.flags=o&-65537|128,s):null;case 3:return lo(),tt(vn),tt(Qt),Ih(),o=s.flags,(o&65536)!==0&&(o&128)===0?(s.flags=o&-65537|128,s):null;case 5:return Ah(s),null;case 13:if(tt(lt),o=s.memoizedState,o!==null&&o.dehydrated!==null){if(s.alternate===null)throw Error(n(340));ro()}return o=s.flags,o&65536?(s.flags=o&-65537|128,s):null;case 19:return tt(lt),null;case 4:return lo(),null;case 10:return Ph(s.type._context),null;case 22:case 23:return cp(),null;case 24:return null;default:return null}}var Fu=!1,en=!1,lD=typeof WeakSet=="function"?WeakSet:Set,ve=null;function uo(o,s){var h=o.ref;if(h!==null)if(typeof h=="function")try{h(null)}catch(v){dt(o,s,v)}else h.current=null}function Zh(o,s,h){try{h()}catch(v){dt(o,s,v)}}var ew=!1;function sD(o,s){if(ch=ou,o=I0(),nh(o)){if("selectionStart"in o)var h={start:o.selectionStart,end:o.selectionEnd};else e:{h=(h=o.ownerDocument)&&h.defaultView||window;var v=h.getSelection&&h.getSelection();if(v&&v.rangeCount!==0){h=v.anchorNode;var x=v.anchorOffset,j=v.focusNode;v=v.focusOffset;try{h.nodeType,j.nodeType}catch{h=null;break e}var N=0,M=-1,z=-1,K=0,re=0,oe=o,ne=null;t:for(;;){for(var me;oe!==h||x!==0&&oe.nodeType!==3||(M=N+x),oe!==j||v!==0&&oe.nodeType!==3||(z=N+v),oe.nodeType===3&&(N+=oe.nodeValue.length),(me=oe.firstChild)!==null;)ne=oe,oe=me;for(;;){if(oe===o)break t;if(ne===h&&++K===x&&(M=N),ne===j&&++re===v&&(z=N),(me=oe.nextSibling)!==null)break;oe=ne,ne=oe.parentNode}oe=me}h=M===-1||z===-1?null:{start:M,end:z}}else h=null}h=h||{start:0,end:0}}else h=null;for(fh={focusedElem:o,selectionRange:h},ou=!1,ve=s;ve!==null;)if(s=ve,o=s.child,(s.subtreeFlags&1028)!==0&&o!==null)o.return=s,ve=o;else for(;ve!==null;){s=ve;try{var xe=s.alternate;if((s.flags&1024)!==0)switch(s.tag){case 0:case 11:case 15:break;case 1:if(xe!==null){var be=xe.memoizedProps,vt=xe.memoizedState,q=s.stateNode,B=q.getSnapshotBeforeUpdate(s.elementType===s.type?be:or(s.type,be),vt);q.__reactInternalSnapshotBeforeUpdate=B}break;case 3:var V=s.stateNode.containerInfo;V.nodeType===1?V.textContent="":V.nodeType===9&&V.documentElement&&V.removeChild(V.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(n(163))}}catch(ue){dt(s,s.return,ue)}if(o=s.sibling,o!==null){o.return=s.return,ve=o;break}ve=s.return}return xe=ew,ew=!1,xe}function Nl(o,s,h){var v=s.updateQueue;if(v=v!==null?v.lastEffect:null,v!==null){var x=v=v.next;do{if((x.tag&o)===o){var j=x.destroy;x.destroy=void 0,j!==void 0&&Zh(s,h,j)}x=x.next}while(x!==v)}}function Bu(o,s){if(s=s.updateQueue,s=s!==null?s.lastEffect:null,s!==null){var h=s=s.next;do{if((h.tag&o)===o){var v=h.create;h.destroy=v()}h=h.next}while(h!==s)}}function Jh(o){var s=o.ref;if(s!==null){var h=o.stateNode;switch(o.tag){case 5:o=h;break;default:o=h}typeof s=="function"?s(o):s.current=o}}function tw(o){var s=o.alternate;s!==null&&(o.alternate=null,tw(s)),o.child=null,o.deletions=null,o.sibling=null,o.tag===5&&(s=o.stateNode,s!==null&&(delete s[kr],delete s[yl],delete s[mh],delete s[q2],delete s[H2])),o.stateNode=null,o.return=null,o.dependencies=null,o.memoizedProps=null,o.memoizedState=null,o.pendingProps=null,o.stateNode=null,o.updateQueue=null}function nw(o){return o.tag===5||o.tag===3||o.tag===4}function rw(o){e:for(;;){for(;o.sibling===null;){if(o.return===null||nw(o.return))return null;o=o.return}for(o.sibling.return=o.return,o=o.sibling;o.tag!==5&&o.tag!==6&&o.tag!==18;){if(o.flags&2||o.child===null||o.tag===4)continue e;o.child.return=o,o=o.child}if(!(o.flags&2))return o.stateNode}}function ep(o,s,h){var v=o.tag;if(v===5||v===6)o=o.stateNode,s?h.nodeType===8?h.parentNode.insertBefore(o,s):h.insertBefore(o,s):(h.nodeType===8?(s=h.parentNode,s.insertBefore(o,h)):(s=h,s.appendChild(o)),h=h._reactRootContainer,h!=null||s.onclick!==null||(s.onclick=yu));else if(v!==4&&(o=o.child,o!==null))for(ep(o,s,h),o=o.sibling;o!==null;)ep(o,s,h),o=o.sibling}function tp(o,s,h){var v=o.tag;if(v===5||v===6)o=o.stateNode,s?h.insertBefore(o,s):h.appendChild(o);else if(v!==4&&(o=o.child,o!==null))for(tp(o,s,h),o=o.sibling;o!==null;)tp(o,s,h),o=o.sibling}var Ht=null,lr=!1;function Ti(o,s,h){for(h=h.child;h!==null;)iw(o,s,h),h=h.sibling}function iw(o,s,h){if(wr&&typeof wr.onCommitFiberUnmount=="function")try{wr.onCommitFiberUnmount(eu,h)}catch{}switch(h.tag){case 5:en||uo(h,s);case 6:var v=Ht,x=lr;Ht=null,Ti(o,s,h),Ht=v,lr=x,Ht!==null&&(lr?(o=Ht,h=h.stateNode,o.nodeType===8?o.parentNode.removeChild(h):o.removeChild(h)):Ht.removeChild(h.stateNode));break;case 18:Ht!==null&&(lr?(o=Ht,h=h.stateNode,o.nodeType===8?ph(o.parentNode,h):o.nodeType===1&&ph(o,h),ll(o)):ph(Ht,h.stateNode));break;case 4:v=Ht,x=lr,Ht=h.stateNode.containerInfo,lr=!0,Ti(o,s,h),Ht=v,lr=x;break;case 0:case 11:case 14:case 15:if(!en&&(v=h.updateQueue,v!==null&&(v=v.lastEffect,v!==null))){x=v=v.next;do{var j=x,N=j.destroy;j=j.tag,N!==void 0&&((j&2)!==0||(j&4)!==0)&&Zh(h,s,N),x=x.next}while(x!==v)}Ti(o,s,h);break;case 1:if(!en&&(uo(h,s),v=h.stateNode,typeof v.componentWillUnmount=="function"))try{v.props=h.memoizedProps,v.state=h.memoizedState,v.componentWillUnmount()}catch(M){dt(h,s,M)}Ti(o,s,h);break;case 21:Ti(o,s,h);break;case 22:h.mode&1?(en=(v=en)||h.memoizedState!==null,Ti(o,s,h),en=v):Ti(o,s,h);break;default:Ti(o,s,h)}}function aw(o){var s=o.updateQueue;if(s!==null){o.updateQueue=null;var h=o.stateNode;h===null&&(h=o.stateNode=new lD),s.forEach(function(v){var x=vD.bind(null,o,v);h.has(v)||(h.add(v),v.then(x,x))})}}function sr(o,s){var h=s.deletions;if(h!==null)for(var v=0;vx&&(x=N),v&=~j}if(v=x,v=gt()-v,v=(120>v?120:480>v?480:1080>v?1080:1920>v?1920:3e3>v?3e3:4320>v?4320:1960*cD(v/1960))-v,10o?16:o,Mi===null)var v=!1;else{if(o=Mi,Mi=null,Vu=0,(Be&6)!==0)throw Error(n(331));var x=Be;for(Be|=4,ve=o.current;ve!==null;){var j=ve,N=j.child;if((ve.flags&16)!==0){var M=j.deletions;if(M!==null){for(var z=0;zgt()-ip?da(o,0):rp|=h),wn(o,s)}function yw(o,s){s===0&&((o.mode&1)===0?s=1:(s=nu,nu<<=1,(nu&130023424)===0&&(nu=4194304)));var h=sn();o=Kr(o,s),o!==null&&(nl(o,s,h),wn(o,h))}function gD(o){var s=o.memoizedState,h=0;s!==null&&(h=s.retryLane),yw(o,h)}function vD(o,s){var h=0;switch(o.tag){case 13:var v=o.stateNode,x=o.memoizedState;x!==null&&(h=x.retryLane);break;case 19:v=o.stateNode;break;default:throw Error(n(314))}v!==null&&v.delete(s),yw(o,h)}var xw;xw=function(o,s,h){if(o!==null)if(o.memoizedProps!==s.pendingProps||vn.current)xn=!0;else{if((o.lanes&h)===0&&(s.flags&128)===0)return xn=!1,iD(o,s,h);xn=(o.flags&131072)!==0}else xn=!1,it&&(s.flags&1048576)!==0&&Z0(s,ju,s.index);switch(s.lanes=0,s.tag){case 2:var v=s.type;$u(o,s),o=s.pendingProps;var x=eo(s,Qt.current);oo(s,h),x=Mh(null,s,v,o,x,h);var j=Lh();return s.flags|=1,typeof x=="object"&&x!==null&&typeof x.render=="function"&&x.$$typeof===void 0?(s.tag=1,s.memoizedState=null,s.updateQueue=null,yn(v)?(j=!0,wu(s)):j=!1,s.memoizedState=x.state!==null&&x.state!==void 0?x.state:null,Oh(s),x.updater=Ru,s.stateNode=x,x._reactInternals=s,Uh(s,v,o,h),s=Vh(null,s,v,!0,j,h)):(s.tag=0,it&&j&&yh(s),ln(null,s,x,h),s=s.child),s;case 16:v=s.elementType;e:{switch($u(o,s),o=s.pendingProps,x=v._init,v=x(v._payload),s.type=v,x=s.tag=xD(v),o=or(v,o),x){case 0:s=Hh(null,s,v,o,h);break e;case 1:s=Hb(null,s,v,o,h);break e;case 11:s=Fb(null,s,v,o,h);break e;case 14:s=Bb(null,s,v,or(v.type,o),h);break e}throw Error(n(306,v,""))}return s;case 0:return v=s.type,x=s.pendingProps,x=s.elementType===v?x:or(v,x),Hh(o,s,v,x,h);case 1:return v=s.type,x=s.pendingProps,x=s.elementType===v?x:or(v,x),Hb(o,s,v,x,h);case 3:e:{if(Vb(s),o===null)throw Error(n(387));v=s.pendingProps,j=s.memoizedState,x=j.element,lb(o,s),Au(s,v,null,h);var N=s.memoizedState;if(v=N.element,j.isDehydrated)if(j={element:v,isDehydrated:!1,cache:N.cache,pendingSuspenseBoundaries:N.pendingSuspenseBoundaries,transitions:N.transitions},s.updateQueue.baseState=j,s.memoizedState=j,s.flags&256){x=so(Error(n(423)),s),s=Kb(o,s,v,h,x);break e}else if(v!==x){x=so(Error(n(424)),s),s=Kb(o,s,v,h,x);break e}else for(In=Ci(s.stateNode.containerInfo.firstChild),_n=s,it=!0,ar=null,h=ab(s,null,v,h),s.child=h;h;)h.flags=h.flags&-3|4096,h=h.sibling;else{if(ro(),v===x){s=Yr(o,s,h);break e}ln(o,s,v,h)}s=s.child}return s;case 5:return cb(s),o===null&&wh(s),v=s.type,x=s.pendingProps,j=o!==null?o.memoizedProps:null,N=x.children,dh(v,x)?N=null:j!==null&&dh(v,j)&&(s.flags|=32),qb(o,s),ln(o,s,N,h),s.child;case 6:return o===null&&wh(s),null;case 13:return Gb(o,s,h);case 4:return Nh(s,s.stateNode.containerInfo),v=s.pendingProps,o===null?s.child=io(s,null,v,h):ln(o,s,v,h),s.child;case 11:return v=s.type,x=s.pendingProps,x=s.elementType===v?x:or(v,x),Fb(o,s,v,x,h);case 7:return ln(o,s,s.pendingProps,h),s.child;case 8:return ln(o,s,s.pendingProps.children,h),s.child;case 12:return ln(o,s,s.pendingProps.children,h),s.child;case 10:e:{if(v=s.type._context,x=s.pendingProps,j=s.memoizedProps,N=x.value,Qe(Cu,v._currentValue),v._currentValue=N,j!==null)if(ir(j.value,N)){if(j.children===x.children&&!vn.current){s=Yr(o,s,h);break e}}else for(j=s.child,j!==null&&(j.return=s);j!==null;){var M=j.dependencies;if(M!==null){N=j.child;for(var z=M.firstContext;z!==null;){if(z.context===v){if(j.tag===1){z=Gr(-1,h&-h),z.tag=2;var K=j.updateQueue;if(K!==null){K=K.shared;var re=K.pending;re===null?z.next=z:(z.next=re.next,re.next=z),K.pending=z}}j.lanes|=h,z=j.alternate,z!==null&&(z.lanes|=h),Eh(j.return,h,s),M.lanes|=h;break}z=z.next}}else if(j.tag===10)N=j.type===s.type?null:j.child;else if(j.tag===18){if(N=j.return,N===null)throw Error(n(341));N.lanes|=h,M=N.alternate,M!==null&&(M.lanes|=h),Eh(N,h,s),N=j.sibling}else N=j.child;if(N!==null)N.return=j;else for(N=j;N!==null;){if(N===s){N=null;break}if(j=N.sibling,j!==null){j.return=N.return,N=j;break}N=N.return}j=N}ln(o,s,x.children,h),s=s.child}return s;case 9:return x=s.type,v=s.pendingProps.children,oo(s,h),x=Wn(x),v=v(x),s.flags|=1,ln(o,s,v,h),s.child;case 14:return v=s.type,x=or(v,s.pendingProps),x=or(v.type,x),Bb(o,s,v,x,h);case 15:return Ub(o,s,s.type,s.pendingProps,h);case 17:return v=s.type,x=s.pendingProps,x=s.elementType===v?x:or(v,x),$u(o,s),s.tag=1,yn(v)?(o=!0,wu(s)):o=!1,oo(s,h),Tb(s,v,x),Uh(s,v,x,h),Vh(null,s,v,!0,o,h);case 19:return Xb(o,s,h);case 22:return Wb(o,s,h)}throw Error(n(156,s.tag))};function bw(o,s){return Jx(o,s)}function yD(o,s,h,v){this.tag=o,this.key=h,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=s,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=v,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Vn(o,s,h,v){return new yD(o,s,h,v)}function dp(o){return o=o.prototype,!(!o||!o.isReactComponent)}function xD(o){if(typeof o=="function")return dp(o)?1:0;if(o!=null){if(o=o.$$typeof,o===D)return 11;if(o===Q)return 14}return 2}function zi(o,s){var h=o.alternate;return h===null?(h=Vn(o.tag,s,o.key,o.mode),h.elementType=o.elementType,h.type=o.type,h.stateNode=o.stateNode,h.alternate=o,o.alternate=h):(h.pendingProps=s,h.type=o.type,h.flags=0,h.subtreeFlags=0,h.deletions=null),h.flags=o.flags&14680064,h.childLanes=o.childLanes,h.lanes=o.lanes,h.child=o.child,h.memoizedProps=o.memoizedProps,h.memoizedState=o.memoizedState,h.updateQueue=o.updateQueue,s=o.dependencies,h.dependencies=s===null?null:{lanes:s.lanes,firstContext:s.firstContext},h.sibling=o.sibling,h.index=o.index,h.ref=o.ref,h}function Xu(o,s,h,v,x,j){var N=2;if(v=o,typeof o=="function")dp(o)&&(N=1);else if(typeof o=="string")N=5;else e:switch(o){case L:return pa(h.children,x,j,s);case F:N=8,x|=8;break;case H:return o=Vn(12,h,s,x|2),o.elementType=H,o.lanes=j,o;case Z:return o=Vn(13,h,s,x),o.elementType=Z,o.lanes=j,o;case Y:return o=Vn(19,h,s,x),o.elementType=Y,o.lanes=j,o;case de:return Qu(h,x,j,s);default:if(typeof o=="object"&&o!==null)switch(o.$$typeof){case R:N=10;break e;case W:N=9;break e;case D:N=11;break e;case Q:N=14;break e;case he:N=16,v=null;break e}throw Error(n(130,o==null?o:typeof o,""))}return s=Vn(N,h,s,x),s.elementType=o,s.type=v,s.lanes=j,s}function pa(o,s,h,v){return o=Vn(7,o,v,s),o.lanes=h,o}function Qu(o,s,h,v){return o=Vn(22,o,v,s),o.elementType=de,o.lanes=h,o.stateNode={isHidden:!1},o}function hp(o,s,h){return o=Vn(6,o,null,s),o.lanes=h,o}function pp(o,s,h){return s=Vn(4,o.children!==null?o.children:[],o.key,s),s.lanes=h,s.stateNode={containerInfo:o.containerInfo,pendingChildren:null,implementation:o.implementation},s}function bD(o,s,h,v,x){this.tag=s,this.containerInfo=o,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Bd(0),this.expirationTimes=Bd(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Bd(0),this.identifierPrefix=v,this.onRecoverableError=x,this.mutableSourceEagerHydrationData=null}function mp(o,s,h,v,x,j,N,M,z){return o=new bD(o,s,h,M,z),s===1?(s=1,j===!0&&(s|=8)):s=0,j=Vn(3,null,null,s),o.current=j,j.stateNode=o,j.memoizedState={element:v,isDehydrated:h,cache:null,transitions:null,pendingSuspenseBoundaries:null},Oh(j),o}function wD(o,s,h){var v=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}return e(),kp.exports=MD(),kp.exports}var Dw;function LD(){if(Dw)return ic;Dw=1;var e=UE();return ic.createRoot=e.createRoot,ic.hydrateRoot=e.hydrateRoot,ic}var RD=LD(),k=$o();const zD=yr(k),$D=ND({__proto__:null,default:zD},[k]);function FD(){return m.jsx("a",{href:"#/",className:"flex items-center",children:m.jsx("span",{className:"font-bold text-lg",children:"Claude Pilot Console"})})}const BD={primary:"btn-primary",secondary:"btn-secondary",ghost:"btn-ghost",outline:"btn-outline",error:"btn-error"},UD={xs:"btn-xs",sm:"btn-sm",md:"",lg:"btn-lg"};function Yt({variant:e="primary",size:t="md",loading:n=!1,className:r="",children:i,disabled:a,...l}){return m.jsxs("button",{className:`btn ${BD[e]} ${UD[t]} ${r}`,disabled:a||n,...l,children:[n&&m.jsx("span",{className:"loading loading-spinner loading-sm"}),i]})}function wt({children:e,className:t="",compact:n=!1,onClick:r}){return m.jsx("div",{className:`card bg-base-100 shadow-sm border border-base-200 ${n?"card-compact":""} ${t}`,onClick:r,children:e})}function kt({children:e,className:t=""}){return m.jsx("div",{className:`card-body ${t}`,children:e})}function Hi({children:e,className:t=""}){return m.jsx("h2",{className:`card-title ${t}`,children:e})}const WD={primary:"badge-primary",secondary:"badge-secondary",accent:"badge-accent",ghost:"badge-ghost",info:"badge-info",success:"badge-success",warning:"badge-warning",error:"badge-error"},qD={xs:"badge-xs",sm:"badge-sm",md:"",lg:"badge-lg"};function Te({children:e,variant:t="ghost",size:n="md",outline:r=!1,className:i=""}){return m.jsx("span",{className:`badge ${WD[t]} ${qD[n]} ${r?"badge-outline":""} ${i}`,children:e})}const HD={xs:"select-xs",sm:"select-sm",md:"",lg:"select-lg"};function VD({label:e,options:t,selectSize:n="md",error:r,className:i="",...a}){return m.jsxs("div",{className:"form-control w-full",children:[e&&m.jsx("label",{className:"label",children:m.jsx("span",{className:"label-text",children:e})}),m.jsx("select",{className:`select select-bordered w-full ${HD[n]} ${r?"select-error":""} ${i}`,...a,children:t.map(l=>m.jsx("option",{value:l.value,children:l.label},l.value))}),r&&m.jsx("label",{className:"label",children:m.jsx("span",{className:"label-text-alt text-error",children:r})})]})}function WE({open:e,onClose:t,title:n,children:r,actions:i}){return m.jsxs("dialog",{className:`modal ${e?"modal-open":""}`,children:[m.jsxs("div",{className:"modal-box",children:[n&&m.jsx("h3",{className:"font-bold text-lg",children:n}),m.jsx("div",{className:"py-4",children:r}),i&&m.jsx("div",{className:"modal-action",children:i})]}),m.jsx("form",{method:"dialog",className:"modal-backdrop",children:m.jsx("button",{onClick:t,children:"close"})})]})}function qE({trigger:e,items:t,align:n="end"}){return m.jsxs("div",{className:`dropdown ${n==="end"?"dropdown-end":""}`,children:[m.jsx("div",{tabIndex:0,role:"button",children:e}),m.jsx("ul",{tabIndex:0,className:"dropdown-content menu bg-base-100 rounded-box z-10 w-52 p-2 shadow-lg border border-base-200",children:t.map((r,i)=>m.jsx("li",{children:m.jsxs("button",{onClick:r.onClick,disabled:r.disabled,className:"flex items-center gap-2",children:[r.icon,r.label]})},i))})]})}const KD={bordered:"tabs-bordered",lifted:"tabs-lifted",boxed:"tabs-boxed"};function GD({tabs:e,activeTab:t,onTabChange:n,variant:r="bordered"}){return m.jsx("div",{role:"tablist",className:`tabs ${KD[r]}`,children:e.map(i=>m.jsxs("button",{role:"tab",className:`tab gap-2 ${t===i.id?"tab-active":""}`,onClick:()=>n(i.id),children:[i.icon,i.label]},i.id))})}const YD={primary:"progress-primary",secondary:"progress-secondary",accent:"progress-accent",info:"progress-info",success:"progress-success",warning:"progress-warning",error:"progress-error"};function XD({value:e,max:t=100,variant:n="primary",className:r=""}){return m.jsx("progress",{className:`progress ${YD[n]} ${r}`,value:e,max:t})}const QD={xs:"loading-xs",sm:"loading-sm",md:"loading-md",lg:"loading-lg"};function Yi({size:e="md",className:t=""}){return m.jsx("span",{className:`loading loading-spinner ${QD[e]} ${t}`})}function ZD(e,t){const n=e.icons,r=e.aliases||Object.create(null),i=Object.create(null);function a(l){if(n[l])return i[l]=[];if(!(l in i)){i[l]=null;const u=r[l]&&r[l].parent,c=u&&a(u);c&&(i[l]=[u].concat(c))}return i[l]}return Object.keys(n).concat(Object.keys(r)).forEach(a),i}const HE=Object.freeze({left:0,top:0,width:16,height:16}),Mc=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),qv=Object.freeze({...HE,...Mc}),Og=Object.freeze({...qv,body:"",hidden:!1});function JD(e,t){const n={};!e.hFlip!=!t.hFlip&&(n.hFlip=!0),!e.vFlip!=!t.vFlip&&(n.vFlip=!0);const r=((e.rotate||0)+(t.rotate||0))%4;return r&&(n.rotate=r),n}function Mw(e,t){const n=JD(e,t);for(const r in Og)r in Mc?r in e&&!(r in n)&&(n[r]=Mc[r]):r in t?n[r]=t[r]:r in e&&(n[r]=e[r]);return n}function eM(e,t,n){const r=e.icons,i=e.aliases||Object.create(null);let a={};function l(u){a=Mw(r[u]||i[u],a)}return l(t),n.forEach(l),Mw(e,a)}function VE(e,t){const n=[];if(typeof e!="object"||typeof e.icons!="object")return n;e.not_found instanceof Array&&e.not_found.forEach(i=>{t(i,null),n.push(i)});const r=ZD(e);for(const i in r){const a=r[i];a&&(t(i,eM(e,i,a)),n.push(i))}return n}const tM={provider:"",aliases:{},not_found:{},...HE};function Pp(e,t){for(const n in t)if(n in e&&typeof e[n]!=typeof t[n])return!1;return!0}function KE(e){if(typeof e!="object"||e===null)return null;const t=e;if(typeof t.prefix!="string"||!e.icons||typeof e.icons!="object"||!Pp(e,tM))return null;const n=t.icons;for(const i in n){const a=n[i];if(!i||typeof a.body!="string"||!Pp(a,Og))return null}const r=t.aliases||Object.create(null);for(const i in r){const a=r[i],l=a.parent;if(!i||typeof l!="string"||!n[l]&&!r[l]||!Pp(a,Og))return null}return t}const Lw=Object.create(null);function nM(e,t){return{provider:e,prefix:t,icons:Object.create(null),missing:new Set}}function No(e,t){const n=Lw[e]||(Lw[e]=Object.create(null));return n[t]||(n[t]=nM(e,t))}function GE(e,t){return KE(t)?VE(t,(n,r)=>{r?e.icons[n]=r:e.missing.add(n)}):[]}function rM(e,t,n){try{if(typeof n.body=="string")return e.icons[t]={...n},!0}catch{}return!1}const YE=/^[a-z0-9]+(-[a-z0-9]+)*$/,Rf=(e,t,n,r="")=>{const i=e.split(":");if(e.slice(0,1)==="@"){if(i.length<2||i.length>3)return null;r=i.shift().slice(1)}if(i.length>3||!i.length)return null;if(i.length>1){const u=i.pop(),c=i.pop(),f={provider:i.length>0?i[0]:r,prefix:c,name:u};return t&&!Ec(f)?null:f}const a=i[0],l=a.split("-");if(l.length>1){const u={provider:r,prefix:l.shift(),name:l.join("-")};return t&&!Ec(u)?null:u}if(n&&r===""){const u={provider:r,prefix:"",name:a};return t&&!Ec(u,n)?null:u}return null},Ec=(e,t)=>e?!!((t&&e.prefix===""||e.prefix)&&e.name):!1;let ls=!1;function XE(e){return typeof e=="boolean"&&(ls=e),ls}function Rw(e){const t=typeof e=="string"?Rf(e,!0,ls):e;if(t){const n=No(t.provider,t.prefix),r=t.name;return n.icons[r]||(n.missing.has(r)?null:void 0)}}function iM(e,t){const n=Rf(e,!0,ls);if(!n)return!1;const r=No(n.provider,n.prefix);return t?rM(r,n.name,t):(r.missing.add(n.name),!0)}function aM(e,t){if(typeof e!="object")return!1;if(typeof t!="string"&&(t=e.provider||""),ls&&!t&&!e.prefix){let i=!1;return KE(e)&&(e.prefix="",VE(e,(a,l)=>{iM(a,l)&&(i=!0)})),i}const n=e.prefix;if(!Ec({prefix:n,name:"a"}))return!1;const r=No(t,n);return!!GE(r,e)}const QE=Object.freeze({width:null,height:null}),ZE=Object.freeze({...QE,...Mc}),oM=/(-?[0-9.]*[0-9]+[0-9.]*)/g,lM=/^-?[0-9.]*[0-9]+[0-9.]*$/g;function zw(e,t,n){if(t===1)return e;if(n=n||100,typeof e=="number")return Math.ceil(e*t*n)/n;if(typeof e!="string")return e;const r=e.split(oM);if(r===null||!r.length)return e;const i=[];let a=r.shift(),l=lM.test(a);for(;;){if(l){const u=parseFloat(a);isNaN(u)?i.push(a):i.push(Math.ceil(u*t*n)/n)}else i.push(a);if(a=r.shift(),a===void 0)return i.join("");l=!l}}function sM(e,t="defs"){let n="";const r=e.indexOf("<"+t);for(;r>=0;){const i=e.indexOf(">",r),a=e.indexOf("",a);if(l===-1)break;n+=e.slice(i+1,a).trim(),e=e.slice(0,r).trim()+e.slice(l+1)}return{defs:n,content:e}}function uM(e,t){return e?""+e+""+t:t}function cM(e,t,n){const r=sM(e);return uM(r.defs,t+r.content+n)}const fM=e=>e==="unset"||e==="undefined"||e==="none";function dM(e,t){const n={...qv,...e},r={...ZE,...t},i={left:n.left,top:n.top,width:n.width,height:n.height};let a=n.body;[n,r].forEach(S=>{const w=[],P=S.hFlip,C=S.vFlip;let O=S.rotate;P?C?O+=2:(w.push("translate("+(i.width+i.left).toString()+" "+(0-i.top).toString()+")"),w.push("scale(-1 1)"),i.top=i.left=0):C&&(w.push("translate("+(0-i.left).toString()+" "+(i.height+i.top).toString()+")"),w.push("scale(1 -1)"),i.top=i.left=0);let A;switch(O<0&&(O-=Math.floor(O/4)*4),O=O%4,O){case 1:A=i.height/2+i.top,w.unshift("rotate(90 "+A.toString()+" "+A.toString()+")");break;case 2:w.unshift("rotate(180 "+(i.width/2+i.left).toString()+" "+(i.height/2+i.top).toString()+")");break;case 3:A=i.width/2+i.left,w.unshift("rotate(-90 "+A.toString()+" "+A.toString()+")");break}O%2===1&&(i.left!==i.top&&(A=i.left,i.left=i.top,i.top=A),i.width!==i.height&&(A=i.width,i.width=i.height,i.height=A)),w.length&&(a=cM(a,'',""))});const l=r.width,u=r.height,c=i.width,f=i.height;let d,p;l===null?(p=u===null?"1em":u==="auto"?f:u,d=zw(p,c/f)):(d=l==="auto"?c:l,p=u===null?zw(d,f/c):u==="auto"?f:u);const g={},y=(S,w)=>{fM(w)||(g[S]=w.toString())};y("width",d),y("height",p);const b=[i.left,i.top,c,f];return g.viewBox=b.join(" "),{attributes:g,viewBox:b,body:a}}const hM=/\sid="(\S+)"/g,pM="IconifyId"+Date.now().toString(16)+(Math.random()*16777216|0).toString(16);let mM=0;function gM(e,t=pM){const n=[];let r;for(;r=hM.exec(e);)n.push(r[1]);if(!n.length)return e;const i="suffix"+(Math.random()*16777216|Date.now()).toString(16);return n.forEach(a=>{const l=typeof t=="function"?t(a):t+(mM++).toString(),u=a.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");e=e.replace(new RegExp('([#;"])('+u+')([")]|\\.[a-z])',"g"),"$1"+l+i+"$3")}),e=e.replace(new RegExp(i,"g"),""),e}const Ng=Object.create(null);function vM(e,t){Ng[e]=t}function Ag(e){return Ng[e]||Ng[""]}function Hv(e){let t;if(typeof e.resources=="string")t=[e.resources];else if(t=e.resources,!(t instanceof Array)||!t.length)return null;return{resources:t,path:e.path||"/",maxURL:e.maxURL||500,rotate:e.rotate||750,timeout:e.timeout||5e3,random:e.random===!0,index:e.index||0,dataAfterTimeout:e.dataAfterTimeout!==!1}}const Vv=Object.create(null),Ml=["https://api.simplesvg.com","https://api.unisvg.com"],Cc=[];for(;Ml.length>0;)Ml.length===1||Math.random()>.5?Cc.push(Ml.shift()):Cc.push(Ml.pop());Vv[""]=Hv({resources:["https://api.iconify.design"].concat(Cc)});function yM(e,t){const n=Hv(t);return n===null?!1:(Vv[e]=n,!0)}function Kv(e){return Vv[e]}const xM=()=>{let e;try{if(e=fetch,typeof e=="function")return e}catch{}};let $w=xM();function bM(e,t){const n=Kv(e);if(!n)return 0;let r;if(!n.maxURL)r=0;else{let i=0;n.resources.forEach(l=>{i=Math.max(i,l.length)});const a=t+".json?icons=";r=n.maxURL-i-n.path.length-a.length}return r}function wM(e){return e===404}const kM=(e,t,n)=>{const r=[],i=bM(e,t),a="icons";let l={type:a,provider:e,prefix:t,icons:[]},u=0;return n.forEach((c,f)=>{u+=c.length+1,u>=i&&f>0&&(r.push(l),l={type:a,provider:e,prefix:t,icons:[]},u=c.length),l.icons.push(c)}),r.push(l),r};function SM(e){if(typeof e=="string"){const t=Kv(e);if(t)return t.path}return"/"}const jM=(e,t,n)=>{if(!$w){n("abort",424);return}let r=SM(t.provider);switch(t.type){case"icons":{const a=t.prefix,u=t.icons.join(","),c=new URLSearchParams({icons:u});r+=a+".json?"+c.toString();break}case"custom":{const a=t.uri;r+=a.slice(0,1)==="/"?a.slice(1):a;break}default:n("abort",400);return}let i=503;$w(e+r).then(a=>{const l=a.status;if(l!==200){setTimeout(()=>{n(wM(l)?"abort":"next",l)});return}return i=501,a.json()}).then(a=>{if(typeof a!="object"||a===null){setTimeout(()=>{a===404?n("abort",a):n("next",i)});return}setTimeout(()=>{n("success",a)})}).catch(()=>{n("next",i)})},PM={prepare:kM,send:jM};function JE(e,t){e.forEach(n=>{const r=n.loaderCallbacks;r&&(n.loaderCallbacks=r.filter(i=>i.id!==t))})}function EM(e){e.pendingCallbacksFlag||(e.pendingCallbacksFlag=!0,setTimeout(()=>{e.pendingCallbacksFlag=!1;const t=e.loaderCallbacks?e.loaderCallbacks.slice(0):[];if(!t.length)return;let n=!1;const r=e.provider,i=e.prefix;t.forEach(a=>{const l=a.icons,u=l.pending.length;l.pending=l.pending.filter(c=>{if(c.prefix!==i)return!0;const f=c.name;if(e.icons[f])l.loaded.push({provider:r,prefix:i,name:f});else if(e.missing.has(f))l.missing.push({provider:r,prefix:i,name:f});else return n=!0,!0;return!1}),l.pending.length!==u&&(n||JE([e],a.id),a.callback(l.loaded.slice(0),l.missing.slice(0),l.pending.slice(0),a.abort))})}))}let CM=0;function OM(e,t,n){const r=CM++,i=JE.bind(null,n,r);if(!t.pending.length)return i;const a={id:r,icons:t,callback:e,abort:i};return n.forEach(l=>{(l.loaderCallbacks||(l.loaderCallbacks=[])).push(a)}),i}function NM(e){const t={loaded:[],missing:[],pending:[]},n=Object.create(null);e.sort((i,a)=>i.provider!==a.provider?i.provider.localeCompare(a.provider):i.prefix!==a.prefix?i.prefix.localeCompare(a.prefix):i.name.localeCompare(a.name));let r={provider:"",prefix:"",name:""};return e.forEach(i=>{if(r.name===i.name&&r.prefix===i.prefix&&r.provider===i.provider)return;r=i;const a=i.provider,l=i.prefix,u=i.name,c=n[a]||(n[a]=Object.create(null)),f=c[l]||(c[l]=No(a,l));let d;u in f.icons?d=t.loaded:l===""||f.missing.has(u)?d=t.missing:d=t.pending;const p={provider:a,prefix:l,name:u};d.push(p)}),t}function AM(e,t=!0,n=!1){const r=[];return e.forEach(i=>{const a=typeof i=="string"?Rf(i,t,n):i;a&&r.push(a)}),r}const _M={resources:[],index:0,timeout:2e3,rotate:750,random:!1,dataAfterTimeout:!1};function IM(e,t,n,r){const i=e.resources.length,a=e.random?Math.floor(Math.random()*i):e.index;let l;if(e.random){let E=e.resources.slice(0);for(l=[];E.length>1;){const L=Math.floor(Math.random()*E.length);l.push(E[L]),E=E.slice(0,L).concat(E.slice(L+1))}l=l.concat(E)}else l=e.resources.slice(a).concat(e.resources.slice(0,a));const u=Date.now();let c="pending",f=0,d,p=null,g=[],y=[];typeof r=="function"&&y.push(r);function b(){p&&(clearTimeout(p),p=null)}function S(){c==="pending"&&(c="aborted"),b(),g.forEach(E=>{E.status==="pending"&&(E.status="aborted")}),g=[]}function w(E,L){L&&(y=[]),typeof E=="function"&&y.push(E)}function P(){return{startTime:u,payload:t,status:c,queriesSent:f,queriesPending:g.length,subscribe:w,abort:S}}function C(){c="failed",y.forEach(E=>{E(void 0,d)})}function O(){g.forEach(E=>{E.status==="pending"&&(E.status="aborted")}),g=[]}function A(E,L,F){const H=L!=="success";switch(g=g.filter(R=>R!==E),c){case"pending":break;case"failed":if(H||!e.dataAfterTimeout)return;break;default:return}if(L==="abort"){d=F,C();return}if(H){d=F,g.length||(l.length?I():C());return}if(b(),O(),!e.random){const R=e.resources.indexOf(E.resource);R!==-1&&R!==e.index&&(e.index=R)}c="completed",y.forEach(R=>{R(F)})}function I(){if(c!=="pending")return;b();const E=l.shift();if(E===void 0){if(g.length){p=setTimeout(()=>{b(),c==="pending"&&(O(),C())},e.timeout);return}C();return}const L={status:"pending",resource:E,callback:(F,H)=>{A(L,F,H)}};g.push(L),f++,p=setTimeout(I,e.rotate),n(E,t,L.callback)}return setTimeout(I),P}function eC(e){const t={..._M,...e};let n=[];function r(){n=n.filter(u=>u().status==="pending")}function i(u,c,f){const d=IM(t,u,c,(p,g)=>{r(),f&&f(p,g)});return n.push(d),d}function a(u){return n.find(c=>u(c))||null}return{query:i,find:a,setIndex:u=>{t.index=u},getIndex:()=>t.index,cleanup:r}}function Fw(){}const Ep=Object.create(null);function TM(e){if(!Ep[e]){const t=Kv(e);if(!t)return;const n=eC(t),r={config:t,redundancy:n};Ep[e]=r}return Ep[e]}function DM(e,t,n){let r,i;if(typeof e=="string"){const a=Ag(e);if(!a)return n(void 0,424),Fw;i=a.send;const l=TM(e);l&&(r=l.redundancy)}else{const a=Hv(e);if(a){r=eC(a);const l=e.resources?e.resources[0]:"",u=Ag(l);u&&(i=u.send)}}return!r||!i?(n(void 0,424),Fw):r.query(t,i,n)().abort}function Bw(){}function MM(e){e.iconsLoaderFlag||(e.iconsLoaderFlag=!0,setTimeout(()=>{e.iconsLoaderFlag=!1,EM(e)}))}function LM(e){const t=[],n=[];return e.forEach(r=>{(r.match(YE)?t:n).push(r)}),{valid:t,invalid:n}}function Ll(e,t,n){function r(){const i=e.pendingIcons;t.forEach(a=>{i&&i.delete(a),e.icons[a]||e.missing.add(a)})}if(n&&typeof n=="object")try{if(!GE(e,n).length){r();return}}catch(i){console.error(i)}r(),MM(e)}function Uw(e,t){e instanceof Promise?e.then(n=>{t(n)}).catch(()=>{t(null)}):t(e)}function RM(e,t){e.iconsToLoad?e.iconsToLoad=e.iconsToLoad.concat(t).sort():e.iconsToLoad=t,e.iconsQueueFlag||(e.iconsQueueFlag=!0,setTimeout(()=>{e.iconsQueueFlag=!1;const{provider:n,prefix:r}=e,i=e.iconsToLoad;if(delete e.iconsToLoad,!i||!i.length)return;const a=e.loadIcon;if(e.loadIcons&&(i.length>1||!a)){Uw(e.loadIcons(i,r,n),d=>{Ll(e,i,d)});return}if(a){i.forEach(d=>{const p=a(d,r,n);Uw(p,g=>{const y=g?{prefix:r,icons:{[d]:g}}:null;Ll(e,[d],y)})});return}const{valid:l,invalid:u}=LM(i);if(u.length&&Ll(e,u,null),!l.length)return;const c=r.match(YE)?Ag(n):null;if(!c){Ll(e,l,null);return}c.prepare(n,r,l).forEach(d=>{DM(n,d,p=>{Ll(e,d.icons,p)})})}))}const zM=(e,t)=>{const n=AM(e,!0,XE()),r=NM(n);if(!r.pending.length){let c=!0;return t&&setTimeout(()=>{c&&t(r.loaded,r.missing,r.pending,Bw)}),()=>{c=!1}}const i=Object.create(null),a=[];let l,u;return r.pending.forEach(c=>{const{provider:f,prefix:d}=c;if(d===u&&f===l)return;l=f,u=d,a.push(No(f,d));const p=i[f]||(i[f]=Object.create(null));p[d]||(p[d]=[])}),r.pending.forEach(c=>{const{provider:f,prefix:d,name:p}=c,g=No(f,d),y=g.pendingIcons||(g.pendingIcons=new Set);y.has(p)||(y.add(p),i[f][d].push(p))}),a.forEach(c=>{const f=i[c.provider][c.prefix];f.length&&RM(c,f)}),t?OM(t,r,a):Bw};function $M(e,t){const n={...e};for(const r in t){const i=t[r],a=typeof i;r in QE?(i===null||i&&(a==="string"||a==="number"))&&(n[r]=i):a===typeof n[r]&&(n[r]=r==="rotate"?i%4:i)}return n}const FM=/[\s,]+/;function BM(e,t){t.split(FM).forEach(n=>{switch(n.trim()){case"horizontal":e.hFlip=!0;break;case"vertical":e.vFlip=!0;break}})}function UM(e,t=0){const n=e.replace(/^-?[0-9.]*/,"");function r(i){for(;i<0;)i+=4;return i%4}if(n===""){const i=parseInt(e);return isNaN(i)?0:r(i)}else if(n!==e){let i=0;switch(n){case"%":i=25;break;case"deg":i=90}if(i){let a=parseFloat(e.slice(0,e.length-n.length));return isNaN(a)?0:(a=a/i,a%1===0?r(a):0)}}return t}function WM(e,t){let n=e.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(const r in t)n+=" "+r+'="'+t[r]+'"';return'"+e+""}function qM(e){return e.replace(/"/g,"'").replace(/%/g,"%25").replace(/#/g,"%23").replace(//g,"%3E").replace(/\s+/g," ")}function HM(e){return"data:image/svg+xml,"+qM(e)}function VM(e){return'url("'+HM(e)+'")'}let ts;function KM(){try{ts=window.trustedTypes.createPolicy("iconify",{createHTML:e=>e})}catch{ts=null}}function GM(e){return ts===void 0&&KM(),ts?ts.createHTML(e):e}const tC={...ZE,inline:!1},YM={xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink","aria-hidden":!0,role:"img"},XM={display:"inline-block"},_g={backgroundColor:"currentColor"},nC={backgroundColor:"transparent"},Ww={Image:"var(--svg)",Repeat:"no-repeat",Size:"100% 100%"},qw={WebkitMask:_g,mask:_g,background:nC};for(const e in qw){const t=qw[e];for(const n in Ww)t[e+n]=Ww[n]}const QM={...tC,inline:!0};function Hw(e){return e+(e.match(/^[-0-9.]+$/)?"px":"")}const ZM=(e,t,n)=>{const r=t.inline?QM:tC,i=$M(r,t),a=t.mode||"svg",l={},u=t.style||{},c={...a==="svg"?YM:{}};if(n){const w=Rf(n,!1,!0);if(w){const P=["iconify"],C=["provider","prefix"];for(const O of C)w[O]&&P.push("iconify--"+w[O]);c.className=P.join(" ")}}for(let w in t){const P=t[w];if(P!==void 0)switch(w){case"icon":case"style":case"children":case"onLoad":case"mode":case"ssr":case"fallback":break;case"_ref":c.ref=P;break;case"className":c[w]=(c[w]?c[w]+" ":"")+P;break;case"inline":case"hFlip":case"vFlip":i[w]=P===!0||P==="true"||P===1;break;case"flip":typeof P=="string"&&BM(i,P);break;case"color":l.color=P;break;case"rotate":typeof P=="string"?i[w]=UM(P):typeof P=="number"&&(i[w]=P);break;case"ariaHidden":case"aria-hidden":P!==!0&&P!=="true"&&delete c["aria-hidden"];break;default:r[w]===void 0&&(c[w]=P)}}const f=dM(e,i),d=f.attributes;if(i.inline&&(l.verticalAlign="-0.125em"),a==="svg"){c.style={...l,...u},Object.assign(c,d);let w=0,P=t.id;return typeof P=="string"&&(P=P.replace(/-/g,"_")),c.dangerouslySetInnerHTML={__html:GM(gM(f.body,P?()=>P+"ID"+w++:"iconifyReact"))},k.createElement("svg",c)}const{body:p,width:g,height:y}=e,b=a==="mask"||(a==="bg"?!1:p.indexOf("currentColor")!==-1),S=WM(p,{...d,width:g+"",height:y+""});return c.style={...l,"--svg":VM(S),width:Hw(d.width),height:Hw(d.height),...XM,...b?_g:nC,...u},k.createElement("span",c)};XE(!0);vM("",PM);if(typeof document<"u"&&typeof window<"u"){const e=window;if(e.IconifyPreload!==void 0){const t=e.IconifyPreload,n="Invalid IconifyPreload syntax.";typeof t=="object"&&t!==null&&(t instanceof Array?t:[t]).forEach(r=>{try{(typeof r!="object"||r===null||r instanceof Array||typeof r.icons!="object"||typeof r.prefix!="string"||!aM(r))&&console.error(n)}catch{console.error(n)}})}if(e.IconifyProviders!==void 0){const t=e.IconifyProviders;if(typeof t=="object"&&t!==null)for(let n in t){const r="IconifyProviders["+n+"] is invalid.";try{const i=t[n];if(typeof i!="object"||!i||i.resources===void 0)continue;yM(n,i)||console.error(r)}catch{console.error(r)}}}}function rC(e){const[t,n]=k.useState(!!e.ssr),[r,i]=k.useState({});function a(y){if(y){const b=e.icon;if(typeof b=="object")return{name:"",data:b};const S=Rw(b);if(S)return{name:b,data:S}}return{name:""}}const[l,u]=k.useState(a(!!e.ssr));function c(){const y=r.callback;y&&(y(),i({}))}function f(y){if(JSON.stringify(l)!==JSON.stringify(y))return c(),u(y),!0}function d(){var y;const b=e.icon;if(typeof b=="object"){f({name:"",data:b});return}const S=Rw(b);if(f({name:b,data:S}))if(S===void 0){const w=zM([b],d);i({callback:w})}else S&&((y=e.onLoad)===null||y===void 0||y.call(e,b))}k.useEffect(()=>(n(!0),c),[]),k.useEffect(()=>{t&&d()},[e.icon,t]);const{name:p,data:g}=l;return g?ZM({...qv,...g},e,p):e.children?e.children:e.fallback?e.fallback:k.createElement("span",{})}const JM=k.forwardRef((e,t)=>rC({...e,_ref:t}));k.forwardRef((e,t)=>rC({inline:!0,...e,_ref:t}));function se({icon:e,size:t=20,className:n="",style:r}){return m.jsx(JM,{icon:e,width:t,height:t,className:n,style:r})}function Po({icon:e="lucide:inbox",title:t,description:n,action:r}){return m.jsxs("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[m.jsx(se,{icon:e,size:48,className:"text-base-content/30 mb-4"}),m.jsx("h3",{className:"font-semibold text-lg text-base-content/70",children:t}),n&&m.jsx("p",{className:"text-base-content/50 mt-1 max-w-sm",children:n}),r&&m.jsx("div",{className:"mt-4",children:r})]})}const eL={top:"tooltip-top",bottom:"tooltip-bottom",left:"tooltip-left",right:"tooltip-right"};function Ar({text:e,children:t,position:n="top"}){return m.jsx("div",{className:`tooltip ${eL[n]}`,"data-tip":e,children:t})}const tL={success:{bg:"alert-success",icon:"lucide:check-circle",iconColor:"text-success-content"},error:{bg:"alert-error",icon:"lucide:x-circle",iconColor:"text-error-content"},info:{bg:"alert-info",icon:"lucide:info",iconColor:"text-info-content"},warning:{bg:"alert-warning",icon:"lucide:alert-triangle",iconColor:"text-warning-content"}};function nL({id:e,type:t,message:n,title:r,duration:i=5e3,dismissible:a=!0,onClick:l,onDismiss:u}){const[c,f]=k.useState(!1),{bg:d,icon:p,iconColor:g}=tL[t];k.useEffect(()=>{if(i>0){const b=setTimeout(()=>{f(!0),setTimeout(()=>u(e),300)},i);return()=>clearTimeout(b)}},[i,e,u]);const y=()=>{f(!0),setTimeout(()=>u(e),300)};return m.jsxs("div",{role:"alert",className:`alert ${d} shadow-lg transition-all duration-300 ${c?"opacity-0 translate-x-4":"opacity-100 translate-x-0"} ${l?"cursor-pointer hover:scale-[1.02]":""}`,onClick:l,children:[m.jsx(se,{icon:p,size:20,className:g}),m.jsxs("div",{className:"flex-1",children:[r&&m.jsx("h3",{className:"font-bold text-sm",children:r}),m.jsx("span",{className:"text-sm",children:n})]}),a&&m.jsx("button",{onClick:b=>{b.stopPropagation(),y()},className:"btn btn-ghost btn-sm btn-circle","aria-label":"Dismiss",children:m.jsx(se,{icon:"lucide:x",size:16})})]})}function rL({toasts:e,onDismiss:t}){return e.length===0?null:m.jsx("div",{className:"toast toast-end toast-bottom z-50",children:e.map(n=>m.jsx(nL,{...n,onDismiss:t},n.id))})}function iC({project:e,workspace:t=!1}){return t?m.jsxs("span",{className:"inline-flex items-center gap-1 text-xs bg-base-200 text-base-content/50 rounded-full px-2.5 py-0.5",children:[m.jsx(se,{icon:"lucide:globe",size:12}),"Workspace"]}):e?m.jsxs("span",{className:"inline-flex items-center gap-1 text-xs bg-primary/10 text-primary rounded-full px-2.5 py-0.5",children:[m.jsx(se,{icon:"lucide:folder",size:12}),e]}):null}function iL({icon:e,label:t,href:n,active:r=!1,badge:i,collapsed:a=!1}){const l=m.jsxs("a",{href:n,className:`nav-item flex items-center gap-3 px-3 py-2.5 rounded-lg transition-all ${r?"active":""} ${a?"justify-center":""}`,children:[m.jsx(se,{icon:e,size:20}),!a&&m.jsxs(m.Fragment,{children:[m.jsx("span",{className:"flex-1",children:t}),i!==void 0&&m.jsx("span",{className:`badge badge-sm ${r?"badge-primary-content":"badge-ghost"}`,children:i})]})]});return a?m.jsx(Ar,{text:t,children:l}):l}const aL=[{icon:"lucide:layout-dashboard",label:"Dashboard",href:"#/"},{icon:"lucide:scroll",label:"Specification",href:"#/spec"},{icon:"lucide:brain",label:"Memories",href:"#/memories"},{icon:"lucide:history",label:"Sessions",href:"#/sessions"},{icon:"lucide:bar-chart-3",label:"Usage",href:"#/usage"},{icon:"lucide:archive",label:"Vault",href:"#/vault"}];function oL({currentPath:e,collapsed:t=!1}){return m.jsx("nav",{className:"py-4 space-y-1 px-2",children:aL.map(n=>m.jsx(iL,{icon:n.icon,label:n.label,href:n.href,active:e===n.href||e.startsWith(n.href+"/"),collapsed:t},n.href))})}function lL({workerStatus:e,version:t,queueDepth:n=0,collapsed:r=!1}){const l={online:{color:"success",label:"Online",icon:"lucide:circle-check"},offline:{color:"error",label:"Offline",icon:"lucide:circle-x"}}[e!=="offline"?"online":"offline"],u=t?`v${t}`:null;return r?m.jsx("div",{className:"p-3 border-t border-base-300/50",children:m.jsx(Ar,{text:`Claude Pilot ${u??""} · Worker ${l.label}`,children:m.jsx("div",{className:"flex justify-center",children:m.jsx(se,{icon:l.icon,size:20,className:`text-${l.color}`})})})}):m.jsxs("div",{className:"p-4 border-t border-base-300/50 space-y-2",children:[m.jsxs("div",{className:"flex items-center justify-between text-sm",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(se,{icon:l.icon,size:16,className:`text-${l.color}`}),m.jsx("span",{className:"text-base-content/70",children:"Worker"})]}),m.jsx(Te,{variant:l.color,size:"sm",children:l.label})]}),u&&m.jsxs("div",{className:"text-xs text-base-content/40 text-center",children:["Claude Pilot ",u]})]})}const aC=k.createContext(null);let sL=0;function uL({children:e}){const[t,n]=k.useState([]),r=k.useCallback(d=>{const p=`toast-${++sL}`;return n(g=>[...g,{...d,id:p}]),p},[]),i=k.useCallback(d=>{n(p=>p.filter(g=>g.id!==d))},[]),a=k.useCallback(()=>{n([])},[]),l=k.useCallback((d,p)=>r({type:"success",message:d,title:p}),[r]),u=k.useCallback((d,p)=>r({type:"error",message:d,title:p,duration:8e3}),[r]),c=k.useCallback((d,p)=>r({type:"info",message:d,title:p}),[r]),f=k.useCallback((d,p)=>r({type:"warning",message:d,title:p,duration:7e3}),[r]);return m.jsxs(aC.Provider,{value:{addToast:r,removeToast:i,clearAll:a,success:l,error:u,info:c,warning:f},children:[e,m.jsx(rL,{toasts:t,onDismiss:i})]})}function oC(){const e=k.useContext(aC);if(!e)throw new Error("useToast must be used within a ToastProvider");return e}const Cp="pilot-memory-selected-project",cL={selectedProject:null,projects:[],setSelectedProject:()=>{},setProjects:()=>{}},lC=k.createContext(cL);function fL({children:e}){const[t,n]=k.useState(()=>{try{return localStorage.getItem(Cp)||null}catch{return null}}),[r,i]=k.useState([]),a=k.useCallback(u=>{n(u);try{u?localStorage.setItem(Cp,u):localStorage.removeItem(Cp)}catch{}},[]),l=k.useCallback(u=>{i(u)},[]);return k.useEffect(()=>{fetch("/api/projects").then(u=>u.json()).then(u=>{const c=u.projects||[];c.length>0&&i(c)}).catch(()=>{})},[]),k.useEffect(()=>{t&&r.length>0&&!r.includes(t)&&a(null)},[r,t,a]),m.jsx(lC.Provider,{value:{selectedProject:t,projects:r,setSelectedProject:a,setProjects:l},children:e})}function Ra(){return k.useContext(lC)}function dL({collapsed:e=!1}){const{selectedProject:t,projects:n,setSelectedProject:r}=Ra();return e?m.jsx("div",{className:"flex-shrink-0 px-3 py-3 border-b border-base-300/50",children:m.jsx(Ar,{text:t??"All Projects",children:m.jsx("button",{className:`btn btn-ghost btn-sm btn-square w-full ${t?"text-primary":"text-base-content/50"}`,onClick:()=>r(null),children:m.jsx(se,{icon:"lucide:folder-open",size:20})})})}):m.jsxs("div",{className:"flex-shrink-0 px-3 py-3 border-b border-base-300/50 relative z-10",children:[m.jsx("label",{className:"text-[10px] font-semibold uppercase tracking-wider text-base-content/40 px-1 mb-1.5 block",children:"Project"}),m.jsxs("select",{className:"select select-bordered select-sm w-full text-sm bg-base-100",value:t??"",onChange:i=>r(i.target.value||null),children:[m.jsx("option",{value:"",children:"All Projects"}),n.map(i=>m.jsx("option",{value:i,children:i},i))]})]})}function hL({currentPath:e,workerStatus:t,version:n,queueDepth:r,collapsed:i,onToggleCollapse:a}){return m.jsxs("aside",{className:`dashboard-sidebar flex flex-col border-r border-base-300 transition-all duration-300 h-screen sticky top-0 ${i?"w-[72px]":"w-64"}`,children:[m.jsxs("div",{className:"flex-shrink-0 flex items-center justify-between p-4 border-b border-base-300/50",children:[!i&&m.jsx(FD,{}),m.jsx("button",{onClick:a,className:"btn btn-ghost btn-sm btn-square",title:i?"Expand sidebar":"Collapse sidebar",children:m.jsx(se,{icon:i?"lucide:panel-left-open":"lucide:panel-left-close",size:18})})]}),m.jsx(dL,{collapsed:i}),m.jsx("div",{className:"flex-1",children:m.jsx(oL,{currentPath:e,collapsed:i})}),m.jsx("div",{className:"flex-shrink-0",children:m.jsx(lL,{workerStatus:t,version:n,queueDepth:r,collapsed:i})})]})}const sC={solo:{label:"Solo",variant:"primary"},team:{label:"Team",variant:"accent"},trial:{label:"Trial",variant:"warning"},standard:{label:"Solo",variant:"primary"},enterprise:{label:"Team",variant:"accent"}};function Vw(e){const t=sC[e.tier??""],n=[(t==null?void 0:t.label)??e.tier??"Unknown"];return e.email&&n.push(e.email),e.tier==="trial"&&e.daysRemaining!=null&&n.push(`${e.daysRemaining} days remaining`),n.join(" · ")}function Kw(e){return e.isExpired||e.tier==="trial"}function pL({license:e,isLoading:t,onClick:n}){if(t||!e||!e.tier)return null;const i=Kw(e)&&!!n?{onClick:n,role:"button",className:"cursor-pointer"}:{};if(e.isExpired)return m.jsx(Ar,{text:Vw(e),position:"bottom",children:m.jsx("span",{...i,children:m.jsx(Te,{variant:"error",size:"xs",children:"Expired"})})});const a=sC[e.tier];if(!a)return null;let l=a.label;e.tier==="trial"&&e.daysRemaining!=null&&(l=`${a.label} · ${e.daysRemaining}d left`);const u=!Kw(e)&&e.email;return m.jsx(Ar,{text:Vw(e),position:"bottom",children:m.jsxs("span",{...i,className:`${i.className??""} inline-flex items-center gap-1.5`,children:[m.jsx(Te,{variant:a.variant,size:"xs",children:l}),u&&m.jsx("span",{className:"text-base-content/50",children:e.email})]})})}function mL({open:e,onClose:t,onActivated:n}){const[r,i]=k.useState(""),[a,l]=k.useState(null),[u,c]=k.useState(!1),f=k.useCallback(async()=>{const p=r.trim();if(p){l(null),c(!0);try{const y=await(await fetch("/api/license/activate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:p})})).json();y.success?(i(""),n(),t()):l(y.error??"Activation failed")}catch{l("Connection failed")}finally{c(!1)}}},[r,n,t]),d=k.useCallback(p=>{p.key==="Enter"&&!u&&f()},[f,u]);return m.jsxs(WE,{open:e,onClose:t,title:"Activate License",children:[m.jsxs("div",{className:"flex flex-col gap-3",children:[m.jsx("input",{id:"license-key-input",type:"text",className:"input input-bordered w-full",placeholder:"Enter your license key",value:r,onChange:p=>{i(p.target.value),l(null)},onKeyDown:d,disabled:u,autoFocus:!0}),a&&m.jsx("p",{className:"text-error text-sm",children:a}),m.jsx("div",{className:"bg-base-200/50 rounded-lg p-3 space-y-1.5",children:m.jsxs("p",{className:"text-xs text-base-content/60",children:["Don't have a key? Get one at"," ",m.jsx("a",{href:"https://claude-pilot.com/#pricing",target:"_blank",rel:"noopener noreferrer",className:"text-primary hover:underline font-medium",children:"claude-pilot.com"})]})})]}),m.jsxs("div",{className:"modal-action",children:[m.jsx("button",{className:"btn btn-ghost btn-sm",onClick:t,disabled:u,children:"Cancel"}),m.jsx("button",{className:"btn btn-primary btn-sm",onClick:f,disabled:u||!r.trim(),children:u?"Activating...":"Activate"})]})]})}function uC(){const[e,t]=k.useState(null),[n,r]=k.useState(!0),i=k.useCallback((l=!1)=>{fetch(l?"/api/license?refresh=1":"/api/license").then(c=>c.json()).then(c=>{t(c),r(!1)}).catch(()=>{r(!1)})},[]);k.useEffect(()=>{i();const l=setInterval(()=>i(!0),6e4);return()=>clearInterval(l)},[i]);const a=k.useCallback(()=>i(!0),[i]);return{license:e,isLoading:n,refetch:a}}function gL({theme:e,onToggleTheme:t,onToggleLogs:n}){const[r,i]=k.useState(!1),[a,l]=k.useState(!1);k.useEffect(()=>{fetch("/api/auth/status").then(c=>c.json()).then(c=>{i(c.authRequired)}).catch(()=>{i(!1)})},[]);const u=async()=>{l(!0);try{await fetch("/api/auth/logout",{method:"POST"}),window.location.href="/login"}catch{l(!1)}};return m.jsxs("div",{className:"flex items-center gap-2",children:[n&&m.jsx(Ar,{text:"Toggle console logs",position:"bottom",children:m.jsx(Yt,{variant:"ghost",size:"sm",onClick:n,children:m.jsx(se,{icon:"lucide:terminal",size:18})})}),m.jsx(Ar,{text:`Switch to ${e==="light"?"dark":"light"} mode`,position:"bottom",children:m.jsx(Yt,{variant:"ghost",size:"sm",onClick:t,children:m.jsx(se,{icon:e==="light"?"lucide:moon":"lucide:sun",size:18})})}),m.jsx(Ar,{text:"Repository",position:"bottom",children:m.jsx("a",{href:"https://github.com/maxritter/claude-pilot",target:"_blank",rel:"noopener noreferrer",className:"btn btn-ghost btn-sm",children:m.jsx(se,{icon:"lucide:git-branch",size:18})})}),r&&m.jsx(Ar,{text:"Logout",position:"bottom",children:m.jsx(Yt,{variant:"ghost",size:"sm",onClick:u,disabled:a,children:m.jsx(se,{icon:"lucide:log-out",size:18})})})]})}function vL({theme:e,onToggleTheme:t,onToggleLogs:n}){const{license:r,isLoading:i,refetch:a}=uC(),[l,u]=k.useState(!1);return m.jsxs("header",{className:"h-14 bg-base-100 border-b border-base-300/50 flex items-center justify-between px-6 gap-4",children:[m.jsxs("div",{className:"flex items-center gap-2 text-xs text-base-content/40",children:[m.jsx(se,{icon:"lucide:plane",size:14,className:"text-primary/60"}),m.jsxs("span",{children:["© ",new Date().getFullYear()," ",m.jsx("a",{href:"https://claude-pilot.com",target:"_blank",rel:"noopener noreferrer",className:"text-primary/70 hover:text-primary transition-colors",children:"Claude Pilot"})]}),m.jsx("span",{className:"text-base-content/20",children:"|"}),m.jsxs("span",{children:["Created by"," ",m.jsx("a",{href:"https://maxritter.net",target:"_blank",rel:"noopener noreferrer",className:"text-primary/70 hover:text-primary transition-colors",children:"Max Ritter"})]}),!i&&(r==null?void 0:r.tier)&&m.jsx("span",{className:"text-base-content/20",children:"|"}),m.jsx(pL,{license:r,isLoading:i,onClick:()=>u(!0)}),!i&&(!r||!r.tier||r.tier==="trial"||r.isExpired)&&m.jsxs(m.Fragment,{children:[m.jsx("span",{className:"text-base-content/20",children:"|"}),m.jsx("a",{href:"https://claude-pilot.com/#pricing",target:"_blank",rel:"noopener noreferrer",className:"text-primary/70 hover:text-primary transition-colors",children:"Get a license"}),m.jsxs("button",{onClick:()=>u(!0),className:"btn btn-primary btn-xs gap-1",children:[m.jsx(se,{icon:"lucide:key",size:12}),"Activate"]})]})]}),m.jsx(gL,{theme:e,onToggleTheme:t,onToggleLogs:n}),m.jsx(mL,{open:l,onClose:()=>u(!1),onActivated:a})]})}function yL({children:e,currentPath:t,workerStatus:n,version:r,queueDepth:i,theme:a,onToggleTheme:l,onToggleLogs:u,sidebarCollapsed:c,onToggleSidebar:f}){const d=a==="dark"?"claude-pilot":"claude-pilot-light";return m.jsxs("div",{className:"dashboard-layout flex min-h-screen","data-theme":d,children:[m.jsx(hL,{currentPath:t,workerStatus:n,version:r,queueDepth:i,collapsed:c,onToggleCollapse:f}),m.jsxs("div",{className:"flex-1 flex flex-col min-w-0",children:[m.jsx(vL,{theme:a,onToggleTheme:l,onToggleLogs:u}),m.jsx("main",{className:"flex-1 p-6 overflow-y-auto",children:e})]})]})}function cC(){const[e,t]=k.useState(()=>Gw(window.location.hash));k.useEffect(()=>{const r=()=>{t(Gw(window.location.hash))};return window.addEventListener("hashchange",r),()=>window.removeEventListener("hashchange",r)},[]);const n=k.useCallback(r=>{window.location.hash=r},[]);return{path:e.path,params:e.params,navigate:n}}function Gw(e){const t=e.replace(/^#/,"")||"/",n={},[r,i]=t.split("?");return i&&new URLSearchParams(i).forEach((l,u)=>{n[u]=l}),{path:r,params:n}}function xL({routes:e,fallback:t}){const{path:n}=cC();for(const r of e){const i=bL(r.path,n);if(i){const a=r.component;return m.jsx(a,{...i.params})}}return t?m.jsx(m.Fragment,{children:t}):null}function bL(e,t){if(e===t)return{params:{}};const n=e.split("/"),r=t.split("/");if(n.length!==r.length)return null;const i={};for(let a=0;a=0?"text-success":"text-error"}`,children:[m.jsx(se,{icon:i.value>=0?"lucide:trending-up":"lucide:trending-down",size:16}),m.jsxs("span",{className:"ml-1",children:[Math.abs(i.value),"% ",i.label]})]})]})})}function wL({stats:e,specStats:t}){const n=t&&t.totalSpecs>0?`${Math.round(t.verified/t.totalSpecs*100)}% success`:void 0;return m.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4",children:[m.jsx(Fi,{icon:"lucide:brain",label:"Observations",value:e.observations.toLocaleString()}),m.jsx(Fi,{icon:"lucide:scroll",label:"Total Specs",value:((t==null?void 0:t.totalSpecs)??0).toLocaleString()}),m.jsx(Fi,{icon:"lucide:shield-check",label:"Verified",value:((t==null?void 0:t.verified)??0).toLocaleString(),subtext:n}),m.jsx(Fi,{icon:"lucide:loader",label:"In Progress",value:((t==null?void 0:t.inProgress)??0).toLocaleString()}),m.jsx(Fi,{icon:"lucide:history",label:"Sessions",value:e.sessions.toLocaleString()}),m.jsx(Fi,{icon:"lucide:clock",label:"Last Observation",value:e.lastObservationAt||"None yet"}),m.jsx(Fi,{icon:"lucide:file-text",label:"Summaries",value:e.summaries.toLocaleString()}),m.jsx(Fi,{icon:"lucide:check-square",label:"Tasks Completed",value:((t==null?void 0:t.totalTasksCompleted)??0).toLocaleString(),subtext:t&&t.totalTasks>0?`of ${t.totalTasks} total`:void 0})]})}function kL({status:e,version:t,uptime:n,queueDepth:r=0}){const i=e==="processing",a=e!=="offline";return m.jsx(wt,{children:m.jsxs(kt,{children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(Hi,{children:"Worker Status"}),m.jsx(Te,{variant:"ghost",size:"sm",children:"Workspace"})]}),m.jsx(Te,{variant:a?"success":"error",children:a?"Online":"Offline"})]}),m.jsxs("div",{className:"space-y-3",children:[t&&m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:tag",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"Version:"}),m.jsx("span",{className:"font-mono",children:t})]}),n&&m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:clock",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"Uptime:"}),m.jsx("span",{children:n})]}),m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:i?"lucide:loader-2":"lucide:layers",size:16,className:`${i?"text-warning animate-spin":"text-base-content/50"}`}),m.jsx("span",{className:"text-base-content/70",children:"Queue:"}),m.jsxs("span",{className:i?"text-warning font-medium":"",children:[r," items"]}),i&&m.jsx(Te,{variant:"warning",size:"xs",children:"Processing"})]})]})]})})}function SL(e){if(!e)return"Never";try{const t=new Date(e),r=new Date().getTime()-t.getTime();return r<6e4?"just now":r<36e5?`${Math.floor(r/6e4)}m ago`:r<864e5?`${Math.floor(r/36e5)}h ago`:`${Math.floor(r/864e5)}d ago`}catch{return"Unknown"}}function jL({isIndexed:e,files:t,generatedAt:n,isReindexing:r}){return m.jsx(wt,{children:m.jsxs(kt,{className:"flex flex-col",children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(Hi,{children:"Codebase Indexing"}),m.jsx(Te,{variant:"ghost",size:"sm",children:"Workspace"})]}),r?m.jsxs(Te,{variant:"warning",children:[m.jsx(se,{icon:"lucide:refresh-cw",size:12,className:"mr-1 animate-spin"}),"Indexing..."]}):m.jsx(Te,{variant:e?"success":"warning",children:e?"Indexed":"Not Indexed"})]}),m.jsxs("div",{className:"space-y-3 flex-1",children:[m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:file-search",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"Files:"}),m.jsx("span",{className:"font-semibold",children:t.toLocaleString()})]}),m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:clock",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"Last indexed:"}),m.jsx("span",{children:SL(n)})]})]}),!r&&m.jsx("p",{className:"text-xs text-base-content/50 mt-3",children:t===0?m.jsxs(m.Fragment,{children:["Run ",m.jsx("code",{className:"bg-base-300/50 px-1 rounded",children:"/sync"})," in Claude Code to index your codebase."]}):m.jsxs(m.Fragment,{children:["Re-index with ",m.jsx("code",{className:"bg-base-300/50 px-1 rounded",children:"/sync"})," or ",m.jsx("code",{className:"bg-base-300/50 px-1 rounded",children:"vexor index --clear"})]})})]})})}function PL(e){try{const t=new URL(e);return(t.host+t.pathname).replace(/\.git$/,"")}catch{return e}}function EL(e){const{installed:t,version:n,configured:r,vaultUrl:i,assets:a,catalog:l,isLoading:u}=e;if(u)return m.jsx(wt,{children:m.jsxs(kt,{children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsx(Hi,{children:"Vault"}),m.jsx(Te,{variant:"ghost",children:"Loading..."})]}),m.jsxs("div",{className:"space-y-3 animate-pulse",children:[m.jsx("div",{className:"h-4 bg-base-300 rounded w-3/4"}),m.jsx("div",{className:"h-4 bg-base-300 rounded w-1/2"})]})]})});const c=new Set(a.map(d=>d.name)),f=l.filter(d=>!c.has(d.name)).length;return t?r?m.jsx(wt,{children:m.jsxs(kt,{className:"flex flex-col",children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(Hi,{children:"Vault"}),m.jsx(Te,{variant:"ghost",size:"sm",children:"Workspace"})]}),m.jsx(Te,{variant:"success",children:"Connected"})]}),m.jsxs("div",{className:"space-y-3 flex-1",children:[i&&m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:git-branch",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"Vault:"}),m.jsx("span",{className:"font-mono text-xs truncate",children:PL(i)})]}),m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:package",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"Installed:"}),m.jsx("span",{className:"font-semibold",children:a.length}),f>0&&m.jsxs("span",{className:"text-base-content/40",children:["(",f," available)"]})]}),m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:cloud",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"In vault:"}),m.jsx("span",{className:"font-semibold",children:l.length})]})]})]})}):m.jsx(wt,{children:m.jsxs(kt,{children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(Hi,{children:"Vault"}),n&&m.jsxs(Te,{variant:"ghost",size:"sm",children:["v",n]})]}),m.jsx(Te,{variant:"warning",children:"Not Configured"})]}),m.jsx("div",{className:"text-sm text-base-content/60",children:m.jsxs("p",{children:["sx is installed but no vault is configured. Run ",m.jsx("span",{className:"font-mono text-primary",children:"/vault"})," to set up."]})})]})}):m.jsx(wt,{children:m.jsxs(kt,{children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsx(Hi,{children:"Vault"}),m.jsx(Te,{variant:"ghost",children:"Not Installed"})]}),m.jsx("div",{className:"text-sm text-base-content/60",children:m.jsxs("p",{children:["sx is not installed. Run the Pilot installer or install from ",m.jsx("span",{className:"font-mono text-primary",children:"skills.new"}),"."]})})]})})}const CL={plan:{label:"Planning",color:"info",border:"border-l-info"},implement:{label:"Implementing",color:"warning",border:"border-l-warning"},verify:{label:"Verifying",color:"accent",border:"border-l-accent"}};function OL({plan:e}){const t=CL[e.phase],n=e.total>0?e.completed/e.total*100:0;return m.jsxs("div",{className:`border-l-4 ${t.border} pl-3 py-2`,children:[m.jsxs("div",{className:"flex items-center justify-between gap-2",children:[m.jsx("span",{className:"font-medium text-sm truncate",title:e.name,children:e.name}),m.jsxs("div",{className:"flex items-center gap-2 shrink-0",children:[m.jsx(Te,{variant:t.color,size:"xs",children:t.label}),m.jsxs("span",{className:"text-xs font-mono text-base-content/60",children:[e.completed,"/",e.total]})]})]}),m.jsx("div",{className:"w-full bg-base-300 rounded-full h-1.5 mt-1.5",children:m.jsx("div",{className:`h-1.5 rounded-full transition-all duration-300 ${n===100?"bg-success":"bg-primary"}`,style:{width:`${n}%`}})})]})}function NL({plans:e}){return e.length===0?m.jsx(wt,{children:m.jsxs(kt,{children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(Hi,{children:"Specification Status"}),m.jsx(Te,{variant:"ghost",size:"sm",children:"Workspace"})]}),m.jsx(Te,{variant:"ghost",children:"Quick Mode"})]}),m.jsxs("div",{className:"text-sm text-base-content/60",children:[m.jsx("p",{children:"No active spec-driven plan."}),m.jsxs("p",{className:"mt-2",children:["Use ",m.jsx("code",{className:"text-primary",children:"/spec"})," for complex tasks."]})]})]})}):m.jsx(wt,{children:m.jsxs(kt,{children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(Hi,{children:"Specification Status"}),m.jsx(Te,{variant:"ghost",size:"sm",children:"Workspace"})]}),m.jsxs(Te,{variant:"info",children:[e.length," active"]})]}),m.jsx("div",{className:"space-y-2",children:e.map((t,n)=>m.jsx(OL,{plan:t},t.filePath??`${t.name}-${n}`))})]})})}const AL=6e4;function fC(){const{selectedProject:e,setProjects:t}=Ra(),[n,r]=k.useState({observations:0,summaries:0,sessions:0,lastObservationAt:null,projects:0}),[i,a]=k.useState({status:"offline"}),[l,u]=k.useState({isIndexed:!1,files:0,mode:"",model:"",generatedAt:null,isReindexing:!1}),[c,f]=k.useState([]),[d,p]=k.useState({active:!1,plans:[]}),[g,y]=k.useState({branch:null,staged:0,unstaged:0,untracked:0}),[b,S]=k.useState({totalSpecs:0,verified:0,inProgress:0,pending:0,avgIterations:0,totalTasksCompleted:0,totalTasks:0,completionTimeline:[],recentlyVerified:[]}),[w,P]=k.useState([]),[C,O]=k.useState({installed:!1,version:null,configured:!1,vaultUrl:null,profile:null,assets:[],catalog:[],isInstalling:!1}),[A,I]=k.useState(!0),E=k.useCallback(async()=>{try{const W=await(await fetch("/api/vault/status")).json();O(W)}catch{}},[]),L=k.useCallback(async()=>{try{const R=e?`?project=${encodeURIComponent(e)}`:"",D=await(await fetch(`/api/vexor/status${R}`)).json();u({isIndexed:D.isIndexed??!1,files:D.files??0,mode:D.mode??"",model:D.model??"",generatedAt:D.generatedAt??null,isReindexing:D.isReindexing??!1})}catch{}},[e]),F=k.useCallback(async()=>{var W,D,Z,Y,Q,he,de;const R=e?`?project=${encodeURIComponent(e)}`:"";try{const[J,ae,T,$,U,_,te,fe]=await Promise.all([fetch(`/api/stats${R}`),fetch("/health"),fetch(`/api/observations?limit=5${e?`&project=${encodeURIComponent(e)}`:""}`),fetch("/api/projects"),fetch(`/api/plan${R}`),fetch(`/api/git${R}`),fetch(`/api/plans/stats${R}`).catch(()=>null),fetch(`/api/analytics/timeline?range=30d${e?`&project=${encodeURIComponent(e)}`:""}`).catch(()=>null)]),ce=await J.json(),Se=await ae.json(),je=await T.json(),X=await $.json(),we=await U.json(),Ae=await _.json();if(te!=null&&te.ok){const Pt=await te.json();S(Pt)}if(fe!=null&&fe.ok){const Pt=await fe.json();P(Pt.data||[])}const ie=je.items||je.observations||je||[],rt=Array.isArray(ie)?ie:[],ze=rt.length>0&&((W=rt[0])==null?void 0:W.created_at)||null,ct=X.projects||[];t(ct),r({observations:((D=ce.database)==null?void 0:D.observations)||0,summaries:((Z=ce.database)==null?void 0:Z.summaries)||0,sessions:((Y=ce.database)==null?void 0:Y.sessions)||0,lastObservationAt:ze?Yw(ze):null,projects:ct.length}),a({status:Se.status==="ok"?Se.isProcessing?"processing":"online":"offline",version:(Q=ce.worker)==null?void 0:Q.version,uptime:(he=ce.worker)!=null&&he.uptime?_L(ce.worker.uptime):void 0,queueDepth:Se.queueDepth||0,workspaceProject:(de=ce.worker)==null?void 0:de.workspaceProject});const ft=je.items||je.observations||je||[];f((Array.isArray(ft)?ft:[]).slice(0,5).map(Pt=>{var Br;return{id:Pt.id,type:Pt.obs_type||Pt.type||"observation",title:Pt.title||((Br=Pt.content)==null?void 0:Br.slice(0,100))||"Untitled",project:Pt.project||"unknown",timestamp:Yw(Pt.created_at)}}));const Ut=we.plans||(we.plan?[we.plan]:[]);p({active:Ut.length>0,plans:Ut}),y({branch:Ae.branch||null,staged:Ae.staged||0,unstaged:Ae.unstaged||0,untracked:Ae.untracked||0})}catch(J){console.error("Failed to load stats:",J),a({status:"offline"})}finally{I(!1)}},[e,t]),H=k.useRef(F);return k.useEffect(()=>{H.current=F},[F]),k.useEffect(()=>{F()},[F]),k.useEffect(()=>{L(),E();const R=setInterval(L,AL),W=new EventSource("/stream");return W.onmessage=D=>{try{const Z=JSON.parse(D.data);Z.type==="processing_status"&&a(Y=>({...Y,status:Z.isProcessing?"processing":"online",queueDepth:Z.queueDepth??Y.queueDepth})),(Z.type==="new_observation"||Z.type==="new_summary"||Z.type==="plan_association_changed")&&H.current()}catch{}},()=>{clearInterval(R),W.close()}},[L,E]),{stats:n,workerStatus:i,vexorStatus:l,vaultStatus:C,recentActivity:c,planStatus:d,gitInfo:g,specStats:b,observationTimeline:w,isLoading:A,refreshStats:F}}function Yw(e){if(!e)return"";const t=new Date(e),r=new Date().getTime()-t.getTime();return r<6e4?"just now":r<36e5?`${Math.floor(r/6e4)}m ago`:r<864e5?`${Math.floor(r/36e5)}h ago`:t.toLocaleDateString()}function _L(e){return e<60?`${e}s`:e<3600?`${Math.floor(e/60)}m`:e<86400?`${Math.floor(e/3600)}h`:`${Math.floor(e/86400)}d`}function IL(){const{stats:e,workerStatus:t,vexorStatus:n,vaultStatus:r,planStatus:i,specStats:a,isLoading:l}=fC(),{selectedProject:u}=Ra();return l?m.jsx("div",{className:"flex items-center justify-center h-64",children:m.jsx("span",{className:"loading loading-spinner loading-lg"})}):m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Dashboard"}),m.jsx("p",{className:"text-base-content/60",children:u?`Filtered by: ${u}`:"Overview of your Pilot Console"})]}),m.jsx(wL,{stats:e,specStats:a}),(!u||u===t.workspaceProject)&&m.jsxs("div",{className:"space-y-4",children:[m.jsx("h2",{className:"text-sm font-semibold uppercase tracking-wider text-base-content/40",children:"Workspace"}),m.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6 [&>*]:h-full",children:[m.jsx(jL,{isIndexed:n.isIndexed,files:n.files,generatedAt:n.generatedAt,isReindexing:n.isReindexing}),m.jsx(kL,{status:t.status,version:t.version,uptime:t.uptime,queueDepth:t.queueDepth}),m.jsx(NL,{plans:i.plans}),m.jsx(EL,{...r,isLoading:l})]})]})]})}const TL=[{value:"all",label:"All Types"},{value:"observation",label:"Observations"},{value:"summary",label:"Summaries"},{value:"prompt",label:"Prompts"}];function DL({viewMode:e,onViewModeChange:t,filterType:n,onFilterTypeChange:r,totalCount:i,selectionMode:a,onToggleSelectionMode:l,selectedCount:u,onSelectAll:c,onExport:f,onDelete:d,isExporting:p,isDeleting:g,allSelected:y}){const b=[{label:"Export as JSON",onClick:()=>f("json"),icon:m.jsx(se,{icon:"lucide:file-json",size:16})},{label:"Export as CSV",onClick:()=>f("csv"),icon:m.jsx(se,{icon:"lucide:file-spreadsheet",size:16})},{label:"Export as Markdown",onClick:()=>f("markdown"),icon:m.jsx(se,{icon:"lucide:file-text",size:16})}];return m.jsxs("div",{className:"flex items-center justify-between gap-4 flex-wrap",children:[m.jsx("div",{className:"flex items-center gap-2",children:a?m.jsxs(m.Fragment,{children:[m.jsxs(Yt,{variant:"ghost",size:"sm",onClick:c,children:[m.jsx(se,{icon:y?"lucide:check-square":"lucide:square",size:16,className:"mr-1"}),y?"Deselect All":"Select All"]}),m.jsxs("span",{className:"text-sm text-base-content/60",children:[u," of ",i," selected"]})]}):m.jsxs("span",{className:"text-sm text-base-content/60",children:[i," items"]})}),m.jsx("div",{className:"flex items-center gap-2",children:a?m.jsxs(m.Fragment,{children:[m.jsx(qE,{trigger:m.jsxs(Yt,{variant:"primary",size:"sm",loading:p,disabled:u===0,children:[m.jsx(se,{icon:"lucide:download",size:16,className:"mr-1"}),"Export"]}),items:b}),m.jsxs(Yt,{variant:"error",size:"sm",onClick:d,loading:g,disabled:u===0,children:[m.jsx(se,{icon:"lucide:trash-2",size:16,className:"mr-1"}),"Delete"]}),m.jsx(Yt,{variant:"ghost",size:"sm",onClick:l,children:"Cancel"})]}):m.jsxs(m.Fragment,{children:[m.jsxs(Yt,{variant:"ghost",size:"sm",onClick:l,children:[m.jsx(se,{icon:"lucide:check-square",size:16,className:"mr-1"}),"Select"]}),m.jsx(VD,{options:TL,value:n,onChange:S=>r(S.target.value),selectSize:"sm",className:"w-40"}),m.jsxs("div",{className:"btn-group",children:[m.jsx(Yt,{variant:e==="grid"?"primary":"ghost",size:"sm",onClick:()=>t("grid"),children:m.jsx(se,{icon:"lucide:grid-3x3",size:16})}),m.jsx(Yt,{variant:e==="list"?"primary":"ghost",size:"sm",onClick:()=>t("list"),children:m.jsx(se,{icon:"lucide:list",size:16})})]})]})})]})}const ML={observation:{icon:"lucide:brain",variant:"info",color:"text-info"},summary:{icon:"lucide:file-text",variant:"warning",color:"text-warning"},prompt:{icon:"lucide:message-square",variant:"secondary",color:"text-secondary"},bugfix:{icon:"lucide:bug",variant:"error",color:"text-error"},feature:{icon:"lucide:sparkles",variant:"success",color:"text-success"},refactor:{icon:"lucide:refresh-cw",variant:"accent",color:"text-accent"},discovery:{icon:"lucide:search",variant:"info",color:"text-info"},decision:{icon:"lucide:git-branch",variant:"warning",color:"text-warning"},change:{icon:"lucide:pencil",variant:"secondary",color:"text-secondary"}},LL={icon:"lucide:circle",variant:"secondary",color:"text-secondary"};function RL({memory:e,viewMode:t,onDelete:n,onView:r,selectionMode:i,isSelected:a,onToggleSelection:l}){const u=ML[e.type]||LL,c=t==="grid",f=[{label:"View Details",onClick:()=>r==null?void 0:r(e.id),icon:m.jsx(se,{icon:"lucide:eye",size:16})},{label:"Copy ID",onClick:()=>navigator.clipboard.writeText(String(e.id)),icon:m.jsx(se,{icon:"lucide:copy",size:16})},{label:"Delete",onClick:()=>n==null?void 0:n(e.id),icon:m.jsx(se,{icon:"lucide:trash-2",size:16})}],d=()=>{i&&(l==null||l(e.id))};return m.jsx(wt,{className:`hover:shadow-md transition-shadow ${c?"":"flex flex-row"} ${i?"cursor-pointer":""} ${a?"ring-2 ring-primary":""}`,onClick:d,children:m.jsxs(kt,{className:c?"":"flex flex-row items-start gap-4 flex-1",children:[m.jsxs("div",{className:`flex items-start gap-3 ${c?"mb-3":"flex-1"}`,children:[i?m.jsx("div",{className:"flex items-center justify-center w-8 h-8 flex-shrink-0",children:m.jsx("input",{type:"checkbox",className:"checkbox checkbox-primary",checked:a,onChange:()=>l==null?void 0:l(e.id),onClick:p=>p.stopPropagation()})}):m.jsx("div",{className:`p-2 rounded-lg bg-base-200 ${u.color}`,children:m.jsx(se,{icon:u.icon,size:18})}),m.jsxs("div",{className:"flex-1 min-w-0",children:[m.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[m.jsx(Te,{variant:u.variant,size:"xs",children:e.type}),m.jsxs("span",{className:"text-xs text-base-content/50",children:["#",e.id]})]}),m.jsx("h3",{className:"font-medium text-sm line-clamp-2",children:e.title}),c&&e.facts&&e.facts.length>0?m.jsxs("ul",{className:"text-xs text-base-content/60 mt-1 space-y-0.5 list-disc list-inside",children:[e.facts.slice(0,3).map((p,g)=>m.jsx("li",{className:"line-clamp-1",children:p},g)),e.facts.length>3&&m.jsxs("li",{className:"text-base-content/40",children:["+",e.facts.length-3," more"]})]}):c&&e.content?m.jsx("p",{className:"text-xs text-base-content/60 mt-1 line-clamp-3",children:e.content}):null]})]}),m.jsxs("div",{className:`flex items-center gap-2 ${c?"justify-between mt-3 pt-3 border-t border-base-200":""}`,children:[m.jsxs("div",{className:"flex items-center gap-2 text-xs text-base-content/50",children:[m.jsx(se,{icon:"lucide:folder",size:14}),m.jsx("span",{className:"truncate max-w-24",children:e.project})]}),m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx("span",{className:"text-xs text-base-content/50",children:e.timestamp}),m.jsx(qE,{trigger:m.jsx(Yt,{variant:"ghost",size:"xs",className:"btn-square",children:m.jsx(se,{icon:"lucide:more-vertical",size:14})}),items:f})]})]}),c&&e.concepts&&e.concepts.length>0&&m.jsxs("div",{className:"flex flex-wrap gap-1 mt-2",children:[e.concepts.slice(0,3).map(p=>m.jsx(Te,{variant:"ghost",size:"xs",children:p},p)),e.concepts.length>3&&m.jsxs(Te,{variant:"ghost",size:"xs",children:["+",e.concepts.length-3]})]})]})})}const zL={observation:{icon:"lucide:brain",variant:"info"},summary:{icon:"lucide:file-text",variant:"warning"},prompt:{icon:"lucide:message-square",variant:"secondary"},bugfix:{icon:"lucide:bug",variant:"error"},feature:{icon:"lucide:sparkles",variant:"success"},refactor:{icon:"lucide:refresh-cw",variant:"accent"},discovery:{icon:"lucide:search",variant:"info"},decision:{icon:"lucide:git-branch",variant:"warning"},change:{icon:"lucide:pencil",variant:"secondary"}};function $L({memory:e,onClose:t}){const[n,r]=k.useState("content"),i=e?zL[e.type]||{icon:"lucide:circle",variant:"secondary"}:{icon:"lucide:circle",variant:"secondary"};return m.jsx(WE,{open:!!e,onClose:t,title:"Memory Details",children:e&&m.jsxs("div",{className:"space-y-4",children:[m.jsxs("div",{className:"flex items-start gap-3",children:[m.jsx("div",{className:`p-3 rounded-lg bg-base-200 text-${i.variant}`,children:m.jsx(se,{icon:i.icon,size:24})}),m.jsxs("div",{className:"flex-1 min-w-0",children:[m.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[m.jsx(Te,{variant:i.variant,size:"sm",children:e.type}),m.jsxs("span",{className:"text-sm text-base-content/50",children:["#",e.id]})]}),m.jsx("h3",{className:"text-lg font-semibold",children:e.title}),m.jsxs("div",{className:"flex items-center gap-2 mt-1 text-sm text-base-content/60",children:[m.jsx(se,{icon:"lucide:folder",size:14}),m.jsx("span",{children:e.project}),m.jsx("span",{children:"•"}),m.jsx("span",{children:e.timestamp})]})]})]}),m.jsxs("div",{className:"tabs tabs-boxed",children:[m.jsx("button",{className:`tab ${n==="content"?"tab-active":""}`,onClick:()=>r("content"),children:"Content"}),m.jsx("button",{className:`tab ${n==="metadata"?"tab-active":""}`,onClick:()=>r("metadata"),children:"Metadata"})]}),n==="content"&&m.jsx("div",{className:"bg-base-200 rounded-lg p-4 max-h-96 overflow-y-auto",children:e.facts&&e.facts.length>0?m.jsx("ul",{className:"text-sm space-y-2 list-disc list-inside",children:e.facts.map((a,l)=>m.jsx("li",{children:a},l))}):m.jsx("pre",{className:"text-sm whitespace-pre-wrap break-words",children:e.content||"No content available"})}),n==="metadata"&&m.jsxs("div",{className:"space-y-4",children:[e.concepts&&e.concepts.length>0&&m.jsxs("div",{children:[m.jsx("h4",{className:"text-sm font-medium mb-2",children:"Concepts"}),m.jsx("div",{className:"flex flex-wrap gap-1",children:e.concepts.map(a=>m.jsx(Te,{variant:"ghost",size:"sm",children:a},a))})]}),m.jsxs("div",{children:[m.jsx("h4",{className:"text-sm font-medium mb-2",children:"ID"}),m.jsx("code",{className:"text-xs bg-base-200 px-2 py-1 rounded",children:e.id})]})]})]})})}function FL({onSearch:e,isSearching:t,placeholder:n="Search your memories semantically..."}){const[r,i]=k.useState(""),a=l=>{l.preventDefault(),r.trim()&&e(r.trim())};return m.jsxs("form",{onSubmit:a,className:"flex gap-2",children:[m.jsxs("div",{className:"relative flex-1",children:[m.jsx(se,{icon:"lucide:search",size:20,className:"absolute left-4 top-1/2 -translate-y-1/2 text-base-content/50"}),m.jsx("input",{type:"search",placeholder:n,value:r,onChange:l=>i(l.target.value),className:"input input-bordered w-full pl-12 pr-4"})]}),m.jsx(Yt,{type:"submit",loading:t,disabled:!r.trim(),children:"Search"})]})}const BL={observation:{icon:"lucide:brain",variant:"info",label:"Observation"},summary:{icon:"lucide:file-text",variant:"warning",label:"Summary"},prompt:{icon:"lucide:message-square",variant:"secondary",label:"Prompt"},bugfix:{icon:"lucide:bug",variant:"error",label:"Bug Fix"},feature:{icon:"lucide:sparkles",variant:"success",label:"Feature"},refactor:{icon:"lucide:refresh-cw",variant:"accent",label:"Refactor"},discovery:{icon:"lucide:search",variant:"info",label:"Discovery"},decision:{icon:"lucide:git-branch",variant:"warning",label:"Decision"},change:{icon:"lucide:pencil",variant:"secondary",label:"Change"}},UL={icon:"lucide:circle",variant:"secondary",label:"Unknown"};function WL(e){try{return new Date(e).toLocaleDateString("en-US",{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}catch{return e}}function qL({result:e}){const t=e.obsType||e.type,n=BL[t]||UL,r=Math.round(e.score*100),i=a=>a>=.7?"text-success":a>=.4?"text-warning":"text-base-content/50";return m.jsx(wt,{className:"hover:shadow-md transition-shadow",children:m.jsx(kt,{children:m.jsxs("div",{className:"flex items-start gap-3",children:[m.jsx("div",{className:"p-2 rounded-lg bg-base-200 shrink-0",children:m.jsx(se,{icon:n.icon,size:18})}),m.jsxs("div",{className:"flex-1 min-w-0",children:[m.jsxs("div",{className:"flex items-center gap-2 mb-1 flex-wrap",children:[m.jsx(Te,{variant:n.variant,size:"xs",children:n.label}),m.jsxs("span",{className:"text-xs text-base-content/50",children:["#",e.id]}),e.score>0&&m.jsxs("span",{className:`ml-auto text-xs font-mono ${i(e.score)}`,children:[r,"% match"]})]}),m.jsx("h3",{className:"font-medium truncate",children:e.title}),m.jsx("p",{className:"text-sm text-base-content/60 mt-1 line-clamp-2",children:e.content}),m.jsxs("div",{className:"flex items-center gap-4 mt-3 text-xs text-base-content/50",children:[e.project&&m.jsxs("span",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:folder",size:12}),e.project]}),m.jsxs("span",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:clock",size:12}),WL(e.timestamp)]})]})]}),e.score>0&&m.jsxs("div",{className:"w-16 shrink-0 hidden sm:block",children:[m.jsx("div",{className:"h-2 bg-base-200 rounded-full overflow-hidden",children:m.jsx("div",{className:`h-full rounded-full transition-all ${e.score>=.7?"bg-success":e.score>=.4?"bg-warning":"bg-base-content/30"}`,style:{width:`${r}%`}})}),m.jsx("div",{className:"text-[10px] text-center mt-1 text-base-content/50",children:"similarity"})]})]})})})}const HL=12e4;function VL(){const{selectedProject:e}=Ra(),[t,n]=k.useState(!1),[r,i]=k.useState([]),[a,l]=k.useState(!1),[u,c]=k.useState(null),[f,d]=k.useState(null),p=k.useRef(null),g=k.useRef(!1),y=k.useCallback(async S=>{var C;(C=p.current)==null||C.abort(),g.current=!1;const w=new AbortController;p.current=w;const P=setTimeout(()=>w.abort(),HL);l(!0),n(!0),c(null);try{const O=new URLSearchParams({query:S,limit:"30"});e&&O.set("project",e);const A=await fetch(`/api/search/semantic?${O}`,{signal:w.signal});if(!A.ok)throw new Error(`Search failed with status ${A.status}`);const I=await A.json();i(I.results||[]),d({usedSemantic:I.usedSemantic,vectorDbAvailable:I.vectorDbAvailable})}catch(O){if(g.current)return;O.name==="AbortError"?c("Search timed out. Please try again."):c("Search failed. Please try again."),i([]),d(null)}finally{clearTimeout(P),g.current||l(!1)}},[e]),b=k.useCallback(()=>{var S;g.current=!0,(S=p.current)==null||S.abort(),n(!1),i([]),d(null),c(null),l(!1)},[]);return k.useEffect(()=>()=>{var S;(S=p.current)==null||S.abort()},[]),{isSearchMode:t,searchResults:r,isSearching:a,searchError:u,searchMeta:f,handleSearch:y,handleClearSearch:b}}function Xw(){var $;const[e,t]=k.useState([]),[n,r]=k.useState(!0),[i,a]=k.useState("grid"),[l,u]=k.useState("all"),[c,f]=k.useState(null),[d,p]=k.useState(!1),[g,y]=k.useState(new Set),[b,S]=k.useState(!1),[w,P]=k.useState(!1),C=oC(),{selectedProject:O}=Ra(),{isSearchMode:A,searchResults:I,isSearching:E,searchError:L,searchMeta:F,handleSearch:H,handleClearSearch:R}=VL(),W=k.useCallback(async U=>{d&&(p(!1),y(new Set)),await H(U)},[d,H]),D=k.useCallback(async()=>{r(!0);try{const U=new URLSearchParams;l!=="all"&&U.set("type",l),O&&U.set("project",O),U.set("limit","50");const te=await(await fetch(`/api/observations?${U}`)).json(),fe=te.items||te.observations||[];t(fe.map(ce=>({id:ce.id,type:ce.type||"observation",title:ce.title||"Untitled",content:ce.narrative||ce.content||"",facts:ce.facts?typeof ce.facts=="string"?JSON.parse(ce.facts):ce.facts:[],project:ce.project||"unknown",timestamp:Z(ce.created_at),concepts:ce.concepts?typeof ce.concepts=="string"?JSON.parse(ce.concepts):ce.concepts:[]})))}catch(U){console.error("Failed to fetch memories:",U)}finally{r(!1)}},[l,O]);function Z(U){if(!U)return"";const _=new Date(U),fe=new Date().getTime()-_.getTime();return fe<6e4?"just now":fe<36e5?`${Math.floor(fe/6e4)}m ago`:fe<864e5?`${Math.floor(fe/36e5)}h ago`:_.toLocaleDateString()}k.useEffect(()=>{D()},[D]);const Y=async U=>{if(confirm("Delete this memory?"))try{await fetch(`/api/observation/${U}`,{method:"DELETE"}),t(_=>_.filter(te=>te.id!==U))}catch(_){console.error("Failed to delete:",_)}},Q=U=>{const _=e.find(te=>te.id===U);_&&f(_)},he=U=>{y(_=>{const te=new Set(_);return te.has(U)?te.delete(U):te.add(U),te})},de=()=>{g.size===e.length?y(new Set):y(new Set(e.map(U=>U.id)))},J=()=>{p(!1),y(new Set)},ae=async U=>{if(g.size===0){C.error("No memories selected");return}S(!0);try{const _=Array.from(g).join(","),te=`/api/export?format=${U}&ids=${_}`,ce=await(await fetch(te)).blob(),Se=window.URL.createObjectURL(ce),je=document.createElement("a");je.href=Se,je.download=`pilot-memory-export-${new Date().toISOString().split("T")[0]}.${U==="markdown"?"md":U}`,document.body.appendChild(je),je.click(),document.body.removeChild(je),window.URL.revokeObjectURL(Se),C.success(`Exported ${g.size} memories`)}catch{C.error("Export failed")}finally{S(!1)}},T=async()=>{if(g.size===0){C.error("No memories selected");return}if(confirm(`Delete ${g.size} memories? This cannot be undone.`)){P(!0);try{const U=await fetch("/api/observations/delete",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({ids:Array.from(g)})});if(U.ok){const _=await U.json();C.success(`Deleted ${_.deletedCount} memories`),t(te=>te.filter(fe=>!g.has(fe.id))),y(new Set),p(!1)}else C.error("Delete failed")}catch{C.error("Delete failed")}finally{P(!1)}}};return m.jsxs("div",{className:"space-y-6",children:[m.jsxs("div",{children:[m.jsxs("div",{className:"flex items-center gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Memories"}),m.jsx(iC,{project:O})]}),m.jsx("p",{className:"text-base-content/60",children:A?"Search results":"Browse and manage your stored memories"})]}),m.jsx(FL,{onSearch:W,isSearching:E,placeholder:"Search memories semantically..."}),A&&m.jsx("div",{className:"flex items-center gap-2",children:m.jsxs(Yt,{variant:"ghost",size:"sm",onClick:R,children:[m.jsx(se,{icon:"lucide:x",size:16,className:"mr-1"}),"Clear search"]})}),A&&F&&m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[F.vectorDbAvailable?F.usedSemantic?m.jsxs(Te,{variant:"success",outline:!0,size:"sm",children:[m.jsx(se,{icon:"lucide:brain",size:14,className:"mr-1"}),"Semantic Search Active"]}):m.jsxs(Te,{variant:"warning",outline:!0,size:"sm",children:[m.jsx(se,{icon:"lucide:filter",size:14,className:"mr-1"}),"Filter-only Mode"]}):m.jsxs(Te,{variant:"error",outline:!0,size:"sm",children:[m.jsx(se,{icon:"lucide:alert-triangle",size:14,className:"mr-1"}),"Vector DB Unavailable"]}),m.jsx("span",{className:"text-base-content/50",children:F.usedSemantic?"Results ranked by semantic similarity":F.vectorDbAvailable?"Enter a query for semantic ranking":"Install Chroma for semantic search"})]}),!A&&m.jsx(DL,{viewMode:i,onViewModeChange:a,filterType:l,onFilterTypeChange:u,totalCount:e.length,selectionMode:d,onToggleSelectionMode:()=>d?J():p(!0),selectedCount:g.size,onSelectAll:de,onExport:ae,onDelete:T,isExporting:b,isDeleting:w,allSelected:e.length>0&&g.size===e.length}),L&&!E&&m.jsxs("div",{className:"alert alert-error",children:[m.jsx(se,{icon:"lucide:alert-circle",size:16}),m.jsx("span",{children:L})]}),A?E?m.jsxs("div",{className:"flex flex-col items-center justify-center h-64 gap-3",children:[m.jsx(Yi,{size:"lg"}),m.jsx("span",{className:"text-sm text-base-content/50",children:"Searching memories..."})]}):L?null:I.length===0?m.jsx(Po,{icon:"lucide:search-x",title:"No results found",description:"Try a different query"}):m.jsxs("div",{className:"space-y-3",children:[m.jsxs("div",{className:"text-sm text-base-content/60",children:[I.length," results",(F==null?void 0:F.usedSemantic)&&(($=I[0])==null?void 0:$.score)>0&&m.jsxs("span",{className:"ml-2",children:["(best match: ",Math.round(I[0].score*100),"% similarity)"]})]}),I.map(U=>m.jsx(qL,{result:U},`${U.type}-${U.id}`))]}):n?m.jsx("div",{className:"flex items-center justify-center h-64",children:m.jsx(Yi,{size:"lg"})}):e.length===0?m.jsx(Po,{icon:"lucide:brain",title:"No memories found",description:"Memories will appear here as you use Claude Code"}):m.jsx("div",{className:i==="grid"?"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4":"space-y-3",children:e.map(U=>m.jsx(RL,{memory:U,viewMode:i,onDelete:Y,onView:Q,selectionMode:d,isSelected:g.has(U.id),onToggleSelection:he},U.id))}),m.jsx($L,{memory:c,onClose:()=>f(null)})]})}const Qw={active:{variant:"warning",icon:"lucide:play"},completed:{variant:"success",icon:"lucide:check"},failed:{variant:"error",icon:"lucide:x"}};function KL(e){return new Date(e).toLocaleDateString("en-US",{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}function GL(e,t){if(!t)return"ongoing";const n=t-e,r=Math.floor(n/6e4);if(r<1)return"< 1 min";if(r<60)return`${r} min`;const i=Math.floor(r/60),a=r%60;return`${i}h ${a}m`}function YL({session:e,isExpanded:t,onToggle:n}){const r=Qw[e.status]||Qw.active;return m.jsx(wt,{className:`cursor-pointer hover:shadow-md transition-shadow ${t?"ring-2 ring-primary":""}`,onClick:n,children:m.jsx(kt,{children:m.jsxs("div",{className:"flex items-start gap-4",children:[m.jsx("div",{className:"p-2 rounded-lg bg-base-200",children:m.jsx(se,{icon:r.icon,size:20,className:`text-${r.variant}`})}),m.jsxs("div",{className:"flex-1 min-w-0",children:[m.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[m.jsx(Te,{variant:r.variant,size:"sm",children:e.status}),m.jsxs("span",{className:"text-xs text-base-content/50",children:["#",e.id]})]}),m.jsx("h3",{className:"font-medium line-clamp-1",children:e.user_prompt||e.project||"Untitled Session"}),m.jsxs("div",{className:"flex items-center gap-4 mt-2 text-sm text-base-content/60",children:[m.jsxs("span",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:folder",size:14}),e.project]}),m.jsxs("span",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:calendar",size:14}),KL(e.started_at)]}),m.jsxs("span",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:clock",size:14}),GL(e.started_at_epoch,e.completed_at_epoch)]})]})]}),m.jsxs("div",{className:"flex items-center gap-4 text-sm",children:[m.jsxs("div",{className:"text-center",children:[m.jsx("div",{className:"font-semibold",children:e.observation_count}),m.jsx("div",{className:"text-xs text-base-content/50",children:"observations"})]}),m.jsxs("div",{className:"text-center",children:[m.jsx("div",{className:"font-semibold",children:e.prompt_count}),m.jsx("div",{className:"text-xs text-base-content/50",children:"prompts"})]}),m.jsx(se,{icon:t?"lucide:chevron-up":"lucide:chevron-down",size:20,className:"text-base-content/50"})]})]})})})}const Op={prompt:{icon:"lucide:message-square",color:"text-primary"},observation:{icon:"lucide:brain",color:"text-info"},bugfix:{icon:"lucide:bug",color:"text-error"},feature:{icon:"lucide:sparkles",color:"text-success"},refactor:{icon:"lucide:refresh-cw",color:"text-accent"},discovery:{icon:"lucide:search",color:"text-info"},decision:{icon:"lucide:git-branch",color:"text-warning"},change:{icon:"lucide:pencil",color:"text-secondary"}};function XL(e){return new Date(e).toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit"})}function QL({sessionId:e}){const[t,n]=k.useState(null),[r,i]=k.useState(!0),[a,l]=k.useState(new Set);k.useEffect(()=>{async function f(){i(!0);try{const p=await(await fetch(`/api/sessions/${e}/timeline`)).json();n(p)}catch(d){console.error("Failed to fetch timeline:",d)}finally{i(!1)}}f()},[e]);const u=f=>{l(d=>{const p=new Set(d);return p.has(f)?p.delete(f):p.add(f),p})};if(r)return m.jsx("div",{className:"flex items-center justify-center py-8",children:m.jsx(Yi,{size:"md"})});if(!t)return m.jsx("div",{className:"text-center py-8 text-base-content/50",children:"Failed to load timeline"});const c={active:"badge-success",completed:"badge-info",failed:"badge-error"};return m.jsxs("div",{className:"mt-4 space-y-4",children:[m.jsx(wt,{className:"bg-base-200/50",children:m.jsxs(kt,{className:"py-3",children:[m.jsxs("div",{className:"flex flex-wrap items-center gap-3 mb-2",children:[m.jsx(Te,{variant:"ghost",size:"sm",className:c[t.session.status]||"",children:t.session.status}),m.jsx("span",{className:"text-sm text-base-content/60",children:new Date(t.session.started_at).toLocaleString()}),t.session.completed_at&&m.jsxs("span",{className:"text-sm text-base-content/60",children:["→ ",new Date(t.session.completed_at).toLocaleString()]})]}),m.jsxs("div",{className:"flex flex-wrap gap-4 text-sm",children:[m.jsxs("div",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:message-square",size:14,className:"text-primary"}),m.jsx("span",{className:"font-medium",children:t.stats.prompts}),m.jsx("span",{className:"text-base-content/60",children:"prompts"})]}),m.jsxs("div",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:brain",size:14,className:"text-info"}),m.jsx("span",{className:"font-medium",children:t.stats.observations}),m.jsx("span",{className:"text-base-content/60",children:"observations"})]})]})]})}),t.summary&&m.jsx(wt,{className:"bg-warning/10 border-warning/30",children:m.jsxs(kt,{className:"py-3",children:[m.jsxs("div",{className:"flex items-center gap-2 mb-3",children:[m.jsx(se,{icon:"lucide:file-text",size:16,className:"text-warning"}),m.jsx("span",{className:"font-medium text-sm",children:"Session Summary"}),m.jsx("span",{className:"text-xs text-base-content/50",children:new Date(t.summary.created_at).toLocaleTimeString()})]}),m.jsxs("div",{className:"space-y-3 text-sm",children:[t.summary.request&&m.jsxs("div",{children:[m.jsx("div",{className:"font-medium text-warning mb-1",children:"Request"}),m.jsx("div",{className:"text-base-content/80",children:t.summary.request})]}),t.summary.investigated&&m.jsxs("div",{children:[m.jsx("div",{className:"font-medium text-info mb-1",children:"Investigated"}),m.jsx("div",{className:"text-base-content/80",children:t.summary.investigated})]}),t.summary.learned&&m.jsxs("div",{children:[m.jsx("div",{className:"font-medium text-success mb-1",children:"Learned"}),m.jsx("div",{className:"text-base-content/80",children:t.summary.learned})]}),t.summary.completed&&m.jsxs("div",{children:[m.jsx("div",{className:"font-medium text-primary mb-1",children:"Completed"}),m.jsx("div",{className:"text-base-content/80",children:t.summary.completed})]}),t.summary.next_steps&&m.jsxs("div",{children:[m.jsx("div",{className:"font-medium text-accent mb-1",children:"Next Steps"}),m.jsx("div",{className:"text-base-content/80",children:t.summary.next_steps})]})]})]})}),m.jsxs("div",{className:"ml-8 border-l-2 border-base-300 pl-6 space-y-4",children:[[...t.timeline].reverse().map((f,d)=>{var S,w;const p=`${f.type}-${f.id}`,g=a.has(p),y=f.type==="prompt"?Op.prompt:Op[f.data.type]||Op.observation;let b=[];if(f.type==="observation"&&f.data.concepts)try{b=JSON.parse(f.data.concepts)}catch{}return m.jsxs("div",{className:"relative",children:[m.jsx("div",{className:`absolute -left-9 top-3 w-4 h-4 rounded-full border-2 border-base-100 ${f.type==="prompt"?"bg-primary":"bg-info"}`}),m.jsx(wt,{className:"cursor-pointer hover:shadow-sm transition-shadow",onClick:P=>{P.stopPropagation(),u(p)},children:m.jsx(kt,{className:"py-3",children:m.jsxs("div",{className:"flex items-start gap-3",children:[m.jsx("div",{className:`p-1.5 rounded bg-base-200 ${y.color}`,children:m.jsx(se,{icon:y.icon,size:14})}),m.jsxs("div",{className:"flex-1 min-w-0",children:[m.jsxs("div",{className:"flex flex-wrap items-center gap-2 mb-1",children:[m.jsx(Te,{variant:f.type==="prompt"?"primary":"info",size:"xs",children:f.type==="prompt"?`prompt #${f.data.prompt_number||"?"}`:f.data.type||"observation"}),m.jsx("span",{className:"text-xs text-base-content/50",children:XL(f.timestamp)}),m.jsxs("span",{className:"text-xs text-base-content/40",children:["#",f.id]}),b.length>0&&b.map(P=>m.jsx(Te,{variant:"ghost",size:"xs",className:"text-base-content/50",children:P},P))]}),m.jsx("p",{className:"text-sm font-medium",children:f.type==="prompt"?((S=f.data.prompt_text)==null?void 0:S.length)>100?f.data.prompt_text.substring(0,100)+"...":f.data.prompt_text:f.data.title||"Untitled"}),f.type==="observation"&&f.data.narrative&&m.jsx("p",{className:`text-sm text-base-content/70 mt-1 ${g?"":"line-clamp-3"}`,children:f.data.narrative}),f.type==="prompt"&&((w=f.data.prompt_text)==null?void 0:w.length)>100&&m.jsx("p",{className:`text-sm text-base-content/70 mt-1 ${g?"whitespace-pre-wrap":"line-clamp-3"}`,children:g?f.data.prompt_text:f.data.prompt_text.substring(100)}),f.type==="observation"&&(f.data.files_read||f.data.files_modified)&&m.jsxs("div",{className:"flex flex-wrap gap-2 mt-2",children:[f.data.files_read&&(()=>{try{const P=JSON.parse(f.data.files_read);if(P.length>0)return m.jsxs("span",{className:"text-xs text-base-content/50",children:[m.jsx(se,{icon:"lucide:file",size:12,className:"inline mr-1"}),P.length," read"]})}catch{return null}})(),f.data.files_modified&&(()=>{try{const P=JSON.parse(f.data.files_modified);if(P.length>0)return m.jsxs("span",{className:"text-xs text-base-content/50",children:[m.jsx(se,{icon:"lucide:pencil",size:12,className:"inline mr-1"}),P.length," modified"]})}catch{return null}})()]}),g&&f.type==="observation"&&f.data.text&&m.jsxs("div",{className:"mt-3 pt-3 border-t border-base-200",children:[m.jsx("p",{className:"text-sm text-base-content/70 whitespace-pre-wrap",children:f.data.text}),(f.data.files_read||f.data.files_modified)&&m.jsxs("div",{className:"mt-3 space-y-1",children:[f.data.files_read&&(()=>{try{const P=JSON.parse(f.data.files_read);if(P.length>0)return m.jsxs("div",{children:[m.jsx("span",{className:"text-xs font-medium",children:"Files Read:"}),m.jsx("div",{className:"text-xs text-base-content/50 mt-1",children:P.map((C,O)=>m.jsx("div",{className:"truncate",children:C},O))})]})}catch{return null}})(),f.data.files_modified&&(()=>{try{const P=JSON.parse(f.data.files_modified);if(P.length>0)return m.jsxs("div",{children:[m.jsx("span",{className:"text-xs font-medium",children:"Files Modified:"}),m.jsx("div",{className:"text-xs text-base-content/50 mt-1",children:P.map((C,O)=>m.jsx("div",{className:"truncate",children:C},O))})]})}catch{return null}})()]})]})]}),m.jsx(se,{icon:g?"lucide:chevron-up":"lucide:chevron-down",size:16,className:"text-base-content/30"})]})})})]},p)}),t.timeline.length===0&&m.jsx("div",{className:"text-center py-8 text-base-content/50",children:"No activity in this session"})]})]})}function ZL(){const[e,t]=k.useState([]),[n,r]=k.useState(!0),[i,a]=k.useState(null),{selectedProject:l}=Ra(),u=k.useCallback(async()=>{r(!0);try{const f=new URLSearchParams;f.set("limit","50"),l&&f.set("project",l);const p=await(await fetch(`/api/sessions?${f}`)).json();t(p.items||[])}catch(f){console.error("Failed to fetch sessions:",f)}finally{r(!1)}},[l]);k.useEffect(()=>{u()},[u]);const c=f=>{a(i===f?null:f)};return m.jsxs("div",{className:"space-y-6",children:[m.jsxs("div",{className:"flex items-center justify-between",children:[m.jsxs("div",{children:[m.jsxs("div",{className:"flex items-center gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Sessions"}),m.jsx(iC,{project:l})]}),m.jsx("p",{className:"text-base-content/60",children:"Browse sessions and explore their timeline"})]}),m.jsx("div",{className:"flex items-center gap-2",children:m.jsx(Yt,{variant:"ghost",size:"sm",onClick:u,children:m.jsx(se,{icon:"lucide:refresh-cw",size:16})})})]}),n?m.jsx("div",{className:"flex items-center justify-center h-64",children:m.jsx(Yi,{size:"lg"})}):e.length===0?m.jsx(Po,{icon:"lucide:history",title:"No sessions found",description:"Sessions will appear here as you use Claude Code"}):m.jsx("div",{className:"space-y-4",children:e.map(f=>m.jsxs("div",{children:[m.jsx(YL,{session:f,isExpanded:i===f.id,onToggle:()=>c(f.id)}),i===f.id&&m.jsx(QL,{sessionId:f.id})]},f.id))})]})}function JL(e,t){const n={};return(e[e.length-1]===""?[...e,""]:e).join((n.padRight?" ":"")+","+(n.padLeft===!1?"":" ")).trim()}const eR=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,tR=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,nR={};function Zw(e,t){return(nR.jsx?tR:eR).test(e)}const rR=/[ \t\n\f\r]/g;function iR(e){return typeof e=="object"?e.type==="text"?Jw(e.value):!1:Jw(e)}function Jw(e){return e.replace(rR,"")===""}class Es{constructor(t,n,r){this.normal=n,this.property=t,r&&(this.space=r)}}Es.prototype.normal={};Es.prototype.property={};Es.prototype.space=void 0;function dC(e,t){const n={},r={};for(const i of e)Object.assign(n,i.property),Object.assign(r,i.normal);return new Es(n,r,t)}function Ig(e){return e.toLowerCase()}class Cn{constructor(t,n){this.attribute=n,this.property=t}}Cn.prototype.attribute="";Cn.prototype.booleanish=!1;Cn.prototype.boolean=!1;Cn.prototype.commaOrSpaceSeparated=!1;Cn.prototype.commaSeparated=!1;Cn.prototype.defined=!1;Cn.prototype.mustUseProperty=!1;Cn.prototype.number=!1;Cn.prototype.overloadedBoolean=!1;Cn.prototype.property="";Cn.prototype.spaceSeparated=!1;Cn.prototype.space=void 0;let aR=0;const Ie=za(),bt=za(),Tg=za(),le=za(),Ze=za(),Eo=za(),Dn=za();function za(){return 2**++aR}const Dg=Object.freeze(Object.defineProperty({__proto__:null,boolean:Ie,booleanish:bt,commaOrSpaceSeparated:Dn,commaSeparated:Eo,number:le,overloadedBoolean:Tg,spaceSeparated:Ze},Symbol.toStringTag,{value:"Module"})),Np=Object.keys(Dg);class Gv extends Cn{constructor(t,n,r,i){let a=-1;if(super(t,n),e1(this,"space",i),typeof r=="number")for(;++a4&&n.slice(0,4)==="data"&&cR.test(t)){if(t.charAt(4)==="-"){const a=t.slice(5).replace(t1,hR);r="data"+a.charAt(0).toUpperCase()+a.slice(1)}else{const a=t.slice(4);if(!t1.test(a)){let l=a.replace(uR,dR);l.charAt(0)!=="-"&&(l="-"+l),t="data"+l}}i=Gv}return new i(r,t)}function dR(e){return"-"+e.toLowerCase()}function hR(e){return e.charAt(1).toUpperCase()}const pR=dC([hC,oR,gC,vC,yC],"html"),Yv=dC([hC,lR,gC,vC,yC],"svg");function mR(e){return e.join(" ").trim()}var po={},Ap,n1;function gR(){if(n1)return Ap;n1=1;var e=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,t=/\n/g,n=/^\s*/,r=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,i=/^:\s*/,a=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,l=/^[;\s]*/,u=/^\s+|\s+$/g,c=` -`,f="/",d="*",p="",g="comment",y="declaration";function b(w,P){if(typeof w!="string")throw new TypeError("First argument must be a string");if(!w)return[];P=P||{};var C=1,O=1;function A(Y){var Q=Y.match(t);Q&&(C+=Q.length);var he=Y.lastIndexOf(c);O=~he?Y.length-he:O+Y.length}function I(){var Y={line:C,column:O};return function(Q){return Q.position=new E(Y),H(),Q}}function E(Y){this.start=Y,this.end={line:C,column:O},this.source=P.source}E.prototype.content=w;function L(Y){var Q=new Error(P.source+":"+C+":"+O+": "+Y);if(Q.reason=Y,Q.filename=P.source,Q.line=C,Q.column=O,Q.source=w,!P.silent)throw Q}function F(Y){var Q=Y.exec(w);if(Q){var he=Q[0];return A(he),w=w.slice(he.length),Q}}function H(){F(n)}function R(Y){var Q;for(Y=Y||[];Q=W();)Q!==!1&&Y.push(Q);return Y}function W(){var Y=I();if(!(f!=w.charAt(0)||d!=w.charAt(1))){for(var Q=2;p!=w.charAt(Q)&&(d!=w.charAt(Q)||f!=w.charAt(Q+1));)++Q;if(Q+=2,p===w.charAt(Q-1))return L("End of comment missing");var he=w.slice(2,Q-2);return O+=2,A(he),w=w.slice(Q),O+=2,Y({type:g,comment:he})}}function D(){var Y=I(),Q=F(r);if(Q){if(W(),!F(i))return L("property missing ':'");var he=F(a),de=Y({type:y,property:S(Q[0].replace(e,p)),value:he?S(he[0].replace(e,p)):p});return F(l),de}}function Z(){var Y=[];R(Y);for(var Q;Q=D();)Q!==!1&&(Y.push(Q),R(Y));return Y}return H(),Z()}function S(w){return w?w.replace(u,p):p}return Ap=b,Ap}var r1;function vR(){if(r1)return po;r1=1;var e=po&&po.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(po,"__esModule",{value:!0}),po.default=n;const t=e(gR());function n(r,i){let a=null;if(!r||typeof r!="string")return a;const l=(0,t.default)(r),u=typeof i=="function";return l.forEach(c=>{if(c.type!=="declaration")return;const{property:f,value:d}=c;u?i(f,d,c):d&&(a=a||{},a[f]=d)}),a}return po}var Rl={},i1;function yR(){if(i1)return Rl;i1=1,Object.defineProperty(Rl,"__esModule",{value:!0}),Rl.camelCase=void 0;var e=/^--[a-zA-Z0-9_-]+$/,t=/-([a-z])/g,n=/^[^-]+$/,r=/^-(webkit|moz|ms|o|khtml)-/,i=/^-(ms)-/,a=function(f){return!f||n.test(f)||e.test(f)},l=function(f,d){return d.toUpperCase()},u=function(f,d){return"".concat(d,"-")},c=function(f,d){return d===void 0&&(d={}),a(f)?f:(f=f.toLowerCase(),d.reactCompat?f=f.replace(i,u):f=f.replace(r,u),f.replace(t,l))};return Rl.camelCase=c,Rl}var zl,a1;function xR(){if(a1)return zl;a1=1;var e=zl&&zl.__importDefault||function(i){return i&&i.__esModule?i:{default:i}},t=e(vR()),n=yR();function r(i,a){var l={};return!i||typeof i!="string"||(0,t.default)(i,function(u,c){u&&c&&(l[(0,n.camelCase)(u,a)]=c)}),l}return r.default=r,zl=r,zl}var bR=xR();const wR=yr(bR),xC=bC("end"),Xv=bC("start");function bC(e){return t;function t(n){const r=n&&n.position&&n.position[e]||{};if(typeof r.line=="number"&&r.line>0&&typeof r.column=="number"&&r.column>0)return{line:r.line,column:r.column,offset:typeof r.offset=="number"&&r.offset>-1?r.offset:void 0}}}function kR(e){const t=Xv(e),n=xC(e);if(t&&n)return{start:t,end:n}}function ns(e){return!e||typeof e!="object"?"":"position"in e||"type"in e?o1(e.position):"start"in e||"end"in e?o1(e):"line"in e||"column"in e?Mg(e):""}function Mg(e){return l1(e&&e.line)+":"+l1(e&&e.column)}function o1(e){return Mg(e&&e.start)+"-"+Mg(e&&e.end)}function l1(e){return e&&typeof e=="number"?e:1}class an extends Error{constructor(t,n,r){super(),typeof n=="string"&&(r=n,n=void 0);let i="",a={},l=!1;if(n&&("line"in n&&"column"in n?a={place:n}:"start"in n&&"end"in n?a={place:n}:"type"in n?a={ancestors:[n],place:n.position}:a={...n}),typeof t=="string"?i=t:!a.cause&&t&&(l=!0,i=t.message,a.cause=t),!a.ruleId&&!a.source&&typeof r=="string"){const c=r.indexOf(":");c===-1?a.ruleId=r:(a.source=r.slice(0,c),a.ruleId=r.slice(c+1))}if(!a.place&&a.ancestors&&a.ancestors){const c=a.ancestors[a.ancestors.length-1];c&&(a.place=c.position)}const u=a.place&&"start"in a.place?a.place.start:a.place;this.ancestors=a.ancestors||void 0,this.cause=a.cause||void 0,this.column=u?u.column:void 0,this.fatal=void 0,this.file="",this.message=i,this.line=u?u.line:void 0,this.name=ns(a.place)||"1:1",this.place=a.place||void 0,this.reason=this.message,this.ruleId=a.ruleId||void 0,this.source=a.source||void 0,this.stack=l&&a.cause&&typeof a.cause.stack=="string"?a.cause.stack:"",this.actual=void 0,this.expected=void 0,this.note=void 0,this.url=void 0}}an.prototype.file="";an.prototype.name="";an.prototype.reason="";an.prototype.message="";an.prototype.stack="";an.prototype.column=void 0;an.prototype.line=void 0;an.prototype.ancestors=void 0;an.prototype.cause=void 0;an.prototype.fatal=void 0;an.prototype.place=void 0;an.prototype.ruleId=void 0;an.prototype.source=void 0;const Qv={}.hasOwnProperty,SR=new Map,jR=/[A-Z]/g,PR=new Set(["table","tbody","thead","tfoot","tr"]),ER=new Set(["td","th"]),wC="https://github.com/syntax-tree/hast-util-to-jsx-runtime";function CR(e,t){if(!t||t.Fragment===void 0)throw new TypeError("Expected `Fragment` in options");const n=t.filePath||void 0;let r;if(t.development){if(typeof t.jsxDEV!="function")throw new TypeError("Expected `jsxDEV` in options when `development: true`");r=MR(n,t.jsxDEV)}else{if(typeof t.jsx!="function")throw new TypeError("Expected `jsx` in production options");if(typeof t.jsxs!="function")throw new TypeError("Expected `jsxs` in production options");r=DR(n,t.jsx,t.jsxs)}const i={Fragment:t.Fragment,ancestors:[],components:t.components||{},create:r,elementAttributeNameCase:t.elementAttributeNameCase||"react",evaluater:t.createEvaluater?t.createEvaluater():void 0,filePath:n,ignoreInvalidStyle:t.ignoreInvalidStyle||!1,passKeys:t.passKeys!==!1,passNode:t.passNode||!1,schema:t.space==="svg"?Yv:pR,stylePropertyNameCase:t.stylePropertyNameCase||"dom",tableCellAlignToStyle:t.tableCellAlignToStyle!==!1},a=kC(i,e,void 0);return a&&typeof a!="string"?a:i.create(e,i.Fragment,{children:a||void 0},void 0)}function kC(e,t,n){if(t.type==="element")return OR(e,t,n);if(t.type==="mdxFlowExpression"||t.type==="mdxTextExpression")return NR(e,t);if(t.type==="mdxJsxFlowElement"||t.type==="mdxJsxTextElement")return _R(e,t,n);if(t.type==="mdxjsEsm")return AR(e,t);if(t.type==="root")return IR(e,t,n);if(t.type==="text")return TR(e,t)}function OR(e,t,n){const r=e.schema;let i=r;t.tagName.toLowerCase()==="svg"&&r.space==="html"&&(i=Yv,e.schema=i),e.ancestors.push(t);const a=jC(e,t.tagName,!1),l=LR(e,t);let u=Jv(e,t);return PR.has(t.tagName)&&(u=u.filter(function(c){return typeof c=="string"?!iR(c):!0})),SC(e,l,a,t),Zv(l,u),e.ancestors.pop(),e.schema=r,e.create(t,a,l,n)}function NR(e,t){if(t.data&&t.data.estree&&e.evaluater){const r=t.data.estree.body[0];return r.type,e.evaluater.evaluateExpression(r.expression)}ss(e,t.position)}function AR(e,t){if(t.data&&t.data.estree&&e.evaluater)return e.evaluater.evaluateProgram(t.data.estree);ss(e,t.position)}function _R(e,t,n){const r=e.schema;let i=r;t.name==="svg"&&r.space==="html"&&(i=Yv,e.schema=i),e.ancestors.push(t);const a=t.name===null?e.Fragment:jC(e,t.name,!0),l=RR(e,t),u=Jv(e,t);return SC(e,l,a,t),Zv(l,u),e.ancestors.pop(),e.schema=r,e.create(t,a,l,n)}function IR(e,t,n){const r={};return Zv(r,Jv(e,t)),e.create(t,e.Fragment,r,n)}function TR(e,t){return t.value}function SC(e,t,n,r){typeof n!="string"&&n!==e.Fragment&&e.passNode&&(t.node=r)}function Zv(e,t){if(t.length>0){const n=t.length>1?t:t[0];n&&(e.children=n)}}function DR(e,t,n){return r;function r(i,a,l,u){const f=Array.isArray(l.children)?n:t;return u?f(a,l,u):f(a,l)}}function MR(e,t){return n;function n(r,i,a,l){const u=Array.isArray(a.children),c=Xv(r);return t(i,a,l,u,{columnNumber:c?c.column-1:void 0,fileName:e,lineNumber:c?c.line:void 0},void 0)}}function LR(e,t){const n={};let r,i;for(i in t.properties)if(i!=="children"&&Qv.call(t.properties,i)){const a=zR(e,i,t.properties[i]);if(a){const[l,u]=a;e.tableCellAlignToStyle&&l==="align"&&typeof u=="string"&&ER.has(t.tagName)?r=u:n[l]=u}}if(r){const a=n.style||(n.style={});a[e.stylePropertyNameCase==="css"?"text-align":"textAlign"]=r}return n}function RR(e,t){const n={};for(const r of t.attributes)if(r.type==="mdxJsxExpressionAttribute")if(r.data&&r.data.estree&&e.evaluater){const a=r.data.estree.body[0];a.type;const l=a.expression;l.type;const u=l.properties[0];u.type,Object.assign(n,e.evaluater.evaluateExpression(u.argument))}else ss(e,t.position);else{const i=r.name;let a;if(r.value&&typeof r.value=="object")if(r.value.data&&r.value.data.estree&&e.evaluater){const u=r.value.data.estree.body[0];u.type,a=e.evaluater.evaluateExpression(u.expression)}else ss(e,t.position);else a=r.value===null?!0:r.value;n[i]=a}return n}function Jv(e,t){const n=[];let r=-1;const i=e.passKeys?new Map:SR;for(;++ri?0:i+t:t=t>i?i:t,n=n>0?n:0,r.length<1e4)l=Array.from(r),l.unshift(t,n),e.splice(...l);else for(n&&e.splice(t,n);a0?(Rn(e,e.length,0,t),e):t}const c1={}.hasOwnProperty;function EC(e){const t={};let n=-1;for(;++n13&&n<32||n>126&&n<160||n>55295&&n<57344||n>64975&&n<65008||(n&65535)===65535||(n&65535)===65534||n>1114111?"�":String.fromCodePoint(n)}function hr(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const cn=Zi(/[A-Za-z]/),rn=Zi(/[\dA-Za-z]/),KR=Zi(/[#-'*+\--9=?A-Z^-~]/);function Lc(e){return e!==null&&(e<32||e===127)}const Lg=Zi(/\d/),GR=Zi(/[\dA-Fa-f]/),YR=Zi(/[!-/:-@[-`{-~]/);function Oe(e){return e!==null&&e<-2}function Xe(e){return e!==null&&(e<0||e===32)}function Re(e){return e===-2||e===-1||e===32}const zf=Zi(new RegExp("\\p{P}|\\p{S}","u")),Oa=Zi(/\s/);function Zi(e){return t;function t(n){return n!==null&&n>-1&&e.test(String.fromCharCode(n))}}function Bo(e){const t=[];let n=-1,r=0,i=0;for(;++n55295&&a<57344){const u=e.charCodeAt(n+1);a<56320&&u>56319&&u<57344?(l=String.fromCharCode(a,u),i=1):l="�"}else l=String.fromCharCode(a);l&&(t.push(e.slice(r,n),encodeURIComponent(l)),r=n+i+1,l=""),i&&(n+=i,i=0)}return t.join("")+e.slice(r)}function $e(e,t,n,r){const i=r?r-1:Number.POSITIVE_INFINITY;let a=0;return l;function l(c){return Re(c)?(e.enter(n),u(c)):t(c)}function u(c){return Re(c)&&a++l))return;const L=t.events.length;let F=L,H,R;for(;F--;)if(t.events[F][0]==="exit"&&t.events[F][1].type==="chunkFlow"){if(H){R=t.events[F][1].end;break}H=!0}for(P(r),E=L;EO;){const I=n[A];t.containerState=I[1],I[0].exit.call(t,e)}n.length=O}function C(){i.write([null]),a=void 0,i=void 0,t.containerState._closeFlow=void 0}}function ez(e,t,n){return $e(e,e.attempt(this.parser.constructs.document,t,n),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function Ao(e){if(e===null||Xe(e)||Oa(e))return 1;if(zf(e))return 2}function $f(e,t,n){const r=[];let i=-1;for(;++i1&&e[n][1].end.offset-e[n][1].start.offset>1?2:1;const p={...e[r][1].end},g={...e[n][1].start};d1(p,-c),d1(g,c),l={type:c>1?"strongSequence":"emphasisSequence",start:p,end:{...e[r][1].end}},u={type:c>1?"strongSequence":"emphasisSequence",start:{...e[n][1].start},end:g},a={type:c>1?"strongText":"emphasisText",start:{...e[r][1].end},end:{...e[n][1].start}},i={type:c>1?"strong":"emphasis",start:{...l.start},end:{...u.end}},e[r][1].end={...l.start},e[n][1].start={...u.end},f=[],e[r][1].end.offset-e[r][1].start.offset&&(f=Xn(f,[["enter",e[r][1],t],["exit",e[r][1],t]])),f=Xn(f,[["enter",i,t],["enter",l,t],["exit",l,t],["enter",a,t]]),f=Xn(f,$f(t.parser.constructs.insideSpan.null,e.slice(r+1,n),t)),f=Xn(f,[["exit",a,t],["enter",u,t],["exit",u,t],["exit",i,t]]),e[n][1].end.offset-e[n][1].start.offset?(d=2,f=Xn(f,[["enter",e[n][1],t],["exit",e[n][1],t]])):d=0,Rn(e,r-1,n-r+3,f),n=r+f.length-d-2;break}}for(n=-1;++n0&&Re(E)?$e(e,C,"linePrefix",a+1)(E):C(E)}function C(E){return E===null||Oe(E)?e.check(h1,S,A)(E):(e.enter("codeFlowValue"),O(E))}function O(E){return E===null||Oe(E)?(e.exit("codeFlowValue"),C(E)):(e.consume(E),O)}function A(E){return e.exit("codeFenced"),t(E)}function I(E,L,F){let H=0;return R;function R(Q){return E.enter("lineEnding"),E.consume(Q),E.exit("lineEnding"),W}function W(Q){return E.enter("codeFencedFence"),Re(Q)?$e(E,D,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(Q):D(Q)}function D(Q){return Q===u?(E.enter("codeFencedFenceSequence"),Z(Q)):F(Q)}function Z(Q){return Q===u?(H++,E.consume(Q),Z):H>=l?(E.exit("codeFencedFenceSequence"),Re(Q)?$e(E,Y,"whitespace")(Q):Y(Q)):F(Q)}function Y(Q){return Q===null||Oe(Q)?(E.exit("codeFencedFence"),L(Q)):F(Q)}}}function dz(e,t,n){const r=this;return i;function i(l){return l===null?n(l):(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),a)}function a(l){return r.parser.lazy[r.now().line]?n(l):t(l)}}const Ip={name:"codeIndented",tokenize:pz},hz={partial:!0,tokenize:mz};function pz(e,t,n){const r=this;return i;function i(f){return e.enter("codeIndented"),$e(e,a,"linePrefix",5)(f)}function a(f){const d=r.events[r.events.length-1];return d&&d[1].type==="linePrefix"&&d[2].sliceSerialize(d[1],!0).length>=4?l(f):n(f)}function l(f){return f===null?c(f):Oe(f)?e.attempt(hz,l,c)(f):(e.enter("codeFlowValue"),u(f))}function u(f){return f===null||Oe(f)?(e.exit("codeFlowValue"),l(f)):(e.consume(f),u)}function c(f){return e.exit("codeIndented"),t(f)}}function mz(e,t,n){const r=this;return i;function i(l){return r.parser.lazy[r.now().line]?n(l):Oe(l)?(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),i):$e(e,a,"linePrefix",5)(l)}function a(l){const u=r.events[r.events.length-1];return u&&u[1].type==="linePrefix"&&u[2].sliceSerialize(u[1],!0).length>=4?t(l):Oe(l)?i(l):n(l)}}const gz={name:"codeText",previous:yz,resolve:vz,tokenize:xz};function vz(e){let t=e.length-4,n=3,r,i;if((e[n][1].type==="lineEnding"||e[n][1].type==="space")&&(e[t][1].type==="lineEnding"||e[t][1].type==="space")){for(r=n;++r=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+t+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return tthis.left.length?this.right.slice(this.right.length-r+this.left.length,this.right.length-t+this.left.length).reverse():this.left.slice(t).concat(this.right.slice(this.right.length-r+this.left.length).reverse())}splice(t,n,r){const i=n||0;this.setCursor(Math.trunc(t));const a=this.right.splice(this.right.length-i,Number.POSITIVE_INFINITY);return r&&$l(this.left,r),a.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(t){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(t)}pushMany(t){this.setCursor(Number.POSITIVE_INFINITY),$l(this.left,t)}unshift(t){this.setCursor(0),this.right.push(t)}unshiftMany(t){this.setCursor(0),$l(this.right,t.reverse())}setCursor(t){if(!(t===this.left.length||t>this.left.length&&this.right.length===0||t<0&&this.left.length===0))if(t=4?t(l):e.interrupt(r.parser.constructs.flow,n,t)(l)}}function IC(e,t,n,r,i,a,l,u,c){const f=c||Number.POSITIVE_INFINITY;let d=0;return p;function p(P){return P===60?(e.enter(r),e.enter(i),e.enter(a),e.consume(P),e.exit(a),g):P===null||P===32||P===41||Lc(P)?n(P):(e.enter(r),e.enter(l),e.enter(u),e.enter("chunkString",{contentType:"string"}),S(P))}function g(P){return P===62?(e.enter(a),e.consume(P),e.exit(a),e.exit(i),e.exit(r),t):(e.enter(u),e.enter("chunkString",{contentType:"string"}),y(P))}function y(P){return P===62?(e.exit("chunkString"),e.exit(u),g(P)):P===null||P===60||Oe(P)?n(P):(e.consume(P),P===92?b:y)}function b(P){return P===60||P===62||P===92?(e.consume(P),y):y(P)}function S(P){return!d&&(P===null||P===41||Xe(P))?(e.exit("chunkString"),e.exit(u),e.exit(l),e.exit(r),t(P)):d999||y===null||y===91||y===93&&!c||y===94&&!u&&"_hiddenFootnoteSupport"in l.parser.constructs?n(y):y===93?(e.exit(a),e.enter(i),e.consume(y),e.exit(i),e.exit(r),t):Oe(y)?(e.enter("lineEnding"),e.consume(y),e.exit("lineEnding"),d):(e.enter("chunkString",{contentType:"string"}),p(y))}function p(y){return y===null||y===91||y===93||Oe(y)||u++>999?(e.exit("chunkString"),d(y)):(e.consume(y),c||(c=!Re(y)),y===92?g:p)}function g(y){return y===91||y===92||y===93?(e.consume(y),u++,p):p(y)}}function DC(e,t,n,r,i,a){let l;return u;function u(g){return g===34||g===39||g===40?(e.enter(r),e.enter(i),e.consume(g),e.exit(i),l=g===40?41:g,c):n(g)}function c(g){return g===l?(e.enter(i),e.consume(g),e.exit(i),e.exit(r),t):(e.enter(a),f(g))}function f(g){return g===l?(e.exit(a),c(l)):g===null?n(g):Oe(g)?(e.enter("lineEnding"),e.consume(g),e.exit("lineEnding"),$e(e,f,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),d(g))}function d(g){return g===l||g===null||Oe(g)?(e.exit("chunkString"),f(g)):(e.consume(g),g===92?p:d)}function p(g){return g===l||g===92?(e.consume(g),d):d(g)}}function rs(e,t){let n;return r;function r(i){return Oe(i)?(e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),n=!0,r):Re(i)?$e(e,r,n?"linePrefix":"lineSuffix")(i):t(i)}}const Cz={name:"definition",tokenize:Nz},Oz={partial:!0,tokenize:Az};function Nz(e,t,n){const r=this;let i;return a;function a(y){return e.enter("definition"),l(y)}function l(y){return TC.call(r,e,u,n,"definitionLabel","definitionLabelMarker","definitionLabelString")(y)}function u(y){return i=hr(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)),y===58?(e.enter("definitionMarker"),e.consume(y),e.exit("definitionMarker"),c):n(y)}function c(y){return Xe(y)?rs(e,f)(y):f(y)}function f(y){return IC(e,d,n,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(y)}function d(y){return e.attempt(Oz,p,p)(y)}function p(y){return Re(y)?$e(e,g,"whitespace")(y):g(y)}function g(y){return y===null||Oe(y)?(e.exit("definition"),r.parser.defined.push(i),t(y)):n(y)}}function Az(e,t,n){return r;function r(u){return Xe(u)?rs(e,i)(u):n(u)}function i(u){return DC(e,a,n,"definitionTitle","definitionTitleMarker","definitionTitleString")(u)}function a(u){return Re(u)?$e(e,l,"whitespace")(u):l(u)}function l(u){return u===null||Oe(u)?t(u):n(u)}}const _z={name:"hardBreakEscape",tokenize:Iz};function Iz(e,t,n){return r;function r(a){return e.enter("hardBreakEscape"),e.consume(a),i}function i(a){return Oe(a)?(e.exit("hardBreakEscape"),t(a)):n(a)}}const Tz={name:"headingAtx",resolve:Dz,tokenize:Mz};function Dz(e,t){let n=e.length-2,r=3,i,a;return e[r][1].type==="whitespace"&&(r+=2),n-2>r&&e[n][1].type==="whitespace"&&(n-=2),e[n][1].type==="atxHeadingSequence"&&(r===n-1||n-4>r&&e[n-2][1].type==="whitespace")&&(n-=r+1===n?2:4),n>r&&(i={type:"atxHeadingText",start:e[r][1].start,end:e[n][1].end},a={type:"chunkText",start:e[r][1].start,end:e[n][1].end,contentType:"text"},Rn(e,r,n-r+1,[["enter",i,t],["enter",a,t],["exit",a,t],["exit",i,t]])),e}function Mz(e,t,n){let r=0;return i;function i(d){return e.enter("atxHeading"),a(d)}function a(d){return e.enter("atxHeadingSequence"),l(d)}function l(d){return d===35&&r++<6?(e.consume(d),l):d===null||Xe(d)?(e.exit("atxHeadingSequence"),u(d)):n(d)}function u(d){return d===35?(e.enter("atxHeadingSequence"),c(d)):d===null||Oe(d)?(e.exit("atxHeading"),t(d)):Re(d)?$e(e,u,"whitespace")(d):(e.enter("atxHeadingText"),f(d))}function c(d){return d===35?(e.consume(d),c):(e.exit("atxHeadingSequence"),u(d))}function f(d){return d===null||d===35||Xe(d)?(e.exit("atxHeadingText"),u(d)):(e.consume(d),f)}}const Lz=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],m1=["pre","script","style","textarea"],Rz={concrete:!0,name:"htmlFlow",resolveTo:Fz,tokenize:Bz},zz={partial:!0,tokenize:Wz},$z={partial:!0,tokenize:Uz};function Fz(e){let t=e.length;for(;t--&&!(e[t][0]==="enter"&&e[t][1].type==="htmlFlow"););return t>1&&e[t-2][1].type==="linePrefix"&&(e[t][1].start=e[t-2][1].start,e[t+1][1].start=e[t-2][1].start,e.splice(t-2,2)),e}function Bz(e,t,n){const r=this;let i,a,l,u,c;return f;function f(_){return d(_)}function d(_){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(_),p}function p(_){return _===33?(e.consume(_),g):_===47?(e.consume(_),a=!0,S):_===63?(e.consume(_),i=3,r.interrupt?t:T):cn(_)?(e.consume(_),l=String.fromCharCode(_),w):n(_)}function g(_){return _===45?(e.consume(_),i=2,y):_===91?(e.consume(_),i=5,u=0,b):cn(_)?(e.consume(_),i=4,r.interrupt?t:T):n(_)}function y(_){return _===45?(e.consume(_),r.interrupt?t:T):n(_)}function b(_){const te="CDATA[";return _===te.charCodeAt(u++)?(e.consume(_),u===te.length?r.interrupt?t:D:b):n(_)}function S(_){return cn(_)?(e.consume(_),l=String.fromCharCode(_),w):n(_)}function w(_){if(_===null||_===47||_===62||Xe(_)){const te=_===47,fe=l.toLowerCase();return!te&&!a&&m1.includes(fe)?(i=1,r.interrupt?t(_):D(_)):Lz.includes(l.toLowerCase())?(i=6,te?(e.consume(_),P):r.interrupt?t(_):D(_)):(i=7,r.interrupt&&!r.parser.lazy[r.now().line]?n(_):a?C(_):O(_))}return _===45||rn(_)?(e.consume(_),l+=String.fromCharCode(_),w):n(_)}function P(_){return _===62?(e.consume(_),r.interrupt?t:D):n(_)}function C(_){return Re(_)?(e.consume(_),C):R(_)}function O(_){return _===47?(e.consume(_),R):_===58||_===95||cn(_)?(e.consume(_),A):Re(_)?(e.consume(_),O):R(_)}function A(_){return _===45||_===46||_===58||_===95||rn(_)?(e.consume(_),A):I(_)}function I(_){return _===61?(e.consume(_),E):Re(_)?(e.consume(_),I):O(_)}function E(_){return _===null||_===60||_===61||_===62||_===96?n(_):_===34||_===39?(e.consume(_),c=_,L):Re(_)?(e.consume(_),E):F(_)}function L(_){return _===c?(e.consume(_),c=null,H):_===null||Oe(_)?n(_):(e.consume(_),L)}function F(_){return _===null||_===34||_===39||_===47||_===60||_===61||_===62||_===96||Xe(_)?I(_):(e.consume(_),F)}function H(_){return _===47||_===62||Re(_)?O(_):n(_)}function R(_){return _===62?(e.consume(_),W):n(_)}function W(_){return _===null||Oe(_)?D(_):Re(_)?(e.consume(_),W):n(_)}function D(_){return _===45&&i===2?(e.consume(_),he):_===60&&i===1?(e.consume(_),de):_===62&&i===4?(e.consume(_),$):_===63&&i===3?(e.consume(_),T):_===93&&i===5?(e.consume(_),ae):Oe(_)&&(i===6||i===7)?(e.exit("htmlFlowData"),e.check(zz,U,Z)(_)):_===null||Oe(_)?(e.exit("htmlFlowData"),Z(_)):(e.consume(_),D)}function Z(_){return e.check($z,Y,U)(_)}function Y(_){return e.enter("lineEnding"),e.consume(_),e.exit("lineEnding"),Q}function Q(_){return _===null||Oe(_)?Z(_):(e.enter("htmlFlowData"),D(_))}function he(_){return _===45?(e.consume(_),T):D(_)}function de(_){return _===47?(e.consume(_),l="",J):D(_)}function J(_){if(_===62){const te=l.toLowerCase();return m1.includes(te)?(e.consume(_),$):D(_)}return cn(_)&&l.length<8?(e.consume(_),l+=String.fromCharCode(_),J):D(_)}function ae(_){return _===93?(e.consume(_),T):D(_)}function T(_){return _===62?(e.consume(_),$):_===45&&i===2?(e.consume(_),T):D(_)}function $(_){return _===null||Oe(_)?(e.exit("htmlFlowData"),U(_)):(e.consume(_),$)}function U(_){return e.exit("htmlFlow"),t(_)}}function Uz(e,t,n){const r=this;return i;function i(l){return Oe(l)?(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),a):n(l)}function a(l){return r.parser.lazy[r.now().line]?n(l):t(l)}}function Wz(e,t,n){return r;function r(i){return e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),e.attempt(Cs,t,n)}}const qz={name:"htmlText",tokenize:Hz};function Hz(e,t,n){const r=this;let i,a,l;return u;function u(T){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(T),c}function c(T){return T===33?(e.consume(T),f):T===47?(e.consume(T),I):T===63?(e.consume(T),O):cn(T)?(e.consume(T),F):n(T)}function f(T){return T===45?(e.consume(T),d):T===91?(e.consume(T),a=0,b):cn(T)?(e.consume(T),C):n(T)}function d(T){return T===45?(e.consume(T),y):n(T)}function p(T){return T===null?n(T):T===45?(e.consume(T),g):Oe(T)?(l=p,de(T)):(e.consume(T),p)}function g(T){return T===45?(e.consume(T),y):p(T)}function y(T){return T===62?he(T):T===45?g(T):p(T)}function b(T){const $="CDATA[";return T===$.charCodeAt(a++)?(e.consume(T),a===$.length?S:b):n(T)}function S(T){return T===null?n(T):T===93?(e.consume(T),w):Oe(T)?(l=S,de(T)):(e.consume(T),S)}function w(T){return T===93?(e.consume(T),P):S(T)}function P(T){return T===62?he(T):T===93?(e.consume(T),P):S(T)}function C(T){return T===null||T===62?he(T):Oe(T)?(l=C,de(T)):(e.consume(T),C)}function O(T){return T===null?n(T):T===63?(e.consume(T),A):Oe(T)?(l=O,de(T)):(e.consume(T),O)}function A(T){return T===62?he(T):O(T)}function I(T){return cn(T)?(e.consume(T),E):n(T)}function E(T){return T===45||rn(T)?(e.consume(T),E):L(T)}function L(T){return Oe(T)?(l=L,de(T)):Re(T)?(e.consume(T),L):he(T)}function F(T){return T===45||rn(T)?(e.consume(T),F):T===47||T===62||Xe(T)?H(T):n(T)}function H(T){return T===47?(e.consume(T),he):T===58||T===95||cn(T)?(e.consume(T),R):Oe(T)?(l=H,de(T)):Re(T)?(e.consume(T),H):he(T)}function R(T){return T===45||T===46||T===58||T===95||rn(T)?(e.consume(T),R):W(T)}function W(T){return T===61?(e.consume(T),D):Oe(T)?(l=W,de(T)):Re(T)?(e.consume(T),W):H(T)}function D(T){return T===null||T===60||T===61||T===62||T===96?n(T):T===34||T===39?(e.consume(T),i=T,Z):Oe(T)?(l=D,de(T)):Re(T)?(e.consume(T),D):(e.consume(T),Y)}function Z(T){return T===i?(e.consume(T),i=void 0,Q):T===null?n(T):Oe(T)?(l=Z,de(T)):(e.consume(T),Z)}function Y(T){return T===null||T===34||T===39||T===60||T===61||T===96?n(T):T===47||T===62||Xe(T)?H(T):(e.consume(T),Y)}function Q(T){return T===47||T===62||Xe(T)?H(T):n(T)}function he(T){return T===62?(e.consume(T),e.exit("htmlTextData"),e.exit("htmlText"),t):n(T)}function de(T){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(T),e.exit("lineEnding"),J}function J(T){return Re(T)?$e(e,ae,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(T):ae(T)}function ae(T){return e.enter("htmlTextData"),l(T)}}const ny={name:"labelEnd",resolveAll:Yz,resolveTo:Xz,tokenize:Qz},Vz={tokenize:Zz},Kz={tokenize:Jz},Gz={tokenize:e3};function Yz(e){let t=-1;const n=[];for(;++t=3&&(f===null||Oe(f))?(e.exit("thematicBreak"),t(f)):n(f)}function c(f){return f===i?(e.consume(f),r++,c):(e.exit("thematicBreakSequence"),Re(f)?$e(e,u,"whitespace")(f):u(f))}}const Sn={continuation:{tokenize:c3},exit:d3,name:"list",tokenize:u3},l3={partial:!0,tokenize:h3},s3={partial:!0,tokenize:f3};function u3(e,t,n){const r=this,i=r.events[r.events.length-1];let a=i&&i[1].type==="linePrefix"?i[2].sliceSerialize(i[1],!0).length:0,l=0;return u;function u(y){const b=r.containerState.type||(y===42||y===43||y===45?"listUnordered":"listOrdered");if(b==="listUnordered"?!r.containerState.marker||y===r.containerState.marker:Lg(y)){if(r.containerState.type||(r.containerState.type=b,e.enter(b,{_container:!0})),b==="listUnordered")return e.enter("listItemPrefix"),y===42||y===45?e.check(Oc,n,f)(y):f(y);if(!r.interrupt||y===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),c(y)}return n(y)}function c(y){return Lg(y)&&++l<10?(e.consume(y),c):(!r.interrupt||l<2)&&(r.containerState.marker?y===r.containerState.marker:y===41||y===46)?(e.exit("listItemValue"),f(y)):n(y)}function f(y){return e.enter("listItemMarker"),e.consume(y),e.exit("listItemMarker"),r.containerState.marker=r.containerState.marker||y,e.check(Cs,r.interrupt?n:d,e.attempt(l3,g,p))}function d(y){return r.containerState.initialBlankLine=!0,a++,g(y)}function p(y){return Re(y)?(e.enter("listItemPrefixWhitespace"),e.consume(y),e.exit("listItemPrefixWhitespace"),g):n(y)}function g(y){return r.containerState.size=a+r.sliceSerialize(e.exit("listItemPrefix"),!0).length,t(y)}}function c3(e,t,n){const r=this;return r.containerState._closeFlow=void 0,e.check(Cs,i,a);function i(u){return r.containerState.furtherBlankLines=r.containerState.furtherBlankLines||r.containerState.initialBlankLine,$e(e,t,"listItemIndent",r.containerState.size+1)(u)}function a(u){return r.containerState.furtherBlankLines||!Re(u)?(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,l(u)):(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,e.attempt(s3,t,l)(u))}function l(u){return r.containerState._closeFlow=!0,r.interrupt=void 0,$e(e,e.attempt(Sn,t,n),"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(u)}}function f3(e,t,n){const r=this;return $e(e,i,"listItemIndent",r.containerState.size+1);function i(a){const l=r.events[r.events.length-1];return l&&l[1].type==="listItemIndent"&&l[2].sliceSerialize(l[1],!0).length===r.containerState.size?t(a):n(a)}}function d3(e){e.exit(this.containerState.type)}function h3(e,t,n){const r=this;return $e(e,i,"listItemPrefixWhitespace",r.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function i(a){const l=r.events[r.events.length-1];return!Re(a)&&l&&l[1].type==="listItemPrefixWhitespace"?t(a):n(a)}}const g1={name:"setextUnderline",resolveTo:p3,tokenize:m3};function p3(e,t){let n=e.length,r,i,a;for(;n--;)if(e[n][0]==="enter"){if(e[n][1].type==="content"){r=n;break}e[n][1].type==="paragraph"&&(i=n)}else e[n][1].type==="content"&&e.splice(n,1),!a&&e[n][1].type==="definition"&&(a=n);const l={type:"setextHeading",start:{...e[r][1].start},end:{...e[e.length-1][1].end}};return e[i][1].type="setextHeadingText",a?(e.splice(i,0,["enter",l,t]),e.splice(a+1,0,["exit",e[r][1],t]),e[r][1].end={...e[a][1].end}):e[r][1]=l,e.push(["exit",l,t]),e}function m3(e,t,n){const r=this;let i;return a;function a(f){let d=r.events.length,p;for(;d--;)if(r.events[d][1].type!=="lineEnding"&&r.events[d][1].type!=="linePrefix"&&r.events[d][1].type!=="content"){p=r.events[d][1].type==="paragraph";break}return!r.parser.lazy[r.now().line]&&(r.interrupt||p)?(e.enter("setextHeadingLine"),i=f,l(f)):n(f)}function l(f){return e.enter("setextHeadingLineSequence"),u(f)}function u(f){return f===i?(e.consume(f),u):(e.exit("setextHeadingLineSequence"),Re(f)?$e(e,c,"lineSuffix")(f):c(f))}function c(f){return f===null||Oe(f)?(e.exit("setextHeadingLine"),t(f)):n(f)}}const g3={tokenize:v3};function v3(e){const t=this,n=e.attempt(Cs,r,e.attempt(this.parser.constructs.flowInitial,i,$e(e,e.attempt(this.parser.constructs.flow,i,e.attempt(kz,i)),"linePrefix")));return n;function r(a){if(a===null){e.consume(a);return}return e.enter("lineEndingBlank"),e.consume(a),e.exit("lineEndingBlank"),t.currentConstruct=void 0,n}function i(a){if(a===null){e.consume(a);return}return e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),t.currentConstruct=void 0,n}}const y3={resolveAll:LC()},x3=MC("string"),b3=MC("text");function MC(e){return{resolveAll:LC(e==="text"?w3:void 0),tokenize:t};function t(n){const r=this,i=this.parser.constructs[e],a=n.attempt(i,l,u);return l;function l(d){return f(d)?a(d):u(d)}function u(d){if(d===null){n.consume(d);return}return n.enter("data"),n.consume(d),c}function c(d){return f(d)?(n.exit("data"),a(d)):(n.consume(d),c)}function f(d){if(d===null)return!0;const p=i[d];let g=-1;if(p)for(;++g-1){const u=l[0];typeof u=="string"?l[0]=u.slice(r):l.shift()}a>0&&l.push(e[i].slice(0,a))}return l}function D3(e,t){let n=-1;const r=[];let i;for(;++n<\/script>",o=o.removeChild(o.firstChild)):typeof v.is=="string"?o=N.createElement(h,{is:v.is}):(o=N.createElement(h),h==="select"&&(N=o,v.multiple?N.multiple=!0:v.size&&(N.size=v.size))):o=N.createElementNS(o,h),o[Sr]=s,o[xl]=v,Jb(o,s,!1,!1),s.stateNode=o;e:{switch(N=wr(h,v),h){case"dialog":et("cancel",o),et("close",o),b=v;break;case"iframe":case"object":case"embed":et("load",o),b=v;break;case"video":case"audio":for(b=0;bho&&(s.flags|=128,v=!0,Nl(j,!1),s.lanes=4194304)}else{if(!v)if(o=Iu(N),o!==null){if(s.flags|=128,v=!0,h=o.updateQueue,h!==null&&(s.updateQueue=h,s.flags|=4),Nl(j,!0),j.tail===null&&j.tailMode==="hidden"&&!N.alternate&&!it)return Jt(s),null}else 2*gt()-j.renderingStartTime>ho&&h!==1073741824&&(s.flags|=128,v=!0,Nl(j,!1),s.lanes=4194304);j.isBackwards?(N.sibling=s.child,s.child=N):(h=j.last,h!==null?h.sibling=N:s.child=N,j.last=N)}return j.tail!==null?(s=j.tail,j.rendering=s,j.tail=s.sibling,j.renderingStartTime=gt(),s.sibling=null,h=lt.current,Qe(lt,v?h&1|2:h&1),s):(Jt(s),null);case 22:case 23:return fp(),v=s.memoizedState!==null,o!==null&&o.memoizedState!==null!==v&&(s.flags|=8192),v&&(s.mode&1)!==0?(Tn&1073741824)!==0&&(Jt(s),s.subtreeFlags&6&&(s.flags|=8192)):Jt(s),null;case 24:return null;case 25:return null}throw Error(n(156,s.tag))}function fM(o,s){switch(bh(s),s.tag){case 1:return yn(s.type)&&wu(),o=s.flags,o&65536?(s.flags=o&-65537|128,s):null;case 3:return so(),tt(vn),tt(Qt),Th(),o=s.flags,(o&65536)!==0&&(o&128)===0?(s.flags=o&-65537|128,s):null;case 5:return _h(s),null;case 13:if(tt(lt),o=s.memoizedState,o!==null&&o.dehydrated!==null){if(s.alternate===null)throw Error(n(340));io()}return o=s.flags,o&65536?(s.flags=o&-65537|128,s):null;case 19:return tt(lt),null;case 4:return so(),null;case 10:return Eh(s.type._context),null;case 22:case 23:return fp(),null;case 24:return null;default:return null}}var Bu=!1,en=!1,dM=typeof WeakSet=="function"?WeakSet:Set,ve=null;function co(o,s){var h=o.ref;if(h!==null)if(typeof h=="function")try{h(null)}catch(v){dt(o,s,v)}else h.current=null}function Jh(o,s,h){try{h()}catch(v){dt(o,s,v)}}var nw=!1;function hM(o,s){if(fh=lu,o=M0(),rh(o)){if("selectionStart"in o)var h={start:o.selectionStart,end:o.selectionEnd};else e:{h=(h=o.ownerDocument)&&h.defaultView||window;var v=h.getSelection&&h.getSelection();if(v&&v.rangeCount!==0){h=v.anchorNode;var b=v.anchorOffset,j=v.focusNode;v=v.focusOffset;try{h.nodeType,j.nodeType}catch{h=null;break e}var N=0,D=-1,z=-1,K=0,re=0,oe=o,ne=null;t:for(;;){for(var me;oe!==h||b!==0&&oe.nodeType!==3||(D=N+b),oe!==j||v!==0&&oe.nodeType!==3||(z=N+v),oe.nodeType===3&&(N+=oe.nodeValue.length),(me=oe.firstChild)!==null;)ne=oe,oe=me;for(;;){if(oe===o)break t;if(ne===h&&++K===b&&(D=N),ne===j&&++re===v&&(z=N),(me=oe.nextSibling)!==null)break;oe=ne,ne=oe.parentNode}oe=me}h=D===-1||z===-1?null:{start:D,end:z}}else h=null}h=h||{start:0,end:0}}else h=null;for(dh={focusedElem:o,selectionRange:h},lu=!1,ve=s;ve!==null;)if(s=ve,o=s.child,(s.subtreeFlags&1028)!==0&&o!==null)o.return=s,ve=o;else for(;ve!==null;){s=ve;try{var xe=s.alternate;if((s.flags&1024)!==0)switch(s.tag){case 0:case 11:case 15:break;case 1:if(xe!==null){var be=xe.memoizedProps,vt=xe.memoizedState,q=s.stateNode,B=q.getSnapshotBeforeUpdate(s.elementType===s.type?be:lr(s.type,be),vt);q.__reactInternalSnapshotBeforeUpdate=B}break;case 3:var V=s.stateNode.containerInfo;V.nodeType===1?V.textContent="":V.nodeType===9&&V.documentElement&&V.removeChild(V.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(n(163))}}catch(ue){dt(s,s.return,ue)}if(o=s.sibling,o!==null){o.return=s.return,ve=o;break}ve=s.return}return xe=nw,nw=!1,xe}function Al(o,s,h){var v=s.updateQueue;if(v=v!==null?v.lastEffect:null,v!==null){var b=v=v.next;do{if((b.tag&o)===o){var j=b.destroy;b.destroy=void 0,j!==void 0&&Jh(s,h,j)}b=b.next}while(b!==v)}}function Uu(o,s){if(s=s.updateQueue,s=s!==null?s.lastEffect:null,s!==null){var h=s=s.next;do{if((h.tag&o)===o){var v=h.create;h.destroy=v()}h=h.next}while(h!==s)}}function ep(o){var s=o.ref;if(s!==null){var h=o.stateNode;switch(o.tag){case 5:o=h;break;default:o=h}typeof s=="function"?s(o):s.current=o}}function rw(o){var s=o.alternate;s!==null&&(o.alternate=null,rw(s)),o.child=null,o.deletions=null,o.sibling=null,o.tag===5&&(s=o.stateNode,s!==null&&(delete s[Sr],delete s[xl],delete s[gh],delete s[Y2],delete s[X2])),o.stateNode=null,o.return=null,o.dependencies=null,o.memoizedProps=null,o.memoizedState=null,o.pendingProps=null,o.stateNode=null,o.updateQueue=null}function iw(o){return o.tag===5||o.tag===3||o.tag===4}function aw(o){e:for(;;){for(;o.sibling===null;){if(o.return===null||iw(o.return))return null;o=o.return}for(o.sibling.return=o.return,o=o.sibling;o.tag!==5&&o.tag!==6&&o.tag!==18;){if(o.flags&2||o.child===null||o.tag===4)continue e;o.child.return=o,o=o.child}if(!(o.flags&2))return o.stateNode}}function tp(o,s,h){var v=o.tag;if(v===5||v===6)o=o.stateNode,s?h.nodeType===8?h.parentNode.insertBefore(o,s):h.insertBefore(o,s):(h.nodeType===8?(s=h.parentNode,s.insertBefore(o,h)):(s=h,s.appendChild(o)),h=h._reactRootContainer,h!=null||s.onclick!==null||(s.onclick=xu));else if(v!==4&&(o=o.child,o!==null))for(tp(o,s,h),o=o.sibling;o!==null;)tp(o,s,h),o=o.sibling}function np(o,s,h){var v=o.tag;if(v===5||v===6)o=o.stateNode,s?h.insertBefore(o,s):h.appendChild(o);else if(v!==4&&(o=o.child,o!==null))for(np(o,s,h),o=o.sibling;o!==null;)np(o,s,h),o=o.sibling}var Ht=null,sr=!1;function Mi(o,s,h){for(h=h.child;h!==null;)ow(o,s,h),h=h.sibling}function ow(o,s,h){if(kr&&typeof kr.onCommitFiberUnmount=="function")try{kr.onCommitFiberUnmount(tu,h)}catch{}switch(h.tag){case 5:en||co(h,s);case 6:var v=Ht,b=sr;Ht=null,Mi(o,s,h),Ht=v,sr=b,Ht!==null&&(sr?(o=Ht,h=h.stateNode,o.nodeType===8?o.parentNode.removeChild(h):o.removeChild(h)):Ht.removeChild(h.stateNode));break;case 18:Ht!==null&&(sr?(o=Ht,h=h.stateNode,o.nodeType===8?mh(o.parentNode,h):o.nodeType===1&&mh(o,h),sl(o)):mh(Ht,h.stateNode));break;case 4:v=Ht,b=sr,Ht=h.stateNode.containerInfo,sr=!0,Mi(o,s,h),Ht=v,sr=b;break;case 0:case 11:case 14:case 15:if(!en&&(v=h.updateQueue,v!==null&&(v=v.lastEffect,v!==null))){b=v=v.next;do{var j=b,N=j.destroy;j=j.tag,N!==void 0&&((j&2)!==0||(j&4)!==0)&&Jh(h,s,N),b=b.next}while(b!==v)}Mi(o,s,h);break;case 1:if(!en&&(co(h,s),v=h.stateNode,typeof v.componentWillUnmount=="function"))try{v.props=h.memoizedProps,v.state=h.memoizedState,v.componentWillUnmount()}catch(D){dt(h,s,D)}Mi(o,s,h);break;case 21:Mi(o,s,h);break;case 22:h.mode&1?(en=(v=en)||h.memoizedState!==null,Mi(o,s,h),en=v):Mi(o,s,h);break;default:Mi(o,s,h)}}function lw(o){var s=o.updateQueue;if(s!==null){o.updateQueue=null;var h=o.stateNode;h===null&&(h=o.stateNode=new dM),s.forEach(function(v){var b=kM.bind(null,o,v);h.has(v)||(h.add(v),v.then(b,b))})}}function ur(o,s){var h=s.deletions;if(h!==null)for(var v=0;vb&&(b=N),v&=~j}if(v=b,v=gt()-v,v=(120>v?120:480>v?480:1080>v?1080:1920>v?1920:3e3>v?3e3:4320>v?4320:1960*mM(v/1960))-v,10o?16:o,Li===null)var v=!1;else{if(o=Li,Li=null,Ku=0,(Be&6)!==0)throw Error(n(331));var b=Be;for(Be|=4,ve=o.current;ve!==null;){var j=ve,N=j.child;if((ve.flags&16)!==0){var D=j.deletions;if(D!==null){for(var z=0;zgt()-ap?ha(o,0):ip|=h),wn(o,s)}function bw(o,s){s===0&&((o.mode&1)===0?s=1:(s=ru,ru<<=1,(ru&130023424)===0&&(ru=4194304)));var h=sn();o=Gr(o,s),o!==null&&(rl(o,s,h),wn(o,h))}function wM(o){var s=o.memoizedState,h=0;s!==null&&(h=s.retryLane),bw(o,h)}function kM(o,s){var h=0;switch(o.tag){case 13:var v=o.stateNode,b=o.memoizedState;b!==null&&(h=b.retryLane);break;case 19:v=o.stateNode;break;default:throw Error(n(314))}v!==null&&v.delete(s),bw(o,h)}var ww;ww=function(o,s,h){if(o!==null)if(o.memoizedProps!==s.pendingProps||vn.current)xn=!0;else{if((o.lanes&h)===0&&(s.flags&128)===0)return xn=!1,uM(o,s,h);xn=(o.flags&131072)!==0}else xn=!1,it&&(s.flags&1048576)!==0&&eb(s,Pu,s.index);switch(s.lanes=0,s.tag){case 2:var v=s.type;Fu(o,s),o=s.pendingProps;var b=to(s,Qt.current);lo(s,h),b=Lh(null,s,v,o,b,h);var j=Rh();return s.flags|=1,typeof b=="object"&&b!==null&&typeof b.render=="function"&&b.$$typeof===void 0?(s.tag=1,s.memoizedState=null,s.updateQueue=null,yn(v)?(j=!0,ku(s)):j=!1,s.memoizedState=b.state!==null&&b.state!==void 0?b.state:null,Nh(s),b.updater=zu,s.stateNode=b,b._reactInternals=s,Wh(s,v,o,h),s=Kh(null,s,v,!0,j,h)):(s.tag=0,it&&j&&xh(s),ln(null,s,b,h),s=s.child),s;case 16:v=s.elementType;e:{switch(Fu(o,s),o=s.pendingProps,b=v._init,v=b(v._payload),s.type=v,b=s.tag=jM(v),o=lr(v,o),b){case 0:s=Vh(null,s,v,o,h);break e;case 1:s=Kb(null,s,v,o,h);break e;case 11:s=Ub(null,s,v,o,h);break e;case 14:s=Wb(null,s,v,lr(v.type,o),h);break e}throw Error(n(306,v,""))}return s;case 0:return v=s.type,b=s.pendingProps,b=s.elementType===v?b:lr(v,b),Vh(o,s,v,b,h);case 1:return v=s.type,b=s.pendingProps,b=s.elementType===v?b:lr(v,b),Kb(o,s,v,b,h);case 3:e:{if(Gb(s),o===null)throw Error(n(387));v=s.pendingProps,j=s.memoizedState,b=j.element,ub(o,s),_u(s,v,null,h);var N=s.memoizedState;if(v=N.element,j.isDehydrated)if(j={element:v,isDehydrated:!1,cache:N.cache,pendingSuspenseBoundaries:N.pendingSuspenseBoundaries,transitions:N.transitions},s.updateQueue.baseState=j,s.memoizedState=j,s.flags&256){b=uo(Error(n(423)),s),s=Yb(o,s,v,h,b);break e}else if(v!==b){b=uo(Error(n(424)),s),s=Yb(o,s,v,h,b);break e}else for(In=Oi(s.stateNode.containerInfo.firstChild),_n=s,it=!0,or=null,h=lb(s,null,v,h),s.child=h;h;)h.flags=h.flags&-3|4096,h=h.sibling;else{if(io(),v===b){s=Xr(o,s,h);break e}ln(o,s,v,h)}s=s.child}return s;case 5:return db(s),o===null&&kh(s),v=s.type,b=s.pendingProps,j=o!==null?o.memoizedProps:null,N=b.children,hh(v,b)?N=null:j!==null&&hh(v,j)&&(s.flags|=32),Vb(o,s),ln(o,s,N,h),s.child;case 6:return o===null&&kh(s),null;case 13:return Xb(o,s,h);case 4:return Ah(s,s.stateNode.containerInfo),v=s.pendingProps,o===null?s.child=ao(s,null,v,h):ln(o,s,v,h),s.child;case 11:return v=s.type,b=s.pendingProps,b=s.elementType===v?b:lr(v,b),Ub(o,s,v,b,h);case 7:return ln(o,s,s.pendingProps,h),s.child;case 8:return ln(o,s,s.pendingProps.children,h),s.child;case 12:return ln(o,s,s.pendingProps.children,h),s.child;case 10:e:{if(v=s.type._context,b=s.pendingProps,j=s.memoizedProps,N=b.value,Qe(Ou,v._currentValue),v._currentValue=N,j!==null)if(ar(j.value,N)){if(j.children===b.children&&!vn.current){s=Xr(o,s,h);break e}}else for(j=s.child,j!==null&&(j.return=s);j!==null;){var D=j.dependencies;if(D!==null){N=j.child;for(var z=D.firstContext;z!==null;){if(z.context===v){if(j.tag===1){z=Yr(-1,h&-h),z.tag=2;var K=j.updateQueue;if(K!==null){K=K.shared;var re=K.pending;re===null?z.next=z:(z.next=re.next,re.next=z),K.pending=z}}j.lanes|=h,z=j.alternate,z!==null&&(z.lanes|=h),Ch(j.return,h,s),D.lanes|=h;break}z=z.next}}else if(j.tag===10)N=j.type===s.type?null:j.child;else if(j.tag===18){if(N=j.return,N===null)throw Error(n(341));N.lanes|=h,D=N.alternate,D!==null&&(D.lanes|=h),Ch(N,h,s),N=j.sibling}else N=j.child;if(N!==null)N.return=j;else for(N=j;N!==null;){if(N===s){N=null;break}if(j=N.sibling,j!==null){j.return=N.return,N=j;break}N=N.return}j=N}ln(o,s,b.children,h),s=s.child}return s;case 9:return b=s.type,v=s.pendingProps.children,lo(s,h),b=Wn(b),v=v(b),s.flags|=1,ln(o,s,v,h),s.child;case 14:return v=s.type,b=lr(v,s.pendingProps),b=lr(v.type,b),Wb(o,s,v,b,h);case 15:return qb(o,s,s.type,s.pendingProps,h);case 17:return v=s.type,b=s.pendingProps,b=s.elementType===v?b:lr(v,b),Fu(o,s),s.tag=1,yn(v)?(o=!0,ku(s)):o=!1,lo(s,h),Db(s,v,b),Wh(s,v,b,h),Kh(null,s,v,!0,o,h);case 19:return Zb(o,s,h);case 22:return Hb(o,s,h)}throw Error(n(156,s.tag))};function kw(o,s){return t0(o,s)}function SM(o,s,h,v){this.tag=o,this.key=h,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=s,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=v,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Vn(o,s,h,v){return new SM(o,s,h,v)}function hp(o){return o=o.prototype,!(!o||!o.isReactComponent)}function jM(o){if(typeof o=="function")return hp(o)?1:0;if(o!=null){if(o=o.$$typeof,o===M)return 11;if(o===Q)return 14}return 2}function $i(o,s){var h=o.alternate;return h===null?(h=Vn(o.tag,s,o.key,o.mode),h.elementType=o.elementType,h.type=o.type,h.stateNode=o.stateNode,h.alternate=o,o.alternate=h):(h.pendingProps=s,h.type=o.type,h.flags=0,h.subtreeFlags=0,h.deletions=null),h.flags=o.flags&14680064,h.childLanes=o.childLanes,h.lanes=o.lanes,h.child=o.child,h.memoizedProps=o.memoizedProps,h.memoizedState=o.memoizedState,h.updateQueue=o.updateQueue,s=o.dependencies,h.dependencies=s===null?null:{lanes:s.lanes,firstContext:s.firstContext},h.sibling=o.sibling,h.index=o.index,h.ref=o.ref,h}function Qu(o,s,h,v,b,j){var N=2;if(v=o,typeof o=="function")hp(o)&&(N=1);else if(typeof o=="string")N=5;else e:switch(o){case L:return ma(h.children,b,j,s);case F:N=8,b|=8;break;case H:return o=Vn(12,h,s,b|2),o.elementType=H,o.lanes=j,o;case Z:return o=Vn(13,h,s,b),o.elementType=Z,o.lanes=j,o;case Y:return o=Vn(19,h,s,b),o.elementType=Y,o.lanes=j,o;case de:return Zu(h,b,j,s);default:if(typeof o=="object"&&o!==null)switch(o.$$typeof){case R:N=10;break e;case W:N=9;break e;case M:N=11;break e;case Q:N=14;break e;case he:N=16,v=null;break e}throw Error(n(130,o==null?o:typeof o,""))}return s=Vn(N,h,s,b),s.elementType=o,s.type=v,s.lanes=j,s}function ma(o,s,h,v){return o=Vn(7,o,v,s),o.lanes=h,o}function Zu(o,s,h,v){return o=Vn(22,o,v,s),o.elementType=de,o.lanes=h,o.stateNode={isHidden:!1},o}function pp(o,s,h){return o=Vn(6,o,null,s),o.lanes=h,o}function mp(o,s,h){return s=Vn(4,o.children!==null?o.children:[],o.key,s),s.lanes=h,s.stateNode={containerInfo:o.containerInfo,pendingChildren:null,implementation:o.implementation},s}function PM(o,s,h,v,b){this.tag=s,this.containerInfo=o,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Ud(0),this.expirationTimes=Ud(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Ud(0),this.identifierPrefix=v,this.onRecoverableError=b,this.mutableSourceEagerHydrationData=null}function gp(o,s,h,v,b,j,N,D,z){return o=new PM(o,s,h,D,z),s===1?(s=1,j===!0&&(s|=8)):s=0,j=Vn(3,null,null,s),o.current=j,j.stateNode=o,j.memoizedState={element:v,isDehydrated:h,cache:null,transitions:null,pendingSuspenseBoundaries:null},Nh(j),o}function EM(o,s,h){var v=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}return e(),Sp.exports=FM(),Sp.exports}var Lw;function BM(){if(Lw)return ac;Lw=1;var e=HE();return ac.createRoot=e.createRoot,ac.hydrateRoot=e.hydrateRoot,ac}var UM=BM(),k=Fo();const WM=xr(k),qM=MM({__proto__:null,default:WM},[k]);function HM(){return m.jsx("a",{href:"#/",className:"flex items-center",children:m.jsx("span",{className:"font-bold text-lg",children:"Claude Pilot Console"})})}const VM={primary:"btn-primary",secondary:"btn-secondary",ghost:"btn-ghost",outline:"btn-outline",error:"btn-error"},KM={xs:"btn-xs",sm:"btn-sm",md:"",lg:"btn-lg"};function Yt({variant:e="primary",size:t="md",loading:n=!1,className:r="",children:i,disabled:a,...l}){return m.jsxs("button",{className:`btn ${VM[e]} ${KM[t]} ${r}`,disabled:a||n,...l,children:[n&&m.jsx("span",{className:"loading loading-spinner loading-sm"}),i]})}function wt({children:e,className:t="",compact:n=!1,onClick:r}){return m.jsx("div",{className:`card bg-base-100 shadow-sm border border-base-200 ${n?"card-compact":""} ${t}`,onClick:r,children:e})}function kt({children:e,className:t=""}){return m.jsx("div",{className:`card-body ${t}`,children:e})}function Vi({children:e,className:t=""}){return m.jsx("h2",{className:`card-title ${t}`,children:e})}const GM={primary:"badge-primary",secondary:"badge-secondary",accent:"badge-accent",ghost:"badge-ghost",info:"badge-info",success:"badge-success",warning:"badge-warning",error:"badge-error"},YM={xs:"badge-xs",sm:"badge-sm",md:"",lg:"badge-lg"};function Te({children:e,variant:t="ghost",size:n="md",outline:r=!1,className:i=""}){return m.jsx("span",{className:`badge ${GM[t]} ${YM[n]} ${r?"badge-outline":""} ${i}`,children:e})}const XM={xs:"select-xs",sm:"select-sm",md:"",lg:"select-lg"};function QM({label:e,options:t,selectSize:n="md",error:r,className:i="",...a}){return m.jsxs("div",{className:"form-control w-full",children:[e&&m.jsx("label",{className:"label",children:m.jsx("span",{className:"label-text",children:e})}),m.jsx("select",{className:`select select-bordered w-full ${XM[n]} ${r?"select-error":""} ${i}`,...a,children:t.map(l=>m.jsx("option",{value:l.value,children:l.label},l.value))}),r&&m.jsx("label",{className:"label",children:m.jsx("span",{className:"label-text-alt text-error",children:r})})]})}function VE({open:e,onClose:t,title:n,children:r,actions:i}){return m.jsxs("dialog",{className:`modal ${e?"modal-open":""}`,children:[m.jsxs("div",{className:"modal-box",children:[n&&m.jsx("h3",{className:"font-bold text-lg",children:n}),m.jsx("div",{className:"py-4",children:r}),i&&m.jsx("div",{className:"modal-action",children:i})]}),m.jsx("form",{method:"dialog",className:"modal-backdrop",children:m.jsx("button",{onClick:t,children:"close"})})]})}function KE({trigger:e,items:t,align:n="end"}){return m.jsxs("div",{className:`dropdown ${n==="end"?"dropdown-end":""}`,children:[m.jsx("div",{tabIndex:0,role:"button",children:e}),m.jsx("ul",{tabIndex:0,className:"dropdown-content menu bg-base-100 rounded-box z-10 w-52 p-2 shadow-lg border border-base-200",children:t.map((r,i)=>m.jsx("li",{children:m.jsxs("button",{onClick:r.onClick,disabled:r.disabled,className:"flex items-center gap-2",children:[r.icon,r.label]})},i))})]})}const ZM={bordered:"tabs-bordered",lifted:"tabs-lifted",boxed:"tabs-boxed"};function JM({tabs:e,activeTab:t,onTabChange:n,variant:r="bordered"}){return m.jsx("div",{role:"tablist",className:`tabs ${ZM[r]}`,children:e.map(i=>m.jsxs("button",{role:"tab",className:`tab gap-2 ${t===i.id?"tab-active":""}`,onClick:()=>n(i.id),children:[i.icon,i.label]},i.id))})}const eD={primary:"progress-primary",secondary:"progress-secondary",accent:"progress-accent",info:"progress-info",success:"progress-success",warning:"progress-warning",error:"progress-error"};function tD({value:e,max:t=100,variant:n="primary",className:r=""}){return m.jsx("progress",{className:`progress ${eD[n]} ${r}`,value:e,max:t})}const nD={xs:"loading-xs",sm:"loading-sm",md:"loading-md",lg:"loading-lg"};function Xi({size:e="md",className:t=""}){return m.jsx("span",{className:`loading loading-spinner ${nD[e]} ${t}`})}function rD(e,t){const n=e.icons,r=e.aliases||Object.create(null),i=Object.create(null);function a(l){if(n[l])return i[l]=[];if(!(l in i)){i[l]=null;const u=r[l]&&r[l].parent,c=u&&a(u);c&&(i[l]=[u].concat(c))}return i[l]}return Object.keys(n).concat(Object.keys(r)).forEach(a),i}const GE=Object.freeze({left:0,top:0,width:16,height:16}),Lc=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),Vv=Object.freeze({...GE,...Lc}),Ag=Object.freeze({...Vv,body:"",hidden:!1});function iD(e,t){const n={};!e.hFlip!=!t.hFlip&&(n.hFlip=!0),!e.vFlip!=!t.vFlip&&(n.vFlip=!0);const r=((e.rotate||0)+(t.rotate||0))%4;return r&&(n.rotate=r),n}function Rw(e,t){const n=iD(e,t);for(const r in Ag)r in Lc?r in e&&!(r in n)&&(n[r]=Lc[r]):r in t?n[r]=t[r]:r in e&&(n[r]=e[r]);return n}function aD(e,t,n){const r=e.icons,i=e.aliases||Object.create(null);let a={};function l(u){a=Rw(r[u]||i[u],a)}return l(t),n.forEach(l),Rw(e,a)}function YE(e,t){const n=[];if(typeof e!="object"||typeof e.icons!="object")return n;e.not_found instanceof Array&&e.not_found.forEach(i=>{t(i,null),n.push(i)});const r=rD(e);for(const i in r){const a=r[i];a&&(t(i,aD(e,i,a)),n.push(i))}return n}const oD={provider:"",aliases:{},not_found:{},...GE};function Ep(e,t){for(const n in t)if(n in e&&typeof e[n]!=typeof t[n])return!1;return!0}function XE(e){if(typeof e!="object"||e===null)return null;const t=e;if(typeof t.prefix!="string"||!e.icons||typeof e.icons!="object"||!Ep(e,oD))return null;const n=t.icons;for(const i in n){const a=n[i];if(!i||typeof a.body!="string"||!Ep(a,Ag))return null}const r=t.aliases||Object.create(null);for(const i in r){const a=r[i],l=a.parent;if(!i||typeof l!="string"||!n[l]&&!r[l]||!Ep(a,Ag))return null}return t}const zw=Object.create(null);function lD(e,t){return{provider:e,prefix:t,icons:Object.create(null),missing:new Set}}function Ao(e,t){const n=zw[e]||(zw[e]=Object.create(null));return n[t]||(n[t]=lD(e,t))}function QE(e,t){return XE(t)?YE(t,(n,r)=>{r?e.icons[n]=r:e.missing.add(n)}):[]}function sD(e,t,n){try{if(typeof n.body=="string")return e.icons[t]={...n},!0}catch{}return!1}const ZE=/^[a-z0-9]+(-[a-z0-9]+)*$/,zf=(e,t,n,r="")=>{const i=e.split(":");if(e.slice(0,1)==="@"){if(i.length<2||i.length>3)return null;r=i.shift().slice(1)}if(i.length>3||!i.length)return null;if(i.length>1){const u=i.pop(),c=i.pop(),f={provider:i.length>0?i[0]:r,prefix:c,name:u};return t&&!Cc(f)?null:f}const a=i[0],l=a.split("-");if(l.length>1){const u={provider:r,prefix:l.shift(),name:l.join("-")};return t&&!Cc(u)?null:u}if(n&&r===""){const u={provider:r,prefix:"",name:a};return t&&!Cc(u,n)?null:u}return null},Cc=(e,t)=>e?!!((t&&e.prefix===""||e.prefix)&&e.name):!1;let ss=!1;function JE(e){return typeof e=="boolean"&&(ss=e),ss}function $w(e){const t=typeof e=="string"?zf(e,!0,ss):e;if(t){const n=Ao(t.provider,t.prefix),r=t.name;return n.icons[r]||(n.missing.has(r)?null:void 0)}}function uD(e,t){const n=zf(e,!0,ss);if(!n)return!1;const r=Ao(n.provider,n.prefix);return t?sD(r,n.name,t):(r.missing.add(n.name),!0)}function cD(e,t){if(typeof e!="object")return!1;if(typeof t!="string"&&(t=e.provider||""),ss&&!t&&!e.prefix){let i=!1;return XE(e)&&(e.prefix="",YE(e,(a,l)=>{uD(a,l)&&(i=!0)})),i}const n=e.prefix;if(!Cc({prefix:n,name:"a"}))return!1;const r=Ao(t,n);return!!QE(r,e)}const eC=Object.freeze({width:null,height:null}),tC=Object.freeze({...eC,...Lc}),fD=/(-?[0-9.]*[0-9]+[0-9.]*)/g,dD=/^-?[0-9.]*[0-9]+[0-9.]*$/g;function Fw(e,t,n){if(t===1)return e;if(n=n||100,typeof e=="number")return Math.ceil(e*t*n)/n;if(typeof e!="string")return e;const r=e.split(fD);if(r===null||!r.length)return e;const i=[];let a=r.shift(),l=dD.test(a);for(;;){if(l){const u=parseFloat(a);isNaN(u)?i.push(a):i.push(Math.ceil(u*t*n)/n)}else i.push(a);if(a=r.shift(),a===void 0)return i.join("");l=!l}}function hD(e,t="defs"){let n="";const r=e.indexOf("<"+t);for(;r>=0;){const i=e.indexOf(">",r),a=e.indexOf("",a);if(l===-1)break;n+=e.slice(i+1,a).trim(),e=e.slice(0,r).trim()+e.slice(l+1)}return{defs:n,content:e}}function pD(e,t){return e?""+e+""+t:t}function mD(e,t,n){const r=hD(e);return pD(r.defs,t+r.content+n)}const gD=e=>e==="unset"||e==="undefined"||e==="none";function vD(e,t){const n={...Vv,...e},r={...tC,...t},i={left:n.left,top:n.top,width:n.width,height:n.height};let a=n.body;[n,r].forEach(S=>{const w=[],P=S.hFlip,C=S.vFlip;let O=S.rotate;P?C?O+=2:(w.push("translate("+(i.width+i.left).toString()+" "+(0-i.top).toString()+")"),w.push("scale(-1 1)"),i.top=i.left=0):C&&(w.push("translate("+(0-i.left).toString()+" "+(i.height+i.top).toString()+")"),w.push("scale(1 -1)"),i.top=i.left=0);let A;switch(O<0&&(O-=Math.floor(O/4)*4),O=O%4,O){case 1:A=i.height/2+i.top,w.unshift("rotate(90 "+A.toString()+" "+A.toString()+")");break;case 2:w.unshift("rotate(180 "+(i.width/2+i.left).toString()+" "+(i.height/2+i.top).toString()+")");break;case 3:A=i.width/2+i.left,w.unshift("rotate(-90 "+A.toString()+" "+A.toString()+")");break}O%2===1&&(i.left!==i.top&&(A=i.left,i.left=i.top,i.top=A),i.width!==i.height&&(A=i.width,i.width=i.height,i.height=A)),w.length&&(a=mD(a,'',""))});const l=r.width,u=r.height,c=i.width,f=i.height;let d,p;l===null?(p=u===null?"1em":u==="auto"?f:u,d=Fw(p,c/f)):(d=l==="auto"?c:l,p=u===null?Fw(d,f/c):u==="auto"?f:u);const g={},y=(S,w)=>{gD(w)||(g[S]=w.toString())};y("width",d),y("height",p);const x=[i.left,i.top,c,f];return g.viewBox=x.join(" "),{attributes:g,viewBox:x,body:a}}const yD=/\sid="(\S+)"/g,xD="IconifyId"+Date.now().toString(16)+(Math.random()*16777216|0).toString(16);let bD=0;function wD(e,t=xD){const n=[];let r;for(;r=yD.exec(e);)n.push(r[1]);if(!n.length)return e;const i="suffix"+(Math.random()*16777216|Date.now()).toString(16);return n.forEach(a=>{const l=typeof t=="function"?t(a):t+(bD++).toString(),u=a.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");e=e.replace(new RegExp('([#;"])('+u+')([")]|\\.[a-z])',"g"),"$1"+l+i+"$3")}),e=e.replace(new RegExp(i,"g"),""),e}const _g=Object.create(null);function kD(e,t){_g[e]=t}function Ig(e){return _g[e]||_g[""]}function Kv(e){let t;if(typeof e.resources=="string")t=[e.resources];else if(t=e.resources,!(t instanceof Array)||!t.length)return null;return{resources:t,path:e.path||"/",maxURL:e.maxURL||500,rotate:e.rotate||750,timeout:e.timeout||5e3,random:e.random===!0,index:e.index||0,dataAfterTimeout:e.dataAfterTimeout!==!1}}const Gv=Object.create(null),Ll=["https://api.simplesvg.com","https://api.unisvg.com"],Oc=[];for(;Ll.length>0;)Ll.length===1||Math.random()>.5?Oc.push(Ll.shift()):Oc.push(Ll.pop());Gv[""]=Kv({resources:["https://api.iconify.design"].concat(Oc)});function SD(e,t){const n=Kv(t);return n===null?!1:(Gv[e]=n,!0)}function Yv(e){return Gv[e]}const jD=()=>{let e;try{if(e=fetch,typeof e=="function")return e}catch{}};let Bw=jD();function PD(e,t){const n=Yv(e);if(!n)return 0;let r;if(!n.maxURL)r=0;else{let i=0;n.resources.forEach(l=>{i=Math.max(i,l.length)});const a=t+".json?icons=";r=n.maxURL-i-n.path.length-a.length}return r}function ED(e){return e===404}const CD=(e,t,n)=>{const r=[],i=PD(e,t),a="icons";let l={type:a,provider:e,prefix:t,icons:[]},u=0;return n.forEach((c,f)=>{u+=c.length+1,u>=i&&f>0&&(r.push(l),l={type:a,provider:e,prefix:t,icons:[]},u=c.length),l.icons.push(c)}),r.push(l),r};function OD(e){if(typeof e=="string"){const t=Yv(e);if(t)return t.path}return"/"}const ND=(e,t,n)=>{if(!Bw){n("abort",424);return}let r=OD(t.provider);switch(t.type){case"icons":{const a=t.prefix,u=t.icons.join(","),c=new URLSearchParams({icons:u});r+=a+".json?"+c.toString();break}case"custom":{const a=t.uri;r+=a.slice(0,1)==="/"?a.slice(1):a;break}default:n("abort",400);return}let i=503;Bw(e+r).then(a=>{const l=a.status;if(l!==200){setTimeout(()=>{n(ED(l)?"abort":"next",l)});return}return i=501,a.json()}).then(a=>{if(typeof a!="object"||a===null){setTimeout(()=>{a===404?n("abort",a):n("next",i)});return}setTimeout(()=>{n("success",a)})}).catch(()=>{n("next",i)})},AD={prepare:CD,send:ND};function nC(e,t){e.forEach(n=>{const r=n.loaderCallbacks;r&&(n.loaderCallbacks=r.filter(i=>i.id!==t))})}function _D(e){e.pendingCallbacksFlag||(e.pendingCallbacksFlag=!0,setTimeout(()=>{e.pendingCallbacksFlag=!1;const t=e.loaderCallbacks?e.loaderCallbacks.slice(0):[];if(!t.length)return;let n=!1;const r=e.provider,i=e.prefix;t.forEach(a=>{const l=a.icons,u=l.pending.length;l.pending=l.pending.filter(c=>{if(c.prefix!==i)return!0;const f=c.name;if(e.icons[f])l.loaded.push({provider:r,prefix:i,name:f});else if(e.missing.has(f))l.missing.push({provider:r,prefix:i,name:f});else return n=!0,!0;return!1}),l.pending.length!==u&&(n||nC([e],a.id),a.callback(l.loaded.slice(0),l.missing.slice(0),l.pending.slice(0),a.abort))})}))}let ID=0;function TD(e,t,n){const r=ID++,i=nC.bind(null,n,r);if(!t.pending.length)return i;const a={id:r,icons:t,callback:e,abort:i};return n.forEach(l=>{(l.loaderCallbacks||(l.loaderCallbacks=[])).push(a)}),i}function MD(e){const t={loaded:[],missing:[],pending:[]},n=Object.create(null);e.sort((i,a)=>i.provider!==a.provider?i.provider.localeCompare(a.provider):i.prefix!==a.prefix?i.prefix.localeCompare(a.prefix):i.name.localeCompare(a.name));let r={provider:"",prefix:"",name:""};return e.forEach(i=>{if(r.name===i.name&&r.prefix===i.prefix&&r.provider===i.provider)return;r=i;const a=i.provider,l=i.prefix,u=i.name,c=n[a]||(n[a]=Object.create(null)),f=c[l]||(c[l]=Ao(a,l));let d;u in f.icons?d=t.loaded:l===""||f.missing.has(u)?d=t.missing:d=t.pending;const p={provider:a,prefix:l,name:u};d.push(p)}),t}function DD(e,t=!0,n=!1){const r=[];return e.forEach(i=>{const a=typeof i=="string"?zf(i,t,n):i;a&&r.push(a)}),r}const LD={resources:[],index:0,timeout:2e3,rotate:750,random:!1,dataAfterTimeout:!1};function RD(e,t,n,r){const i=e.resources.length,a=e.random?Math.floor(Math.random()*i):e.index;let l;if(e.random){let E=e.resources.slice(0);for(l=[];E.length>1;){const L=Math.floor(Math.random()*E.length);l.push(E[L]),E=E.slice(0,L).concat(E.slice(L+1))}l=l.concat(E)}else l=e.resources.slice(a).concat(e.resources.slice(0,a));const u=Date.now();let c="pending",f=0,d,p=null,g=[],y=[];typeof r=="function"&&y.push(r);function x(){p&&(clearTimeout(p),p=null)}function S(){c==="pending"&&(c="aborted"),x(),g.forEach(E=>{E.status==="pending"&&(E.status="aborted")}),g=[]}function w(E,L){L&&(y=[]),typeof E=="function"&&y.push(E)}function P(){return{startTime:u,payload:t,status:c,queriesSent:f,queriesPending:g.length,subscribe:w,abort:S}}function C(){c="failed",y.forEach(E=>{E(void 0,d)})}function O(){g.forEach(E=>{E.status==="pending"&&(E.status="aborted")}),g=[]}function A(E,L,F){const H=L!=="success";switch(g=g.filter(R=>R!==E),c){case"pending":break;case"failed":if(H||!e.dataAfterTimeout)return;break;default:return}if(L==="abort"){d=F,C();return}if(H){d=F,g.length||(l.length?I():C());return}if(x(),O(),!e.random){const R=e.resources.indexOf(E.resource);R!==-1&&R!==e.index&&(e.index=R)}c="completed",y.forEach(R=>{R(F)})}function I(){if(c!=="pending")return;x();const E=l.shift();if(E===void 0){if(g.length){p=setTimeout(()=>{x(),c==="pending"&&(O(),C())},e.timeout);return}C();return}const L={status:"pending",resource:E,callback:(F,H)=>{A(L,F,H)}};g.push(L),f++,p=setTimeout(I,e.rotate),n(E,t,L.callback)}return setTimeout(I),P}function rC(e){const t={...LD,...e};let n=[];function r(){n=n.filter(u=>u().status==="pending")}function i(u,c,f){const d=RD(t,u,c,(p,g)=>{r(),f&&f(p,g)});return n.push(d),d}function a(u){return n.find(c=>u(c))||null}return{query:i,find:a,setIndex:u=>{t.index=u},getIndex:()=>t.index,cleanup:r}}function Uw(){}const Cp=Object.create(null);function zD(e){if(!Cp[e]){const t=Yv(e);if(!t)return;const n=rC(t),r={config:t,redundancy:n};Cp[e]=r}return Cp[e]}function $D(e,t,n){let r,i;if(typeof e=="string"){const a=Ig(e);if(!a)return n(void 0,424),Uw;i=a.send;const l=zD(e);l&&(r=l.redundancy)}else{const a=Kv(e);if(a){r=rC(a);const l=e.resources?e.resources[0]:"",u=Ig(l);u&&(i=u.send)}}return!r||!i?(n(void 0,424),Uw):r.query(t,i,n)().abort}function Ww(){}function FD(e){e.iconsLoaderFlag||(e.iconsLoaderFlag=!0,setTimeout(()=>{e.iconsLoaderFlag=!1,_D(e)}))}function BD(e){const t=[],n=[];return e.forEach(r=>{(r.match(ZE)?t:n).push(r)}),{valid:t,invalid:n}}function Rl(e,t,n){function r(){const i=e.pendingIcons;t.forEach(a=>{i&&i.delete(a),e.icons[a]||e.missing.add(a)})}if(n&&typeof n=="object")try{if(!QE(e,n).length){r();return}}catch(i){console.error(i)}r(),FD(e)}function qw(e,t){e instanceof Promise?e.then(n=>{t(n)}).catch(()=>{t(null)}):t(e)}function UD(e,t){e.iconsToLoad?e.iconsToLoad=e.iconsToLoad.concat(t).sort():e.iconsToLoad=t,e.iconsQueueFlag||(e.iconsQueueFlag=!0,setTimeout(()=>{e.iconsQueueFlag=!1;const{provider:n,prefix:r}=e,i=e.iconsToLoad;if(delete e.iconsToLoad,!i||!i.length)return;const a=e.loadIcon;if(e.loadIcons&&(i.length>1||!a)){qw(e.loadIcons(i,r,n),d=>{Rl(e,i,d)});return}if(a){i.forEach(d=>{const p=a(d,r,n);qw(p,g=>{const y=g?{prefix:r,icons:{[d]:g}}:null;Rl(e,[d],y)})});return}const{valid:l,invalid:u}=BD(i);if(u.length&&Rl(e,u,null),!l.length)return;const c=r.match(ZE)?Ig(n):null;if(!c){Rl(e,l,null);return}c.prepare(n,r,l).forEach(d=>{$D(n,d,p=>{Rl(e,d.icons,p)})})}))}const WD=(e,t)=>{const n=DD(e,!0,JE()),r=MD(n);if(!r.pending.length){let c=!0;return t&&setTimeout(()=>{c&&t(r.loaded,r.missing,r.pending,Ww)}),()=>{c=!1}}const i=Object.create(null),a=[];let l,u;return r.pending.forEach(c=>{const{provider:f,prefix:d}=c;if(d===u&&f===l)return;l=f,u=d,a.push(Ao(f,d));const p=i[f]||(i[f]=Object.create(null));p[d]||(p[d]=[])}),r.pending.forEach(c=>{const{provider:f,prefix:d,name:p}=c,g=Ao(f,d),y=g.pendingIcons||(g.pendingIcons=new Set);y.has(p)||(y.add(p),i[f][d].push(p))}),a.forEach(c=>{const f=i[c.provider][c.prefix];f.length&&UD(c,f)}),t?TD(t,r,a):Ww};function qD(e,t){const n={...e};for(const r in t){const i=t[r],a=typeof i;r in eC?(i===null||i&&(a==="string"||a==="number"))&&(n[r]=i):a===typeof n[r]&&(n[r]=r==="rotate"?i%4:i)}return n}const HD=/[\s,]+/;function VD(e,t){t.split(HD).forEach(n=>{switch(n.trim()){case"horizontal":e.hFlip=!0;break;case"vertical":e.vFlip=!0;break}})}function KD(e,t=0){const n=e.replace(/^-?[0-9.]*/,"");function r(i){for(;i<0;)i+=4;return i%4}if(n===""){const i=parseInt(e);return isNaN(i)?0:r(i)}else if(n!==e){let i=0;switch(n){case"%":i=25;break;case"deg":i=90}if(i){let a=parseFloat(e.slice(0,e.length-n.length));return isNaN(a)?0:(a=a/i,a%1===0?r(a):0)}}return t}function GD(e,t){let n=e.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(const r in t)n+=" "+r+'="'+t[r]+'"';return'"+e+""}function YD(e){return e.replace(/"/g,"'").replace(/%/g,"%25").replace(/#/g,"%23").replace(//g,"%3E").replace(/\s+/g," ")}function XD(e){return"data:image/svg+xml,"+YD(e)}function QD(e){return'url("'+XD(e)+'")'}let ns;function ZD(){try{ns=window.trustedTypes.createPolicy("iconify",{createHTML:e=>e})}catch{ns=null}}function JD(e){return ns===void 0&&ZD(),ns?ns.createHTML(e):e}const iC={...tC,inline:!1},eL={xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink","aria-hidden":!0,role:"img"},tL={display:"inline-block"},Tg={backgroundColor:"currentColor"},aC={backgroundColor:"transparent"},Hw={Image:"var(--svg)",Repeat:"no-repeat",Size:"100% 100%"},Vw={WebkitMask:Tg,mask:Tg,background:aC};for(const e in Vw){const t=Vw[e];for(const n in Hw)t[e+n]=Hw[n]}const nL={...iC,inline:!0};function Kw(e){return e+(e.match(/^[-0-9.]+$/)?"px":"")}const rL=(e,t,n)=>{const r=t.inline?nL:iC,i=qD(r,t),a=t.mode||"svg",l={},u=t.style||{},c={...a==="svg"?eL:{}};if(n){const w=zf(n,!1,!0);if(w){const P=["iconify"],C=["provider","prefix"];for(const O of C)w[O]&&P.push("iconify--"+w[O]);c.className=P.join(" ")}}for(let w in t){const P=t[w];if(P!==void 0)switch(w){case"icon":case"style":case"children":case"onLoad":case"mode":case"ssr":case"fallback":break;case"_ref":c.ref=P;break;case"className":c[w]=(c[w]?c[w]+" ":"")+P;break;case"inline":case"hFlip":case"vFlip":i[w]=P===!0||P==="true"||P===1;break;case"flip":typeof P=="string"&&VD(i,P);break;case"color":l.color=P;break;case"rotate":typeof P=="string"?i[w]=KD(P):typeof P=="number"&&(i[w]=P);break;case"ariaHidden":case"aria-hidden":P!==!0&&P!=="true"&&delete c["aria-hidden"];break;default:r[w]===void 0&&(c[w]=P)}}const f=vD(e,i),d=f.attributes;if(i.inline&&(l.verticalAlign="-0.125em"),a==="svg"){c.style={...l,...u},Object.assign(c,d);let w=0,P=t.id;return typeof P=="string"&&(P=P.replace(/-/g,"_")),c.dangerouslySetInnerHTML={__html:JD(wD(f.body,P?()=>P+"ID"+w++:"iconifyReact"))},k.createElement("svg",c)}const{body:p,width:g,height:y}=e,x=a==="mask"||(a==="bg"?!1:p.indexOf("currentColor")!==-1),S=GD(p,{...d,width:g+"",height:y+""});return c.style={...l,"--svg":QD(S),width:Kw(d.width),height:Kw(d.height),...tL,...x?Tg:aC,...u},k.createElement("span",c)};JE(!0);kD("",AD);if(typeof document<"u"&&typeof window<"u"){const e=window;if(e.IconifyPreload!==void 0){const t=e.IconifyPreload,n="Invalid IconifyPreload syntax.";typeof t=="object"&&t!==null&&(t instanceof Array?t:[t]).forEach(r=>{try{(typeof r!="object"||r===null||r instanceof Array||typeof r.icons!="object"||typeof r.prefix!="string"||!cD(r))&&console.error(n)}catch{console.error(n)}})}if(e.IconifyProviders!==void 0){const t=e.IconifyProviders;if(typeof t=="object"&&t!==null)for(let n in t){const r="IconifyProviders["+n+"] is invalid.";try{const i=t[n];if(typeof i!="object"||!i||i.resources===void 0)continue;SD(n,i)||console.error(r)}catch{console.error(r)}}}}function oC(e){const[t,n]=k.useState(!!e.ssr),[r,i]=k.useState({});function a(y){if(y){const x=e.icon;if(typeof x=="object")return{name:"",data:x};const S=$w(x);if(S)return{name:x,data:S}}return{name:""}}const[l,u]=k.useState(a(!!e.ssr));function c(){const y=r.callback;y&&(y(),i({}))}function f(y){if(JSON.stringify(l)!==JSON.stringify(y))return c(),u(y),!0}function d(){var y;const x=e.icon;if(typeof x=="object"){f({name:"",data:x});return}const S=$w(x);if(f({name:x,data:S}))if(S===void 0){const w=WD([x],d);i({callback:w})}else S&&((y=e.onLoad)===null||y===void 0||y.call(e,x))}k.useEffect(()=>(n(!0),c),[]),k.useEffect(()=>{t&&d()},[e.icon,t]);const{name:p,data:g}=l;return g?rL({...Vv,...g},e,p):e.children?e.children:e.fallback?e.fallback:k.createElement("span",{})}const iL=k.forwardRef((e,t)=>oC({...e,_ref:t}));k.forwardRef((e,t)=>oC({inline:!0,...e,_ref:t}));function se({icon:e,size:t=20,className:n="",style:r}){return m.jsx(iL,{icon:e,width:t,height:t,className:n,style:r})}function Eo({icon:e="lucide:inbox",title:t,description:n,action:r}){return m.jsxs("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[m.jsx(se,{icon:e,size:48,className:"text-base-content/30 mb-4"}),m.jsx("h3",{className:"font-semibold text-lg text-base-content/70",children:t}),n&&m.jsx("p",{className:"text-base-content/50 mt-1 max-w-sm",children:n}),r&&m.jsx("div",{className:"mt-4",children:r})]})}const aL={top:"tooltip-top",bottom:"tooltip-bottom",left:"tooltip-left",right:"tooltip-right"};function _r({text:e,children:t,position:n="top"}){return m.jsx("div",{className:`tooltip ${aL[n]}`,"data-tip":e,children:t})}const oL={success:{bg:"alert-success",icon:"lucide:check-circle",iconColor:"text-success-content"},error:{bg:"alert-error",icon:"lucide:x-circle",iconColor:"text-error-content"},info:{bg:"alert-info",icon:"lucide:info",iconColor:"text-info-content"},warning:{bg:"alert-warning",icon:"lucide:alert-triangle",iconColor:"text-warning-content"}};function lL({id:e,type:t,message:n,title:r,duration:i=5e3,dismissible:a=!0,onClick:l,onDismiss:u}){const[c,f]=k.useState(!1),{bg:d,icon:p,iconColor:g}=oL[t];k.useEffect(()=>{if(i>0){const x=setTimeout(()=>{f(!0),setTimeout(()=>u(e),300)},i);return()=>clearTimeout(x)}},[i,e,u]);const y=()=>{f(!0),setTimeout(()=>u(e),300)};return m.jsxs("div",{role:"alert",className:`alert ${d} shadow-lg transition-all duration-300 ${c?"opacity-0 translate-x-4":"opacity-100 translate-x-0"} ${l?"cursor-pointer hover:scale-[1.02]":""}`,onClick:l,children:[m.jsx(se,{icon:p,size:20,className:g}),m.jsxs("div",{className:"flex-1",children:[r&&m.jsx("h3",{className:"font-bold text-sm",children:r}),m.jsx("span",{className:"text-sm",children:n})]}),a&&m.jsx("button",{onClick:x=>{x.stopPropagation(),y()},className:"btn btn-ghost btn-sm btn-circle","aria-label":"Dismiss",children:m.jsx(se,{icon:"lucide:x",size:16})})]})}function sL({toasts:e,onDismiss:t}){return e.length===0?null:m.jsx("div",{className:"toast toast-end toast-bottom z-50",children:e.map(n=>m.jsx(lL,{...n,onDismiss:t},n.id))})}function lC({project:e,workspace:t=!1}){return t?m.jsxs("span",{className:"inline-flex items-center gap-1 text-xs bg-base-200 text-base-content/50 rounded-full px-2.5 py-0.5",children:[m.jsx(se,{icon:"lucide:globe",size:12}),"Workspace"]}):e?m.jsxs("span",{className:"inline-flex items-center gap-1 text-xs bg-primary/10 text-primary rounded-full px-2.5 py-0.5",children:[m.jsx(se,{icon:"lucide:folder",size:12}),e]}):null}function uL({icon:e,label:t,href:n,active:r=!1,badge:i,collapsed:a=!1}){const l=m.jsxs("a",{href:n,className:`nav-item flex items-center gap-3 px-3 py-2.5 rounded-lg transition-all ${r?"active":""} ${a?"justify-center":""}`,children:[m.jsx(se,{icon:e,size:20}),!a&&m.jsxs(m.Fragment,{children:[m.jsx("span",{className:"flex-1",children:t}),i!==void 0&&m.jsx("span",{className:`badge badge-sm ${r?"badge-primary-content":"badge-ghost"}`,children:i})]})]});return a?m.jsx(_r,{text:t,children:l}):l}const cL=[{icon:"lucide:layout-dashboard",label:"Dashboard",href:"#/"},{icon:"lucide:scroll",label:"Specification",href:"#/spec"},{icon:"lucide:brain",label:"Memories",href:"#/memories"},{icon:"lucide:history",label:"Sessions",href:"#/sessions"},{icon:"lucide:bar-chart-3",label:"Usage",href:"#/usage"},{icon:"lucide:archive",label:"Vault",href:"#/vault"},{icon:"lucide:settings",label:"Settings",href:"#/settings"}];function fL({currentPath:e,collapsed:t=!1}){return m.jsx("nav",{className:"py-4 space-y-1 px-2",children:cL.map(n=>m.jsx(uL,{icon:n.icon,label:n.label,href:n.href,active:e===n.href||e.startsWith(n.href+"/"),collapsed:t},n.href))})}function dL({workerStatus:e,version:t,queueDepth:n=0,collapsed:r=!1}){const l={online:{color:"success",label:"Online",icon:"lucide:circle-check"},offline:{color:"error",label:"Offline",icon:"lucide:circle-x"}}[e!=="offline"?"online":"offline"],u=t?`v${t}`:null;return r?m.jsx("div",{className:"p-3 border-t border-base-300/50",children:m.jsx(_r,{text:`Claude Pilot ${u??""} · Worker ${l.label}`,children:m.jsx("div",{className:"flex justify-center",children:m.jsx(se,{icon:l.icon,size:20,className:`text-${l.color}`})})})}):m.jsxs("div",{className:"p-4 border-t border-base-300/50 space-y-2",children:[m.jsxs("div",{className:"flex items-center justify-between text-sm",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(se,{icon:l.icon,size:16,className:`text-${l.color}`}),m.jsx("span",{className:"text-base-content/70",children:"Worker"})]}),m.jsx(Te,{variant:l.color,size:"sm",children:l.label})]}),u&&m.jsxs("div",{className:"text-xs text-base-content/40 text-center",children:["Claude Pilot ",u]})]})}const sC=k.createContext(null);let hL=0;function pL({children:e}){const[t,n]=k.useState([]),r=k.useCallback(d=>{const p=`toast-${++hL}`;return n(g=>[...g,{...d,id:p}]),p},[]),i=k.useCallback(d=>{n(p=>p.filter(g=>g.id!==d))},[]),a=k.useCallback(()=>{n([])},[]),l=k.useCallback((d,p)=>r({type:"success",message:d,title:p}),[r]),u=k.useCallback((d,p)=>r({type:"error",message:d,title:p,duration:8e3}),[r]),c=k.useCallback((d,p)=>r({type:"info",message:d,title:p}),[r]),f=k.useCallback((d,p)=>r({type:"warning",message:d,title:p,duration:7e3}),[r]);return m.jsxs(sC.Provider,{value:{addToast:r,removeToast:i,clearAll:a,success:l,error:u,info:c,warning:f},children:[e,m.jsx(sL,{toasts:t,onDismiss:i})]})}function uC(){const e=k.useContext(sC);if(!e)throw new Error("useToast must be used within a ToastProvider");return e}const Op="pilot-memory-selected-project",mL={selectedProject:null,projects:[],setSelectedProject:()=>{},setProjects:()=>{}},cC=k.createContext(mL);function gL({children:e}){const[t,n]=k.useState(()=>{try{return localStorage.getItem(Op)||null}catch{return null}}),[r,i]=k.useState([]),a=k.useCallback(u=>{n(u);try{u?localStorage.setItem(Op,u):localStorage.removeItem(Op)}catch{}},[]),l=k.useCallback(u=>{i(u)},[]);return k.useEffect(()=>{fetch("/api/projects").then(u=>u.json()).then(u=>{const c=u.projects||[];c.length>0&&i(c)}).catch(()=>{})},[]),k.useEffect(()=>{t&&r.length>0&&!r.includes(t)&&a(null)},[r,t,a]),m.jsx(cC.Provider,{value:{selectedProject:t,projects:r,setSelectedProject:a,setProjects:l},children:e})}function za(){return k.useContext(cC)}function vL({collapsed:e=!1}){const{selectedProject:t,projects:n,setSelectedProject:r}=za();return e?m.jsx("div",{className:"flex-shrink-0 px-3 py-3 border-b border-base-300/50",children:m.jsx(_r,{text:t??"All Projects",children:m.jsx("button",{className:`btn btn-ghost btn-sm btn-square w-full ${t?"text-primary":"text-base-content/50"}`,onClick:()=>r(null),children:m.jsx(se,{icon:"lucide:folder-open",size:20})})})}):m.jsxs("div",{className:"flex-shrink-0 px-3 py-3 border-b border-base-300/50 relative z-10",children:[m.jsx("label",{className:"text-[10px] font-semibold uppercase tracking-wider text-base-content/40 px-1 mb-1.5 block",children:"Project"}),m.jsxs("select",{className:"select select-bordered select-sm w-full text-sm bg-base-100",value:t??"",onChange:i=>r(i.target.value||null),children:[m.jsx("option",{value:"",children:"All Projects"}),n.map(i=>m.jsx("option",{value:i,children:i},i))]})]})}function yL({currentPath:e,workerStatus:t,version:n,queueDepth:r,collapsed:i,onToggleCollapse:a}){return m.jsxs("aside",{className:`dashboard-sidebar flex flex-col border-r border-base-300 transition-all duration-300 h-screen sticky top-0 ${i?"w-[72px]":"w-64"}`,children:[m.jsxs("div",{className:"flex-shrink-0 flex items-center justify-between p-4 border-b border-base-300/50",children:[!i&&m.jsx(HM,{}),m.jsx("button",{onClick:a,className:"btn btn-ghost btn-sm btn-square",title:i?"Expand sidebar":"Collapse sidebar",children:m.jsx(se,{icon:i?"lucide:panel-left-open":"lucide:panel-left-close",size:18})})]}),m.jsx(vL,{collapsed:i}),m.jsx("div",{className:"flex-1",children:m.jsx(fL,{currentPath:e,collapsed:i})}),m.jsx("div",{className:"flex-shrink-0",children:m.jsx(dL,{workerStatus:t,version:n,queueDepth:r,collapsed:i})})]})}const fC={solo:{label:"Solo",variant:"primary"},team:{label:"Team",variant:"accent"},trial:{label:"Trial",variant:"warning"},standard:{label:"Solo",variant:"primary"},enterprise:{label:"Team",variant:"accent"}};function Gw(e){const t=fC[e.tier??""],n=[(t==null?void 0:t.label)??e.tier??"Unknown"];return e.email&&n.push(e.email),e.tier==="trial"&&e.daysRemaining!=null&&n.push(`${e.daysRemaining} days remaining`),n.join(" · ")}function Yw(e){return e.isExpired||e.tier==="trial"}function xL({license:e,isLoading:t,onClick:n}){if(t||!e||!e.tier)return null;const i=Yw(e)&&!!n?{onClick:n,role:"button",className:"cursor-pointer"}:{};if(e.isExpired)return m.jsx(_r,{text:Gw(e),position:"bottom",children:m.jsx("span",{...i,children:m.jsx(Te,{variant:"error",size:"xs",children:"Expired"})})});const a=fC[e.tier];if(!a)return null;let l=a.label;e.tier==="trial"&&e.daysRemaining!=null&&(l=`${a.label} · ${e.daysRemaining}d left`);const u=!Yw(e)&&e.email;return m.jsx(_r,{text:Gw(e),position:"bottom",children:m.jsxs("span",{...i,className:`${i.className??""} inline-flex items-center gap-1.5`,children:[m.jsx(Te,{variant:a.variant,size:"xs",children:l}),u&&m.jsx("span",{className:"text-base-content/50",children:e.email})]})})}function bL({open:e,onClose:t,onActivated:n}){const[r,i]=k.useState(""),[a,l]=k.useState(null),[u,c]=k.useState(!1),f=k.useCallback(async()=>{const p=r.trim();if(p){l(null),c(!0);try{const y=await(await fetch("/api/license/activate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:p})})).json();y.success?(i(""),n(),t()):l(y.error??"Activation failed")}catch{l("Connection failed")}finally{c(!1)}}},[r,n,t]),d=k.useCallback(p=>{p.key==="Enter"&&!u&&f()},[f,u]);return m.jsxs(VE,{open:e,onClose:t,title:"Activate License",children:[m.jsxs("div",{className:"flex flex-col gap-3",children:[m.jsx("input",{id:"license-key-input",type:"text",className:"input input-bordered w-full",placeholder:"Enter your license key",value:r,onChange:p=>{i(p.target.value),l(null)},onKeyDown:d,disabled:u,autoFocus:!0}),a&&m.jsx("p",{className:"text-error text-sm",children:a}),m.jsx("div",{className:"bg-base-200/50 rounded-lg p-3 space-y-1.5",children:m.jsxs("p",{className:"text-xs text-base-content/60",children:["Don't have a key? Get one at"," ",m.jsx("a",{href:"https://claude-pilot.com/#pricing",target:"_blank",rel:"noopener noreferrer",className:"text-primary hover:underline font-medium",children:"claude-pilot.com"})]})})]}),m.jsxs("div",{className:"modal-action",children:[m.jsx("button",{className:"btn btn-ghost btn-sm",onClick:t,disabled:u,children:"Cancel"}),m.jsx("button",{className:"btn btn-primary btn-sm",onClick:f,disabled:u||!r.trim(),children:u?"Activating...":"Activate"})]})]})}function dC(){const[e,t]=k.useState(null),[n,r]=k.useState(!0),i=k.useCallback((l=!1)=>{fetch(l?"/api/license?refresh=1":"/api/license").then(c=>c.json()).then(c=>{t(c),r(!1)}).catch(()=>{r(!1)})},[]);k.useEffect(()=>{i();const l=setInterval(()=>i(!0),6e4);return()=>clearInterval(l)},[i]);const a=k.useCallback(()=>i(!0),[i]);return{license:e,isLoading:n,refetch:a}}function wL({theme:e,onToggleTheme:t,onToggleLogs:n}){const[r,i]=k.useState(!1),[a,l]=k.useState(!1);k.useEffect(()=>{fetch("/api/auth/status").then(c=>c.json()).then(c=>{i(c.authRequired)}).catch(()=>{i(!1)})},[]);const u=async()=>{l(!0);try{await fetch("/api/auth/logout",{method:"POST"}),window.location.href="/login"}catch{l(!1)}};return m.jsxs("div",{className:"flex items-center gap-2",children:[n&&m.jsx(_r,{text:"Toggle console logs",position:"bottom",children:m.jsx(Yt,{variant:"ghost",size:"sm",onClick:n,children:m.jsx(se,{icon:"lucide:terminal",size:18})})}),m.jsx(_r,{text:`Switch to ${e==="light"?"dark":"light"} mode`,position:"bottom",children:m.jsx(Yt,{variant:"ghost",size:"sm",onClick:t,children:m.jsx(se,{icon:e==="light"?"lucide:moon":"lucide:sun",size:18})})}),m.jsx(_r,{text:"Repository",position:"bottom",children:m.jsx("a",{href:"https://github.com/maxritter/claude-pilot",target:"_blank",rel:"noopener noreferrer",className:"btn btn-ghost btn-sm",children:m.jsx(se,{icon:"lucide:git-branch",size:18})})}),r&&m.jsx(_r,{text:"Logout",position:"bottom",children:m.jsx(Yt,{variant:"ghost",size:"sm",onClick:u,disabled:a,children:m.jsx(se,{icon:"lucide:log-out",size:18})})})]})}function kL({theme:e,onToggleTheme:t,onToggleLogs:n}){const{license:r,isLoading:i,refetch:a}=dC(),[l,u]=k.useState(!1);return m.jsxs("header",{className:"h-14 bg-base-100 border-b border-base-300/50 flex items-center justify-between px-6 gap-4",children:[m.jsxs("div",{className:"flex items-center gap-2 text-xs text-base-content/40",children:[m.jsx(se,{icon:"lucide:plane",size:14,className:"text-primary/60"}),m.jsxs("span",{children:["© ",new Date().getFullYear()," ",m.jsx("a",{href:"https://claude-pilot.com",target:"_blank",rel:"noopener noreferrer",className:"text-primary/70 hover:text-primary transition-colors",children:"Claude Pilot"})]}),m.jsx("span",{className:"text-base-content/20",children:"|"}),m.jsxs("span",{children:["Created by"," ",m.jsx("a",{href:"https://maxritter.net",target:"_blank",rel:"noopener noreferrer",className:"text-primary/70 hover:text-primary transition-colors",children:"Max Ritter"})]}),!i&&(r==null?void 0:r.tier)&&m.jsx("span",{className:"text-base-content/20",children:"|"}),m.jsx(xL,{license:r,isLoading:i,onClick:()=>u(!0)}),!i&&(!r||!r.tier||r.tier==="trial"||r.isExpired)&&m.jsxs(m.Fragment,{children:[m.jsx("span",{className:"text-base-content/20",children:"|"}),m.jsx("a",{href:"https://claude-pilot.com/#pricing",target:"_blank",rel:"noopener noreferrer",className:"text-primary/70 hover:text-primary transition-colors",children:"Get a license"}),m.jsxs("button",{onClick:()=>u(!0),className:"btn btn-primary btn-xs gap-1",children:[m.jsx(se,{icon:"lucide:key",size:12}),"Activate"]})]})]}),m.jsx(wL,{theme:e,onToggleTheme:t,onToggleLogs:n}),m.jsx(bL,{open:l,onClose:()=>u(!1),onActivated:a})]})}function SL({children:e,currentPath:t,workerStatus:n,version:r,queueDepth:i,theme:a,onToggleTheme:l,onToggleLogs:u,sidebarCollapsed:c,onToggleSidebar:f}){const d=a==="dark"?"claude-pilot":"claude-pilot-light";return m.jsxs("div",{className:"dashboard-layout flex min-h-screen","data-theme":d,children:[m.jsx(yL,{currentPath:t,workerStatus:n,version:r,queueDepth:i,collapsed:c,onToggleCollapse:f}),m.jsxs("div",{className:"flex-1 flex flex-col min-w-0",children:[m.jsx(kL,{theme:a,onToggleTheme:l,onToggleLogs:u}),m.jsx("main",{className:"flex-1 p-6 overflow-y-auto",children:e})]})]})}function hC(){const[e,t]=k.useState(()=>Xw(window.location.hash));k.useEffect(()=>{const r=()=>{t(Xw(window.location.hash))};return window.addEventListener("hashchange",r),()=>window.removeEventListener("hashchange",r)},[]);const n=k.useCallback(r=>{window.location.hash=r},[]);return{path:e.path,params:e.params,navigate:n}}function Xw(e){const t=e.replace(/^#/,"")||"/",n={},[r,i]=t.split("?");return i&&new URLSearchParams(i).forEach((l,u)=>{n[u]=l}),{path:r,params:n}}function jL({routes:e,fallback:t}){const{path:n}=hC();for(const r of e){const i=PL(r.path,n);if(i){const a=r.component;return m.jsx(a,{...i.params})}}return t?m.jsx(m.Fragment,{children:t}):null}function PL(e,t){if(e===t)return{params:{}};const n=e.split("/"),r=t.split("/");if(n.length!==r.length)return null;const i={};for(let a=0;a=0?"text-success":"text-error"}`,children:[m.jsx(se,{icon:i.value>=0?"lucide:trending-up":"lucide:trending-down",size:16}),m.jsxs("span",{className:"ml-1",children:[Math.abs(i.value),"% ",i.label]})]})]})})}function EL({stats:e,specStats:t}){const n=t&&t.totalSpecs>0?`${Math.round(t.verified/t.totalSpecs*100)}% success`:void 0;return m.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4",children:[m.jsx(Bi,{icon:"lucide:brain",label:"Observations",value:e.observations.toLocaleString()}),m.jsx(Bi,{icon:"lucide:scroll",label:"Total Specs",value:((t==null?void 0:t.totalSpecs)??0).toLocaleString()}),m.jsx(Bi,{icon:"lucide:shield-check",label:"Verified",value:((t==null?void 0:t.verified)??0).toLocaleString(),subtext:n}),m.jsx(Bi,{icon:"lucide:loader",label:"In Progress",value:((t==null?void 0:t.inProgress)??0).toLocaleString()}),m.jsx(Bi,{icon:"lucide:history",label:"Sessions",value:e.sessions.toLocaleString()}),m.jsx(Bi,{icon:"lucide:clock",label:"Last Observation",value:e.lastObservationAt||"None yet"}),m.jsx(Bi,{icon:"lucide:file-text",label:"Summaries",value:e.summaries.toLocaleString()}),m.jsx(Bi,{icon:"lucide:check-square",label:"Tasks Completed",value:((t==null?void 0:t.totalTasksCompleted)??0).toLocaleString(),subtext:t&&t.totalTasks>0?`of ${t.totalTasks} total`:void 0})]})}function CL({status:e,version:t,uptime:n,queueDepth:r=0}){const i=e==="processing",a=e!=="offline";return m.jsx(wt,{children:m.jsxs(kt,{children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(Vi,{children:"Worker Status"}),m.jsx(Te,{variant:"ghost",size:"sm",children:"Workspace"})]}),m.jsx(Te,{variant:a?"success":"error",children:a?"Online":"Offline"})]}),m.jsxs("div",{className:"space-y-3",children:[t&&m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:tag",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"Version:"}),m.jsx("span",{className:"font-mono",children:t})]}),n&&m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:clock",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"Uptime:"}),m.jsx("span",{children:n})]}),m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:i?"lucide:loader-2":"lucide:layers",size:16,className:`${i?"text-warning animate-spin":"text-base-content/50"}`}),m.jsx("span",{className:"text-base-content/70",children:"Queue:"}),m.jsxs("span",{className:i?"text-warning font-medium":"",children:[r," items"]}),i&&m.jsx(Te,{variant:"warning",size:"xs",children:"Processing"})]})]})]})})}function OL(e){if(!e)return"Never";try{const t=new Date(e),r=new Date().getTime()-t.getTime();return r<6e4?"just now":r<36e5?`${Math.floor(r/6e4)}m ago`:r<864e5?`${Math.floor(r/36e5)}h ago`:`${Math.floor(r/864e5)}d ago`}catch{return"Unknown"}}function NL({isIndexed:e,files:t,generatedAt:n,isReindexing:r}){return m.jsx(wt,{children:m.jsxs(kt,{className:"flex flex-col",children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(Vi,{children:"Codebase Indexing"}),m.jsx(Te,{variant:"ghost",size:"sm",children:"Workspace"})]}),r?m.jsxs(Te,{variant:"warning",children:[m.jsx(se,{icon:"lucide:refresh-cw",size:12,className:"mr-1 animate-spin"}),"Indexing..."]}):m.jsx(Te,{variant:e?"success":"warning",children:e?"Indexed":"Not Indexed"})]}),m.jsxs("div",{className:"space-y-3 flex-1",children:[m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:file-search",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"Files:"}),m.jsx("span",{className:"font-semibold",children:t.toLocaleString()})]}),m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:clock",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"Last indexed:"}),m.jsx("span",{children:OL(n)})]})]}),!r&&m.jsx("p",{className:"text-xs text-base-content/50 mt-3",children:t===0?m.jsxs(m.Fragment,{children:["Run ",m.jsx("code",{className:"bg-base-300/50 px-1 rounded",children:"/sync"})," in Claude Code to index your codebase."]}):m.jsxs(m.Fragment,{children:["Re-index with ",m.jsx("code",{className:"bg-base-300/50 px-1 rounded",children:"/sync"})," or ",m.jsx("code",{className:"bg-base-300/50 px-1 rounded",children:"vexor index --clear"})]})})]})})}function AL(e){try{const t=new URL(e);return(t.host+t.pathname).replace(/\.git$/,"")}catch{return e}}function _L(e){const{installed:t,version:n,configured:r,vaultUrl:i,assets:a,catalog:l,isLoading:u}=e;if(u)return m.jsx(wt,{children:m.jsxs(kt,{children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsx(Vi,{children:"Vault"}),m.jsx(Te,{variant:"ghost",children:"Loading..."})]}),m.jsxs("div",{className:"space-y-3 animate-pulse",children:[m.jsx("div",{className:"h-4 bg-base-300 rounded w-3/4"}),m.jsx("div",{className:"h-4 bg-base-300 rounded w-1/2"})]})]})});const c=new Set(a.map(d=>d.name)),f=l.filter(d=>!c.has(d.name)).length;return t?r?m.jsx(wt,{children:m.jsxs(kt,{className:"flex flex-col",children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(Vi,{children:"Vault"}),m.jsx(Te,{variant:"ghost",size:"sm",children:"Workspace"})]}),m.jsx(Te,{variant:"success",children:"Connected"})]}),m.jsxs("div",{className:"space-y-3 flex-1",children:[i&&m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:git-branch",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"Vault:"}),m.jsx("span",{className:"font-mono text-xs truncate",children:AL(i)})]}),m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:package",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"Installed:"}),m.jsx("span",{className:"font-semibold",children:a.length}),f>0&&m.jsxs("span",{className:"text-base-content/40",children:["(",f," available)"]})]}),m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:cloud",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"In vault:"}),m.jsx("span",{className:"font-semibold",children:l.length})]})]})]})}):m.jsx(wt,{children:m.jsxs(kt,{children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(Vi,{children:"Vault"}),n&&m.jsxs(Te,{variant:"ghost",size:"sm",children:["v",n]})]}),m.jsx(Te,{variant:"warning",children:"Not Configured"})]}),m.jsx("div",{className:"text-sm text-base-content/60",children:m.jsxs("p",{children:["sx is installed but no vault is configured. Run ",m.jsx("span",{className:"font-mono text-primary",children:"/vault"})," to set up."]})})]})}):m.jsx(wt,{children:m.jsxs(kt,{children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsx(Vi,{children:"Vault"}),m.jsx(Te,{variant:"ghost",children:"Not Installed"})]}),m.jsx("div",{className:"text-sm text-base-content/60",children:m.jsxs("p",{children:["sx is not installed. Run the Pilot installer or install from ",m.jsx("span",{className:"font-mono text-primary",children:"skills.new"}),"."]})})]})})}const IL={plan:{label:"Planning",color:"info",border:"border-l-info"},implement:{label:"Implementing",color:"warning",border:"border-l-warning"},verify:{label:"Verifying",color:"accent",border:"border-l-accent"}};function TL({plan:e}){const t=IL[e.phase],n=e.total>0?e.completed/e.total*100:0;return m.jsxs("div",{className:`border-l-4 ${t.border} pl-3 py-2`,children:[m.jsxs("div",{className:"flex items-center justify-between gap-2",children:[m.jsx("span",{className:"font-medium text-sm truncate",title:e.name,children:e.name}),m.jsxs("div",{className:"flex items-center gap-2 shrink-0",children:[m.jsx(Te,{variant:t.color,size:"xs",children:t.label}),m.jsxs("span",{className:"text-xs font-mono text-base-content/60",children:[e.completed,"/",e.total]})]})]}),m.jsx("div",{className:"w-full bg-base-300 rounded-full h-1.5 mt-1.5",children:m.jsx("div",{className:`h-1.5 rounded-full transition-all duration-300 ${n===100?"bg-success":"bg-primary"}`,style:{width:`${n}%`}})})]})}function ML({plans:e}){return e.length===0?m.jsx(wt,{children:m.jsxs(kt,{children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(Vi,{children:"Specification Status"}),m.jsx(Te,{variant:"ghost",size:"sm",children:"Workspace"})]}),m.jsx(Te,{variant:"ghost",children:"Quick Mode"})]}),m.jsxs("div",{className:"text-sm text-base-content/60",children:[m.jsx("p",{children:"No active spec-driven plan."}),m.jsxs("p",{className:"mt-2",children:["Use ",m.jsx("code",{className:"text-primary",children:"/spec"})," for complex tasks."]})]})]})}):m.jsx(wt,{children:m.jsxs(kt,{children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(Vi,{children:"Specification Status"}),m.jsx(Te,{variant:"ghost",size:"sm",children:"Workspace"})]}),m.jsxs(Te,{variant:"info",children:[e.length," active"]})]}),m.jsx("div",{className:"space-y-2",children:e.map((t,n)=>m.jsx(TL,{plan:t},t.filePath??`${t.name}-${n}`))})]})})}const DL=6e4;function pC(){const{selectedProject:e,setProjects:t}=za(),[n,r]=k.useState({observations:0,summaries:0,sessions:0,lastObservationAt:null,projects:0}),[i,a]=k.useState({status:"offline"}),[l,u]=k.useState({isIndexed:!1,files:0,mode:"",model:"",generatedAt:null,isReindexing:!1}),[c,f]=k.useState([]),[d,p]=k.useState({active:!1,plans:[]}),[g,y]=k.useState({branch:null,staged:0,unstaged:0,untracked:0}),[x,S]=k.useState({totalSpecs:0,verified:0,inProgress:0,pending:0,avgIterations:0,totalTasksCompleted:0,totalTasks:0,completionTimeline:[],recentlyVerified:[]}),[w,P]=k.useState([]),[C,O]=k.useState({installed:!1,version:null,configured:!1,vaultUrl:null,profile:null,assets:[],catalog:[],isInstalling:!1}),[A,I]=k.useState(!0),E=k.useCallback(async()=>{try{const W=await(await fetch("/api/vault/status")).json();O(W)}catch{}},[]),L=k.useCallback(async()=>{try{const R=e?`?project=${encodeURIComponent(e)}`:"",M=await(await fetch(`/api/vexor/status${R}`)).json();u({isIndexed:M.isIndexed??!1,files:M.files??0,mode:M.mode??"",model:M.model??"",generatedAt:M.generatedAt??null,isReindexing:M.isReindexing??!1})}catch{}},[e]),F=k.useCallback(async()=>{var W,M,Z,Y,Q,he,de;const R=e?`?project=${encodeURIComponent(e)}`:"";try{const[J,ae,T,$,U,_,te,fe]=await Promise.all([fetch(`/api/stats${R}`),fetch("/health"),fetch(`/api/observations?limit=5${e?`&project=${encodeURIComponent(e)}`:""}`),fetch("/api/projects"),fetch(`/api/plan${R}`),fetch(`/api/git${R}`),fetch(`/api/plans/stats${R}`).catch(()=>null),fetch(`/api/analytics/timeline?range=30d${e?`&project=${encodeURIComponent(e)}`:""}`).catch(()=>null)]),ce=await J.json(),Se=await ae.json(),je=await T.json(),X=await $.json(),we=await U.json(),Ae=await _.json();if(te!=null&&te.ok){const Pt=await te.json();S(Pt)}if(fe!=null&&fe.ok){const Pt=await fe.json();P(Pt.data||[])}const ie=je.items||je.observations||je||[],rt=Array.isArray(ie)?ie:[],ze=rt.length>0&&((W=rt[0])==null?void 0:W.created_at)||null,ct=X.projects||[];t(ct),r({observations:((M=ce.database)==null?void 0:M.observations)||0,summaries:((Z=ce.database)==null?void 0:Z.summaries)||0,sessions:((Y=ce.database)==null?void 0:Y.sessions)||0,lastObservationAt:ze?Qw(ze):null,projects:ct.length}),a({status:Se.status==="ok"?Se.isProcessing?"processing":"online":"offline",version:(Q=ce.worker)==null?void 0:Q.version,uptime:(he=ce.worker)!=null&&he.uptime?LL(ce.worker.uptime):void 0,queueDepth:Se.queueDepth||0,workspaceProject:(de=ce.worker)==null?void 0:de.workspaceProject});const ft=je.items||je.observations||je||[];f((Array.isArray(ft)?ft:[]).slice(0,5).map(Pt=>{var Ur;return{id:Pt.id,type:Pt.obs_type||Pt.type||"observation",title:Pt.title||((Ur=Pt.content)==null?void 0:Ur.slice(0,100))||"Untitled",project:Pt.project||"unknown",timestamp:Qw(Pt.created_at)}}));const Ut=we.plans||(we.plan?[we.plan]:[]);p({active:Ut.length>0,plans:Ut}),y({branch:Ae.branch||null,staged:Ae.staged||0,unstaged:Ae.unstaged||0,untracked:Ae.untracked||0})}catch(J){console.error("Failed to load stats:",J),a({status:"offline"})}finally{I(!1)}},[e,t]),H=k.useRef(F);return k.useEffect(()=>{H.current=F},[F]),k.useEffect(()=>{F()},[F]),k.useEffect(()=>{L(),E();const R=setInterval(L,DL),W=new EventSource("/stream");return W.onmessage=M=>{try{const Z=JSON.parse(M.data);Z.type==="processing_status"&&a(Y=>({...Y,status:Z.isProcessing?"processing":"online",queueDepth:Z.queueDepth??Y.queueDepth})),(Z.type==="new_observation"||Z.type==="new_summary"||Z.type==="plan_association_changed")&&H.current()}catch{}},()=>{clearInterval(R),W.close()}},[L,E]),{stats:n,workerStatus:i,vexorStatus:l,vaultStatus:C,recentActivity:c,planStatus:d,gitInfo:g,specStats:x,observationTimeline:w,isLoading:A,refreshStats:F}}function Qw(e){if(!e)return"";const t=new Date(e),r=new Date().getTime()-t.getTime();return r<6e4?"just now":r<36e5?`${Math.floor(r/6e4)}m ago`:r<864e5?`${Math.floor(r/36e5)}h ago`:t.toLocaleDateString()}function LL(e){return e<60?`${e}s`:e<3600?`${Math.floor(e/60)}m`:e<86400?`${Math.floor(e/3600)}h`:`${Math.floor(e/86400)}d`}function RL(){const{stats:e,workerStatus:t,vexorStatus:n,vaultStatus:r,planStatus:i,specStats:a,isLoading:l}=pC(),{selectedProject:u}=za();return l?m.jsx("div",{className:"flex items-center justify-center h-64",children:m.jsx("span",{className:"loading loading-spinner loading-lg"})}):m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Dashboard"}),m.jsx("p",{className:"text-base-content/60",children:u?`Filtered by: ${u}`:"Overview of your Pilot Console"})]}),m.jsx(EL,{stats:e,specStats:a}),(!u||u===t.workspaceProject)&&m.jsxs("div",{className:"space-y-4",children:[m.jsx("h2",{className:"text-sm font-semibold uppercase tracking-wider text-base-content/40",children:"Workspace"}),m.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6 [&>*]:h-full",children:[m.jsx(NL,{isIndexed:n.isIndexed,files:n.files,generatedAt:n.generatedAt,isReindexing:n.isReindexing}),m.jsx(CL,{status:t.status,version:t.version,uptime:t.uptime,queueDepth:t.queueDepth}),m.jsx(ML,{plans:i.plans}),m.jsx(_L,{...r,isLoading:l})]})]})]})}const zL=[{value:"all",label:"All Types"},{value:"observation",label:"Observations"},{value:"summary",label:"Summaries"},{value:"prompt",label:"Prompts"}];function $L({viewMode:e,onViewModeChange:t,filterType:n,onFilterTypeChange:r,totalCount:i,selectionMode:a,onToggleSelectionMode:l,selectedCount:u,onSelectAll:c,onExport:f,onDelete:d,isExporting:p,isDeleting:g,allSelected:y}){const x=[{label:"Export as JSON",onClick:()=>f("json"),icon:m.jsx(se,{icon:"lucide:file-json",size:16})},{label:"Export as CSV",onClick:()=>f("csv"),icon:m.jsx(se,{icon:"lucide:file-spreadsheet",size:16})},{label:"Export as Markdown",onClick:()=>f("markdown"),icon:m.jsx(se,{icon:"lucide:file-text",size:16})}];return m.jsxs("div",{className:"flex items-center justify-between gap-4 flex-wrap",children:[m.jsx("div",{className:"flex items-center gap-2",children:a?m.jsxs(m.Fragment,{children:[m.jsxs(Yt,{variant:"ghost",size:"sm",onClick:c,children:[m.jsx(se,{icon:y?"lucide:check-square":"lucide:square",size:16,className:"mr-1"}),y?"Deselect All":"Select All"]}),m.jsxs("span",{className:"text-sm text-base-content/60",children:[u," of ",i," selected"]})]}):m.jsxs("span",{className:"text-sm text-base-content/60",children:[i," items"]})}),m.jsx("div",{className:"flex items-center gap-2",children:a?m.jsxs(m.Fragment,{children:[m.jsx(KE,{trigger:m.jsxs(Yt,{variant:"primary",size:"sm",loading:p,disabled:u===0,children:[m.jsx(se,{icon:"lucide:download",size:16,className:"mr-1"}),"Export"]}),items:x}),m.jsxs(Yt,{variant:"error",size:"sm",onClick:d,loading:g,disabled:u===0,children:[m.jsx(se,{icon:"lucide:trash-2",size:16,className:"mr-1"}),"Delete"]}),m.jsx(Yt,{variant:"ghost",size:"sm",onClick:l,children:"Cancel"})]}):m.jsxs(m.Fragment,{children:[m.jsxs(Yt,{variant:"ghost",size:"sm",onClick:l,children:[m.jsx(se,{icon:"lucide:check-square",size:16,className:"mr-1"}),"Select"]}),m.jsx(QM,{options:zL,value:n,onChange:S=>r(S.target.value),selectSize:"sm",className:"w-40"}),m.jsxs("div",{className:"btn-group",children:[m.jsx(Yt,{variant:e==="grid"?"primary":"ghost",size:"sm",onClick:()=>t("grid"),children:m.jsx(se,{icon:"lucide:grid-3x3",size:16})}),m.jsx(Yt,{variant:e==="list"?"primary":"ghost",size:"sm",onClick:()=>t("list"),children:m.jsx(se,{icon:"lucide:list",size:16})})]})]})})]})}const FL={observation:{icon:"lucide:brain",variant:"info",color:"text-info"},summary:{icon:"lucide:file-text",variant:"warning",color:"text-warning"},prompt:{icon:"lucide:message-square",variant:"secondary",color:"text-secondary"},bugfix:{icon:"lucide:bug",variant:"error",color:"text-error"},feature:{icon:"lucide:sparkles",variant:"success",color:"text-success"},refactor:{icon:"lucide:refresh-cw",variant:"accent",color:"text-accent"},discovery:{icon:"lucide:search",variant:"info",color:"text-info"},decision:{icon:"lucide:git-branch",variant:"warning",color:"text-warning"},change:{icon:"lucide:pencil",variant:"secondary",color:"text-secondary"}},BL={icon:"lucide:circle",variant:"secondary",color:"text-secondary"};function UL({memory:e,viewMode:t,onDelete:n,onView:r,selectionMode:i,isSelected:a,onToggleSelection:l}){const u=FL[e.type]||BL,c=t==="grid",f=[{label:"View Details",onClick:()=>r==null?void 0:r(e.id),icon:m.jsx(se,{icon:"lucide:eye",size:16})},{label:"Copy ID",onClick:()=>navigator.clipboard.writeText(String(e.id)),icon:m.jsx(se,{icon:"lucide:copy",size:16})},{label:"Delete",onClick:()=>n==null?void 0:n(e.id),icon:m.jsx(se,{icon:"lucide:trash-2",size:16})}],d=()=>{i&&(l==null||l(e.id))};return m.jsx(wt,{className:`hover:shadow-md transition-shadow ${c?"":"flex flex-row"} ${i?"cursor-pointer":""} ${a?"ring-2 ring-primary":""}`,onClick:d,children:m.jsxs(kt,{className:c?"":"flex flex-row items-start gap-4 flex-1",children:[m.jsxs("div",{className:`flex items-start gap-3 ${c?"mb-3":"flex-1"}`,children:[i?m.jsx("div",{className:"flex items-center justify-center w-8 h-8 flex-shrink-0",children:m.jsx("input",{type:"checkbox",className:"checkbox checkbox-primary",checked:a,onChange:()=>l==null?void 0:l(e.id),onClick:p=>p.stopPropagation()})}):m.jsx("div",{className:`p-2 rounded-lg bg-base-200 ${u.color}`,children:m.jsx(se,{icon:u.icon,size:18})}),m.jsxs("div",{className:"flex-1 min-w-0",children:[m.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[m.jsx(Te,{variant:u.variant,size:"xs",children:e.type}),m.jsxs("span",{className:"text-xs text-base-content/50",children:["#",e.id]})]}),m.jsx("h3",{className:"font-medium text-sm line-clamp-2",children:e.title}),c&&e.facts&&e.facts.length>0?m.jsxs("ul",{className:"text-xs text-base-content/60 mt-1 space-y-0.5 list-disc list-inside",children:[e.facts.slice(0,3).map((p,g)=>m.jsx("li",{className:"line-clamp-1",children:p},g)),e.facts.length>3&&m.jsxs("li",{className:"text-base-content/40",children:["+",e.facts.length-3," more"]})]}):c&&e.content?m.jsx("p",{className:"text-xs text-base-content/60 mt-1 line-clamp-3",children:e.content}):null]})]}),m.jsxs("div",{className:`flex items-center gap-2 ${c?"justify-between mt-3 pt-3 border-t border-base-200":""}`,children:[m.jsxs("div",{className:"flex items-center gap-2 text-xs text-base-content/50",children:[m.jsx(se,{icon:"lucide:folder",size:14}),m.jsx("span",{className:"truncate max-w-24",children:e.project})]}),m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx("span",{className:"text-xs text-base-content/50",children:e.timestamp}),m.jsx(KE,{trigger:m.jsx(Yt,{variant:"ghost",size:"xs",className:"btn-square",children:m.jsx(se,{icon:"lucide:more-vertical",size:14})}),items:f})]})]}),c&&e.concepts&&e.concepts.length>0&&m.jsxs("div",{className:"flex flex-wrap gap-1 mt-2",children:[e.concepts.slice(0,3).map(p=>m.jsx(Te,{variant:"ghost",size:"xs",children:p},p)),e.concepts.length>3&&m.jsxs(Te,{variant:"ghost",size:"xs",children:["+",e.concepts.length-3]})]})]})})}const WL={observation:{icon:"lucide:brain",variant:"info"},summary:{icon:"lucide:file-text",variant:"warning"},prompt:{icon:"lucide:message-square",variant:"secondary"},bugfix:{icon:"lucide:bug",variant:"error"},feature:{icon:"lucide:sparkles",variant:"success"},refactor:{icon:"lucide:refresh-cw",variant:"accent"},discovery:{icon:"lucide:search",variant:"info"},decision:{icon:"lucide:git-branch",variant:"warning"},change:{icon:"lucide:pencil",variant:"secondary"}};function qL({memory:e,onClose:t}){const[n,r]=k.useState("content"),i=e?WL[e.type]||{icon:"lucide:circle",variant:"secondary"}:{icon:"lucide:circle",variant:"secondary"};return m.jsx(VE,{open:!!e,onClose:t,title:"Memory Details",children:e&&m.jsxs("div",{className:"space-y-4",children:[m.jsxs("div",{className:"flex items-start gap-3",children:[m.jsx("div",{className:`p-3 rounded-lg bg-base-200 text-${i.variant}`,children:m.jsx(se,{icon:i.icon,size:24})}),m.jsxs("div",{className:"flex-1 min-w-0",children:[m.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[m.jsx(Te,{variant:i.variant,size:"sm",children:e.type}),m.jsxs("span",{className:"text-sm text-base-content/50",children:["#",e.id]})]}),m.jsx("h3",{className:"text-lg font-semibold",children:e.title}),m.jsxs("div",{className:"flex items-center gap-2 mt-1 text-sm text-base-content/60",children:[m.jsx(se,{icon:"lucide:folder",size:14}),m.jsx("span",{children:e.project}),m.jsx("span",{children:"•"}),m.jsx("span",{children:e.timestamp})]})]})]}),m.jsxs("div",{className:"tabs tabs-boxed",children:[m.jsx("button",{className:`tab ${n==="content"?"tab-active":""}`,onClick:()=>r("content"),children:"Content"}),m.jsx("button",{className:`tab ${n==="metadata"?"tab-active":""}`,onClick:()=>r("metadata"),children:"Metadata"})]}),n==="content"&&m.jsx("div",{className:"bg-base-200 rounded-lg p-4 max-h-96 overflow-y-auto",children:e.facts&&e.facts.length>0?m.jsx("ul",{className:"text-sm space-y-2 list-disc list-inside",children:e.facts.map((a,l)=>m.jsx("li",{children:a},l))}):m.jsx("pre",{className:"text-sm whitespace-pre-wrap break-words",children:e.content||"No content available"})}),n==="metadata"&&m.jsxs("div",{className:"space-y-4",children:[e.concepts&&e.concepts.length>0&&m.jsxs("div",{children:[m.jsx("h4",{className:"text-sm font-medium mb-2",children:"Concepts"}),m.jsx("div",{className:"flex flex-wrap gap-1",children:e.concepts.map(a=>m.jsx(Te,{variant:"ghost",size:"sm",children:a},a))})]}),m.jsxs("div",{children:[m.jsx("h4",{className:"text-sm font-medium mb-2",children:"ID"}),m.jsx("code",{className:"text-xs bg-base-200 px-2 py-1 rounded",children:e.id})]})]})]})})}function HL({onSearch:e,isSearching:t,placeholder:n="Search your memories semantically..."}){const[r,i]=k.useState(""),a=l=>{l.preventDefault(),r.trim()&&e(r.trim())};return m.jsxs("form",{onSubmit:a,className:"flex gap-2",children:[m.jsxs("div",{className:"relative flex-1",children:[m.jsx(se,{icon:"lucide:search",size:20,className:"absolute left-4 top-1/2 -translate-y-1/2 text-base-content/50"}),m.jsx("input",{type:"search",placeholder:n,value:r,onChange:l=>i(l.target.value),className:"input input-bordered w-full pl-12 pr-4"})]}),m.jsx(Yt,{type:"submit",loading:t,disabled:!r.trim(),children:"Search"})]})}const VL={observation:{icon:"lucide:brain",variant:"info",label:"Observation"},summary:{icon:"lucide:file-text",variant:"warning",label:"Summary"},prompt:{icon:"lucide:message-square",variant:"secondary",label:"Prompt"},bugfix:{icon:"lucide:bug",variant:"error",label:"Bug Fix"},feature:{icon:"lucide:sparkles",variant:"success",label:"Feature"},refactor:{icon:"lucide:refresh-cw",variant:"accent",label:"Refactor"},discovery:{icon:"lucide:search",variant:"info",label:"Discovery"},decision:{icon:"lucide:git-branch",variant:"warning",label:"Decision"},change:{icon:"lucide:pencil",variant:"secondary",label:"Change"}},KL={icon:"lucide:circle",variant:"secondary",label:"Unknown"};function GL(e){try{return new Date(e).toLocaleDateString("en-US",{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}catch{return e}}function YL({result:e}){const t=e.obsType||e.type,n=VL[t]||KL,r=Math.round(e.score*100),i=a=>a>=.7?"text-success":a>=.4?"text-warning":"text-base-content/50";return m.jsx(wt,{className:"hover:shadow-md transition-shadow",children:m.jsx(kt,{children:m.jsxs("div",{className:"flex items-start gap-3",children:[m.jsx("div",{className:"p-2 rounded-lg bg-base-200 shrink-0",children:m.jsx(se,{icon:n.icon,size:18})}),m.jsxs("div",{className:"flex-1 min-w-0",children:[m.jsxs("div",{className:"flex items-center gap-2 mb-1 flex-wrap",children:[m.jsx(Te,{variant:n.variant,size:"xs",children:n.label}),m.jsxs("span",{className:"text-xs text-base-content/50",children:["#",e.id]}),e.score>0&&m.jsxs("span",{className:`ml-auto text-xs font-mono ${i(e.score)}`,children:[r,"% match"]})]}),m.jsx("h3",{className:"font-medium truncate",children:e.title}),m.jsx("p",{className:"text-sm text-base-content/60 mt-1 line-clamp-2",children:e.content}),m.jsxs("div",{className:"flex items-center gap-4 mt-3 text-xs text-base-content/50",children:[e.project&&m.jsxs("span",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:folder",size:12}),e.project]}),m.jsxs("span",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:clock",size:12}),GL(e.timestamp)]})]})]}),e.score>0&&m.jsxs("div",{className:"w-16 shrink-0 hidden sm:block",children:[m.jsx("div",{className:"h-2 bg-base-200 rounded-full overflow-hidden",children:m.jsx("div",{className:`h-full rounded-full transition-all ${e.score>=.7?"bg-success":e.score>=.4?"bg-warning":"bg-base-content/30"}`,style:{width:`${r}%`}})}),m.jsx("div",{className:"text-[10px] text-center mt-1 text-base-content/50",children:"similarity"})]})]})})})}const XL=12e4;function QL(){const{selectedProject:e}=za(),[t,n]=k.useState(!1),[r,i]=k.useState([]),[a,l]=k.useState(!1),[u,c]=k.useState(null),[f,d]=k.useState(null),p=k.useRef(null),g=k.useRef(!1),y=k.useCallback(async S=>{var C;(C=p.current)==null||C.abort(),g.current=!1;const w=new AbortController;p.current=w;const P=setTimeout(()=>w.abort(),XL);l(!0),n(!0),c(null);try{const O=new URLSearchParams({query:S,limit:"30"});e&&O.set("project",e);const A=await fetch(`/api/search/semantic?${O}`,{signal:w.signal});if(!A.ok)throw new Error(`Search failed with status ${A.status}`);const I=await A.json();i(I.results||[]),d({usedSemantic:I.usedSemantic,vectorDbAvailable:I.vectorDbAvailable})}catch(O){if(g.current)return;O.name==="AbortError"?c("Search timed out. Please try again."):c("Search failed. Please try again."),i([]),d(null)}finally{clearTimeout(P),g.current||l(!1)}},[e]),x=k.useCallback(()=>{var S;g.current=!0,(S=p.current)==null||S.abort(),n(!1),i([]),d(null),c(null),l(!1)},[]);return k.useEffect(()=>()=>{var S;(S=p.current)==null||S.abort()},[]),{isSearchMode:t,searchResults:r,isSearching:a,searchError:u,searchMeta:f,handleSearch:y,handleClearSearch:x}}function Zw(){var $;const[e,t]=k.useState([]),[n,r]=k.useState(!0),[i,a]=k.useState("grid"),[l,u]=k.useState("all"),[c,f]=k.useState(null),[d,p]=k.useState(!1),[g,y]=k.useState(new Set),[x,S]=k.useState(!1),[w,P]=k.useState(!1),C=uC(),{selectedProject:O}=za(),{isSearchMode:A,searchResults:I,isSearching:E,searchError:L,searchMeta:F,handleSearch:H,handleClearSearch:R}=QL(),W=k.useCallback(async U=>{d&&(p(!1),y(new Set)),await H(U)},[d,H]),M=k.useCallback(async()=>{r(!0);try{const U=new URLSearchParams;l!=="all"&&U.set("type",l),O&&U.set("project",O),U.set("limit","50");const te=await(await fetch(`/api/observations?${U}`)).json(),fe=te.items||te.observations||[];t(fe.map(ce=>({id:ce.id,type:ce.type||"observation",title:ce.title||"Untitled",content:ce.narrative||ce.content||"",facts:ce.facts?typeof ce.facts=="string"?JSON.parse(ce.facts):ce.facts:[],project:ce.project||"unknown",timestamp:Z(ce.created_at),concepts:ce.concepts?typeof ce.concepts=="string"?JSON.parse(ce.concepts):ce.concepts:[]})))}catch(U){console.error("Failed to fetch memories:",U)}finally{r(!1)}},[l,O]);function Z(U){if(!U)return"";const _=new Date(U),fe=new Date().getTime()-_.getTime();return fe<6e4?"just now":fe<36e5?`${Math.floor(fe/6e4)}m ago`:fe<864e5?`${Math.floor(fe/36e5)}h ago`:_.toLocaleDateString()}k.useEffect(()=>{M()},[M]);const Y=async U=>{if(confirm("Delete this memory?"))try{await fetch(`/api/observation/${U}`,{method:"DELETE"}),t(_=>_.filter(te=>te.id!==U))}catch(_){console.error("Failed to delete:",_)}},Q=U=>{const _=e.find(te=>te.id===U);_&&f(_)},he=U=>{y(_=>{const te=new Set(_);return te.has(U)?te.delete(U):te.add(U),te})},de=()=>{g.size===e.length?y(new Set):y(new Set(e.map(U=>U.id)))},J=()=>{p(!1),y(new Set)},ae=async U=>{if(g.size===0){C.error("No memories selected");return}S(!0);try{const _=Array.from(g).join(","),te=`/api/export?format=${U}&ids=${_}`,ce=await(await fetch(te)).blob(),Se=window.URL.createObjectURL(ce),je=document.createElement("a");je.href=Se,je.download=`pilot-memory-export-${new Date().toISOString().split("T")[0]}.${U==="markdown"?"md":U}`,document.body.appendChild(je),je.click(),document.body.removeChild(je),window.URL.revokeObjectURL(Se),C.success(`Exported ${g.size} memories`)}catch{C.error("Export failed")}finally{S(!1)}},T=async()=>{if(g.size===0){C.error("No memories selected");return}if(confirm(`Delete ${g.size} memories? This cannot be undone.`)){P(!0);try{const U=await fetch("/api/observations/delete",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({ids:Array.from(g)})});if(U.ok){const _=await U.json();C.success(`Deleted ${_.deletedCount} memories`),t(te=>te.filter(fe=>!g.has(fe.id))),y(new Set),p(!1)}else C.error("Delete failed")}catch{C.error("Delete failed")}finally{P(!1)}}};return m.jsxs("div",{className:"space-y-6",children:[m.jsxs("div",{children:[m.jsxs("div",{className:"flex items-center gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Memories"}),m.jsx(lC,{project:O})]}),m.jsx("p",{className:"text-base-content/60",children:A?"Search results":"Browse and manage your stored memories"})]}),m.jsx(HL,{onSearch:W,isSearching:E,placeholder:"Search memories semantically..."}),A&&m.jsx("div",{className:"flex items-center gap-2",children:m.jsxs(Yt,{variant:"ghost",size:"sm",onClick:R,children:[m.jsx(se,{icon:"lucide:x",size:16,className:"mr-1"}),"Clear search"]})}),A&&F&&m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[F.vectorDbAvailable?F.usedSemantic?m.jsxs(Te,{variant:"success",outline:!0,size:"sm",children:[m.jsx(se,{icon:"lucide:brain",size:14,className:"mr-1"}),"Semantic Search Active"]}):m.jsxs(Te,{variant:"warning",outline:!0,size:"sm",children:[m.jsx(se,{icon:"lucide:filter",size:14,className:"mr-1"}),"Filter-only Mode"]}):m.jsxs(Te,{variant:"error",outline:!0,size:"sm",children:[m.jsx(se,{icon:"lucide:alert-triangle",size:14,className:"mr-1"}),"Vector DB Unavailable"]}),m.jsx("span",{className:"text-base-content/50",children:F.usedSemantic?"Results ranked by semantic similarity":F.vectorDbAvailable?"Enter a query for semantic ranking":"Install Chroma for semantic search"})]}),!A&&m.jsx($L,{viewMode:i,onViewModeChange:a,filterType:l,onFilterTypeChange:u,totalCount:e.length,selectionMode:d,onToggleSelectionMode:()=>d?J():p(!0),selectedCount:g.size,onSelectAll:de,onExport:ae,onDelete:T,isExporting:x,isDeleting:w,allSelected:e.length>0&&g.size===e.length}),L&&!E&&m.jsxs("div",{className:"alert alert-error",children:[m.jsx(se,{icon:"lucide:alert-circle",size:16}),m.jsx("span",{children:L})]}),A?E?m.jsxs("div",{className:"flex flex-col items-center justify-center h-64 gap-3",children:[m.jsx(Xi,{size:"lg"}),m.jsx("span",{className:"text-sm text-base-content/50",children:"Searching memories..."})]}):L?null:I.length===0?m.jsx(Eo,{icon:"lucide:search-x",title:"No results found",description:"Try a different query"}):m.jsxs("div",{className:"space-y-3",children:[m.jsxs("div",{className:"text-sm text-base-content/60",children:[I.length," results",(F==null?void 0:F.usedSemantic)&&(($=I[0])==null?void 0:$.score)>0&&m.jsxs("span",{className:"ml-2",children:["(best match: ",Math.round(I[0].score*100),"% similarity)"]})]}),I.map(U=>m.jsx(YL,{result:U},`${U.type}-${U.id}`))]}):n?m.jsx("div",{className:"flex items-center justify-center h-64",children:m.jsx(Xi,{size:"lg"})}):e.length===0?m.jsx(Eo,{icon:"lucide:brain",title:"No memories found",description:"Memories will appear here as you use Claude Code"}):m.jsx("div",{className:i==="grid"?"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4":"space-y-3",children:e.map(U=>m.jsx(UL,{memory:U,viewMode:i,onDelete:Y,onView:Q,selectionMode:d,isSelected:g.has(U.id),onToggleSelection:he},U.id))}),m.jsx(qL,{memory:c,onClose:()=>f(null)})]})}const Jw={active:{variant:"warning",icon:"lucide:play"},completed:{variant:"success",icon:"lucide:check"},failed:{variant:"error",icon:"lucide:x"}};function ZL(e){return new Date(e).toLocaleDateString("en-US",{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}function JL(e,t){if(!t)return"ongoing";const n=t-e,r=Math.floor(n/6e4);if(r<1)return"< 1 min";if(r<60)return`${r} min`;const i=Math.floor(r/60),a=r%60;return`${i}h ${a}m`}function eR({session:e,isExpanded:t,onToggle:n}){const r=Jw[e.status]||Jw.active;return m.jsx(wt,{className:`cursor-pointer hover:shadow-md transition-shadow ${t?"ring-2 ring-primary":""}`,onClick:n,children:m.jsx(kt,{children:m.jsxs("div",{className:"flex items-start gap-4",children:[m.jsx("div",{className:"p-2 rounded-lg bg-base-200",children:m.jsx(se,{icon:r.icon,size:20,className:`text-${r.variant}`})}),m.jsxs("div",{className:"flex-1 min-w-0",children:[m.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[m.jsx(Te,{variant:r.variant,size:"sm",children:e.status}),m.jsxs("span",{className:"text-xs text-base-content/50",children:["#",e.id]})]}),m.jsx("h3",{className:"font-medium line-clamp-1",children:e.user_prompt||e.project||"Untitled Session"}),m.jsxs("div",{className:"flex items-center gap-4 mt-2 text-sm text-base-content/60",children:[m.jsxs("span",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:folder",size:14}),e.project]}),m.jsxs("span",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:calendar",size:14}),ZL(e.started_at)]}),m.jsxs("span",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:clock",size:14}),JL(e.started_at_epoch,e.completed_at_epoch)]})]})]}),m.jsxs("div",{className:"flex items-center gap-4 text-sm",children:[m.jsxs("div",{className:"text-center",children:[m.jsx("div",{className:"font-semibold",children:e.observation_count}),m.jsx("div",{className:"text-xs text-base-content/50",children:"observations"})]}),m.jsxs("div",{className:"text-center",children:[m.jsx("div",{className:"font-semibold",children:e.prompt_count}),m.jsx("div",{className:"text-xs text-base-content/50",children:"prompts"})]}),m.jsx(se,{icon:t?"lucide:chevron-up":"lucide:chevron-down",size:20,className:"text-base-content/50"})]})]})})})}const Np={prompt:{icon:"lucide:message-square",color:"text-primary"},observation:{icon:"lucide:brain",color:"text-info"},bugfix:{icon:"lucide:bug",color:"text-error"},feature:{icon:"lucide:sparkles",color:"text-success"},refactor:{icon:"lucide:refresh-cw",color:"text-accent"},discovery:{icon:"lucide:search",color:"text-info"},decision:{icon:"lucide:git-branch",color:"text-warning"},change:{icon:"lucide:pencil",color:"text-secondary"}};function tR(e){return new Date(e).toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit"})}function nR({sessionId:e}){const[t,n]=k.useState(null),[r,i]=k.useState(!0),[a,l]=k.useState(new Set);k.useEffect(()=>{async function f(){i(!0);try{const p=await(await fetch(`/api/sessions/${e}/timeline`)).json();n(p)}catch(d){console.error("Failed to fetch timeline:",d)}finally{i(!1)}}f()},[e]);const u=f=>{l(d=>{const p=new Set(d);return p.has(f)?p.delete(f):p.add(f),p})};if(r)return m.jsx("div",{className:"flex items-center justify-center py-8",children:m.jsx(Xi,{size:"md"})});if(!t)return m.jsx("div",{className:"text-center py-8 text-base-content/50",children:"Failed to load timeline"});const c={active:"badge-success",completed:"badge-info",failed:"badge-error"};return m.jsxs("div",{className:"mt-4 space-y-4",children:[m.jsx(wt,{className:"bg-base-200/50",children:m.jsxs(kt,{className:"py-3",children:[m.jsxs("div",{className:"flex flex-wrap items-center gap-3 mb-2",children:[m.jsx(Te,{variant:"ghost",size:"sm",className:c[t.session.status]||"",children:t.session.status}),m.jsx("span",{className:"text-sm text-base-content/60",children:new Date(t.session.started_at).toLocaleString()}),t.session.completed_at&&m.jsxs("span",{className:"text-sm text-base-content/60",children:["→ ",new Date(t.session.completed_at).toLocaleString()]})]}),m.jsxs("div",{className:"flex flex-wrap gap-4 text-sm",children:[m.jsxs("div",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:message-square",size:14,className:"text-primary"}),m.jsx("span",{className:"font-medium",children:t.stats.prompts}),m.jsx("span",{className:"text-base-content/60",children:"prompts"})]}),m.jsxs("div",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:brain",size:14,className:"text-info"}),m.jsx("span",{className:"font-medium",children:t.stats.observations}),m.jsx("span",{className:"text-base-content/60",children:"observations"})]})]})]})}),t.summary&&m.jsx(wt,{className:"bg-warning/10 border-warning/30",children:m.jsxs(kt,{className:"py-3",children:[m.jsxs("div",{className:"flex items-center gap-2 mb-3",children:[m.jsx(se,{icon:"lucide:file-text",size:16,className:"text-warning"}),m.jsx("span",{className:"font-medium text-sm",children:"Session Summary"}),m.jsx("span",{className:"text-xs text-base-content/50",children:new Date(t.summary.created_at).toLocaleTimeString()})]}),m.jsxs("div",{className:"space-y-3 text-sm",children:[t.summary.request&&m.jsxs("div",{children:[m.jsx("div",{className:"font-medium text-warning mb-1",children:"Request"}),m.jsx("div",{className:"text-base-content/80",children:t.summary.request})]}),t.summary.investigated&&m.jsxs("div",{children:[m.jsx("div",{className:"font-medium text-info mb-1",children:"Investigated"}),m.jsx("div",{className:"text-base-content/80",children:t.summary.investigated})]}),t.summary.learned&&m.jsxs("div",{children:[m.jsx("div",{className:"font-medium text-success mb-1",children:"Learned"}),m.jsx("div",{className:"text-base-content/80",children:t.summary.learned})]}),t.summary.completed&&m.jsxs("div",{children:[m.jsx("div",{className:"font-medium text-primary mb-1",children:"Completed"}),m.jsx("div",{className:"text-base-content/80",children:t.summary.completed})]}),t.summary.next_steps&&m.jsxs("div",{children:[m.jsx("div",{className:"font-medium text-accent mb-1",children:"Next Steps"}),m.jsx("div",{className:"text-base-content/80",children:t.summary.next_steps})]})]})]})}),m.jsxs("div",{className:"ml-8 border-l-2 border-base-300 pl-6 space-y-4",children:[[...t.timeline].reverse().map((f,d)=>{var S,w;const p=`${f.type}-${f.id}`,g=a.has(p),y=f.type==="prompt"?Np.prompt:Np[f.data.type]||Np.observation;let x=[];if(f.type==="observation"&&f.data.concepts)try{x=JSON.parse(f.data.concepts)}catch{}return m.jsxs("div",{className:"relative",children:[m.jsx("div",{className:`absolute -left-9 top-3 w-4 h-4 rounded-full border-2 border-base-100 ${f.type==="prompt"?"bg-primary":"bg-info"}`}),m.jsx(wt,{className:"cursor-pointer hover:shadow-sm transition-shadow",onClick:P=>{P.stopPropagation(),u(p)},children:m.jsx(kt,{className:"py-3",children:m.jsxs("div",{className:"flex items-start gap-3",children:[m.jsx("div",{className:`p-1.5 rounded bg-base-200 ${y.color}`,children:m.jsx(se,{icon:y.icon,size:14})}),m.jsxs("div",{className:"flex-1 min-w-0",children:[m.jsxs("div",{className:"flex flex-wrap items-center gap-2 mb-1",children:[m.jsx(Te,{variant:f.type==="prompt"?"primary":"info",size:"xs",children:f.type==="prompt"?`prompt #${f.data.prompt_number||"?"}`:f.data.type||"observation"}),m.jsx("span",{className:"text-xs text-base-content/50",children:tR(f.timestamp)}),m.jsxs("span",{className:"text-xs text-base-content/40",children:["#",f.id]}),x.length>0&&x.map(P=>m.jsx(Te,{variant:"ghost",size:"xs",className:"text-base-content/50",children:P},P))]}),m.jsx("p",{className:"text-sm font-medium",children:f.type==="prompt"?((S=f.data.prompt_text)==null?void 0:S.length)>100?f.data.prompt_text.substring(0,100)+"...":f.data.prompt_text:f.data.title||"Untitled"}),f.type==="observation"&&f.data.narrative&&m.jsx("p",{className:`text-sm text-base-content/70 mt-1 ${g?"":"line-clamp-3"}`,children:f.data.narrative}),f.type==="prompt"&&((w=f.data.prompt_text)==null?void 0:w.length)>100&&m.jsx("p",{className:`text-sm text-base-content/70 mt-1 ${g?"whitespace-pre-wrap":"line-clamp-3"}`,children:g?f.data.prompt_text:f.data.prompt_text.substring(100)}),f.type==="observation"&&(f.data.files_read||f.data.files_modified)&&m.jsxs("div",{className:"flex flex-wrap gap-2 mt-2",children:[f.data.files_read&&(()=>{try{const P=JSON.parse(f.data.files_read);if(P.length>0)return m.jsxs("span",{className:"text-xs text-base-content/50",children:[m.jsx(se,{icon:"lucide:file",size:12,className:"inline mr-1"}),P.length," read"]})}catch{return null}})(),f.data.files_modified&&(()=>{try{const P=JSON.parse(f.data.files_modified);if(P.length>0)return m.jsxs("span",{className:"text-xs text-base-content/50",children:[m.jsx(se,{icon:"lucide:pencil",size:12,className:"inline mr-1"}),P.length," modified"]})}catch{return null}})()]}),g&&f.type==="observation"&&f.data.text&&m.jsxs("div",{className:"mt-3 pt-3 border-t border-base-200",children:[m.jsx("p",{className:"text-sm text-base-content/70 whitespace-pre-wrap",children:f.data.text}),(f.data.files_read||f.data.files_modified)&&m.jsxs("div",{className:"mt-3 space-y-1",children:[f.data.files_read&&(()=>{try{const P=JSON.parse(f.data.files_read);if(P.length>0)return m.jsxs("div",{children:[m.jsx("span",{className:"text-xs font-medium",children:"Files Read:"}),m.jsx("div",{className:"text-xs text-base-content/50 mt-1",children:P.map((C,O)=>m.jsx("div",{className:"truncate",children:C},O))})]})}catch{return null}})(),f.data.files_modified&&(()=>{try{const P=JSON.parse(f.data.files_modified);if(P.length>0)return m.jsxs("div",{children:[m.jsx("span",{className:"text-xs font-medium",children:"Files Modified:"}),m.jsx("div",{className:"text-xs text-base-content/50 mt-1",children:P.map((C,O)=>m.jsx("div",{className:"truncate",children:C},O))})]})}catch{return null}})()]})]})]}),m.jsx(se,{icon:g?"lucide:chevron-up":"lucide:chevron-down",size:16,className:"text-base-content/30"})]})})})]},p)}),t.timeline.length===0&&m.jsx("div",{className:"text-center py-8 text-base-content/50",children:"No activity in this session"})]})]})}function rR(){const[e,t]=k.useState([]),[n,r]=k.useState(!0),[i,a]=k.useState(null),{selectedProject:l}=za(),u=k.useCallback(async()=>{r(!0);try{const f=new URLSearchParams;f.set("limit","50"),l&&f.set("project",l);const p=await(await fetch(`/api/sessions?${f}`)).json();t(p.items||[])}catch(f){console.error("Failed to fetch sessions:",f)}finally{r(!1)}},[l]);k.useEffect(()=>{u()},[u]);const c=f=>{a(i===f?null:f)};return m.jsxs("div",{className:"space-y-6",children:[m.jsxs("div",{className:"flex items-center justify-between",children:[m.jsxs("div",{children:[m.jsxs("div",{className:"flex items-center gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Sessions"}),m.jsx(lC,{project:l})]}),m.jsx("p",{className:"text-base-content/60",children:"Browse sessions and explore their timeline"})]}),m.jsx("div",{className:"flex items-center gap-2",children:m.jsx(Yt,{variant:"ghost",size:"sm",onClick:u,children:m.jsx(se,{icon:"lucide:refresh-cw",size:16})})})]}),n?m.jsx("div",{className:"flex items-center justify-center h-64",children:m.jsx(Xi,{size:"lg"})}):e.length===0?m.jsx(Eo,{icon:"lucide:history",title:"No sessions found",description:"Sessions will appear here as you use Claude Code"}):m.jsx("div",{className:"space-y-4",children:e.map(f=>m.jsxs("div",{children:[m.jsx(eR,{session:f,isExpanded:i===f.id,onToggle:()=>c(f.id)}),i===f.id&&m.jsx(nR,{sessionId:f.id})]},f.id))})]})}const e1=["sonnet","sonnet[1m]","opus","opus[1m]"],iR=["sonnet","opus"],mC={sonnet:"Sonnet 4.6","sonnet[1m]":"Sonnet 4.6 1M",opus:"Opus 4.6","opus[1m]":"Opus 4.6 1M"},Xn={model:"sonnet",commands:{spec:"sonnet","spec-plan":"opus","spec-implement":"sonnet","spec-verify":"opus",vault:"sonnet",sync:"sonnet",learn:"sonnet"},agents:{"plan-challenger":"sonnet","plan-verifier":"sonnet","spec-reviewer-compliance":"sonnet","spec-reviewer-quality":"opus"}};function gC(){const[e,t]=k.useState(Xn),[n,r]=k.useState(!0),[i,a]=k.useState(null),[l,u]=k.useState(!1),[c,f]=k.useState(!1);k.useEffect(()=>{fetch("/api/settings").then(x=>{if(!x.ok)throw new Error(`API error: ${x.status}`);return x.json()}).then(x=>{t(x),r(!1)}).catch(x=>{a(x.message||"Failed to load settings"),r(!1)})},[]);const d=k.useCallback(x=>{t(S=>({...S,model:x})),u(!0),f(!1)},[]),p=k.useCallback((x,S)=>{t(w=>({...w,commands:{...w.commands,[x]:S}})),u(!0),f(!1)},[]),g=k.useCallback((x,S)=>{t(w=>({...w,agents:{...w.agents,[x]:S}})),u(!0),f(!1)},[]),y=k.useCallback(async()=>{await fetch("/api/settings",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)}).then(x=>{if(!x.ok)throw new Error(`Save failed: ${x.status}`);return x.json()}).then(x=>{t(x),u(!1),f(!0)})},[e]);return{settings:e,isLoading:n,error:i,isDirty:l,saved:c,updateModel:d,updateCommand:p,updateAgent:g,save:y}}function Ap({value:e,choices:t,onChange:n,disabled:r=!1,id:i}){return m.jsx("select",{id:i,className:"select select-sm select-bordered w-full max-w-xs",value:e,onChange:a=>n(a.target.value),disabled:r,children:t.map(a=>m.jsx("option",{value:a,children:mC[a]??a},a))})}const aR={spec:"/spec (dispatcher)","spec-plan":"/spec planning phase","spec-implement":"/spec implementation phase","spec-verify":"/spec verification phase",vault:"/vault",sync:"/sync",learn:"/learn"},oR={"plan-challenger":"plan-challenger (adversarial reviewer)","plan-verifier":"plan-verifier (alignment checker)","spec-reviewer-compliance":"spec-reviewer-compliance (code vs plan)","spec-reviewer-quality":"spec-reviewer-quality (code review)"};function lR(){const{settings:e,isLoading:t,error:n,isDirty:r,saved:i,updateModel:a,updateCommand:l,updateAgent:u,save:c}=gC(),[f,d]=k.useState(null),[p,g]=k.useState(!1),y=async()=>{g(!0),d(null);try{await c()}catch(x){d(x instanceof Error?x.message:"Failed to save")}finally{g(!1)}};return t?m.jsxs("div",{className:"space-y-6",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Settings"}),m.jsx("div",{className:"space-y-4",children:[...Array(3)].map((x,S)=>m.jsx("div",{className:"card bg-base-200 animate-pulse",children:m.jsxs("div",{className:"card-body",children:[m.jsx("div",{className:"h-4 bg-base-300 rounded w-32 mb-4"}),m.jsx("div",{className:"h-8 bg-base-300 rounded w-48"})]})},S))})]}):n?m.jsxs("div",{className:"space-y-6",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Settings"}),m.jsx("div",{className:"alert alert-error",children:m.jsxs("span",{children:["Failed to load settings: ",n]})})]}):m.jsxs("div",{className:"space-y-6",children:[m.jsxs("div",{children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Settings"}),m.jsx("p",{className:"text-base-content/60",children:"Configure model selection for Claude Pilot"})]}),m.jsxs("div",{className:"alert alert-info",children:[m.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",className:"stroke-current shrink-0 w-5 h-5",children:m.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",d:"M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})}),m.jsxs("div",{className:"text-sm",children:[m.jsx("span",{className:"font-semibold",children:"Sonnet 4.6 1M and Opus 4.6 1M"})," require a compatible Anthropic subscription with 1M context access. Not all users have access. These variants are only available for the main session and commands — never for sub-agents."]})]}),i&&m.jsxs("div",{className:"alert alert-success",children:[m.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:"stroke-current shrink-0 h-5 w-5",fill:"none",viewBox:"0 0 24 24",children:m.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",d:"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"})}),m.jsxs("span",{children:["Settings saved. ",m.jsx("strong",{children:"Restart Pilot"})," to apply changes."]})]}),f&&m.jsx("div",{className:"alert alert-error",children:m.jsx("span",{children:f})}),m.jsx("div",{className:"card bg-base-200",children:m.jsxs("div",{className:"card-body",children:[m.jsx("h2",{className:"card-title text-base",children:"Main Model"}),m.jsx("p",{className:"text-sm text-base-content/70 mb-4",children:"Used for Quick Mode (direct chat). Changing this also sets the baseline for new commands without explicit config."}),m.jsxs("div",{className:"flex items-center gap-4",children:[m.jsx(Ap,{value:e.model,choices:e1,onChange:a,id:"main-model"}),m.jsxs("div",{className:"text-xs text-base-content/50",children:[e.model.includes("[1m]")?"1M context":"200K context",e.model.startsWith("opus")?" · ~1.67× cost of Sonnet":""]})]}),m.jsxs("div",{className:"mt-4 p-3 bg-base-100 rounded-lg",children:[m.jsx("p",{className:"text-xs font-semibold text-base-content/70 mb-2",children:"Model comparison"}),m.jsxs("div",{className:"grid grid-cols-2 gap-2 text-xs text-base-content/60",children:[m.jsxs("div",{children:[m.jsx("span",{className:"font-mono text-primary",children:"Sonnet 4.6"}),m.jsx("div",{children:"$3/$15 per MTok · Fast, near Opus quality"}),m.jsx("div",{className:"text-base-content/40",children:"Best for implementation & most tasks"})]}),m.jsxs("div",{children:[m.jsx("span",{className:"font-mono text-secondary",children:"Opus 4.6"}),m.jsx("div",{children:"$5/$25 per MTok · Deepest reasoning"}),m.jsx("div",{className:"text-base-content/40",children:"Best for planning & complex analysis"})]})]}),m.jsx("p",{className:"text-xs text-base-content/40 mt-2",children:"Sonnet 4.6 often matches Opus quality. Default routing uses Opus only for planning & verification."})]})]})}),m.jsx("div",{className:"card bg-base-200",children:m.jsxs("div",{className:"card-body",children:[m.jsx("h2",{className:"card-title text-base",children:"Commands"}),m.jsx("p",{className:"text-sm text-base-content/70 mb-4",children:"Model used when each slash command is invoked. Defaults use Opus for planning/verification, Sonnet for execution."}),m.jsx("div",{className:"overflow-x-auto",children:m.jsxs("table",{className:"table table-sm",children:[m.jsx("thead",{children:m.jsxs("tr",{children:[m.jsx("th",{children:"Command"}),m.jsx("th",{children:"Model"}),m.jsx("th",{className:"text-base-content/50",children:"Context"})]})}),m.jsx("tbody",{children:Object.keys(Xn.commands).map(x=>m.jsxs("tr",{children:[m.jsx("td",{children:m.jsx("span",{className:"font-mono text-sm",children:aR[x]??x})}),m.jsx("td",{children:m.jsx(Ap,{value:e.commands[x]??Xn.commands[x],choices:e1,onChange:S=>l(x,S),id:`cmd-${x}`})}),m.jsx("td",{className:"text-xs text-base-content/40",children:(e.commands[x]??"").includes("[1m]")?"1M":"200K"})]},x))})]})})]})}),m.jsx("div",{className:"card bg-base-200",children:m.jsxs("div",{className:"card-body",children:[m.jsx("h2",{className:"card-title text-base",children:"Sub-Agents"}),m.jsxs("p",{className:"text-sm text-base-content/70 mb-4",children:["Models used by verification sub-agents spawned during ",m.jsx("code",{className:"bg-base-300 px-1 rounded",children:"/spec"}),". Limited to Sonnet or Opus — 1M context is not available for sub-agents."]}),m.jsx("div",{className:"overflow-x-auto",children:m.jsxs("table",{className:"table table-sm",children:[m.jsx("thead",{children:m.jsxs("tr",{children:[m.jsx("th",{children:"Agent"}),m.jsx("th",{children:"Model"})]})}),m.jsx("tbody",{children:Object.keys(Xn.agents).map(x=>m.jsxs("tr",{children:[m.jsx("td",{children:m.jsx("span",{className:"font-mono text-sm",children:oR[x]??x})}),m.jsx("td",{children:m.jsx(Ap,{value:e.agents[x]??Xn.agents[x],choices:iR,onChange:S=>u(x,S),id:`agent-${x}`})})]},x))})]})})]})}),m.jsxs("div",{className:"flex items-center gap-4 pb-4",children:[m.jsx("button",{className:`btn btn-primary ${p?"loading":""}`,onClick:y,disabled:p||!r,children:p?"Saving...":"Save Settings"}),r&&!i&&m.jsx("span",{className:"text-sm text-base-content/50",children:"Unsaved changes"})]})]})}function sR(e,t){const n={};return(e[e.length-1]===""?[...e,""]:e).join((n.padRight?" ":"")+","+(n.padLeft===!1?"":" ")).trim()}const uR=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,cR=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,fR={};function t1(e,t){return(fR.jsx?cR:uR).test(e)}const dR=/[ \t\n\f\r]/g;function hR(e){return typeof e=="object"?e.type==="text"?n1(e.value):!1:n1(e)}function n1(e){return e.replace(dR,"")===""}class Cs{constructor(t,n,r){this.normal=n,this.property=t,r&&(this.space=r)}}Cs.prototype.normal={};Cs.prototype.property={};Cs.prototype.space=void 0;function vC(e,t){const n={},r={};for(const i of e)Object.assign(n,i.property),Object.assign(r,i.normal);return new Cs(n,r,t)}function Mg(e){return e.toLowerCase()}class Cn{constructor(t,n){this.attribute=n,this.property=t}}Cn.prototype.attribute="";Cn.prototype.booleanish=!1;Cn.prototype.boolean=!1;Cn.prototype.commaOrSpaceSeparated=!1;Cn.prototype.commaSeparated=!1;Cn.prototype.defined=!1;Cn.prototype.mustUseProperty=!1;Cn.prototype.number=!1;Cn.prototype.overloadedBoolean=!1;Cn.prototype.property="";Cn.prototype.spaceSeparated=!1;Cn.prototype.space=void 0;let pR=0;const Ie=$a(),bt=$a(),Dg=$a(),le=$a(),Ze=$a(),Co=$a(),Mn=$a();function $a(){return 2**++pR}const Lg=Object.freeze(Object.defineProperty({__proto__:null,boolean:Ie,booleanish:bt,commaOrSpaceSeparated:Mn,commaSeparated:Co,number:le,overloadedBoolean:Dg,spaceSeparated:Ze},Symbol.toStringTag,{value:"Module"})),_p=Object.keys(Lg);class Xv extends Cn{constructor(t,n,r,i){let a=-1;if(super(t,n),r1(this,"space",i),typeof r=="number")for(;++a<_p.length;){const l=_p[a];r1(this,_p[a],(r&Lg[l])===Lg[l])}}}Xv.prototype.defined=!0;function r1(e,t,n){n&&(e[t]=n)}function Bo(e){const t={},n={};for(const[r,i]of Object.entries(e.properties)){const a=new Xv(r,e.transform(e.attributes||{},r),i,e.space);e.mustUseProperty&&e.mustUseProperty.includes(r)&&(a.mustUseProperty=!0),t[r]=a,n[Mg(r)]=r,n[Mg(a.attribute)]=r}return new Cs(t,n,e.space)}const yC=Bo({properties:{ariaActiveDescendant:null,ariaAtomic:bt,ariaAutoComplete:null,ariaBusy:bt,ariaChecked:bt,ariaColCount:le,ariaColIndex:le,ariaColSpan:le,ariaControls:Ze,ariaCurrent:null,ariaDescribedBy:Ze,ariaDetails:null,ariaDisabled:bt,ariaDropEffect:Ze,ariaErrorMessage:null,ariaExpanded:bt,ariaFlowTo:Ze,ariaGrabbed:bt,ariaHasPopup:null,ariaHidden:bt,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:Ze,ariaLevel:le,ariaLive:null,ariaModal:bt,ariaMultiLine:bt,ariaMultiSelectable:bt,ariaOrientation:null,ariaOwns:Ze,ariaPlaceholder:null,ariaPosInSet:le,ariaPressed:bt,ariaReadOnly:bt,ariaRelevant:null,ariaRequired:bt,ariaRoleDescription:Ze,ariaRowCount:le,ariaRowIndex:le,ariaRowSpan:le,ariaSelected:bt,ariaSetSize:le,ariaSort:null,ariaValueMax:le,ariaValueMin:le,ariaValueNow:le,ariaValueText:null,role:null},transform(e,t){return t==="role"?t:"aria-"+t.slice(4).toLowerCase()}});function xC(e,t){return t in e?e[t]:t}function bC(e,t){return xC(e,t.toLowerCase())}const mR=Bo({attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:Co,acceptCharset:Ze,accessKey:Ze,action:null,allow:null,allowFullScreen:Ie,allowPaymentRequest:Ie,allowUserMedia:Ie,alt:null,as:null,async:Ie,autoCapitalize:null,autoComplete:Ze,autoFocus:Ie,autoPlay:Ie,blocking:Ze,capture:null,charSet:null,checked:Ie,cite:null,className:Ze,cols:le,colSpan:null,content:null,contentEditable:bt,controls:Ie,controlsList:Ze,coords:le|Co,crossOrigin:null,data:null,dateTime:null,decoding:null,default:Ie,defer:Ie,dir:null,dirName:null,disabled:Ie,download:Dg,draggable:bt,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:Ie,formTarget:null,headers:Ze,height:le,hidden:Dg,high:le,href:null,hrefLang:null,htmlFor:Ze,httpEquiv:Ze,id:null,imageSizes:null,imageSrcSet:null,inert:Ie,inputMode:null,integrity:null,is:null,isMap:Ie,itemId:null,itemProp:Ze,itemRef:Ze,itemScope:Ie,itemType:Ze,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:Ie,low:le,manifest:null,max:null,maxLength:le,media:null,method:null,min:null,minLength:le,multiple:Ie,muted:Ie,name:null,nonce:null,noModule:Ie,noValidate:Ie,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:Ie,optimum:le,pattern:null,ping:Ze,placeholder:null,playsInline:Ie,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:Ie,referrerPolicy:null,rel:Ze,required:Ie,reversed:Ie,rows:le,rowSpan:le,sandbox:Ze,scope:null,scoped:Ie,seamless:Ie,selected:Ie,shadowRootClonable:Ie,shadowRootDelegatesFocus:Ie,shadowRootMode:null,shape:null,size:le,sizes:null,slot:null,span:le,spellCheck:bt,src:null,srcDoc:null,srcLang:null,srcSet:null,start:le,step:null,style:null,tabIndex:le,target:null,title:null,translate:null,type:null,typeMustMatch:Ie,useMap:null,value:bt,width:le,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:Ze,axis:null,background:null,bgColor:null,border:le,borderColor:null,bottomMargin:le,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:Ie,declare:Ie,event:null,face:null,frame:null,frameBorder:null,hSpace:le,leftMargin:le,link:null,longDesc:null,lowSrc:null,marginHeight:le,marginWidth:le,noResize:Ie,noHref:Ie,noShade:Ie,noWrap:Ie,object:null,profile:null,prompt:null,rev:null,rightMargin:le,rules:null,scheme:null,scrolling:bt,standby:null,summary:null,text:null,topMargin:le,valueType:null,version:null,vAlign:null,vLink:null,vSpace:le,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:Ie,disableRemotePlayback:Ie,prefix:null,property:null,results:le,security:null,unselectable:null},space:"html",transform:bC}),gR=Bo({attributes:{accentHeight:"accent-height",alignmentBaseline:"alignment-baseline",arabicForm:"arabic-form",baselineShift:"baseline-shift",capHeight:"cap-height",className:"class",clipPath:"clip-path",clipRule:"clip-rule",colorInterpolation:"color-interpolation",colorInterpolationFilters:"color-interpolation-filters",colorProfile:"color-profile",colorRendering:"color-rendering",crossOrigin:"crossorigin",dataType:"datatype",dominantBaseline:"dominant-baseline",enableBackground:"enable-background",fillOpacity:"fill-opacity",fillRule:"fill-rule",floodColor:"flood-color",floodOpacity:"flood-opacity",fontFamily:"font-family",fontSize:"font-size",fontSizeAdjust:"font-size-adjust",fontStretch:"font-stretch",fontStyle:"font-style",fontVariant:"font-variant",fontWeight:"font-weight",glyphName:"glyph-name",glyphOrientationHorizontal:"glyph-orientation-horizontal",glyphOrientationVertical:"glyph-orientation-vertical",hrefLang:"hreflang",horizAdvX:"horiz-adv-x",horizOriginX:"horiz-origin-x",horizOriginY:"horiz-origin-y",imageRendering:"image-rendering",letterSpacing:"letter-spacing",lightingColor:"lighting-color",markerEnd:"marker-end",markerMid:"marker-mid",markerStart:"marker-start",navDown:"nav-down",navDownLeft:"nav-down-left",navDownRight:"nav-down-right",navLeft:"nav-left",navNext:"nav-next",navPrev:"nav-prev",navRight:"nav-right",navUp:"nav-up",navUpLeft:"nav-up-left",navUpRight:"nav-up-right",onAbort:"onabort",onActivate:"onactivate",onAfterPrint:"onafterprint",onBeforePrint:"onbeforeprint",onBegin:"onbegin",onCancel:"oncancel",onCanPlay:"oncanplay",onCanPlayThrough:"oncanplaythrough",onChange:"onchange",onClick:"onclick",onClose:"onclose",onCopy:"oncopy",onCueChange:"oncuechange",onCut:"oncut",onDblClick:"ondblclick",onDrag:"ondrag",onDragEnd:"ondragend",onDragEnter:"ondragenter",onDragExit:"ondragexit",onDragLeave:"ondragleave",onDragOver:"ondragover",onDragStart:"ondragstart",onDrop:"ondrop",onDurationChange:"ondurationchange",onEmptied:"onemptied",onEnd:"onend",onEnded:"onended",onError:"onerror",onFocus:"onfocus",onFocusIn:"onfocusin",onFocusOut:"onfocusout",onHashChange:"onhashchange",onInput:"oninput",onInvalid:"oninvalid",onKeyDown:"onkeydown",onKeyPress:"onkeypress",onKeyUp:"onkeyup",onLoad:"onload",onLoadedData:"onloadeddata",onLoadedMetadata:"onloadedmetadata",onLoadStart:"onloadstart",onMessage:"onmessage",onMouseDown:"onmousedown",onMouseEnter:"onmouseenter",onMouseLeave:"onmouseleave",onMouseMove:"onmousemove",onMouseOut:"onmouseout",onMouseOver:"onmouseover",onMouseUp:"onmouseup",onMouseWheel:"onmousewheel",onOffline:"onoffline",onOnline:"ononline",onPageHide:"onpagehide",onPageShow:"onpageshow",onPaste:"onpaste",onPause:"onpause",onPlay:"onplay",onPlaying:"onplaying",onPopState:"onpopstate",onProgress:"onprogress",onRateChange:"onratechange",onRepeat:"onrepeat",onReset:"onreset",onResize:"onresize",onScroll:"onscroll",onSeeked:"onseeked",onSeeking:"onseeking",onSelect:"onselect",onShow:"onshow",onStalled:"onstalled",onStorage:"onstorage",onSubmit:"onsubmit",onSuspend:"onsuspend",onTimeUpdate:"ontimeupdate",onToggle:"ontoggle",onUnload:"onunload",onVolumeChange:"onvolumechange",onWaiting:"onwaiting",onZoom:"onzoom",overlinePosition:"overline-position",overlineThickness:"overline-thickness",paintOrder:"paint-order",panose1:"panose-1",pointerEvents:"pointer-events",referrerPolicy:"referrerpolicy",renderingIntent:"rendering-intent",shapeRendering:"shape-rendering",stopColor:"stop-color",stopOpacity:"stop-opacity",strikethroughPosition:"strikethrough-position",strikethroughThickness:"strikethrough-thickness",strokeDashArray:"stroke-dasharray",strokeDashOffset:"stroke-dashoffset",strokeLineCap:"stroke-linecap",strokeLineJoin:"stroke-linejoin",strokeMiterLimit:"stroke-miterlimit",strokeOpacity:"stroke-opacity",strokeWidth:"stroke-width",tabIndex:"tabindex",textAnchor:"text-anchor",textDecoration:"text-decoration",textRendering:"text-rendering",transformOrigin:"transform-origin",typeOf:"typeof",underlinePosition:"underline-position",underlineThickness:"underline-thickness",unicodeBidi:"unicode-bidi",unicodeRange:"unicode-range",unitsPerEm:"units-per-em",vAlphabetic:"v-alphabetic",vHanging:"v-hanging",vIdeographic:"v-ideographic",vMathematical:"v-mathematical",vectorEffect:"vector-effect",vertAdvY:"vert-adv-y",vertOriginX:"vert-origin-x",vertOriginY:"vert-origin-y",wordSpacing:"word-spacing",writingMode:"writing-mode",xHeight:"x-height",playbackOrder:"playbackorder",timelineBegin:"timelinebegin"},properties:{about:Mn,accentHeight:le,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:le,amplitude:le,arabicForm:null,ascent:le,attributeName:null,attributeType:null,azimuth:le,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:le,by:null,calcMode:null,capHeight:le,className:Ze,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:le,diffuseConstant:le,direction:null,display:null,dur:null,divisor:le,dominantBaseline:null,download:Ie,dx:null,dy:null,edgeMode:null,editable:null,elevation:le,enableBackground:null,end:null,event:null,exponent:le,externalResourcesRequired:null,fill:null,fillOpacity:le,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:Co,g2:Co,glyphName:Co,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:le,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:le,horizOriginX:le,horizOriginY:le,id:null,ideographic:le,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:le,k:le,k1:le,k2:le,k3:le,k4:le,kernelMatrix:Mn,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:le,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:le,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:le,overlineThickness:le,paintOrder:null,panose1:null,path:null,pathLength:le,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:Ze,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:le,pointsAtY:le,pointsAtZ:le,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:Mn,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:Mn,rev:Mn,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:Mn,requiredFeatures:Mn,requiredFonts:Mn,requiredFormats:Mn,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:le,specularExponent:le,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:le,strikethroughThickness:le,string:null,stroke:null,strokeDashArray:Mn,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:le,strokeOpacity:le,strokeWidth:null,style:null,surfaceScale:le,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:Mn,tabIndex:le,tableValues:null,target:null,targetX:le,targetY:le,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:Mn,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:le,underlineThickness:le,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:le,values:null,vAlphabetic:le,vMathematical:le,vectorEffect:null,vHanging:le,vIdeographic:le,version:null,vertAdvY:le,vertOriginX:le,vertOriginY:le,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:le,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:"svg",transform:xC}),wC=Bo({properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null},space:"xlink",transform(e,t){return"xlink:"+t.slice(5).toLowerCase()}}),kC=Bo({attributes:{xmlnsxlink:"xmlns:xlink"},properties:{xmlnsXLink:null,xmlns:null},space:"xmlns",transform:bC}),SC=Bo({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:"xml",transform(e,t){return"xml:"+t.slice(3).toLowerCase()}}),vR={classId:"classID",dataType:"datatype",itemId:"itemID",strokeDashArray:"strokeDasharray",strokeDashOffset:"strokeDashoffset",strokeLineCap:"strokeLinecap",strokeLineJoin:"strokeLinejoin",strokeMiterLimit:"strokeMiterlimit",typeOf:"typeof",xLinkActuate:"xlinkActuate",xLinkArcRole:"xlinkArcrole",xLinkHref:"xlinkHref",xLinkRole:"xlinkRole",xLinkShow:"xlinkShow",xLinkTitle:"xlinkTitle",xLinkType:"xlinkType",xmlnsXLink:"xmlnsXlink"},yR=/[A-Z]/g,i1=/-[a-z]/g,xR=/^data[-\w.:]+$/i;function bR(e,t){const n=Mg(t);let r=t,i=Cn;if(n in e.normal)return e.property[e.normal[n]];if(n.length>4&&n.slice(0,4)==="data"&&xR.test(t)){if(t.charAt(4)==="-"){const a=t.slice(5).replace(i1,kR);r="data"+a.charAt(0).toUpperCase()+a.slice(1)}else{const a=t.slice(4);if(!i1.test(a)){let l=a.replace(yR,wR);l.charAt(0)!=="-"&&(l="-"+l),t="data"+l}}i=Xv}return new i(r,t)}function wR(e){return"-"+e.toLowerCase()}function kR(e){return e.charAt(1).toUpperCase()}const SR=vC([yC,mR,wC,kC,SC],"html"),Qv=vC([yC,gR,wC,kC,SC],"svg");function jR(e){return e.join(" ").trim()}var mo={},Ip,a1;function PR(){if(a1)return Ip;a1=1;var e=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,t=/\n/g,n=/^\s*/,r=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,i=/^:\s*/,a=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,l=/^[;\s]*/,u=/^\s+|\s+$/g,c=` +`,f="/",d="*",p="",g="comment",y="declaration";function x(w,P){if(typeof w!="string")throw new TypeError("First argument must be a string");if(!w)return[];P=P||{};var C=1,O=1;function A(Y){var Q=Y.match(t);Q&&(C+=Q.length);var he=Y.lastIndexOf(c);O=~he?Y.length-he:O+Y.length}function I(){var Y={line:C,column:O};return function(Q){return Q.position=new E(Y),H(),Q}}function E(Y){this.start=Y,this.end={line:C,column:O},this.source=P.source}E.prototype.content=w;function L(Y){var Q=new Error(P.source+":"+C+":"+O+": "+Y);if(Q.reason=Y,Q.filename=P.source,Q.line=C,Q.column=O,Q.source=w,!P.silent)throw Q}function F(Y){var Q=Y.exec(w);if(Q){var he=Q[0];return A(he),w=w.slice(he.length),Q}}function H(){F(n)}function R(Y){var Q;for(Y=Y||[];Q=W();)Q!==!1&&Y.push(Q);return Y}function W(){var Y=I();if(!(f!=w.charAt(0)||d!=w.charAt(1))){for(var Q=2;p!=w.charAt(Q)&&(d!=w.charAt(Q)||f!=w.charAt(Q+1));)++Q;if(Q+=2,p===w.charAt(Q-1))return L("End of comment missing");var he=w.slice(2,Q-2);return O+=2,A(he),w=w.slice(Q),O+=2,Y({type:g,comment:he})}}function M(){var Y=I(),Q=F(r);if(Q){if(W(),!F(i))return L("property missing ':'");var he=F(a),de=Y({type:y,property:S(Q[0].replace(e,p)),value:he?S(he[0].replace(e,p)):p});return F(l),de}}function Z(){var Y=[];R(Y);for(var Q;Q=M();)Q!==!1&&(Y.push(Q),R(Y));return Y}return H(),Z()}function S(w){return w?w.replace(u,p):p}return Ip=x,Ip}var o1;function ER(){if(o1)return mo;o1=1;var e=mo&&mo.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(mo,"__esModule",{value:!0}),mo.default=n;const t=e(PR());function n(r,i){let a=null;if(!r||typeof r!="string")return a;const l=(0,t.default)(r),u=typeof i=="function";return l.forEach(c=>{if(c.type!=="declaration")return;const{property:f,value:d}=c;u?i(f,d,c):d&&(a=a||{},a[f]=d)}),a}return mo}var zl={},l1;function CR(){if(l1)return zl;l1=1,Object.defineProperty(zl,"__esModule",{value:!0}),zl.camelCase=void 0;var e=/^--[a-zA-Z0-9_-]+$/,t=/-([a-z])/g,n=/^[^-]+$/,r=/^-(webkit|moz|ms|o|khtml)-/,i=/^-(ms)-/,a=function(f){return!f||n.test(f)||e.test(f)},l=function(f,d){return d.toUpperCase()},u=function(f,d){return"".concat(d,"-")},c=function(f,d){return d===void 0&&(d={}),a(f)?f:(f=f.toLowerCase(),d.reactCompat?f=f.replace(i,u):f=f.replace(r,u),f.replace(t,l))};return zl.camelCase=c,zl}var $l,s1;function OR(){if(s1)return $l;s1=1;var e=$l&&$l.__importDefault||function(i){return i&&i.__esModule?i:{default:i}},t=e(ER()),n=CR();function r(i,a){var l={};return!i||typeof i!="string"||(0,t.default)(i,function(u,c){u&&c&&(l[(0,n.camelCase)(u,a)]=c)}),l}return r.default=r,$l=r,$l}var NR=OR();const AR=xr(NR),jC=PC("end"),Zv=PC("start");function PC(e){return t;function t(n){const r=n&&n.position&&n.position[e]||{};if(typeof r.line=="number"&&r.line>0&&typeof r.column=="number"&&r.column>0)return{line:r.line,column:r.column,offset:typeof r.offset=="number"&&r.offset>-1?r.offset:void 0}}}function _R(e){const t=Zv(e),n=jC(e);if(t&&n)return{start:t,end:n}}function rs(e){return!e||typeof e!="object"?"":"position"in e||"type"in e?u1(e.position):"start"in e||"end"in e?u1(e):"line"in e||"column"in e?Rg(e):""}function Rg(e){return c1(e&&e.line)+":"+c1(e&&e.column)}function u1(e){return Rg(e&&e.start)+"-"+Rg(e&&e.end)}function c1(e){return e&&typeof e=="number"?e:1}class an extends Error{constructor(t,n,r){super(),typeof n=="string"&&(r=n,n=void 0);let i="",a={},l=!1;if(n&&("line"in n&&"column"in n?a={place:n}:"start"in n&&"end"in n?a={place:n}:"type"in n?a={ancestors:[n],place:n.position}:a={...n}),typeof t=="string"?i=t:!a.cause&&t&&(l=!0,i=t.message,a.cause=t),!a.ruleId&&!a.source&&typeof r=="string"){const c=r.indexOf(":");c===-1?a.ruleId=r:(a.source=r.slice(0,c),a.ruleId=r.slice(c+1))}if(!a.place&&a.ancestors&&a.ancestors){const c=a.ancestors[a.ancestors.length-1];c&&(a.place=c.position)}const u=a.place&&"start"in a.place?a.place.start:a.place;this.ancestors=a.ancestors||void 0,this.cause=a.cause||void 0,this.column=u?u.column:void 0,this.fatal=void 0,this.file="",this.message=i,this.line=u?u.line:void 0,this.name=rs(a.place)||"1:1",this.place=a.place||void 0,this.reason=this.message,this.ruleId=a.ruleId||void 0,this.source=a.source||void 0,this.stack=l&&a.cause&&typeof a.cause.stack=="string"?a.cause.stack:"",this.actual=void 0,this.expected=void 0,this.note=void 0,this.url=void 0}}an.prototype.file="";an.prototype.name="";an.prototype.reason="";an.prototype.message="";an.prototype.stack="";an.prototype.column=void 0;an.prototype.line=void 0;an.prototype.ancestors=void 0;an.prototype.cause=void 0;an.prototype.fatal=void 0;an.prototype.place=void 0;an.prototype.ruleId=void 0;an.prototype.source=void 0;const Jv={}.hasOwnProperty,IR=new Map,TR=/[A-Z]/g,MR=new Set(["table","tbody","thead","tfoot","tr"]),DR=new Set(["td","th"]),EC="https://github.com/syntax-tree/hast-util-to-jsx-runtime";function LR(e,t){if(!t||t.Fragment===void 0)throw new TypeError("Expected `Fragment` in options");const n=t.filePath||void 0;let r;if(t.development){if(typeof t.jsxDEV!="function")throw new TypeError("Expected `jsxDEV` in options when `development: true`");r=qR(n,t.jsxDEV)}else{if(typeof t.jsx!="function")throw new TypeError("Expected `jsx` in production options");if(typeof t.jsxs!="function")throw new TypeError("Expected `jsxs` in production options");r=WR(n,t.jsx,t.jsxs)}const i={Fragment:t.Fragment,ancestors:[],components:t.components||{},create:r,elementAttributeNameCase:t.elementAttributeNameCase||"react",evaluater:t.createEvaluater?t.createEvaluater():void 0,filePath:n,ignoreInvalidStyle:t.ignoreInvalidStyle||!1,passKeys:t.passKeys!==!1,passNode:t.passNode||!1,schema:t.space==="svg"?Qv:SR,stylePropertyNameCase:t.stylePropertyNameCase||"dom",tableCellAlignToStyle:t.tableCellAlignToStyle!==!1},a=CC(i,e,void 0);return a&&typeof a!="string"?a:i.create(e,i.Fragment,{children:a||void 0},void 0)}function CC(e,t,n){if(t.type==="element")return RR(e,t,n);if(t.type==="mdxFlowExpression"||t.type==="mdxTextExpression")return zR(e,t);if(t.type==="mdxJsxFlowElement"||t.type==="mdxJsxTextElement")return FR(e,t,n);if(t.type==="mdxjsEsm")return $R(e,t);if(t.type==="root")return BR(e,t,n);if(t.type==="text")return UR(e,t)}function RR(e,t,n){const r=e.schema;let i=r;t.tagName.toLowerCase()==="svg"&&r.space==="html"&&(i=Qv,e.schema=i),e.ancestors.push(t);const a=NC(e,t.tagName,!1),l=HR(e,t);let u=ty(e,t);return MR.has(t.tagName)&&(u=u.filter(function(c){return typeof c=="string"?!hR(c):!0})),OC(e,l,a,t),ey(l,u),e.ancestors.pop(),e.schema=r,e.create(t,a,l,n)}function zR(e,t){if(t.data&&t.data.estree&&e.evaluater){const r=t.data.estree.body[0];return r.type,e.evaluater.evaluateExpression(r.expression)}us(e,t.position)}function $R(e,t){if(t.data&&t.data.estree&&e.evaluater)return e.evaluater.evaluateProgram(t.data.estree);us(e,t.position)}function FR(e,t,n){const r=e.schema;let i=r;t.name==="svg"&&r.space==="html"&&(i=Qv,e.schema=i),e.ancestors.push(t);const a=t.name===null?e.Fragment:NC(e,t.name,!0),l=VR(e,t),u=ty(e,t);return OC(e,l,a,t),ey(l,u),e.ancestors.pop(),e.schema=r,e.create(t,a,l,n)}function BR(e,t,n){const r={};return ey(r,ty(e,t)),e.create(t,e.Fragment,r,n)}function UR(e,t){return t.value}function OC(e,t,n,r){typeof n!="string"&&n!==e.Fragment&&e.passNode&&(t.node=r)}function ey(e,t){if(t.length>0){const n=t.length>1?t:t[0];n&&(e.children=n)}}function WR(e,t,n){return r;function r(i,a,l,u){const f=Array.isArray(l.children)?n:t;return u?f(a,l,u):f(a,l)}}function qR(e,t){return n;function n(r,i,a,l){const u=Array.isArray(a.children),c=Zv(r);return t(i,a,l,u,{columnNumber:c?c.column-1:void 0,fileName:e,lineNumber:c?c.line:void 0},void 0)}}function HR(e,t){const n={};let r,i;for(i in t.properties)if(i!=="children"&&Jv.call(t.properties,i)){const a=KR(e,i,t.properties[i]);if(a){const[l,u]=a;e.tableCellAlignToStyle&&l==="align"&&typeof u=="string"&&DR.has(t.tagName)?r=u:n[l]=u}}if(r){const a=n.style||(n.style={});a[e.stylePropertyNameCase==="css"?"text-align":"textAlign"]=r}return n}function VR(e,t){const n={};for(const r of t.attributes)if(r.type==="mdxJsxExpressionAttribute")if(r.data&&r.data.estree&&e.evaluater){const a=r.data.estree.body[0];a.type;const l=a.expression;l.type;const u=l.properties[0];u.type,Object.assign(n,e.evaluater.evaluateExpression(u.argument))}else us(e,t.position);else{const i=r.name;let a;if(r.value&&typeof r.value=="object")if(r.value.data&&r.value.data.estree&&e.evaluater){const u=r.value.data.estree.body[0];u.type,a=e.evaluater.evaluateExpression(u.expression)}else us(e,t.position);else a=r.value===null?!0:r.value;n[i]=a}return n}function ty(e,t){const n=[];let r=-1;const i=e.passKeys?new Map:IR;for(;++ri?0:i+t:t=t>i?i:t,n=n>0?n:0,r.length<1e4)l=Array.from(r),l.unshift(t,n),e.splice(...l);else for(n&&e.splice(t,n);a0?(Rn(e,e.length,0,t),e):t}const h1={}.hasOwnProperty;function _C(e){const t={};let n=-1;for(;++n13&&n<32||n>126&&n<160||n>55295&&n<57344||n>64975&&n<65008||(n&65535)===65535||(n&65535)===65534||n>1114111?"�":String.fromCodePoint(n)}function pr(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const cn=Ji(/[A-Za-z]/),rn=Ji(/[\dA-Za-z]/),nz=Ji(/[#-'*+\--9=?A-Z^-~]/);function Rc(e){return e!==null&&(e<32||e===127)}const zg=Ji(/\d/),rz=Ji(/[\dA-Fa-f]/),iz=Ji(/[!-/:-@[-`{-~]/);function Oe(e){return e!==null&&e<-2}function Xe(e){return e!==null&&(e<0||e===32)}function Re(e){return e===-2||e===-1||e===32}const $f=Ji(new RegExp("\\p{P}|\\p{S}","u")),Na=Ji(/\s/);function Ji(e){return t;function t(n){return n!==null&&n>-1&&e.test(String.fromCharCode(n))}}function Uo(e){const t=[];let n=-1,r=0,i=0;for(;++n55295&&a<57344){const u=e.charCodeAt(n+1);a<56320&&u>56319&&u<57344?(l=String.fromCharCode(a,u),i=1):l="�"}else l=String.fromCharCode(a);l&&(t.push(e.slice(r,n),encodeURIComponent(l)),r=n+i+1,l=""),i&&(n+=i,i=0)}return t.join("")+e.slice(r)}function $e(e,t,n,r){const i=r?r-1:Number.POSITIVE_INFINITY;let a=0;return l;function l(c){return Re(c)?(e.enter(n),u(c)):t(c)}function u(c){return Re(c)&&a++l))return;const L=t.events.length;let F=L,H,R;for(;F--;)if(t.events[F][0]==="exit"&&t.events[F][1].type==="chunkFlow"){if(H){R=t.events[F][1].end;break}H=!0}for(P(r),E=L;EO;){const I=n[A];t.containerState=I[1],I[0].exit.call(t,e)}n.length=O}function C(){i.write([null]),a=void 0,i=void 0,t.containerState._closeFlow=void 0}}function uz(e,t,n){return $e(e,e.attempt(this.parser.constructs.document,t,n),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function _o(e){if(e===null||Xe(e)||Na(e))return 1;if($f(e))return 2}function Ff(e,t,n){const r=[];let i=-1;for(;++i1&&e[n][1].end.offset-e[n][1].start.offset>1?2:1;const p={...e[r][1].end},g={...e[n][1].start};m1(p,-c),m1(g,c),l={type:c>1?"strongSequence":"emphasisSequence",start:p,end:{...e[r][1].end}},u={type:c>1?"strongSequence":"emphasisSequence",start:{...e[n][1].start},end:g},a={type:c>1?"strongText":"emphasisText",start:{...e[r][1].end},end:{...e[n][1].start}},i={type:c>1?"strong":"emphasis",start:{...l.start},end:{...u.end}},e[r][1].end={...l.start},e[n][1].start={...u.end},f=[],e[r][1].end.offset-e[r][1].start.offset&&(f=Qn(f,[["enter",e[r][1],t],["exit",e[r][1],t]])),f=Qn(f,[["enter",i,t],["enter",l,t],["exit",l,t],["enter",a,t]]),f=Qn(f,Ff(t.parser.constructs.insideSpan.null,e.slice(r+1,n),t)),f=Qn(f,[["exit",a,t],["enter",u,t],["exit",u,t],["exit",i,t]]),e[n][1].end.offset-e[n][1].start.offset?(d=2,f=Qn(f,[["enter",e[n][1],t],["exit",e[n][1],t]])):d=0,Rn(e,r-1,n-r+3,f),n=r+f.length-d-2;break}}for(n=-1;++n0&&Re(E)?$e(e,C,"linePrefix",a+1)(E):C(E)}function C(E){return E===null||Oe(E)?e.check(g1,S,A)(E):(e.enter("codeFlowValue"),O(E))}function O(E){return E===null||Oe(E)?(e.exit("codeFlowValue"),C(E)):(e.consume(E),O)}function A(E){return e.exit("codeFenced"),t(E)}function I(E,L,F){let H=0;return R;function R(Q){return E.enter("lineEnding"),E.consume(Q),E.exit("lineEnding"),W}function W(Q){return E.enter("codeFencedFence"),Re(Q)?$e(E,M,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(Q):M(Q)}function M(Q){return Q===u?(E.enter("codeFencedFenceSequence"),Z(Q)):F(Q)}function Z(Q){return Q===u?(H++,E.consume(Q),Z):H>=l?(E.exit("codeFencedFenceSequence"),Re(Q)?$e(E,Y,"whitespace")(Q):Y(Q)):F(Q)}function Y(Q){return Q===null||Oe(Q)?(E.exit("codeFencedFence"),L(Q)):F(Q)}}}function wz(e,t,n){const r=this;return i;function i(l){return l===null?n(l):(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),a)}function a(l){return r.parser.lazy[r.now().line]?n(l):t(l)}}const Mp={name:"codeIndented",tokenize:Sz},kz={partial:!0,tokenize:jz};function Sz(e,t,n){const r=this;return i;function i(f){return e.enter("codeIndented"),$e(e,a,"linePrefix",5)(f)}function a(f){const d=r.events[r.events.length-1];return d&&d[1].type==="linePrefix"&&d[2].sliceSerialize(d[1],!0).length>=4?l(f):n(f)}function l(f){return f===null?c(f):Oe(f)?e.attempt(kz,l,c)(f):(e.enter("codeFlowValue"),u(f))}function u(f){return f===null||Oe(f)?(e.exit("codeFlowValue"),l(f)):(e.consume(f),u)}function c(f){return e.exit("codeIndented"),t(f)}}function jz(e,t,n){const r=this;return i;function i(l){return r.parser.lazy[r.now().line]?n(l):Oe(l)?(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),i):$e(e,a,"linePrefix",5)(l)}function a(l){const u=r.events[r.events.length-1];return u&&u[1].type==="linePrefix"&&u[2].sliceSerialize(u[1],!0).length>=4?t(l):Oe(l)?i(l):n(l)}}const Pz={name:"codeText",previous:Cz,resolve:Ez,tokenize:Oz};function Ez(e){let t=e.length-4,n=3,r,i;if((e[n][1].type==="lineEnding"||e[n][1].type==="space")&&(e[t][1].type==="lineEnding"||e[t][1].type==="space")){for(r=n;++r=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+t+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return tthis.left.length?this.right.slice(this.right.length-r+this.left.length,this.right.length-t+this.left.length).reverse():this.left.slice(t).concat(this.right.slice(this.right.length-r+this.left.length).reverse())}splice(t,n,r){const i=n||0;this.setCursor(Math.trunc(t));const a=this.right.splice(this.right.length-i,Number.POSITIVE_INFINITY);return r&&Fl(this.left,r),a.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(t){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(t)}pushMany(t){this.setCursor(Number.POSITIVE_INFINITY),Fl(this.left,t)}unshift(t){this.setCursor(0),this.right.push(t)}unshiftMany(t){this.setCursor(0),Fl(this.right,t.reverse())}setCursor(t){if(!(t===this.left.length||t>this.left.length&&this.right.length===0||t<0&&this.left.length===0))if(t=4?t(l):e.interrupt(r.parser.constructs.flow,n,t)(l)}}function RC(e,t,n,r,i,a,l,u,c){const f=c||Number.POSITIVE_INFINITY;let d=0;return p;function p(P){return P===60?(e.enter(r),e.enter(i),e.enter(a),e.consume(P),e.exit(a),g):P===null||P===32||P===41||Rc(P)?n(P):(e.enter(r),e.enter(l),e.enter(u),e.enter("chunkString",{contentType:"string"}),S(P))}function g(P){return P===62?(e.enter(a),e.consume(P),e.exit(a),e.exit(i),e.exit(r),t):(e.enter(u),e.enter("chunkString",{contentType:"string"}),y(P))}function y(P){return P===62?(e.exit("chunkString"),e.exit(u),g(P)):P===null||P===60||Oe(P)?n(P):(e.consume(P),P===92?x:y)}function x(P){return P===60||P===62||P===92?(e.consume(P),y):y(P)}function S(P){return!d&&(P===null||P===41||Xe(P))?(e.exit("chunkString"),e.exit(u),e.exit(l),e.exit(r),t(P)):d999||y===null||y===91||y===93&&!c||y===94&&!u&&"_hiddenFootnoteSupport"in l.parser.constructs?n(y):y===93?(e.exit(a),e.enter(i),e.consume(y),e.exit(i),e.exit(r),t):Oe(y)?(e.enter("lineEnding"),e.consume(y),e.exit("lineEnding"),d):(e.enter("chunkString",{contentType:"string"}),p(y))}function p(y){return y===null||y===91||y===93||Oe(y)||u++>999?(e.exit("chunkString"),d(y)):(e.consume(y),c||(c=!Re(y)),y===92?g:p)}function g(y){return y===91||y===92||y===93?(e.consume(y),u++,p):p(y)}}function $C(e,t,n,r,i,a){let l;return u;function u(g){return g===34||g===39||g===40?(e.enter(r),e.enter(i),e.consume(g),e.exit(i),l=g===40?41:g,c):n(g)}function c(g){return g===l?(e.enter(i),e.consume(g),e.exit(i),e.exit(r),t):(e.enter(a),f(g))}function f(g){return g===l?(e.exit(a),c(l)):g===null?n(g):Oe(g)?(e.enter("lineEnding"),e.consume(g),e.exit("lineEnding"),$e(e,f,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),d(g))}function d(g){return g===l||g===null||Oe(g)?(e.exit("chunkString"),f(g)):(e.consume(g),g===92?p:d)}function p(g){return g===l||g===92?(e.consume(g),d):d(g)}}function is(e,t){let n;return r;function r(i){return Oe(i)?(e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),n=!0,r):Re(i)?$e(e,r,n?"linePrefix":"lineSuffix")(i):t(i)}}const Lz={name:"definition",tokenize:zz},Rz={partial:!0,tokenize:$z};function zz(e,t,n){const r=this;let i;return a;function a(y){return e.enter("definition"),l(y)}function l(y){return zC.call(r,e,u,n,"definitionLabel","definitionLabelMarker","definitionLabelString")(y)}function u(y){return i=pr(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)),y===58?(e.enter("definitionMarker"),e.consume(y),e.exit("definitionMarker"),c):n(y)}function c(y){return Xe(y)?is(e,f)(y):f(y)}function f(y){return RC(e,d,n,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(y)}function d(y){return e.attempt(Rz,p,p)(y)}function p(y){return Re(y)?$e(e,g,"whitespace")(y):g(y)}function g(y){return y===null||Oe(y)?(e.exit("definition"),r.parser.defined.push(i),t(y)):n(y)}}function $z(e,t,n){return r;function r(u){return Xe(u)?is(e,i)(u):n(u)}function i(u){return $C(e,a,n,"definitionTitle","definitionTitleMarker","definitionTitleString")(u)}function a(u){return Re(u)?$e(e,l,"whitespace")(u):l(u)}function l(u){return u===null||Oe(u)?t(u):n(u)}}const Fz={name:"hardBreakEscape",tokenize:Bz};function Bz(e,t,n){return r;function r(a){return e.enter("hardBreakEscape"),e.consume(a),i}function i(a){return Oe(a)?(e.exit("hardBreakEscape"),t(a)):n(a)}}const Uz={name:"headingAtx",resolve:Wz,tokenize:qz};function Wz(e,t){let n=e.length-2,r=3,i,a;return e[r][1].type==="whitespace"&&(r+=2),n-2>r&&e[n][1].type==="whitespace"&&(n-=2),e[n][1].type==="atxHeadingSequence"&&(r===n-1||n-4>r&&e[n-2][1].type==="whitespace")&&(n-=r+1===n?2:4),n>r&&(i={type:"atxHeadingText",start:e[r][1].start,end:e[n][1].end},a={type:"chunkText",start:e[r][1].start,end:e[n][1].end,contentType:"text"},Rn(e,r,n-r+1,[["enter",i,t],["enter",a,t],["exit",a,t],["exit",i,t]])),e}function qz(e,t,n){let r=0;return i;function i(d){return e.enter("atxHeading"),a(d)}function a(d){return e.enter("atxHeadingSequence"),l(d)}function l(d){return d===35&&r++<6?(e.consume(d),l):d===null||Xe(d)?(e.exit("atxHeadingSequence"),u(d)):n(d)}function u(d){return d===35?(e.enter("atxHeadingSequence"),c(d)):d===null||Oe(d)?(e.exit("atxHeading"),t(d)):Re(d)?$e(e,u,"whitespace")(d):(e.enter("atxHeadingText"),f(d))}function c(d){return d===35?(e.consume(d),c):(e.exit("atxHeadingSequence"),u(d))}function f(d){return d===null||d===35||Xe(d)?(e.exit("atxHeadingText"),u(d)):(e.consume(d),f)}}const Hz=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],y1=["pre","script","style","textarea"],Vz={concrete:!0,name:"htmlFlow",resolveTo:Yz,tokenize:Xz},Kz={partial:!0,tokenize:Zz},Gz={partial:!0,tokenize:Qz};function Yz(e){let t=e.length;for(;t--&&!(e[t][0]==="enter"&&e[t][1].type==="htmlFlow"););return t>1&&e[t-2][1].type==="linePrefix"&&(e[t][1].start=e[t-2][1].start,e[t+1][1].start=e[t-2][1].start,e.splice(t-2,2)),e}function Xz(e,t,n){const r=this;let i,a,l,u,c;return f;function f(_){return d(_)}function d(_){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(_),p}function p(_){return _===33?(e.consume(_),g):_===47?(e.consume(_),a=!0,S):_===63?(e.consume(_),i=3,r.interrupt?t:T):cn(_)?(e.consume(_),l=String.fromCharCode(_),w):n(_)}function g(_){return _===45?(e.consume(_),i=2,y):_===91?(e.consume(_),i=5,u=0,x):cn(_)?(e.consume(_),i=4,r.interrupt?t:T):n(_)}function y(_){return _===45?(e.consume(_),r.interrupt?t:T):n(_)}function x(_){const te="CDATA[";return _===te.charCodeAt(u++)?(e.consume(_),u===te.length?r.interrupt?t:M:x):n(_)}function S(_){return cn(_)?(e.consume(_),l=String.fromCharCode(_),w):n(_)}function w(_){if(_===null||_===47||_===62||Xe(_)){const te=_===47,fe=l.toLowerCase();return!te&&!a&&y1.includes(fe)?(i=1,r.interrupt?t(_):M(_)):Hz.includes(l.toLowerCase())?(i=6,te?(e.consume(_),P):r.interrupt?t(_):M(_)):(i=7,r.interrupt&&!r.parser.lazy[r.now().line]?n(_):a?C(_):O(_))}return _===45||rn(_)?(e.consume(_),l+=String.fromCharCode(_),w):n(_)}function P(_){return _===62?(e.consume(_),r.interrupt?t:M):n(_)}function C(_){return Re(_)?(e.consume(_),C):R(_)}function O(_){return _===47?(e.consume(_),R):_===58||_===95||cn(_)?(e.consume(_),A):Re(_)?(e.consume(_),O):R(_)}function A(_){return _===45||_===46||_===58||_===95||rn(_)?(e.consume(_),A):I(_)}function I(_){return _===61?(e.consume(_),E):Re(_)?(e.consume(_),I):O(_)}function E(_){return _===null||_===60||_===61||_===62||_===96?n(_):_===34||_===39?(e.consume(_),c=_,L):Re(_)?(e.consume(_),E):F(_)}function L(_){return _===c?(e.consume(_),c=null,H):_===null||Oe(_)?n(_):(e.consume(_),L)}function F(_){return _===null||_===34||_===39||_===47||_===60||_===61||_===62||_===96||Xe(_)?I(_):(e.consume(_),F)}function H(_){return _===47||_===62||Re(_)?O(_):n(_)}function R(_){return _===62?(e.consume(_),W):n(_)}function W(_){return _===null||Oe(_)?M(_):Re(_)?(e.consume(_),W):n(_)}function M(_){return _===45&&i===2?(e.consume(_),he):_===60&&i===1?(e.consume(_),de):_===62&&i===4?(e.consume(_),$):_===63&&i===3?(e.consume(_),T):_===93&&i===5?(e.consume(_),ae):Oe(_)&&(i===6||i===7)?(e.exit("htmlFlowData"),e.check(Kz,U,Z)(_)):_===null||Oe(_)?(e.exit("htmlFlowData"),Z(_)):(e.consume(_),M)}function Z(_){return e.check(Gz,Y,U)(_)}function Y(_){return e.enter("lineEnding"),e.consume(_),e.exit("lineEnding"),Q}function Q(_){return _===null||Oe(_)?Z(_):(e.enter("htmlFlowData"),M(_))}function he(_){return _===45?(e.consume(_),T):M(_)}function de(_){return _===47?(e.consume(_),l="",J):M(_)}function J(_){if(_===62){const te=l.toLowerCase();return y1.includes(te)?(e.consume(_),$):M(_)}return cn(_)&&l.length<8?(e.consume(_),l+=String.fromCharCode(_),J):M(_)}function ae(_){return _===93?(e.consume(_),T):M(_)}function T(_){return _===62?(e.consume(_),$):_===45&&i===2?(e.consume(_),T):M(_)}function $(_){return _===null||Oe(_)?(e.exit("htmlFlowData"),U(_)):(e.consume(_),$)}function U(_){return e.exit("htmlFlow"),t(_)}}function Qz(e,t,n){const r=this;return i;function i(l){return Oe(l)?(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),a):n(l)}function a(l){return r.parser.lazy[r.now().line]?n(l):t(l)}}function Zz(e,t,n){return r;function r(i){return e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),e.attempt(Os,t,n)}}const Jz={name:"htmlText",tokenize:e3};function e3(e,t,n){const r=this;let i,a,l;return u;function u(T){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(T),c}function c(T){return T===33?(e.consume(T),f):T===47?(e.consume(T),I):T===63?(e.consume(T),O):cn(T)?(e.consume(T),F):n(T)}function f(T){return T===45?(e.consume(T),d):T===91?(e.consume(T),a=0,x):cn(T)?(e.consume(T),C):n(T)}function d(T){return T===45?(e.consume(T),y):n(T)}function p(T){return T===null?n(T):T===45?(e.consume(T),g):Oe(T)?(l=p,de(T)):(e.consume(T),p)}function g(T){return T===45?(e.consume(T),y):p(T)}function y(T){return T===62?he(T):T===45?g(T):p(T)}function x(T){const $="CDATA[";return T===$.charCodeAt(a++)?(e.consume(T),a===$.length?S:x):n(T)}function S(T){return T===null?n(T):T===93?(e.consume(T),w):Oe(T)?(l=S,de(T)):(e.consume(T),S)}function w(T){return T===93?(e.consume(T),P):S(T)}function P(T){return T===62?he(T):T===93?(e.consume(T),P):S(T)}function C(T){return T===null||T===62?he(T):Oe(T)?(l=C,de(T)):(e.consume(T),C)}function O(T){return T===null?n(T):T===63?(e.consume(T),A):Oe(T)?(l=O,de(T)):(e.consume(T),O)}function A(T){return T===62?he(T):O(T)}function I(T){return cn(T)?(e.consume(T),E):n(T)}function E(T){return T===45||rn(T)?(e.consume(T),E):L(T)}function L(T){return Oe(T)?(l=L,de(T)):Re(T)?(e.consume(T),L):he(T)}function F(T){return T===45||rn(T)?(e.consume(T),F):T===47||T===62||Xe(T)?H(T):n(T)}function H(T){return T===47?(e.consume(T),he):T===58||T===95||cn(T)?(e.consume(T),R):Oe(T)?(l=H,de(T)):Re(T)?(e.consume(T),H):he(T)}function R(T){return T===45||T===46||T===58||T===95||rn(T)?(e.consume(T),R):W(T)}function W(T){return T===61?(e.consume(T),M):Oe(T)?(l=W,de(T)):Re(T)?(e.consume(T),W):H(T)}function M(T){return T===null||T===60||T===61||T===62||T===96?n(T):T===34||T===39?(e.consume(T),i=T,Z):Oe(T)?(l=M,de(T)):Re(T)?(e.consume(T),M):(e.consume(T),Y)}function Z(T){return T===i?(e.consume(T),i=void 0,Q):T===null?n(T):Oe(T)?(l=Z,de(T)):(e.consume(T),Z)}function Y(T){return T===null||T===34||T===39||T===60||T===61||T===96?n(T):T===47||T===62||Xe(T)?H(T):(e.consume(T),Y)}function Q(T){return T===47||T===62||Xe(T)?H(T):n(T)}function he(T){return T===62?(e.consume(T),e.exit("htmlTextData"),e.exit("htmlText"),t):n(T)}function de(T){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(T),e.exit("lineEnding"),J}function J(T){return Re(T)?$e(e,ae,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(T):ae(T)}function ae(T){return e.enter("htmlTextData"),l(T)}}const iy={name:"labelEnd",resolveAll:i3,resolveTo:a3,tokenize:o3},t3={tokenize:l3},n3={tokenize:s3},r3={tokenize:u3};function i3(e){let t=-1;const n=[];for(;++t=3&&(f===null||Oe(f))?(e.exit("thematicBreak"),t(f)):n(f)}function c(f){return f===i?(e.consume(f),r++,c):(e.exit("thematicBreakSequence"),Re(f)?$e(e,u,"whitespace")(f):u(f))}}const Sn={continuation:{tokenize:x3},exit:w3,name:"list",tokenize:y3},g3={partial:!0,tokenize:k3},v3={partial:!0,tokenize:b3};function y3(e,t,n){const r=this,i=r.events[r.events.length-1];let a=i&&i[1].type==="linePrefix"?i[2].sliceSerialize(i[1],!0).length:0,l=0;return u;function u(y){const x=r.containerState.type||(y===42||y===43||y===45?"listUnordered":"listOrdered");if(x==="listUnordered"?!r.containerState.marker||y===r.containerState.marker:zg(y)){if(r.containerState.type||(r.containerState.type=x,e.enter(x,{_container:!0})),x==="listUnordered")return e.enter("listItemPrefix"),y===42||y===45?e.check(Nc,n,f)(y):f(y);if(!r.interrupt||y===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),c(y)}return n(y)}function c(y){return zg(y)&&++l<10?(e.consume(y),c):(!r.interrupt||l<2)&&(r.containerState.marker?y===r.containerState.marker:y===41||y===46)?(e.exit("listItemValue"),f(y)):n(y)}function f(y){return e.enter("listItemMarker"),e.consume(y),e.exit("listItemMarker"),r.containerState.marker=r.containerState.marker||y,e.check(Os,r.interrupt?n:d,e.attempt(g3,g,p))}function d(y){return r.containerState.initialBlankLine=!0,a++,g(y)}function p(y){return Re(y)?(e.enter("listItemPrefixWhitespace"),e.consume(y),e.exit("listItemPrefixWhitespace"),g):n(y)}function g(y){return r.containerState.size=a+r.sliceSerialize(e.exit("listItemPrefix"),!0).length,t(y)}}function x3(e,t,n){const r=this;return r.containerState._closeFlow=void 0,e.check(Os,i,a);function i(u){return r.containerState.furtherBlankLines=r.containerState.furtherBlankLines||r.containerState.initialBlankLine,$e(e,t,"listItemIndent",r.containerState.size+1)(u)}function a(u){return r.containerState.furtherBlankLines||!Re(u)?(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,l(u)):(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,e.attempt(v3,t,l)(u))}function l(u){return r.containerState._closeFlow=!0,r.interrupt=void 0,$e(e,e.attempt(Sn,t,n),"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(u)}}function b3(e,t,n){const r=this;return $e(e,i,"listItemIndent",r.containerState.size+1);function i(a){const l=r.events[r.events.length-1];return l&&l[1].type==="listItemIndent"&&l[2].sliceSerialize(l[1],!0).length===r.containerState.size?t(a):n(a)}}function w3(e){e.exit(this.containerState.type)}function k3(e,t,n){const r=this;return $e(e,i,"listItemPrefixWhitespace",r.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function i(a){const l=r.events[r.events.length-1];return!Re(a)&&l&&l[1].type==="listItemPrefixWhitespace"?t(a):n(a)}}const x1={name:"setextUnderline",resolveTo:S3,tokenize:j3};function S3(e,t){let n=e.length,r,i,a;for(;n--;)if(e[n][0]==="enter"){if(e[n][1].type==="content"){r=n;break}e[n][1].type==="paragraph"&&(i=n)}else e[n][1].type==="content"&&e.splice(n,1),!a&&e[n][1].type==="definition"&&(a=n);const l={type:"setextHeading",start:{...e[r][1].start},end:{...e[e.length-1][1].end}};return e[i][1].type="setextHeadingText",a?(e.splice(i,0,["enter",l,t]),e.splice(a+1,0,["exit",e[r][1],t]),e[r][1].end={...e[a][1].end}):e[r][1]=l,e.push(["exit",l,t]),e}function j3(e,t,n){const r=this;let i;return a;function a(f){let d=r.events.length,p;for(;d--;)if(r.events[d][1].type!=="lineEnding"&&r.events[d][1].type!=="linePrefix"&&r.events[d][1].type!=="content"){p=r.events[d][1].type==="paragraph";break}return!r.parser.lazy[r.now().line]&&(r.interrupt||p)?(e.enter("setextHeadingLine"),i=f,l(f)):n(f)}function l(f){return e.enter("setextHeadingLineSequence"),u(f)}function u(f){return f===i?(e.consume(f),u):(e.exit("setextHeadingLineSequence"),Re(f)?$e(e,c,"lineSuffix")(f):c(f))}function c(f){return f===null||Oe(f)?(e.exit("setextHeadingLine"),t(f)):n(f)}}const P3={tokenize:E3};function E3(e){const t=this,n=e.attempt(Os,r,e.attempt(this.parser.constructs.flowInitial,i,$e(e,e.attempt(this.parser.constructs.flow,i,e.attempt(_z,i)),"linePrefix")));return n;function r(a){if(a===null){e.consume(a);return}return e.enter("lineEndingBlank"),e.consume(a),e.exit("lineEndingBlank"),t.currentConstruct=void 0,n}function i(a){if(a===null){e.consume(a);return}return e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),t.currentConstruct=void 0,n}}const C3={resolveAll:BC()},O3=FC("string"),N3=FC("text");function FC(e){return{resolveAll:BC(e==="text"?A3:void 0),tokenize:t};function t(n){const r=this,i=this.parser.constructs[e],a=n.attempt(i,l,u);return l;function l(d){return f(d)?a(d):u(d)}function u(d){if(d===null){n.consume(d);return}return n.enter("data"),n.consume(d),c}function c(d){return f(d)?(n.exit("data"),a(d)):(n.consume(d),c)}function f(d){if(d===null)return!0;const p=i[d];let g=-1;if(p)for(;++g-1){const u=l[0];typeof u=="string"?l[0]=u.slice(r):l.shift()}a>0&&l.push(e[i].slice(0,a))}return l}function W3(e,t){let n=-1;const r=[];let i;for(;++n0){const Wt=Ne.tokenStack[Ne.tokenStack.length-1];(Wt[1]||y1).call(Ne,void 0,Wt[0])}for(pe.position={start:Bi(ee.length>0?ee[0][1].start:{line:1,column:1,offset:0}),end:Bi(ee.length>0?ee[ee.length-2][1].end:{line:1,column:1,offset:0})},Fe=-1;++Fe0&&(r.className=["language-"+i[0]]);let a={type:"element",tagName:"code",properties:r,children:[{type:"text",value:n}]};return t.meta&&(a.data={meta:t.meta}),e.patch(t,a),a=e.applyData(t,a),a={type:"element",tagName:"pre",properties:{},children:[a]},e.patch(t,a),a}function G3(e,t){const n={type:"element",tagName:"del",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function Y3(e,t){const n={type:"element",tagName:"em",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function X3(e,t){const n=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",r=String(t.identifier).toUpperCase(),i=Bo(r.toLowerCase()),a=e.footnoteOrder.indexOf(r);let l,u=e.footnoteCounts.get(r);u===void 0?(u=0,e.footnoteOrder.push(r),l=e.footnoteOrder.length):l=a+1,u+=1,e.footnoteCounts.set(r,u);const c={type:"element",tagName:"a",properties:{href:"#"+n+"fn-"+i,id:n+"fnref-"+i+(u>1?"-"+u:""),dataFootnoteRef:!0,ariaDescribedBy:["footnote-label"]},children:[{type:"text",value:String(l)}]};e.patch(t,c);const f={type:"element",tagName:"sup",properties:{},children:[c]};return e.patch(t,f),e.applyData(t,f)}function Q3(e,t){const n={type:"element",tagName:"h"+t.depth,properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function Z3(e,t){if(e.options.allowDangerousHtml){const n={type:"raw",value:t.value};return e.patch(t,n),e.applyData(t,n)}}function $C(e,t){const n=t.referenceType;let r="]";if(n==="collapsed"?r+="[]":n==="full"&&(r+="["+(t.label||t.identifier)+"]"),t.type==="imageReference")return[{type:"text",value:"!["+t.alt+r}];const i=e.all(t),a=i[0];a&&a.type==="text"?a.value="["+a.value:i.unshift({type:"text",value:"["});const l=i[i.length-1];return l&&l.type==="text"?l.value+=r:i.push({type:"text",value:r}),i}function J3(e,t){const n=String(t.identifier).toUpperCase(),r=e.definitionById.get(n);if(!r)return $C(e,t);const i={src:Bo(r.url||""),alt:t.alt};r.title!==null&&r.title!==void 0&&(i.title=r.title);const a={type:"element",tagName:"img",properties:i,children:[]};return e.patch(t,a),e.applyData(t,a)}function e4(e,t){const n={src:Bo(t.url)};t.alt!==null&&t.alt!==void 0&&(n.alt=t.alt),t.title!==null&&t.title!==void 0&&(n.title=t.title);const r={type:"element",tagName:"img",properties:n,children:[]};return e.patch(t,r),e.applyData(t,r)}function t4(e,t){const n={type:"text",value:t.value.replace(/\r?\n|\r/g," ")};e.patch(t,n);const r={type:"element",tagName:"code",properties:{},children:[n]};return e.patch(t,r),e.applyData(t,r)}function n4(e,t){const n=String(t.identifier).toUpperCase(),r=e.definitionById.get(n);if(!r)return $C(e,t);const i={href:Bo(r.url||"")};r.title!==null&&r.title!==void 0&&(i.title=r.title);const a={type:"element",tagName:"a",properties:i,children:e.all(t)};return e.patch(t,a),e.applyData(t,a)}function r4(e,t){const n={href:Bo(t.url)};t.title!==null&&t.title!==void 0&&(n.title=t.title);const r={type:"element",tagName:"a",properties:n,children:e.all(t)};return e.patch(t,r),e.applyData(t,r)}function i4(e,t,n){const r=e.all(t),i=n?a4(n):FC(t),a={},l=[];if(typeof t.checked=="boolean"){const d=r[0];let p;d&&d.type==="element"&&d.tagName==="p"?p=d:(p={type:"element",tagName:"p",properties:{},children:[]},r.unshift(p)),p.children.length>0&&p.children.unshift({type:"text",value:" "}),p.children.unshift({type:"element",tagName:"input",properties:{type:"checkbox",checked:t.checked,disabled:!0},children:[]}),a.className=["task-list-item"]}let u=-1;for(;++u0){const Wt=Ne.tokenStack[Ne.tokenStack.length-1];(Wt[1]||w1).call(Ne,void 0,Wt[0])}for(pe.position={start:Ui(ee.length>0?ee[0][1].start:{line:1,column:1,offset:0}),end:Ui(ee.length>0?ee[ee.length-2][1].end:{line:1,column:1,offset:0})},Fe=-1;++Fe0&&(r.className=["language-"+i[0]]);let a={type:"element",tagName:"code",properties:r,children:[{type:"text",value:n}]};return t.meta&&(a.data={meta:t.meta}),e.patch(t,a),a=e.applyData(t,a),a={type:"element",tagName:"pre",properties:{},children:[a]},e.patch(t,a),a}function r4(e,t){const n={type:"element",tagName:"del",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function i4(e,t){const n={type:"element",tagName:"em",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function a4(e,t){const n=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",r=String(t.identifier).toUpperCase(),i=Uo(r.toLowerCase()),a=e.footnoteOrder.indexOf(r);let l,u=e.footnoteCounts.get(r);u===void 0?(u=0,e.footnoteOrder.push(r),l=e.footnoteOrder.length):l=a+1,u+=1,e.footnoteCounts.set(r,u);const c={type:"element",tagName:"a",properties:{href:"#"+n+"fn-"+i,id:n+"fnref-"+i+(u>1?"-"+u:""),dataFootnoteRef:!0,ariaDescribedBy:["footnote-label"]},children:[{type:"text",value:String(l)}]};e.patch(t,c);const f={type:"element",tagName:"sup",properties:{},children:[c]};return e.patch(t,f),e.applyData(t,f)}function o4(e,t){const n={type:"element",tagName:"h"+t.depth,properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function l4(e,t){if(e.options.allowDangerousHtml){const n={type:"raw",value:t.value};return e.patch(t,n),e.applyData(t,n)}}function qC(e,t){const n=t.referenceType;let r="]";if(n==="collapsed"?r+="[]":n==="full"&&(r+="["+(t.label||t.identifier)+"]"),t.type==="imageReference")return[{type:"text",value:"!["+t.alt+r}];const i=e.all(t),a=i[0];a&&a.type==="text"?a.value="["+a.value:i.unshift({type:"text",value:"["});const l=i[i.length-1];return l&&l.type==="text"?l.value+=r:i.push({type:"text",value:r}),i}function s4(e,t){const n=String(t.identifier).toUpperCase(),r=e.definitionById.get(n);if(!r)return qC(e,t);const i={src:Uo(r.url||""),alt:t.alt};r.title!==null&&r.title!==void 0&&(i.title=r.title);const a={type:"element",tagName:"img",properties:i,children:[]};return e.patch(t,a),e.applyData(t,a)}function u4(e,t){const n={src:Uo(t.url)};t.alt!==null&&t.alt!==void 0&&(n.alt=t.alt),t.title!==null&&t.title!==void 0&&(n.title=t.title);const r={type:"element",tagName:"img",properties:n,children:[]};return e.patch(t,r),e.applyData(t,r)}function c4(e,t){const n={type:"text",value:t.value.replace(/\r?\n|\r/g," ")};e.patch(t,n);const r={type:"element",tagName:"code",properties:{},children:[n]};return e.patch(t,r),e.applyData(t,r)}function f4(e,t){const n=String(t.identifier).toUpperCase(),r=e.definitionById.get(n);if(!r)return qC(e,t);const i={href:Uo(r.url||"")};r.title!==null&&r.title!==void 0&&(i.title=r.title);const a={type:"element",tagName:"a",properties:i,children:e.all(t)};return e.patch(t,a),e.applyData(t,a)}function d4(e,t){const n={href:Uo(t.url)};t.title!==null&&t.title!==void 0&&(n.title=t.title);const r={type:"element",tagName:"a",properties:n,children:e.all(t)};return e.patch(t,r),e.applyData(t,r)}function h4(e,t,n){const r=e.all(t),i=n?p4(n):HC(t),a={},l=[];if(typeof t.checked=="boolean"){const d=r[0];let p;d&&d.type==="element"&&d.tagName==="p"?p=d:(p={type:"element",tagName:"p",properties:{},children:[]},r.unshift(p)),p.children.length>0&&p.children.unshift({type:"text",value:" "}),p.children.unshift({type:"element",tagName:"input",properties:{type:"checkbox",checked:t.checked,disabled:!0},children:[]}),a.className=["task-list-item"]}let u=-1;for(;++u1}function o4(e,t){const n={},r=e.all(t);let i=-1;for(typeof t.start=="number"&&t.start!==1&&(n.start=t.start);++i0){const l={type:"element",tagName:"tbody",properties:{},children:e.wrap(n,!0)},u=Xv(t.children[1]),c=xC(t.children[t.children.length-1]);u&&c&&(l.position={start:u,end:c}),i.push(l)}const a={type:"element",tagName:"table",properties:{},children:e.wrap(i,!0)};return e.patch(t,a),e.applyData(t,a)}function f4(e,t,n){const r=n?n.children:void 0,a=(r?r.indexOf(t):1)===0?"th":"td",l=n&&n.type==="table"?n.align:void 0,u=l?l.length:t.children.length;let c=-1;const f=[];for(;++c0,!0),r[0]),i=r.index+r[0].length,r=n.exec(t);return a.push(w1(t.slice(i),i>0,!1)),a.join("")}function w1(e,t,n){let r=0,i=e.length;if(t){let a=e.codePointAt(r);for(;a===x1||a===b1;)r++,a=e.codePointAt(r)}if(n){let a=e.codePointAt(i-1);for(;a===x1||a===b1;)i--,a=e.codePointAt(i-1)}return i>r?e.slice(r,i):""}function p4(e,t){const n={type:"text",value:h4(String(t.value))};return e.patch(t,n),e.applyData(t,n)}function m4(e,t){const n={type:"element",tagName:"hr",properties:{},children:[]};return e.patch(t,n),e.applyData(t,n)}const g4={blockquote:H3,break:V3,code:K3,delete:G3,emphasis:Y3,footnoteReference:X3,heading:Q3,html:Z3,imageReference:J3,image:e4,inlineCode:t4,linkReference:n4,link:r4,listItem:i4,list:o4,paragraph:l4,root:s4,strong:u4,table:c4,tableCell:d4,tableRow:f4,text:p4,thematicBreak:m4,toml:ac,yaml:ac,definition:ac,footnoteDefinition:ac};function ac(){}const BC=-1,Ff=0,is=1,Rc=2,ry=3,iy=4,ay=5,oy=6,UC=7,WC=8,k1=typeof self=="object"?self:globalThis,v4=(e,t)=>{const n=(i,a)=>(e.set(a,i),i),r=i=>{if(e.has(i))return e.get(i);const[a,l]=t[i];switch(a){case Ff:case BC:return n(l,i);case is:{const u=n([],i);for(const c of l)u.push(r(c));return u}case Rc:{const u=n({},i);for(const[c,f]of l)u[r(c)]=r(f);return u}case ry:return n(new Date(l),i);case iy:{const{source:u,flags:c}=l;return n(new RegExp(u,c),i)}case ay:{const u=n(new Map,i);for(const[c,f]of l)u.set(r(c),r(f));return u}case oy:{const u=n(new Set,i);for(const c of l)u.add(r(c));return u}case UC:{const{name:u,message:c}=l;return n(new k1[u](c),i)}case WC:return n(BigInt(l),i);case"BigInt":return n(Object(BigInt(l)),i);case"ArrayBuffer":return n(new Uint8Array(l).buffer,l);case"DataView":{const{buffer:u}=new Uint8Array(l);return n(new DataView(u),l)}}return n(new k1[a](l),i)};return r},S1=e=>v4(new Map,e)(0),mo="",{toString:y4}={},{keys:x4}=Object,Fl=e=>{const t=typeof e;if(t!=="object"||!e)return[Ff,t];const n=y4.call(e).slice(8,-1);switch(n){case"Array":return[is,mo];case"Object":return[Rc,mo];case"Date":return[ry,mo];case"RegExp":return[iy,mo];case"Map":return[ay,mo];case"Set":return[oy,mo];case"DataView":return[is,n]}return n.includes("Array")?[is,n]:n.includes("Error")?[UC,n]:[Rc,n]},oc=([e,t])=>e===Ff&&(t==="function"||t==="symbol"),b4=(e,t,n,r)=>{const i=(l,u)=>{const c=r.push(l)-1;return n.set(u,c),c},a=l=>{if(n.has(l))return n.get(l);let[u,c]=Fl(l);switch(u){case Ff:{let d=l;switch(c){case"bigint":u=WC,d=l.toString();break;case"function":case"symbol":if(e)throw new TypeError("unable to serialize "+c);d=null;break;case"undefined":return i([BC],l)}return i([u,d],l)}case is:{if(c){let g=l;return c==="DataView"?g=new Uint8Array(l.buffer):c==="ArrayBuffer"&&(g=new Uint8Array(l)),i([c,[...g]],l)}const d=[],p=i([u,d],l);for(const g of l)d.push(a(g));return p}case Rc:{if(c)switch(c){case"BigInt":return i([c,l.toString()],l);case"Boolean":case"Number":case"String":return i([c,l.valueOf()],l)}if(t&&"toJSON"in l)return a(l.toJSON());const d=[],p=i([u,d],l);for(const g of x4(l))(e||!oc(Fl(l[g])))&&d.push([a(g),a(l[g])]);return p}case ry:return i([u,l.toISOString()],l);case iy:{const{source:d,flags:p}=l;return i([u,{source:d,flags:p}],l)}case ay:{const d=[],p=i([u,d],l);for(const[g,y]of l)(e||!(oc(Fl(g))||oc(Fl(y))))&&d.push([a(g),a(y)]);return p}case oy:{const d=[],p=i([u,d],l);for(const g of l)(e||!oc(Fl(g)))&&d.push(a(g));return p}}const{message:f}=l;return i([u,{name:c,message:f}],l)};return a},j1=(e,{json:t,lossy:n}={})=>{const r=[];return b4(!(t||n),!!t,new Map,r)(e),r},zc=typeof structuredClone=="function"?(e,t)=>t&&("json"in t||"lossy"in t)?S1(j1(e,t)):structuredClone(e):(e,t)=>S1(j1(e,t));function w4(e,t){const n=[{type:"text",value:"↩"}];return t>1&&n.push({type:"element",tagName:"sup",properties:{},children:[{type:"text",value:String(t)}]}),n}function k4(e,t){return"Back to reference "+(e+1)+(t>1?"-"+t:"")}function S4(e){const t=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",n=e.options.footnoteBackContent||w4,r=e.options.footnoteBackLabel||k4,i=e.options.footnoteLabel||"Footnotes",a=e.options.footnoteLabelTagName||"h2",l=e.options.footnoteLabelProperties||{className:["sr-only"]},u=[];let c=-1;for(;++c0&&b.push({type:"text",value:" "});let C=typeof n=="string"?n:n(c,y);typeof C=="string"&&(C={type:"text",value:C}),b.push({type:"element",tagName:"a",properties:{href:"#"+t+"fnref-"+g+(y>1?"-"+y:""),dataFootnoteBackref:"",ariaLabel:typeof r=="string"?r:r(c,y),className:["data-footnote-backref"]},children:Array.isArray(C)?C:[C]})}const w=d[d.length-1];if(w&&w.type==="element"&&w.tagName==="p"){const C=w.children[w.children.length-1];C&&C.type==="text"?C.value+=" ":w.children.push({type:"text",value:" "}),w.children.push(...b)}else d.push(...b);const P={type:"element",tagName:"li",properties:{id:t+"fn-"+g},children:e.wrap(d,!0)};e.patch(f,P),u.push(P)}if(u.length!==0)return{type:"element",tagName:"section",properties:{dataFootnotes:!0,className:["footnotes"]},children:[{type:"element",tagName:a,properties:{...zc(l),id:"footnote-label"},children:[{type:"text",value:i}]},{type:"text",value:` +`});const f={type:"element",tagName:"li",properties:a,children:l};return e.patch(t,f),e.applyData(t,f)}function p4(e){let t=!1;if(e.type==="list"){t=e.spread||!1;const n=e.children;let r=-1;for(;!t&&++r1}function m4(e,t){const n={},r=e.all(t);let i=-1;for(typeof t.start=="number"&&t.start!==1&&(n.start=t.start);++i0){const l={type:"element",tagName:"tbody",properties:{},children:e.wrap(n,!0)},u=Zv(t.children[1]),c=jC(t.children[t.children.length-1]);u&&c&&(l.position={start:u,end:c}),i.push(l)}const a={type:"element",tagName:"table",properties:{},children:e.wrap(i,!0)};return e.patch(t,a),e.applyData(t,a)}function b4(e,t,n){const r=n?n.children:void 0,a=(r?r.indexOf(t):1)===0?"th":"td",l=n&&n.type==="table"?n.align:void 0,u=l?l.length:t.children.length;let c=-1;const f=[];for(;++c0,!0),r[0]),i=r.index+r[0].length,r=n.exec(t);return a.push(j1(t.slice(i),i>0,!1)),a.join("")}function j1(e,t,n){let r=0,i=e.length;if(t){let a=e.codePointAt(r);for(;a===k1||a===S1;)r++,a=e.codePointAt(r)}if(n){let a=e.codePointAt(i-1);for(;a===k1||a===S1;)i--,a=e.codePointAt(i-1)}return i>r?e.slice(r,i):""}function S4(e,t){const n={type:"text",value:k4(String(t.value))};return e.patch(t,n),e.applyData(t,n)}function j4(e,t){const n={type:"element",tagName:"hr",properties:{},children:[]};return e.patch(t,n),e.applyData(t,n)}const P4={blockquote:e4,break:t4,code:n4,delete:r4,emphasis:i4,footnoteReference:a4,heading:o4,html:l4,imageReference:s4,image:u4,inlineCode:c4,linkReference:f4,link:d4,listItem:h4,list:m4,paragraph:g4,root:v4,strong:y4,table:x4,tableCell:w4,tableRow:b4,text:S4,thematicBreak:j4,toml:oc,yaml:oc,definition:oc,footnoteDefinition:oc};function oc(){}const VC=-1,Bf=0,as=1,zc=2,ay=3,oy=4,ly=5,sy=6,KC=7,GC=8,P1=typeof self=="object"?self:globalThis,E4=(e,t)=>{const n=(i,a)=>(e.set(a,i),i),r=i=>{if(e.has(i))return e.get(i);const[a,l]=t[i];switch(a){case Bf:case VC:return n(l,i);case as:{const u=n([],i);for(const c of l)u.push(r(c));return u}case zc:{const u=n({},i);for(const[c,f]of l)u[r(c)]=r(f);return u}case ay:return n(new Date(l),i);case oy:{const{source:u,flags:c}=l;return n(new RegExp(u,c),i)}case ly:{const u=n(new Map,i);for(const[c,f]of l)u.set(r(c),r(f));return u}case sy:{const u=n(new Set,i);for(const c of l)u.add(r(c));return u}case KC:{const{name:u,message:c}=l;return n(new P1[u](c),i)}case GC:return n(BigInt(l),i);case"BigInt":return n(Object(BigInt(l)),i);case"ArrayBuffer":return n(new Uint8Array(l).buffer,l);case"DataView":{const{buffer:u}=new Uint8Array(l);return n(new DataView(u),l)}}return n(new P1[a](l),i)};return r},E1=e=>E4(new Map,e)(0),go="",{toString:C4}={},{keys:O4}=Object,Bl=e=>{const t=typeof e;if(t!=="object"||!e)return[Bf,t];const n=C4.call(e).slice(8,-1);switch(n){case"Array":return[as,go];case"Object":return[zc,go];case"Date":return[ay,go];case"RegExp":return[oy,go];case"Map":return[ly,go];case"Set":return[sy,go];case"DataView":return[as,n]}return n.includes("Array")?[as,n]:n.includes("Error")?[KC,n]:[zc,n]},lc=([e,t])=>e===Bf&&(t==="function"||t==="symbol"),N4=(e,t,n,r)=>{const i=(l,u)=>{const c=r.push(l)-1;return n.set(u,c),c},a=l=>{if(n.has(l))return n.get(l);let[u,c]=Bl(l);switch(u){case Bf:{let d=l;switch(c){case"bigint":u=GC,d=l.toString();break;case"function":case"symbol":if(e)throw new TypeError("unable to serialize "+c);d=null;break;case"undefined":return i([VC],l)}return i([u,d],l)}case as:{if(c){let g=l;return c==="DataView"?g=new Uint8Array(l.buffer):c==="ArrayBuffer"&&(g=new Uint8Array(l)),i([c,[...g]],l)}const d=[],p=i([u,d],l);for(const g of l)d.push(a(g));return p}case zc:{if(c)switch(c){case"BigInt":return i([c,l.toString()],l);case"Boolean":case"Number":case"String":return i([c,l.valueOf()],l)}if(t&&"toJSON"in l)return a(l.toJSON());const d=[],p=i([u,d],l);for(const g of O4(l))(e||!lc(Bl(l[g])))&&d.push([a(g),a(l[g])]);return p}case ay:return i([u,l.toISOString()],l);case oy:{const{source:d,flags:p}=l;return i([u,{source:d,flags:p}],l)}case ly:{const d=[],p=i([u,d],l);for(const[g,y]of l)(e||!(lc(Bl(g))||lc(Bl(y))))&&d.push([a(g),a(y)]);return p}case sy:{const d=[],p=i([u,d],l);for(const g of l)(e||!lc(Bl(g)))&&d.push(a(g));return p}}const{message:f}=l;return i([u,{name:c,message:f}],l)};return a},C1=(e,{json:t,lossy:n}={})=>{const r=[];return N4(!(t||n),!!t,new Map,r)(e),r},$c=typeof structuredClone=="function"?(e,t)=>t&&("json"in t||"lossy"in t)?E1(C1(e,t)):structuredClone(e):(e,t)=>E1(C1(e,t));function A4(e,t){const n=[{type:"text",value:"↩"}];return t>1&&n.push({type:"element",tagName:"sup",properties:{},children:[{type:"text",value:String(t)}]}),n}function _4(e,t){return"Back to reference "+(e+1)+(t>1?"-"+t:"")}function I4(e){const t=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",n=e.options.footnoteBackContent||A4,r=e.options.footnoteBackLabel||_4,i=e.options.footnoteLabel||"Footnotes",a=e.options.footnoteLabelTagName||"h2",l=e.options.footnoteLabelProperties||{className:["sr-only"]},u=[];let c=-1;for(;++c0&&x.push({type:"text",value:" "});let C=typeof n=="string"?n:n(c,y);typeof C=="string"&&(C={type:"text",value:C}),x.push({type:"element",tagName:"a",properties:{href:"#"+t+"fnref-"+g+(y>1?"-"+y:""),dataFootnoteBackref:"",ariaLabel:typeof r=="string"?r:r(c,y),className:["data-footnote-backref"]},children:Array.isArray(C)?C:[C]})}const w=d[d.length-1];if(w&&w.type==="element"&&w.tagName==="p"){const C=w.children[w.children.length-1];C&&C.type==="text"?C.value+=" ":w.children.push({type:"text",value:" "}),w.children.push(...x)}else d.push(...x);const P={type:"element",tagName:"li",properties:{id:t+"fn-"+g},children:e.wrap(d,!0)};e.patch(f,P),u.push(P)}if(u.length!==0)return{type:"element",tagName:"section",properties:{dataFootnotes:!0,className:["footnotes"]},children:[{type:"element",tagName:a,properties:{...$c(l),id:"footnote-label"},children:[{type:"text",value:i}]},{type:"text",value:` `},{type:"element",tagName:"ol",properties:{},children:e.wrap(u,!0)},{type:"text",value:` -`}]}}const Bf=(function(e){if(e==null)return C4;if(typeof e=="function")return Uf(e);if(typeof e=="object")return Array.isArray(e)?j4(e):P4(e);if(typeof e=="string")return E4(e);throw new Error("Expected function, string, or object as test")});function j4(e){const t=[];let n=-1;for(;++n":""))+")"})}return g;function g(){let y=qC,b,S,w;if((!t||a(c,f,d[d.length-1]||void 0))&&(y=_4(n(c,d)),y[0]===zg))return y;if("children"in c&&c.children){const P=c;if(P.children&&y[0]!==A4)for(S=(r?P.children.length:-1)+l,w=d.concat(P);S>-1&&S":""))+")"})}return g;function g(){let y=YC,x,S,w;if((!t||a(c,f,d[d.length-1]||void 0))&&(y=F4(n(c,d)),y[0]===Fg))return y;if("children"in c&&c.children){const P=c;if(P.children&&y[0]!==$4)for(S=(r?P.children.length:-1)+l,w=d.concat(P);S>-1&&S0&&n.push({type:"text",value:` -`}),n}function P1(e){let t=0,n=e.charCodeAt(t);for(;n===9||n===32;)t++,n=e.charCodeAt(t);return e.slice(t)}function E1(e,t){const n=T4(e,t),r=n.one(e,void 0),i=S4(n),a=Array.isArray(r)?{type:"root",children:r}:r||{type:"root",children:[]};return i&&a.children.push({type:"text",value:` -`},i),a}function z4(e,t){return e&&"run"in e?async function(n,r){const i=E1(n,{file:r,...t});await e.run(i,r)}:function(n,r){return E1(n,{file:r,...e||t})}}function C1(e){if(e)throw e}var Dp,O1;function $4(){if(O1)return Dp;O1=1;var e=Object.prototype.hasOwnProperty,t=Object.prototype.toString,n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=function(f){return typeof Array.isArray=="function"?Array.isArray(f):t.call(f)==="[object Array]"},a=function(f){if(!f||t.call(f)!=="[object Object]")return!1;var d=e.call(f,"constructor"),p=f.constructor&&f.constructor.prototype&&e.call(f.constructor.prototype,"isPrototypeOf");if(f.constructor&&!d&&!p)return!1;var g;for(g in f);return typeof g>"u"||e.call(f,g)},l=function(f,d){n&&d.name==="__proto__"?n(f,d.name,{enumerable:!0,configurable:!0,value:d.newValue,writable:!0}):f[d.name]=d.newValue},u=function(f,d){if(d==="__proto__")if(e.call(f,d)){if(r)return r(f,d).value}else return;return f[d]};return Dp=function c(){var f,d,p,g,y,b,S=arguments[0],w=1,P=arguments.length,C=!1;for(typeof S=="boolean"&&(C=S,S=arguments[1]||{},w=2),(S==null||typeof S!="object"&&typeof S!="function")&&(S={});wl.length;let c;u&&l.push(i);try{c=e.apply(this,l)}catch(f){const d=f;if(u&&n)throw d;return i(d)}u||(c&&c.then&&typeof c.then=="function"?c.then(a,i):c instanceof Error?i(c):a(c))}function i(l,...u){n||(n=!0,t(l,...u))}function a(l){i(null,l)}}const Nr={basename:W4,dirname:q4,extname:H4,join:V4,sep:"/"};function W4(e,t){if(t!==void 0&&typeof t!="string")throw new TypeError('"ext" argument must be a string');Os(e);let n=0,r=-1,i=e.length,a;if(t===void 0||t.length===0||t.length>e.length){for(;i--;)if(e.codePointAt(i)===47){if(a){n=i+1;break}}else r<0&&(a=!0,r=i+1);return r<0?"":e.slice(n,r)}if(t===e)return"";let l=-1,u=t.length-1;for(;i--;)if(e.codePointAt(i)===47){if(a){n=i+1;break}}else l<0&&(a=!0,l=i+1),u>-1&&(e.codePointAt(i)===t.codePointAt(u--)?u<0&&(r=i):(u=-1,r=l));return n===r?r=l:r<0&&(r=e.length),e.slice(n,r)}function q4(e){if(Os(e),e.length===0)return".";let t=-1,n=e.length,r;for(;--n;)if(e.codePointAt(n)===47){if(r){t=n;break}}else r||(r=!0);return t<0?e.codePointAt(0)===47?"/":".":t===1&&e.codePointAt(0)===47?"//":e.slice(0,t)}function H4(e){Os(e);let t=e.length,n=-1,r=0,i=-1,a=0,l;for(;t--;){const u=e.codePointAt(t);if(u===47){if(l){r=t+1;break}continue}n<0&&(l=!0,n=t+1),u===46?i<0?i=t:a!==1&&(a=1):i>-1&&(a=-1)}return i<0||n<0||a===0||a===1&&i===n-1&&i===r+1?"":e.slice(i,n)}function V4(...e){let t=-1,n;for(;++t0&&e.codePointAt(e.length-1)===47&&(n+="/"),t?"/"+n:n}function G4(e,t){let n="",r=0,i=-1,a=0,l=-1,u,c;for(;++l<=e.length;){if(l2){if(c=n.lastIndexOf("/"),c!==n.length-1){c<0?(n="",r=0):(n=n.slice(0,c),r=n.length-1-n.lastIndexOf("/")),i=l,a=0;continue}}else if(n.length>0){n="",r=0,i=l,a=0;continue}}t&&(n=n.length>0?n+"/..":"..",r=2)}else n.length>0?n+="/"+e.slice(i+1,l):n=e.slice(i+1,l),r=l-i-1;i=l,a=0}else u===46&&a>-1?a++:a=-1}return n}function Os(e){if(typeof e!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const Y4={cwd:X4};function X4(){return"/"}function Bg(e){return!!(e!==null&&typeof e=="object"&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&e.auth===void 0)}function Q4(e){if(typeof e=="string")e=new URL(e);else if(!Bg(e)){const t=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+e+"`");throw t.code="ERR_INVALID_ARG_TYPE",t}if(e.protocol!=="file:"){const t=new TypeError("The URL must be of scheme file");throw t.code="ERR_INVALID_URL_SCHEME",t}return Z4(e)}function Z4(e){if(e.hostname!==""){const r=new TypeError('File URL host must be "localhost" or empty on darwin');throw r.code="ERR_INVALID_FILE_URL_HOST",r}const t=e.pathname;let n=-1;for(;++n0){let[y,...b]=d;const S=r[g][1];Fg(S)&&Fg(y)&&(y=Mp(!0,S,y)),r[g]=[f,y,...b]}}}}const n$=new sy().freeze();function $p(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `parser`")}function Fp(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `compiler`")}function Bp(e,t){if(t)throw new Error("Cannot call `"+e+"` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.")}function A1(e){if(!Fg(e)||typeof e.type!="string")throw new TypeError("Expected node, got `"+e+"`")}function _1(e,t,n){if(!n)throw new Error("`"+e+"` finished async. Use `"+t+"` instead")}function lc(e){return r$(e)?e:new VC(e)}function r$(e){return!!(e&&typeof e=="object"&&"message"in e&&"messages"in e)}function i$(e){return typeof e=="string"||a$(e)}function a$(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}const o$="https://github.com/remarkjs/react-markdown/blob/main/changelog.md",I1=[],T1={allowDangerousHtml:!0},l$=/^(https?|ircs?|mailto|xmpp)$/i,s$=[{from:"astPlugins",id:"remove-buggy-html-in-markdown-parser"},{from:"allowDangerousHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"allowNode",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowElement"},{from:"allowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowedElements"},{from:"disallowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"disallowedElements"},{from:"escapeHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"includeElementIndex",id:"#remove-includeelementindex"},{from:"includeNodeIndex",id:"change-includenodeindex-to-includeelementindex"},{from:"linkTarget",id:"remove-linktarget"},{from:"plugins",id:"change-plugins-to-remarkplugins",to:"remarkPlugins"},{from:"rawSourcePos",id:"#remove-rawsourcepos"},{from:"renderers",id:"change-renderers-to-components",to:"components"},{from:"source",id:"change-source-to-children",to:"children"},{from:"sourcePos",id:"#remove-sourcepos"},{from:"transformImageUri",id:"#add-urltransform",to:"urlTransform"},{from:"transformLinkUri",id:"#add-urltransform",to:"urlTransform"}];function u$(e){const t=c$(e),n=f$(e);return d$(t.runSync(t.parse(n),n),e)}function c$(e){const t=e.rehypePlugins||I1,n=e.remarkPlugins||I1,r=e.remarkRehypeOptions?{...e.remarkRehypeOptions,...T1}:T1;return n$().use(q3).use(n).use(z4,r).use(t)}function f$(e){const t=e.children||"",n=new VC;return typeof t=="string"&&(n.value=t),n}function d$(e,t){const n=t.allowedElements,r=t.allowElement,i=t.components,a=t.disallowedElements,l=t.skipHtml,u=t.unwrapDisallowed,c=t.urlTransform||h$;for(const d of s$)Object.hasOwn(t,d.from)&&(""+d.from+(d.to?"use `"+d.to+"` instead":"remove it")+o$+d.id,void 0);return t.className&&(e={type:"element",tagName:"div",properties:{className:t.className},children:e.type==="root"?e.children:[e]}),ly(e,f),CR(e,{Fragment:m.Fragment,components:i,ignoreInvalidStyle:!0,jsx:m.jsx,jsxs:m.jsxs,passKeys:!0,passNode:!0});function f(d,p,g){if(d.type==="raw"&&g&&typeof p=="number")return l?g.children.splice(p,1):g.children[p]={type:"text",value:d.value},p;if(d.type==="element"){let y;for(y in _p)if(Object.hasOwn(_p,y)&&Object.hasOwn(d.properties,y)){const b=d.properties[y],S=_p[y];(S===null||S.includes(d.tagName))&&(d.properties[y]=c(String(b||""),y,d))}}if(d.type==="element"){let y=n?!n.includes(d.tagName):a?a.includes(d.tagName):!1;if(!y&&r&&typeof p=="number"&&(y=!r(d,p,g)),y&&g&&typeof p=="number")return u&&d.children?g.children.splice(p,1,...d.children):g.children.splice(p,1),p}}}function h$(e){const t=e.indexOf(":"),n=e.indexOf("?"),r=e.indexOf("#"),i=e.indexOf("/");return t===-1||i!==-1&&t>i||n!==-1&&t>n||r!==-1&&t>r||l$.test(e.slice(0,t))?e:""}function D1(e,t){const n=String(e);if(typeof t!="string")throw new TypeError("Expected character");let r=0,i=n.indexOf(t);for(;i!==-1;)r++,i=n.indexOf(t,i+t.length);return r}function p$(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}function m$(e,t,n){const i=Bf((n||{}).ignore||[]),a=g$(t);let l=-1;for(;++l0?{type:"text",value:E}:void 0),E===!1?g.lastIndex=A+1:(b!==A&&C.push({type:"text",value:f.value.slice(b,A)}),Array.isArray(E)?C.push(...E):E&&C.push(E),b=A+O[0].length,P=!0),!g.global)break;O=g.exec(f.value)}return P?(b?\]}]+$/.exec(e);if(!t)return[e,void 0];e=e.slice(0,t.index);let n=t[0],r=n.indexOf(")");const i=D1(e,"(");let a=D1(e,")");for(;r!==-1&&i>a;)e+=n.slice(0,r+1),n=n.slice(r+1),r=n.indexOf(")"),a++;return[e,n]}function KC(e,t){const n=e.input.charCodeAt(e.index-1);return(e.index===0||Oa(n)||zf(n))&&(!t||n!==47)}GC.peek=$$;function _$(){this.buffer()}function I$(e){this.enter({type:"footnoteReference",identifier:"",label:""},e)}function T$(){this.buffer()}function D$(e){this.enter({type:"footnoteDefinition",identifier:"",label:"",children:[]},e)}function M$(e){const t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=hr(this.sliceSerialize(e)).toLowerCase(),n.label=t}function L$(e){this.exit(e)}function R$(e){const t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=hr(this.sliceSerialize(e)).toLowerCase(),n.label=t}function z$(e){this.exit(e)}function $$(){return"["}function GC(e,t,n,r){const i=n.createTracker(r);let a=i.move("[^");const l=n.enter("footnoteReference"),u=n.enter("reference");return a+=i.move(n.safe(n.associationId(e),{after:"]",before:a})),u(),l(),a+=i.move("]"),a}function F$(){return{enter:{gfmFootnoteCallString:_$,gfmFootnoteCall:I$,gfmFootnoteDefinitionLabelString:T$,gfmFootnoteDefinition:D$},exit:{gfmFootnoteCallString:M$,gfmFootnoteCall:L$,gfmFootnoteDefinitionLabelString:R$,gfmFootnoteDefinition:z$}}}function B$(e){let t=!1;return e&&e.firstLineBlank&&(t=!0),{handlers:{footnoteDefinition:n,footnoteReference:GC},unsafe:[{character:"[",inConstruct:["label","phrasing","reference"]}]};function n(r,i,a,l){const u=a.createTracker(l);let c=u.move("[^");const f=a.enter("footnoteDefinition"),d=a.enter("label");return c+=u.move(a.safe(a.associationId(r),{before:c,after:"]"})),d(),c+=u.move("]:"),r.children&&r.children.length>0&&(u.shift(4),c+=u.move((t?` -`:" ")+a.indentLines(a.containerFlow(r,u.current()),t?YC:U$))),f(),c}}function U$(e,t,n){return t===0?e:YC(e,t,n)}function YC(e,t,n){return(n?"":" ")+e}const W$=["autolink","destinationLiteral","destinationRaw","reference","titleQuote","titleApostrophe"];XC.peek=G$;function q$(){return{canContainEols:["delete"],enter:{strikethrough:V$},exit:{strikethrough:K$}}}function H$(){return{unsafe:[{character:"~",inConstruct:"phrasing",notInConstruct:W$}],handlers:{delete:XC}}}function V$(e){this.enter({type:"delete",children:[]},e)}function K$(e){this.exit(e)}function XC(e,t,n,r){const i=n.createTracker(r),a=n.enter("strikethrough");let l=i.move("~~");return l+=n.containerPhrasing(e,{...i.current(),before:l,after:"~"}),l+=i.move("~~"),a(),l}function G$(){return"~"}function Y$(e){return e.length}function X$(e,t){const n=t||{},r=(n.align||[]).concat(),i=n.stringLength||Y$,a=[],l=[],u=[],c=[];let f=0,d=-1;for(;++df&&(f=e[d].length);++Pc[P])&&(c[P]=O)}S.push(C)}l[d]=S,u[d]=w}let p=-1;if(typeof r=="object"&&"length"in r)for(;++pc[p]&&(c[p]=C),y[p]=C),g[p]=O}l.splice(1,0,g),u.splice(1,0,y),d=-1;const b=[];for(;++d "),a.shift(2);const l=n.indentLines(n.containerFlow(e,a.current()),J$);return i(),l}function J$(e,t,n){return">"+(n?"":" ")+e}function eF(e,t){return L1(e,t.inConstruct,!0)&&!L1(e,t.notInConstruct,!1)}function L1(e,t,n){if(typeof t=="string"&&(t=[t]),!t||t.length===0)return n;let r=-1;for(;++rl&&(l=a):a=1,i=r+t.length,r=n.indexOf(t,i);return l}function nF(e,t){return!!(t.options.fences===!1&&e.value&&!e.lang&&/[^ \r\n]/.test(e.value)&&!/^[\t ]*(?:[\r\n]|$)|(?:^|[\r\n])[\t ]*$/.test(e.value))}function rF(e){const t=e.options.fence||"`";if(t!=="`"&&t!=="~")throw new Error("Cannot serialize code with `"+t+"` for `options.fence`, expected `` ` `` or `~`");return t}function iF(e,t,n,r){const i=rF(n),a=e.value||"",l=i==="`"?"GraveAccent":"Tilde";if(nF(e,n)){const p=n.enter("codeIndented"),g=n.indentLines(a,aF);return p(),g}const u=n.createTracker(r),c=i.repeat(Math.max(tF(a,i)+1,3)),f=n.enter("codeFenced");let d=u.move(c);if(e.lang){const p=n.enter(`codeFencedLang${l}`);d+=u.move(n.safe(e.lang,{before:d,after:" ",encode:["`"],...u.current()})),p()}if(e.lang&&e.meta){const p=n.enter(`codeFencedMeta${l}`);d+=u.move(" "),d+=u.move(n.safe(e.meta,{before:d,after:` +`}),n}function O1(e){let t=0,n=e.charCodeAt(t);for(;n===9||n===32;)t++,n=e.charCodeAt(t);return e.slice(t)}function N1(e,t){const n=U4(e,t),r=n.one(e,void 0),i=I4(n),a=Array.isArray(r)?{type:"root",children:r}:r||{type:"root",children:[]};return i&&a.children.push({type:"text",value:` +`},i),a}function K4(e,t){return e&&"run"in e?async function(n,r){const i=N1(n,{file:r,...t});await e.run(i,r)}:function(n,r){return N1(n,{file:r,...e||t})}}function A1(e){if(e)throw e}var Lp,_1;function G4(){if(_1)return Lp;_1=1;var e=Object.prototype.hasOwnProperty,t=Object.prototype.toString,n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=function(f){return typeof Array.isArray=="function"?Array.isArray(f):t.call(f)==="[object Array]"},a=function(f){if(!f||t.call(f)!=="[object Object]")return!1;var d=e.call(f,"constructor"),p=f.constructor&&f.constructor.prototype&&e.call(f.constructor.prototype,"isPrototypeOf");if(f.constructor&&!d&&!p)return!1;var g;for(g in f);return typeof g>"u"||e.call(f,g)},l=function(f,d){n&&d.name==="__proto__"?n(f,d.name,{enumerable:!0,configurable:!0,value:d.newValue,writable:!0}):f[d.name]=d.newValue},u=function(f,d){if(d==="__proto__")if(e.call(f,d)){if(r)return r(f,d).value}else return;return f[d]};return Lp=function c(){var f,d,p,g,y,x,S=arguments[0],w=1,P=arguments.length,C=!1;for(typeof S=="boolean"&&(C=S,S=arguments[1]||{},w=2),(S==null||typeof S!="object"&&typeof S!="function")&&(S={});wl.length;let c;u&&l.push(i);try{c=e.apply(this,l)}catch(f){const d=f;if(u&&n)throw d;return i(d)}u||(c&&c.then&&typeof c.then=="function"?c.then(a,i):c instanceof Error?i(c):a(c))}function i(l,...u){n||(n=!0,t(l,...u))}function a(l){i(null,l)}}const Ar={basename:Z4,dirname:J4,extname:e$,join:t$,sep:"/"};function Z4(e,t){if(t!==void 0&&typeof t!="string")throw new TypeError('"ext" argument must be a string');Ns(e);let n=0,r=-1,i=e.length,a;if(t===void 0||t.length===0||t.length>e.length){for(;i--;)if(e.codePointAt(i)===47){if(a){n=i+1;break}}else r<0&&(a=!0,r=i+1);return r<0?"":e.slice(n,r)}if(t===e)return"";let l=-1,u=t.length-1;for(;i--;)if(e.codePointAt(i)===47){if(a){n=i+1;break}}else l<0&&(a=!0,l=i+1),u>-1&&(e.codePointAt(i)===t.codePointAt(u--)?u<0&&(r=i):(u=-1,r=l));return n===r?r=l:r<0&&(r=e.length),e.slice(n,r)}function J4(e){if(Ns(e),e.length===0)return".";let t=-1,n=e.length,r;for(;--n;)if(e.codePointAt(n)===47){if(r){t=n;break}}else r||(r=!0);return t<0?e.codePointAt(0)===47?"/":".":t===1&&e.codePointAt(0)===47?"//":e.slice(0,t)}function e$(e){Ns(e);let t=e.length,n=-1,r=0,i=-1,a=0,l;for(;t--;){const u=e.codePointAt(t);if(u===47){if(l){r=t+1;break}continue}n<0&&(l=!0,n=t+1),u===46?i<0?i=t:a!==1&&(a=1):i>-1&&(a=-1)}return i<0||n<0||a===0||a===1&&i===n-1&&i===r+1?"":e.slice(i,n)}function t$(...e){let t=-1,n;for(;++t0&&e.codePointAt(e.length-1)===47&&(n+="/"),t?"/"+n:n}function r$(e,t){let n="",r=0,i=-1,a=0,l=-1,u,c;for(;++l<=e.length;){if(l2){if(c=n.lastIndexOf("/"),c!==n.length-1){c<0?(n="",r=0):(n=n.slice(0,c),r=n.length-1-n.lastIndexOf("/")),i=l,a=0;continue}}else if(n.length>0){n="",r=0,i=l,a=0;continue}}t&&(n=n.length>0?n+"/..":"..",r=2)}else n.length>0?n+="/"+e.slice(i+1,l):n=e.slice(i+1,l),r=l-i-1;i=l,a=0}else u===46&&a>-1?a++:a=-1}return n}function Ns(e){if(typeof e!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const i$={cwd:a$};function a$(){return"/"}function Wg(e){return!!(e!==null&&typeof e=="object"&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&e.auth===void 0)}function o$(e){if(typeof e=="string")e=new URL(e);else if(!Wg(e)){const t=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+e+"`");throw t.code="ERR_INVALID_ARG_TYPE",t}if(e.protocol!=="file:"){const t=new TypeError("The URL must be of scheme file");throw t.code="ERR_INVALID_URL_SCHEME",t}return l$(e)}function l$(e){if(e.hostname!==""){const r=new TypeError('File URL host must be "localhost" or empty on darwin');throw r.code="ERR_INVALID_FILE_URL_HOST",r}const t=e.pathname;let n=-1;for(;++n0){let[y,...x]=d;const S=r[g][1];Ug(S)&&Ug(y)&&(y=Rp(!0,S,y)),r[g]=[f,y,...x]}}}}const f$=new cy().freeze();function Bp(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `parser`")}function Up(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `compiler`")}function Wp(e,t){if(t)throw new Error("Cannot call `"+e+"` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.")}function T1(e){if(!Ug(e)||typeof e.type!="string")throw new TypeError("Expected node, got `"+e+"`")}function M1(e,t,n){if(!n)throw new Error("`"+e+"` finished async. Use `"+t+"` instead")}function sc(e){return d$(e)?e:new QC(e)}function d$(e){return!!(e&&typeof e=="object"&&"message"in e&&"messages"in e)}function h$(e){return typeof e=="string"||p$(e)}function p$(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}const m$="https://github.com/remarkjs/react-markdown/blob/main/changelog.md",D1=[],L1={allowDangerousHtml:!0},g$=/^(https?|ircs?|mailto|xmpp)$/i,v$=[{from:"astPlugins",id:"remove-buggy-html-in-markdown-parser"},{from:"allowDangerousHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"allowNode",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowElement"},{from:"allowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowedElements"},{from:"disallowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"disallowedElements"},{from:"escapeHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"includeElementIndex",id:"#remove-includeelementindex"},{from:"includeNodeIndex",id:"change-includenodeindex-to-includeelementindex"},{from:"linkTarget",id:"remove-linktarget"},{from:"plugins",id:"change-plugins-to-remarkplugins",to:"remarkPlugins"},{from:"rawSourcePos",id:"#remove-rawsourcepos"},{from:"renderers",id:"change-renderers-to-components",to:"components"},{from:"source",id:"change-source-to-children",to:"children"},{from:"sourcePos",id:"#remove-sourcepos"},{from:"transformImageUri",id:"#add-urltransform",to:"urlTransform"},{from:"transformLinkUri",id:"#add-urltransform",to:"urlTransform"}];function y$(e){const t=x$(e),n=b$(e);return w$(t.runSync(t.parse(n),n),e)}function x$(e){const t=e.rehypePlugins||D1,n=e.remarkPlugins||D1,r=e.remarkRehypeOptions?{...e.remarkRehypeOptions,...L1}:L1;return f$().use(J3).use(n).use(K4,r).use(t)}function b$(e){const t=e.children||"",n=new QC;return typeof t=="string"&&(n.value=t),n}function w$(e,t){const n=t.allowedElements,r=t.allowElement,i=t.components,a=t.disallowedElements,l=t.skipHtml,u=t.unwrapDisallowed,c=t.urlTransform||k$;for(const d of v$)Object.hasOwn(t,d.from)&&(""+d.from+(d.to?"use `"+d.to+"` instead":"remove it")+m$+d.id,void 0);return t.className&&(e={type:"element",tagName:"div",properties:{className:t.className},children:e.type==="root"?e.children:[e]}),uy(e,f),LR(e,{Fragment:m.Fragment,components:i,ignoreInvalidStyle:!0,jsx:m.jsx,jsxs:m.jsxs,passKeys:!0,passNode:!0});function f(d,p,g){if(d.type==="raw"&&g&&typeof p=="number")return l?g.children.splice(p,1):g.children[p]={type:"text",value:d.value},p;if(d.type==="element"){let y;for(y in Tp)if(Object.hasOwn(Tp,y)&&Object.hasOwn(d.properties,y)){const x=d.properties[y],S=Tp[y];(S===null||S.includes(d.tagName))&&(d.properties[y]=c(String(x||""),y,d))}}if(d.type==="element"){let y=n?!n.includes(d.tagName):a?a.includes(d.tagName):!1;if(!y&&r&&typeof p=="number"&&(y=!r(d,p,g)),y&&g&&typeof p=="number")return u&&d.children?g.children.splice(p,1,...d.children):g.children.splice(p,1),p}}}function k$(e){const t=e.indexOf(":"),n=e.indexOf("?"),r=e.indexOf("#"),i=e.indexOf("/");return t===-1||i!==-1&&t>i||n!==-1&&t>n||r!==-1&&t>r||g$.test(e.slice(0,t))?e:""}function R1(e,t){const n=String(e);if(typeof t!="string")throw new TypeError("Expected character");let r=0,i=n.indexOf(t);for(;i!==-1;)r++,i=n.indexOf(t,i+t.length);return r}function S$(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}function j$(e,t,n){const i=Uf((n||{}).ignore||[]),a=P$(t);let l=-1;for(;++l0?{type:"text",value:E}:void 0),E===!1?g.lastIndex=A+1:(x!==A&&C.push({type:"text",value:f.value.slice(x,A)}),Array.isArray(E)?C.push(...E):E&&C.push(E),x=A+O[0].length,P=!0),!g.global)break;O=g.exec(f.value)}return P?(x?\]}]+$/.exec(e);if(!t)return[e,void 0];e=e.slice(0,t.index);let n=t[0],r=n.indexOf(")");const i=R1(e,"(");let a=R1(e,")");for(;r!==-1&&i>a;)e+=n.slice(0,r+1),n=n.slice(r+1),r=n.indexOf(")"),a++;return[e,n]}function ZC(e,t){const n=e.input.charCodeAt(e.index-1);return(e.index===0||Na(n)||$f(n))&&(!t||n!==47)}JC.peek=G$;function F$(){this.buffer()}function B$(e){this.enter({type:"footnoteReference",identifier:"",label:""},e)}function U$(){this.buffer()}function W$(e){this.enter({type:"footnoteDefinition",identifier:"",label:"",children:[]},e)}function q$(e){const t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=pr(this.sliceSerialize(e)).toLowerCase(),n.label=t}function H$(e){this.exit(e)}function V$(e){const t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=pr(this.sliceSerialize(e)).toLowerCase(),n.label=t}function K$(e){this.exit(e)}function G$(){return"["}function JC(e,t,n,r){const i=n.createTracker(r);let a=i.move("[^");const l=n.enter("footnoteReference"),u=n.enter("reference");return a+=i.move(n.safe(n.associationId(e),{after:"]",before:a})),u(),l(),a+=i.move("]"),a}function Y$(){return{enter:{gfmFootnoteCallString:F$,gfmFootnoteCall:B$,gfmFootnoteDefinitionLabelString:U$,gfmFootnoteDefinition:W$},exit:{gfmFootnoteCallString:q$,gfmFootnoteCall:H$,gfmFootnoteDefinitionLabelString:V$,gfmFootnoteDefinition:K$}}}function X$(e){let t=!1;return e&&e.firstLineBlank&&(t=!0),{handlers:{footnoteDefinition:n,footnoteReference:JC},unsafe:[{character:"[",inConstruct:["label","phrasing","reference"]}]};function n(r,i,a,l){const u=a.createTracker(l);let c=u.move("[^");const f=a.enter("footnoteDefinition"),d=a.enter("label");return c+=u.move(a.safe(a.associationId(r),{before:c,after:"]"})),d(),c+=u.move("]:"),r.children&&r.children.length>0&&(u.shift(4),c+=u.move((t?` +`:" ")+a.indentLines(a.containerFlow(r,u.current()),t?eO:Q$))),f(),c}}function Q$(e,t,n){return t===0?e:eO(e,t,n)}function eO(e,t,n){return(n?"":" ")+e}const Z$=["autolink","destinationLiteral","destinationRaw","reference","titleQuote","titleApostrophe"];tO.peek=rF;function J$(){return{canContainEols:["delete"],enter:{strikethrough:tF},exit:{strikethrough:nF}}}function eF(){return{unsafe:[{character:"~",inConstruct:"phrasing",notInConstruct:Z$}],handlers:{delete:tO}}}function tF(e){this.enter({type:"delete",children:[]},e)}function nF(e){this.exit(e)}function tO(e,t,n,r){const i=n.createTracker(r),a=n.enter("strikethrough");let l=i.move("~~");return l+=n.containerPhrasing(e,{...i.current(),before:l,after:"~"}),l+=i.move("~~"),a(),l}function rF(){return"~"}function iF(e){return e.length}function aF(e,t){const n=t||{},r=(n.align||[]).concat(),i=n.stringLength||iF,a=[],l=[],u=[],c=[];let f=0,d=-1;for(;++df&&(f=e[d].length);++Pc[P])&&(c[P]=O)}S.push(C)}l[d]=S,u[d]=w}let p=-1;if(typeof r=="object"&&"length"in r)for(;++pc[p]&&(c[p]=C),y[p]=C),g[p]=O}l.splice(1,0,g),u.splice(1,0,y),d=-1;const x=[];for(;++d "),a.shift(2);const l=n.indentLines(n.containerFlow(e,a.current()),sF);return i(),l}function sF(e,t,n){return">"+(n?"":" ")+e}function uF(e,t){return $1(e,t.inConstruct,!0)&&!$1(e,t.notInConstruct,!1)}function $1(e,t,n){if(typeof t=="string"&&(t=[t]),!t||t.length===0)return n;let r=-1;for(;++rl&&(l=a):a=1,i=r+t.length,r=n.indexOf(t,i);return l}function fF(e,t){return!!(t.options.fences===!1&&e.value&&!e.lang&&/[^ \r\n]/.test(e.value)&&!/^[\t ]*(?:[\r\n]|$)|(?:^|[\r\n])[\t ]*$/.test(e.value))}function dF(e){const t=e.options.fence||"`";if(t!=="`"&&t!=="~")throw new Error("Cannot serialize code with `"+t+"` for `options.fence`, expected `` ` `` or `~`");return t}function hF(e,t,n,r){const i=dF(n),a=e.value||"",l=i==="`"?"GraveAccent":"Tilde";if(fF(e,n)){const p=n.enter("codeIndented"),g=n.indentLines(a,pF);return p(),g}const u=n.createTracker(r),c=i.repeat(Math.max(cF(a,i)+1,3)),f=n.enter("codeFenced");let d=u.move(c);if(e.lang){const p=n.enter(`codeFencedLang${l}`);d+=u.move(n.safe(e.lang,{before:d,after:" ",encode:["`"],...u.current()})),p()}if(e.lang&&e.meta){const p=n.enter(`codeFencedMeta${l}`);d+=u.move(" "),d+=u.move(n.safe(e.meta,{before:d,after:` `,encode:["`"],...u.current()})),p()}return d+=u.move(` `),a&&(d+=u.move(a+` -`)),d+=u.move(c),f(),d}function aF(e,t,n){return(n?"":" ")+e}function uy(e){const t=e.options.quote||'"';if(t!=='"'&&t!=="'")throw new Error("Cannot serialize title with `"+t+"` for `options.quote`, expected `\"`, or `'`");return t}function oF(e,t,n,r){const i=uy(n),a=i==='"'?"Quote":"Apostrophe",l=n.enter("definition");let u=n.enter("label");const c=n.createTracker(r);let f=c.move("[");return f+=c.move(n.safe(n.associationId(e),{before:f,after:"]",...c.current()})),f+=c.move("]: "),u(),!e.url||/[\0- \u007F]/.test(e.url)?(u=n.enter("destinationLiteral"),f+=c.move("<"),f+=c.move(n.safe(e.url,{before:f,after:">",...c.current()})),f+=c.move(">")):(u=n.enter("destinationRaw"),f+=c.move(n.safe(e.url,{before:f,after:e.title?" ":` -`,...c.current()}))),u(),e.title&&(u=n.enter(`title${a}`),f+=c.move(" "+i),f+=c.move(n.safe(e.title,{before:f,after:i,...c.current()})),f+=c.move(i),u()),l(),f}function lF(e){const t=e.options.emphasis||"*";if(t!=="*"&&t!=="_")throw new Error("Cannot serialize emphasis with `"+t+"` for `options.emphasis`, expected `*`, or `_`");return t}function us(e){return"&#x"+e.toString(16).toUpperCase()+";"}function $c(e,t,n){const r=Ao(e),i=Ao(t);return r===void 0?i===void 0?n==="_"?{inside:!0,outside:!0}:{inside:!1,outside:!1}:i===1?{inside:!0,outside:!0}:{inside:!1,outside:!0}:r===1?i===void 0?{inside:!1,outside:!1}:i===1?{inside:!0,outside:!0}:{inside:!1,outside:!1}:i===void 0?{inside:!1,outside:!1}:i===1?{inside:!0,outside:!1}:{inside:!1,outside:!1}}QC.peek=sF;function QC(e,t,n,r){const i=lF(n),a=n.enter("emphasis"),l=n.createTracker(r),u=l.move(i);let c=l.move(n.containerPhrasing(e,{after:i,before:u,...l.current()}));const f=c.charCodeAt(0),d=$c(r.before.charCodeAt(r.before.length-1),f,i);d.inside&&(c=us(f)+c.slice(1));const p=c.charCodeAt(c.length-1),g=$c(r.after.charCodeAt(0),p,i);g.inside&&(c=c.slice(0,-1)+us(p));const y=l.move(i);return a(),n.attentionEncodeSurroundingInfo={after:g.outside,before:d.outside},u+c+y}function sF(e,t,n){return n.options.emphasis||"*"}function uF(e,t){let n=!1;return ly(e,function(r){if("value"in r&&/\r?\n|\r/.test(r.value)||r.type==="break")return n=!0,zg}),!!((!e.depth||e.depth<3)&&ey(e)&&(t.options.setext||n))}function cF(e,t,n,r){const i=Math.max(Math.min(6,e.depth||1),1),a=n.createTracker(r);if(uF(e,n)){const d=n.enter("headingSetext"),p=n.enter("phrasing"),g=n.containerPhrasing(e,{...a.current(),before:` +`)),d+=u.move(c),f(),d}function pF(e,t,n){return(n?"":" ")+e}function fy(e){const t=e.options.quote||'"';if(t!=='"'&&t!=="'")throw new Error("Cannot serialize title with `"+t+"` for `options.quote`, expected `\"`, or `'`");return t}function mF(e,t,n,r){const i=fy(n),a=i==='"'?"Quote":"Apostrophe",l=n.enter("definition");let u=n.enter("label");const c=n.createTracker(r);let f=c.move("[");return f+=c.move(n.safe(n.associationId(e),{before:f,after:"]",...c.current()})),f+=c.move("]: "),u(),!e.url||/[\0- \u007F]/.test(e.url)?(u=n.enter("destinationLiteral"),f+=c.move("<"),f+=c.move(n.safe(e.url,{before:f,after:">",...c.current()})),f+=c.move(">")):(u=n.enter("destinationRaw"),f+=c.move(n.safe(e.url,{before:f,after:e.title?" ":` +`,...c.current()}))),u(),e.title&&(u=n.enter(`title${a}`),f+=c.move(" "+i),f+=c.move(n.safe(e.title,{before:f,after:i,...c.current()})),f+=c.move(i),u()),l(),f}function gF(e){const t=e.options.emphasis||"*";if(t!=="*"&&t!=="_")throw new Error("Cannot serialize emphasis with `"+t+"` for `options.emphasis`, expected `*`, or `_`");return t}function cs(e){return"&#x"+e.toString(16).toUpperCase()+";"}function Fc(e,t,n){const r=_o(e),i=_o(t);return r===void 0?i===void 0?n==="_"?{inside:!0,outside:!0}:{inside:!1,outside:!1}:i===1?{inside:!0,outside:!0}:{inside:!1,outside:!0}:r===1?i===void 0?{inside:!1,outside:!1}:i===1?{inside:!0,outside:!0}:{inside:!1,outside:!1}:i===void 0?{inside:!1,outside:!1}:i===1?{inside:!0,outside:!1}:{inside:!1,outside:!1}}nO.peek=vF;function nO(e,t,n,r){const i=gF(n),a=n.enter("emphasis"),l=n.createTracker(r),u=l.move(i);let c=l.move(n.containerPhrasing(e,{after:i,before:u,...l.current()}));const f=c.charCodeAt(0),d=Fc(r.before.charCodeAt(r.before.length-1),f,i);d.inside&&(c=cs(f)+c.slice(1));const p=c.charCodeAt(c.length-1),g=Fc(r.after.charCodeAt(0),p,i);g.inside&&(c=c.slice(0,-1)+cs(p));const y=l.move(i);return a(),n.attentionEncodeSurroundingInfo={after:g.outside,before:d.outside},u+c+y}function vF(e,t,n){return n.options.emphasis||"*"}function yF(e,t){let n=!1;return uy(e,function(r){if("value"in r&&/\r?\n|\r/.test(r.value)||r.type==="break")return n=!0,Fg}),!!((!e.depth||e.depth<3)&&ny(e)&&(t.options.setext||n))}function xF(e,t,n,r){const i=Math.max(Math.min(6,e.depth||1),1),a=n.createTracker(r);if(yF(e,n)){const d=n.enter("headingSetext"),p=n.enter("phrasing"),g=n.containerPhrasing(e,{...a.current(),before:` `,after:` `});return p(),d(),g+` `+(i===1?"=":"-").repeat(g.length-(Math.max(g.lastIndexOf("\r"),g.lastIndexOf(` `))+1))}const l="#".repeat(i),u=n.enter("headingAtx"),c=n.enter("phrasing");a.move(l+" ");let f=n.containerPhrasing(e,{before:"# ",after:` -`,...a.current()});return/^[\t ]/.test(f)&&(f=us(f.charCodeAt(0))+f.slice(1)),f=f?l+" "+f:l,n.options.closeAtx&&(f+=" "+l),c(),u(),f}ZC.peek=fF;function ZC(e){return e.value||""}function fF(){return"<"}JC.peek=dF;function JC(e,t,n,r){const i=uy(n),a=i==='"'?"Quote":"Apostrophe",l=n.enter("image");let u=n.enter("label");const c=n.createTracker(r);let f=c.move("![");return f+=c.move(n.safe(e.alt,{before:f,after:"]",...c.current()})),f+=c.move("]("),u(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(u=n.enter("destinationLiteral"),f+=c.move("<"),f+=c.move(n.safe(e.url,{before:f,after:">",...c.current()})),f+=c.move(">")):(u=n.enter("destinationRaw"),f+=c.move(n.safe(e.url,{before:f,after:e.title?" ":")",...c.current()}))),u(),e.title&&(u=n.enter(`title${a}`),f+=c.move(" "+i),f+=c.move(n.safe(e.title,{before:f,after:i,...c.current()})),f+=c.move(i),u()),f+=c.move(")"),l(),f}function dF(){return"!"}eO.peek=hF;function eO(e,t,n,r){const i=e.referenceType,a=n.enter("imageReference");let l=n.enter("label");const u=n.createTracker(r);let c=u.move("![");const f=n.safe(e.alt,{before:c,after:"]",...u.current()});c+=u.move(f+"]["),l();const d=n.stack;n.stack=[],l=n.enter("reference");const p=n.safe(n.associationId(e),{before:c,after:"]",...u.current()});return l(),n.stack=d,a(),i==="full"||!f||f!==p?c+=u.move(p+"]"):i==="shortcut"?c=c.slice(0,-1):c+=u.move("]"),c}function hF(){return"!"}tO.peek=pF;function tO(e,t,n){let r=e.value||"",i="`",a=-1;for(;new RegExp("(^|[^`])"+i+"([^`]|$)").test(r);)i+="`";for(/[^ \r\n]/.test(r)&&(/^[ \r\n]/.test(r)&&/[ \r\n]$/.test(r)||/^`|`$/.test(r))&&(r=" "+r+" ");++a\u007F]/.test(e.url))}rO.peek=mF;function rO(e,t,n,r){const i=uy(n),a=i==='"'?"Quote":"Apostrophe",l=n.createTracker(r);let u,c;if(nO(e,n)){const d=n.stack;n.stack=[],u=n.enter("autolink");let p=l.move("<");return p+=l.move(n.containerPhrasing(e,{before:p,after:">",...l.current()})),p+=l.move(">"),u(),n.stack=d,p}u=n.enter("link"),c=n.enter("label");let f=l.move("[");return f+=l.move(n.containerPhrasing(e,{before:f,after:"](",...l.current()})),f+=l.move("]("),c(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(c=n.enter("destinationLiteral"),f+=l.move("<"),f+=l.move(n.safe(e.url,{before:f,after:">",...l.current()})),f+=l.move(">")):(c=n.enter("destinationRaw"),f+=l.move(n.safe(e.url,{before:f,after:e.title?" ":")",...l.current()}))),c(),e.title&&(c=n.enter(`title${a}`),f+=l.move(" "+i),f+=l.move(n.safe(e.title,{before:f,after:i,...l.current()})),f+=l.move(i),c()),f+=l.move(")"),u(),f}function mF(e,t,n){return nO(e,n)?"<":"["}iO.peek=gF;function iO(e,t,n,r){const i=e.referenceType,a=n.enter("linkReference");let l=n.enter("label");const u=n.createTracker(r);let c=u.move("[");const f=n.containerPhrasing(e,{before:c,after:"]",...u.current()});c+=u.move(f+"]["),l();const d=n.stack;n.stack=[],l=n.enter("reference");const p=n.safe(n.associationId(e),{before:c,after:"]",...u.current()});return l(),n.stack=d,a(),i==="full"||!f||f!==p?c+=u.move(p+"]"):i==="shortcut"?c=c.slice(0,-1):c+=u.move("]"),c}function gF(){return"["}function cy(e){const t=e.options.bullet||"*";if(t!=="*"&&t!=="+"&&t!=="-")throw new Error("Cannot serialize items with `"+t+"` for `options.bullet`, expected `*`, `+`, or `-`");return t}function vF(e){const t=cy(e),n=e.options.bulletOther;if(!n)return t==="*"?"-":"*";if(n!=="*"&&n!=="+"&&n!=="-")throw new Error("Cannot serialize items with `"+n+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(n===t)throw new Error("Expected `bullet` (`"+t+"`) and `bulletOther` (`"+n+"`) to be different");return n}function yF(e){const t=e.options.bulletOrdered||".";if(t!=="."&&t!==")")throw new Error("Cannot serialize items with `"+t+"` for `options.bulletOrdered`, expected `.` or `)`");return t}function aO(e){const t=e.options.rule||"*";if(t!=="*"&&t!=="-"&&t!=="_")throw new Error("Cannot serialize rules with `"+t+"` for `options.rule`, expected `*`, `-`, or `_`");return t}function xF(e,t,n,r){const i=n.enter("list"),a=n.bulletCurrent;let l=e.ordered?yF(n):cy(n);const u=e.ordered?l==="."?")":".":vF(n);let c=t&&n.bulletLastUsed?l===n.bulletLastUsed:!1;if(!e.ordered){const d=e.children?e.children[0]:void 0;if((l==="*"||l==="-")&&d&&(!d.children||!d.children[0])&&n.stack[n.stack.length-1]==="list"&&n.stack[n.stack.length-2]==="listItem"&&n.stack[n.stack.length-3]==="list"&&n.stack[n.stack.length-4]==="listItem"&&n.indexStack[n.indexStack.length-1]===0&&n.indexStack[n.indexStack.length-2]===0&&n.indexStack[n.indexStack.length-3]===0&&(c=!0),aO(n)===l&&d){let p=-1;for(;++p-1?t.start:1)+(n.options.incrementListMarker===!1?0:t.children.indexOf(e))+a);let l=a.length+1;(i==="tab"||i==="mixed"&&(t&&t.type==="list"&&t.spread||e.spread))&&(l=Math.ceil(l/4)*4);const u=n.createTracker(r);u.move(a+" ".repeat(l-a.length)),u.shift(l);const c=n.enter("listItem"),f=n.indentLines(n.containerFlow(e,u.current()),d);return c(),f;function d(p,g,y){return g?(y?"":" ".repeat(l))+p:(y?a:a+" ".repeat(l-a.length))+p}}function kF(e,t,n,r){const i=n.enter("paragraph"),a=n.enter("phrasing"),l=n.containerPhrasing(e,r);return a(),i(),l}const SF=Bf(["break","delete","emphasis","footnote","footnoteReference","image","imageReference","inlineCode","inlineMath","link","linkReference","mdxJsxTextElement","mdxTextExpression","strong","text","textDirective"]);function jF(e,t,n,r){return(e.children.some(function(l){return SF(l)})?n.containerPhrasing:n.containerFlow).call(n,e,r)}function PF(e){const t=e.options.strong||"*";if(t!=="*"&&t!=="_")throw new Error("Cannot serialize strong with `"+t+"` for `options.strong`, expected `*`, or `_`");return t}oO.peek=EF;function oO(e,t,n,r){const i=PF(n),a=n.enter("strong"),l=n.createTracker(r),u=l.move(i+i);let c=l.move(n.containerPhrasing(e,{after:i,before:u,...l.current()}));const f=c.charCodeAt(0),d=$c(r.before.charCodeAt(r.before.length-1),f,i);d.inside&&(c=us(f)+c.slice(1));const p=c.charCodeAt(c.length-1),g=$c(r.after.charCodeAt(0),p,i);g.inside&&(c=c.slice(0,-1)+us(p));const y=l.move(i+i);return a(),n.attentionEncodeSurroundingInfo={after:g.outside,before:d.outside},u+c+y}function EF(e,t,n){return n.options.strong||"*"}function CF(e,t,n,r){return n.safe(e.value,r)}function OF(e){const t=e.options.ruleRepetition||3;if(t<3)throw new Error("Cannot serialize rules with repetition `"+t+"` for `options.ruleRepetition`, expected `3` or more");return t}function NF(e,t,n){const r=(aO(n)+(n.options.ruleSpaces?" ":"")).repeat(OF(n));return n.options.ruleSpaces?r.slice(0,-1):r}const lO={blockquote:Z$,break:R1,code:iF,definition:oF,emphasis:QC,hardBreak:R1,heading:cF,html:ZC,image:JC,imageReference:eO,inlineCode:tO,link:rO,linkReference:iO,list:xF,listItem:wF,paragraph:kF,root:jF,strong:oO,text:CF,thematicBreak:NF};function AF(){return{enter:{table:_F,tableData:z1,tableHeader:z1,tableRow:TF},exit:{codeText:DF,table:IF,tableData:Hp,tableHeader:Hp,tableRow:Hp}}}function _F(e){const t=e._align;this.enter({type:"table",align:t.map(function(n){return n==="none"?null:n}),children:[]},e),this.data.inTable=!0}function IF(e){this.exit(e),this.data.inTable=void 0}function TF(e){this.enter({type:"tableRow",children:[]},e)}function Hp(e){this.exit(e)}function z1(e){this.enter({type:"tableCell",children:[]},e)}function DF(e){let t=this.resume();this.data.inTable&&(t=t.replace(/\\([\\|])/g,MF));const n=this.stack[this.stack.length-1];n.type,n.value=t,this.exit(e)}function MF(e,t){return t==="|"?t:e}function LF(e){const t=e||{},n=t.tableCellPadding,r=t.tablePipeAlign,i=t.stringLength,a=n?" ":"|";return{unsafe:[{character:"\r",inConstruct:"tableCell"},{character:` -`,inConstruct:"tableCell"},{atBreak:!0,character:"|",after:"[ :-]"},{character:"|",inConstruct:"tableCell"},{atBreak:!0,character:":",after:"-"},{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{inlineCode:g,table:l,tableCell:c,tableRow:u}};function l(y,b,S,w){return f(d(y,S,w),y.align)}function u(y,b,S,w){const P=p(y,S,w),C=f([P]);return C.slice(0,C.indexOf(` -`))}function c(y,b,S,w){const P=S.enter("tableCell"),C=S.enter("phrasing"),O=S.containerPhrasing(y,{...w,before:a,after:a});return C(),P(),O}function f(y,b){return X$(y,{align:b,alignDelimiters:r,padding:n,stringLength:i})}function d(y,b,S){const w=y.children;let P=-1;const C=[],O=b.enter("table");for(;++P0&&!n&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),n}const eB={tokenize:sB,partial:!0};function tB(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:aB,continuation:{tokenize:oB},exit:lB}},text:{91:{name:"gfmFootnoteCall",tokenize:iB},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:nB,resolveTo:rB}}}}function nB(e,t,n){const r=this;let i=r.events.length;const a=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let l;for(;i--;){const c=r.events[i][1];if(c.type==="labelImage"){l=c;break}if(c.type==="gfmFootnoteCall"||c.type==="labelLink"||c.type==="label"||c.type==="image"||c.type==="link")break}return u;function u(c){if(!l||!l._balanced)return n(c);const f=hr(r.sliceSerialize({start:l.end,end:r.now()}));return f.codePointAt(0)!==94||!a.includes(f.slice(1))?n(c):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(c),e.exit("gfmFootnoteCallLabelMarker"),t(c))}}function rB(e,t){let n=e.length;for(;n--;)if(e[n][1].type==="labelImage"&&e[n][0]==="enter"){e[n][1];break}e[n+1][1].type="data",e[n+3][1].type="gfmFootnoteCallLabelMarker";const r={type:"gfmFootnoteCall",start:Object.assign({},e[n+3][1].start),end:Object.assign({},e[e.length-1][1].end)},i={type:"gfmFootnoteCallMarker",start:Object.assign({},e[n+3][1].end),end:Object.assign({},e[n+3][1].end)};i.end.column++,i.end.offset++,i.end._bufferIndex++;const a={type:"gfmFootnoteCallString",start:Object.assign({},i.end),end:Object.assign({},e[e.length-1][1].start)},l={type:"chunkString",contentType:"string",start:Object.assign({},a.start),end:Object.assign({},a.end)},u=[e[n+1],e[n+2],["enter",r,t],e[n+3],e[n+4],["enter",i,t],["exit",i,t],["enter",a,t],["enter",l,t],["exit",l,t],["exit",a,t],e[e.length-2],e[e.length-1],["exit",r,t]];return e.splice(n,e.length-n+1,...u),e}function iB(e,t,n){const r=this,i=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let a=0,l;return u;function u(p){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(p),e.exit("gfmFootnoteCallLabelMarker"),c}function c(p){return p!==94?n(p):(e.enter("gfmFootnoteCallMarker"),e.consume(p),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",f)}function f(p){if(a>999||p===93&&!l||p===null||p===91||Xe(p))return n(p);if(p===93){e.exit("chunkString");const g=e.exit("gfmFootnoteCallString");return i.includes(hr(r.sliceSerialize(g)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(p),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),t):n(p)}return Xe(p)||(l=!0),a++,e.consume(p),p===92?d:f}function d(p){return p===91||p===92||p===93?(e.consume(p),a++,f):f(p)}}function aB(e,t,n){const r=this,i=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let a,l=0,u;return c;function c(b){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(b),e.exit("gfmFootnoteDefinitionLabelMarker"),f}function f(b){return b===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(b),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",d):n(b)}function d(b){if(l>999||b===93&&!u||b===null||b===91||Xe(b))return n(b);if(b===93){e.exit("chunkString");const S=e.exit("gfmFootnoteDefinitionLabelString");return a=hr(r.sliceSerialize(S)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(b),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),g}return Xe(b)||(u=!0),l++,e.consume(b),b===92?p:d}function p(b){return b===91||b===92||b===93?(e.consume(b),l++,d):d(b)}function g(b){return b===58?(e.enter("definitionMarker"),e.consume(b),e.exit("definitionMarker"),i.includes(a)||i.push(a),$e(e,y,"gfmFootnoteDefinitionWhitespace")):n(b)}function y(b){return t(b)}}function oB(e,t,n){return e.check(Cs,t,e.attempt(eB,t,n))}function lB(e){e.exit("gfmFootnoteDefinition")}function sB(e,t,n){const r=this;return $e(e,i,"gfmFootnoteDefinitionIndent",5);function i(a){const l=r.events[r.events.length-1];return l&&l[1].type==="gfmFootnoteDefinitionIndent"&&l[2].sliceSerialize(l[1],!0).length===4?t(a):n(a)}}function uB(e){let n=(e||{}).singleTilde;const r={name:"strikethrough",tokenize:a,resolveAll:i};return n==null&&(n=!0),{text:{126:r},insideSpan:{null:[r]},attentionMarkers:{null:[126]}};function i(l,u){let c=-1;for(;++c1?c(b):(l.consume(b),p++,y);if(p<2&&!n)return c(b);const w=l.exit("strikethroughSequenceTemporary"),P=Ao(b);return w._open=!P||P===2&&!!S,w._close=!S||S===2&&!!P,u(b)}}}class cB{constructor(){this.map=[]}add(t,n,r){fB(this,t,n,r)}consume(t){if(this.map.sort(function(a,l){return a[0]-l[0]}),this.map.length===0)return;let n=this.map.length;const r=[];for(;n>0;)n-=1,r.push(t.slice(this.map[n][0]+this.map[n][1]),this.map[n][2]),t.length=this.map[n][0];r.push(t.slice()),t.length=0;let i=r.pop();for(;i;){for(const a of i)t.push(a);i=r.pop()}this.map.length=0}}function fB(e,t,n,r){let i=0;if(!(n===0&&r.length===0)){for(;i-1;){const Y=r.events[W][1].type;if(Y==="lineEnding"||Y==="linePrefix")W--;else break}const D=W>-1?r.events[W][1].type:null,Z=D==="tableHead"||D==="tableRow"?E:c;return Z===E&&r.parser.lazy[r.now().line]?n(R):Z(R)}function c(R){return e.enter("tableHead"),e.enter("tableRow"),f(R)}function f(R){return R===124||(l=!0,a+=1),d(R)}function d(R){return R===null?n(R):Oe(R)?a>1?(a=0,r.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(R),e.exit("lineEnding"),y):n(R):Re(R)?$e(e,d,"whitespace")(R):(a+=1,l&&(l=!1,i+=1),R===124?(e.enter("tableCellDivider"),e.consume(R),e.exit("tableCellDivider"),l=!0,d):(e.enter("data"),p(R)))}function p(R){return R===null||R===124||Xe(R)?(e.exit("data"),d(R)):(e.consume(R),R===92?g:p)}function g(R){return R===92||R===124?(e.consume(R),p):p(R)}function y(R){return r.interrupt=!1,r.parser.lazy[r.now().line]?n(R):(e.enter("tableDelimiterRow"),l=!1,Re(R)?$e(e,b,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(R):b(R))}function b(R){return R===45||R===58?w(R):R===124?(l=!0,e.enter("tableCellDivider"),e.consume(R),e.exit("tableCellDivider"),S):I(R)}function S(R){return Re(R)?$e(e,w,"whitespace")(R):w(R)}function w(R){return R===58?(a+=1,l=!0,e.enter("tableDelimiterMarker"),e.consume(R),e.exit("tableDelimiterMarker"),P):R===45?(a+=1,P(R)):R===null||Oe(R)?A(R):I(R)}function P(R){return R===45?(e.enter("tableDelimiterFiller"),C(R)):I(R)}function C(R){return R===45?(e.consume(R),C):R===58?(l=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(R),e.exit("tableDelimiterMarker"),O):(e.exit("tableDelimiterFiller"),O(R))}function O(R){return Re(R)?$e(e,A,"whitespace")(R):A(R)}function A(R){return R===124?b(R):R===null||Oe(R)?!l||i!==a?I(R):(e.exit("tableDelimiterRow"),e.exit("tableHead"),t(R)):I(R)}function I(R){return n(R)}function E(R){return e.enter("tableRow"),L(R)}function L(R){return R===124?(e.enter("tableCellDivider"),e.consume(R),e.exit("tableCellDivider"),L):R===null||Oe(R)?(e.exit("tableRow"),t(R)):Re(R)?$e(e,L,"whitespace")(R):(e.enter("data"),F(R))}function F(R){return R===null||R===124||Xe(R)?(e.exit("data"),L(R)):(e.consume(R),R===92?H:F)}function H(R){return R===92||R===124?(e.consume(R),F):F(R)}}function mB(e,t){let n=-1,r=!0,i=0,a=[0,0,0,0],l=[0,0,0,0],u=!1,c=0,f,d,p;const g=new cB;for(;++nn[2]+1){const b=n[2]+1,S=n[3]-n[2]-1;e.add(b,S,[])}}e.add(n[3]+1,0,[["exit",p,t]])}return i!==void 0&&(a.end=Object.assign({},bo(t.events,i)),e.add(i,0,[["exit",a,t]]),a=void 0),a}function F1(e,t,n,r,i){const a=[],l=bo(t.events,n);i&&(i.end=Object.assign({},l),a.push(["exit",i,t])),r.end=Object.assign({},l),a.push(["exit",r,t]),e.add(n+1,0,a)}function bo(e,t){const n=e[t],r=n[0]==="enter"?"start":"end";return n[1][r]}const gB={name:"tasklistCheck",tokenize:yB};function vB(){return{text:{91:gB}}}function yB(e,t,n){const r=this;return i;function i(c){return r.previous!==null||!r._gfmTasklistFirstContentOfListItem?n(c):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(c),e.exit("taskListCheckMarker"),a)}function a(c){return Xe(c)?(e.enter("taskListCheckValueUnchecked"),e.consume(c),e.exit("taskListCheckValueUnchecked"),l):c===88||c===120?(e.enter("taskListCheckValueChecked"),e.consume(c),e.exit("taskListCheckValueChecked"),l):n(c)}function l(c){return c===93?(e.enter("taskListCheckMarker"),e.consume(c),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),u):n(c)}function u(c){return Oe(c)?t(c):Re(c)?e.check({tokenize:xB},t,n)(c):n(c)}}function xB(e,t,n){return $e(e,r,"whitespace");function r(i){return i===null?n(i):t(i)}}function bB(e){return EC([HF(),tB(),uB(e),hB(),vB()])}const wB={};function kB(e){const t=this,n=e||wB,r=t.data(),i=r.micromarkExtensions||(r.micromarkExtensions=[]),a=r.fromMarkdownExtensions||(r.fromMarkdownExtensions=[]),l=r.toMarkdownExtensions||(r.toMarkdownExtensions=[]);i.push(bB(n)),a.push(BF()),l.push(UF(n))}function SB({content:e}){return m.jsx("div",{className:"spec-markdown",children:m.jsx(u$,{remarkPlugins:[kB],components:{h3:({children:t})=>m.jsx("h3",{className:"text-lg font-semibold mt-6 mb-3 pb-2 border-b border-base-300/50 first:mt-0",children:t}),h4:({children:t})=>m.jsx("h4",{className:"text-base font-medium mt-4 mb-2 text-base-content/90",children:t}),p:({children:t})=>m.jsx("p",{className:"text-sm text-base-content/80 mb-3 leading-relaxed",children:t}),ul:({children:t})=>m.jsx("ul",{className:"text-sm space-y-1.5 mb-4 ml-1",children:t}),ol:({children:t})=>m.jsx("ol",{className:"text-sm space-y-1.5 mb-4 ml-1 list-decimal list-inside",children:t}),li:({children:t})=>m.jsxs("li",{className:"text-base-content/80 flex items-start gap-2",children:[m.jsx("span",{className:"text-primary mt-0.5 text-xs select-none",children:"▸"}),m.jsx("span",{className:"flex-1",children:t})]}),code:({className:t,children:n})=>t?m.jsx("code",{className:"block bg-base-300 p-3 rounded-lg text-xs font-mono overflow-x-auto mb-4 border border-base-content/10",children:n}):m.jsx("code",{className:"bg-base-300 text-primary px-1.5 py-0.5 rounded text-xs font-mono",children:n}),pre:({children:t})=>m.jsx("pre",{className:"bg-base-300 p-3 rounded-lg text-xs font-mono overflow-x-auto mb-4 border border-base-content/10",children:t}),strong:({children:t})=>m.jsx("strong",{className:"font-semibold text-base-content",children:t}),table:({children:t})=>m.jsx("div",{className:"overflow-x-auto mb-4",children:m.jsx("table",{className:"table table-sm w-full",children:t})}),thead:({children:t})=>m.jsx("thead",{className:"bg-base-200",children:t}),th:({children:t})=>m.jsx("th",{className:"text-left text-xs font-medium text-base-content/70 p-2",children:t}),td:({children:t})=>m.jsx("td",{className:"text-sm p-2 border-t border-base-300/50",children:t}),blockquote:({children:t})=>m.jsx("blockquote",{className:"border-l-4 border-primary/50 pl-4 py-1 my-3 text-sm text-base-content/70 italic",children:t}),hr:()=>m.jsx("hr",{className:"my-6 border-base-300"})},children:e})})}const gO={SPEC_REFRESH_INTERVAL_MS:5e3},jB={A:"lucide:file-plus",M:"lucide:file-edit",D:"lucide:file-minus"},PB={A:"text-success",M:"text-warning",D:"text-error"};function EB(){const[e,t]=k.useState(null),[n,r]=k.useState([]),[i,a]=k.useState(!0),[l,u]=k.useState(!1),[c,f]=k.useState(!1),[d,p]=k.useState(null),g=k.useCallback(async()=>{try{const C=await(await fetch("/api/worktree/status")).json();if(t(C),C.active){const A=await(await fetch("/api/worktree/diff")).json();r(A.files||[])}else r([])}catch{t(null)}finally{a(!1)}},[]);k.useEffect(()=>{g();const P=setInterval(g,gO.SPEC_REFRESH_INTERVAL_MS);return()=>clearInterval(P)},[g]);const y=async()=>{var P;if(confirm("Sync worktree changes to the base branch via squash merge?")){u(!0),p(null);try{const O=await(await fetch("/api/worktree/sync",{method:"POST"})).json();O.success?(p(`Synced ${O.files_changed} files — commit ${(P=O.commit_hash)==null?void 0:P.slice(0,7)}`),await g()):p(`Sync failed: ${O.error}`)}catch{p("Sync failed")}finally{u(!1)}}},b=async()=>{if(confirm("Discard all worktree changes? This cannot be undone.")){f(!0),p(null);try{const C=await(await fetch("/api/worktree/discard",{method:"POST"})).json();C.success?(p("Worktree discarded"),await g()):p(`Discard failed: ${C.error}`)}catch{p("Discard failed")}finally{f(!1)}}};if(i||!(e!=null&&e.active))return null;const S=n.reduce((P,C)=>P+C.additions,0),w=n.reduce((P,C)=>P+C.deletions,0);return m.jsx(wt,{children:m.jsxs(kt,{className:"p-4",children:[m.jsxs("div",{className:"flex items-center justify-between mb-3",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(se,{icon:"lucide:git-branch",size:16,className:"text-primary"}),m.jsx("span",{className:"text-sm font-medium",children:"Worktree Isolation"}),m.jsx(Te,{variant:"info",size:"xs",children:e.branch})]}),m.jsxs("div",{className:"flex items-center gap-1.5",children:[m.jsxs(Yt,{variant:"primary",size:"xs",onClick:y,disabled:l||c||n.length===0,children:[l?m.jsx(Yi,{size:"xs"}):m.jsx(se,{icon:"lucide:git-merge",size:12}),m.jsx("span",{className:"ml-1",children:"Sync"})]}),m.jsxs(Yt,{variant:"ghost",size:"xs",onClick:b,disabled:l||c,children:[c?m.jsx(Yi,{size:"xs"}):m.jsx(se,{icon:"lucide:trash-2",size:12,className:"text-error"}),m.jsx("span",{className:"ml-1",children:"Discard"})]})]})]}),m.jsxs("div",{className:"flex items-center gap-3 text-xs text-base-content/60 mb-2",children:[m.jsxs("span",{children:[n.length," file",n.length!==1?"s":""," changed"]}),S>0&&m.jsxs("span",{className:"text-success",children:["+",S]}),w>0&&m.jsxs("span",{className:"text-error",children:["-",w]}),m.jsxs("span",{className:"ml-auto",children:["base: ",m.jsx("span",{className:"font-mono text-base-content/80",children:e.baseBranch})]})]}),n.length>0&&m.jsx("div",{className:"space-y-0.5 max-h-40 overflow-y-auto",children:n.map(P=>m.jsxs("div",{className:"flex items-center gap-2 text-xs py-0.5",children:[m.jsx(se,{icon:jB[P.status]||"lucide:file",size:12,className:PB[P.status]||"text-base-content/50"}),m.jsx("span",{className:"font-mono text-base-content/80 truncate",children:P.path}),m.jsxs("span",{className:"ml-auto flex items-center gap-1 flex-shrink-0",children:[P.additions>0&&m.jsxs("span",{className:"text-success",children:["+",P.additions]}),P.deletions>0&&m.jsxs("span",{className:"text-error",children:["-",P.deletions]})]})]},P.path))}),d&&m.jsx("div",{className:`mt-2 text-xs px-2 py-1 rounded ${d.includes("failed")?"bg-error/10 text-error":"bg-success/10 text-success"}`,children:d})]})})}const B1={PENDING:{color:"warning",icon:"lucide:clock",label:"In Progress"},COMPLETE:{color:"info",icon:"lucide:check-circle",label:"Complete"},VERIFIED:{color:"success",icon:"lucide:shield-check",label:"Verified"}};function CB(e){const t=e.match(/^#\s+(.+)$/m),n=t?t[1].replace(" Implementation Plan",""):"Untitled",r=e.match(/\*\*Goal:\*\*\s*(.+?)(?:\n|$)/),i=r?r[1]:"",a=[],l=/^- \[(x| )\] Task (\d+):\s*(.+)$/gm;let u;for(;(u=l.exec(e))!==null;)a.push({number:parseInt(u[2],10),title:u[3],completed:u[1]==="x"});const c=e.match(/## Implementation Tasks\n([\s\S]*?)(?=\n## [^#]|$)/),f=c?c[1].trim():"";return{title:n,goal:i,tasks:a,implementationSection:f}}function OB(){const{selectedProject:e}=Ra(),[t,n]=k.useState([]),[r,i]=k.useState(null),[a,l]=k.useState(null),[u,c]=k.useState(!0),[f,d]=k.useState(!1),[p,g]=k.useState(null),[y,b]=k.useState(!1),S=e?`?project=${encodeURIComponent(e)}`:"",w=k.useRef(e);w.current!==e&&(w.current=e,i(null),l(null),g(null),c(!0));const P=k.useCallback(async()=>{var D;try{const Y=await(await fetch(`/api/plans/active${S}`)).json();if(n(Y.specs||[]),((D=Y.specs)==null?void 0:D.length)>0&&!r){const Q=Y.specs.find(he=>he.status==="PENDING"||he.status==="COMPLETE");i(Q?Q.filePath:Y.specs[0].filePath)}}catch(Z){g("Failed to load specs"),console.error("Failed to load specs:",Z)}finally{c(!1)}},[r,S]),C=k.useCallback(async(D,Z=!1)=>{Z||d(!0),g(null);try{const Y=await fetch(`/api/plan/content?path=${encodeURIComponent(D)}${e?`&project=${encodeURIComponent(e)}`:""}`);if(!Y.ok)throw new Error("Failed to load spec content");const Q=await Y.json();l(Q)}catch(Y){g("Failed to load spec content"),console.error("Failed to load spec content:",Y)}finally{Z||d(!1)}},[e]),O=k.useCallback(async D=>{if(confirm(`Delete spec "${D.split("/").pop()}"? This cannot be undone.`)){b(!0);try{if(!(await fetch(`/api/plan?path=${encodeURIComponent(D)}`,{method:"DELETE"})).ok)throw new Error("Failed to delete spec");i(null),l(null),await P()}catch(Z){g("Failed to delete spec"),console.error("Failed to delete spec:",Z)}finally{b(!1)}}},[P]);if(k.useEffect(()=>{P();const D=setInterval(()=>{P(),r&&C(r,!0)},gO.SPEC_REFRESH_INTERVAL_MS);return()=>clearInterval(D)},[P,C,r]),k.useEffect(()=>{r&&C(r)},[r,C]),u)return m.jsx("div",{className:"flex items-center justify-center h-64",children:m.jsx(Yi,{size:"lg"})});if(t.length===0)return m.jsx("div",{className:"space-y-6",children:m.jsx(wt,{children:m.jsx(kt,{children:m.jsxs("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[m.jsx(se,{icon:"lucide:file-text",size:48,className:"text-base-content/30 mb-4"}),m.jsx("h3",{className:"text-lg font-medium mb-2",children:"No Active Specs"}),m.jsxs("p",{className:"text-base-content/60 max-w-md",children:["Use ",m.jsx("code",{className:"text-primary bg-base-300 px-1 rounded",children:"/spec"})," in Claude Pilot to start a spec-driven development workflow."]})]})})})});const A=t.filter(D=>D.status==="PENDING"||D.status==="COMPLETE"),I=t.filter(D=>D.status==="VERIFIED"),E=t.find(D=>D.filePath===r),L=E?B1[E.status]:null,F=a?CB(a.content):null,H=(F==null?void 0:F.tasks.filter(D=>D.completed).length)||0,R=(F==null?void 0:F.tasks.length)||0,W=R>0?H/R*100:0;return m.jsxs("div",{className:"space-y-6",children:[m.jsxs("div",{className:"flex items-center gap-3 flex-wrap",children:[m.jsx("h1",{className:"text-2xl font-bold mr-auto",children:"Specifications"}),A.length>0&&m.jsx("div",{role:"tablist",className:"flex items-center gap-1.5 flex-shrink-0",children:A.map(D=>{const Z=r===D.filePath;return m.jsxs("button",{role:"tab","aria-selected":Z,className:`px-3 py-1.5 rounded-lg text-xs font-medium border transition-colors cursor-pointer flex items-center gap-1.5 ${Z?"bg-primary/10 border-primary/30 text-primary":"bg-base-200/60 border-base-300/50 text-base-content/70 hover:bg-base-200"}`,onClick:()=>i(D.filePath),children:[m.jsx(se,{icon:B1[D.status].icon,size:12,className:D.status==="PENDING"?"text-warning":"text-info"}),m.jsx("span",{className:"truncate max-w-32",children:D.name}),D.total>0&&m.jsxs("span",{className:"text-[10px] opacity-60",children:[D.completed,"/",D.total]})]},D.filePath)})}),I.length>0&&m.jsxs("select",{className:"select select-bordered select-sm",value:(E==null?void 0:E.status)==="VERIFIED"&&r||"",onChange:D=>i(D.target.value),children:[m.jsxs("option",{value:"",disabled:!0,children:["Archived (",I.length,")"]}),I.map(D=>{const Z=D.modifiedAt?new Date(D.modifiedAt):null,Y=Z?Z.toLocaleDateString(void 0,{month:"short",day:"numeric"}):"";return m.jsxs("option",{value:D.filePath,children:[D.name,Y?` - ${Y}`:""]},D.filePath)})]}),r&&m.jsx(Ar,{text:"Delete spec",position:"bottom",children:m.jsx(Yt,{variant:"ghost",size:"sm",onClick:()=>O(r),disabled:y,children:m.jsx(se,{icon:"lucide:trash-2",size:16,className:"text-error"})})})]}),f?m.jsx("div",{className:"flex items-center justify-center py-12",children:m.jsx(Yi,{size:"md"})}):p?m.jsx(wt,{children:m.jsx(kt,{children:m.jsxs("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[m.jsx(se,{icon:"lucide:alert-circle",size:48,className:"text-error mb-4"}),m.jsx("p",{className:"text-error",children:p})]})})}):F?m.jsxs(m.Fragment,{children:[m.jsx(wt,{children:m.jsxs(kt,{className:"p-5",children:[m.jsxs("div",{className:"flex items-start justify-between mb-4",children:[m.jsxs("div",{children:[m.jsx("h2",{className:"text-xl font-semibold",children:F.title}),F.goal&&m.jsx("p",{className:"text-base-content/60 text-sm mt-1",children:F.goal})]}),L&&m.jsxs(Te,{variant:L.color,size:"sm",className:"whitespace-nowrap",children:[m.jsx(se,{icon:L.icon,size:12,className:"mr-1"}),L.label]})]}),m.jsxs("div",{className:"mb-4",children:[m.jsxs("div",{className:"flex justify-between text-sm mb-1.5",children:[m.jsx("span",{className:"text-base-content/70",children:"Progress"}),m.jsxs("span",{className:"font-medium",children:[H," / ",R," tasks"]})]}),m.jsx(XD,{value:W,max:100,variant:"primary"})]}),m.jsx("div",{className:"space-y-2",children:F.tasks.map(D=>m.jsxs("div",{className:`flex items-center gap-3 p-2 rounded-lg ${D.completed?"bg-success/10":"bg-base-200/50"}`,children:[m.jsx("div",{className:`w-5 h-5 rounded-md flex items-center justify-center ${D.completed?"bg-success text-success-content":"bg-base-300"}`,children:D.completed?m.jsx(se,{icon:"lucide:check",size:14}):m.jsx("span",{className:"text-xs text-base-content/50",children:D.number})}),m.jsxs("span",{className:`text-sm ${D.completed?"text-base-content/70":"text-base-content"}`,children:["Task ",D.number,": ",D.title]})]},D.number))}),E&&m.jsxs("div",{className:"flex items-center gap-4 mt-4 pt-4 border-t border-base-300/50 text-xs text-base-content/50",children:[E.iterations>0&&m.jsxs("div",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:repeat",size:12}),m.jsxs("span",{children:[E.iterations," iteration",E.iterations>1?"s":""]})]}),!E.approved&&E.status==="PENDING"&&m.jsx(Te,{variant:"warning",size:"xs",children:"Awaiting Approval"}),E.worktree?m.jsxs("div",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:git-branch",size:12}),m.jsx("span",{children:"Worktree"})]}):m.jsxs("div",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:git-commit",size:12}),m.jsx("span",{children:"Direct"})]}),E.modifiedAt&&m.jsxs("div",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:calendar",size:12}),m.jsx("span",{children:new Date(E.modifiedAt).toLocaleString(void 0,{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})})]}),m.jsxs("div",{className:"flex items-center gap-1 ml-auto",children:[m.jsx(se,{icon:"lucide:file",size:12}),m.jsx("span",{className:"font-mono",children:E.filePath.split("/").pop()})]})]})]})}),m.jsx(EB,{}),F.implementationSection&&m.jsx(wt,{children:m.jsxs(kt,{className:"p-6",children:[m.jsxs("h3",{className:"text-lg font-semibold mb-4 flex items-center gap-2",children:[m.jsx(se,{icon:"lucide:list-tree",size:18}),"Implementation Details"]}),m.jsx(SB,{content:F.implementationSection})]})})]}):null]})}const NB=300*1e3;function AB(){const[e,t]=k.useState([]),[n,r]=k.useState([]),[i,a]=k.useState([]),[l,u]=k.useState(!0),[c,f]=k.useState(null),[d,p]=k.useState(!0),[g,y]=k.useState(!0),b=k.useCallback(async()=>{var S,w;try{const[P,C,O]=await Promise.all([fetch("/api/usage/daily"),fetch("/api/usage/monthly"),fetch("/api/usage/models")]),[A,I,E]=await Promise.all([P.json(),C.json(),O.json()]);if(A.available===!1){p(!1),y(!1),t([]),r([]),a([]),f(null);return}p(!0);const L=(((S=A.daily)==null?void 0:S.length)??0)>0||(((w=I.monthly)==null?void 0:w.length)??0)>0;y(L),t(A.daily||[]),r(I.monthly||[]),a(E.models||[]),f(null)}catch(P){f(P instanceof Error?P.message:"Failed to load usage data"),p(!0),y(!1)}finally{u(!1)}},[]);return k.useEffect(()=>{b();const S=setInterval(b,NB);return()=>{clearInterval(S)}},[b]),{daily:e,monthly:n,models:i,isLoading:l,error:c,available:d,dataExists:g}}function _o(e){return e<1e3?e.toString():e<1e6?`${(e/1e3).toFixed(1)}k`:`${(e/1e6).toFixed(1)}M`}function _B({daily:e}){const t=e.length>0?e[e.length-1]:null,n=(t==null?void 0:t.totalCost)||0,r=(t==null?void 0:t.totalTokens)||0,i=e.filter(d=>d.totalCost>0||d.totalTokens>0),a=i.reduce((d,p)=>d+(p.totalCost||0),0),l=i.reduce((d,p)=>d+(p.totalTokens||0),0),u=i.length||1,c=a/u,f=Math.round(l/u);return m.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4",children:[m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Daily Cost"}),m.jsxs("div",{className:"stat-value text-primary",children:[n.toFixed(2),"$"]}),m.jsx("div",{className:"stat-desc",children:"Today"})]})}),m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Avg Daily Cost"}),m.jsxs("div",{className:"stat-value",children:["⌀ ",c.toFixed(2),"$"]}),m.jsxs("div",{className:"stat-desc",children:["Last ",u," working days"]})]})}),m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Daily Tokens"}),m.jsx("div",{className:"stat-value text-primary",children:_o(r)}),m.jsx("div",{className:"stat-desc",children:"Today"})]})}),m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Avg Daily Tokens"}),m.jsxs("div",{className:"stat-value",children:["⌀ ",_o(f)]}),m.jsxs("div",{className:"stat-desc",children:["Last ",u," working days"]})]})})]})}function vO(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var i=e.length;for(t=0;t{var{children:n,width:r,height:i,viewBox:a,className:l,style:u,title:c,desc:f}=e,d=RB(e,LB),p=a||{width:r,height:i,x:0,y:0},g=Ge("recharts-surface",l);return k.createElement("svg",Wg({},dn(d),{className:g,width:r,height:i,style:u,viewBox:"".concat(p.x," ").concat(p.y," ").concat(p.width," ").concat(p.height),ref:t}),k.createElement("title",null,c),k.createElement("desc",null,f),n)}),$B=["children","className"];function qg(){return qg=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{children:n,className:r}=e,i=FB(e,$B),a=Ge("recharts-layer",r);return k.createElement("g",qg({className:a},dn(i),{ref:t}),n)}),wO=UE(),UB=k.createContext(null);function Je(e){return function(){return e}}const kO=Math.cos,Fc=Math.sin,xr=Math.sqrt,Bc=Math.PI,Wf=2*Bc,Hg=Math.PI,Vg=2*Hg,va=1e-6,WB=Vg-va;function SO(e){this._+=e[0];for(let t=1,n=e.length;t=0))throw new Error(`invalid digits: ${e}`);if(t>15)return SO;const n=10**t;return function(r){this._+=r[0];for(let i=1,a=r.length;iva)if(!(Math.abs(p*c-f*d)>va)||!a)this._append`L${this._x1=t},${this._y1=n}`;else{let y=r-l,b=i-u,S=c*c+f*f,w=y*y+b*b,P=Math.sqrt(S),C=Math.sqrt(g),O=a*Math.tan((Hg-Math.acos((S+g-w)/(2*P*C)))/2),A=O/C,I=O/P;Math.abs(A-1)>va&&this._append`L${t+A*d},${n+A*p}`,this._append`A${a},${a},0,0,${+(p*y>d*b)},${this._x1=t+I*c},${this._y1=n+I*f}`}}arc(t,n,r,i,a,l){if(t=+t,n=+n,r=+r,l=!!l,r<0)throw new Error(`negative radius: ${r}`);let u=r*Math.cos(i),c=r*Math.sin(i),f=t+u,d=n+c,p=1^l,g=l?i-a:a-i;this._x1===null?this._append`M${f},${d}`:(Math.abs(this._x1-f)>va||Math.abs(this._y1-d)>va)&&this._append`L${f},${d}`,r&&(g<0&&(g=g%Vg+Vg),g>WB?this._append`A${r},${r},0,1,${p},${t-u},${n-c}A${r},${r},0,1,${p},${this._x1=f},${this._y1=d}`:g>va&&this._append`A${r},${r},0,${+(g>=Hg)},${p},${this._x1=t+r*Math.cos(a)},${this._y1=n+r*Math.sin(a)}`)}rect(t,n,r,i){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+n}h${r=+r}v${+i}h${-r}Z`}toString(){return this._}}function hy(e){let t=3;return e.digits=function(n){if(!arguments.length)return t;if(n==null)t=null;else{const r=Math.floor(n);if(!(r>=0))throw new RangeError(`invalid digits: ${n}`);t=r}return e},()=>new HB(t)}function py(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function jO(e){this._context=e}jO.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t);break}}};function qf(e){return new jO(e)}function PO(e){return e[0]}function EO(e){return e[1]}function CO(e,t){var n=Je(!0),r=null,i=qf,a=null,l=hy(u);e=typeof e=="function"?e:e===void 0?PO:Je(e),t=typeof t=="function"?t:t===void 0?EO:Je(t);function u(c){var f,d=(c=py(c)).length,p,g=!1,y;for(r==null&&(a=i(y=l())),f=0;f<=d;++f)!(f=y;--b)u.point(O[b],A[b]);u.lineEnd(),u.areaEnd()}P&&(O[g]=+e(w,g,p),A[g]=+t(w,g,p),u.point(r?+r(w,g,p):O[g],n?+n(w,g,p):A[g]))}if(C)return u=null,C+""||null}function d(){return CO().defined(i).curve(l).context(a)}return f.x=function(p){return arguments.length?(e=typeof p=="function"?p:Je(+p),r=null,f):e},f.x0=function(p){return arguments.length?(e=typeof p=="function"?p:Je(+p),f):e},f.x1=function(p){return arguments.length?(r=p==null?null:typeof p=="function"?p:Je(+p),f):r},f.y=function(p){return arguments.length?(t=typeof p=="function"?p:Je(+p),n=null,f):t},f.y0=function(p){return arguments.length?(t=typeof p=="function"?p:Je(+p),f):t},f.y1=function(p){return arguments.length?(n=p==null?null:typeof p=="function"?p:Je(+p),f):n},f.lineX0=f.lineY0=function(){return d().x(e).y(t)},f.lineY1=function(){return d().x(e).y(n)},f.lineX1=function(){return d().x(r).y(t)},f.defined=function(p){return arguments.length?(i=typeof p=="function"?p:Je(!!p),f):i},f.curve=function(p){return arguments.length?(l=p,a!=null&&(u=l(a)),f):l},f.context=function(p){return arguments.length?(p==null?a=u=null:u=l(a=p),f):a},f}class OO{constructor(t,n){this._context=t,this._x=n}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(t,n){switch(t=+t,n=+n,this._point){case 0:{this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,n,t,n):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+n)/2,t,this._y0,t,n);break}}this._x0=t,this._y0=n}}function VB(e){return new OO(e,!0)}function KB(e){return new OO(e,!1)}const my={draw(e,t){const n=xr(t/Bc);e.moveTo(n,0),e.arc(0,0,n,0,Wf)}},GB={draw(e,t){const n=xr(t/5)/2;e.moveTo(-3*n,-n),e.lineTo(-n,-n),e.lineTo(-n,-3*n),e.lineTo(n,-3*n),e.lineTo(n,-n),e.lineTo(3*n,-n),e.lineTo(3*n,n),e.lineTo(n,n),e.lineTo(n,3*n),e.lineTo(-n,3*n),e.lineTo(-n,n),e.lineTo(-3*n,n),e.closePath()}},NO=xr(1/3),YB=NO*2,XB={draw(e,t){const n=xr(t/YB),r=n*NO;e.moveTo(0,-n),e.lineTo(r,0),e.lineTo(0,n),e.lineTo(-r,0),e.closePath()}},QB={draw(e,t){const n=xr(t),r=-n/2;e.rect(r,r,n,n)}},ZB=.8908130915292852,AO=Fc(Bc/10)/Fc(7*Bc/10),JB=Fc(Wf/10)*AO,e5=-kO(Wf/10)*AO,t5={draw(e,t){const n=xr(t*ZB),r=JB*n,i=e5*n;e.moveTo(0,-n),e.lineTo(r,i);for(let a=1;a<5;++a){const l=Wf*a/5,u=kO(l),c=Fc(l);e.lineTo(c*n,-u*n),e.lineTo(u*r-c*i,c*r+u*i)}e.closePath()}},Vp=xr(3),n5={draw(e,t){const n=-xr(t/(Vp*3));e.moveTo(0,n*2),e.lineTo(-Vp*n,-n),e.lineTo(Vp*n,-n),e.closePath()}},Kn=-.5,Gn=xr(3)/2,Kg=1/xr(12),r5=(Kg/2+1)*3,i5={draw(e,t){const n=xr(t/r5),r=n/2,i=n*Kg,a=r,l=n*Kg+n,u=-a,c=l;e.moveTo(r,i),e.lineTo(a,l),e.lineTo(u,c),e.lineTo(Kn*r-Gn*i,Gn*r+Kn*i),e.lineTo(Kn*a-Gn*l,Gn*a+Kn*l),e.lineTo(Kn*u-Gn*c,Gn*u+Kn*c),e.lineTo(Kn*r+Gn*i,Kn*i-Gn*r),e.lineTo(Kn*a+Gn*l,Kn*l-Gn*a),e.lineTo(Kn*u+Gn*c,Kn*c-Gn*u),e.closePath()}};function a5(e,t){let n=null,r=hy(i);e=typeof e=="function"?e:Je(e||my),t=typeof t=="function"?t:Je(t===void 0?64:+t);function i(){let a;if(n||(n=a=r()),e.apply(this,arguments).draw(n,+t.apply(this,arguments)),a)return n=null,a+""||null}return i.type=function(a){return arguments.length?(e=typeof a=="function"?a:Je(a),i):e},i.size=function(a){return arguments.length?(t=typeof a=="function"?a:Je(+a),i):t},i.context=function(a){return arguments.length?(n=a??null,i):n},i}function Uc(){}function Wc(e,t,n){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+n)/6)}function _O(e){this._context=e}_O.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:Wc(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:Wc(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function o5(e){return new _O(e)}function IO(e){this._context=e}IO.prototype={areaStart:Uc,areaEnd:Uc,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:Wc(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function l5(e){return new IO(e)}function TO(e){this._context=e}TO.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var n=(this._x0+4*this._x1+e)/6,r=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(n,r):this._context.moveTo(n,r);break;case 3:this._point=4;default:Wc(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function s5(e){return new TO(e)}function DO(e){this._context=e}DO.prototype={areaStart:Uc,areaEnd:Uc,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(e,t){e=+e,t=+t,this._point?this._context.lineTo(e,t):(this._point=1,this._context.moveTo(e,t))}};function u5(e){return new DO(e)}function U1(e){return e<0?-1:1}function W1(e,t,n){var r=e._x1-e._x0,i=t-e._x1,a=(e._y1-e._y0)/(r||i<0&&-0),l=(n-e._y1)/(i||r<0&&-0),u=(a*i+l*r)/(r+i);return(U1(a)+U1(l))*Math.min(Math.abs(a),Math.abs(l),.5*Math.abs(u))||0}function q1(e,t){var n=e._x1-e._x0;return n?(3*(e._y1-e._y0)/n-t)/2:t}function Kp(e,t,n){var r=e._x0,i=e._y0,a=e._x1,l=e._y1,u=(a-r)/3;e._context.bezierCurveTo(r+u,i+u*t,a-u,l-u*n,a,l)}function qc(e){this._context=e}qc.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:Kp(this,this._t0,q1(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){var n=NaN;if(e=+e,t=+t,!(e===this._x1&&t===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,Kp(this,q1(this,n=W1(this,e,t)),n);break;default:Kp(this,this._t0,n=W1(this,e,t));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=n}}};function MO(e){this._context=new LO(e)}(MO.prototype=Object.create(qc.prototype)).point=function(e,t){qc.prototype.point.call(this,t,e)};function LO(e){this._context=e}LO.prototype={moveTo:function(e,t){this._context.moveTo(t,e)},closePath:function(){this._context.closePath()},lineTo:function(e,t){this._context.lineTo(t,e)},bezierCurveTo:function(e,t,n,r,i,a){this._context.bezierCurveTo(t,e,r,n,a,i)}};function c5(e){return new qc(e)}function f5(e){return new MO(e)}function RO(e){this._context=e}RO.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var e=this._x,t=this._y,n=e.length;if(n)if(this._line?this._context.lineTo(e[0],t[0]):this._context.moveTo(e[0],t[0]),n===2)this._context.lineTo(e[1],t[1]);else for(var r=H1(e),i=H1(t),a=0,l=1;l=0;--t)i[t]=(l[t]-i[t+1])/a[t];for(a[n-1]=(e[n]+i[n-1])/2,t=0;t=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var n=this._x*(1-this._t)+e*this._t;this._context.lineTo(n,this._y),this._context.lineTo(n,t)}break}}this._x=e,this._y=t}};function h5(e){return new Hf(e,.5)}function p5(e){return new Hf(e,0)}function m5(e){return new Hf(e,1)}function Na(e,t){if((l=e.length)>1)for(var n=1,r,i,a=e[t[0]],l,u=a.length;n=0;)n[t]=t;return n}function g5(e,t){return e[t]}function v5(e){const t=[];return t.key=e,t}function y5(){var e=Je([]),t=Gg,n=Na,r=g5;function i(a){var l=Array.from(e.apply(this,arguments),v5),u,c=l.length,f=-1,d;for(const p of a)for(u=0,++f;u0){for(var n,r,i=0,a=e[0].length,l;i0){for(var n=0,r=e[t[0]],i,a=r.length;n0)||!((a=(i=e[t[0]]).length)>0))){for(var n=0,r=1,i,a,l;r1&&arguments[1]!==void 0?arguments[1]:E5,n=10**t,r=Math.round(e*n)/n;return Object.is(r,-0)?0:r}function pt(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r{var u=n[l-1];return typeof u=="string"?i+u+a:u!==void 0?i+Vi(u)+a:i+a},"")}var jn=e=>e===0?0:e>0?1:-1,mr=e=>typeof e=="number"&&e!=+e,Aa=e=>typeof e=="string"&&e.indexOf("%")===e.length-1,ge=e=>(typeof e=="number"||e instanceof Number)&&!mr(e),Dr=e=>ge(e)||typeof e=="string",C5=0,cs=e=>{var t=++C5;return"".concat(e||"").concat(t)},gr=function(t,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(!ge(t)&&typeof t!="string")return r;var a;if(Aa(t)){if(n==null)return r;var l=t.indexOf("%");a=n*parseFloat(t.slice(0,l))/100}else a=+t;return mr(a)&&(a=r),i&&n!=null&&a>n&&(a=n),a},$O=e=>{if(!Array.isArray(e))return!1;for(var t=e.length,n={},r=0;rr&&(typeof t=="function"?t(r):Io(r,t))===n)}var mt=e=>e===null||typeof e>"u",As=e=>mt(e)?e:"".concat(e.charAt(0).toUpperCase()).concat(e.slice(1));function Pn(e){return e!=null}function $a(){}var O5=["type","size","sizeType"];function Yg(){return Yg=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var t="symbol".concat(As(e));return BO[t]||my},L5=(e,t,n)=>{if(t==="area")return e;switch(n){case"cross":return 5*e*e/9;case"diamond":return .5*e*e/Math.sqrt(3);case"square":return e*e;case"star":{var r=18*D5;return 1.25*e*e*(Math.tan(r)-Math.tan(r*2)*Math.tan(r)**2)}case"triangle":return Math.sqrt(3)*e*e/4;case"wye":return(21-10*Math.sqrt(3))*e*e/8;default:return Math.PI*e*e/4}},R5=(e,t)=>{BO["symbol".concat(As(e))]=t},UO=e=>{var{type:t="circle",size:n=64,sizeType:r="area"}=e,i=I5(e,O5),a=ek(ek({},i),{},{type:t,size:n,sizeType:r}),l="circle";typeof t=="string"&&(l=t);var u=()=>{var g=M5(l),y=a5().type(g).size(L5(n,r,l)),b=y();if(b!==null)return b},{className:c,cx:f,cy:d}=a,p=dn(a);return ge(f)&&ge(d)&&ge(n)?k.createElement("path",Yg({},p,{className:Ge("recharts-symbols",c),transform:"translate(".concat(f,", ").concat(d,")"),d:u()})):null};UO.registerSymbol=R5;var WO=e=>"radius"in e&&"startAngle"in e&&"endAngle"in e,xy=(e,t)=>{if(!e||typeof e=="function"||typeof e=="boolean")return null;var n=e;if(k.isValidElement(e)&&(n=e.props),typeof n!="object"&&typeof n!="function")return null;var r={};return Object.keys(n).forEach(i=>{dy(i)&&(r[i]=(a=>n[i](n,a)))}),r},z5=(e,t,n)=>r=>(e(t,n,r),null),by=(e,t,n)=>{if(e===null||typeof e!="object"&&typeof e!="function")return null;var r=null;return Object.keys(e).forEach(i=>{var a=e[i];dy(i)&&typeof a=="function"&&(r||(r={}),r[i]=z5(a,t,n))}),r};function tk(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function $5(e){for(var t=1;t(l[u]===void 0&&r[u]!==void 0&&(l[u]=r[u]),l),n);return a}var tm={},nm={},nk;function W5(){return nk||(nk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r){const i=new Map;for(let a=0;a=0}e.isLength=t})(lm)),lm}var ok;function wy(){return ok||(ok=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=H5();function n(r){return r!=null&&typeof r!="function"&&t.isLength(r.length)}e.isArrayLike=n})(om)),om}var sm={},lk;function V5(){return lk||(lk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return typeof n=="object"&&n!==null}e.isObjectLike=t})(sm)),sm}var sk;function K5(){return sk||(sk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=wy(),n=V5();function r(i){return n.isObjectLike(i)&&t.isArrayLike(i)}e.isArrayLikeObject=r})(am)),am}var um={},cm={},uk;function G5(){return uk||(uk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=yy();function n(r){return function(i){return t.get(i,r)}}e.property=n})(cm)),cm}var fm={},dm={},hm={},pm={},ck;function HO(){return ck||(ck=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n!==null&&(typeof n=="object"||typeof n=="function")}e.isObject=t})(pm)),pm}var mm={},fk;function VO(){return fk||(fk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n==null||typeof n!="object"&&typeof n!="function"}e.isPrimitive=t})(mm)),mm}var gm={},dk;function KO(){return dk||(dk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r){return n===r||Number.isNaN(n)&&Number.isNaN(r)}e.isEqualsSameValueZero=t})(gm)),gm}var hk;function Y5(){return hk||(hk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=HO(),n=VO(),r=KO();function i(d,p,g){return typeof g!="function"?i(d,p,()=>{}):a(d,p,function y(b,S,w,P,C,O){const A=g(b,S,w,P,C,O);return A!==void 0?!!A:a(b,S,y,O)},new Map)}function a(d,p,g,y){if(p===d)return!0;switch(typeof p){case"object":return l(d,p,g,y);case"function":return Object.keys(p).length>0?a(d,{...p},g,y):r.isEqualsSameValueZero(d,p);default:return t.isObject(d)?typeof p=="string"?p==="":!0:r.isEqualsSameValueZero(d,p)}}function l(d,p,g,y){if(p==null)return!0;if(Array.isArray(p))return c(d,p,g,y);if(p instanceof Map)return u(d,p,g,y);if(p instanceof Set)return f(d,p,g,y);const b=Object.keys(p);if(d==null||n.isPrimitive(d))return b.length===0;if(b.length===0)return!0;if(y!=null&&y.has(p))return y.get(p)===d;y==null||y.set(p,d);try{for(let S=0;S{})}e.isMatch=n})(dm)),dm}var vm={},ym={},xm={},mk;function X5(){return mk||(mk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return Object.getOwnPropertySymbols(n).filter(r=>Object.prototype.propertyIsEnumerable.call(n,r))}e.getSymbols=t})(xm)),xm}var bm={},gk;function ky(){return gk||(gk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n==null?n===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(n)}e.getTag=t})(bm)),bm}var wm={},vk;function YO(){return vk||(vk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t="[object RegExp]",n="[object String]",r="[object Number]",i="[object Boolean]",a="[object Arguments]",l="[object Symbol]",u="[object Date]",c="[object Map]",f="[object Set]",d="[object Array]",p="[object Function]",g="[object ArrayBuffer]",y="[object Object]",b="[object Error]",S="[object DataView]",w="[object Uint8Array]",P="[object Uint8ClampedArray]",C="[object Uint16Array]",O="[object Uint32Array]",A="[object BigUint64Array]",I="[object Int8Array]",E="[object Int16Array]",L="[object Int32Array]",F="[object BigInt64Array]",H="[object Float32Array]",R="[object Float64Array]";e.argumentsTag=a,e.arrayBufferTag=g,e.arrayTag=d,e.bigInt64ArrayTag=F,e.bigUint64ArrayTag=A,e.booleanTag=i,e.dataViewTag=S,e.dateTag=u,e.errorTag=b,e.float32ArrayTag=H,e.float64ArrayTag=R,e.functionTag=p,e.int16ArrayTag=E,e.int32ArrayTag=L,e.int8ArrayTag=I,e.mapTag=c,e.numberTag=r,e.objectTag=y,e.regexpTag=t,e.setTag=f,e.stringTag=n,e.symbolTag=l,e.uint16ArrayTag=C,e.uint32ArrayTag=O,e.uint8ArrayTag=w,e.uint8ClampedArrayTag=P})(wm)),wm}var km={},yk;function Q5(){return yk||(yk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return ArrayBuffer.isView(n)&&!(n instanceof DataView)}e.isTypedArray=t})(km)),km}var xk;function XO(){return xk||(xk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=X5(),n=ky(),r=YO(),i=VO(),a=Q5();function l(d,p){return u(d,void 0,d,new Map,p)}function u(d,p,g,y=new Map,b=void 0){const S=b==null?void 0:b(d,p,g,y);if(S!==void 0)return S;if(i.isPrimitive(d))return d;if(y.has(d))return y.get(d);if(Array.isArray(d)){const w=new Array(d.length);y.set(d,w);for(let P=0;Pt.isMatch(a,i)}e.matches=r})(fm)),fm}var Sm={},jm={},Pm={},kk;function e6(){return kk||(kk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=XO(),n=ky(),r=YO();function i(a,l){return t.cloneDeepWith(a,(u,c,f,d)=>{const p=l==null?void 0:l(u,c,f,d);if(p!==void 0)return p;if(typeof a=="object"){if(n.getTag(a)===r.objectTag&&typeof a.constructor!="function"){const g={};return d.set(a,g),t.copyProperties(g,a,f,d),g}switch(Object.prototype.toString.call(a)){case r.numberTag:case r.stringTag:case r.booleanTag:{const g=new a.constructor(a==null?void 0:a.valueOf());return t.copyProperties(g,a),g}case r.argumentsTag:{const g={};return t.copyProperties(g,a),g.length=a.length,g[Symbol.iterator]=a[Symbol.iterator],g}default:return}}})}e.cloneDeepWith=i})(Pm)),Pm}var Sk;function t6(){return Sk||(Sk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=e6();function n(r){return t.cloneDeepWith(r)}e.cloneDeep=n})(jm)),jm}var Em={},Cm={},jk;function QO(){return jk||(jk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=/^(?:0|[1-9]\d*)$/;function n(r,i=Number.MAX_SAFE_INTEGER){switch(typeof r){case"number":return Number.isInteger(r)&&r>=0&&r",...c.current()})),f+=c.move(">")):(u=n.enter("destinationRaw"),f+=c.move(n.safe(e.url,{before:f,after:e.title?" ":")",...c.current()}))),u(),e.title&&(u=n.enter(`title${a}`),f+=c.move(" "+i),f+=c.move(n.safe(e.title,{before:f,after:i,...c.current()})),f+=c.move(i),u()),f+=c.move(")"),l(),f}function wF(){return"!"}aO.peek=kF;function aO(e,t,n,r){const i=e.referenceType,a=n.enter("imageReference");let l=n.enter("label");const u=n.createTracker(r);let c=u.move("![");const f=n.safe(e.alt,{before:c,after:"]",...u.current()});c+=u.move(f+"]["),l();const d=n.stack;n.stack=[],l=n.enter("reference");const p=n.safe(n.associationId(e),{before:c,after:"]",...u.current()});return l(),n.stack=d,a(),i==="full"||!f||f!==p?c+=u.move(p+"]"):i==="shortcut"?c=c.slice(0,-1):c+=u.move("]"),c}function kF(){return"!"}oO.peek=SF;function oO(e,t,n){let r=e.value||"",i="`",a=-1;for(;new RegExp("(^|[^`])"+i+"([^`]|$)").test(r);)i+="`";for(/[^ \r\n]/.test(r)&&(/^[ \r\n]/.test(r)&&/[ \r\n]$/.test(r)||/^`|`$/.test(r))&&(r=" "+r+" ");++a\u007F]/.test(e.url))}sO.peek=jF;function sO(e,t,n,r){const i=fy(n),a=i==='"'?"Quote":"Apostrophe",l=n.createTracker(r);let u,c;if(lO(e,n)){const d=n.stack;n.stack=[],u=n.enter("autolink");let p=l.move("<");return p+=l.move(n.containerPhrasing(e,{before:p,after:">",...l.current()})),p+=l.move(">"),u(),n.stack=d,p}u=n.enter("link"),c=n.enter("label");let f=l.move("[");return f+=l.move(n.containerPhrasing(e,{before:f,after:"](",...l.current()})),f+=l.move("]("),c(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(c=n.enter("destinationLiteral"),f+=l.move("<"),f+=l.move(n.safe(e.url,{before:f,after:">",...l.current()})),f+=l.move(">")):(c=n.enter("destinationRaw"),f+=l.move(n.safe(e.url,{before:f,after:e.title?" ":")",...l.current()}))),c(),e.title&&(c=n.enter(`title${a}`),f+=l.move(" "+i),f+=l.move(n.safe(e.title,{before:f,after:i,...l.current()})),f+=l.move(i),c()),f+=l.move(")"),u(),f}function jF(e,t,n){return lO(e,n)?"<":"["}uO.peek=PF;function uO(e,t,n,r){const i=e.referenceType,a=n.enter("linkReference");let l=n.enter("label");const u=n.createTracker(r);let c=u.move("[");const f=n.containerPhrasing(e,{before:c,after:"]",...u.current()});c+=u.move(f+"]["),l();const d=n.stack;n.stack=[],l=n.enter("reference");const p=n.safe(n.associationId(e),{before:c,after:"]",...u.current()});return l(),n.stack=d,a(),i==="full"||!f||f!==p?c+=u.move(p+"]"):i==="shortcut"?c=c.slice(0,-1):c+=u.move("]"),c}function PF(){return"["}function dy(e){const t=e.options.bullet||"*";if(t!=="*"&&t!=="+"&&t!=="-")throw new Error("Cannot serialize items with `"+t+"` for `options.bullet`, expected `*`, `+`, or `-`");return t}function EF(e){const t=dy(e),n=e.options.bulletOther;if(!n)return t==="*"?"-":"*";if(n!=="*"&&n!=="+"&&n!=="-")throw new Error("Cannot serialize items with `"+n+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(n===t)throw new Error("Expected `bullet` (`"+t+"`) and `bulletOther` (`"+n+"`) to be different");return n}function CF(e){const t=e.options.bulletOrdered||".";if(t!=="."&&t!==")")throw new Error("Cannot serialize items with `"+t+"` for `options.bulletOrdered`, expected `.` or `)`");return t}function cO(e){const t=e.options.rule||"*";if(t!=="*"&&t!=="-"&&t!=="_")throw new Error("Cannot serialize rules with `"+t+"` for `options.rule`, expected `*`, `-`, or `_`");return t}function OF(e,t,n,r){const i=n.enter("list"),a=n.bulletCurrent;let l=e.ordered?CF(n):dy(n);const u=e.ordered?l==="."?")":".":EF(n);let c=t&&n.bulletLastUsed?l===n.bulletLastUsed:!1;if(!e.ordered){const d=e.children?e.children[0]:void 0;if((l==="*"||l==="-")&&d&&(!d.children||!d.children[0])&&n.stack[n.stack.length-1]==="list"&&n.stack[n.stack.length-2]==="listItem"&&n.stack[n.stack.length-3]==="list"&&n.stack[n.stack.length-4]==="listItem"&&n.indexStack[n.indexStack.length-1]===0&&n.indexStack[n.indexStack.length-2]===0&&n.indexStack[n.indexStack.length-3]===0&&(c=!0),cO(n)===l&&d){let p=-1;for(;++p-1?t.start:1)+(n.options.incrementListMarker===!1?0:t.children.indexOf(e))+a);let l=a.length+1;(i==="tab"||i==="mixed"&&(t&&t.type==="list"&&t.spread||e.spread))&&(l=Math.ceil(l/4)*4);const u=n.createTracker(r);u.move(a+" ".repeat(l-a.length)),u.shift(l);const c=n.enter("listItem"),f=n.indentLines(n.containerFlow(e,u.current()),d);return c(),f;function d(p,g,y){return g?(y?"":" ".repeat(l))+p:(y?a:a+" ".repeat(l-a.length))+p}}function _F(e,t,n,r){const i=n.enter("paragraph"),a=n.enter("phrasing"),l=n.containerPhrasing(e,r);return a(),i(),l}const IF=Uf(["break","delete","emphasis","footnote","footnoteReference","image","imageReference","inlineCode","inlineMath","link","linkReference","mdxJsxTextElement","mdxTextExpression","strong","text","textDirective"]);function TF(e,t,n,r){return(e.children.some(function(l){return IF(l)})?n.containerPhrasing:n.containerFlow).call(n,e,r)}function MF(e){const t=e.options.strong||"*";if(t!=="*"&&t!=="_")throw new Error("Cannot serialize strong with `"+t+"` for `options.strong`, expected `*`, or `_`");return t}fO.peek=DF;function fO(e,t,n,r){const i=MF(n),a=n.enter("strong"),l=n.createTracker(r),u=l.move(i+i);let c=l.move(n.containerPhrasing(e,{after:i,before:u,...l.current()}));const f=c.charCodeAt(0),d=Fc(r.before.charCodeAt(r.before.length-1),f,i);d.inside&&(c=cs(f)+c.slice(1));const p=c.charCodeAt(c.length-1),g=Fc(r.after.charCodeAt(0),p,i);g.inside&&(c=c.slice(0,-1)+cs(p));const y=l.move(i+i);return a(),n.attentionEncodeSurroundingInfo={after:g.outside,before:d.outside},u+c+y}function DF(e,t,n){return n.options.strong||"*"}function LF(e,t,n,r){return n.safe(e.value,r)}function RF(e){const t=e.options.ruleRepetition||3;if(t<3)throw new Error("Cannot serialize rules with repetition `"+t+"` for `options.ruleRepetition`, expected `3` or more");return t}function zF(e,t,n){const r=(cO(n)+(n.options.ruleSpaces?" ":"")).repeat(RF(n));return n.options.ruleSpaces?r.slice(0,-1):r}const dO={blockquote:lF,break:F1,code:hF,definition:mF,emphasis:nO,hardBreak:F1,heading:xF,html:rO,image:iO,imageReference:aO,inlineCode:oO,link:sO,linkReference:uO,list:OF,listItem:AF,paragraph:_F,root:TF,strong:fO,text:LF,thematicBreak:zF};function $F(){return{enter:{table:FF,tableData:B1,tableHeader:B1,tableRow:UF},exit:{codeText:WF,table:BF,tableData:Kp,tableHeader:Kp,tableRow:Kp}}}function FF(e){const t=e._align;this.enter({type:"table",align:t.map(function(n){return n==="none"?null:n}),children:[]},e),this.data.inTable=!0}function BF(e){this.exit(e),this.data.inTable=void 0}function UF(e){this.enter({type:"tableRow",children:[]},e)}function Kp(e){this.exit(e)}function B1(e){this.enter({type:"tableCell",children:[]},e)}function WF(e){let t=this.resume();this.data.inTable&&(t=t.replace(/\\([\\|])/g,qF));const n=this.stack[this.stack.length-1];n.type,n.value=t,this.exit(e)}function qF(e,t){return t==="|"?t:e}function HF(e){const t=e||{},n=t.tableCellPadding,r=t.tablePipeAlign,i=t.stringLength,a=n?" ":"|";return{unsafe:[{character:"\r",inConstruct:"tableCell"},{character:` +`,inConstruct:"tableCell"},{atBreak:!0,character:"|",after:"[ :-]"},{character:"|",inConstruct:"tableCell"},{atBreak:!0,character:":",after:"-"},{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{inlineCode:g,table:l,tableCell:c,tableRow:u}};function l(y,x,S,w){return f(d(y,S,w),y.align)}function u(y,x,S,w){const P=p(y,S,w),C=f([P]);return C.slice(0,C.indexOf(` +`))}function c(y,x,S,w){const P=S.enter("tableCell"),C=S.enter("phrasing"),O=S.containerPhrasing(y,{...w,before:a,after:a});return C(),P(),O}function f(y,x){return aF(y,{align:x,alignDelimiters:r,padding:n,stringLength:i})}function d(y,x,S){const w=y.children;let P=-1;const C=[],O=x.enter("table");for(;++P0&&!n&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),n}const uB={tokenize:vB,partial:!0};function cB(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:pB,continuation:{tokenize:mB},exit:gB}},text:{91:{name:"gfmFootnoteCall",tokenize:hB},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:fB,resolveTo:dB}}}}function fB(e,t,n){const r=this;let i=r.events.length;const a=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let l;for(;i--;){const c=r.events[i][1];if(c.type==="labelImage"){l=c;break}if(c.type==="gfmFootnoteCall"||c.type==="labelLink"||c.type==="label"||c.type==="image"||c.type==="link")break}return u;function u(c){if(!l||!l._balanced)return n(c);const f=pr(r.sliceSerialize({start:l.end,end:r.now()}));return f.codePointAt(0)!==94||!a.includes(f.slice(1))?n(c):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(c),e.exit("gfmFootnoteCallLabelMarker"),t(c))}}function dB(e,t){let n=e.length;for(;n--;)if(e[n][1].type==="labelImage"&&e[n][0]==="enter"){e[n][1];break}e[n+1][1].type="data",e[n+3][1].type="gfmFootnoteCallLabelMarker";const r={type:"gfmFootnoteCall",start:Object.assign({},e[n+3][1].start),end:Object.assign({},e[e.length-1][1].end)},i={type:"gfmFootnoteCallMarker",start:Object.assign({},e[n+3][1].end),end:Object.assign({},e[n+3][1].end)};i.end.column++,i.end.offset++,i.end._bufferIndex++;const a={type:"gfmFootnoteCallString",start:Object.assign({},i.end),end:Object.assign({},e[e.length-1][1].start)},l={type:"chunkString",contentType:"string",start:Object.assign({},a.start),end:Object.assign({},a.end)},u=[e[n+1],e[n+2],["enter",r,t],e[n+3],e[n+4],["enter",i,t],["exit",i,t],["enter",a,t],["enter",l,t],["exit",l,t],["exit",a,t],e[e.length-2],e[e.length-1],["exit",r,t]];return e.splice(n,e.length-n+1,...u),e}function hB(e,t,n){const r=this,i=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let a=0,l;return u;function u(p){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(p),e.exit("gfmFootnoteCallLabelMarker"),c}function c(p){return p!==94?n(p):(e.enter("gfmFootnoteCallMarker"),e.consume(p),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",f)}function f(p){if(a>999||p===93&&!l||p===null||p===91||Xe(p))return n(p);if(p===93){e.exit("chunkString");const g=e.exit("gfmFootnoteCallString");return i.includes(pr(r.sliceSerialize(g)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(p),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),t):n(p)}return Xe(p)||(l=!0),a++,e.consume(p),p===92?d:f}function d(p){return p===91||p===92||p===93?(e.consume(p),a++,f):f(p)}}function pB(e,t,n){const r=this,i=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let a,l=0,u;return c;function c(x){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(x),e.exit("gfmFootnoteDefinitionLabelMarker"),f}function f(x){return x===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(x),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",d):n(x)}function d(x){if(l>999||x===93&&!u||x===null||x===91||Xe(x))return n(x);if(x===93){e.exit("chunkString");const S=e.exit("gfmFootnoteDefinitionLabelString");return a=pr(r.sliceSerialize(S)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(x),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),g}return Xe(x)||(u=!0),l++,e.consume(x),x===92?p:d}function p(x){return x===91||x===92||x===93?(e.consume(x),l++,d):d(x)}function g(x){return x===58?(e.enter("definitionMarker"),e.consume(x),e.exit("definitionMarker"),i.includes(a)||i.push(a),$e(e,y,"gfmFootnoteDefinitionWhitespace")):n(x)}function y(x){return t(x)}}function mB(e,t,n){return e.check(Os,t,e.attempt(uB,t,n))}function gB(e){e.exit("gfmFootnoteDefinition")}function vB(e,t,n){const r=this;return $e(e,i,"gfmFootnoteDefinitionIndent",5);function i(a){const l=r.events[r.events.length-1];return l&&l[1].type==="gfmFootnoteDefinitionIndent"&&l[2].sliceSerialize(l[1],!0).length===4?t(a):n(a)}}function yB(e){let n=(e||{}).singleTilde;const r={name:"strikethrough",tokenize:a,resolveAll:i};return n==null&&(n=!0),{text:{126:r},insideSpan:{null:[r]},attentionMarkers:{null:[126]}};function i(l,u){let c=-1;for(;++c1?c(x):(l.consume(x),p++,y);if(p<2&&!n)return c(x);const w=l.exit("strikethroughSequenceTemporary"),P=_o(x);return w._open=!P||P===2&&!!S,w._close=!S||S===2&&!!P,u(x)}}}class xB{constructor(){this.map=[]}add(t,n,r){bB(this,t,n,r)}consume(t){if(this.map.sort(function(a,l){return a[0]-l[0]}),this.map.length===0)return;let n=this.map.length;const r=[];for(;n>0;)n-=1,r.push(t.slice(this.map[n][0]+this.map[n][1]),this.map[n][2]),t.length=this.map[n][0];r.push(t.slice()),t.length=0;let i=r.pop();for(;i;){for(const a of i)t.push(a);i=r.pop()}this.map.length=0}}function bB(e,t,n,r){let i=0;if(!(n===0&&r.length===0)){for(;i-1;){const Y=r.events[W][1].type;if(Y==="lineEnding"||Y==="linePrefix")W--;else break}const M=W>-1?r.events[W][1].type:null,Z=M==="tableHead"||M==="tableRow"?E:c;return Z===E&&r.parser.lazy[r.now().line]?n(R):Z(R)}function c(R){return e.enter("tableHead"),e.enter("tableRow"),f(R)}function f(R){return R===124||(l=!0,a+=1),d(R)}function d(R){return R===null?n(R):Oe(R)?a>1?(a=0,r.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(R),e.exit("lineEnding"),y):n(R):Re(R)?$e(e,d,"whitespace")(R):(a+=1,l&&(l=!1,i+=1),R===124?(e.enter("tableCellDivider"),e.consume(R),e.exit("tableCellDivider"),l=!0,d):(e.enter("data"),p(R)))}function p(R){return R===null||R===124||Xe(R)?(e.exit("data"),d(R)):(e.consume(R),R===92?g:p)}function g(R){return R===92||R===124?(e.consume(R),p):p(R)}function y(R){return r.interrupt=!1,r.parser.lazy[r.now().line]?n(R):(e.enter("tableDelimiterRow"),l=!1,Re(R)?$e(e,x,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(R):x(R))}function x(R){return R===45||R===58?w(R):R===124?(l=!0,e.enter("tableCellDivider"),e.consume(R),e.exit("tableCellDivider"),S):I(R)}function S(R){return Re(R)?$e(e,w,"whitespace")(R):w(R)}function w(R){return R===58?(a+=1,l=!0,e.enter("tableDelimiterMarker"),e.consume(R),e.exit("tableDelimiterMarker"),P):R===45?(a+=1,P(R)):R===null||Oe(R)?A(R):I(R)}function P(R){return R===45?(e.enter("tableDelimiterFiller"),C(R)):I(R)}function C(R){return R===45?(e.consume(R),C):R===58?(l=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(R),e.exit("tableDelimiterMarker"),O):(e.exit("tableDelimiterFiller"),O(R))}function O(R){return Re(R)?$e(e,A,"whitespace")(R):A(R)}function A(R){return R===124?x(R):R===null||Oe(R)?!l||i!==a?I(R):(e.exit("tableDelimiterRow"),e.exit("tableHead"),t(R)):I(R)}function I(R){return n(R)}function E(R){return e.enter("tableRow"),L(R)}function L(R){return R===124?(e.enter("tableCellDivider"),e.consume(R),e.exit("tableCellDivider"),L):R===null||Oe(R)?(e.exit("tableRow"),t(R)):Re(R)?$e(e,L,"whitespace")(R):(e.enter("data"),F(R))}function F(R){return R===null||R===124||Xe(R)?(e.exit("data"),L(R)):(e.consume(R),R===92?H:F)}function H(R){return R===92||R===124?(e.consume(R),F):F(R)}}function jB(e,t){let n=-1,r=!0,i=0,a=[0,0,0,0],l=[0,0,0,0],u=!1,c=0,f,d,p;const g=new xB;for(;++nn[2]+1){const x=n[2]+1,S=n[3]-n[2]-1;e.add(x,S,[])}}e.add(n[3]+1,0,[["exit",p,t]])}return i!==void 0&&(a.end=Object.assign({},wo(t.events,i)),e.add(i,0,[["exit",a,t]]),a=void 0),a}function W1(e,t,n,r,i){const a=[],l=wo(t.events,n);i&&(i.end=Object.assign({},l),a.push(["exit",i,t])),r.end=Object.assign({},l),a.push(["exit",r,t]),e.add(n+1,0,a)}function wo(e,t){const n=e[t],r=n[0]==="enter"?"start":"end";return n[1][r]}const PB={name:"tasklistCheck",tokenize:CB};function EB(){return{text:{91:PB}}}function CB(e,t,n){const r=this;return i;function i(c){return r.previous!==null||!r._gfmTasklistFirstContentOfListItem?n(c):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(c),e.exit("taskListCheckMarker"),a)}function a(c){return Xe(c)?(e.enter("taskListCheckValueUnchecked"),e.consume(c),e.exit("taskListCheckValueUnchecked"),l):c===88||c===120?(e.enter("taskListCheckValueChecked"),e.consume(c),e.exit("taskListCheckValueChecked"),l):n(c)}function l(c){return c===93?(e.enter("taskListCheckMarker"),e.consume(c),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),u):n(c)}function u(c){return Oe(c)?t(c):Re(c)?e.check({tokenize:OB},t,n)(c):n(c)}}function OB(e,t,n){return $e(e,r,"whitespace");function r(i){return i===null?n(i):t(i)}}function NB(e){return _C([eB(),cB(),yB(e),kB(),EB()])}const AB={};function _B(e){const t=this,n=e||AB,r=t.data(),i=r.micromarkExtensions||(r.micromarkExtensions=[]),a=r.fromMarkdownExtensions||(r.fromMarkdownExtensions=[]),l=r.toMarkdownExtensions||(r.toMarkdownExtensions=[]);i.push(NB(n)),a.push(XF()),l.push(QF(n))}function IB({content:e}){return m.jsx("div",{className:"spec-markdown",children:m.jsx(y$,{remarkPlugins:[_B],components:{h3:({children:t})=>m.jsx("h3",{className:"text-lg font-semibold mt-6 mb-3 pb-2 border-b border-base-300/50 first:mt-0",children:t}),h4:({children:t})=>m.jsx("h4",{className:"text-base font-medium mt-4 mb-2 text-base-content/90",children:t}),p:({children:t})=>m.jsx("p",{className:"text-sm text-base-content/80 mb-3 leading-relaxed",children:t}),ul:({children:t})=>m.jsx("ul",{className:"text-sm space-y-1.5 mb-4 ml-1",children:t}),ol:({children:t})=>m.jsx("ol",{className:"text-sm space-y-1.5 mb-4 ml-1 list-decimal list-inside",children:t}),li:({children:t})=>m.jsxs("li",{className:"text-base-content/80 flex items-start gap-2",children:[m.jsx("span",{className:"text-primary mt-0.5 text-xs select-none",children:"▸"}),m.jsx("span",{className:"flex-1",children:t})]}),code:({className:t,children:n})=>t?m.jsx("code",{className:"block bg-base-300 p-3 rounded-lg text-xs font-mono overflow-x-auto mb-4 border border-base-content/10",children:n}):m.jsx("code",{className:"bg-base-300 text-primary px-1.5 py-0.5 rounded text-xs font-mono",children:n}),pre:({children:t})=>m.jsx("pre",{className:"bg-base-300 p-3 rounded-lg text-xs font-mono overflow-x-auto mb-4 border border-base-content/10",children:t}),strong:({children:t})=>m.jsx("strong",{className:"font-semibold text-base-content",children:t}),table:({children:t})=>m.jsx("div",{className:"overflow-x-auto mb-4",children:m.jsx("table",{className:"table table-sm w-full",children:t})}),thead:({children:t})=>m.jsx("thead",{className:"bg-base-200",children:t}),th:({children:t})=>m.jsx("th",{className:"text-left text-xs font-medium text-base-content/70 p-2",children:t}),td:({children:t})=>m.jsx("td",{className:"text-sm p-2 border-t border-base-300/50",children:t}),blockquote:({children:t})=>m.jsx("blockquote",{className:"border-l-4 border-primary/50 pl-4 py-1 my-3 text-sm text-base-content/70 italic",children:t}),hr:()=>m.jsx("hr",{className:"my-6 border-base-300"})},children:e})})}const wO={SPEC_REFRESH_INTERVAL_MS:5e3},TB={A:"lucide:file-plus",M:"lucide:file-edit",D:"lucide:file-minus"},MB={A:"text-success",M:"text-warning",D:"text-error"};function DB(){const[e,t]=k.useState(null),[n,r]=k.useState([]),[i,a]=k.useState(!0),[l,u]=k.useState(!1),[c,f]=k.useState(!1),[d,p]=k.useState(null),g=k.useCallback(async()=>{try{const C=await(await fetch("/api/worktree/status")).json();if(t(C),C.active){const A=await(await fetch("/api/worktree/diff")).json();r(A.files||[])}else r([])}catch{t(null)}finally{a(!1)}},[]);k.useEffect(()=>{g();const P=setInterval(g,wO.SPEC_REFRESH_INTERVAL_MS);return()=>clearInterval(P)},[g]);const y=async()=>{var P;if(confirm("Sync worktree changes to the base branch via squash merge?")){u(!0),p(null);try{const O=await(await fetch("/api/worktree/sync",{method:"POST"})).json();O.success?(p(`Synced ${O.files_changed} files — commit ${(P=O.commit_hash)==null?void 0:P.slice(0,7)}`),await g()):p(`Sync failed: ${O.error}`)}catch{p("Sync failed")}finally{u(!1)}}},x=async()=>{if(confirm("Discard all worktree changes? This cannot be undone.")){f(!0),p(null);try{const C=await(await fetch("/api/worktree/discard",{method:"POST"})).json();C.success?(p("Worktree discarded"),await g()):p(`Discard failed: ${C.error}`)}catch{p("Discard failed")}finally{f(!1)}}};if(i||!(e!=null&&e.active))return null;const S=n.reduce((P,C)=>P+C.additions,0),w=n.reduce((P,C)=>P+C.deletions,0);return m.jsx(wt,{children:m.jsxs(kt,{className:"p-4",children:[m.jsxs("div",{className:"flex items-center justify-between mb-3",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(se,{icon:"lucide:git-branch",size:16,className:"text-primary"}),m.jsx("span",{className:"text-sm font-medium",children:"Worktree Isolation"}),m.jsx(Te,{variant:"info",size:"xs",children:e.branch})]}),m.jsxs("div",{className:"flex items-center gap-1.5",children:[m.jsxs(Yt,{variant:"primary",size:"xs",onClick:y,disabled:l||c||n.length===0,children:[l?m.jsx(Xi,{size:"xs"}):m.jsx(se,{icon:"lucide:git-merge",size:12}),m.jsx("span",{className:"ml-1",children:"Sync"})]}),m.jsxs(Yt,{variant:"ghost",size:"xs",onClick:x,disabled:l||c,children:[c?m.jsx(Xi,{size:"xs"}):m.jsx(se,{icon:"lucide:trash-2",size:12,className:"text-error"}),m.jsx("span",{className:"ml-1",children:"Discard"})]})]})]}),m.jsxs("div",{className:"flex items-center gap-3 text-xs text-base-content/60 mb-2",children:[m.jsxs("span",{children:[n.length," file",n.length!==1?"s":""," changed"]}),S>0&&m.jsxs("span",{className:"text-success",children:["+",S]}),w>0&&m.jsxs("span",{className:"text-error",children:["-",w]}),m.jsxs("span",{className:"ml-auto",children:["base: ",m.jsx("span",{className:"font-mono text-base-content/80",children:e.baseBranch})]})]}),n.length>0&&m.jsx("div",{className:"space-y-0.5 max-h-40 overflow-y-auto",children:n.map(P=>m.jsxs("div",{className:"flex items-center gap-2 text-xs py-0.5",children:[m.jsx(se,{icon:TB[P.status]||"lucide:file",size:12,className:MB[P.status]||"text-base-content/50"}),m.jsx("span",{className:"font-mono text-base-content/80 truncate",children:P.path}),m.jsxs("span",{className:"ml-auto flex items-center gap-1 flex-shrink-0",children:[P.additions>0&&m.jsxs("span",{className:"text-success",children:["+",P.additions]}),P.deletions>0&&m.jsxs("span",{className:"text-error",children:["-",P.deletions]})]})]},P.path))}),d&&m.jsx("div",{className:`mt-2 text-xs px-2 py-1 rounded ${d.includes("failed")?"bg-error/10 text-error":"bg-success/10 text-success"}`,children:d})]})})}const q1={PENDING:{color:"warning",icon:"lucide:clock",label:"In Progress"},COMPLETE:{color:"info",icon:"lucide:check-circle",label:"Complete"},VERIFIED:{color:"success",icon:"lucide:shield-check",label:"Verified"}};function LB(e){const t=e.match(/^#\s+(.+)$/m),n=t?t[1].replace(" Implementation Plan",""):"Untitled",r=e.match(/\*\*Goal:\*\*\s*(.+?)(?:\n|$)/),i=r?r[1]:"",a=[],l=/^- \[(x| )\] Task (\d+):\s*(.+)$/gm;let u;for(;(u=l.exec(e))!==null;)a.push({number:parseInt(u[2],10),title:u[3],completed:u[1]==="x"});const c=e.match(/## Implementation Tasks\n([\s\S]*?)(?=\n## [^#]|$)/),f=c?c[1].trim():"";return{title:n,goal:i,tasks:a,implementationSection:f}}function RB(){const{selectedProject:e}=za(),[t,n]=k.useState([]),[r,i]=k.useState(null),[a,l]=k.useState(null),[u,c]=k.useState(!0),[f,d]=k.useState(!1),[p,g]=k.useState(null),[y,x]=k.useState(!1),S=e?`?project=${encodeURIComponent(e)}`:"",w=k.useRef(e);w.current!==e&&(w.current=e,i(null),l(null),g(null),c(!0));const P=k.useCallback(async()=>{var M;try{const Y=await(await fetch(`/api/plans/active${S}`)).json();if(n(Y.specs||[]),((M=Y.specs)==null?void 0:M.length)>0&&!r){const Q=Y.specs.find(he=>he.status==="PENDING"||he.status==="COMPLETE");i(Q?Q.filePath:Y.specs[0].filePath)}}catch(Z){g("Failed to load specs"),console.error("Failed to load specs:",Z)}finally{c(!1)}},[r,S]),C=k.useCallback(async(M,Z=!1)=>{Z||d(!0),g(null);try{const Y=await fetch(`/api/plan/content?path=${encodeURIComponent(M)}${e?`&project=${encodeURIComponent(e)}`:""}`);if(!Y.ok)throw new Error("Failed to load spec content");const Q=await Y.json();l(Q)}catch(Y){g("Failed to load spec content"),console.error("Failed to load spec content:",Y)}finally{Z||d(!1)}},[e]),O=k.useCallback(async M=>{if(confirm(`Delete spec "${M.split("/").pop()}"? This cannot be undone.`)){x(!0);try{if(!(await fetch(`/api/plan?path=${encodeURIComponent(M)}`,{method:"DELETE"})).ok)throw new Error("Failed to delete spec");i(null),l(null),await P()}catch(Z){g("Failed to delete spec"),console.error("Failed to delete spec:",Z)}finally{x(!1)}}},[P]);if(k.useEffect(()=>{P();const M=setInterval(()=>{P(),r&&C(r,!0)},wO.SPEC_REFRESH_INTERVAL_MS);return()=>clearInterval(M)},[P,C,r]),k.useEffect(()=>{r&&C(r)},[r,C]),u)return m.jsx("div",{className:"flex items-center justify-center h-64",children:m.jsx(Xi,{size:"lg"})});if(t.length===0)return m.jsx("div",{className:"space-y-6",children:m.jsx(wt,{children:m.jsx(kt,{children:m.jsxs("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[m.jsx(se,{icon:"lucide:file-text",size:48,className:"text-base-content/30 mb-4"}),m.jsx("h3",{className:"text-lg font-medium mb-2",children:"No Active Specs"}),m.jsxs("p",{className:"text-base-content/60 max-w-md",children:["Use ",m.jsx("code",{className:"text-primary bg-base-300 px-1 rounded",children:"/spec"})," in Claude Pilot to start a spec-driven development workflow."]})]})})})});const A=t.filter(M=>M.status==="PENDING"||M.status==="COMPLETE"),I=t.filter(M=>M.status==="VERIFIED"),E=t.find(M=>M.filePath===r),L=E?q1[E.status]:null,F=a?LB(a.content):null,H=(F==null?void 0:F.tasks.filter(M=>M.completed).length)||0,R=(F==null?void 0:F.tasks.length)||0,W=R>0?H/R*100:0;return m.jsxs("div",{className:"space-y-6",children:[m.jsxs("div",{className:"flex items-center gap-3 flex-wrap",children:[m.jsx("h1",{className:"text-2xl font-bold mr-auto",children:"Specifications"}),A.length>0&&m.jsx("div",{role:"tablist",className:"flex items-center gap-1.5 flex-shrink-0",children:A.map(M=>{const Z=r===M.filePath;return m.jsxs("button",{role:"tab","aria-selected":Z,className:`px-3 py-1.5 rounded-lg text-xs font-medium border transition-colors cursor-pointer flex items-center gap-1.5 ${Z?"bg-primary/10 border-primary/30 text-primary":"bg-base-200/60 border-base-300/50 text-base-content/70 hover:bg-base-200"}`,onClick:()=>i(M.filePath),children:[m.jsx(se,{icon:q1[M.status].icon,size:12,className:M.status==="PENDING"?"text-warning":"text-info"}),m.jsx("span",{className:"truncate max-w-32",children:M.name}),M.total>0&&m.jsxs("span",{className:"text-[10px] opacity-60",children:[M.completed,"/",M.total]})]},M.filePath)})}),I.length>0&&m.jsxs("select",{className:"select select-bordered select-sm",value:(E==null?void 0:E.status)==="VERIFIED"&&r||"",onChange:M=>i(M.target.value),children:[m.jsxs("option",{value:"",disabled:!0,children:["Archived (",I.length,")"]}),I.map(M=>{const Z=M.modifiedAt?new Date(M.modifiedAt):null,Y=Z?Z.toLocaleDateString(void 0,{month:"short",day:"numeric"}):"";return m.jsxs("option",{value:M.filePath,children:[M.name,Y?` - ${Y}`:""]},M.filePath)})]}),r&&m.jsx(_r,{text:"Delete spec",position:"bottom",children:m.jsx(Yt,{variant:"ghost",size:"sm",onClick:()=>O(r),disabled:y,children:m.jsx(se,{icon:"lucide:trash-2",size:16,className:"text-error"})})})]}),f?m.jsx("div",{className:"flex items-center justify-center py-12",children:m.jsx(Xi,{size:"md"})}):p?m.jsx(wt,{children:m.jsx(kt,{children:m.jsxs("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[m.jsx(se,{icon:"lucide:alert-circle",size:48,className:"text-error mb-4"}),m.jsx("p",{className:"text-error",children:p})]})})}):F?m.jsxs(m.Fragment,{children:[m.jsx(wt,{children:m.jsxs(kt,{className:"p-5",children:[m.jsxs("div",{className:"flex items-start justify-between mb-4",children:[m.jsxs("div",{children:[m.jsx("h2",{className:"text-xl font-semibold",children:F.title}),F.goal&&m.jsx("p",{className:"text-base-content/60 text-sm mt-1",children:F.goal})]}),L&&m.jsxs(Te,{variant:L.color,size:"sm",className:"whitespace-nowrap",children:[m.jsx(se,{icon:L.icon,size:12,className:"mr-1"}),L.label]})]}),m.jsxs("div",{className:"mb-4",children:[m.jsxs("div",{className:"flex justify-between text-sm mb-1.5",children:[m.jsx("span",{className:"text-base-content/70",children:"Progress"}),m.jsxs("span",{className:"font-medium",children:[H," / ",R," tasks"]})]}),m.jsx(tD,{value:W,max:100,variant:"primary"})]}),m.jsx("div",{className:"space-y-2",children:F.tasks.map(M=>m.jsxs("div",{className:`flex items-center gap-3 p-2 rounded-lg ${M.completed?"bg-success/10":"bg-base-200/50"}`,children:[m.jsx("div",{className:`w-5 h-5 rounded-md flex items-center justify-center ${M.completed?"bg-success text-success-content":"bg-base-300"}`,children:M.completed?m.jsx(se,{icon:"lucide:check",size:14}):m.jsx("span",{className:"text-xs text-base-content/50",children:M.number})}),m.jsxs("span",{className:`text-sm ${M.completed?"text-base-content/70":"text-base-content"}`,children:["Task ",M.number,": ",M.title]})]},M.number))}),E&&m.jsxs("div",{className:"flex items-center gap-4 mt-4 pt-4 border-t border-base-300/50 text-xs text-base-content/50",children:[E.iterations>0&&m.jsxs("div",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:repeat",size:12}),m.jsxs("span",{children:[E.iterations," iteration",E.iterations>1?"s":""]})]}),!E.approved&&E.status==="PENDING"&&m.jsx(Te,{variant:"warning",size:"xs",children:"Awaiting Approval"}),E.worktree?m.jsxs("div",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:git-branch",size:12}),m.jsx("span",{children:"Worktree"})]}):m.jsxs("div",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:git-commit",size:12}),m.jsx("span",{children:"Direct"})]}),E.modifiedAt&&m.jsxs("div",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:calendar",size:12}),m.jsx("span",{children:new Date(E.modifiedAt).toLocaleString(void 0,{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})})]}),m.jsxs("div",{className:"flex items-center gap-1 ml-auto",children:[m.jsx(se,{icon:"lucide:file",size:12}),m.jsx("span",{className:"font-mono",children:E.filePath.split("/").pop()})]})]})]})}),m.jsx(DB,{}),F.implementationSection&&m.jsx(wt,{children:m.jsxs(kt,{className:"p-6",children:[m.jsxs("h3",{className:"text-lg font-semibold mb-4 flex items-center gap-2",children:[m.jsx(se,{icon:"lucide:list-tree",size:18}),"Implementation Details"]}),m.jsx(IB,{content:F.implementationSection})]})})]}):null]})}const zB=300*1e3;function $B(){const[e,t]=k.useState([]),[n,r]=k.useState([]),[i,a]=k.useState([]),[l,u]=k.useState(!0),[c,f]=k.useState(null),[d,p]=k.useState(!0),[g,y]=k.useState(!0),x=k.useCallback(async()=>{var S,w;try{const[P,C,O]=await Promise.all([fetch("/api/usage/daily"),fetch("/api/usage/monthly"),fetch("/api/usage/models")]),[A,I,E]=await Promise.all([P.json(),C.json(),O.json()]);if(A.available===!1){p(!1),y(!1),t([]),r([]),a([]),f(null);return}p(!0);const L=(((S=A.daily)==null?void 0:S.length)??0)>0||(((w=I.monthly)==null?void 0:w.length)??0)>0;y(L),t(A.daily||[]),r(I.monthly||[]),a(E.models||[]),f(null)}catch(P){f(P instanceof Error?P.message:"Failed to load usage data"),p(!0),y(!1)}finally{u(!1)}},[]);return k.useEffect(()=>{x();const S=setInterval(x,zB);return()=>{clearInterval(S)}},[x]),{daily:e,monthly:n,models:i,isLoading:l,error:c,available:d,dataExists:g}}function Io(e){return e<1e3?e.toString():e<1e6?`${(e/1e3).toFixed(1)}k`:`${(e/1e6).toFixed(1)}M`}function FB({daily:e}){const t=e.length>0?e[e.length-1]:null,n=(t==null?void 0:t.totalCost)||0,r=(t==null?void 0:t.totalTokens)||0,i=e.filter(d=>d.totalCost>0||d.totalTokens>0),a=i.reduce((d,p)=>d+(p.totalCost||0),0),l=i.reduce((d,p)=>d+(p.totalTokens||0),0),u=i.length||1,c=a/u,f=Math.round(l/u);return m.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4",children:[m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Daily Cost"}),m.jsxs("div",{className:"stat-value text-primary",children:[n.toFixed(2),"$"]}),m.jsx("div",{className:"stat-desc",children:"Today"})]})}),m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Avg Daily Cost"}),m.jsxs("div",{className:"stat-value",children:["⌀ ",c.toFixed(2),"$"]}),m.jsxs("div",{className:"stat-desc",children:["Last ",u," working days"]})]})}),m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Daily Tokens"}),m.jsx("div",{className:"stat-value text-primary",children:Io(r)}),m.jsx("div",{className:"stat-desc",children:"Today"})]})}),m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Avg Daily Tokens"}),m.jsxs("div",{className:"stat-value",children:["⌀ ",Io(f)]}),m.jsxs("div",{className:"stat-desc",children:["Last ",u," working days"]})]})})]})}function kO(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var i=e.length;for(t=0;t{var{children:n,width:r,height:i,viewBox:a,className:l,style:u,title:c,desc:f}=e,d=VB(e,HB),p=a||{width:r,height:i,x:0,y:0},g=Ge("recharts-surface",l);return k.createElement("svg",Hg({},dn(d),{className:g,width:r,height:i,style:u,viewBox:"".concat(p.x," ").concat(p.y," ").concat(p.width," ").concat(p.height),ref:t}),k.createElement("title",null,c),k.createElement("desc",null,f),n)}),GB=["children","className"];function Vg(){return Vg=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{children:n,className:r}=e,i=YB(e,GB),a=Ge("recharts-layer",r);return k.createElement("g",Vg({className:a},dn(i),{ref:t}),n)}),EO=HE(),QB=k.createContext(null);function Je(e){return function(){return e}}const CO=Math.cos,Bc=Math.sin,br=Math.sqrt,Uc=Math.PI,qf=2*Uc,Kg=Math.PI,Gg=2*Kg,ya=1e-6,ZB=Gg-ya;function OO(e){this._+=e[0];for(let t=1,n=e.length;t=0))throw new Error(`invalid digits: ${e}`);if(t>15)return OO;const n=10**t;return function(r){this._+=r[0];for(let i=1,a=r.length;iya)if(!(Math.abs(p*c-f*d)>ya)||!a)this._append`L${this._x1=t},${this._y1=n}`;else{let y=r-l,x=i-u,S=c*c+f*f,w=y*y+x*x,P=Math.sqrt(S),C=Math.sqrt(g),O=a*Math.tan((Kg-Math.acos((S+g-w)/(2*P*C)))/2),A=O/C,I=O/P;Math.abs(A-1)>ya&&this._append`L${t+A*d},${n+A*p}`,this._append`A${a},${a},0,0,${+(p*y>d*x)},${this._x1=t+I*c},${this._y1=n+I*f}`}}arc(t,n,r,i,a,l){if(t=+t,n=+n,r=+r,l=!!l,r<0)throw new Error(`negative radius: ${r}`);let u=r*Math.cos(i),c=r*Math.sin(i),f=t+u,d=n+c,p=1^l,g=l?i-a:a-i;this._x1===null?this._append`M${f},${d}`:(Math.abs(this._x1-f)>ya||Math.abs(this._y1-d)>ya)&&this._append`L${f},${d}`,r&&(g<0&&(g=g%Gg+Gg),g>ZB?this._append`A${r},${r},0,1,${p},${t-u},${n-c}A${r},${r},0,1,${p},${this._x1=f},${this._y1=d}`:g>ya&&this._append`A${r},${r},0,${+(g>=Kg)},${p},${this._x1=t+r*Math.cos(a)},${this._y1=n+r*Math.sin(a)}`)}rect(t,n,r,i){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+n}h${r=+r}v${+i}h${-r}Z`}toString(){return this._}}function my(e){let t=3;return e.digits=function(n){if(!arguments.length)return t;if(n==null)t=null;else{const r=Math.floor(n);if(!(r>=0))throw new RangeError(`invalid digits: ${n}`);t=r}return e},()=>new e5(t)}function gy(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function NO(e){this._context=e}NO.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t);break}}};function Hf(e){return new NO(e)}function AO(e){return e[0]}function _O(e){return e[1]}function IO(e,t){var n=Je(!0),r=null,i=Hf,a=null,l=my(u);e=typeof e=="function"?e:e===void 0?AO:Je(e),t=typeof t=="function"?t:t===void 0?_O:Je(t);function u(c){var f,d=(c=gy(c)).length,p,g=!1,y;for(r==null&&(a=i(y=l())),f=0;f<=d;++f)!(f=y;--x)u.point(O[x],A[x]);u.lineEnd(),u.areaEnd()}P&&(O[g]=+e(w,g,p),A[g]=+t(w,g,p),u.point(r?+r(w,g,p):O[g],n?+n(w,g,p):A[g]))}if(C)return u=null,C+""||null}function d(){return IO().defined(i).curve(l).context(a)}return f.x=function(p){return arguments.length?(e=typeof p=="function"?p:Je(+p),r=null,f):e},f.x0=function(p){return arguments.length?(e=typeof p=="function"?p:Je(+p),f):e},f.x1=function(p){return arguments.length?(r=p==null?null:typeof p=="function"?p:Je(+p),f):r},f.y=function(p){return arguments.length?(t=typeof p=="function"?p:Je(+p),n=null,f):t},f.y0=function(p){return arguments.length?(t=typeof p=="function"?p:Je(+p),f):t},f.y1=function(p){return arguments.length?(n=p==null?null:typeof p=="function"?p:Je(+p),f):n},f.lineX0=f.lineY0=function(){return d().x(e).y(t)},f.lineY1=function(){return d().x(e).y(n)},f.lineX1=function(){return d().x(r).y(t)},f.defined=function(p){return arguments.length?(i=typeof p=="function"?p:Je(!!p),f):i},f.curve=function(p){return arguments.length?(l=p,a!=null&&(u=l(a)),f):l},f.context=function(p){return arguments.length?(p==null?a=u=null:u=l(a=p),f):a},f}class TO{constructor(t,n){this._context=t,this._x=n}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(t,n){switch(t=+t,n=+n,this._point){case 0:{this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,n,t,n):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+n)/2,t,this._y0,t,n);break}}this._x0=t,this._y0=n}}function t5(e){return new TO(e,!0)}function n5(e){return new TO(e,!1)}const vy={draw(e,t){const n=br(t/Uc);e.moveTo(n,0),e.arc(0,0,n,0,qf)}},r5={draw(e,t){const n=br(t/5)/2;e.moveTo(-3*n,-n),e.lineTo(-n,-n),e.lineTo(-n,-3*n),e.lineTo(n,-3*n),e.lineTo(n,-n),e.lineTo(3*n,-n),e.lineTo(3*n,n),e.lineTo(n,n),e.lineTo(n,3*n),e.lineTo(-n,3*n),e.lineTo(-n,n),e.lineTo(-3*n,n),e.closePath()}},MO=br(1/3),i5=MO*2,a5={draw(e,t){const n=br(t/i5),r=n*MO;e.moveTo(0,-n),e.lineTo(r,0),e.lineTo(0,n),e.lineTo(-r,0),e.closePath()}},o5={draw(e,t){const n=br(t),r=-n/2;e.rect(r,r,n,n)}},l5=.8908130915292852,DO=Bc(Uc/10)/Bc(7*Uc/10),s5=Bc(qf/10)*DO,u5=-CO(qf/10)*DO,c5={draw(e,t){const n=br(t*l5),r=s5*n,i=u5*n;e.moveTo(0,-n),e.lineTo(r,i);for(let a=1;a<5;++a){const l=qf*a/5,u=CO(l),c=Bc(l);e.lineTo(c*n,-u*n),e.lineTo(u*r-c*i,c*r+u*i)}e.closePath()}},Gp=br(3),f5={draw(e,t){const n=-br(t/(Gp*3));e.moveTo(0,n*2),e.lineTo(-Gp*n,-n),e.lineTo(Gp*n,-n),e.closePath()}},Kn=-.5,Gn=br(3)/2,Yg=1/br(12),d5=(Yg/2+1)*3,h5={draw(e,t){const n=br(t/d5),r=n/2,i=n*Yg,a=r,l=n*Yg+n,u=-a,c=l;e.moveTo(r,i),e.lineTo(a,l),e.lineTo(u,c),e.lineTo(Kn*r-Gn*i,Gn*r+Kn*i),e.lineTo(Kn*a-Gn*l,Gn*a+Kn*l),e.lineTo(Kn*u-Gn*c,Gn*u+Kn*c),e.lineTo(Kn*r+Gn*i,Kn*i-Gn*r),e.lineTo(Kn*a+Gn*l,Kn*l-Gn*a),e.lineTo(Kn*u+Gn*c,Kn*c-Gn*u),e.closePath()}};function p5(e,t){let n=null,r=my(i);e=typeof e=="function"?e:Je(e||vy),t=typeof t=="function"?t:Je(t===void 0?64:+t);function i(){let a;if(n||(n=a=r()),e.apply(this,arguments).draw(n,+t.apply(this,arguments)),a)return n=null,a+""||null}return i.type=function(a){return arguments.length?(e=typeof a=="function"?a:Je(a),i):e},i.size=function(a){return arguments.length?(t=typeof a=="function"?a:Je(+a),i):t},i.context=function(a){return arguments.length?(n=a??null,i):n},i}function Wc(){}function qc(e,t,n){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+n)/6)}function LO(e){this._context=e}LO.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:qc(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:qc(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function m5(e){return new LO(e)}function RO(e){this._context=e}RO.prototype={areaStart:Wc,areaEnd:Wc,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:qc(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function g5(e){return new RO(e)}function zO(e){this._context=e}zO.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var n=(this._x0+4*this._x1+e)/6,r=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(n,r):this._context.moveTo(n,r);break;case 3:this._point=4;default:qc(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function v5(e){return new zO(e)}function $O(e){this._context=e}$O.prototype={areaStart:Wc,areaEnd:Wc,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(e,t){e=+e,t=+t,this._point?this._context.lineTo(e,t):(this._point=1,this._context.moveTo(e,t))}};function y5(e){return new $O(e)}function H1(e){return e<0?-1:1}function V1(e,t,n){var r=e._x1-e._x0,i=t-e._x1,a=(e._y1-e._y0)/(r||i<0&&-0),l=(n-e._y1)/(i||r<0&&-0),u=(a*i+l*r)/(r+i);return(H1(a)+H1(l))*Math.min(Math.abs(a),Math.abs(l),.5*Math.abs(u))||0}function K1(e,t){var n=e._x1-e._x0;return n?(3*(e._y1-e._y0)/n-t)/2:t}function Yp(e,t,n){var r=e._x0,i=e._y0,a=e._x1,l=e._y1,u=(a-r)/3;e._context.bezierCurveTo(r+u,i+u*t,a-u,l-u*n,a,l)}function Hc(e){this._context=e}Hc.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:Yp(this,this._t0,K1(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){var n=NaN;if(e=+e,t=+t,!(e===this._x1&&t===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,Yp(this,K1(this,n=V1(this,e,t)),n);break;default:Yp(this,this._t0,n=V1(this,e,t));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=n}}};function FO(e){this._context=new BO(e)}(FO.prototype=Object.create(Hc.prototype)).point=function(e,t){Hc.prototype.point.call(this,t,e)};function BO(e){this._context=e}BO.prototype={moveTo:function(e,t){this._context.moveTo(t,e)},closePath:function(){this._context.closePath()},lineTo:function(e,t){this._context.lineTo(t,e)},bezierCurveTo:function(e,t,n,r,i,a){this._context.bezierCurveTo(t,e,r,n,a,i)}};function x5(e){return new Hc(e)}function b5(e){return new FO(e)}function UO(e){this._context=e}UO.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var e=this._x,t=this._y,n=e.length;if(n)if(this._line?this._context.lineTo(e[0],t[0]):this._context.moveTo(e[0],t[0]),n===2)this._context.lineTo(e[1],t[1]);else for(var r=G1(e),i=G1(t),a=0,l=1;l=0;--t)i[t]=(l[t]-i[t+1])/a[t];for(a[n-1]=(e[n]+i[n-1])/2,t=0;t=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var n=this._x*(1-this._t)+e*this._t;this._context.lineTo(n,this._y),this._context.lineTo(n,t)}break}}this._x=e,this._y=t}};function k5(e){return new Vf(e,.5)}function S5(e){return new Vf(e,0)}function j5(e){return new Vf(e,1)}function Aa(e,t){if((l=e.length)>1)for(var n=1,r,i,a=e[t[0]],l,u=a.length;n=0;)n[t]=t;return n}function P5(e,t){return e[t]}function E5(e){const t=[];return t.key=e,t}function C5(){var e=Je([]),t=Xg,n=Aa,r=P5;function i(a){var l=Array.from(e.apply(this,arguments),E5),u,c=l.length,f=-1,d;for(const p of a)for(u=0,++f;u0){for(var n,r,i=0,a=e[0].length,l;i0){for(var n=0,r=e[t[0]],i,a=r.length;n0)||!((a=(i=e[t[0]]).length)>0))){for(var n=0,r=1,i,a,l;r1&&arguments[1]!==void 0?arguments[1]:D5,n=10**t,r=Math.round(e*n)/n;return Object.is(r,-0)?0:r}function pt(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r{var u=n[l-1];return typeof u=="string"?i+u+a:u!==void 0?i+Ki(u)+a:i+a},"")}var jn=e=>e===0?0:e>0?1:-1,gr=e=>typeof e=="number"&&e!=+e,_a=e=>typeof e=="string"&&e.indexOf("%")===e.length-1,ge=e=>(typeof e=="number"||e instanceof Number)&&!gr(e),Dr=e=>ge(e)||typeof e=="string",L5=0,fs=e=>{var t=++L5;return"".concat(e||"").concat(t)},vr=function(t,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(!ge(t)&&typeof t!="string")return r;var a;if(_a(t)){if(n==null)return r;var l=t.indexOf("%");a=n*parseFloat(t.slice(0,l))/100}else a=+t;return gr(a)&&(a=r),i&&n!=null&&a>n&&(a=n),a},qO=e=>{if(!Array.isArray(e))return!1;for(var t=e.length,n={},r=0;rr&&(typeof t=="function"?t(r):To(r,t))===n)}var mt=e=>e===null||typeof e>"u",_s=e=>mt(e)?e:"".concat(e.charAt(0).toUpperCase()).concat(e.slice(1));function Pn(e){return e!=null}function Fa(){}var R5=["type","size","sizeType"];function Qg(){return Qg=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var t="symbol".concat(_s(e));return VO[t]||vy},H5=(e,t,n)=>{if(t==="area")return e;switch(n){case"cross":return 5*e*e/9;case"diamond":return .5*e*e/Math.sqrt(3);case"square":return e*e;case"star":{var r=18*W5;return 1.25*e*e*(Math.tan(r)-Math.tan(r*2)*Math.tan(r)**2)}case"triangle":return Math.sqrt(3)*e*e/4;case"wye":return(21-10*Math.sqrt(3))*e*e/8;default:return Math.PI*e*e/4}},V5=(e,t)=>{VO["symbol".concat(_s(e))]=t},KO=e=>{var{type:t="circle",size:n=64,sizeType:r="area"}=e,i=B5(e,R5),a=rk(rk({},i),{},{type:t,size:n,sizeType:r}),l="circle";typeof t=="string"&&(l=t);var u=()=>{var g=q5(l),y=p5().type(g).size(H5(n,r,l)),x=y();if(x!==null)return x},{className:c,cx:f,cy:d}=a,p=dn(a);return ge(f)&&ge(d)&&ge(n)?k.createElement("path",Qg({},p,{className:Ge("recharts-symbols",c),transform:"translate(".concat(f,", ").concat(d,")"),d:u()})):null};KO.registerSymbol=V5;var GO=e=>"radius"in e&&"startAngle"in e&&"endAngle"in e,wy=(e,t)=>{if(!e||typeof e=="function"||typeof e=="boolean")return null;var n=e;if(k.isValidElement(e)&&(n=e.props),typeof n!="object"&&typeof n!="function")return null;var r={};return Object.keys(n).forEach(i=>{py(i)&&(r[i]=(a=>n[i](n,a)))}),r},K5=(e,t,n)=>r=>(e(t,n,r),null),ky=(e,t,n)=>{if(e===null||typeof e!="object"&&typeof e!="function")return null;var r=null;return Object.keys(e).forEach(i=>{var a=e[i];py(i)&&typeof a=="function"&&(r||(r={}),r[i]=K5(a,t,n))}),r};function ik(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function G5(e){for(var t=1;t(l[u]===void 0&&r[u]!==void 0&&(l[u]=r[u]),l),n);return a}var rm={},im={},ak;function Z5(){return ak||(ak=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r){const i=new Map;for(let a=0;a=0}e.isLength=t})(um)),um}var uk;function Sy(){return uk||(uk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=e6();function n(r){return r!=null&&typeof r!="function"&&t.isLength(r.length)}e.isArrayLike=n})(sm)),sm}var cm={},ck;function t6(){return ck||(ck=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return typeof n=="object"&&n!==null}e.isObjectLike=t})(cm)),cm}var fk;function n6(){return fk||(fk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Sy(),n=t6();function r(i){return n.isObjectLike(i)&&t.isArrayLike(i)}e.isArrayLikeObject=r})(lm)),lm}var fm={},dm={},dk;function r6(){return dk||(dk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=by();function n(r){return function(i){return t.get(i,r)}}e.property=n})(dm)),dm}var hm={},pm={},mm={},gm={},hk;function XO(){return hk||(hk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n!==null&&(typeof n=="object"||typeof n=="function")}e.isObject=t})(gm)),gm}var vm={},pk;function QO(){return pk||(pk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n==null||typeof n!="object"&&typeof n!="function"}e.isPrimitive=t})(vm)),vm}var ym={},mk;function ZO(){return mk||(mk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r){return n===r||Number.isNaN(n)&&Number.isNaN(r)}e.isEqualsSameValueZero=t})(ym)),ym}var gk;function i6(){return gk||(gk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=XO(),n=QO(),r=ZO();function i(d,p,g){return typeof g!="function"?i(d,p,()=>{}):a(d,p,function y(x,S,w,P,C,O){const A=g(x,S,w,P,C,O);return A!==void 0?!!A:a(x,S,y,O)},new Map)}function a(d,p,g,y){if(p===d)return!0;switch(typeof p){case"object":return l(d,p,g,y);case"function":return Object.keys(p).length>0?a(d,{...p},g,y):r.isEqualsSameValueZero(d,p);default:return t.isObject(d)?typeof p=="string"?p==="":!0:r.isEqualsSameValueZero(d,p)}}function l(d,p,g,y){if(p==null)return!0;if(Array.isArray(p))return c(d,p,g,y);if(p instanceof Map)return u(d,p,g,y);if(p instanceof Set)return f(d,p,g,y);const x=Object.keys(p);if(d==null||n.isPrimitive(d))return x.length===0;if(x.length===0)return!0;if(y!=null&&y.has(p))return y.get(p)===d;y==null||y.set(p,d);try{for(let S=0;S{})}e.isMatch=n})(pm)),pm}var xm={},bm={},wm={},yk;function a6(){return yk||(yk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return Object.getOwnPropertySymbols(n).filter(r=>Object.prototype.propertyIsEnumerable.call(n,r))}e.getSymbols=t})(wm)),wm}var km={},xk;function jy(){return xk||(xk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n==null?n===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(n)}e.getTag=t})(km)),km}var Sm={},bk;function eN(){return bk||(bk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t="[object RegExp]",n="[object String]",r="[object Number]",i="[object Boolean]",a="[object Arguments]",l="[object Symbol]",u="[object Date]",c="[object Map]",f="[object Set]",d="[object Array]",p="[object Function]",g="[object ArrayBuffer]",y="[object Object]",x="[object Error]",S="[object DataView]",w="[object Uint8Array]",P="[object Uint8ClampedArray]",C="[object Uint16Array]",O="[object Uint32Array]",A="[object BigUint64Array]",I="[object Int8Array]",E="[object Int16Array]",L="[object Int32Array]",F="[object BigInt64Array]",H="[object Float32Array]",R="[object Float64Array]";e.argumentsTag=a,e.arrayBufferTag=g,e.arrayTag=d,e.bigInt64ArrayTag=F,e.bigUint64ArrayTag=A,e.booleanTag=i,e.dataViewTag=S,e.dateTag=u,e.errorTag=x,e.float32ArrayTag=H,e.float64ArrayTag=R,e.functionTag=p,e.int16ArrayTag=E,e.int32ArrayTag=L,e.int8ArrayTag=I,e.mapTag=c,e.numberTag=r,e.objectTag=y,e.regexpTag=t,e.setTag=f,e.stringTag=n,e.symbolTag=l,e.uint16ArrayTag=C,e.uint32ArrayTag=O,e.uint8ArrayTag=w,e.uint8ClampedArrayTag=P})(Sm)),Sm}var jm={},wk;function o6(){return wk||(wk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return ArrayBuffer.isView(n)&&!(n instanceof DataView)}e.isTypedArray=t})(jm)),jm}var kk;function tN(){return kk||(kk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=a6(),n=jy(),r=eN(),i=QO(),a=o6();function l(d,p){return u(d,void 0,d,new Map,p)}function u(d,p,g,y=new Map,x=void 0){const S=x==null?void 0:x(d,p,g,y);if(S!==void 0)return S;if(i.isPrimitive(d))return d;if(y.has(d))return y.get(d);if(Array.isArray(d)){const w=new Array(d.length);y.set(d,w);for(let P=0;Pt.isMatch(a,i)}e.matches=r})(hm)),hm}var Pm={},Em={},Cm={},Pk;function u6(){return Pk||(Pk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=tN(),n=jy(),r=eN();function i(a,l){return t.cloneDeepWith(a,(u,c,f,d)=>{const p=l==null?void 0:l(u,c,f,d);if(p!==void 0)return p;if(typeof a=="object"){if(n.getTag(a)===r.objectTag&&typeof a.constructor!="function"){const g={};return d.set(a,g),t.copyProperties(g,a,f,d),g}switch(Object.prototype.toString.call(a)){case r.numberTag:case r.stringTag:case r.booleanTag:{const g=new a.constructor(a==null?void 0:a.valueOf());return t.copyProperties(g,a),g}case r.argumentsTag:{const g={};return t.copyProperties(g,a),g.length=a.length,g[Symbol.iterator]=a[Symbol.iterator],g}default:return}}})}e.cloneDeepWith=i})(Cm)),Cm}var Ek;function c6(){return Ek||(Ek=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=u6();function n(r){return t.cloneDeepWith(r)}e.cloneDeep=n})(Em)),Em}var Om={},Nm={},Ck;function nN(){return Ck||(Ck=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=/^(?:0|[1-9]\d*)$/;function n(r,i=Number.MAX_SAFE_INTEGER){switch(typeof r){case"number":return Number.isInteger(r)&&r>=0&&r"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?f:u;return Tm.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:d,Tm}var Tk;function f6(){return Tk||(Tk=1,Im.exports=c6()),Im.exports}/** + */var Dk;function x6(){if(Dk)return Dm;Dk=1;var e=Fo();function t(p,g){return p===g&&(p!==0||1/p===1/g)||p!==p&&g!==g}var n=typeof Object.is=="function"?Object.is:t,r=e.useState,i=e.useEffect,a=e.useLayoutEffect,l=e.useDebugValue;function u(p,g){var y=g(),x=r({inst:{value:y,getSnapshot:g}}),S=x[0].inst,w=x[1];return a(function(){S.value=y,S.getSnapshot=g,c(S)&&w({inst:S})},[p,y,g]),i(function(){return c(S)&&w({inst:S}),p(function(){c(S)&&w({inst:S})})},[p]),l(y),y}function c(p){var g=p.getSnapshot;p=p.value;try{var y=g();return!n(p,y)}catch{return!0}}function f(p,g){return g()}var d=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?f:u;return Dm.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:d,Dm}var Lk;function b6(){return Lk||(Lk=1,Mm.exports=x6()),Mm.exports}/** * @license React * use-sync-external-store-shim/with-selector.production.js * @@ -81,39 +81,39 @@ Error generating stack: `+j.message+` * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var Dk;function d6(){if(Dk)return _m;Dk=1;var e=$o(),t=f6();function n(f,d){return f===d&&(f!==0||1/f===1/d)||f!==f&&d!==d}var r=typeof Object.is=="function"?Object.is:n,i=t.useSyncExternalStore,a=e.useRef,l=e.useEffect,u=e.useMemo,c=e.useDebugValue;return _m.useSyncExternalStoreWithSelector=function(f,d,p,g,y){var b=a(null);if(b.current===null){var S={hasValue:!1,value:null};b.current=S}else S=b.current;b=u(function(){function P(E){if(!C){if(C=!0,O=E,E=g(E),y!==void 0&&S.hasValue){var L=S.value;if(y(L,E))return A=L}return A=E}if(L=A,r(O,E))return L;var F=g(E);return y!==void 0&&y(L,F)?(O=E,L):(O=E,A=F)}var C=!1,O,A,I=p===void 0?null:p;return[function(){return P(d())},I===null?void 0:function(){return P(I())}]},[d,p,g,y]);var w=i(f,b[0],b[1]);return l(function(){S.hasValue=!0,S.value=w},[w]),c(w),w},_m}var Mk;function h6(){return Mk||(Mk=1,Am.exports=d6()),Am.exports}var p6=h6(),Sy=k.createContext(null),m6=e=>e,yt=()=>{var e=k.useContext(Sy);return e?e.store.dispatch:m6},Nc=()=>{},g6=()=>Nc,v6=(e,t)=>e===t;function Pe(e){var t=k.useContext(Sy),n=k.useMemo(()=>t?r=>{if(r!=null)return e(r)}:Nc,[t,e]);return p6.useSyncExternalStoreWithSelector(t?t.subscription.addNestedSub:g6,t?t.store.getState:Nc,t?t.store.getState:Nc,n,v6)}function y6(e,t=`expected a function, instead received ${typeof e}`){if(typeof e!="function")throw new TypeError(t)}function x6(e,t=`expected an object, instead received ${typeof e}`){if(typeof e!="object")throw new TypeError(t)}function b6(e,t="expected all items to be functions, instead received the following types: "){if(!e.every(n=>typeof n=="function")){const n=e.map(r=>typeof r=="function"?`function ${r.name||"unnamed"}()`:typeof r).join(", ");throw new TypeError(`${t}[${n}]`)}}var Lk=e=>Array.isArray(e)?e:[e];function w6(e){const t=Array.isArray(e[0])?e[0]:e;return b6(t,"createSelector expects all input-selectors to be functions, but received the following types: "),t}function k6(e,t){const n=[],{length:r}=e;for(let i=0;i{n=cc(),l.resetResultsCount()},l.resultsCount=()=>a,l.resetResultsCount=()=>{a=0},l}function E6(e,...t){const n=typeof e=="function"?{memoize:e,memoizeOptions:t}:e,r=(...i)=>{let a=0,l=0,u,c={},f=i.pop();typeof f=="object"&&(c=f,f=i.pop()),y6(f,`createSelector expects an output function after the inputs, but received: [${typeof f}]`);const d={...n,...c},{memoize:p,memoizeOptions:g=[],argsMemoize:y=ZO,argsMemoizeOptions:b=[]}=d,S=Lk(g),w=Lk(b),P=w6(i),C=p(function(){return a++,f.apply(null,arguments)},...S),O=y(function(){l++;const I=k6(P,arguments);return u=C.apply(null,I),u},...w);return Object.assign(O,{resultFunc:f,memoizedResultFunc:C,dependencies:P,dependencyRecomputations:()=>l,resetDependencyRecomputations:()=>{l=0},lastResult:()=>u,recomputations:()=>a,resetRecomputations:()=>{a=0},memoize:p,argsMemoize:y})};return Object.assign(r,{withTypes:()=>r}),r}var G=E6(ZO),C6=Object.assign((e,t=G)=>{x6(e,`createStructuredSelector expects first argument to be an object where each property is a selector, instead received a ${typeof e}`);const n=Object.keys(e),r=n.map(a=>e[a]);return t(r,(...a)=>a.reduce((l,u,c)=>(l[n[c]]=u,l),{}))},{withTypes:()=>C6}),Dm={},Mm={},Lm={},zk;function O6(){return zk||(zk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return typeof r=="symbol"?1:r===null?2:r===void 0?3:r!==r?4:0}const n=(r,i,a)=>{if(r!==i){const l=t(r),u=t(i);if(l===u&&l===0){if(ri)return a==="desc"?-1:1}return a==="desc"?u-l:l-u}return 0};e.compareValues=n})(Lm)),Lm}var Rm={},zm={},$k;function JO(){return $k||($k=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return typeof n=="symbol"||n instanceof Symbol}e.isSymbol=t})(zm)),zm}var Fk;function N6(){return Fk||(Fk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=JO(),n=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,r=/^\w*$/;function i(a,l){return Array.isArray(a)?!1:typeof a=="number"||typeof a=="boolean"||a==null||t.isSymbol(a)?!0:typeof a=="string"&&(r.test(a)||!n.test(a))||l!=null&&Object.hasOwn(l,a)}e.isKey=i})(Rm)),Rm}var Bk;function A6(){return Bk||(Bk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=O6(),n=N6(),r=vy();function i(a,l,u,c){if(a==null)return[];u=c?void 0:u,Array.isArray(a)||(a=Object.values(a)),Array.isArray(l)||(l=l==null?[null]:[l]),l.length===0&&(l=[null]),Array.isArray(u)||(u=u==null?[]:[u]),u=u.map(y=>String(y));const f=(y,b)=>{let S=y;for(let w=0;wb==null||y==null?b:typeof y=="object"&&"key"in y?Object.hasOwn(b,y.key)?b[y.key]:f(b,y.path):typeof y=="function"?y(b):Array.isArray(y)?f(b,y):typeof b=="object"?b[y]:b,p=l.map(y=>(Array.isArray(y)&&y.length===1&&(y=y[0]),y==null||typeof y=="function"||Array.isArray(y)||n.isKey(y)?y:{key:y,path:r.toPath(y)}));return a.map(y=>({original:y,criteria:p.map(b=>d(b,y))})).slice().sort((y,b)=>{for(let S=0;Sy.original)}e.orderBy=i})(Mm)),Mm}var $m={},Uk;function _6(){return Uk||(Uk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r=1){const i=[],a=Math.floor(r),l=(u,c)=>{for(let f=0;f1&&r.isIterateeCall(a,l[0],l[1])?l=[]:u>2&&r.isIterateeCall(l[0],l[1],l[2])&&(l=[l[0]]),t.orderBy(a,n.flatten(l),["asc"])}e.sortBy=i})(Dm)),Dm}var Bm,Hk;function T6(){return Hk||(Hk=1,Bm=I6().sortBy),Bm}var D6=T6();const Vf=yr(D6);var tN=e=>e.legend.settings,M6=e=>e.legend.size,L6=e=>e.legend.payload;G([L6,tN],(e,t)=>{var{itemSorter:n}=t,r=e.flat(1);return n?Vf(r,n):r});var fc=1;function R6(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],[t,n]=k.useState({height:0,left:0,top:0,width:0}),r=k.useCallback(i=>{if(i!=null){var a=i.getBoundingClientRect(),l={height:a.height,left:a.left,top:a.top,width:a.width};(Math.abs(l.height-t.height)>fc||Math.abs(l.left-t.left)>fc||Math.abs(l.top-t.top)>fc||Math.abs(l.width-t.width)>fc)&&n({height:l.height,left:l.left,top:l.top,width:l.width})}},[t.width,t.height,t.top,t.left,...e]);return[t,r]}function Kt(e){return`Minified Redux error #${e}; visit https://redux.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var z6=typeof Symbol=="function"&&Symbol.observable||"@@observable",Vk=z6,Um=()=>Math.random().toString(36).substring(7).split("").join("."),$6={INIT:`@@redux/INIT${Um()}`,REPLACE:`@@redux/REPLACE${Um()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${Um()}`},Hc=$6;function jy(e){if(typeof e!="object"||e===null)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t||Object.getPrototypeOf(e)===null}function nN(e,t,n){if(typeof e!="function")throw new Error(Kt(2));if(typeof t=="function"&&typeof n=="function"||typeof n=="function"&&typeof arguments[3]=="function")throw new Error(Kt(0));if(typeof t=="function"&&typeof n>"u"&&(n=t,t=void 0),typeof n<"u"){if(typeof n!="function")throw new Error(Kt(1));return n(nN)(e,t)}let r=e,i=t,a=new Map,l=a,u=0,c=!1;function f(){l===a&&(l=new Map,a.forEach((w,P)=>{l.set(P,w)}))}function d(){if(c)throw new Error(Kt(3));return i}function p(w){if(typeof w!="function")throw new Error(Kt(4));if(c)throw new Error(Kt(5));let P=!0;f();const C=u++;return l.set(C,w),function(){if(P){if(c)throw new Error(Kt(6));P=!1,f(),l.delete(C),a=null}}}function g(w){if(!jy(w))throw new Error(Kt(7));if(typeof w.type>"u")throw new Error(Kt(8));if(typeof w.type!="string")throw new Error(Kt(17));if(c)throw new Error(Kt(9));try{c=!0,i=r(i,w)}finally{c=!1}return(a=l).forEach(C=>{C()}),w}function y(w){if(typeof w!="function")throw new Error(Kt(10));r=w,g({type:Hc.REPLACE})}function b(){const w=p;return{subscribe(P){if(typeof P!="object"||P===null)throw new Error(Kt(11));function C(){const A=P;A.next&&A.next(d())}return C(),{unsubscribe:w(C)}},[Vk](){return this}}}return g({type:Hc.INIT}),{dispatch:g,subscribe:p,getState:d,replaceReducer:y,[Vk]:b}}function F6(e){Object.keys(e).forEach(t=>{const n=e[t];if(typeof n(void 0,{type:Hc.INIT})>"u")throw new Error(Kt(12));if(typeof n(void 0,{type:Hc.PROBE_UNKNOWN_ACTION()})>"u")throw new Error(Kt(13))})}function rN(e){const t=Object.keys(e),n={};for(let a=0;a"u")throw u&&u.type,new Error(Kt(14));f[p]=b,c=c||b!==y}return c=c||r.length!==Object.keys(l).length,c?f:l}}function Vc(...e){return e.length===0?t=>t:e.length===1?e[0]:e.reduce((t,n)=>(...r)=>t(n(...r)))}function B6(...e){return t=>(n,r)=>{const i=t(n,r);let a=()=>{throw new Error(Kt(15))};const l={getState:i.getState,dispatch:(c,...f)=>a(c,...f)},u=e.map(c=>c(l));return a=Vc(...u)(i.dispatch),{...i,dispatch:a}}}function iN(e){return jy(e)&&"type"in e&&typeof e.type=="string"}var aN=Symbol.for("immer-nothing"),Kk=Symbol.for("immer-draftable"),pn=Symbol.for("immer-state");function cr(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var Ln=Object,To=Ln.getPrototypeOf,Kc="constructor",Kf="prototype",Xg="configurable",Gc="enumerable",Ac="writable",fs="value",ri=e=>!!e&&!!e[pn];function vr(e){var t;return e?oN(e)||Yf(e)||!!e[Kk]||!!((t=e[Kc])!=null&&t[Kk])||Xf(e)||Qf(e):!1}var U6=Ln[Kf][Kc].toString(),Gk=new WeakMap;function oN(e){if(!e||!Py(e))return!1;const t=To(e);if(t===null||t===Ln[Kf])return!0;const n=Ln.hasOwnProperty.call(t,Kc)&&t[Kc];if(n===Object)return!0;if(!wo(n))return!1;let r=Gk.get(n);return r===void 0&&(r=Function.toString.call(n),Gk.set(n,r)),r===U6}function Gf(e,t,n=!0){_s(e)===0?(n?Reflect.ownKeys(e):Ln.keys(e)).forEach(i=>{t(i,e[i],e)}):e.forEach((r,i)=>t(i,r,e))}function _s(e){const t=e[pn];return t?t.type_:Yf(e)?1:Xf(e)?2:Qf(e)?3:0}var Yk=(e,t,n=_s(e))=>n===2?e.has(t):Ln[Kf].hasOwnProperty.call(e,t),Qg=(e,t,n=_s(e))=>n===2?e.get(t):e[t],Yc=(e,t,n,r=_s(e))=>{r===2?e.set(t,n):r===3?e.add(n):e[t]=n};function W6(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}var Yf=Array.isArray,Xf=e=>e instanceof Map,Qf=e=>e instanceof Set,Py=e=>typeof e=="object",wo=e=>typeof e=="function",Wm=e=>typeof e=="boolean";function q6(e){const t=+e;return Number.isInteger(t)&&String(t)===e}var Qr=e=>e.copy_||e.base_,Ey=e=>e.modified_?e.copy_:e.base_;function Zg(e,t){if(Xf(e))return new Map(e);if(Qf(e))return new Set(e);if(Yf(e))return Array[Kf].slice.call(e);const n=oN(e);if(t===!0||t==="class_only"&&!n){const r=Ln.getOwnPropertyDescriptors(e);delete r[pn];let i=Reflect.ownKeys(r);for(let a=0;a1&&Ln.defineProperties(e,{set:dc,add:dc,clear:dc,delete:dc}),Ln.freeze(e),t&&Gf(e,(n,r)=>{Cy(r,!0)},!1)),e}function H6(){cr(2)}var dc={[fs]:H6};function Zf(e){return e===null||!Py(e)?!0:Ln.isFrozen(e)}var Xc="MapSet",Jg="Patches",Xk="ArrayMethods",lN={};function _a(e){const t=lN[e];return t||cr(0,e),t}var Qk=e=>!!lN[e],ds,sN=()=>ds,V6=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:Qk(Xc)?_a(Xc):void 0,arrayMethodsPlugin_:Qk(Xk)?_a(Xk):void 0});function Zk(e,t){t&&(e.patchPlugin_=_a(Jg),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function ev(e){tv(e),e.drafts_.forEach(K6),e.drafts_=null}function tv(e){e===ds&&(ds=e.parent_)}var Jk=e=>ds=V6(ds,e);function K6(e){const t=e[pn];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function eS(e,t){t.unfinalizedDrafts_=t.drafts_.length;const n=t.drafts_[0];if(e!==void 0&&e!==n){n[pn].modified_&&(ev(t),cr(4)),vr(e)&&(e=tS(t,e));const{patchPlugin_:i}=t;i&&i.generateReplacementPatches_(n[pn].base_,e,t)}else e=tS(t,n);return G6(t,e,!0),ev(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==aN?e:void 0}function tS(e,t){if(Zf(t))return t;const n=t[pn];if(!n)return Qc(t,e.handledSet_,e);if(!Jf(n,e))return t;if(!n.modified_)return n.base_;if(!n.finalized_){const{callbacks_:r}=n;if(r)for(;r.length>0;)r.pop()(e);fN(n,e)}return n.copy_}function G6(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&Cy(t,n)}function uN(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var Jf=(e,t)=>e.scope_===t,Y6=[];function cN(e,t,n,r){const i=Qr(e),a=e.type_;if(r!==void 0&&Qg(i,r,a)===t){Yc(i,r,n,a);return}if(!e.draftLocations_){const u=e.draftLocations_=new Map;Gf(i,(c,f)=>{if(ri(f)){const d=u.get(f)||[];d.push(c),u.set(f,d)}})}const l=e.draftLocations_.get(t)??Y6;for(const u of l)Yc(i,u,n,a)}function X6(e,t,n){e.callbacks_.push(function(i){var u;const a=t;if(!a||!Jf(a,i))return;(u=i.mapSetPlugin_)==null||u.fixSetContents(a);const l=Ey(a);cN(e,a.draft_??a,l,n),fN(a,i)})}function fN(e,t){var r;if(e.modified_&&!e.finalized_&&(e.type_===3||e.type_===1&&e.allIndicesReassigned_||(((r=e.assigned_)==null?void 0:r.size)??0)>0)){const{patchPlugin_:i}=t;if(i){const a=i.getPath(e);a&&i.generatePatches_(e,a,t)}uN(e)}}function Q6(e,t,n){const{scope_:r}=e;if(ri(n)){const i=n[pn];Jf(i,r)&&i.callbacks_.push(function(){_c(e);const l=Ey(i);cN(e,n,l,t)})}else vr(n)&&e.callbacks_.push(function(){const a=Qr(e);e.type_===3?a.has(n)&&Qc(n,r.handledSet_,r):Qg(a,t,e.type_)===n&&r.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&Qc(Qg(e.copy_,t,e.type_),r.handledSet_,r)})}function Qc(e,t,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||ri(e)||t.has(e)||!vr(e)||Zf(e)||(t.add(e),Gf(e,(r,i)=>{if(ri(i)){const a=i[pn];if(Jf(a,n)){const l=Ey(a);Yc(e,r,l,e.type_),uN(a)}}else vr(i)&&Qc(i,t,n)})),e}function Z6(e,t){const n=Yf(e),r={type_:n?1:0,scope_:t?t.scope_:sN(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let i=r,a=Zc;n&&(i=[r],a=hs);const{revoke:l,proxy:u}=Proxy.revocable(i,a);return r.draft_=u,r.revoke_=l,[u,r]}var Zc={get(e,t){if(t===pn)return e;let n=e.scope_.arrayMethodsPlugin_;const r=e.type_===1&&typeof t=="string";if(r&&n!=null&&n.isArrayOperationMethod(t))return n.createMethodInterceptor(e,t);const i=Qr(e);if(!Yk(i,t,e.type_))return J6(e,i,t);const a=i[t];if(e.finalized_||!vr(a)||r&&e.operationMethod&&(n!=null&&n.isMutatingArrayMethod(e.operationMethod))&&q6(t))return a;if(a===qm(e.base_,t)){_c(e);const l=e.type_===1?+t:t,u=rv(e.scope_,a,e,l);return e.copy_[l]=u}return a},has(e,t){return t in Qr(e)},ownKeys(e){return Reflect.ownKeys(Qr(e))},set(e,t,n){const r=dN(Qr(e),t);if(r!=null&&r.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){const i=qm(Qr(e),t),a=i==null?void 0:i[pn];if(a&&a.base_===n)return e.copy_[t]=n,e.assigned_.set(t,!1),!0;if(W6(n,i)&&(n!==void 0||Yk(e.base_,t,e.type_)))return!0;_c(e),nv(e)}return e.copy_[t]===n&&(n!==void 0||t in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=n,e.assigned_.set(t,!0),Q6(e,t,n)),!0},deleteProperty(e,t){return _c(e),qm(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),nv(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const n=Qr(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{[Ac]:!0,[Xg]:e.type_!==1||t!=="length",[Gc]:r[Gc],[fs]:n[t]}},defineProperty(){cr(11)},getPrototypeOf(e){return To(e.base_)},setPrototypeOf(){cr(12)}},hs={};for(let e in Zc){let t=Zc[e];hs[e]=function(){const n=arguments;return n[0]=n[0][0],t.apply(this,n)}}hs.deleteProperty=function(e,t){return hs.set.call(this,e,t,void 0)};hs.set=function(e,t,n){return Zc.set.call(this,e[0],t,n,e[0])};function qm(e,t){const n=e[pn];return(n?Qr(n):e)[t]}function J6(e,t,n){var i;const r=dN(t,n);return r?fs in r?r[fs]:(i=r.get)==null?void 0:i.call(e.draft_):void 0}function dN(e,t){if(!(t in e))return;let n=To(e);for(;n;){const r=Object.getOwnPropertyDescriptor(n,t);if(r)return r;n=To(n)}}function nv(e){e.modified_||(e.modified_=!0,e.parent_&&nv(e.parent_))}function _c(e){e.copy_||(e.assigned_=new Map,e.copy_=Zg(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var eU=class{constructor(t){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(n,r,i)=>{if(wo(n)&&!wo(r)){const l=r;r=n;const u=this;return function(f=l,...d){return u.produce(f,p=>r.call(this,p,...d))}}wo(r)||cr(6),i!==void 0&&!wo(i)&&cr(7);let a;if(vr(n)){const l=Jk(this),u=rv(l,n,void 0);let c=!0;try{a=r(u),c=!1}finally{c?ev(l):tv(l)}return Zk(l,i),eS(a,l)}else if(!n||!Py(n)){if(a=r(n),a===void 0&&(a=n),a===aN&&(a=void 0),this.autoFreeze_&&Cy(a,!0),i){const l=[],u=[];_a(Jg).generateReplacementPatches_(n,a,{patches_:l,inversePatches_:u}),i(l,u)}return a}else cr(1,n)},this.produceWithPatches=(n,r)=>{if(wo(n))return(u,...c)=>this.produceWithPatches(u,f=>n(f,...c));let i,a;return[this.produce(n,r,(u,c)=>{i=u,a=c}),i,a]},Wm(t==null?void 0:t.autoFreeze)&&this.setAutoFreeze(t.autoFreeze),Wm(t==null?void 0:t.useStrictShallowCopy)&&this.setUseStrictShallowCopy(t.useStrictShallowCopy),Wm(t==null?void 0:t.useStrictIteration)&&this.setUseStrictIteration(t.useStrictIteration)}createDraft(t){vr(t)||cr(8),ri(t)&&(t=pr(t));const n=Jk(this),r=rv(n,t,void 0);return r[pn].isManual_=!0,tv(n),r}finishDraft(t,n){const r=t&&t[pn];(!r||!r.isManual_)&&cr(9);const{scope_:i}=r;return Zk(i,n),eS(void 0,i)}setAutoFreeze(t){this.autoFreeze_=t}setUseStrictShallowCopy(t){this.useStrictShallowCopy_=t}setUseStrictIteration(t){this.useStrictIteration_=t}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(t,n){let r;for(r=n.length-1;r>=0;r--){const a=n[r];if(a.path.length===0&&a.op==="replace"){t=a.value;break}}r>-1&&(n=n.slice(r+1));const i=_a(Jg).applyPatches_;return ri(t)?i(t,n):this.produce(t,a=>i(a,n))}};function rv(e,t,n,r){const[i,a]=Xf(t)?_a(Xc).proxyMap_(t,n):Qf(t)?_a(Xc).proxySet_(t,n):Z6(t,n);return((n==null?void 0:n.scope_)??sN()).drafts_.push(i),a.callbacks_=(n==null?void 0:n.callbacks_)??[],a.key_=r,n&&r!==void 0?X6(n,a,r):a.callbacks_.push(function(c){var d;(d=c.mapSetPlugin_)==null||d.fixSetContents(a);const{patchPlugin_:f}=c;a.modified_&&f&&f.generatePatches_(a,[],c)}),i}function pr(e){return ri(e)||cr(10,e),hN(e)}function hN(e){if(!vr(e)||Zf(e))return e;const t=e[pn];let n,r=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=Zg(e,t.scope_.immer_.useStrictShallowCopy_),r=t.scope_.immer_.shouldUseStrictIteration()}else n=Zg(e,!0);return Gf(n,(i,a)=>{Yc(n,i,hN(a))},r),t&&(t.finalized_=!1),n}var tU=new eU,pN=tU.produce;function mN(e){return({dispatch:n,getState:r})=>i=>a=>typeof a=="function"?a(n,r,e):i(a)}var nU=mN(),rU=mN,iU=typeof window<"u"&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(arguments.length!==0)return typeof arguments[0]=="object"?Vc:Vc.apply(null,arguments)};function Jn(e,t){function n(...r){if(t){let i=t(...r);if(!i)throw new Error(zn(0));return{type:e,payload:i.payload,..."meta"in i&&{meta:i.meta},..."error"in i&&{error:i.error}}}return{type:e,payload:r[0]}}return n.toString=()=>`${e}`,n.type=e,n.match=r=>iN(r)&&r.type===e,n}var gN=class Zl extends Array{constructor(...t){super(...t),Object.setPrototypeOf(this,Zl.prototype)}static get[Symbol.species](){return Zl}concat(...t){return super.concat.apply(this,t)}prepend(...t){return t.length===1&&Array.isArray(t[0])?new Zl(...t[0].concat(this)):new Zl(...t.concat(this))}};function nS(e){return vr(e)?pN(e,()=>{}):e}function hc(e,t,n){return e.has(t)?e.get(t):e.set(t,n(t)).get(t)}function aU(e){return typeof e=="boolean"}var oU=()=>function(t){const{thunk:n=!0,immutableCheck:r=!0,serializableCheck:i=!0,actionCreatorCheck:a=!0}=t??{};let l=new gN;return n&&(aU(n)?l.push(nU):l.push(rU(n.extraArgument))),l},vN="RTK_autoBatch",at=()=>e=>({payload:e,meta:{[vN]:!0}}),rS=e=>t=>{setTimeout(t,e)},yN=(e={type:"raf"})=>t=>(...n)=>{const r=t(...n);let i=!0,a=!1,l=!1;const u=new Set,c=e.type==="tick"?queueMicrotask:e.type==="raf"?typeof window<"u"&&window.requestAnimationFrame?window.requestAnimationFrame:rS(10):e.type==="callback"?e.queueNotification:rS(e.timeout),f=()=>{l=!1,a&&(a=!1,u.forEach(d=>d()))};return Object.assign({},r,{subscribe(d){const p=()=>i&&d(),g=r.subscribe(p);return u.add(d),()=>{g(),u.delete(d)}},dispatch(d){var p;try{return i=!((p=d==null?void 0:d.meta)!=null&&p[vN]),a=!i,a&&(l||(l=!0,c(f))),r.dispatch(d)}finally{i=!0}}})},lU=e=>function(n){const{autoBatch:r=!0}=n??{};let i=new gN(e);return r&&i.push(yN(typeof r=="object"?r:void 0)),i};function sU(e){const t=oU(),{reducer:n=void 0,middleware:r,devTools:i=!0,preloadedState:a=void 0,enhancers:l=void 0}=e||{};let u;if(typeof n=="function")u=n;else if(jy(n))u=rN(n);else throw new Error(zn(1));let c;typeof r=="function"?c=r(t):c=t();let f=Vc;i&&(f=iU({trace:!1,...typeof i=="object"&&i}));const d=B6(...c),p=lU(d);let g=typeof l=="function"?l(p):p();const y=f(...g);return nN(u,a,y)}function xN(e){const t={},n=[];let r;const i={addCase(a,l){const u=typeof a=="string"?a:a.type;if(!u)throw new Error(zn(28));if(u in t)throw new Error(zn(29));return t[u]=l,i},addAsyncThunk(a,l){return l.pending&&(t[a.pending.type]=l.pending),l.rejected&&(t[a.rejected.type]=l.rejected),l.fulfilled&&(t[a.fulfilled.type]=l.fulfilled),l.settled&&n.push({matcher:a.settled,reducer:l.settled}),i},addMatcher(a,l){return n.push({matcher:a,reducer:l}),i},addDefaultCase(a){return r=a,i}};return e(i),[t,n,r]}function uU(e){return typeof e=="function"}function cU(e,t){let[n,r,i]=xN(t),a;if(uU(e))a=()=>nS(e());else{const u=nS(e);a=()=>u}function l(u=a(),c){let f=[n[c.type],...r.filter(({matcher:d})=>d(c)).map(({reducer:d})=>d)];return f.filter(d=>!!d).length===0&&(f=[i]),f.reduce((d,p)=>{if(p)if(ri(d)){const y=p(d,c);return y===void 0?d:y}else{if(vr(d))return pN(d,g=>p(g,c));{const g=p(d,c);if(g===void 0){if(d===null)return d;throw Error("A case reducer on a non-draftable value must not return undefined")}return g}}return d},u)}return l.getInitialState=a,l}var fU="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW",dU=(e=21)=>{let t="",n=e;for(;n--;)t+=fU[Math.random()*64|0];return t},hU=Symbol.for("rtk-slice-createasyncthunk");function pU(e,t){return`${e}/${t}`}function mU({creators:e}={}){var n;const t=(n=e==null?void 0:e.asyncThunk)==null?void 0:n[hU];return function(i){const{name:a,reducerPath:l=a}=i;if(!a)throw new Error(zn(11));const u=(typeof i.reducers=="function"?i.reducers(vU()):i.reducers)||{},c=Object.keys(u),f={sliceCaseReducersByName:{},sliceCaseReducersByType:{},actionCreators:{},sliceMatchers:[]},d={addCase(A,I){const E=typeof A=="string"?A:A.type;if(!E)throw new Error(zn(12));if(E in f.sliceCaseReducersByType)throw new Error(zn(13));return f.sliceCaseReducersByType[E]=I,d},addMatcher(A,I){return f.sliceMatchers.push({matcher:A,reducer:I}),d},exposeAction(A,I){return f.actionCreators[A]=I,d},exposeCaseReducer(A,I){return f.sliceCaseReducersByName[A]=I,d}};c.forEach(A=>{const I=u[A],E={reducerName:A,type:pU(a,A),createNotation:typeof i.reducers=="function"};xU(I)?wU(E,I,d,t):yU(E,I,d)});function p(){const[A={},I=[],E=void 0]=typeof i.extraReducers=="function"?xN(i.extraReducers):[i.extraReducers],L={...A,...f.sliceCaseReducersByType};return cU(i.initialState,F=>{for(let H in L)F.addCase(H,L[H]);for(let H of f.sliceMatchers)F.addMatcher(H.matcher,H.reducer);for(let H of I)F.addMatcher(H.matcher,H.reducer);E&&F.addDefaultCase(E)})}const g=A=>A,y=new Map,b=new WeakMap;let S;function w(A,I){return S||(S=p()),S(A,I)}function P(){return S||(S=p()),S.getInitialState()}function C(A,I=!1){function E(F){let H=F[A];return typeof H>"u"&&I&&(H=hc(b,E,P)),H}function L(F=g){const H=hc(y,I,()=>new WeakMap);return hc(H,F,()=>{const R={};for(const[W,D]of Object.entries(i.selectors??{}))R[W]=gU(D,F,()=>hc(b,F,P),I);return R})}return{reducerPath:A,getSelectors:L,get selectors(){return L(E)},selectSlice:E}}const O={name:a,reducer:w,actions:f.actionCreators,caseReducers:f.sliceCaseReducersByName,getInitialState:P,...C(l),injectInto(A,{reducerPath:I,...E}={}){const L=I??l;return A.inject({reducerPath:L,reducer:w},E),{...O,...C(L,!0)}}};return O}}function gU(e,t,n,r){function i(a,...l){let u=t(a);return typeof u>"u"&&r&&(u=n()),e(u,...l)}return i.unwrapped=e,i}var On=mU();function vU(){function e(t,n){return{_reducerDefinitionType:"asyncThunk",payloadCreator:t,...n}}return e.withTypes=()=>e,{reducer(t){return Object.assign({[t.name](...n){return t(...n)}}[t.name],{_reducerDefinitionType:"reducer"})},preparedReducer(t,n){return{_reducerDefinitionType:"reducerWithPrepare",prepare:t,reducer:n}},asyncThunk:e}}function yU({type:e,reducerName:t,createNotation:n},r,i){let a,l;if("reducer"in r){if(n&&!bU(r))throw new Error(zn(17));a=r.reducer,l=r.prepare}else a=r;i.addCase(e,a).exposeCaseReducer(t,a).exposeAction(t,l?Jn(e,l):Jn(e))}function xU(e){return e._reducerDefinitionType==="asyncThunk"}function bU(e){return e._reducerDefinitionType==="reducerWithPrepare"}function wU({type:e,reducerName:t},n,r,i){if(!i)throw new Error(zn(18));const{payloadCreator:a,fulfilled:l,pending:u,rejected:c,settled:f,options:d}=n,p=i(e,a,d);r.exposeAction(t,p),l&&r.addCase(p.fulfilled,l),u&&r.addCase(p.pending,u),c&&r.addCase(p.rejected,c),f&&r.addMatcher(p.settled,f),r.exposeCaseReducer(t,{fulfilled:l||pc,pending:u||pc,rejected:c||pc,settled:f||pc})}function pc(){}var kU="task",bN="listener",wN="completed",Oy="cancelled",SU=`task-${Oy}`,jU=`task-${wN}`,iv=`${bN}-${Oy}`,PU=`${bN}-${wN}`,ed=class{constructor(e){xp(this,"name","TaskAbortError");xp(this,"message");this.code=e,this.message=`${kU} ${Oy} (reason: ${e})`}},Ny=(e,t)=>{if(typeof e!="function")throw new TypeError(zn(32))},Jc=()=>{},kN=(e,t=Jc)=>(e.catch(t),e),SN=(e,t)=>(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)),ja=e=>{if(e.aborted)throw new ed(e.reason)};function jN(e,t){let n=Jc;return new Promise((r,i)=>{const a=()=>i(new ed(e.reason));if(e.aborted){a();return}n=SN(e,a),t.finally(()=>n()).then(r,i)}).finally(()=>{n=Jc})}var EU=async(e,t)=>{try{return await Promise.resolve(),{status:"ok",value:await e()}}catch(n){return{status:n instanceof ed?"cancelled":"rejected",error:n}}finally{t==null||t()}},ef=e=>t=>kN(jN(e,t).then(n=>(ja(e),n))),PN=e=>{const t=ef(e);return n=>t(new Promise(r=>setTimeout(r,n)))},{assign:Co}=Object,iS={},td="listenerMiddleware",CU=(e,t)=>{const n=r=>SN(e,()=>r.abort(e.reason));return(r,i)=>{Ny(r);const a=new AbortController;n(a);const l=EU(async()=>{ja(e),ja(a.signal);const u=await r({pause:ef(a.signal),delay:PN(a.signal),signal:a.signal});return ja(a.signal),u},()=>a.abort(jU));return i!=null&&i.autoJoin&&t.push(l.catch(Jc)),{result:ef(e)(l),cancel(){a.abort(SU)}}}},OU=(e,t)=>{const n=async(r,i)=>{ja(t);let a=()=>{};const u=[new Promise((c,f)=>{let d=e({predicate:r,effect:(p,g)=>{g.unsubscribe(),c([p,g.getState(),g.getOriginalState()])}});a=()=>{d(),f()}})];i!=null&&u.push(new Promise(c=>setTimeout(c,i,null)));try{const c=await jN(t,Promise.race(u));return ja(t),c}finally{a()}};return(r,i)=>kN(n(r,i))},EN=e=>{let{type:t,actionCreator:n,matcher:r,predicate:i,effect:a}=e;if(t)i=Jn(t).match;else if(n)t=n.type,i=n.match;else if(r)i=r;else if(!i)throw new Error(zn(21));return Ny(a),{predicate:i,type:t,effect:a}},CN=Co(e=>{const{type:t,predicate:n,effect:r}=EN(e);return{id:dU(),effect:r,type:t,predicate:n,pending:new Set,unsubscribe:()=>{throw new Error(zn(22))}}},{withTypes:()=>CN}),aS=(e,t)=>{const{type:n,effect:r,predicate:i}=EN(t);return Array.from(e.values()).find(a=>(typeof n=="string"?a.type===n:a.predicate===i)&&a.effect===r)},av=e=>{e.pending.forEach(t=>{t.abort(iv)})},NU=(e,t)=>()=>{for(const n of t.keys())av(n);e.clear()},oS=(e,t,n)=>{try{e(t,n)}catch(r){setTimeout(()=>{throw r},0)}},ON=Co(Jn(`${td}/add`),{withTypes:()=>ON}),AU=Jn(`${td}/removeAll`),NN=Co(Jn(`${td}/remove`),{withTypes:()=>NN}),_U=(...e)=>{console.error(`${td}/error`,...e)},Is=(e={})=>{const t=new Map,n=new Map,r=y=>{const b=n.get(y)??0;n.set(y,b+1)},i=y=>{const b=n.get(y)??1;b===1?n.delete(y):n.set(y,b-1)},{extra:a,onError:l=_U}=e;Ny(l);const u=y=>(y.unsubscribe=()=>t.delete(y.id),t.set(y.id,y),b=>{y.unsubscribe(),b!=null&&b.cancelActive&&av(y)}),c=y=>{const b=aS(t,y)??CN(y);return u(b)};Co(c,{withTypes:()=>c});const f=y=>{const b=aS(t,y);return b&&(b.unsubscribe(),y.cancelActive&&av(b)),!!b};Co(f,{withTypes:()=>f});const d=async(y,b,S,w)=>{const P=new AbortController,C=OU(c,P.signal),O=[];try{y.pending.add(P),r(y),await Promise.resolve(y.effect(b,Co({},S,{getOriginalState:w,condition:(A,I)=>C(A,I).then(Boolean),take:C,delay:PN(P.signal),pause:ef(P.signal),extra:a,signal:P.signal,fork:CU(P.signal,O),unsubscribe:y.unsubscribe,subscribe:()=>{t.set(y.id,y)},cancelActiveListeners:()=>{y.pending.forEach((A,I,E)=>{A!==P&&(A.abort(iv),E.delete(A))})},cancel:()=>{P.abort(iv),y.pending.delete(P)},throwIfCancelled:()=>{ja(P.signal)}})))}catch(A){A instanceof ed||oS(l,A,{raisedBy:"effect"})}finally{await Promise.all(O),P.abort(PU),i(y),y.pending.delete(P)}},p=NU(t,n);return{middleware:y=>b=>S=>{if(!iN(S))return b(S);if(ON.match(S))return c(S.payload);if(AU.match(S)){p();return}if(NN.match(S))return f(S.payload);let w=y.getState();const P=()=>{if(w===iS)throw new Error(zn(23));return w};let C;try{if(C=b(S),t.size>0){const O=y.getState(),A=Array.from(t.values());for(const I of A){let E=!1;try{E=I.predicate(S,O,w)}catch(L){E=!1,oS(l,L,{raisedBy:"predicate"})}E&&d(I,S,y,P)}}}finally{w=iS}return C},startListening:c,stopListening:f,clearListeners:p}};function zn(e){return`Minified Redux Toolkit error #${e}; visit https://redux-toolkit.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var IU={layoutType:"horizontal",width:0,height:0,margin:{top:5,right:5,bottom:5,left:5},scale:1},AN=On({name:"chartLayout",initialState:IU,reducers:{setLayout(e,t){e.layoutType=t.payload},setChartSize(e,t){e.width=t.payload.width,e.height=t.payload.height},setMargin(e,t){var n,r,i,a;e.margin.top=(n=t.payload.top)!==null&&n!==void 0?n:0,e.margin.right=(r=t.payload.right)!==null&&r!==void 0?r:0,e.margin.bottom=(i=t.payload.bottom)!==null&&i!==void 0?i:0,e.margin.left=(a=t.payload.left)!==null&&a!==void 0?a:0},setScale(e,t){e.scale=t.payload}}}),{setMargin:TU,setLayout:DU,setChartSize:MU,setScale:LU}=AN.actions,RU=AN.reducer;function _N(e,t,n){return Array.isArray(e)&&e&&t+n!==0?e.slice(t,n+1):e}function De(e){return Number.isFinite(e)}function Mr(e){return typeof e=="number"&&e>0&&Number.isFinite(e)}function lS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function ko(e){for(var t=1;t{if(t&&n){var{width:r,height:i}=n,{align:a,verticalAlign:l,layout:u}=t;if((u==="vertical"||u==="horizontal"&&l==="middle")&&a!=="center"&&ge(e[a]))return ko(ko({},e),{},{[a]:e[a]+(r||0)});if((u==="horizontal"||u==="vertical"&&a==="center")&&l!=="middle"&&ge(e[l]))return ko(ko({},e),{},{[l]:e[l]+(i||0)})}return e},zr=(e,t)=>e==="horizontal"&&t==="xAxis"||e==="vertical"&&t==="yAxis"||e==="centric"&&t==="angleAxis"||e==="radial"&&t==="radiusAxis",IN=(e,t,n,r)=>{if(r)return e.map(u=>u.coordinate);var i,a,l=e.map(u=>(u.coordinate===t&&(i=!0),u.coordinate===n&&(a=!0),u.coordinate));return i||l.push(t),a||l.push(n),l},TN=(e,t,n)=>{if(!e)return null;var{duplicateDomain:r,type:i,range:a,scale:l,realScaleType:u,isCategorical:c,categoricalDomain:f,tickCount:d,ticks:p,niceTicks:g,axisType:y}=e;if(!l)return null;var b=u==="scaleBand"&&l.bandwidth?l.bandwidth()/2:2,S=i==="category"&&l.bandwidth?l.bandwidth()/b:0;if(S=y==="angleAxis"&&a&&a.length>=2?jn(a[0]-a[1])*2*S:S,p||g){var w=(p||g||[]).map((P,C)=>{var O=r?r.indexOf(P):P,A=l.map(O);return De(A)?{coordinate:A+S,value:P,offset:S,index:C}:null}).filter(Pn);return w}return c&&f?f.map((P,C)=>{var O=l.map(P);return De(O)?{coordinate:O+S,value:P,index:C,offset:S}:null}).filter(Pn):l.ticks&&d!=null?l.ticks(d).map((P,C)=>{var O=l.map(P);return De(O)?{coordinate:O+S,value:P,index:C,offset:S}:null}).filter(Pn):l.domain().map((P,C)=>{var O=l.map(P);return De(O)?{coordinate:O+S,value:r?r[P]:P,index:C,offset:S}:null}).filter(Pn)},UU=(e,t)=>{if(!t||t.length!==2||!ge(t[0])||!ge(t[1]))return e;var n=Math.min(t[0],t[1]),r=Math.max(t[0],t[1]),i=[e[0],e[1]];return(!ge(e[0])||e[0]r)&&(i[1]=r),i[0]>r&&(i[0]=r),i[1]{var t,n=e.length;if(!(n<=0)){var r=(t=e[0])===null||t===void 0?void 0:t.length;if(!(r==null||r<=0))for(var i=0;i=0?(f[0]=a,a+=g,f[1]=a):(f[0]=l,l+=g,f[1]=l)}}}},qU=e=>{var t,n=e.length;if(!(n<=0)){var r=(t=e[0])===null||t===void 0?void 0:t.length;if(!(r==null||r<=0))for(var i=0;i=0?(c[0]=a,a+=f,c[1]=a):(c[0]=0,c[1]=0)}}}},HU={sign:WU,expand:x5,none:Na,silhouette:b5,wiggle:w5,positive:qU},VU=(e,t,n)=>{var r,i=(r=HU[n])!==null&&r!==void 0?r:Na,a=y5().keys(t).value((u,c)=>Number(St(u,c,0))).order(Gg).offset(i),l=a(e);return l.forEach((u,c)=>{u.forEach((f,d)=>{var p=St(e[d],t[c],0);Array.isArray(p)&&p.length===2&&ge(p[0])&&ge(p[1])&&(f[0]=p[0],f[1]=p[1])})}),l};function DN(e){return e==null?void 0:String(e)}function sS(e){var{axis:t,ticks:n,bandSize:r,entry:i,index:a,dataKey:l}=e;if(t.type==="category"){if(!t.allowDuplicatedCategory&&t.dataKey&&!mt(i[t.dataKey])){var u=FO(n,"value",i[t.dataKey]);if(u)return u.coordinate+r/2}return n!=null&&n[a]?n[a].coordinate+r/2:null}var c=St(i,mt(l)?t.dataKey:l),f=t.scale.map(c);return ge(f)?f:null}var uS=e=>{var{axis:t,ticks:n,offset:r,bandSize:i,entry:a,index:l}=e;if(t.type==="category")return n[l]?n[l].coordinate+r:null;var u=St(a,t.dataKey,t.scale.domain()[l]);if(mt(u))return null;var c=t.scale.map(u);return ge(c)?c-i/2+r:null},KU=e=>{var{numericAxis:t}=e,n=t.scale.domain();if(t.type==="number"){var r=Math.min(n[0],n[1]),i=Math.max(n[0],n[1]);return r<=0&&i>=0?0:i<0?i:r}return n[0]},GU=e=>{var t=e.flat(2).filter(ge);return[Math.min(...t),Math.max(...t)]},YU=e=>[e[0]===1/0?0:e[0],e[1]===-1/0?0:e[1]],XU=(e,t,n)=>{if(e!=null)return YU(Object.keys(e).reduce((r,i)=>{var a=e[i];if(!a)return r;var{stackedData:l}=a,u=l.reduce((c,f)=>{var d=_N(f,t,n),p=GU(d);return!De(p[0])||!De(p[1])?c:[Math.min(c[0],p[0]),Math.max(c[1],p[1])]},[1/0,-1/0]);return[Math.min(u[0],r[0]),Math.max(u[1],r[1])]},[1/0,-1/0]))},cS=/^dataMin[\s]*-[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,fS=/^dataMax[\s]*\+[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,Do=(e,t,n)=>{if(e&&e.scale&&e.scale.bandwidth){var r=e.scale.bandwidth();if(!n||r>0)return r}if(e&&t&&t.length>=2){for(var i=Vf(t,d=>d.coordinate),a=1/0,l=1,u=i.length;l{if(t==="horizontal")return e.chartX;if(t==="vertical")return e.chartY},ZU=(e,t)=>t==="centric"?e.angle:e.radius,fi=e=>e.layout.width,di=e=>e.layout.height,JU=e=>e.layout.scale,MN=e=>e.layout.margin,rd=G(e=>e.cartesianAxis.xAxis,e=>Object.values(e)),id=G(e=>e.cartesianAxis.yAxis,e=>Object.values(e)),e8="data-recharts-item-index",t8="data-recharts-item-id",Ts=60;function hS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function mc(e){for(var t=1;te.brush.height;function o8(e){var t=id(e);return t.reduce((n,r)=>{if(r.orientation==="left"&&!r.mirror&&!r.hide){var i=typeof r.width=="number"?r.width:Ts;return n+i}return n},0)}function l8(e){var t=id(e);return t.reduce((n,r)=>{if(r.orientation==="right"&&!r.mirror&&!r.hide){var i=typeof r.width=="number"?r.width:Ts;return n+i}return n},0)}function s8(e){var t=rd(e);return t.reduce((n,r)=>r.orientation==="top"&&!r.mirror&&!r.hide?n+r.height:n,0)}function u8(e){var t=rd(e);return t.reduce((n,r)=>r.orientation==="bottom"&&!r.mirror&&!r.hide?n+r.height:n,0)}var zt=G([fi,di,MN,a8,o8,l8,s8,u8,tN,M6],(e,t,n,r,i,a,l,u,c,f)=>{var d={left:(n.left||0)+i,right:(n.right||0)+a},p={top:(n.top||0)+l,bottom:(n.bottom||0)+u},g=mc(mc({},p),d),y=g.bottom;g.bottom+=r,g=BU(g,c,f);var b=e-g.left-g.right,S=t-g.top-g.bottom;return mc(mc({brushBottom:y},g),{},{width:Math.max(b,0),height:Math.max(S,0)})}),c8=G(zt,e=>({x:e.left,y:e.top,width:e.width,height:e.height})),Ay=G(fi,di,(e,t)=>({x:0,y:0,width:e,height:t})),f8=k.createContext(null),on=()=>k.useContext(f8)!=null,ad=e=>e.brush,od=G([ad,zt,MN],(e,t,n)=>({height:e.height,x:ge(e.x)?e.x:t.left,y:ge(e.y)?e.y:t.top+t.height+t.brushBottom-((n==null?void 0:n.bottom)||0),width:ge(e.width)?e.width:t.width})),Hm={},Vm={},Km={},pS;function d8(){return pS||(pS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r,{signal:i,edges:a}={}){let l,u=null;const c=a!=null&&a.includes("leading"),f=a==null||a.includes("trailing"),d=()=>{u!==null&&(n.apply(l,u),l=void 0,u=null)},p=()=>{f&&d(),S()};let g=null;const y=()=>{g!=null&&clearTimeout(g),g=setTimeout(()=>{g=null,p()},r)},b=()=>{g!==null&&(clearTimeout(g),g=null)},S=()=>{b(),l=void 0,u=null},w=()=>{d()},P=function(...C){if(i!=null&&i.aborted)return;l=this,u=C;const O=g==null;y(),c&&O&&d()};return P.schedule=y,P.cancel=S,P.flush=w,i==null||i.addEventListener("abort",S,{once:!0}),P}e.debounce=t})(Km)),Km}var mS;function h8(){return mS||(mS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=d8();function n(r,i=0,a={}){typeof a!="object"&&(a={});const{leading:l=!1,trailing:u=!0,maxWait:c}=a,f=Array(2);l&&(f[0]="leading"),u&&(f[1]="trailing");let d,p=null;const g=t.debounce(function(...S){d=r.apply(this,S),p=null},i,{edges:f}),y=function(...S){return c!=null&&(p===null&&(p=Date.now()),Date.now()-p>=c)?(d=r.apply(this,S),p=Date.now(),g.cancel(),g.schedule(),d):(g.apply(this,S),d)},b=()=>(g.flush(),d);return y.cancel=g.cancel,y.flush=b,y}e.debounce=n})(Vm)),Vm}var gS;function p8(){return gS||(gS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=h8();function n(r,i=0,a={}){const{leading:l=!0,trailing:u=!0}=a;return t.debounce(r,i,{leading:l,maxWait:i,trailing:u})}e.throttle=n})(Hm)),Hm}var Gm,vS;function m8(){return vS||(vS=1,Gm=p8().throttle),Gm}var g8=m8();const v8=yr(g8);var tf=function(t,n){for(var r=arguments.length,i=new Array(r>2?r-2:0),a=2;ai[l++]))}},_r={width:"100%",height:"100%",debounce:0,minWidth:0,initialDimension:{width:-1,height:-1}},LN=(e,t,n)=>{var{width:r=_r.width,height:i=_r.height,aspect:a,maxHeight:l}=n,u=Aa(r)?e:Number(r),c=Aa(i)?t:Number(i);return a&&a>0&&(u?c=u/a:c&&(u=c*a),l&&c!=null&&c>l&&(c=l)),{calculatedWidth:u,calculatedHeight:c}},y8={width:0,height:0,overflow:"visible"},x8={width:0,overflowX:"visible"},b8={height:0,overflowY:"visible"},w8={},k8=e=>{var{width:t,height:n}=e,r=Aa(t),i=Aa(n);return r&&i?y8:r?x8:i?b8:w8};function S8(e){var{width:t,height:n,aspect:r}=e,i=t,a=n;return i===void 0&&a===void 0?(i=_r.width,a=_r.height):i===void 0?i=r&&r>0?void 0:_r.width:a===void 0&&(a=r&&r>0?void 0:_r.height),{width:i,height:a}}function ov(){return ov=Object.assign?Object.assign.bind():function(e){for(var t=1;t({width:n,height:r}),[n,r]);return C8(i)?k.createElement(RN.Provider,{value:i},t):null}var _y=()=>k.useContext(RN),O8=k.forwardRef((e,t)=>{var{aspect:n,initialDimension:r=_r.initialDimension,width:i,height:a,minWidth:l=_r.minWidth,minHeight:u,maxHeight:c,children:f,debounce:d=_r.debounce,id:p,className:g,onResize:y,style:b={}}=e,S=k.useRef(null),w=k.useRef();w.current=y,k.useImperativeHandle(t,()=>S.current);var[P,C]=k.useState({containerWidth:r.width,containerHeight:r.height}),O=k.useCallback((F,H)=>{C(R=>{var W=Math.round(F),D=Math.round(H);return R.containerWidth===W&&R.containerHeight===D?R:{containerWidth:W,containerHeight:D}})},[]);k.useEffect(()=>{if(S.current==null||typeof ResizeObserver>"u")return $a;var F=D=>{var Z,Y=D[0];if(Y!=null){var{width:Q,height:he}=Y.contentRect;O(Q,he),(Z=w.current)===null||Z===void 0||Z.call(w,Q,he)}};d>0&&(F=v8(F,d,{trailing:!0,leading:!1}));var H=new ResizeObserver(F),{width:R,height:W}=S.current.getBoundingClientRect();return O(R,W),H.observe(S.current),()=>{H.disconnect()}},[O,d]);var{containerWidth:A,containerHeight:I}=P;tf(!n||n>0,"The aspect(%s) must be greater than zero.",n);var{calculatedWidth:E,calculatedHeight:L}=LN(A,I,{width:i,height:a,aspect:n,maxHeight:c});return tf(E!=null&&E>0||L!=null&&L>0,`The width(%s) and height(%s) of chart should be greater than 0, + */var Rk;function w6(){if(Rk)return Tm;Rk=1;var e=Fo(),t=b6();function n(f,d){return f===d&&(f!==0||1/f===1/d)||f!==f&&d!==d}var r=typeof Object.is=="function"?Object.is:n,i=t.useSyncExternalStore,a=e.useRef,l=e.useEffect,u=e.useMemo,c=e.useDebugValue;return Tm.useSyncExternalStoreWithSelector=function(f,d,p,g,y){var x=a(null);if(x.current===null){var S={hasValue:!1,value:null};x.current=S}else S=x.current;x=u(function(){function P(E){if(!C){if(C=!0,O=E,E=g(E),y!==void 0&&S.hasValue){var L=S.value;if(y(L,E))return A=L}return A=E}if(L=A,r(O,E))return L;var F=g(E);return y!==void 0&&y(L,F)?(O=E,L):(O=E,A=F)}var C=!1,O,A,I=p===void 0?null:p;return[function(){return P(d())},I===null?void 0:function(){return P(I())}]},[d,p,g,y]);var w=i(f,x[0],x[1]);return l(function(){S.hasValue=!0,S.value=w},[w]),c(w),w},Tm}var zk;function k6(){return zk||(zk=1,Im.exports=w6()),Im.exports}var S6=k6(),Py=k.createContext(null),j6=e=>e,yt=()=>{var e=k.useContext(Py);return e?e.store.dispatch:j6},Ac=()=>{},P6=()=>Ac,E6=(e,t)=>e===t;function Pe(e){var t=k.useContext(Py),n=k.useMemo(()=>t?r=>{if(r!=null)return e(r)}:Ac,[t,e]);return S6.useSyncExternalStoreWithSelector(t?t.subscription.addNestedSub:P6,t?t.store.getState:Ac,t?t.store.getState:Ac,n,E6)}function C6(e,t=`expected a function, instead received ${typeof e}`){if(typeof e!="function")throw new TypeError(t)}function O6(e,t=`expected an object, instead received ${typeof e}`){if(typeof e!="object")throw new TypeError(t)}function N6(e,t="expected all items to be functions, instead received the following types: "){if(!e.every(n=>typeof n=="function")){const n=e.map(r=>typeof r=="function"?`function ${r.name||"unnamed"}()`:typeof r).join(", ");throw new TypeError(`${t}[${n}]`)}}var $k=e=>Array.isArray(e)?e:[e];function A6(e){const t=Array.isArray(e[0])?e[0]:e;return N6(t,"createSelector expects all input-selectors to be functions, but received the following types: "),t}function _6(e,t){const n=[],{length:r}=e;for(let i=0;i{n=fc(),l.resetResultsCount()},l.resultsCount=()=>a,l.resetResultsCount=()=>{a=0},l}function D6(e,...t){const n=typeof e=="function"?{memoize:e,memoizeOptions:t}:e,r=(...i)=>{let a=0,l=0,u,c={},f=i.pop();typeof f=="object"&&(c=f,f=i.pop()),C6(f,`createSelector expects an output function after the inputs, but received: [${typeof f}]`);const d={...n,...c},{memoize:p,memoizeOptions:g=[],argsMemoize:y=rN,argsMemoizeOptions:x=[]}=d,S=$k(g),w=$k(x),P=A6(i),C=p(function(){return a++,f.apply(null,arguments)},...S),O=y(function(){l++;const I=_6(P,arguments);return u=C.apply(null,I),u},...w);return Object.assign(O,{resultFunc:f,memoizedResultFunc:C,dependencies:P,dependencyRecomputations:()=>l,resetDependencyRecomputations:()=>{l=0},lastResult:()=>u,recomputations:()=>a,resetRecomputations:()=>{a=0},memoize:p,argsMemoize:y})};return Object.assign(r,{withTypes:()=>r}),r}var G=D6(rN),L6=Object.assign((e,t=G)=>{O6(e,`createStructuredSelector expects first argument to be an object where each property is a selector, instead received a ${typeof e}`);const n=Object.keys(e),r=n.map(a=>e[a]);return t(r,(...a)=>a.reduce((l,u,c)=>(l[n[c]]=u,l),{}))},{withTypes:()=>L6}),Lm={},Rm={},zm={},Bk;function R6(){return Bk||(Bk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return typeof r=="symbol"?1:r===null?2:r===void 0?3:r!==r?4:0}const n=(r,i,a)=>{if(r!==i){const l=t(r),u=t(i);if(l===u&&l===0){if(ri)return a==="desc"?-1:1}return a==="desc"?u-l:l-u}return 0};e.compareValues=n})(zm)),zm}var $m={},Fm={},Uk;function iN(){return Uk||(Uk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return typeof n=="symbol"||n instanceof Symbol}e.isSymbol=t})(Fm)),Fm}var Wk;function z6(){return Wk||(Wk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=iN(),n=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,r=/^\w*$/;function i(a,l){return Array.isArray(a)?!1:typeof a=="number"||typeof a=="boolean"||a==null||t.isSymbol(a)?!0:typeof a=="string"&&(r.test(a)||!n.test(a))||l!=null&&Object.hasOwn(l,a)}e.isKey=i})($m)),$m}var qk;function $6(){return qk||(qk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=R6(),n=z6(),r=xy();function i(a,l,u,c){if(a==null)return[];u=c?void 0:u,Array.isArray(a)||(a=Object.values(a)),Array.isArray(l)||(l=l==null?[null]:[l]),l.length===0&&(l=[null]),Array.isArray(u)||(u=u==null?[]:[u]),u=u.map(y=>String(y));const f=(y,x)=>{let S=y;for(let w=0;wx==null||y==null?x:typeof y=="object"&&"key"in y?Object.hasOwn(x,y.key)?x[y.key]:f(x,y.path):typeof y=="function"?y(x):Array.isArray(y)?f(x,y):typeof x=="object"?x[y]:x,p=l.map(y=>(Array.isArray(y)&&y.length===1&&(y=y[0]),y==null||typeof y=="function"||Array.isArray(y)||n.isKey(y)?y:{key:y,path:r.toPath(y)}));return a.map(y=>({original:y,criteria:p.map(x=>d(x,y))})).slice().sort((y,x)=>{for(let S=0;Sy.original)}e.orderBy=i})(Rm)),Rm}var Bm={},Hk;function F6(){return Hk||(Hk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r=1){const i=[],a=Math.floor(r),l=(u,c)=>{for(let f=0;f1&&r.isIterateeCall(a,l[0],l[1])?l=[]:u>2&&r.isIterateeCall(l[0],l[1],l[2])&&(l=[l[0]]),t.orderBy(a,n.flatten(l),["asc"])}e.sortBy=i})(Lm)),Lm}var Wm,Gk;function U6(){return Gk||(Gk=1,Wm=B6().sortBy),Wm}var W6=U6();const Kf=xr(W6);var oN=e=>e.legend.settings,q6=e=>e.legend.size,H6=e=>e.legend.payload;G([H6,oN],(e,t)=>{var{itemSorter:n}=t,r=e.flat(1);return n?Kf(r,n):r});var dc=1;function V6(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],[t,n]=k.useState({height:0,left:0,top:0,width:0}),r=k.useCallback(i=>{if(i!=null){var a=i.getBoundingClientRect(),l={height:a.height,left:a.left,top:a.top,width:a.width};(Math.abs(l.height-t.height)>dc||Math.abs(l.left-t.left)>dc||Math.abs(l.top-t.top)>dc||Math.abs(l.width-t.width)>dc)&&n({height:l.height,left:l.left,top:l.top,width:l.width})}},[t.width,t.height,t.top,t.left,...e]);return[t,r]}function Kt(e){return`Minified Redux error #${e}; visit https://redux.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var K6=typeof Symbol=="function"&&Symbol.observable||"@@observable",Yk=K6,qm=()=>Math.random().toString(36).substring(7).split("").join("."),G6={INIT:`@@redux/INIT${qm()}`,REPLACE:`@@redux/REPLACE${qm()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${qm()}`},Vc=G6;function Ey(e){if(typeof e!="object"||e===null)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t||Object.getPrototypeOf(e)===null}function lN(e,t,n){if(typeof e!="function")throw new Error(Kt(2));if(typeof t=="function"&&typeof n=="function"||typeof n=="function"&&typeof arguments[3]=="function")throw new Error(Kt(0));if(typeof t=="function"&&typeof n>"u"&&(n=t,t=void 0),typeof n<"u"){if(typeof n!="function")throw new Error(Kt(1));return n(lN)(e,t)}let r=e,i=t,a=new Map,l=a,u=0,c=!1;function f(){l===a&&(l=new Map,a.forEach((w,P)=>{l.set(P,w)}))}function d(){if(c)throw new Error(Kt(3));return i}function p(w){if(typeof w!="function")throw new Error(Kt(4));if(c)throw new Error(Kt(5));let P=!0;f();const C=u++;return l.set(C,w),function(){if(P){if(c)throw new Error(Kt(6));P=!1,f(),l.delete(C),a=null}}}function g(w){if(!Ey(w))throw new Error(Kt(7));if(typeof w.type>"u")throw new Error(Kt(8));if(typeof w.type!="string")throw new Error(Kt(17));if(c)throw new Error(Kt(9));try{c=!0,i=r(i,w)}finally{c=!1}return(a=l).forEach(C=>{C()}),w}function y(w){if(typeof w!="function")throw new Error(Kt(10));r=w,g({type:Vc.REPLACE})}function x(){const w=p;return{subscribe(P){if(typeof P!="object"||P===null)throw new Error(Kt(11));function C(){const A=P;A.next&&A.next(d())}return C(),{unsubscribe:w(C)}},[Yk](){return this}}}return g({type:Vc.INIT}),{dispatch:g,subscribe:p,getState:d,replaceReducer:y,[Yk]:x}}function Y6(e){Object.keys(e).forEach(t=>{const n=e[t];if(typeof n(void 0,{type:Vc.INIT})>"u")throw new Error(Kt(12));if(typeof n(void 0,{type:Vc.PROBE_UNKNOWN_ACTION()})>"u")throw new Error(Kt(13))})}function sN(e){const t=Object.keys(e),n={};for(let a=0;a"u")throw u&&u.type,new Error(Kt(14));f[p]=x,c=c||x!==y}return c=c||r.length!==Object.keys(l).length,c?f:l}}function Kc(...e){return e.length===0?t=>t:e.length===1?e[0]:e.reduce((t,n)=>(...r)=>t(n(...r)))}function X6(...e){return t=>(n,r)=>{const i=t(n,r);let a=()=>{throw new Error(Kt(15))};const l={getState:i.getState,dispatch:(c,...f)=>a(c,...f)},u=e.map(c=>c(l));return a=Kc(...u)(i.dispatch),{...i,dispatch:a}}}function uN(e){return Ey(e)&&"type"in e&&typeof e.type=="string"}var cN=Symbol.for("immer-nothing"),Xk=Symbol.for("immer-draftable"),pn=Symbol.for("immer-state");function fr(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var Ln=Object,Mo=Ln.getPrototypeOf,Gc="constructor",Gf="prototype",Zg="configurable",Yc="enumerable",_c="writable",ds="value",ii=e=>!!e&&!!e[pn];function yr(e){var t;return e?fN(e)||Xf(e)||!!e[Xk]||!!((t=e[Gc])!=null&&t[Xk])||Qf(e)||Zf(e):!1}var Q6=Ln[Gf][Gc].toString(),Qk=new WeakMap;function fN(e){if(!e||!Cy(e))return!1;const t=Mo(e);if(t===null||t===Ln[Gf])return!0;const n=Ln.hasOwnProperty.call(t,Gc)&&t[Gc];if(n===Object)return!0;if(!ko(n))return!1;let r=Qk.get(n);return r===void 0&&(r=Function.toString.call(n),Qk.set(n,r)),r===Q6}function Yf(e,t,n=!0){Is(e)===0?(n?Reflect.ownKeys(e):Ln.keys(e)).forEach(i=>{t(i,e[i],e)}):e.forEach((r,i)=>t(i,r,e))}function Is(e){const t=e[pn];return t?t.type_:Xf(e)?1:Qf(e)?2:Zf(e)?3:0}var Zk=(e,t,n=Is(e))=>n===2?e.has(t):Ln[Gf].hasOwnProperty.call(e,t),Jg=(e,t,n=Is(e))=>n===2?e.get(t):e[t],Xc=(e,t,n,r=Is(e))=>{r===2?e.set(t,n):r===3?e.add(n):e[t]=n};function Z6(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}var Xf=Array.isArray,Qf=e=>e instanceof Map,Zf=e=>e instanceof Set,Cy=e=>typeof e=="object",ko=e=>typeof e=="function",Hm=e=>typeof e=="boolean";function J6(e){const t=+e;return Number.isInteger(t)&&String(t)===e}var Zr=e=>e.copy_||e.base_,Oy=e=>e.modified_?e.copy_:e.base_;function ev(e,t){if(Qf(e))return new Map(e);if(Zf(e))return new Set(e);if(Xf(e))return Array[Gf].slice.call(e);const n=fN(e);if(t===!0||t==="class_only"&&!n){const r=Ln.getOwnPropertyDescriptors(e);delete r[pn];let i=Reflect.ownKeys(r);for(let a=0;a1&&Ln.defineProperties(e,{set:hc,add:hc,clear:hc,delete:hc}),Ln.freeze(e),t&&Yf(e,(n,r)=>{Ny(r,!0)},!1)),e}function eU(){fr(2)}var hc={[ds]:eU};function Jf(e){return e===null||!Cy(e)?!0:Ln.isFrozen(e)}var Qc="MapSet",tv="Patches",Jk="ArrayMethods",dN={};function Ia(e){const t=dN[e];return t||fr(0,e),t}var eS=e=>!!dN[e],hs,hN=()=>hs,tU=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:eS(Qc)?Ia(Qc):void 0,arrayMethodsPlugin_:eS(Jk)?Ia(Jk):void 0});function tS(e,t){t&&(e.patchPlugin_=Ia(tv),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function nv(e){rv(e),e.drafts_.forEach(nU),e.drafts_=null}function rv(e){e===hs&&(hs=e.parent_)}var nS=e=>hs=tU(hs,e);function nU(e){const t=e[pn];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function rS(e,t){t.unfinalizedDrafts_=t.drafts_.length;const n=t.drafts_[0];if(e!==void 0&&e!==n){n[pn].modified_&&(nv(t),fr(4)),yr(e)&&(e=iS(t,e));const{patchPlugin_:i}=t;i&&i.generateReplacementPatches_(n[pn].base_,e,t)}else e=iS(t,n);return rU(t,e,!0),nv(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==cN?e:void 0}function iS(e,t){if(Jf(t))return t;const n=t[pn];if(!n)return Zc(t,e.handledSet_,e);if(!ed(n,e))return t;if(!n.modified_)return n.base_;if(!n.finalized_){const{callbacks_:r}=n;if(r)for(;r.length>0;)r.pop()(e);gN(n,e)}return n.copy_}function rU(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&Ny(t,n)}function pN(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var ed=(e,t)=>e.scope_===t,iU=[];function mN(e,t,n,r){const i=Zr(e),a=e.type_;if(r!==void 0&&Jg(i,r,a)===t){Xc(i,r,n,a);return}if(!e.draftLocations_){const u=e.draftLocations_=new Map;Yf(i,(c,f)=>{if(ii(f)){const d=u.get(f)||[];d.push(c),u.set(f,d)}})}const l=e.draftLocations_.get(t)??iU;for(const u of l)Xc(i,u,n,a)}function aU(e,t,n){e.callbacks_.push(function(i){var u;const a=t;if(!a||!ed(a,i))return;(u=i.mapSetPlugin_)==null||u.fixSetContents(a);const l=Oy(a);mN(e,a.draft_??a,l,n),gN(a,i)})}function gN(e,t){var r;if(e.modified_&&!e.finalized_&&(e.type_===3||e.type_===1&&e.allIndicesReassigned_||(((r=e.assigned_)==null?void 0:r.size)??0)>0)){const{patchPlugin_:i}=t;if(i){const a=i.getPath(e);a&&i.generatePatches_(e,a,t)}pN(e)}}function oU(e,t,n){const{scope_:r}=e;if(ii(n)){const i=n[pn];ed(i,r)&&i.callbacks_.push(function(){Ic(e);const l=Oy(i);mN(e,n,l,t)})}else yr(n)&&e.callbacks_.push(function(){const a=Zr(e);e.type_===3?a.has(n)&&Zc(n,r.handledSet_,r):Jg(a,t,e.type_)===n&&r.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&Zc(Jg(e.copy_,t,e.type_),r.handledSet_,r)})}function Zc(e,t,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||ii(e)||t.has(e)||!yr(e)||Jf(e)||(t.add(e),Yf(e,(r,i)=>{if(ii(i)){const a=i[pn];if(ed(a,n)){const l=Oy(a);Xc(e,r,l,e.type_),pN(a)}}else yr(i)&&Zc(i,t,n)})),e}function lU(e,t){const n=Xf(e),r={type_:n?1:0,scope_:t?t.scope_:hN(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let i=r,a=Jc;n&&(i=[r],a=ps);const{revoke:l,proxy:u}=Proxy.revocable(i,a);return r.draft_=u,r.revoke_=l,[u,r]}var Jc={get(e,t){if(t===pn)return e;let n=e.scope_.arrayMethodsPlugin_;const r=e.type_===1&&typeof t=="string";if(r&&n!=null&&n.isArrayOperationMethod(t))return n.createMethodInterceptor(e,t);const i=Zr(e);if(!Zk(i,t,e.type_))return sU(e,i,t);const a=i[t];if(e.finalized_||!yr(a)||r&&e.operationMethod&&(n!=null&&n.isMutatingArrayMethod(e.operationMethod))&&J6(t))return a;if(a===Vm(e.base_,t)){Ic(e);const l=e.type_===1?+t:t,u=av(e.scope_,a,e,l);return e.copy_[l]=u}return a},has(e,t){return t in Zr(e)},ownKeys(e){return Reflect.ownKeys(Zr(e))},set(e,t,n){const r=vN(Zr(e),t);if(r!=null&&r.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){const i=Vm(Zr(e),t),a=i==null?void 0:i[pn];if(a&&a.base_===n)return e.copy_[t]=n,e.assigned_.set(t,!1),!0;if(Z6(n,i)&&(n!==void 0||Zk(e.base_,t,e.type_)))return!0;Ic(e),iv(e)}return e.copy_[t]===n&&(n!==void 0||t in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=n,e.assigned_.set(t,!0),oU(e,t,n)),!0},deleteProperty(e,t){return Ic(e),Vm(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),iv(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const n=Zr(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{[_c]:!0,[Zg]:e.type_!==1||t!=="length",[Yc]:r[Yc],[ds]:n[t]}},defineProperty(){fr(11)},getPrototypeOf(e){return Mo(e.base_)},setPrototypeOf(){fr(12)}},ps={};for(let e in Jc){let t=Jc[e];ps[e]=function(){const n=arguments;return n[0]=n[0][0],t.apply(this,n)}}ps.deleteProperty=function(e,t){return ps.set.call(this,e,t,void 0)};ps.set=function(e,t,n){return Jc.set.call(this,e[0],t,n,e[0])};function Vm(e,t){const n=e[pn];return(n?Zr(n):e)[t]}function sU(e,t,n){var i;const r=vN(t,n);return r?ds in r?r[ds]:(i=r.get)==null?void 0:i.call(e.draft_):void 0}function vN(e,t){if(!(t in e))return;let n=Mo(e);for(;n;){const r=Object.getOwnPropertyDescriptor(n,t);if(r)return r;n=Mo(n)}}function iv(e){e.modified_||(e.modified_=!0,e.parent_&&iv(e.parent_))}function Ic(e){e.copy_||(e.assigned_=new Map,e.copy_=ev(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var uU=class{constructor(t){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(n,r,i)=>{if(ko(n)&&!ko(r)){const l=r;r=n;const u=this;return function(f=l,...d){return u.produce(f,p=>r.call(this,p,...d))}}ko(r)||fr(6),i!==void 0&&!ko(i)&&fr(7);let a;if(yr(n)){const l=nS(this),u=av(l,n,void 0);let c=!0;try{a=r(u),c=!1}finally{c?nv(l):rv(l)}return tS(l,i),rS(a,l)}else if(!n||!Cy(n)){if(a=r(n),a===void 0&&(a=n),a===cN&&(a=void 0),this.autoFreeze_&&Ny(a,!0),i){const l=[],u=[];Ia(tv).generateReplacementPatches_(n,a,{patches_:l,inversePatches_:u}),i(l,u)}return a}else fr(1,n)},this.produceWithPatches=(n,r)=>{if(ko(n))return(u,...c)=>this.produceWithPatches(u,f=>n(f,...c));let i,a;return[this.produce(n,r,(u,c)=>{i=u,a=c}),i,a]},Hm(t==null?void 0:t.autoFreeze)&&this.setAutoFreeze(t.autoFreeze),Hm(t==null?void 0:t.useStrictShallowCopy)&&this.setUseStrictShallowCopy(t.useStrictShallowCopy),Hm(t==null?void 0:t.useStrictIteration)&&this.setUseStrictIteration(t.useStrictIteration)}createDraft(t){yr(t)||fr(8),ii(t)&&(t=mr(t));const n=nS(this),r=av(n,t,void 0);return r[pn].isManual_=!0,rv(n),r}finishDraft(t,n){const r=t&&t[pn];(!r||!r.isManual_)&&fr(9);const{scope_:i}=r;return tS(i,n),rS(void 0,i)}setAutoFreeze(t){this.autoFreeze_=t}setUseStrictShallowCopy(t){this.useStrictShallowCopy_=t}setUseStrictIteration(t){this.useStrictIteration_=t}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(t,n){let r;for(r=n.length-1;r>=0;r--){const a=n[r];if(a.path.length===0&&a.op==="replace"){t=a.value;break}}r>-1&&(n=n.slice(r+1));const i=Ia(tv).applyPatches_;return ii(t)?i(t,n):this.produce(t,a=>i(a,n))}};function av(e,t,n,r){const[i,a]=Qf(t)?Ia(Qc).proxyMap_(t,n):Zf(t)?Ia(Qc).proxySet_(t,n):lU(t,n);return((n==null?void 0:n.scope_)??hN()).drafts_.push(i),a.callbacks_=(n==null?void 0:n.callbacks_)??[],a.key_=r,n&&r!==void 0?aU(n,a,r):a.callbacks_.push(function(c){var d;(d=c.mapSetPlugin_)==null||d.fixSetContents(a);const{patchPlugin_:f}=c;a.modified_&&f&&f.generatePatches_(a,[],c)}),i}function mr(e){return ii(e)||fr(10,e),yN(e)}function yN(e){if(!yr(e)||Jf(e))return e;const t=e[pn];let n,r=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=ev(e,t.scope_.immer_.useStrictShallowCopy_),r=t.scope_.immer_.shouldUseStrictIteration()}else n=ev(e,!0);return Yf(n,(i,a)=>{Xc(n,i,yN(a))},r),t&&(t.finalized_=!1),n}var cU=new uU,xN=cU.produce;function bN(e){return({dispatch:n,getState:r})=>i=>a=>typeof a=="function"?a(n,r,e):i(a)}var fU=bN(),dU=bN,hU=typeof window<"u"&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(arguments.length!==0)return typeof arguments[0]=="object"?Kc:Kc.apply(null,arguments)};function er(e,t){function n(...r){if(t){let i=t(...r);if(!i)throw new Error(zn(0));return{type:e,payload:i.payload,..."meta"in i&&{meta:i.meta},..."error"in i&&{error:i.error}}}return{type:e,payload:r[0]}}return n.toString=()=>`${e}`,n.type=e,n.match=r=>uN(r)&&r.type===e,n}var wN=class Jl extends Array{constructor(...t){super(...t),Object.setPrototypeOf(this,Jl.prototype)}static get[Symbol.species](){return Jl}concat(...t){return super.concat.apply(this,t)}prepend(...t){return t.length===1&&Array.isArray(t[0])?new Jl(...t[0].concat(this)):new Jl(...t.concat(this))}};function aS(e){return yr(e)?xN(e,()=>{}):e}function pc(e,t,n){return e.has(t)?e.get(t):e.set(t,n(t)).get(t)}function pU(e){return typeof e=="boolean"}var mU=()=>function(t){const{thunk:n=!0,immutableCheck:r=!0,serializableCheck:i=!0,actionCreatorCheck:a=!0}=t??{};let l=new wN;return n&&(pU(n)?l.push(fU):l.push(dU(n.extraArgument))),l},kN="RTK_autoBatch",at=()=>e=>({payload:e,meta:{[kN]:!0}}),oS=e=>t=>{setTimeout(t,e)},SN=(e={type:"raf"})=>t=>(...n)=>{const r=t(...n);let i=!0,a=!1,l=!1;const u=new Set,c=e.type==="tick"?queueMicrotask:e.type==="raf"?typeof window<"u"&&window.requestAnimationFrame?window.requestAnimationFrame:oS(10):e.type==="callback"?e.queueNotification:oS(e.timeout),f=()=>{l=!1,a&&(a=!1,u.forEach(d=>d()))};return Object.assign({},r,{subscribe(d){const p=()=>i&&d(),g=r.subscribe(p);return u.add(d),()=>{g(),u.delete(d)}},dispatch(d){var p;try{return i=!((p=d==null?void 0:d.meta)!=null&&p[kN]),a=!i,a&&(l||(l=!0,c(f))),r.dispatch(d)}finally{i=!0}}})},gU=e=>function(n){const{autoBatch:r=!0}=n??{};let i=new wN(e);return r&&i.push(SN(typeof r=="object"?r:void 0)),i};function vU(e){const t=mU(),{reducer:n=void 0,middleware:r,devTools:i=!0,preloadedState:a=void 0,enhancers:l=void 0}=e||{};let u;if(typeof n=="function")u=n;else if(Ey(n))u=sN(n);else throw new Error(zn(1));let c;typeof r=="function"?c=r(t):c=t();let f=Kc;i&&(f=hU({trace:!1,...typeof i=="object"&&i}));const d=X6(...c),p=gU(d);let g=typeof l=="function"?l(p):p();const y=f(...g);return lN(u,a,y)}function jN(e){const t={},n=[];let r;const i={addCase(a,l){const u=typeof a=="string"?a:a.type;if(!u)throw new Error(zn(28));if(u in t)throw new Error(zn(29));return t[u]=l,i},addAsyncThunk(a,l){return l.pending&&(t[a.pending.type]=l.pending),l.rejected&&(t[a.rejected.type]=l.rejected),l.fulfilled&&(t[a.fulfilled.type]=l.fulfilled),l.settled&&n.push({matcher:a.settled,reducer:l.settled}),i},addMatcher(a,l){return n.push({matcher:a,reducer:l}),i},addDefaultCase(a){return r=a,i}};return e(i),[t,n,r]}function yU(e){return typeof e=="function"}function xU(e,t){let[n,r,i]=jN(t),a;if(yU(e))a=()=>aS(e());else{const u=aS(e);a=()=>u}function l(u=a(),c){let f=[n[c.type],...r.filter(({matcher:d})=>d(c)).map(({reducer:d})=>d)];return f.filter(d=>!!d).length===0&&(f=[i]),f.reduce((d,p)=>{if(p)if(ii(d)){const y=p(d,c);return y===void 0?d:y}else{if(yr(d))return xN(d,g=>p(g,c));{const g=p(d,c);if(g===void 0){if(d===null)return d;throw Error("A case reducer on a non-draftable value must not return undefined")}return g}}return d},u)}return l.getInitialState=a,l}var bU="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW",wU=(e=21)=>{let t="",n=e;for(;n--;)t+=bU[Math.random()*64|0];return t},kU=Symbol.for("rtk-slice-createasyncthunk");function SU(e,t){return`${e}/${t}`}function jU({creators:e}={}){var n;const t=(n=e==null?void 0:e.asyncThunk)==null?void 0:n[kU];return function(i){const{name:a,reducerPath:l=a}=i;if(!a)throw new Error(zn(11));const u=(typeof i.reducers=="function"?i.reducers(EU()):i.reducers)||{},c=Object.keys(u),f={sliceCaseReducersByName:{},sliceCaseReducersByType:{},actionCreators:{},sliceMatchers:[]},d={addCase(A,I){const E=typeof A=="string"?A:A.type;if(!E)throw new Error(zn(12));if(E in f.sliceCaseReducersByType)throw new Error(zn(13));return f.sliceCaseReducersByType[E]=I,d},addMatcher(A,I){return f.sliceMatchers.push({matcher:A,reducer:I}),d},exposeAction(A,I){return f.actionCreators[A]=I,d},exposeCaseReducer(A,I){return f.sliceCaseReducersByName[A]=I,d}};c.forEach(A=>{const I=u[A],E={reducerName:A,type:SU(a,A),createNotation:typeof i.reducers=="function"};OU(I)?AU(E,I,d,t):CU(E,I,d)});function p(){const[A={},I=[],E=void 0]=typeof i.extraReducers=="function"?jN(i.extraReducers):[i.extraReducers],L={...A,...f.sliceCaseReducersByType};return xU(i.initialState,F=>{for(let H in L)F.addCase(H,L[H]);for(let H of f.sliceMatchers)F.addMatcher(H.matcher,H.reducer);for(let H of I)F.addMatcher(H.matcher,H.reducer);E&&F.addDefaultCase(E)})}const g=A=>A,y=new Map,x=new WeakMap;let S;function w(A,I){return S||(S=p()),S(A,I)}function P(){return S||(S=p()),S.getInitialState()}function C(A,I=!1){function E(F){let H=F[A];return typeof H>"u"&&I&&(H=pc(x,E,P)),H}function L(F=g){const H=pc(y,I,()=>new WeakMap);return pc(H,F,()=>{const R={};for(const[W,M]of Object.entries(i.selectors??{}))R[W]=PU(M,F,()=>pc(x,F,P),I);return R})}return{reducerPath:A,getSelectors:L,get selectors(){return L(E)},selectSlice:E}}const O={name:a,reducer:w,actions:f.actionCreators,caseReducers:f.sliceCaseReducersByName,getInitialState:P,...C(l),injectInto(A,{reducerPath:I,...E}={}){const L=I??l;return A.inject({reducerPath:L,reducer:w},E),{...O,...C(L,!0)}}};return O}}function PU(e,t,n,r){function i(a,...l){let u=t(a);return typeof u>"u"&&r&&(u=n()),e(u,...l)}return i.unwrapped=e,i}var On=jU();function EU(){function e(t,n){return{_reducerDefinitionType:"asyncThunk",payloadCreator:t,...n}}return e.withTypes=()=>e,{reducer(t){return Object.assign({[t.name](...n){return t(...n)}}[t.name],{_reducerDefinitionType:"reducer"})},preparedReducer(t,n){return{_reducerDefinitionType:"reducerWithPrepare",prepare:t,reducer:n}},asyncThunk:e}}function CU({type:e,reducerName:t,createNotation:n},r,i){let a,l;if("reducer"in r){if(n&&!NU(r))throw new Error(zn(17));a=r.reducer,l=r.prepare}else a=r;i.addCase(e,a).exposeCaseReducer(t,a).exposeAction(t,l?er(e,l):er(e))}function OU(e){return e._reducerDefinitionType==="asyncThunk"}function NU(e){return e._reducerDefinitionType==="reducerWithPrepare"}function AU({type:e,reducerName:t},n,r,i){if(!i)throw new Error(zn(18));const{payloadCreator:a,fulfilled:l,pending:u,rejected:c,settled:f,options:d}=n,p=i(e,a,d);r.exposeAction(t,p),l&&r.addCase(p.fulfilled,l),u&&r.addCase(p.pending,u),c&&r.addCase(p.rejected,c),f&&r.addMatcher(p.settled,f),r.exposeCaseReducer(t,{fulfilled:l||mc,pending:u||mc,rejected:c||mc,settled:f||mc})}function mc(){}var _U="task",PN="listener",EN="completed",Ay="cancelled",IU=`task-${Ay}`,TU=`task-${EN}`,ov=`${PN}-${Ay}`,MU=`${PN}-${EN}`,td=class{constructor(e){bp(this,"name","TaskAbortError");bp(this,"message");this.code=e,this.message=`${_U} ${Ay} (reason: ${e})`}},_y=(e,t)=>{if(typeof e!="function")throw new TypeError(zn(32))},ef=()=>{},CN=(e,t=ef)=>(e.catch(t),e),ON=(e,t)=>(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)),Pa=e=>{if(e.aborted)throw new td(e.reason)};function NN(e,t){let n=ef;return new Promise((r,i)=>{const a=()=>i(new td(e.reason));if(e.aborted){a();return}n=ON(e,a),t.finally(()=>n()).then(r,i)}).finally(()=>{n=ef})}var DU=async(e,t)=>{try{return await Promise.resolve(),{status:"ok",value:await e()}}catch(n){return{status:n instanceof td?"cancelled":"rejected",error:n}}finally{t==null||t()}},tf=e=>t=>CN(NN(e,t).then(n=>(Pa(e),n))),AN=e=>{const t=tf(e);return n=>t(new Promise(r=>setTimeout(r,n)))},{assign:Oo}=Object,lS={},nd="listenerMiddleware",LU=(e,t)=>{const n=r=>ON(e,()=>r.abort(e.reason));return(r,i)=>{_y(r);const a=new AbortController;n(a);const l=DU(async()=>{Pa(e),Pa(a.signal);const u=await r({pause:tf(a.signal),delay:AN(a.signal),signal:a.signal});return Pa(a.signal),u},()=>a.abort(TU));return i!=null&&i.autoJoin&&t.push(l.catch(ef)),{result:tf(e)(l),cancel(){a.abort(IU)}}}},RU=(e,t)=>{const n=async(r,i)=>{Pa(t);let a=()=>{};const u=[new Promise((c,f)=>{let d=e({predicate:r,effect:(p,g)=>{g.unsubscribe(),c([p,g.getState(),g.getOriginalState()])}});a=()=>{d(),f()}})];i!=null&&u.push(new Promise(c=>setTimeout(c,i,null)));try{const c=await NN(t,Promise.race(u));return Pa(t),c}finally{a()}};return(r,i)=>CN(n(r,i))},_N=e=>{let{type:t,actionCreator:n,matcher:r,predicate:i,effect:a}=e;if(t)i=er(t).match;else if(n)t=n.type,i=n.match;else if(r)i=r;else if(!i)throw new Error(zn(21));return _y(a),{predicate:i,type:t,effect:a}},IN=Oo(e=>{const{type:t,predicate:n,effect:r}=_N(e);return{id:wU(),effect:r,type:t,predicate:n,pending:new Set,unsubscribe:()=>{throw new Error(zn(22))}}},{withTypes:()=>IN}),sS=(e,t)=>{const{type:n,effect:r,predicate:i}=_N(t);return Array.from(e.values()).find(a=>(typeof n=="string"?a.type===n:a.predicate===i)&&a.effect===r)},lv=e=>{e.pending.forEach(t=>{t.abort(ov)})},zU=(e,t)=>()=>{for(const n of t.keys())lv(n);e.clear()},uS=(e,t,n)=>{try{e(t,n)}catch(r){setTimeout(()=>{throw r},0)}},TN=Oo(er(`${nd}/add`),{withTypes:()=>TN}),$U=er(`${nd}/removeAll`),MN=Oo(er(`${nd}/remove`),{withTypes:()=>MN}),FU=(...e)=>{console.error(`${nd}/error`,...e)},Ts=(e={})=>{const t=new Map,n=new Map,r=y=>{const x=n.get(y)??0;n.set(y,x+1)},i=y=>{const x=n.get(y)??1;x===1?n.delete(y):n.set(y,x-1)},{extra:a,onError:l=FU}=e;_y(l);const u=y=>(y.unsubscribe=()=>t.delete(y.id),t.set(y.id,y),x=>{y.unsubscribe(),x!=null&&x.cancelActive&&lv(y)}),c=y=>{const x=sS(t,y)??IN(y);return u(x)};Oo(c,{withTypes:()=>c});const f=y=>{const x=sS(t,y);return x&&(x.unsubscribe(),y.cancelActive&&lv(x)),!!x};Oo(f,{withTypes:()=>f});const d=async(y,x,S,w)=>{const P=new AbortController,C=RU(c,P.signal),O=[];try{y.pending.add(P),r(y),await Promise.resolve(y.effect(x,Oo({},S,{getOriginalState:w,condition:(A,I)=>C(A,I).then(Boolean),take:C,delay:AN(P.signal),pause:tf(P.signal),extra:a,signal:P.signal,fork:LU(P.signal,O),unsubscribe:y.unsubscribe,subscribe:()=>{t.set(y.id,y)},cancelActiveListeners:()=>{y.pending.forEach((A,I,E)=>{A!==P&&(A.abort(ov),E.delete(A))})},cancel:()=>{P.abort(ov),y.pending.delete(P)},throwIfCancelled:()=>{Pa(P.signal)}})))}catch(A){A instanceof td||uS(l,A,{raisedBy:"effect"})}finally{await Promise.all(O),P.abort(MU),i(y),y.pending.delete(P)}},p=zU(t,n);return{middleware:y=>x=>S=>{if(!uN(S))return x(S);if(TN.match(S))return c(S.payload);if($U.match(S)){p();return}if(MN.match(S))return f(S.payload);let w=y.getState();const P=()=>{if(w===lS)throw new Error(zn(23));return w};let C;try{if(C=x(S),t.size>0){const O=y.getState(),A=Array.from(t.values());for(const I of A){let E=!1;try{E=I.predicate(S,O,w)}catch(L){E=!1,uS(l,L,{raisedBy:"predicate"})}E&&d(I,S,y,P)}}}finally{w=lS}return C},startListening:c,stopListening:f,clearListeners:p}};function zn(e){return`Minified Redux Toolkit error #${e}; visit https://redux-toolkit.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var BU={layoutType:"horizontal",width:0,height:0,margin:{top:5,right:5,bottom:5,left:5},scale:1},DN=On({name:"chartLayout",initialState:BU,reducers:{setLayout(e,t){e.layoutType=t.payload},setChartSize(e,t){e.width=t.payload.width,e.height=t.payload.height},setMargin(e,t){var n,r,i,a;e.margin.top=(n=t.payload.top)!==null&&n!==void 0?n:0,e.margin.right=(r=t.payload.right)!==null&&r!==void 0?r:0,e.margin.bottom=(i=t.payload.bottom)!==null&&i!==void 0?i:0,e.margin.left=(a=t.payload.left)!==null&&a!==void 0?a:0},setScale(e,t){e.scale=t.payload}}}),{setMargin:UU,setLayout:WU,setChartSize:qU,setScale:HU}=DN.actions,VU=DN.reducer;function LN(e,t,n){return Array.isArray(e)&&e&&t+n!==0?e.slice(t,n+1):e}function Me(e){return Number.isFinite(e)}function Lr(e){return typeof e=="number"&&e>0&&Number.isFinite(e)}function cS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function So(e){for(var t=1;t{if(t&&n){var{width:r,height:i}=n,{align:a,verticalAlign:l,layout:u}=t;if((u==="vertical"||u==="horizontal"&&l==="middle")&&a!=="center"&&ge(e[a]))return So(So({},e),{},{[a]:e[a]+(r||0)});if((u==="horizontal"||u==="vertical"&&a==="center")&&l!=="middle"&&ge(e[l]))return So(So({},e),{},{[l]:e[l]+(i||0)})}return e},$r=(e,t)=>e==="horizontal"&&t==="xAxis"||e==="vertical"&&t==="yAxis"||e==="centric"&&t==="angleAxis"||e==="radial"&&t==="radiusAxis",RN=(e,t,n,r)=>{if(r)return e.map(u=>u.coordinate);var i,a,l=e.map(u=>(u.coordinate===t&&(i=!0),u.coordinate===n&&(a=!0),u.coordinate));return i||l.push(t),a||l.push(n),l},zN=(e,t,n)=>{if(!e)return null;var{duplicateDomain:r,type:i,range:a,scale:l,realScaleType:u,isCategorical:c,categoricalDomain:f,tickCount:d,ticks:p,niceTicks:g,axisType:y}=e;if(!l)return null;var x=u==="scaleBand"&&l.bandwidth?l.bandwidth()/2:2,S=i==="category"&&l.bandwidth?l.bandwidth()/x:0;if(S=y==="angleAxis"&&a&&a.length>=2?jn(a[0]-a[1])*2*S:S,p||g){var w=(p||g||[]).map((P,C)=>{var O=r?r.indexOf(P):P,A=l.map(O);return Me(A)?{coordinate:A+S,value:P,offset:S,index:C}:null}).filter(Pn);return w}return c&&f?f.map((P,C)=>{var O=l.map(P);return Me(O)?{coordinate:O+S,value:P,index:C,offset:S}:null}).filter(Pn):l.ticks&&d!=null?l.ticks(d).map((P,C)=>{var O=l.map(P);return Me(O)?{coordinate:O+S,value:P,index:C,offset:S}:null}).filter(Pn):l.domain().map((P,C)=>{var O=l.map(P);return Me(O)?{coordinate:O+S,value:r?r[P]:P,index:C,offset:S}:null}).filter(Pn)},QU=(e,t)=>{if(!t||t.length!==2||!ge(t[0])||!ge(t[1]))return e;var n=Math.min(t[0],t[1]),r=Math.max(t[0],t[1]),i=[e[0],e[1]];return(!ge(e[0])||e[0]r)&&(i[1]=r),i[0]>r&&(i[0]=r),i[1]{var t,n=e.length;if(!(n<=0)){var r=(t=e[0])===null||t===void 0?void 0:t.length;if(!(r==null||r<=0))for(var i=0;i=0?(f[0]=a,a+=g,f[1]=a):(f[0]=l,l+=g,f[1]=l)}}}},JU=e=>{var t,n=e.length;if(!(n<=0)){var r=(t=e[0])===null||t===void 0?void 0:t.length;if(!(r==null||r<=0))for(var i=0;i=0?(c[0]=a,a+=f,c[1]=a):(c[0]=0,c[1]=0)}}}},e8={sign:ZU,expand:O5,none:Aa,silhouette:N5,wiggle:A5,positive:JU},t8=(e,t,n)=>{var r,i=(r=e8[n])!==null&&r!==void 0?r:Aa,a=C5().keys(t).value((u,c)=>Number(St(u,c,0))).order(Xg).offset(i),l=a(e);return l.forEach((u,c)=>{u.forEach((f,d)=>{var p=St(e[d],t[c],0);Array.isArray(p)&&p.length===2&&ge(p[0])&&ge(p[1])&&(f[0]=p[0],f[1]=p[1])})}),l};function $N(e){return e==null?void 0:String(e)}function fS(e){var{axis:t,ticks:n,bandSize:r,entry:i,index:a,dataKey:l}=e;if(t.type==="category"){if(!t.allowDuplicatedCategory&&t.dataKey&&!mt(i[t.dataKey])){var u=HO(n,"value",i[t.dataKey]);if(u)return u.coordinate+r/2}return n!=null&&n[a]?n[a].coordinate+r/2:null}var c=St(i,mt(l)?t.dataKey:l),f=t.scale.map(c);return ge(f)?f:null}var dS=e=>{var{axis:t,ticks:n,offset:r,bandSize:i,entry:a,index:l}=e;if(t.type==="category")return n[l]?n[l].coordinate+r:null;var u=St(a,t.dataKey,t.scale.domain()[l]);if(mt(u))return null;var c=t.scale.map(u);return ge(c)?c-i/2+r:null},n8=e=>{var{numericAxis:t}=e,n=t.scale.domain();if(t.type==="number"){var r=Math.min(n[0],n[1]),i=Math.max(n[0],n[1]);return r<=0&&i>=0?0:i<0?i:r}return n[0]},r8=e=>{var t=e.flat(2).filter(ge);return[Math.min(...t),Math.max(...t)]},i8=e=>[e[0]===1/0?0:e[0],e[1]===-1/0?0:e[1]],a8=(e,t,n)=>{if(e!=null)return i8(Object.keys(e).reduce((r,i)=>{var a=e[i];if(!a)return r;var{stackedData:l}=a,u=l.reduce((c,f)=>{var d=LN(f,t,n),p=r8(d);return!Me(p[0])||!Me(p[1])?c:[Math.min(c[0],p[0]),Math.max(c[1],p[1])]},[1/0,-1/0]);return[Math.min(u[0],r[0]),Math.max(u[1],r[1])]},[1/0,-1/0]))},hS=/^dataMin[\s]*-[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,pS=/^dataMax[\s]*\+[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,Do=(e,t,n)=>{if(e&&e.scale&&e.scale.bandwidth){var r=e.scale.bandwidth();if(!n||r>0)return r}if(e&&t&&t.length>=2){for(var i=Kf(t,d=>d.coordinate),a=1/0,l=1,u=i.length;l{if(t==="horizontal")return e.chartX;if(t==="vertical")return e.chartY},l8=(e,t)=>t==="centric"?e.angle:e.radius,di=e=>e.layout.width,hi=e=>e.layout.height,s8=e=>e.layout.scale,FN=e=>e.layout.margin,id=G(e=>e.cartesianAxis.xAxis,e=>Object.values(e)),ad=G(e=>e.cartesianAxis.yAxis,e=>Object.values(e)),u8="data-recharts-item-index",c8="data-recharts-item-id",Ms=60;function gS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function gc(e){for(var t=1;te.brush.height;function m8(e){var t=ad(e);return t.reduce((n,r)=>{if(r.orientation==="left"&&!r.mirror&&!r.hide){var i=typeof r.width=="number"?r.width:Ms;return n+i}return n},0)}function g8(e){var t=ad(e);return t.reduce((n,r)=>{if(r.orientation==="right"&&!r.mirror&&!r.hide){var i=typeof r.width=="number"?r.width:Ms;return n+i}return n},0)}function v8(e){var t=id(e);return t.reduce((n,r)=>r.orientation==="top"&&!r.mirror&&!r.hide?n+r.height:n,0)}function y8(e){var t=id(e);return t.reduce((n,r)=>r.orientation==="bottom"&&!r.mirror&&!r.hide?n+r.height:n,0)}var zt=G([di,hi,FN,p8,m8,g8,v8,y8,oN,q6],(e,t,n,r,i,a,l,u,c,f)=>{var d={left:(n.left||0)+i,right:(n.right||0)+a},p={top:(n.top||0)+l,bottom:(n.bottom||0)+u},g=gc(gc({},p),d),y=g.bottom;g.bottom+=r,g=XU(g,c,f);var x=e-g.left-g.right,S=t-g.top-g.bottom;return gc(gc({brushBottom:y},g),{},{width:Math.max(x,0),height:Math.max(S,0)})}),x8=G(zt,e=>({x:e.left,y:e.top,width:e.width,height:e.height})),Iy=G(di,hi,(e,t)=>({x:0,y:0,width:e,height:t})),b8=k.createContext(null),on=()=>k.useContext(b8)!=null,od=e=>e.brush,ld=G([od,zt,FN],(e,t,n)=>({height:e.height,x:ge(e.x)?e.x:t.left,y:ge(e.y)?e.y:t.top+t.height+t.brushBottom-((n==null?void 0:n.bottom)||0),width:ge(e.width)?e.width:t.width})),Km={},Gm={},Ym={},vS;function w8(){return vS||(vS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r,{signal:i,edges:a}={}){let l,u=null;const c=a!=null&&a.includes("leading"),f=a==null||a.includes("trailing"),d=()=>{u!==null&&(n.apply(l,u),l=void 0,u=null)},p=()=>{f&&d(),S()};let g=null;const y=()=>{g!=null&&clearTimeout(g),g=setTimeout(()=>{g=null,p()},r)},x=()=>{g!==null&&(clearTimeout(g),g=null)},S=()=>{x(),l=void 0,u=null},w=()=>{d()},P=function(...C){if(i!=null&&i.aborted)return;l=this,u=C;const O=g==null;y(),c&&O&&d()};return P.schedule=y,P.cancel=S,P.flush=w,i==null||i.addEventListener("abort",S,{once:!0}),P}e.debounce=t})(Ym)),Ym}var yS;function k8(){return yS||(yS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=w8();function n(r,i=0,a={}){typeof a!="object"&&(a={});const{leading:l=!1,trailing:u=!0,maxWait:c}=a,f=Array(2);l&&(f[0]="leading"),u&&(f[1]="trailing");let d,p=null;const g=t.debounce(function(...S){d=r.apply(this,S),p=null},i,{edges:f}),y=function(...S){return c!=null&&(p===null&&(p=Date.now()),Date.now()-p>=c)?(d=r.apply(this,S),p=Date.now(),g.cancel(),g.schedule(),d):(g.apply(this,S),d)},x=()=>(g.flush(),d);return y.cancel=g.cancel,y.flush=x,y}e.debounce=n})(Gm)),Gm}var xS;function S8(){return xS||(xS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=k8();function n(r,i=0,a={}){const{leading:l=!0,trailing:u=!0}=a;return t.debounce(r,i,{leading:l,maxWait:i,trailing:u})}e.throttle=n})(Km)),Km}var Xm,bS;function j8(){return bS||(bS=1,Xm=S8().throttle),Xm}var P8=j8();const E8=xr(P8);var nf=function(t,n){for(var r=arguments.length,i=new Array(r>2?r-2:0),a=2;ai[l++]))}},Ir={width:"100%",height:"100%",debounce:0,minWidth:0,initialDimension:{width:-1,height:-1}},BN=(e,t,n)=>{var{width:r=Ir.width,height:i=Ir.height,aspect:a,maxHeight:l}=n,u=_a(r)?e:Number(r),c=_a(i)?t:Number(i);return a&&a>0&&(u?c=u/a:c&&(u=c*a),l&&c!=null&&c>l&&(c=l)),{calculatedWidth:u,calculatedHeight:c}},C8={width:0,height:0,overflow:"visible"},O8={width:0,overflowX:"visible"},N8={height:0,overflowY:"visible"},A8={},_8=e=>{var{width:t,height:n}=e,r=_a(t),i=_a(n);return r&&i?C8:r?O8:i?N8:A8};function I8(e){var{width:t,height:n,aspect:r}=e,i=t,a=n;return i===void 0&&a===void 0?(i=Ir.width,a=Ir.height):i===void 0?i=r&&r>0?void 0:Ir.width:a===void 0&&(a=r&&r>0?void 0:Ir.height),{width:i,height:a}}function sv(){return sv=Object.assign?Object.assign.bind():function(e){for(var t=1;t({width:n,height:r}),[n,r]);return L8(i)?k.createElement(UN.Provider,{value:i},t):null}var Ty=()=>k.useContext(UN),R8=k.forwardRef((e,t)=>{var{aspect:n,initialDimension:r=Ir.initialDimension,width:i,height:a,minWidth:l=Ir.minWidth,minHeight:u,maxHeight:c,children:f,debounce:d=Ir.debounce,id:p,className:g,onResize:y,style:x={}}=e,S=k.useRef(null),w=k.useRef();w.current=y,k.useImperativeHandle(t,()=>S.current);var[P,C]=k.useState({containerWidth:r.width,containerHeight:r.height}),O=k.useCallback((F,H)=>{C(R=>{var W=Math.round(F),M=Math.round(H);return R.containerWidth===W&&R.containerHeight===M?R:{containerWidth:W,containerHeight:M}})},[]);k.useEffect(()=>{if(S.current==null||typeof ResizeObserver>"u")return Fa;var F=M=>{var Z,Y=M[0];if(Y!=null){var{width:Q,height:he}=Y.contentRect;O(Q,he),(Z=w.current)===null||Z===void 0||Z.call(w,Q,he)}};d>0&&(F=E8(F,d,{trailing:!0,leading:!1}));var H=new ResizeObserver(F),{width:R,height:W}=S.current.getBoundingClientRect();return O(R,W),H.observe(S.current),()=>{H.disconnect()}},[O,d]);var{containerWidth:A,containerHeight:I}=P;nf(!n||n>0,"The aspect(%s) must be greater than zero.",n);var{calculatedWidth:E,calculatedHeight:L}=BN(A,I,{width:i,height:a,aspect:n,maxHeight:c});return nf(E!=null&&E>0||L!=null&&L>0,`The width(%s) and height(%s) of chart should be greater than 0, please check the style of container, or the props width(%s) and height(%s), or add a minWidth(%s) or minHeight(%s) or use aspect(%s) to control the - height and width.`,E,L,i,a,l,u,n),k.createElement("div",{id:p?"".concat(p):void 0,className:Ge("recharts-responsive-container",g),style:xS(xS({},b),{},{width:i,height:a,minWidth:l,minHeight:u,maxHeight:c}),ref:S},k.createElement("div",{style:k8({width:i,height:a})},k.createElement(zN,{width:E,height:L},f)))}),$N=k.forwardRef((e,t)=>{var n=_y();if(Mr(n.width)&&Mr(n.height))return e.children;var{width:r,height:i}=S8({width:e.width,height:e.height,aspect:e.aspect}),{calculatedWidth:a,calculatedHeight:l}=LN(void 0,void 0,{width:r,height:i,aspect:e.aspect,maxHeight:e.maxHeight});return ge(a)&&ge(l)?k.createElement(zN,{width:a,height:l},e.children):k.createElement(O8,ov({},e,{width:r,height:i,ref:t}))});function Iy(e){if(e)return{x:e.x,y:e.y,upperWidth:"upperWidth"in e?e.upperWidth:e.width,lowerWidth:"lowerWidth"in e?e.lowerWidth:e.width,width:e.width,height:e.height}}var ld=()=>{var e,t=on(),n=Pe(c8),r=Pe(od),i=(e=Pe(ad))===null||e===void 0?void 0:e.padding;return!t||!r||!i?n:{width:r.width-i.left-i.right,height:r.height-i.top-i.bottom,x:i.left,y:i.top}},N8={top:0,bottom:0,left:0,right:0,width:0,height:0,brushBottom:0},FN=()=>{var e;return(e=Pe(zt))!==null&&e!==void 0?e:N8},BN=()=>Pe(fi),UN=()=>Pe(di),He=e=>e.layout.layoutType,Fa=()=>Pe(He),Ty=()=>{var e=Fa();if(e==="horizontal"||e==="vertical")return e},WN=e=>{var t=e.layout.layoutType;if(t==="centric"||t==="radial")return t},A8=()=>{var e=Fa();return e!==void 0},Ds=e=>{var t=yt(),n=on(),{width:r,height:i}=e,a=_y(),l=r,u=i;return a&&(l=a.width>0?a.width:r,u=a.height>0?a.height:i),k.useEffect(()=>{!n&&Mr(l)&&Mr(u)&&t(MU({width:l,height:u}))},[t,n,l,u]),null},qN=Symbol.for("immer-nothing"),bS=Symbol.for("immer-draftable"),$n=Symbol.for("immer-state");function fr(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var ps=Object.getPrototypeOf;function Mo(e){return!!e&&!!e[$n]}function Ia(e){var t;return e?HN(e)||Array.isArray(e)||!!e[bS]||!!((t=e.constructor)!=null&&t[bS])||Ms(e)||ud(e):!1}var _8=Object.prototype.constructor.toString(),wS=new WeakMap;function HN(e){if(!e||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);if(t===null||t===Object.prototype)return!0;const n=Object.hasOwnProperty.call(t,"constructor")&&t.constructor;if(n===Object)return!0;if(typeof n!="function")return!1;let r=wS.get(n);return r===void 0&&(r=Function.toString.call(n),wS.set(n,r)),r===_8}function nf(e,t,n=!0){sd(e)===0?(n?Reflect.ownKeys(e):Object.keys(e)).forEach(i=>{t(i,e[i],e)}):e.forEach((r,i)=>t(i,r,e))}function sd(e){const t=e[$n];return t?t.type_:Array.isArray(e)?1:Ms(e)?2:ud(e)?3:0}function lv(e,t){return sd(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function VN(e,t,n){const r=sd(e);r===2?e.set(t,n):r===3?e.add(n):e[t]=n}function I8(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}function Ms(e){return e instanceof Map}function ud(e){return e instanceof Set}function ya(e){return e.copy_||e.base_}function sv(e,t){if(Ms(e))return new Map(e);if(ud(e))return new Set(e);if(Array.isArray(e))return Array.prototype.slice.call(e);const n=HN(e);if(t===!0||t==="class_only"&&!n){const r=Object.getOwnPropertyDescriptors(e);delete r[$n];let i=Reflect.ownKeys(r);for(let a=0;a1&&Object.defineProperties(e,{set:gc,add:gc,clear:gc,delete:gc}),Object.freeze(e),t&&Object.values(e).forEach(n=>Dy(n,!0))),e}function T8(){fr(2)}var gc={value:T8};function cd(e){return e===null||typeof e!="object"?!0:Object.isFrozen(e)}var D8={};function Ta(e){const t=D8[e];return t||fr(0,e),t}var ms;function KN(){return ms}function M8(e,t){return{drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function kS(e,t){t&&(Ta("Patches"),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function uv(e){cv(e),e.drafts_.forEach(L8),e.drafts_=null}function cv(e){e===ms&&(ms=e.parent_)}function SS(e){return ms=M8(ms,e)}function L8(e){const t=e[$n];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function jS(e,t){t.unfinalizedDrafts_=t.drafts_.length;const n=t.drafts_[0];return e!==void 0&&e!==n?(n[$n].modified_&&(uv(t),fr(4)),Ia(e)&&(e=rf(t,e),t.parent_||af(t,e)),t.patches_&&Ta("Patches").generateReplacementPatches_(n[$n].base_,e,t.patches_,t.inversePatches_)):e=rf(t,n,[]),uv(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==qN?e:void 0}function rf(e,t,n){if(cd(t))return t;const r=e.immer_.shouldUseStrictIteration(),i=t[$n];if(!i)return nf(t,(a,l)=>PS(e,i,t,a,l,n),r),t;if(i.scope_!==e)return t;if(!i.modified_)return af(e,i.base_,!0),i.base_;if(!i.finalized_){i.finalized_=!0,i.scope_.unfinalizedDrafts_--;const a=i.copy_;let l=a,u=!1;i.type_===3&&(l=new Set(a),a.clear(),u=!0),nf(l,(c,f)=>PS(e,i,a,c,f,n,u),r),af(e,a,!1),n&&e.patches_&&Ta("Patches").generatePatches_(i,n,e.patches_,e.inversePatches_)}return i.copy_}function PS(e,t,n,r,i,a,l){if(i==null||typeof i!="object"&&!l)return;const u=cd(i);if(!(u&&!l)){if(Mo(i)){const c=a&&t&&t.type_!==3&&!lv(t.assigned_,r)?a.concat(r):void 0,f=rf(e,i,c);if(VN(n,r,f),Mo(f))e.canAutoFreeze_=!1;else return}else l&&n.add(i);if(Ia(i)&&!u){if(!e.immer_.autoFreeze_&&e.unfinalizedDrafts_<1||t&&t.base_&&t.base_[r]===i&&u)return;rf(e,i),(!t||!t.scope_.parent_)&&typeof r!="symbol"&&(Ms(n)?n.has(r):Object.prototype.propertyIsEnumerable.call(n,r))&&af(e,i)}}}function af(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&Dy(t,n)}function R8(e,t){const n=Array.isArray(e),r={type_:n?1:0,scope_:t?t.scope_:KN(),modified_:!1,finalized_:!1,assigned_:{},parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1};let i=r,a=My;n&&(i=[r],a=gs);const{revoke:l,proxy:u}=Proxy.revocable(i,a);return r.draft_=u,r.revoke_=l,u}var My={get(e,t){if(t===$n)return e;const n=ya(e);if(!lv(n,t))return z8(e,n,t);const r=n[t];return e.finalized_||!Ia(r)?r:r===Ym(e.base_,t)?(Xm(e),e.copy_[t]=dv(r,e)):r},has(e,t){return t in ya(e)},ownKeys(e){return Reflect.ownKeys(ya(e))},set(e,t,n){const r=GN(ya(e),t);if(r!=null&&r.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){const i=Ym(ya(e),t),a=i==null?void 0:i[$n];if(a&&a.base_===n)return e.copy_[t]=n,e.assigned_[t]=!1,!0;if(I8(n,i)&&(n!==void 0||lv(e.base_,t)))return!0;Xm(e),fv(e)}return e.copy_[t]===n&&(n!==void 0||t in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=n,e.assigned_[t]=!0),!0},deleteProperty(e,t){return Ym(e.base_,t)!==void 0||t in e.base_?(e.assigned_[t]=!1,Xm(e),fv(e)):delete e.assigned_[t],e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const n=ya(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{writable:!0,configurable:e.type_!==1||t!=="length",enumerable:r.enumerable,value:n[t]}},defineProperty(){fr(11)},getPrototypeOf(e){return ps(e.base_)},setPrototypeOf(){fr(12)}},gs={};nf(My,(e,t)=>{gs[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}});gs.deleteProperty=function(e,t){return gs.set.call(this,e,t,void 0)};gs.set=function(e,t,n){return My.set.call(this,e[0],t,n,e[0])};function Ym(e,t){const n=e[$n];return(n?ya(n):e)[t]}function z8(e,t,n){var i;const r=GN(t,n);return r?"value"in r?r.value:(i=r.get)==null?void 0:i.call(e.draft_):void 0}function GN(e,t){if(!(t in e))return;let n=ps(e);for(;n;){const r=Object.getOwnPropertyDescriptor(n,t);if(r)return r;n=ps(n)}}function fv(e){e.modified_||(e.modified_=!0,e.parent_&&fv(e.parent_))}function Xm(e){e.copy_||(e.copy_=sv(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var $8=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!0,this.produce=(t,n,r)=>{if(typeof t=="function"&&typeof n!="function"){const a=n;n=t;const l=this;return function(c=a,...f){return l.produce(c,d=>n.call(this,d,...f))}}typeof n!="function"&&fr(6),r!==void 0&&typeof r!="function"&&fr(7);let i;if(Ia(t)){const a=SS(this),l=dv(t,void 0);let u=!0;try{i=n(l),u=!1}finally{u?uv(a):cv(a)}return kS(a,r),jS(i,a)}else if(!t||typeof t!="object"){if(i=n(t),i===void 0&&(i=t),i===qN&&(i=void 0),this.autoFreeze_&&Dy(i,!0),r){const a=[],l=[];Ta("Patches").generateReplacementPatches_(t,i,a,l),r(a,l)}return i}else fr(1,t)},this.produceWithPatches=(t,n)=>{if(typeof t=="function")return(l,...u)=>this.produceWithPatches(l,c=>t(c,...u));let r,i;return[this.produce(t,n,(l,u)=>{r=l,i=u}),r,i]},typeof(e==null?void 0:e.autoFreeze)=="boolean"&&this.setAutoFreeze(e.autoFreeze),typeof(e==null?void 0:e.useStrictShallowCopy)=="boolean"&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),typeof(e==null?void 0:e.useStrictIteration)=="boolean"&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){Ia(e)||fr(8),Mo(e)&&(e=F8(e));const t=SS(this),n=dv(e,void 0);return n[$n].isManual_=!0,cv(t),n}finishDraft(e,t){const n=e&&e[$n];(!n||!n.isManual_)&&fr(9);const{scope_:r}=n;return kS(r,t),jS(void 0,r)}setAutoFreeze(e){this.autoFreeze_=e}setUseStrictShallowCopy(e){this.useStrictShallowCopy_=e}setUseStrictIteration(e){this.useStrictIteration_=e}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(e,t){let n;for(n=t.length-1;n>=0;n--){const i=t[n];if(i.path.length===0&&i.op==="replace"){e=i.value;break}}n>-1&&(t=t.slice(n+1));const r=Ta("Patches").applyPatches_;return Mo(e)?r(e,t):this.produce(e,i=>r(i,t))}};function dv(e,t){const n=Ms(e)?Ta("MapSet").proxyMap_(e,t):ud(e)?Ta("MapSet").proxySet_(e,t):R8(e,t);return(t?t.scope_:KN()).drafts_.push(n),n}function F8(e){return Mo(e)||fr(10,e),YN(e)}function YN(e){if(!Ia(e)||cd(e))return e;const t=e[$n];let n,r=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=sv(e,t.scope_.immer_.useStrictShallowCopy_),r=t.scope_.immer_.shouldUseStrictIteration()}else n=sv(e,!0);return nf(n,(i,a)=>{VN(n,i,YN(a))},r),t&&(t.finalized_=!1),n}var B8=new $8;B8.produce;var U8={settings:{layout:"horizontal",align:"center",verticalAlign:"middle",itemSorter:"value"},size:{width:0,height:0},payload:[]},XN=On({name:"legend",initialState:U8,reducers:{setLegendSize(e,t){e.size.width=t.payload.width,e.size.height=t.payload.height},setLegendSettings(e,t){e.settings.align=t.payload.align,e.settings.layout=t.payload.layout,e.settings.verticalAlign=t.payload.verticalAlign,e.settings.itemSorter=t.payload.itemSorter},addLegendPayload:{reducer(e,t){e.payload.push(t.payload)},prepare:at()},replaceLegendPayload:{reducer(e,t){var{prev:n,next:r}=t.payload,i=pr(e).payload.indexOf(n);i>-1&&(e.payload[i]=r)},prepare:at()},removeLegendPayload:{reducer(e,t){var n=pr(e).payload.indexOf(t.payload);n>-1&&e.payload.splice(n,1)},prepare:at()}}}),{setLegendSize:jte,setLegendSettings:Pte,addLegendPayload:W8,replaceLegendPayload:q8,removeLegendPayload:H8}=XN.actions,V8=XN.reducer;function hv(){return hv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{separator:t=go.separator,contentStyle:n,itemStyle:r,labelStyle:i=go.labelStyle,payload:a,formatter:l,itemSorter:u,wrapperClassName:c,labelClassName:f,label:d,labelFormatter:p,accessibilityLayer:g=go.accessibilityLayer}=e,y=()=>{if(a&&a.length){var I={padding:0,margin:0},E=(u?Vf(a,u):a).map((L,F)=>{if(L.type==="none")return null;var H=L.formatter||l||X8,{value:R,name:W}=L,D=R,Z=W;if(H){var Y=H(R,W,L,F,a);if(Array.isArray(Y))[D,Z]=Y;else if(Y!=null)D=Y;else return null}var Q=Bl(Bl({},go.itemStyle),{},{color:L.color||go.itemStyle.color},r);return k.createElement("li",{className:"recharts-tooltip-item",key:"tooltip-item-".concat(F),style:Q},Dr(Z)?k.createElement("span",{className:"recharts-tooltip-item-name"},Z):null,Dr(Z)?k.createElement("span",{className:"recharts-tooltip-item-separator"},t):null,k.createElement("span",{className:"recharts-tooltip-item-value"},D),k.createElement("span",{className:"recharts-tooltip-item-unit"},L.unit||""))});return k.createElement("ul",{className:"recharts-tooltip-item-list",style:I},E)}return null},b=Bl(Bl({},go.contentStyle),n),S=Bl({margin:0},i),w=!mt(d),P=w?d:"",C=Ge("recharts-default-tooltip",c),O=Ge("recharts-tooltip-label",f);w&&p&&a!==void 0&&a!==null&&(P=p(d,a));var A=g?{role:"status","aria-live":"assertive"}:{};return k.createElement("div",hv({className:C,style:b},A),k.createElement("p",{className:O,style:S},k.isValidElement(P)?P:"".concat(P)),y())},Ul="recharts-tooltip-wrapper",Z8={visibility:"hidden"};function J8(e){var{coordinate:t,translateX:n,translateY:r}=e;return Ge(Ul,{["".concat(Ul,"-right")]:ge(n)&&t&&ge(t.x)&&n>=t.x,["".concat(Ul,"-left")]:ge(n)&&t&&ge(t.x)&&n=t.y,["".concat(Ul,"-top")]:ge(r)&&t&&ge(t.y)&&r0?i:0),p=n[r]+i;if(t[r])return l[r]?d:p;var g=c[r];if(g==null)return 0;if(l[r]){var y=d,b=g;return yw?Math.max(d,g):Math.max(p,g)}function eW(e){var{translateX:t,translateY:n,useTranslate3d:r}=e;return{transform:r?"translate3d(".concat(t,"px, ").concat(n,"px, 0)"):"translate(".concat(t,"px, ").concat(n,"px)")}}function tW(e){var{allowEscapeViewBox:t,coordinate:n,offsetTop:r,offsetLeft:i,position:a,reverseDirection:l,tooltipBox:u,useTranslate3d:c,viewBox:f}=e,d,p,g;return u.height>0&&u.width>0&&n?(p=CS({allowEscapeViewBox:t,coordinate:n,key:"x",offset:i,position:a,reverseDirection:l,tooltipDimension:u.width,viewBox:f,viewBoxDimension:f.width}),g=CS({allowEscapeViewBox:t,coordinate:n,key:"y",offset:r,position:a,reverseDirection:l,tooltipDimension:u.height,viewBox:f,viewBoxDimension:f.height}),d=eW({translateX:p,translateY:g,useTranslate3d:c})):d=Z8,{cssProperties:d,cssClasses:J8({translateX:p,translateY:g,coordinate:n})}}function OS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function vc(e){for(var t=1;t{if(t.key==="Escape"){var n,r,i,a;this.setState({dismissed:!0,dismissedAtCoordinate:{x:(n=(r=this.props.coordinate)===null||r===void 0?void 0:r.x)!==null&&n!==void 0?n:0,y:(i=(a=this.props.coordinate)===null||a===void 0?void 0:a.y)!==null&&i!==void 0?i:0}})}})}componentDidMount(){document.addEventListener("keydown",this.handleKeyDown)}componentWillUnmount(){document.removeEventListener("keydown",this.handleKeyDown)}componentDidUpdate(){var t,n;this.state.dismissed&&(((t=this.props.coordinate)===null||t===void 0?void 0:t.x)!==this.state.dismissedAtCoordinate.x||((n=this.props.coordinate)===null||n===void 0?void 0:n.y)!==this.state.dismissedAtCoordinate.y)&&(this.state.dismissed=!1)}render(){var{active:t,allowEscapeViewBox:n,animationDuration:r,animationEasing:i,children:a,coordinate:l,hasPayload:u,isAnimationActive:c,offset:f,position:d,reverseDirection:p,useTranslate3d:g,viewBox:y,wrapperStyle:b,lastBoundingBox:S,innerRef:w,hasPortalFromProps:P}=this.props,C=typeof f=="number"?f:f.x,O=typeof f=="number"?f:f.y,{cssClasses:A,cssProperties:I}=tW({allowEscapeViewBox:n,coordinate:l,offsetLeft:C,offsetTop:O,position:d,reverseDirection:p,tooltipBox:{height:S.height,width:S.width},useTranslate3d:g,viewBox:y}),E=P?{}:vc(vc({transition:c&&t?"transform ".concat(r,"ms ").concat(i):void 0},I),{},{pointerEvents:"none",visibility:!this.state.dismissed&&t&&u?"visible":"hidden",position:"absolute",top:0,left:0}),L=vc(vc({},E),{},{visibility:!this.state.dismissed&&t&&u?"visible":"hidden"},b);return k.createElement("div",{xmlns:"http://www.w3.org/1999/xhtml",tabIndex:-1,className:A,style:L,ref:w},a)}}var QN=()=>{var e;return(e=Pe(t=>t.rootProps.accessibilityLayer))!==null&&e!==void 0?e:!0};function mv(){return mv=Object.assign?Object.assign.bind():function(e){for(var t=1;tDe(e.x)&&De(e.y),IS=e=>e.base!=null&&of(e.base)&&of(e),Wl=e=>e.x,ql=e=>e.y,sW=(e,t)=>{if(typeof e=="function")return e;var n="curve".concat(As(e));if((n==="curveMonotone"||n==="curveBump")&&t){var r=_S["".concat(n).concat(t==="vertical"?"Y":"X")];if(r)return r}return _S[n]||qf},TS={connectNulls:!1,type:"linear"},uW=e=>{var{type:t=TS.type,points:n=[],baseLine:r,layout:i,connectNulls:a=TS.connectNulls}=e,l=sW(t,i),u=a?n.filter(of):n;if(Array.isArray(r)){var c,f=n.map((b,S)=>AS(AS({},b),{},{base:r[S]}));i==="vertical"?c=uc().y(ql).x1(Wl).x0(b=>b.base.x):c=uc().x(Wl).y1(ql).y0(b=>b.base.y);var d=c.defined(IS).curve(l),p=a?f.filter(IS):f;return d(p)}var g;i==="vertical"&&ge(r)?g=uc().y(ql).x1(Wl).x0(r):ge(r)?g=uc().x(Wl).y1(ql).y0(r):g=CO().x(Wl).y(ql);var y=g.defined(of).curve(l);return y(u)},as=e=>{var{className:t,points:n,path:r,pathRef:i}=e,a=Fa();if((!n||!n.length)&&!r)return null;var l={type:e.type,points:e.points,baseLine:e.baseLine,layout:e.layout||a,connectNulls:e.connectNulls},u=n&&n.length?uW(l):r;return k.createElement("path",mv({},Zn(e),xy(e),{className:Ge("recharts-curve",t),d:u===null?void 0:u,ref:i}))},cW=["x","y","top","left","width","height","className"];function gv(){return gv=Object.assign?Object.assign.bind():function(e){for(var t=1;t"M".concat(e,",").concat(i,"v").concat(r,"M").concat(a,",").concat(t,"h").concat(n),yW=e=>{var{x:t=0,y:n=0,top:r=0,left:i=0,width:a=0,height:l=0,className:u}=e,c=mW(e,cW),f=fW({x:t,y:n,top:r,left:i,width:a,height:l},c);return!ge(t)||!ge(n)||!ge(a)||!ge(l)||!ge(r)||!ge(i)?null:k.createElement("path",gv({},dn(f),{className:Ge("recharts-cross",u),d:vW(t,n,a,l,r,i)}))};function xW(e,t,n,r){var i=r/2;return{stroke:"none",fill:"#ccc",x:e==="horizontal"?t.x-i:n.left+.5,y:e==="horizontal"?n.top+.5:t.y-i,width:e==="horizontal"?r:n.width-1,height:e==="horizontal"?n.height-1:r}}function MS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function LS(e){for(var t=1;te.replace(/([A-Z])/g,t=>"-".concat(t.toLowerCase())),ZN=(e,t,n)=>e.map(r=>"".concat(SW(r)," ").concat(t,"ms ").concat(n)).join(","),jW=(e,t)=>[Object.keys(e),Object.keys(t)].reduce((n,r)=>n.filter(i=>r.includes(i))),vs=(e,t)=>Object.keys(t).reduce((n,r)=>LS(LS({},n),{},{[r]:e(r,t[r])}),{});function RS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Ot(e){for(var t=1;te+(t-e)*n,vv=e=>{var{from:t,to:n}=e;return t!==n},JN=(e,t,n)=>{var r=vs((i,a)=>{if(vv(a)){var[l,u]=e(a.from,a.to,a.velocity);return Ot(Ot({},a),{},{from:l,velocity:u})}return a},t);return n<1?vs((i,a)=>vv(a)&&r[i]!=null?Ot(Ot({},a),{},{velocity:lf(a.velocity,r[i].velocity,n),from:lf(a.from,r[i].from,n)}):a,t):JN(e,r,n-1)};function OW(e,t,n,r,i,a){var l,u=r.reduce((g,y)=>Ot(Ot({},g),{},{[y]:{from:e[y],velocity:0,to:t[y]}}),{}),c=()=>vs((g,y)=>y.from,u),f=()=>!Object.values(u).filter(vv).length,d=null,p=g=>{l||(l=g);var y=g-l,b=y/n.dt;u=JN(n,u,b),i(Ot(Ot(Ot({},e),t),c())),l=g,f()||(d=a.setTimeout(p))};return()=>(d=a.setTimeout(p),()=>{var g;(g=d)===null||g===void 0||g()})}function NW(e,t,n,r,i,a,l){var u=null,c=i.reduce((p,g)=>{var y=e[g],b=t[g];return y==null||b==null?p:Ot(Ot({},p),{},{[g]:[y,b]})},{}),f,d=p=>{f||(f=p);var g=(p-f)/r,y=vs((S,w)=>lf(...w,n(g)),c);if(a(Ot(Ot(Ot({},e),t),y)),g<1)u=l.setTimeout(d);else{var b=vs((S,w)=>lf(...w,n(1)),c);a(Ot(Ot(Ot({},e),t),b))}};return()=>(u=l.setTimeout(d),()=>{var p;(p=u)===null||p===void 0||p()})}const AW=(e,t,n,r,i,a)=>{var l=jW(e,t);return n==null?()=>(i(Ot(Ot({},e),t)),()=>{}):n.isStepper===!0?OW(e,t,n,l,i,a):NW(e,t,n,r,l,i,a)};var sf=1e-4,eA=(e,t)=>[0,3*e,3*t-6*e,3*e-3*t+1],tA=(e,t)=>e.map((n,r)=>n*t**r).reduce((n,r)=>n+r),zS=(e,t)=>n=>{var r=eA(e,t);return tA(r,n)},_W=(e,t)=>n=>{var r=eA(e,t),i=[...r.map((a,l)=>a*l).slice(1),0];return tA(i,n)},IW=e=>{var t,n=e.split("(");if(n.length!==2||n[0]!=="cubic-bezier")return null;var r=(t=n[1])===null||t===void 0||(t=t.split(")")[0])===null||t===void 0?void 0:t.split(",");if(r==null||r.length!==4)return null;var i=r.map(a=>parseFloat(a));return[i[0],i[1],i[2],i[3]]},TW=function(){for(var t=arguments.length,n=new Array(t),r=0;r{var i=zS(e,n),a=zS(t,r),l=_W(e,n),u=f=>f>1?1:f<0?0:f,c=f=>{for(var d=f>1?1:f,p=d,g=0;g<8;++g){var y=i(p)-d,b=l(p);if(Math.abs(y-d)0&&arguments[0]!==void 0?arguments[0]:{},{stiff:n=100,damping:r=8,dt:i=17}=t,a=(l,u,c)=>{var f=-(l-u)*n,d=c*r,p=c+(f-d)*i/1e3,g=c*i/1e3+l;return Math.abs(g-u){if(typeof e=="string")switch(e){case"ease":case"ease-in-out":case"ease-out":case"ease-in":case"linear":return $S(e);case"spring":return MW();default:if(e.split("(")[0]==="cubic-bezier")return $S(e)}return typeof e=="function"?e:null};function RW(e){var t,n=()=>null,r=!1,i=null,a=l=>{if(!r){if(Array.isArray(l)){if(!l.length)return;var u=l,[c,...f]=u;if(typeof c=="number"){i=e.setTimeout(a.bind(null,f),c);return}a(c),i=e.setTimeout(a.bind(null,f));return}typeof l=="string"&&(t=l,n(t)),typeof l=="object"&&(t=l,n(t)),typeof l=="function"&&l()}};return{stop:()=>{r=!0},start:l=>{r=!1,i&&(i(),i=null),a(l)},subscribe:l=>(n=l,()=>{n=()=>null}),getTimeoutController:()=>e}}class zW{setTimeout(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=performance.now(),i=null,a=l=>{l-r>=n?t(l):typeof requestAnimationFrame=="function"&&(i=requestAnimationFrame(a))};return i=requestAnimationFrame(a),()=>{i!=null&&cancelAnimationFrame(i)}}}function $W(){return RW(new zW)}var FW=k.createContext($W);function BW(e,t){var n=k.useContext(FW);return k.useMemo(()=>t??n(e),[e,t,n])}var UW=()=>!(typeof window<"u"&&window.document&&window.document.createElement&&window.setTimeout),Ls={isSsr:UW()},WW={begin:0,duration:1e3,easing:"ease",isActive:!0,canBegin:!0,onAnimationEnd:()=>{},onAnimationStart:()=>{}},FS={t:0},Qm={t:1};function fd(e){var t=mn(e,WW),{isActive:n,canBegin:r,duration:i,easing:a,begin:l,onAnimationEnd:u,onAnimationStart:c,children:f}=t,d=n==="auto"?!Ls.isSsr:n,p=BW(t.animationId,t.animationManager),[g,y]=k.useState(d?FS:Qm),b=k.useRef(null);return k.useEffect(()=>{d||y(Qm)},[d]),k.useEffect(()=>{if(!d||!r)return $a;var S=AW(FS,Qm,LW(a),i,y,p.getTimeoutController()),w=()=>{b.current=S()};return p.start([c,l,w,i,u]),()=>{p.stop(),b.current&&b.current(),u()}},[d,r,i,a,l,c,u,p]),f(g.t)}function dd(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"animation-",n=k.useRef(cs(t)),r=k.useRef(e);return r.current!==e&&(n.current=cs(t),r.current=e),n.current}var qW=["radius"],HW=["radius"],BS,US,WS,qS,HS,VS,KS,GS,YS,XS;function QS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function ZS(e){for(var t=1;t{var a=Vi(n),l=Vi(r),u=Math.min(Math.abs(a)/2,Math.abs(l)/2),c=l>=0?1:-1,f=a>=0?1:-1,d=l>=0&&a>=0||l<0&&a<0?1:0,p;if(u>0&&Array.isArray(i)){for(var g=[0,0,0,0],y=0,b=4;yu?u:w}p=pt(BS||(BS=Er(["M",",",""])),e,t+c*g[0]),g[0]>0&&(p+=pt(US||(US=Er(["A ",",",",0,0,",",",",",""])),g[0],g[0],d,e+f*g[0],t)),p+=pt(WS||(WS=Er(["L ",",",""])),e+n-f*g[1],t),g[1]>0&&(p+=pt(qS||(qS=Er(["A ",",",",0,0,",`, - `,",",""])),g[1],g[1],d,e+n,t+c*g[1])),p+=pt(HS||(HS=Er(["L ",",",""])),e+n,t+r-c*g[2]),g[2]>0&&(p+=pt(VS||(VS=Er(["A ",",",",0,0,",`, - `,",",""])),g[2],g[2],d,e+n-f*g[2],t+r)),p+=pt(KS||(KS=Er(["L ",",",""])),e+f*g[3],t+r),g[3]>0&&(p+=pt(GS||(GS=Er(["A ",",",",0,0,",`, - `,",",""])),g[3],g[3],d,e,t+r-c*g[3])),p+="Z"}else if(u>0&&i===+i&&i>0){var P=Math.min(u,i);p=pt(YS||(YS=Er(["M ",",",` + height and width.`,E,L,i,a,l,u,n),k.createElement("div",{id:p?"".concat(p):void 0,className:Ge("recharts-responsive-container",g),style:kS(kS({},x),{},{width:i,height:a,minWidth:l,minHeight:u,maxHeight:c}),ref:S},k.createElement("div",{style:_8({width:i,height:a})},k.createElement(WN,{width:E,height:L},f)))}),qN=k.forwardRef((e,t)=>{var n=Ty();if(Lr(n.width)&&Lr(n.height))return e.children;var{width:r,height:i}=I8({width:e.width,height:e.height,aspect:e.aspect}),{calculatedWidth:a,calculatedHeight:l}=BN(void 0,void 0,{width:r,height:i,aspect:e.aspect,maxHeight:e.maxHeight});return ge(a)&&ge(l)?k.createElement(WN,{width:a,height:l},e.children):k.createElement(R8,sv({},e,{width:r,height:i,ref:t}))});function My(e){if(e)return{x:e.x,y:e.y,upperWidth:"upperWidth"in e?e.upperWidth:e.width,lowerWidth:"lowerWidth"in e?e.lowerWidth:e.width,width:e.width,height:e.height}}var sd=()=>{var e,t=on(),n=Pe(x8),r=Pe(ld),i=(e=Pe(od))===null||e===void 0?void 0:e.padding;return!t||!r||!i?n:{width:r.width-i.left-i.right,height:r.height-i.top-i.bottom,x:i.left,y:i.top}},z8={top:0,bottom:0,left:0,right:0,width:0,height:0,brushBottom:0},HN=()=>{var e;return(e=Pe(zt))!==null&&e!==void 0?e:z8},VN=()=>Pe(di),KN=()=>Pe(hi),He=e=>e.layout.layoutType,Ba=()=>Pe(He),Dy=()=>{var e=Ba();if(e==="horizontal"||e==="vertical")return e},GN=e=>{var t=e.layout.layoutType;if(t==="centric"||t==="radial")return t},$8=()=>{var e=Ba();return e!==void 0},Ds=e=>{var t=yt(),n=on(),{width:r,height:i}=e,a=Ty(),l=r,u=i;return a&&(l=a.width>0?a.width:r,u=a.height>0?a.height:i),k.useEffect(()=>{!n&&Lr(l)&&Lr(u)&&t(qU({width:l,height:u}))},[t,n,l,u]),null},YN=Symbol.for("immer-nothing"),SS=Symbol.for("immer-draftable"),$n=Symbol.for("immer-state");function dr(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var ms=Object.getPrototypeOf;function Lo(e){return!!e&&!!e[$n]}function Ta(e){var t;return e?XN(e)||Array.isArray(e)||!!e[SS]||!!((t=e.constructor)!=null&&t[SS])||Ls(e)||cd(e):!1}var F8=Object.prototype.constructor.toString(),jS=new WeakMap;function XN(e){if(!e||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);if(t===null||t===Object.prototype)return!0;const n=Object.hasOwnProperty.call(t,"constructor")&&t.constructor;if(n===Object)return!0;if(typeof n!="function")return!1;let r=jS.get(n);return r===void 0&&(r=Function.toString.call(n),jS.set(n,r)),r===F8}function rf(e,t,n=!0){ud(e)===0?(n?Reflect.ownKeys(e):Object.keys(e)).forEach(i=>{t(i,e[i],e)}):e.forEach((r,i)=>t(i,r,e))}function ud(e){const t=e[$n];return t?t.type_:Array.isArray(e)?1:Ls(e)?2:cd(e)?3:0}function uv(e,t){return ud(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function QN(e,t,n){const r=ud(e);r===2?e.set(t,n):r===3?e.add(n):e[t]=n}function B8(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}function Ls(e){return e instanceof Map}function cd(e){return e instanceof Set}function xa(e){return e.copy_||e.base_}function cv(e,t){if(Ls(e))return new Map(e);if(cd(e))return new Set(e);if(Array.isArray(e))return Array.prototype.slice.call(e);const n=XN(e);if(t===!0||t==="class_only"&&!n){const r=Object.getOwnPropertyDescriptors(e);delete r[$n];let i=Reflect.ownKeys(r);for(let a=0;a1&&Object.defineProperties(e,{set:vc,add:vc,clear:vc,delete:vc}),Object.freeze(e),t&&Object.values(e).forEach(n=>Ly(n,!0))),e}function U8(){dr(2)}var vc={value:U8};function fd(e){return e===null||typeof e!="object"?!0:Object.isFrozen(e)}var W8={};function Ma(e){const t=W8[e];return t||dr(0,e),t}var gs;function ZN(){return gs}function q8(e,t){return{drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function PS(e,t){t&&(Ma("Patches"),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function fv(e){dv(e),e.drafts_.forEach(H8),e.drafts_=null}function dv(e){e===gs&&(gs=e.parent_)}function ES(e){return gs=q8(gs,e)}function H8(e){const t=e[$n];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function CS(e,t){t.unfinalizedDrafts_=t.drafts_.length;const n=t.drafts_[0];return e!==void 0&&e!==n?(n[$n].modified_&&(fv(t),dr(4)),Ta(e)&&(e=af(t,e),t.parent_||of(t,e)),t.patches_&&Ma("Patches").generateReplacementPatches_(n[$n].base_,e,t.patches_,t.inversePatches_)):e=af(t,n,[]),fv(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==YN?e:void 0}function af(e,t,n){if(fd(t))return t;const r=e.immer_.shouldUseStrictIteration(),i=t[$n];if(!i)return rf(t,(a,l)=>OS(e,i,t,a,l,n),r),t;if(i.scope_!==e)return t;if(!i.modified_)return of(e,i.base_,!0),i.base_;if(!i.finalized_){i.finalized_=!0,i.scope_.unfinalizedDrafts_--;const a=i.copy_;let l=a,u=!1;i.type_===3&&(l=new Set(a),a.clear(),u=!0),rf(l,(c,f)=>OS(e,i,a,c,f,n,u),r),of(e,a,!1),n&&e.patches_&&Ma("Patches").generatePatches_(i,n,e.patches_,e.inversePatches_)}return i.copy_}function OS(e,t,n,r,i,a,l){if(i==null||typeof i!="object"&&!l)return;const u=fd(i);if(!(u&&!l)){if(Lo(i)){const c=a&&t&&t.type_!==3&&!uv(t.assigned_,r)?a.concat(r):void 0,f=af(e,i,c);if(QN(n,r,f),Lo(f))e.canAutoFreeze_=!1;else return}else l&&n.add(i);if(Ta(i)&&!u){if(!e.immer_.autoFreeze_&&e.unfinalizedDrafts_<1||t&&t.base_&&t.base_[r]===i&&u)return;af(e,i),(!t||!t.scope_.parent_)&&typeof r!="symbol"&&(Ls(n)?n.has(r):Object.prototype.propertyIsEnumerable.call(n,r))&&of(e,i)}}}function of(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&Ly(t,n)}function V8(e,t){const n=Array.isArray(e),r={type_:n?1:0,scope_:t?t.scope_:ZN(),modified_:!1,finalized_:!1,assigned_:{},parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1};let i=r,a=Ry;n&&(i=[r],a=vs);const{revoke:l,proxy:u}=Proxy.revocable(i,a);return r.draft_=u,r.revoke_=l,u}var Ry={get(e,t){if(t===$n)return e;const n=xa(e);if(!uv(n,t))return K8(e,n,t);const r=n[t];return e.finalized_||!Ta(r)?r:r===Qm(e.base_,t)?(Zm(e),e.copy_[t]=pv(r,e)):r},has(e,t){return t in xa(e)},ownKeys(e){return Reflect.ownKeys(xa(e))},set(e,t,n){const r=JN(xa(e),t);if(r!=null&&r.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){const i=Qm(xa(e),t),a=i==null?void 0:i[$n];if(a&&a.base_===n)return e.copy_[t]=n,e.assigned_[t]=!1,!0;if(B8(n,i)&&(n!==void 0||uv(e.base_,t)))return!0;Zm(e),hv(e)}return e.copy_[t]===n&&(n!==void 0||t in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=n,e.assigned_[t]=!0),!0},deleteProperty(e,t){return Qm(e.base_,t)!==void 0||t in e.base_?(e.assigned_[t]=!1,Zm(e),hv(e)):delete e.assigned_[t],e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const n=xa(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{writable:!0,configurable:e.type_!==1||t!=="length",enumerable:r.enumerable,value:n[t]}},defineProperty(){dr(11)},getPrototypeOf(e){return ms(e.base_)},setPrototypeOf(){dr(12)}},vs={};rf(Ry,(e,t)=>{vs[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}});vs.deleteProperty=function(e,t){return vs.set.call(this,e,t,void 0)};vs.set=function(e,t,n){return Ry.set.call(this,e[0],t,n,e[0])};function Qm(e,t){const n=e[$n];return(n?xa(n):e)[t]}function K8(e,t,n){var i;const r=JN(t,n);return r?"value"in r?r.value:(i=r.get)==null?void 0:i.call(e.draft_):void 0}function JN(e,t){if(!(t in e))return;let n=ms(e);for(;n;){const r=Object.getOwnPropertyDescriptor(n,t);if(r)return r;n=ms(n)}}function hv(e){e.modified_||(e.modified_=!0,e.parent_&&hv(e.parent_))}function Zm(e){e.copy_||(e.copy_=cv(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var G8=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!0,this.produce=(t,n,r)=>{if(typeof t=="function"&&typeof n!="function"){const a=n;n=t;const l=this;return function(c=a,...f){return l.produce(c,d=>n.call(this,d,...f))}}typeof n!="function"&&dr(6),r!==void 0&&typeof r!="function"&&dr(7);let i;if(Ta(t)){const a=ES(this),l=pv(t,void 0);let u=!0;try{i=n(l),u=!1}finally{u?fv(a):dv(a)}return PS(a,r),CS(i,a)}else if(!t||typeof t!="object"){if(i=n(t),i===void 0&&(i=t),i===YN&&(i=void 0),this.autoFreeze_&&Ly(i,!0),r){const a=[],l=[];Ma("Patches").generateReplacementPatches_(t,i,a,l),r(a,l)}return i}else dr(1,t)},this.produceWithPatches=(t,n)=>{if(typeof t=="function")return(l,...u)=>this.produceWithPatches(l,c=>t(c,...u));let r,i;return[this.produce(t,n,(l,u)=>{r=l,i=u}),r,i]},typeof(e==null?void 0:e.autoFreeze)=="boolean"&&this.setAutoFreeze(e.autoFreeze),typeof(e==null?void 0:e.useStrictShallowCopy)=="boolean"&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),typeof(e==null?void 0:e.useStrictIteration)=="boolean"&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){Ta(e)||dr(8),Lo(e)&&(e=Y8(e));const t=ES(this),n=pv(e,void 0);return n[$n].isManual_=!0,dv(t),n}finishDraft(e,t){const n=e&&e[$n];(!n||!n.isManual_)&&dr(9);const{scope_:r}=n;return PS(r,t),CS(void 0,r)}setAutoFreeze(e){this.autoFreeze_=e}setUseStrictShallowCopy(e){this.useStrictShallowCopy_=e}setUseStrictIteration(e){this.useStrictIteration_=e}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(e,t){let n;for(n=t.length-1;n>=0;n--){const i=t[n];if(i.path.length===0&&i.op==="replace"){e=i.value;break}}n>-1&&(t=t.slice(n+1));const r=Ma("Patches").applyPatches_;return Lo(e)?r(e,t):this.produce(e,i=>r(i,t))}};function pv(e,t){const n=Ls(e)?Ma("MapSet").proxyMap_(e,t):cd(e)?Ma("MapSet").proxySet_(e,t):V8(e,t);return(t?t.scope_:ZN()).drafts_.push(n),n}function Y8(e){return Lo(e)||dr(10,e),eA(e)}function eA(e){if(!Ta(e)||fd(e))return e;const t=e[$n];let n,r=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=cv(e,t.scope_.immer_.useStrictShallowCopy_),r=t.scope_.immer_.shouldUseStrictIteration()}else n=cv(e,!0);return rf(n,(i,a)=>{QN(n,i,eA(a))},r),t&&(t.finalized_=!1),n}var X8=new G8;X8.produce;var Q8={settings:{layout:"horizontal",align:"center",verticalAlign:"middle",itemSorter:"value"},size:{width:0,height:0},payload:[]},tA=On({name:"legend",initialState:Q8,reducers:{setLegendSize(e,t){e.size.width=t.payload.width,e.size.height=t.payload.height},setLegendSettings(e,t){e.settings.align=t.payload.align,e.settings.layout=t.payload.layout,e.settings.verticalAlign=t.payload.verticalAlign,e.settings.itemSorter=t.payload.itemSorter},addLegendPayload:{reducer(e,t){e.payload.push(t.payload)},prepare:at()},replaceLegendPayload:{reducer(e,t){var{prev:n,next:r}=t.payload,i=mr(e).payload.indexOf(n);i>-1&&(e.payload[i]=r)},prepare:at()},removeLegendPayload:{reducer(e,t){var n=mr(e).payload.indexOf(t.payload);n>-1&&e.payload.splice(n,1)},prepare:at()}}}),{setLegendSize:Tte,setLegendSettings:Mte,addLegendPayload:Z8,replaceLegendPayload:J8,removeLegendPayload:eW}=tA.actions,tW=tA.reducer;function mv(){return mv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{separator:t=vo.separator,contentStyle:n,itemStyle:r,labelStyle:i=vo.labelStyle,payload:a,formatter:l,itemSorter:u,wrapperClassName:c,labelClassName:f,label:d,labelFormatter:p,accessibilityLayer:g=vo.accessibilityLayer}=e,y=()=>{if(a&&a.length){var I={padding:0,margin:0},E=(u?Kf(a,u):a).map((L,F)=>{if(L.type==="none")return null;var H=L.formatter||l||aW,{value:R,name:W}=L,M=R,Z=W;if(H){var Y=H(R,W,L,F,a);if(Array.isArray(Y))[M,Z]=Y;else if(Y!=null)M=Y;else return null}var Q=Ul(Ul({},vo.itemStyle),{},{color:L.color||vo.itemStyle.color},r);return k.createElement("li",{className:"recharts-tooltip-item",key:"tooltip-item-".concat(F),style:Q},Dr(Z)?k.createElement("span",{className:"recharts-tooltip-item-name"},Z):null,Dr(Z)?k.createElement("span",{className:"recharts-tooltip-item-separator"},t):null,k.createElement("span",{className:"recharts-tooltip-item-value"},M),k.createElement("span",{className:"recharts-tooltip-item-unit"},L.unit||""))});return k.createElement("ul",{className:"recharts-tooltip-item-list",style:I},E)}return null},x=Ul(Ul({},vo.contentStyle),n),S=Ul({margin:0},i),w=!mt(d),P=w?d:"",C=Ge("recharts-default-tooltip",c),O=Ge("recharts-tooltip-label",f);w&&p&&a!==void 0&&a!==null&&(P=p(d,a));var A=g?{role:"status","aria-live":"assertive"}:{};return k.createElement("div",mv({className:C,style:x},A),k.createElement("p",{className:O,style:S},k.isValidElement(P)?P:"".concat(P)),y())},Wl="recharts-tooltip-wrapper",lW={visibility:"hidden"};function sW(e){var{coordinate:t,translateX:n,translateY:r}=e;return Ge(Wl,{["".concat(Wl,"-right")]:ge(n)&&t&&ge(t.x)&&n>=t.x,["".concat(Wl,"-left")]:ge(n)&&t&&ge(t.x)&&n=t.y,["".concat(Wl,"-top")]:ge(r)&&t&&ge(t.y)&&r0?i:0),p=n[r]+i;if(t[r])return l[r]?d:p;var g=c[r];if(g==null)return 0;if(l[r]){var y=d,x=g;return yw?Math.max(d,g):Math.max(p,g)}function uW(e){var{translateX:t,translateY:n,useTranslate3d:r}=e;return{transform:r?"translate3d(".concat(t,"px, ").concat(n,"px, 0)"):"translate(".concat(t,"px, ").concat(n,"px)")}}function cW(e){var{allowEscapeViewBox:t,coordinate:n,offsetTop:r,offsetLeft:i,position:a,reverseDirection:l,tooltipBox:u,useTranslate3d:c,viewBox:f}=e,d,p,g;return u.height>0&&u.width>0&&n?(p=AS({allowEscapeViewBox:t,coordinate:n,key:"x",offset:i,position:a,reverseDirection:l,tooltipDimension:u.width,viewBox:f,viewBoxDimension:f.width}),g=AS({allowEscapeViewBox:t,coordinate:n,key:"y",offset:r,position:a,reverseDirection:l,tooltipDimension:u.height,viewBox:f,viewBoxDimension:f.height}),d=uW({translateX:p,translateY:g,useTranslate3d:c})):d=lW,{cssProperties:d,cssClasses:sW({translateX:p,translateY:g,coordinate:n})}}function _S(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function yc(e){for(var t=1;t{if(t.key==="Escape"){var n,r,i,a;this.setState({dismissed:!0,dismissedAtCoordinate:{x:(n=(r=this.props.coordinate)===null||r===void 0?void 0:r.x)!==null&&n!==void 0?n:0,y:(i=(a=this.props.coordinate)===null||a===void 0?void 0:a.y)!==null&&i!==void 0?i:0}})}})}componentDidMount(){document.addEventListener("keydown",this.handleKeyDown)}componentWillUnmount(){document.removeEventListener("keydown",this.handleKeyDown)}componentDidUpdate(){var t,n;this.state.dismissed&&(((t=this.props.coordinate)===null||t===void 0?void 0:t.x)!==this.state.dismissedAtCoordinate.x||((n=this.props.coordinate)===null||n===void 0?void 0:n.y)!==this.state.dismissedAtCoordinate.y)&&(this.state.dismissed=!1)}render(){var{active:t,allowEscapeViewBox:n,animationDuration:r,animationEasing:i,children:a,coordinate:l,hasPayload:u,isAnimationActive:c,offset:f,position:d,reverseDirection:p,useTranslate3d:g,viewBox:y,wrapperStyle:x,lastBoundingBox:S,innerRef:w,hasPortalFromProps:P}=this.props,C=typeof f=="number"?f:f.x,O=typeof f=="number"?f:f.y,{cssClasses:A,cssProperties:I}=cW({allowEscapeViewBox:n,coordinate:l,offsetLeft:C,offsetTop:O,position:d,reverseDirection:p,tooltipBox:{height:S.height,width:S.width},useTranslate3d:g,viewBox:y}),E=P?{}:yc(yc({transition:c&&t?"transform ".concat(r,"ms ").concat(i):void 0},I),{},{pointerEvents:"none",visibility:!this.state.dismissed&&t&&u?"visible":"hidden",position:"absolute",top:0,left:0}),L=yc(yc({},E),{},{visibility:!this.state.dismissed&&t&&u?"visible":"hidden"},x);return k.createElement("div",{xmlns:"http://www.w3.org/1999/xhtml",tabIndex:-1,className:A,style:L,ref:w},a)}}var nA=()=>{var e;return(e=Pe(t=>t.rootProps.accessibilityLayer))!==null&&e!==void 0?e:!0};function vv(){return vv=Object.assign?Object.assign.bind():function(e){for(var t=1;tMe(e.x)&&Me(e.y),DS=e=>e.base!=null&&lf(e.base)&&lf(e),ql=e=>e.x,Hl=e=>e.y,vW=(e,t)=>{if(typeof e=="function")return e;var n="curve".concat(_s(e));if((n==="curveMonotone"||n==="curveBump")&&t){var r=MS["".concat(n).concat(t==="vertical"?"Y":"X")];if(r)return r}return MS[n]||Hf},LS={connectNulls:!1,type:"linear"},yW=e=>{var{type:t=LS.type,points:n=[],baseLine:r,layout:i,connectNulls:a=LS.connectNulls}=e,l=vW(t,i),u=a?n.filter(lf):n;if(Array.isArray(r)){var c,f=n.map((x,S)=>TS(TS({},x),{},{base:r[S]}));i==="vertical"?c=cc().y(Hl).x1(ql).x0(x=>x.base.x):c=cc().x(ql).y1(Hl).y0(x=>x.base.y);var d=c.defined(DS).curve(l),p=a?f.filter(DS):f;return d(p)}var g;i==="vertical"&&ge(r)?g=cc().y(Hl).x1(ql).x0(r):ge(r)?g=cc().x(ql).y1(Hl).y0(r):g=IO().x(ql).y(Hl);var y=g.defined(lf).curve(l);return y(u)},os=e=>{var{className:t,points:n,path:r,pathRef:i}=e,a=Ba();if((!n||!n.length)&&!r)return null;var l={type:e.type,points:e.points,baseLine:e.baseLine,layout:e.layout||a,connectNulls:e.connectNulls},u=n&&n.length?yW(l):r;return k.createElement("path",vv({},Jn(e),wy(e),{className:Ge("recharts-curve",t),d:u===null?void 0:u,ref:i}))},xW=["x","y","top","left","width","height","className"];function yv(){return yv=Object.assign?Object.assign.bind():function(e){for(var t=1;t"M".concat(e,",").concat(i,"v").concat(r,"M").concat(a,",").concat(t,"h").concat(n),CW=e=>{var{x:t=0,y:n=0,top:r=0,left:i=0,width:a=0,height:l=0,className:u}=e,c=jW(e,xW),f=bW({x:t,y:n,top:r,left:i,width:a,height:l},c);return!ge(t)||!ge(n)||!ge(a)||!ge(l)||!ge(r)||!ge(i)?null:k.createElement("path",yv({},dn(f),{className:Ge("recharts-cross",u),d:EW(t,n,a,l,r,i)}))};function OW(e,t,n,r){var i=r/2;return{stroke:"none",fill:"#ccc",x:e==="horizontal"?t.x-i:n.left+.5,y:e==="horizontal"?n.top+.5:t.y-i,width:e==="horizontal"?r:n.width-1,height:e==="horizontal"?n.height-1:r}}function zS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function $S(e){for(var t=1;te.replace(/([A-Z])/g,t=>"-".concat(t.toLowerCase())),rA=(e,t,n)=>e.map(r=>"".concat(IW(r)," ").concat(t,"ms ").concat(n)).join(","),TW=(e,t)=>[Object.keys(e),Object.keys(t)].reduce((n,r)=>n.filter(i=>r.includes(i))),ys=(e,t)=>Object.keys(t).reduce((n,r)=>$S($S({},n),{},{[r]:e(r,t[r])}),{});function FS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Ot(e){for(var t=1;te+(t-e)*n,xv=e=>{var{from:t,to:n}=e;return t!==n},iA=(e,t,n)=>{var r=ys((i,a)=>{if(xv(a)){var[l,u]=e(a.from,a.to,a.velocity);return Ot(Ot({},a),{},{from:l,velocity:u})}return a},t);return n<1?ys((i,a)=>xv(a)&&r[i]!=null?Ot(Ot({},a),{},{velocity:sf(a.velocity,r[i].velocity,n),from:sf(a.from,r[i].from,n)}):a,t):iA(e,r,n-1)};function RW(e,t,n,r,i,a){var l,u=r.reduce((g,y)=>Ot(Ot({},g),{},{[y]:{from:e[y],velocity:0,to:t[y]}}),{}),c=()=>ys((g,y)=>y.from,u),f=()=>!Object.values(u).filter(xv).length,d=null,p=g=>{l||(l=g);var y=g-l,x=y/n.dt;u=iA(n,u,x),i(Ot(Ot(Ot({},e),t),c())),l=g,f()||(d=a.setTimeout(p))};return()=>(d=a.setTimeout(p),()=>{var g;(g=d)===null||g===void 0||g()})}function zW(e,t,n,r,i,a,l){var u=null,c=i.reduce((p,g)=>{var y=e[g],x=t[g];return y==null||x==null?p:Ot(Ot({},p),{},{[g]:[y,x]})},{}),f,d=p=>{f||(f=p);var g=(p-f)/r,y=ys((S,w)=>sf(...w,n(g)),c);if(a(Ot(Ot(Ot({},e),t),y)),g<1)u=l.setTimeout(d);else{var x=ys((S,w)=>sf(...w,n(1)),c);a(Ot(Ot(Ot({},e),t),x))}};return()=>(u=l.setTimeout(d),()=>{var p;(p=u)===null||p===void 0||p()})}const $W=(e,t,n,r,i,a)=>{var l=TW(e,t);return n==null?()=>(i(Ot(Ot({},e),t)),()=>{}):n.isStepper===!0?RW(e,t,n,l,i,a):zW(e,t,n,r,l,i,a)};var uf=1e-4,aA=(e,t)=>[0,3*e,3*t-6*e,3*e-3*t+1],oA=(e,t)=>e.map((n,r)=>n*t**r).reduce((n,r)=>n+r),BS=(e,t)=>n=>{var r=aA(e,t);return oA(r,n)},FW=(e,t)=>n=>{var r=aA(e,t),i=[...r.map((a,l)=>a*l).slice(1),0];return oA(i,n)},BW=e=>{var t,n=e.split("(");if(n.length!==2||n[0]!=="cubic-bezier")return null;var r=(t=n[1])===null||t===void 0||(t=t.split(")")[0])===null||t===void 0?void 0:t.split(",");if(r==null||r.length!==4)return null;var i=r.map(a=>parseFloat(a));return[i[0],i[1],i[2],i[3]]},UW=function(){for(var t=arguments.length,n=new Array(t),r=0;r{var i=BS(e,n),a=BS(t,r),l=FW(e,n),u=f=>f>1?1:f<0?0:f,c=f=>{for(var d=f>1?1:f,p=d,g=0;g<8;++g){var y=i(p)-d,x=l(p);if(Math.abs(y-d)0&&arguments[0]!==void 0?arguments[0]:{},{stiff:n=100,damping:r=8,dt:i=17}=t,a=(l,u,c)=>{var f=-(l-u)*n,d=c*r,p=c+(f-d)*i/1e3,g=c*i/1e3+l;return Math.abs(g-u){if(typeof e=="string")switch(e){case"ease":case"ease-in-out":case"ease-out":case"ease-in":case"linear":return US(e);case"spring":return qW();default:if(e.split("(")[0]==="cubic-bezier")return US(e)}return typeof e=="function"?e:null};function VW(e){var t,n=()=>null,r=!1,i=null,a=l=>{if(!r){if(Array.isArray(l)){if(!l.length)return;var u=l,[c,...f]=u;if(typeof c=="number"){i=e.setTimeout(a.bind(null,f),c);return}a(c),i=e.setTimeout(a.bind(null,f));return}typeof l=="string"&&(t=l,n(t)),typeof l=="object"&&(t=l,n(t)),typeof l=="function"&&l()}};return{stop:()=>{r=!0},start:l=>{r=!1,i&&(i(),i=null),a(l)},subscribe:l=>(n=l,()=>{n=()=>null}),getTimeoutController:()=>e}}class KW{setTimeout(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=performance.now(),i=null,a=l=>{l-r>=n?t(l):typeof requestAnimationFrame=="function"&&(i=requestAnimationFrame(a))};return i=requestAnimationFrame(a),()=>{i!=null&&cancelAnimationFrame(i)}}}function GW(){return VW(new KW)}var YW=k.createContext(GW);function XW(e,t){var n=k.useContext(YW);return k.useMemo(()=>t??n(e),[e,t,n])}var QW=()=>!(typeof window<"u"&&window.document&&window.document.createElement&&window.setTimeout),Rs={isSsr:QW()},ZW={begin:0,duration:1e3,easing:"ease",isActive:!0,canBegin:!0,onAnimationEnd:()=>{},onAnimationStart:()=>{}},WS={t:0},Jm={t:1};function dd(e){var t=mn(e,ZW),{isActive:n,canBegin:r,duration:i,easing:a,begin:l,onAnimationEnd:u,onAnimationStart:c,children:f}=t,d=n==="auto"?!Rs.isSsr:n,p=XW(t.animationId,t.animationManager),[g,y]=k.useState(d?WS:Jm),x=k.useRef(null);return k.useEffect(()=>{d||y(Jm)},[d]),k.useEffect(()=>{if(!d||!r)return Fa;var S=$W(WS,Jm,HW(a),i,y,p.getTimeoutController()),w=()=>{x.current=S()};return p.start([c,l,w,i,u]),()=>{p.stop(),x.current&&x.current(),u()}},[d,r,i,a,l,c,u,p]),f(g.t)}function hd(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"animation-",n=k.useRef(fs(t)),r=k.useRef(e);return r.current!==e&&(n.current=fs(t),r.current=e),n.current}var JW=["radius"],e9=["radius"],qS,HS,VS,KS,GS,YS,XS,QS,ZS,JS;function ej(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function tj(e){for(var t=1;t{var a=Ki(n),l=Ki(r),u=Math.min(Math.abs(a)/2,Math.abs(l)/2),c=l>=0?1:-1,f=a>=0?1:-1,d=l>=0&&a>=0||l<0&&a<0?1:0,p;if(u>0&&Array.isArray(i)){for(var g=[0,0,0,0],y=0,x=4;yu?u:w}p=pt(qS||(qS=Cr(["M",",",""])),e,t+c*g[0]),g[0]>0&&(p+=pt(HS||(HS=Cr(["A ",",",",0,0,",",",",",""])),g[0],g[0],d,e+f*g[0],t)),p+=pt(VS||(VS=Cr(["L ",",",""])),e+n-f*g[1],t),g[1]>0&&(p+=pt(KS||(KS=Cr(["A ",",",",0,0,",`, + `,",",""])),g[1],g[1],d,e+n,t+c*g[1])),p+=pt(GS||(GS=Cr(["L ",",",""])),e+n,t+r-c*g[2]),g[2]>0&&(p+=pt(YS||(YS=Cr(["A ",",",",0,0,",`, + `,",",""])),g[2],g[2],d,e+n-f*g[2],t+r)),p+=pt(XS||(XS=Cr(["L ",",",""])),e+f*g[3],t+r),g[3]>0&&(p+=pt(QS||(QS=Cr(["A ",",",",0,0,",`, + `,",",""])),g[3],g[3],d,e,t+r-c*g[3])),p+="Z"}else if(u>0&&i===+i&&i>0){var P=Math.min(u,i);p=pt(ZS||(ZS=Cr(["M ",",",` A `,",",",0,0,",",",",",` L `,",",` A `,",",",0,0,",",",",",` L `,",",` A `,",",",0,0,",",",",",` L `,",",` - A `,",",",0,0,",",",","," Z"])),e,t+c*P,P,P,d,e+f*P,t,e+n-f*P,t,P,P,d,e+n,t+c*P,e+n,t+r-c*P,P,P,d,e+n-f*P,t+r,e+f*P,t+r,P,P,d,e,t+r-c*P)}else p=pt(XS||(XS=Er(["M ",","," h "," v "," h "," Z"])),e,t,n,r,-n);return p},tj={x:0,y:0,width:0,height:0,radius:0,isAnimationActive:!1,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},nA=e=>{var t=mn(e,tj),n=k.useRef(null),[r,i]=k.useState(-1);k.useEffect(()=>{if(n.current&&n.current.getTotalLength)try{var de=n.current.getTotalLength();de&&i(de)}catch{}},[]);var{x:a,y:l,width:u,height:c,radius:f,className:d}=t,{animationEasing:p,animationDuration:g,animationBegin:y,isAnimationActive:b,isUpdateAnimationActive:S}=t,w=k.useRef(u),P=k.useRef(c),C=k.useRef(a),O=k.useRef(l),A=k.useMemo(()=>({x:a,y:l,width:u,height:c,radius:f}),[a,l,u,c,f]),I=dd(A,"rectangle-");if(a!==+a||l!==+l||u!==+u||c!==+c||u===0||c===0)return null;var E=Ge("recharts-rectangle",d);if(!S){var L=dn(t),{radius:F}=L,H=JS(L,qW);return k.createElement("path",uf({},H,{x:Vi(a),y:Vi(l),width:Vi(u),height:Vi(c),radius:typeof f=="number"?f:void 0,className:E,d:ej(a,l,u,c,f)}))}var R=w.current,W=P.current,D=C.current,Z=O.current,Y="0px ".concat(r===-1?1:r,"px"),Q="".concat(r,"px 0px"),he=ZN(["strokeDasharray"],g,typeof p=="string"?p:tj.animationEasing);return k.createElement(fd,{animationId:I,key:I,canBegin:r>0,duration:g,easing:p,isActive:S,begin:y},de=>{var J=ut(R,u,de),ae=ut(W,c,de),T=ut(D,a,de),$=ut(Z,l,de);n.current&&(w.current=J,P.current=ae,C.current=T,O.current=$);var U;b?de>0?U={transition:he,strokeDasharray:Q}:U={strokeDasharray:Y}:U={strokeDasharray:Q};var _=dn(t),{radius:te}=_,fe=JS(_,HW);return k.createElement("path",uf({},fe,{radius:typeof f=="number"?f:void 0,className:E,d:ej(T,$,J,ae,f),ref:n,style:ZS(ZS({},U),t.style)}))})};function nj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function rj(e){for(var t=1;te*180/Math.PI,Xt=(e,t,n,r)=>({x:e+Math.cos(-cf*r)*n,y:t+Math.sin(-cf*r)*n}),e9=function(t,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{top:0,right:0,bottom:0,left:0};return Math.min(Math.abs(t-(r.left||0)-(r.right||0)),Math.abs(n-(r.top||0)-(r.bottom||0)))/2},t9=(e,t)=>{var{x:n,y:r}=e,{x:i,y:a}=t;return Math.sqrt((n-i)**2+(r-a)**2)},n9=(e,t)=>{var{x:n,y:r}=e,{cx:i,cy:a}=t,l=t9({x:n,y:r},{x:i,y:a});if(l<=0)return{radius:l,angle:0};var u=(n-i)/l,c=Math.acos(u);return r>a&&(c=2*Math.PI-c),{radius:l,angle:JW(c),angleInRadian:c}},r9=e=>{var{startAngle:t,endAngle:n}=e,r=Math.floor(t/360),i=Math.floor(n/360),a=Math.min(r,i);return{startAngle:t-a*360,endAngle:n-a*360}},i9=(e,t)=>{var{startAngle:n,endAngle:r}=t,i=Math.floor(n/360),a=Math.floor(r/360),l=Math.min(i,a);return e+l*360},a9=(e,t)=>{var{chartX:n,chartY:r}=e,{radius:i,angle:a}=n9({x:n,y:r},t),{innerRadius:l,outerRadius:u}=t;if(iu||i===0)return null;var{startAngle:c,endAngle:f}=r9(t),d=a,p;if(c<=f){for(;d>f;)d-=360;for(;d=c&&d<=f}else{for(;d>c;)d-=360;for(;d=f&&d<=c}return p?rj(rj({},t),{},{radius:i,angle:i9(d,t)}):null};function rA(e){var{cx:t,cy:n,radius:r,startAngle:i,endAngle:a}=e,l=Xt(t,n,r,i),u=Xt(t,n,r,a);return{points:[l,u],cx:t,cy:n,radius:r,startAngle:i,endAngle:a}}var ij,aj,oj,lj,sj,uj,cj;function yv(){return yv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var n=jn(t-e),r=Math.min(Math.abs(t-e),359.999);return n*r},yc=e=>{var{cx:t,cy:n,radius:r,angle:i,sign:a,isExternal:l,cornerRadius:u,cornerIsExternal:c}=e,f=u*(l?1:-1)+r,d=Math.asin(u/f)/cf,p=c?i:i+a*d,g=Xt(t,n,f,p),y=Xt(t,n,r,p),b=c?i-a*d:i,S=Xt(t,n,f*Math.cos(d*cf),b);return{center:g,circleTangency:y,lineTangency:S,theta:d}},iA=e=>{var{cx:t,cy:n,innerRadius:r,outerRadius:i,startAngle:a,endAngle:l}=e,u=o9(a,l),c=a+u,f=Xt(t,n,i,a),d=Xt(t,n,i,c),p=pt(ij||(ij=ba(["M ",",",` + A `,",",",0,0,",",",","," Z"])),e,t+c*P,P,P,d,e+f*P,t,e+n-f*P,t,P,P,d,e+n,t+c*P,e+n,t+r-c*P,P,P,d,e+n-f*P,t+r,e+f*P,t+r,P,P,d,e,t+r-c*P)}else p=pt(JS||(JS=Cr(["M ",","," h "," v "," h "," Z"])),e,t,n,r,-n);return p},ij={x:0,y:0,width:0,height:0,radius:0,isAnimationActive:!1,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},lA=e=>{var t=mn(e,ij),n=k.useRef(null),[r,i]=k.useState(-1);k.useEffect(()=>{if(n.current&&n.current.getTotalLength)try{var de=n.current.getTotalLength();de&&i(de)}catch{}},[]);var{x:a,y:l,width:u,height:c,radius:f,className:d}=t,{animationEasing:p,animationDuration:g,animationBegin:y,isAnimationActive:x,isUpdateAnimationActive:S}=t,w=k.useRef(u),P=k.useRef(c),C=k.useRef(a),O=k.useRef(l),A=k.useMemo(()=>({x:a,y:l,width:u,height:c,radius:f}),[a,l,u,c,f]),I=hd(A,"rectangle-");if(a!==+a||l!==+l||u!==+u||c!==+c||u===0||c===0)return null;var E=Ge("recharts-rectangle",d);if(!S){var L=dn(t),{radius:F}=L,H=nj(L,JW);return k.createElement("path",cf({},H,{x:Ki(a),y:Ki(l),width:Ki(u),height:Ki(c),radius:typeof f=="number"?f:void 0,className:E,d:rj(a,l,u,c,f)}))}var R=w.current,W=P.current,M=C.current,Z=O.current,Y="0px ".concat(r===-1?1:r,"px"),Q="".concat(r,"px 0px"),he=rA(["strokeDasharray"],g,typeof p=="string"?p:ij.animationEasing);return k.createElement(dd,{animationId:I,key:I,canBegin:r>0,duration:g,easing:p,isActive:S,begin:y},de=>{var J=ut(R,u,de),ae=ut(W,c,de),T=ut(M,a,de),$=ut(Z,l,de);n.current&&(w.current=J,P.current=ae,C.current=T,O.current=$);var U;x?de>0?U={transition:he,strokeDasharray:Q}:U={strokeDasharray:Y}:U={strokeDasharray:Q};var _=dn(t),{radius:te}=_,fe=nj(_,e9);return k.createElement("path",cf({},fe,{radius:typeof f=="number"?f:void 0,className:E,d:rj(T,$,J,ae,f),ref:n,style:tj(tj({},U),t.style)}))})};function aj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function oj(e){for(var t=1;te*180/Math.PI,Xt=(e,t,n,r)=>({x:e+Math.cos(-ff*r)*n,y:t+Math.sin(-ff*r)*n}),u9=function(t,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{top:0,right:0,bottom:0,left:0};return Math.min(Math.abs(t-(r.left||0)-(r.right||0)),Math.abs(n-(r.top||0)-(r.bottom||0)))/2},c9=(e,t)=>{var{x:n,y:r}=e,{x:i,y:a}=t;return Math.sqrt((n-i)**2+(r-a)**2)},f9=(e,t)=>{var{x:n,y:r}=e,{cx:i,cy:a}=t,l=c9({x:n,y:r},{x:i,y:a});if(l<=0)return{radius:l,angle:0};var u=(n-i)/l,c=Math.acos(u);return r>a&&(c=2*Math.PI-c),{radius:l,angle:s9(c),angleInRadian:c}},d9=e=>{var{startAngle:t,endAngle:n}=e,r=Math.floor(t/360),i=Math.floor(n/360),a=Math.min(r,i);return{startAngle:t-a*360,endAngle:n-a*360}},h9=(e,t)=>{var{startAngle:n,endAngle:r}=t,i=Math.floor(n/360),a=Math.floor(r/360),l=Math.min(i,a);return e+l*360},p9=(e,t)=>{var{chartX:n,chartY:r}=e,{radius:i,angle:a}=f9({x:n,y:r},t),{innerRadius:l,outerRadius:u}=t;if(iu||i===0)return null;var{startAngle:c,endAngle:f}=d9(t),d=a,p;if(c<=f){for(;d>f;)d-=360;for(;d=c&&d<=f}else{for(;d>c;)d-=360;for(;d=f&&d<=c}return p?oj(oj({},t),{},{radius:i,angle:h9(d,t)}):null};function sA(e){var{cx:t,cy:n,radius:r,startAngle:i,endAngle:a}=e,l=Xt(t,n,r,i),u=Xt(t,n,r,a);return{points:[l,u],cx:t,cy:n,radius:r,startAngle:i,endAngle:a}}var lj,sj,uj,cj,fj,dj,hj;function bv(){return bv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var n=jn(t-e),r=Math.min(Math.abs(t-e),359.999);return n*r},xc=e=>{var{cx:t,cy:n,radius:r,angle:i,sign:a,isExternal:l,cornerRadius:u,cornerIsExternal:c}=e,f=u*(l?1:-1)+r,d=Math.asin(u/f)/ff,p=c?i:i+a*d,g=Xt(t,n,f,p),y=Xt(t,n,r,p),x=c?i-a*d:i,S=Xt(t,n,f*Math.cos(d*ff),x);return{center:g,circleTangency:y,lineTangency:S,theta:d}},uA=e=>{var{cx:t,cy:n,innerRadius:r,outerRadius:i,startAngle:a,endAngle:l}=e,u=m9(a,l),c=a+u,f=Xt(t,n,i,a),d=Xt(t,n,i,c),p=pt(lj||(lj=wa(["M ",",",` A `,",",`,0, `,",",`, `,",",` - `])),f.x,f.y,i,i,+(Math.abs(u)>180),+(a>c),d.x,d.y);if(r>0){var g=Xt(t,n,r,a),y=Xt(t,n,r,c);p+=pt(aj||(aj=ba(["L ",",",` + `])),f.x,f.y,i,i,+(Math.abs(u)>180),+(a>c),d.x,d.y);if(r>0){var g=Xt(t,n,r,a),y=Xt(t,n,r,c);p+=pt(sj||(sj=wa(["L ",",",` A `,",",`,0, `,",",`, - `,","," Z"])),y.x,y.y,r,r,+(Math.abs(u)>180),+(a<=c),g.x,g.y)}else p+=pt(oj||(oj=ba(["L ",","," Z"])),t,n);return p},l9=e=>{var{cx:t,cy:n,innerRadius:r,outerRadius:i,cornerRadius:a,forceCornerRadius:l,cornerIsExternal:u,startAngle:c,endAngle:f}=e,d=jn(f-c),{circleTangency:p,lineTangency:g,theta:y}=yc({cx:t,cy:n,radius:i,angle:c,sign:d,cornerRadius:a,cornerIsExternal:u}),{circleTangency:b,lineTangency:S,theta:w}=yc({cx:t,cy:n,radius:i,angle:f,sign:-d,cornerRadius:a,cornerIsExternal:u}),P=u?Math.abs(c-f):Math.abs(c-f)-y-w;if(P<0)return l?pt(lj||(lj=ba(["M ",",",` + `,","," Z"])),y.x,y.y,r,r,+(Math.abs(u)>180),+(a<=c),g.x,g.y)}else p+=pt(uj||(uj=wa(["L ",","," Z"])),t,n);return p},g9=e=>{var{cx:t,cy:n,innerRadius:r,outerRadius:i,cornerRadius:a,forceCornerRadius:l,cornerIsExternal:u,startAngle:c,endAngle:f}=e,d=jn(f-c),{circleTangency:p,lineTangency:g,theta:y}=xc({cx:t,cy:n,radius:i,angle:c,sign:d,cornerRadius:a,cornerIsExternal:u}),{circleTangency:x,lineTangency:S,theta:w}=xc({cx:t,cy:n,radius:i,angle:f,sign:-d,cornerRadius:a,cornerIsExternal:u}),P=u?Math.abs(c-f):Math.abs(c-f)-y-w;if(P<0)return l?pt(cj||(cj=wa(["M ",",",` a`,",",",0,0,1,",`,0 a`,",",",0,0,1,",`,0 - `])),g.x,g.y,a,a,a*2,a,a,-a*2):iA({cx:t,cy:n,innerRadius:r,outerRadius:i,startAngle:c,endAngle:f});var C=pt(sj||(sj=ba(["M ",",",` + `])),g.x,g.y,a,a,a*2,a,a,-a*2):uA({cx:t,cy:n,innerRadius:r,outerRadius:i,startAngle:c,endAngle:f});var C=pt(fj||(fj=wa(["M ",",",` A`,",",",0,0,",",",",",` A`,",",",0,",",",",",",",` A`,",",",0,0,",",",",",` - `])),g.x,g.y,a,a,+(d<0),p.x,p.y,i,i,+(P>180),+(d<0),b.x,b.y,a,a,+(d<0),S.x,S.y);if(r>0){var{circleTangency:O,lineTangency:A,theta:I}=yc({cx:t,cy:n,radius:r,angle:c,sign:d,isExternal:!0,cornerRadius:a,cornerIsExternal:u}),{circleTangency:E,lineTangency:L,theta:F}=yc({cx:t,cy:n,radius:r,angle:f,sign:-d,isExternal:!0,cornerRadius:a,cornerIsExternal:u}),H=u?Math.abs(c-f):Math.abs(c-f)-I-F;if(H<0&&a===0)return"".concat(C,"L").concat(t,",").concat(n,"Z");C+=pt(uj||(uj=ba(["L",",",` + `])),g.x,g.y,a,a,+(d<0),p.x,p.y,i,i,+(P>180),+(d<0),x.x,x.y,a,a,+(d<0),S.x,S.y);if(r>0){var{circleTangency:O,lineTangency:A,theta:I}=xc({cx:t,cy:n,radius:r,angle:c,sign:d,isExternal:!0,cornerRadius:a,cornerIsExternal:u}),{circleTangency:E,lineTangency:L,theta:F}=xc({cx:t,cy:n,radius:r,angle:f,sign:-d,isExternal:!0,cornerRadius:a,cornerIsExternal:u}),H=u?Math.abs(c-f):Math.abs(c-f)-I-F;if(H<0&&a===0)return"".concat(C,"L").concat(t,",").concat(n,"Z");C+=pt(dj||(dj=wa(["L",",",` A`,",",",0,0,",",",",",` A`,",",",0,",",",",",",",` - A`,",",",0,0,",",",",","Z"])),L.x,L.y,a,a,+(d<0),E.x,E.y,r,r,+(H>180),+(d>0),O.x,O.y,a,a,+(d<0),A.x,A.y)}else C+=pt(cj||(cj=ba(["L",",","Z"])),t,n);return C},s9={cx:0,cy:0,innerRadius:0,outerRadius:0,startAngle:0,endAngle:0,cornerRadius:0,forceCornerRadius:!1,cornerIsExternal:!1},aA=e=>{var t=mn(e,s9),{cx:n,cy:r,innerRadius:i,outerRadius:a,cornerRadius:l,forceCornerRadius:u,cornerIsExternal:c,startAngle:f,endAngle:d,className:p}=t;if(a0&&Math.abs(f-d)<360?S=l9({cx:n,cy:r,innerRadius:i,outerRadius:a,cornerRadius:Math.min(b,y/2),forceCornerRadius:u,cornerIsExternal:c,startAngle:f,endAngle:d}):S=iA({cx:n,cy:r,innerRadius:i,outerRadius:a,startAngle:f,endAngle:d}),k.createElement("path",yv({},dn(t),{className:g,d:S}))};function u9(e,t,n){if(e==="horizontal")return[{x:t.x,y:n.top},{x:t.x,y:n.top+n.height}];if(e==="vertical")return[{x:n.left,y:t.y},{x:n.left+n.width,y:t.y}];if(WO(t)){if(e==="centric"){var{cx:r,cy:i,innerRadius:a,outerRadius:l,angle:u}=t,c=Xt(r,i,a,u),f=Xt(r,i,l,u);return[{x:c.x,y:c.y},{x:f.x,y:f.y}]}return rA(t)}}var Zm={},Jm={},eg={},fj;function c9(){return fj||(fj=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=JO();function n(r){return t.isSymbol(r)?NaN:Number(r)}e.toNumber=n})(eg)),eg}var dj;function f9(){return dj||(dj=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=c9();function n(r){return r?(r=t.toNumber(r),r===1/0||r===-1/0?(r<0?-1:1)*Number.MAX_VALUE:r===r?r:0):r===0?r:0}e.toFinite=n})(Jm)),Jm}var hj;function d9(){return hj||(hj=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=eN(),n=f9();function r(i,a,l){l&&typeof l!="number"&&t.isIterateeCall(i,a,l)&&(a=l=void 0),i=n.toFinite(i),a===void 0?(a=i,i=0):a=n.toFinite(a),l=l===void 0?it?1:e>=t?0:NaN}function m9(e,t){return e==null||t==null?NaN:te?1:t>=e?0:NaN}function Ly(e){let t,n,r;e.length!==2?(t=Ki,n=(u,c)=>Ki(e(u),c),r=(u,c)=>e(u)-c):(t=e===Ki||e===m9?e:g9,n=e,r=e);function i(u,c,f=0,d=u.length){if(f>>1;n(u[p],c)<0?f=p+1:d=p}while(f>>1;n(u[p],c)<=0?f=p+1:d=p}while(ff&&r(u[p-1],c)>-r(u[p],c)?p-1:p}return{left:i,center:l,right:a}}function g9(){return 0}function lA(e){return e===null?NaN:+e}function*v9(e,t){for(let n of e)n!=null&&(n=+n)>=n&&(yield n)}const y9=Ly(Ki),Rs=y9.right;Ly(lA).center;class mj extends Map{constructor(t,n=w9){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:n}}),t!=null)for(const[r,i]of t)this.set(r,i)}get(t){return super.get(gj(this,t))}has(t){return super.has(gj(this,t))}set(t,n){return super.set(x9(this,t),n)}delete(t){return super.delete(b9(this,t))}}function gj({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):n}function x9({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):(e.set(r,n),n)}function b9({_intern:e,_key:t},n){const r=t(n);return e.has(r)&&(n=e.get(r),e.delete(r)),n}function w9(e){return e!==null&&typeof e=="object"?e.valueOf():e}function k9(e=Ki){if(e===Ki)return sA;if(typeof e!="function")throw new TypeError("compare is not a function");return(t,n)=>{const r=e(t,n);return r||r===0?r:(e(n,n)===0)-(e(t,t)===0)}}function sA(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(et?1:0)}const S9=Math.sqrt(50),j9=Math.sqrt(10),P9=Math.sqrt(2);function ff(e,t,n){const r=(t-e)/Math.max(0,n),i=Math.floor(Math.log10(r)),a=r/Math.pow(10,i),l=a>=S9?10:a>=j9?5:a>=P9?2:1;let u,c,f;return i<0?(f=Math.pow(10,-i)/l,u=Math.round(e*f),c=Math.round(t*f),u/ft&&--c,f=-f):(f=Math.pow(10,i)*l,u=Math.round(e/f),c=Math.round(t/f),u*ft&&--c),c0))return[];if(e===t)return[e];const r=t=i))return[];const u=a-i+1,c=new Array(u);if(r)if(l<0)for(let f=0;f=r)&&(n=r);return n}function yj(e,t){let n;for(const r of e)r!=null&&(n>r||n===void 0&&r>=r)&&(n=r);return n}function uA(e,t,n=0,r=1/0,i){if(t=Math.floor(t),n=Math.floor(Math.max(0,n)),r=Math.floor(Math.min(e.length-1,r)),!(n<=t&&t<=r))return e;for(i=i===void 0?sA:k9(i);r>n;){if(r-n>600){const c=r-n+1,f=t-n+1,d=Math.log(c),p=.5*Math.exp(2*d/3),g=.5*Math.sqrt(d*p*(c-p)/c)*(f-c/2<0?-1:1),y=Math.max(n,Math.floor(t-f*p/c+g)),b=Math.min(r,Math.floor(t+(c-f)*p/c+g));uA(e,t,y,b,i)}const a=e[t];let l=n,u=r;for(Hl(e,n,t),i(e[r],a)>0&&Hl(e,n,r);l0;)--u}i(e[n],a)===0?Hl(e,n,u):(++u,Hl(e,u,r)),u<=t&&(n=u+1),t<=u&&(r=u-1)}return e}function Hl(e,t,n){const r=e[t];e[t]=e[n],e[n]=r}function E9(e,t,n){if(e=Float64Array.from(v9(e)),!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return yj(e);if(t>=1)return vj(e);var r,i=(r-1)*t,a=Math.floor(i),l=vj(uA(e,a).subarray(0,a+1)),u=yj(e.subarray(a+1));return l+(u-l)*(i-a)}}function C9(e,t,n=lA){if(!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return+n(e[0],0,e);if(t>=1)return+n(e[r-1],r-1,e);var r,i=(r-1)*t,a=Math.floor(i),l=+n(e[a],a,e),u=+n(e[a+1],a+1,e);return l+(u-l)*(i-a)}}function O9(e,t,n){e=+e,t=+t,n=(i=arguments.length)<2?(t=e,e=0,1):i<3?1:+n;for(var r=-1,i=Math.max(0,Math.ceil((t-e)/n))|0,a=new Array(i);++r>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?xc(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?xc(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=_9.exec(e))?new En(t[1],t[2],t[3],1):(t=I9.exec(e))?new En(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=T9.exec(e))?xc(t[1],t[2],t[3],t[4]):(t=D9.exec(e))?xc(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=M9.exec(e))?Pj(t[1],t[2]/100,t[3]/100,1):(t=L9.exec(e))?Pj(t[1],t[2]/100,t[3]/100,t[4]):xj.hasOwnProperty(e)?kj(xj[e]):e==="transparent"?new En(NaN,NaN,NaN,0):null}function kj(e){return new En(e>>16&255,e>>8&255,e&255,1)}function xc(e,t,n,r){return r<=0&&(e=t=n=NaN),new En(e,t,n,r)}function $9(e){return e instanceof zs||(e=bs(e)),e?(e=e.rgb(),new En(e.r,e.g,e.b,e.opacity)):new En}function Sv(e,t,n,r){return arguments.length===1?$9(e):new En(e,t,n,r??1)}function En(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}$y(En,Sv,fA(zs,{brighter(e){return e=e==null?df:Math.pow(df,e),new En(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?ys:Math.pow(ys,e),new En(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new En(Pa(this.r),Pa(this.g),Pa(this.b),hf(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Sj,formatHex:Sj,formatHex8:F9,formatRgb:jj,toString:jj}));function Sj(){return`#${wa(this.r)}${wa(this.g)}${wa(this.b)}`}function F9(){return`#${wa(this.r)}${wa(this.g)}${wa(this.b)}${wa((isNaN(this.opacity)?1:this.opacity)*255)}`}function jj(){const e=hf(this.opacity);return`${e===1?"rgb(":"rgba("}${Pa(this.r)}, ${Pa(this.g)}, ${Pa(this.b)}${e===1?")":`, ${e})`}`}function hf(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Pa(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function wa(e){return e=Pa(e),(e<16?"0":"")+e.toString(16)}function Pj(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new dr(e,t,n,r)}function dA(e){if(e instanceof dr)return new dr(e.h,e.s,e.l,e.opacity);if(e instanceof zs||(e=bs(e)),!e)return new dr;if(e instanceof dr)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,i=Math.min(t,n,r),a=Math.max(t,n,r),l=NaN,u=a-i,c=(a+i)/2;return u?(t===a?l=(n-r)/u+(n0&&c<1?0:l,new dr(l,u,c,e.opacity)}function B9(e,t,n,r){return arguments.length===1?dA(e):new dr(e,t,n,r??1)}function dr(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}$y(dr,B9,fA(zs,{brighter(e){return e=e==null?df:Math.pow(df,e),new dr(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?ys:Math.pow(ys,e),new dr(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,i=2*n-r;return new En(ng(e>=240?e-240:e+120,i,r),ng(e,i,r),ng(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new dr(Ej(this.h),bc(this.s),bc(this.l),hf(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=hf(this.opacity);return`${e===1?"hsl(":"hsla("}${Ej(this.h)}, ${bc(this.s)*100}%, ${bc(this.l)*100}%${e===1?")":`, ${e})`}`}}));function Ej(e){return e=(e||0)%360,e<0?e+360:e}function bc(e){return Math.max(0,Math.min(1,e||0))}function ng(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}const Fy=e=>()=>e;function U9(e,t){return function(n){return e+n*t}}function W9(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(r){return Math.pow(e+r*t,n)}}function q9(e){return(e=+e)==1?hA:function(t,n){return n-t?W9(t,n,e):Fy(isNaN(t)?n:t)}}function hA(e,t){var n=t-e;return n?U9(e,n):Fy(isNaN(e)?t:e)}const Cj=(function e(t){var n=q9(t);function r(i,a){var l=n((i=Sv(i)).r,(a=Sv(a)).r),u=n(i.g,a.g),c=n(i.b,a.b),f=hA(i.opacity,a.opacity);return function(d){return i.r=l(d),i.g=u(d),i.b=c(d),i.opacity=f(d),i+""}}return r.gamma=e,r})(1);function H9(e,t){t||(t=[]);var n=e?Math.min(t.length,e.length):0,r=t.slice(),i;return function(a){for(i=0;in&&(a=t.slice(n,a),u[l]?u[l]+=a:u[++l]=a),(r=r[0])===(i=i[0])?u[l]?u[l]+=i:u[++l]=i:(u[++l]=null,c.push({i:l,x:pf(r,i)})),n=rg.lastIndex;return nt&&(n=e,e=t,t=n),function(r){return Math.max(e,Math.min(t,r))}}function nq(e,t,n){var r=e[0],i=e[1],a=t[0],l=t[1];return i2?rq:nq,c=f=null,p}function p(g){return g==null||isNaN(g=+g)?a:(c||(c=u(e.map(r),t,n)))(r(l(g)))}return p.invert=function(g){return l(i((f||(f=u(t,e.map(r),pf)))(g)))},p.domain=function(g){return arguments.length?(e=Array.from(g,mf),d()):e.slice()},p.range=function(g){return arguments.length?(t=Array.from(g),d()):t.slice()},p.rangeRound=function(g){return t=Array.from(g),n=By,d()},p.clamp=function(g){return arguments.length?(l=g?!0:fn,d()):l!==fn},p.interpolate=function(g){return arguments.length?(n=g,d()):n},p.unknown=function(g){return arguments.length?(a=g,p):a},function(g,y){return r=g,i=y,d()}}function Uy(){return hd()(fn,fn)}function iq(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)}function gf(e,t){if(!isFinite(e)||e===0)return null;var n=(e=t?e.toExponential(t-1):e.toExponential()).indexOf("e"),r=e.slice(0,n);return[r.length>1?r[0]+r.slice(2):r,+e.slice(n+1)]}function Lo(e){return e=gf(Math.abs(e)),e?e[1]:NaN}function aq(e,t){return function(n,r){for(var i=n.length,a=[],l=0,u=e[0],c=0;i>0&&u>0&&(c+u+1>r&&(u=Math.max(1,r-c)),a.push(n.substring(i-=u,i+u)),!((c+=u+1)>r));)u=e[l=(l+1)%e.length];return a.reverse().join(t)}}function oq(e){return function(t){return t.replace(/[0-9]/g,function(n){return e[+n]})}}var lq=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function ws(e){if(!(t=lq.exec(e)))throw new Error("invalid format: "+e);var t;return new Wy({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}ws.prototype=Wy.prototype;function Wy(e){this.fill=e.fill===void 0?" ":e.fill+"",this.align=e.align===void 0?">":e.align+"",this.sign=e.sign===void 0?"-":e.sign+"",this.symbol=e.symbol===void 0?"":e.symbol+"",this.zero=!!e.zero,this.width=e.width===void 0?void 0:+e.width,this.comma=!!e.comma,this.precision=e.precision===void 0?void 0:+e.precision,this.trim=!!e.trim,this.type=e.type===void 0?"":e.type+""}Wy.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function sq(e){e:for(var t=e.length,n=1,r=-1,i;n0&&(r=0);break}return r>0?e.slice(0,r)+e.slice(i+1):e}var vf;function uq(e,t){var n=gf(e,t);if(!n)return vf=void 0,e.toPrecision(t);var r=n[0],i=n[1],a=i-(vf=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,l=r.length;return a===l?r:a>l?r+new Array(a-l+1).join("0"):a>0?r.slice(0,a)+"."+r.slice(a):"0."+new Array(1-a).join("0")+gf(e,Math.max(0,t+a-1))[0]}function Nj(e,t){var n=gf(e,t);if(!n)return e+"";var r=n[0],i=n[1];return i<0?"0."+new Array(-i).join("0")+r:r.length>i+1?r.slice(0,i+1)+"."+r.slice(i+1):r+new Array(i-r.length+2).join("0")}const Aj={"%":(e,t)=>(e*100).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+"",d:iq,e:(e,t)=>e.toExponential(t),f:(e,t)=>e.toFixed(t),g:(e,t)=>e.toPrecision(t),o:e=>Math.round(e).toString(8),p:(e,t)=>Nj(e*100,t),r:Nj,s:uq,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function _j(e){return e}var Ij=Array.prototype.map,Tj=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function cq(e){var t=e.grouping===void 0||e.thousands===void 0?_j:aq(Ij.call(e.grouping,Number),e.thousands+""),n=e.currency===void 0?"":e.currency[0]+"",r=e.currency===void 0?"":e.currency[1]+"",i=e.decimal===void 0?".":e.decimal+"",a=e.numerals===void 0?_j:oq(Ij.call(e.numerals,String)),l=e.percent===void 0?"%":e.percent+"",u=e.minus===void 0?"−":e.minus+"",c=e.nan===void 0?"NaN":e.nan+"";function f(p,g){p=ws(p);var y=p.fill,b=p.align,S=p.sign,w=p.symbol,P=p.zero,C=p.width,O=p.comma,A=p.precision,I=p.trim,E=p.type;E==="n"?(O=!0,E="g"):Aj[E]||(A===void 0&&(A=12),I=!0,E="g"),(P||y==="0"&&b==="=")&&(P=!0,y="0",b="=");var L=(g&&g.prefix!==void 0?g.prefix:"")+(w==="$"?n:w==="#"&&/[boxX]/.test(E)?"0"+E.toLowerCase():""),F=(w==="$"?r:/[%p]/.test(E)?l:"")+(g&&g.suffix!==void 0?g.suffix:""),H=Aj[E],R=/[defgprs%]/.test(E);A=A===void 0?6:/[gprs]/.test(E)?Math.max(1,Math.min(21,A)):Math.max(0,Math.min(20,A));function W(D){var Z=L,Y=F,Q,he,de;if(E==="c")Y=H(D)+Y,D="";else{D=+D;var J=D<0||1/D<0;if(D=isNaN(D)?c:H(Math.abs(D),A),I&&(D=sq(D)),J&&+D==0&&S!=="+"&&(J=!1),Z=(J?S==="("?S:u:S==="-"||S==="("?"":S)+Z,Y=(E==="s"&&!isNaN(D)&&vf!==void 0?Tj[8+vf/3]:"")+Y+(J&&S==="("?")":""),R){for(Q=-1,he=D.length;++Qde||de>57){Y=(de===46?i+D.slice(Q+1):D.slice(Q))+Y,D=D.slice(0,Q);break}}}O&&!P&&(D=t(D,1/0));var ae=Z.length+D.length+Y.length,T=ae>1)+Z+D+Y+T.slice(ae);break;default:D=T+Z+D+Y;break}return a(D)}return W.toString=function(){return p+""},W}function d(p,g){var y=Math.max(-8,Math.min(8,Math.floor(Lo(g)/3)))*3,b=Math.pow(10,-y),S=f((p=ws(p),p.type="f",p),{suffix:Tj[8+y/3]});return function(w){return S(b*w)}}return{format:f,formatPrefix:d}}var wc,qy,pA;fq({thousands:",",grouping:[3],currency:["$",""]});function fq(e){return wc=cq(e),qy=wc.format,pA=wc.formatPrefix,wc}function dq(e){return Math.max(0,-Lo(Math.abs(e)))}function hq(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(Lo(t)/3)))*3-Lo(Math.abs(e)))}function pq(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,Lo(t)-Lo(e))+1}function mA(e,t,n,r){var i=wv(e,t,n),a;switch(r=ws(r??",f"),r.type){case"s":{var l=Math.max(Math.abs(e),Math.abs(t));return r.precision==null&&!isNaN(a=hq(i,l))&&(r.precision=a),pA(r,l)}case"":case"e":case"g":case"p":case"r":{r.precision==null&&!isNaN(a=pq(i,Math.max(Math.abs(e),Math.abs(t))))&&(r.precision=a-(r.type==="e"));break}case"f":case"%":{r.precision==null&&!isNaN(a=dq(i))&&(r.precision=a-(r.type==="%")*2);break}}return qy(r)}function Ji(e){var t=e.domain;return e.ticks=function(n){var r=t();return xv(r[0],r[r.length-1],n??10)},e.tickFormat=function(n,r){var i=t();return mA(i[0],i[i.length-1],n??10,r)},e.nice=function(n){n==null&&(n=10);var r=t(),i=0,a=r.length-1,l=r[i],u=r[a],c,f,d=10;for(u0;){if(f=bv(l,u,n),f===c)return r[i]=l,r[a]=u,t(r);if(f>0)l=Math.floor(l/f)*f,u=Math.ceil(u/f)*f;else if(f<0)l=Math.ceil(l*f)/f,u=Math.floor(u*f)/f;else break;c=f}return e},e}function gA(){var e=Uy();return e.copy=function(){return $s(e,gA())},tr.apply(e,arguments),Ji(e)}function vA(e){var t;function n(r){return r==null||isNaN(r=+r)?t:r}return n.invert=n,n.domain=n.range=function(r){return arguments.length?(e=Array.from(r,mf),n):e.slice()},n.unknown=function(r){return arguments.length?(t=r,n):t},n.copy=function(){return vA(e).unknown(t)},e=arguments.length?Array.from(e,mf):[0,1],Ji(n)}function yA(e,t){e=e.slice();var n=0,r=e.length-1,i=e[n],a=e[r],l;return aMath.pow(e,t)}function xq(e){return e===Math.E?Math.log:e===10&&Math.log10||e===2&&Math.log2||(e=Math.log(e),t=>Math.log(t)/e)}function Lj(e){return(t,n)=>-e(-t,n)}function Hy(e){const t=e(Dj,Mj),n=t.domain;let r=10,i,a;function l(){return i=xq(r),a=yq(r),n()[0]<0?(i=Lj(i),a=Lj(a),e(mq,gq)):e(Dj,Mj),t}return t.base=function(u){return arguments.length?(r=+u,l()):r},t.domain=function(u){return arguments.length?(n(u),l()):n()},t.ticks=u=>{const c=n();let f=c[0],d=c[c.length-1];const p=d0){for(;g<=y;++g)for(b=1;bd)break;P.push(S)}}else for(;g<=y;++g)for(b=r-1;b>=1;--b)if(S=g>0?b/a(-g):b*a(g),!(Sd)break;P.push(S)}P.length*2{if(u==null&&(u=10),c==null&&(c=r===10?"s":","),typeof c!="function"&&(!(r%1)&&(c=ws(c)).precision==null&&(c.trim=!0),c=qy(c)),u===1/0)return c;const f=Math.max(1,r*u/t.ticks().length);return d=>{let p=d/a(Math.round(i(d)));return p*rn(yA(n(),{floor:u=>a(Math.floor(i(u))),ceil:u=>a(Math.ceil(i(u)))})),t}function xA(){const e=Hy(hd()).domain([1,10]);return e.copy=()=>$s(e,xA()).base(e.base()),tr.apply(e,arguments),e}function Rj(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function zj(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function Vy(e){var t=1,n=e(Rj(t),zj(t));return n.constant=function(r){return arguments.length?e(Rj(t=+r),zj(t)):t},Ji(n)}function bA(){var e=Vy(hd());return e.copy=function(){return $s(e,bA()).constant(e.constant())},tr.apply(e,arguments)}function $j(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function bq(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function wq(e){return e<0?-e*e:e*e}function Ky(e){var t=e(fn,fn),n=1;function r(){return n===1?e(fn,fn):n===.5?e(bq,wq):e($j(n),$j(1/n))}return t.exponent=function(i){return arguments.length?(n=+i,r()):n},Ji(t)}function Gy(){var e=Ky(hd());return e.copy=function(){return $s(e,Gy()).exponent(e.exponent())},tr.apply(e,arguments),e}function kq(){return Gy.apply(null,arguments).exponent(.5)}function Fj(e){return Math.sign(e)*e*e}function Sq(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}function wA(){var e=Uy(),t=[0,1],n=!1,r;function i(a){var l=Sq(e(a));return isNaN(l)?r:n?Math.round(l):l}return i.invert=function(a){return e.invert(Fj(a))},i.domain=function(a){return arguments.length?(e.domain(a),i):e.domain()},i.range=function(a){return arguments.length?(e.range((t=Array.from(a,mf)).map(Fj)),i):t.slice()},i.rangeRound=function(a){return i.range(a).round(!0)},i.round=function(a){return arguments.length?(n=!!a,i):n},i.clamp=function(a){return arguments.length?(e.clamp(a),i):e.clamp()},i.unknown=function(a){return arguments.length?(r=a,i):r},i.copy=function(){return wA(e.domain(),t).round(n).clamp(e.clamp()).unknown(r)},tr.apply(i,arguments),Ji(i)}function kA(){var e=[],t=[],n=[],r;function i(){var l=0,u=Math.max(1,t.length);for(n=new Array(u-1);++l0?n[u-1]:e[0],u=n?[r[n-1],t]:[r[f-1],r[f]]},l.unknown=function(c){return arguments.length&&(a=c),l},l.thresholds=function(){return r.slice()},l.copy=function(){return SA().domain([e,t]).range(i).unknown(a)},tr.apply(Ji(l),arguments)}function jA(){var e=[.5],t=[0,1],n,r=1;function i(a){return a!=null&&a<=a?t[Rs(e,a,0,r)]:n}return i.domain=function(a){return arguments.length?(e=Array.from(a),r=Math.min(e.length,t.length-1),i):e.slice()},i.range=function(a){return arguments.length?(t=Array.from(a),r=Math.min(e.length,t.length-1),i):t.slice()},i.invertExtent=function(a){var l=t.indexOf(a);return[e[l-1],e[l]]},i.unknown=function(a){return arguments.length?(n=a,i):n},i.copy=function(){return jA().domain(e).range(t).unknown(n)},tr.apply(i,arguments)}const ig=new Date,ag=new Date;function Nt(e,t,n,r){function i(a){return e(a=arguments.length===0?new Date:new Date(+a)),a}return i.floor=a=>(e(a=new Date(+a)),a),i.ceil=a=>(e(a=new Date(a-1)),t(a,1),e(a),a),i.round=a=>{const l=i(a),u=i.ceil(a);return a-l(t(a=new Date(+a),l==null?1:Math.floor(l)),a),i.range=(a,l,u)=>{const c=[];if(a=i.ceil(a),u=u==null?1:Math.floor(u),!(a0))return c;let f;do c.push(f=new Date(+a)),t(a,u),e(a);while(fNt(l=>{if(l>=l)for(;e(l),!a(l);)l.setTime(l-1)},(l,u)=>{if(l>=l)if(u<0)for(;++u<=0;)for(;t(l,-1),!a(l););else for(;--u>=0;)for(;t(l,1),!a(l););}),n&&(i.count=(a,l)=>(ig.setTime(+a),ag.setTime(+l),e(ig),e(ag),Math.floor(n(ig,ag))),i.every=a=>(a=Math.floor(a),!isFinite(a)||!(a>0)?null:a>1?i.filter(r?l=>r(l)%a===0:l=>i.count(0,l)%a===0):i)),i}const yf=Nt(()=>{},(e,t)=>{e.setTime(+e+t)},(e,t)=>t-e);yf.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?Nt(t=>{t.setTime(Math.floor(t/e)*e)},(t,n)=>{t.setTime(+t+n*e)},(t,n)=>(n-t)/e):yf);yf.range;const Jr=1e3,Qn=Jr*60,ei=Qn*60,ii=ei*24,Yy=ii*7,Bj=ii*30,og=ii*365,ka=Nt(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*Jr)},(e,t)=>(t-e)/Jr,e=>e.getUTCSeconds());ka.range;const Xy=Nt(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*Jr)},(e,t)=>{e.setTime(+e+t*Qn)},(e,t)=>(t-e)/Qn,e=>e.getMinutes());Xy.range;const Qy=Nt(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*Qn)},(e,t)=>(t-e)/Qn,e=>e.getUTCMinutes());Qy.range;const Zy=Nt(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*Jr-e.getMinutes()*Qn)},(e,t)=>{e.setTime(+e+t*ei)},(e,t)=>(t-e)/ei,e=>e.getHours());Zy.range;const Jy=Nt(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*ei)},(e,t)=>(t-e)/ei,e=>e.getUTCHours());Jy.range;const Fs=Nt(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*Qn)/ii,e=>e.getDate()-1);Fs.range;const pd=Nt(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/ii,e=>e.getUTCDate()-1);pd.range;const PA=Nt(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/ii,e=>Math.floor(e/ii));PA.range;function Ba(e){return Nt(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(t,n)=>{t.setDate(t.getDate()+n*7)},(t,n)=>(n-t-(n.getTimezoneOffset()-t.getTimezoneOffset())*Qn)/Yy)}const md=Ba(0),xf=Ba(1),jq=Ba(2),Pq=Ba(3),Ro=Ba(4),Eq=Ba(5),Cq=Ba(6);md.range;xf.range;jq.range;Pq.range;Ro.range;Eq.range;Cq.range;function Ua(e){return Nt(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCDate(t.getUTCDate()+n*7)},(t,n)=>(n-t)/Yy)}const gd=Ua(0),bf=Ua(1),Oq=Ua(2),Nq=Ua(3),zo=Ua(4),Aq=Ua(5),_q=Ua(6);gd.range;bf.range;Oq.range;Nq.range;zo.range;Aq.range;_q.range;const ex=Nt(e=>{e.setDate(1),e.setHours(0,0,0,0)},(e,t)=>{e.setMonth(e.getMonth()+t)},(e,t)=>t.getMonth()-e.getMonth()+(t.getFullYear()-e.getFullYear())*12,e=>e.getMonth());ex.range;const tx=Nt(e=>{e.setUTCDate(1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCMonth(e.getUTCMonth()+t)},(e,t)=>t.getUTCMonth()-e.getUTCMonth()+(t.getUTCFullYear()-e.getUTCFullYear())*12,e=>e.getUTCMonth());tx.range;const ai=Nt(e=>{e.setMonth(0,1),e.setHours(0,0,0,0)},(e,t)=>{e.setFullYear(e.getFullYear()+t)},(e,t)=>t.getFullYear()-e.getFullYear(),e=>e.getFullYear());ai.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Nt(t=>{t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)},(t,n)=>{t.setFullYear(t.getFullYear()+n*e)});ai.range;const oi=Nt(e=>{e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t)},(e,t)=>t.getUTCFullYear()-e.getUTCFullYear(),e=>e.getUTCFullYear());oi.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Nt(t=>{t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCFullYear(t.getUTCFullYear()+n*e)});oi.range;function EA(e,t,n,r,i,a){const l=[[ka,1,Jr],[ka,5,5*Jr],[ka,15,15*Jr],[ka,30,30*Jr],[a,1,Qn],[a,5,5*Qn],[a,15,15*Qn],[a,30,30*Qn],[i,1,ei],[i,3,3*ei],[i,6,6*ei],[i,12,12*ei],[r,1,ii],[r,2,2*ii],[n,1,Yy],[t,1,Bj],[t,3,3*Bj],[e,1,og]];function u(f,d,p){const g=dw).right(l,g);if(y===l.length)return e.every(wv(f/og,d/og,p));if(y===0)return yf.every(Math.max(wv(f,d,p),1));const[b,S]=l[g/l[y-1][2]53)return null;"w"in ie||(ie.w=1),"Z"in ie?(ze=sg(Vl(ie.y,0,1)),ct=ze.getUTCDay(),ze=ct>4||ct===0?bf.ceil(ze):bf(ze),ze=pd.offset(ze,(ie.V-1)*7),ie.y=ze.getUTCFullYear(),ie.m=ze.getUTCMonth(),ie.d=ze.getUTCDate()+(ie.w+6)%7):(ze=lg(Vl(ie.y,0,1)),ct=ze.getDay(),ze=ct>4||ct===0?xf.ceil(ze):xf(ze),ze=Fs.offset(ze,(ie.V-1)*7),ie.y=ze.getFullYear(),ie.m=ze.getMonth(),ie.d=ze.getDate()+(ie.w+6)%7)}else("W"in ie||"U"in ie)&&("w"in ie||(ie.w="u"in ie?ie.u%7:"W"in ie?1:0),ct="Z"in ie?sg(Vl(ie.y,0,1)).getUTCDay():lg(Vl(ie.y,0,1)).getDay(),ie.m=0,ie.d="W"in ie?(ie.w+6)%7+ie.W*7-(ct+5)%7:ie.w+ie.U*7-(ct+6)%7);return"Z"in ie?(ie.H+=ie.Z/100|0,ie.M+=ie.Z%100,sg(ie)):lg(ie)}}function F(X,we,Ae,ie){for(var rt=0,ze=we.length,ct=Ae.length,ft,Ut;rt=ct)return-1;if(ft=we.charCodeAt(rt++),ft===37){if(ft=we.charAt(rt++),Ut=I[ft in Uj?we.charAt(rt++):ft],!Ut||(ie=Ut(X,Ae,ie))<0)return-1}else if(ft!=Ae.charCodeAt(ie++))return-1}return ie}function H(X,we,Ae){var ie=f.exec(we.slice(Ae));return ie?(X.p=d.get(ie[0].toLowerCase()),Ae+ie[0].length):-1}function R(X,we,Ae){var ie=y.exec(we.slice(Ae));return ie?(X.w=b.get(ie[0].toLowerCase()),Ae+ie[0].length):-1}function W(X,we,Ae){var ie=p.exec(we.slice(Ae));return ie?(X.w=g.get(ie[0].toLowerCase()),Ae+ie[0].length):-1}function D(X,we,Ae){var ie=P.exec(we.slice(Ae));return ie?(X.m=C.get(ie[0].toLowerCase()),Ae+ie[0].length):-1}function Z(X,we,Ae){var ie=S.exec(we.slice(Ae));return ie?(X.m=w.get(ie[0].toLowerCase()),Ae+ie[0].length):-1}function Y(X,we,Ae){return F(X,t,we,Ae)}function Q(X,we,Ae){return F(X,n,we,Ae)}function he(X,we,Ae){return F(X,r,we,Ae)}function de(X){return l[X.getDay()]}function J(X){return a[X.getDay()]}function ae(X){return c[X.getMonth()]}function T(X){return u[X.getMonth()]}function $(X){return i[+(X.getHours()>=12)]}function U(X){return 1+~~(X.getMonth()/3)}function _(X){return l[X.getUTCDay()]}function te(X){return a[X.getUTCDay()]}function fe(X){return c[X.getUTCMonth()]}function ce(X){return u[X.getUTCMonth()]}function Se(X){return i[+(X.getUTCHours()>=12)]}function je(X){return 1+~~(X.getUTCMonth()/3)}return{format:function(X){var we=E(X+="",O);return we.toString=function(){return X},we},parse:function(X){var we=L(X+="",!1);return we.toString=function(){return X},we},utcFormat:function(X){var we=E(X+="",A);return we.toString=function(){return X},we},utcParse:function(X){var we=L(X+="",!0);return we.toString=function(){return X},we}}}var Uj={"-":"",_:" ",0:"0"},$t=/^\s*\d+/,Rq=/^%/,zq=/[\\^$*+?|[\]().{}]/g;function We(e,t,n){var r=e<0?"-":"",i=(r?-e:e)+"",a=i.length;return r+(a[t.toLowerCase(),n]))}function Fq(e,t,n){var r=$t.exec(t.slice(n,n+1));return r?(e.w=+r[0],n+r[0].length):-1}function Bq(e,t,n){var r=$t.exec(t.slice(n,n+1));return r?(e.u=+r[0],n+r[0].length):-1}function Uq(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.U=+r[0],n+r[0].length):-1}function Wq(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.V=+r[0],n+r[0].length):-1}function qq(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.W=+r[0],n+r[0].length):-1}function Wj(e,t,n){var r=$t.exec(t.slice(n,n+4));return r?(e.y=+r[0],n+r[0].length):-1}function qj(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function Hq(e,t,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(n,n+6));return r?(e.Z=r[1]?0:-(r[2]+(r[3]||"00")),n+r[0].length):-1}function Vq(e,t,n){var r=$t.exec(t.slice(n,n+1));return r?(e.q=r[0]*3-3,n+r[0].length):-1}function Kq(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.m=r[0]-1,n+r[0].length):-1}function Hj(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.d=+r[0],n+r[0].length):-1}function Gq(e,t,n){var r=$t.exec(t.slice(n,n+3));return r?(e.m=0,e.d=+r[0],n+r[0].length):-1}function Vj(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.H=+r[0],n+r[0].length):-1}function Yq(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.M=+r[0],n+r[0].length):-1}function Xq(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.S=+r[0],n+r[0].length):-1}function Qq(e,t,n){var r=$t.exec(t.slice(n,n+3));return r?(e.L=+r[0],n+r[0].length):-1}function Zq(e,t,n){var r=$t.exec(t.slice(n,n+6));return r?(e.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function Jq(e,t,n){var r=Rq.exec(t.slice(n,n+1));return r?n+r[0].length:-1}function eH(e,t,n){var r=$t.exec(t.slice(n));return r?(e.Q=+r[0],n+r[0].length):-1}function tH(e,t,n){var r=$t.exec(t.slice(n));return r?(e.s=+r[0],n+r[0].length):-1}function Kj(e,t){return We(e.getDate(),t,2)}function nH(e,t){return We(e.getHours(),t,2)}function rH(e,t){return We(e.getHours()%12||12,t,2)}function iH(e,t){return We(1+Fs.count(ai(e),e),t,3)}function CA(e,t){return We(e.getMilliseconds(),t,3)}function aH(e,t){return CA(e,t)+"000"}function oH(e,t){return We(e.getMonth()+1,t,2)}function lH(e,t){return We(e.getMinutes(),t,2)}function sH(e,t){return We(e.getSeconds(),t,2)}function uH(e){var t=e.getDay();return t===0?7:t}function cH(e,t){return We(md.count(ai(e)-1,e),t,2)}function OA(e){var t=e.getDay();return t>=4||t===0?Ro(e):Ro.ceil(e)}function fH(e,t){return e=OA(e),We(Ro.count(ai(e),e)+(ai(e).getDay()===4),t,2)}function dH(e){return e.getDay()}function hH(e,t){return We(xf.count(ai(e)-1,e),t,2)}function pH(e,t){return We(e.getFullYear()%100,t,2)}function mH(e,t){return e=OA(e),We(e.getFullYear()%100,t,2)}function gH(e,t){return We(e.getFullYear()%1e4,t,4)}function vH(e,t){var n=e.getDay();return e=n>=4||n===0?Ro(e):Ro.ceil(e),We(e.getFullYear()%1e4,t,4)}function yH(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+We(t/60|0,"0",2)+We(t%60,"0",2)}function Gj(e,t){return We(e.getUTCDate(),t,2)}function xH(e,t){return We(e.getUTCHours(),t,2)}function bH(e,t){return We(e.getUTCHours()%12||12,t,2)}function wH(e,t){return We(1+pd.count(oi(e),e),t,3)}function NA(e,t){return We(e.getUTCMilliseconds(),t,3)}function kH(e,t){return NA(e,t)+"000"}function SH(e,t){return We(e.getUTCMonth()+1,t,2)}function jH(e,t){return We(e.getUTCMinutes(),t,2)}function PH(e,t){return We(e.getUTCSeconds(),t,2)}function EH(e){var t=e.getUTCDay();return t===0?7:t}function CH(e,t){return We(gd.count(oi(e)-1,e),t,2)}function AA(e){var t=e.getUTCDay();return t>=4||t===0?zo(e):zo.ceil(e)}function OH(e,t){return e=AA(e),We(zo.count(oi(e),e)+(oi(e).getUTCDay()===4),t,2)}function NH(e){return e.getUTCDay()}function AH(e,t){return We(bf.count(oi(e)-1,e),t,2)}function _H(e,t){return We(e.getUTCFullYear()%100,t,2)}function IH(e,t){return e=AA(e),We(e.getUTCFullYear()%100,t,2)}function TH(e,t){return We(e.getUTCFullYear()%1e4,t,4)}function DH(e,t){var n=e.getUTCDay();return e=n>=4||n===0?zo(e):zo.ceil(e),We(e.getUTCFullYear()%1e4,t,4)}function MH(){return"+0000"}function Yj(){return"%"}function Xj(e){return+e}function Qj(e){return Math.floor(+e/1e3)}var vo,_A,IA;LH({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function LH(e){return vo=Lq(e),_A=vo.format,vo.parse,IA=vo.utcFormat,vo.utcParse,vo}function RH(e){return new Date(e)}function zH(e){return e instanceof Date?+e:+new Date(+e)}function nx(e,t,n,r,i,a,l,u,c,f){var d=Uy(),p=d.invert,g=d.domain,y=f(".%L"),b=f(":%S"),S=f("%I:%M"),w=f("%I %p"),P=f("%a %d"),C=f("%b %d"),O=f("%B"),A=f("%Y");function I(E){return(c(E)t(i/(e.length-1)))},n.quantiles=function(r){return Array.from({length:r+1},(i,a)=>E9(e,a/r))},n.copy=function(){return LA(t).domain(e)},hi.apply(n,arguments)}function yd(){var e=0,t=.5,n=1,r=1,i,a,l,u,c,f=fn,d,p=!1,g;function y(S){return isNaN(S=+S)?g:(S=.5+((S=+d(S))-a)*(r*Se.chartData,FA=G([pi],e=>{var t=e.chartData!=null?e.chartData.length-1:0;return{chartData:e.chartData,computedData:e.computedData,dataEndIndex:t,dataStartIndex:0}}),BA=(e,t,n,r)=>r?FA(e):pi(e),UA=(e,t,n)=>n?FA(e):pi(e);function li(e){if(Array.isArray(e)&&e.length===2){var[t,n]=e;if(De(t)&&De(n))return!0}return!1}function Zj(e,t,n){return n?e:[Math.min(e[0],t[0]),Math.max(e[1],t[1])]}function WA(e,t){if(t&&typeof e!="function"&&Array.isArray(e)&&e.length===2){var[n,r]=e,i,a;if(De(n))i=n;else if(typeof n=="function")return;if(De(r))a=r;else if(typeof r=="function")return;var l=[i,a];if(li(l))return l}}function WH(e,t,n){if(!(!n&&t==null)){if(typeof e=="function"&&t!=null)try{var r=e(t,n);if(li(r))return Zj(r,t,n)}catch{}if(Array.isArray(e)&&e.length===2){var[i,a]=e,l,u;if(i==="auto")t!=null&&(l=Math.min(...t));else if(ge(i))l=i;else if(typeof i=="function")try{t!=null&&(l=i(t==null?void 0:t[0]))}catch{}else if(typeof i=="string"&&cS.test(i)){var c=cS.exec(i);if(c==null||c[1]==null||t==null)l=void 0;else{var f=+c[1];l=t[0]-f}}else l=t==null?void 0:t[0];if(a==="auto")t!=null&&(u=Math.max(...t));else if(ge(a))u=a;else if(typeof a=="function")try{t!=null&&(u=a(t==null?void 0:t[1]))}catch{}else if(typeof a=="string"&&fS.test(a)){var d=fS.exec(a);if(d==null||d[1]==null||t==null)u=void 0;else{var p=+d[1];u=t[1]+p}}else u=t==null?void 0:t[1];var g=[l,u];if(li(g))return t==null?g:Zj(g,t,n)}}}var Wo=1e9,qH={precision:20,rounding:4,toExpNeg:-7,toExpPos:21,LN10:"2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286"},ox,ot=!0,er="[DecimalError] ",Ea=er+"Invalid argument: ",ax=er+"Exponent out of range: ",qo=Math.floor,xa=Math.pow,HH=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,Mn,Lt=1e7,nt=7,qA=9007199254740991,wf=qo(qA/nt),ye={};ye.absoluteValue=ye.abs=function(){var e=new this.constructor(this);return e.s&&(e.s=1),e};ye.comparedTo=ye.cmp=function(e){var t,n,r,i,a=this;if(e=new a.constructor(e),a.s!==e.s)return a.s||-e.s;if(a.e!==e.e)return a.e>e.e^a.s<0?1:-1;for(r=a.d.length,i=e.d.length,t=0,n=re.d[t]^a.s<0?1:-1;return r===i?0:r>i^a.s<0?1:-1};ye.decimalPlaces=ye.dp=function(){var e=this,t=e.d.length-1,n=(t-e.e)*nt;if(t=e.d[t],t)for(;t%10==0;t/=10)n--;return n<0?0:n};ye.dividedBy=ye.div=function(e){return ti(this,new this.constructor(e))};ye.dividedToIntegerBy=ye.idiv=function(e){var t=this,n=t.constructor;return Ye(ti(t,new n(e),0,1),n.precision)};ye.equals=ye.eq=function(e){return!this.cmp(e)};ye.exponent=function(){return jt(this)};ye.greaterThan=ye.gt=function(e){return this.cmp(e)>0};ye.greaterThanOrEqualTo=ye.gte=function(e){return this.cmp(e)>=0};ye.isInteger=ye.isint=function(){return this.e>this.d.length-2};ye.isNegative=ye.isneg=function(){return this.s<0};ye.isPositive=ye.ispos=function(){return this.s>0};ye.isZero=function(){return this.s===0};ye.lessThan=ye.lt=function(e){return this.cmp(e)<0};ye.lessThanOrEqualTo=ye.lte=function(e){return this.cmp(e)<1};ye.logarithm=ye.log=function(e){var t,n=this,r=n.constructor,i=r.precision,a=i+5;if(e===void 0)e=new r(10);else if(e=new r(e),e.s<1||e.eq(Mn))throw Error(er+"NaN");if(n.s<1)throw Error(er+(n.s?"NaN":"-Infinity"));return n.eq(Mn)?new r(0):(ot=!1,t=ti(ks(n,a),ks(e,a),a),ot=!0,Ye(t,i))};ye.minus=ye.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?KA(t,e):HA(t,(e.s=-e.s,e))};ye.modulo=ye.mod=function(e){var t,n=this,r=n.constructor,i=r.precision;if(e=new r(e),!e.s)throw Error(er+"NaN");return n.s?(ot=!1,t=ti(n,e,0,1).times(e),ot=!0,n.minus(t)):Ye(new r(n),i)};ye.naturalExponential=ye.exp=function(){return VA(this)};ye.naturalLogarithm=ye.ln=function(){return ks(this)};ye.negated=ye.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e};ye.plus=ye.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?HA(t,e):KA(t,(e.s=-e.s,e))};ye.precision=ye.sd=function(e){var t,n,r,i=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(Ea+e);if(t=jt(i)+1,r=i.d.length-1,n=r*nt+1,r=i.d[r],r){for(;r%10==0;r/=10)n--;for(r=i.d[0];r>=10;r/=10)n++}return e&&t>n?t:n};ye.squareRoot=ye.sqrt=function(){var e,t,n,r,i,a,l,u=this,c=u.constructor;if(u.s<1){if(!u.s)return new c(0);throw Error(er+"NaN")}for(e=jt(u),ot=!1,i=Math.sqrt(+u),i==0||i==1/0?(t=Ir(u.d),(t.length+e)%2==0&&(t+="0"),i=Math.sqrt(t),e=qo((e+1)/2)-(e<0||e%2),i==1/0?t="5e"+e:(t=i.toExponential(),t=t.slice(0,t.indexOf("e")+1)+e),r=new c(t)):r=new c(i.toString()),n=c.precision,i=l=n+3;;)if(a=r,r=a.plus(ti(u,a,l+2)).times(.5),Ir(a.d).slice(0,l)===(t=Ir(r.d)).slice(0,l)){if(t=t.slice(l-3,l+1),i==l&&t=="4999"){if(Ye(a,n+1,0),a.times(a).eq(u)){r=a;break}}else if(t!="9999")break;l+=4}return ot=!0,Ye(r,n)};ye.times=ye.mul=function(e){var t,n,r,i,a,l,u,c,f,d=this,p=d.constructor,g=d.d,y=(e=new p(e)).d;if(!d.s||!e.s)return new p(0);for(e.s*=d.s,n=d.e+e.e,c=g.length,f=y.length,c=0;){for(t=0,i=c+r;i>r;)u=a[i]+y[r]*g[i-r-1]+t,a[i--]=u%Lt|0,t=u/Lt|0;a[i]=(a[i]+t)%Lt|0}for(;!a[--l];)a.pop();return t?++n:a.shift(),e.d=a,e.e=n,ot?Ye(e,p.precision):e};ye.toDecimalPlaces=ye.todp=function(e,t){var n=this,r=n.constructor;return n=new r(n),e===void 0?n:(Lr(e,0,Wo),t===void 0?t=r.rounding:Lr(t,0,8),Ye(n,e+jt(n)+1,t))};ye.toExponential=function(e,t){var n,r=this,i=r.constructor;return e===void 0?n=Da(r,!0):(Lr(e,0,Wo),t===void 0?t=i.rounding:Lr(t,0,8),r=Ye(new i(r),e+1,t),n=Da(r,!0,e+1)),n};ye.toFixed=function(e,t){var n,r,i=this,a=i.constructor;return e===void 0?Da(i):(Lr(e,0,Wo),t===void 0?t=a.rounding:Lr(t,0,8),r=Ye(new a(i),e+jt(i)+1,t),n=Da(r.abs(),!1,e+jt(r)+1),i.isneg()&&!i.isZero()?"-"+n:n)};ye.toInteger=ye.toint=function(){var e=this,t=e.constructor;return Ye(new t(e),jt(e)+1,t.rounding)};ye.toNumber=function(){return+this};ye.toPower=ye.pow=function(e){var t,n,r,i,a,l,u=this,c=u.constructor,f=12,d=+(e=new c(e));if(!e.s)return new c(Mn);if(u=new c(u),!u.s){if(e.s<1)throw Error(er+"Infinity");return u}if(u.eq(Mn))return u;if(r=c.precision,e.eq(Mn))return Ye(u,r);if(t=e.e,n=e.d.length-1,l=t>=n,a=u.s,l){if((n=d<0?-d:d)<=qA){for(i=new c(Mn),t=Math.ceil(r/nt+4),ot=!1;n%2&&(i=i.times(u),eP(i.d,t)),n=qo(n/2),n!==0;)u=u.times(u),eP(u.d,t);return ot=!0,e.s<0?new c(Mn).div(i):Ye(i,r)}}else if(a<0)throw Error(er+"NaN");return a=a<0&&e.d[Math.max(t,n)]&1?-1:1,u.s=1,ot=!1,i=e.times(ks(u,r+f)),ot=!0,i=VA(i),i.s=a,i};ye.toPrecision=function(e,t){var n,r,i=this,a=i.constructor;return e===void 0?(n=jt(i),r=Da(i,n<=a.toExpNeg||n>=a.toExpPos)):(Lr(e,1,Wo),t===void 0?t=a.rounding:Lr(t,0,8),i=Ye(new a(i),e,t),n=jt(i),r=Da(i,e<=n||n<=a.toExpNeg,e)),r};ye.toSignificantDigits=ye.tosd=function(e,t){var n=this,r=n.constructor;return e===void 0?(e=r.precision,t=r.rounding):(Lr(e,1,Wo),t===void 0?t=r.rounding:Lr(t,0,8)),Ye(new r(n),e,t)};ye.toString=ye.valueOf=ye.val=ye.toJSON=ye[Symbol.for("nodejs.util.inspect.custom")]=function(){var e=this,t=jt(e),n=e.constructor;return Da(e,t<=n.toExpNeg||t>=n.toExpPos)};function HA(e,t){var n,r,i,a,l,u,c,f,d=e.constructor,p=d.precision;if(!e.s||!t.s)return t.s||(t=new d(e)),ot?Ye(t,p):t;if(c=e.d,f=t.d,l=e.e,i=t.e,c=c.slice(),a=l-i,a){for(a<0?(r=c,a=-a,u=f.length):(r=f,i=l,u=c.length),l=Math.ceil(p/nt),u=l>u?l+1:u+1,a>u&&(a=u,r.length=1),r.reverse();a--;)r.push(0);r.reverse()}for(u=c.length,a=f.length,u-a<0&&(a=u,r=f,f=c,c=r),n=0;a;)n=(c[--a]=c[a]+f[a]+n)/Lt|0,c[a]%=Lt;for(n&&(c.unshift(n),++i),u=c.length;c[--u]==0;)c.pop();return t.d=c,t.e=i,ot?Ye(t,p):t}function Lr(e,t,n){if(e!==~~e||en)throw Error(Ea+e)}function Ir(e){var t,n,r,i=e.length-1,a="",l=e[0];if(i>0){for(a+=l,t=1;tl?1:-1;else for(u=c=0;ui[u]?1:-1;break}return c}function n(r,i,a){for(var l=0;a--;)r[a]-=l,l=r[a]1;)r.shift()}return function(r,i,a,l){var u,c,f,d,p,g,y,b,S,w,P,C,O,A,I,E,L,F,H=r.constructor,R=r.s==i.s?1:-1,W=r.d,D=i.d;if(!r.s)return new H(r);if(!i.s)throw Error(er+"Division by zero");for(c=r.e-i.e,L=D.length,I=W.length,y=new H(R),b=y.d=[],f=0;D[f]==(W[f]||0);)++f;if(D[f]>(W[f]||0)&&--c,a==null?C=a=H.precision:l?C=a+(jt(r)-jt(i))+1:C=a,C<0)return new H(0);if(C=C/nt+2|0,f=0,L==1)for(d=0,D=D[0],C++;(f1&&(D=e(D,d),W=e(W,d),L=D.length,I=W.length),A=L,S=W.slice(0,L),w=S.length;w=Lt/2&&++E;do d=0,u=t(D,S,L,w),u<0?(P=S[0],L!=w&&(P=P*Lt+(S[1]||0)),d=P/E|0,d>1?(d>=Lt&&(d=Lt-1),p=e(D,d),g=p.length,w=S.length,u=t(p,S,g,w),u==1&&(d--,n(p,L16)throw Error(ax+jt(e));if(!e.s)return new d(Mn);for(ot=!1,u=p,l=new d(.03125);e.abs().gte(.1);)e=e.times(l),f+=5;for(r=Math.log(xa(2,f))/Math.LN10*2+5|0,u+=r,n=i=a=new d(Mn),d.precision=u;;){if(i=Ye(i.times(e),u),n=n.times(++c),l=a.plus(ti(i,n,u)),Ir(l.d).slice(0,u)===Ir(a.d).slice(0,u)){for(;f--;)a=Ye(a.times(a),u);return d.precision=p,t==null?(ot=!0,Ye(a,p)):a}a=l}}function jt(e){for(var t=e.e*nt,n=e.d[0];n>=10;n/=10)t++;return t}function ug(e,t,n){if(t>e.LN10.sd())throw ot=!0,n&&(e.precision=n),Error(er+"LN10 precision limit exceeded");return Ye(new e(e.LN10),t)}function Ui(e){for(var t="";e--;)t+="0";return t}function ks(e,t){var n,r,i,a,l,u,c,f,d,p=1,g=10,y=e,b=y.d,S=y.constructor,w=S.precision;if(y.s<1)throw Error(er+(y.s?"NaN":"-Infinity"));if(y.eq(Mn))return new S(0);if(t==null?(ot=!1,f=w):f=t,y.eq(10))return t==null&&(ot=!0),ug(S,f);if(f+=g,S.precision=f,n=Ir(b),r=n.charAt(0),a=jt(y),Math.abs(a)<15e14){for(;r<7&&r!=1||r==1&&n.charAt(1)>3;)y=y.times(e),n=Ir(y.d),r=n.charAt(0),p++;a=jt(y),r>1?(y=new S("0."+n),a++):y=new S(r+"."+n.slice(1))}else return c=ug(S,f+2,w).times(a+""),y=ks(new S(r+"."+n.slice(1)),f-g).plus(c),S.precision=w,t==null?(ot=!0,Ye(y,w)):y;for(u=l=y=ti(y.minus(Mn),y.plus(Mn),f),d=Ye(y.times(y),f),i=3;;){if(l=Ye(l.times(d),f),c=u.plus(ti(l,new S(i),f)),Ir(c.d).slice(0,f)===Ir(u.d).slice(0,f))return u=u.times(2),a!==0&&(u=u.plus(ug(S,f+2,w).times(a+""))),u=ti(u,new S(p),f),S.precision=w,t==null?(ot=!0,Ye(u,w)):u;u=c,i+=2}}function Jj(e,t){var n,r,i;for((n=t.indexOf("."))>-1&&(t=t.replace(".","")),(r=t.search(/e/i))>0?(n<0&&(n=r),n+=+t.slice(r+1),t=t.substring(0,r)):n<0&&(n=t.length),r=0;t.charCodeAt(r)===48;)++r;for(i=t.length;t.charCodeAt(i-1)===48;)--i;if(t=t.slice(r,i),t){if(i-=r,n=n-r-1,e.e=qo(n/nt),e.d=[],r=(n+1)%nt,n<0&&(r+=nt),rwf||e.e<-wf))throw Error(ax+n)}else e.s=0,e.e=0,e.d=[0];return e}function Ye(e,t,n){var r,i,a,l,u,c,f,d,p=e.d;for(l=1,a=p[0];a>=10;a/=10)l++;if(r=t-l,r<0)r+=nt,i=t,f=p[d=0];else{if(d=Math.ceil((r+1)/nt),a=p.length,d>=a)return e;for(f=a=p[d],l=1;a>=10;a/=10)l++;r%=nt,i=r-nt+l}if(n!==void 0&&(a=xa(10,l-i-1),u=f/a%10|0,c=t<0||p[d+1]!==void 0||f%a,c=n<4?(u||c)&&(n==0||n==(e.s<0?3:2)):u>5||u==5&&(n==4||c||n==6&&(r>0?i>0?f/xa(10,l-i):0:p[d-1])%10&1||n==(e.s<0?8:7))),t<1||!p[0])return c?(a=jt(e),p.length=1,t=t-a-1,p[0]=xa(10,(nt-t%nt)%nt),e.e=qo(-t/nt)||0):(p.length=1,p[0]=e.e=e.s=0),e;if(r==0?(p.length=d,a=1,d--):(p.length=d+1,a=xa(10,nt-r),p[d]=i>0?(f/xa(10,l-i)%xa(10,i)|0)*a:0),c)for(;;)if(d==0){(p[0]+=a)==Lt&&(p[0]=1,++e.e);break}else{if(p[d]+=a,p[d]!=Lt)break;p[d--]=0,a=1}for(r=p.length;p[--r]===0;)p.pop();if(ot&&(e.e>wf||e.e<-wf))throw Error(ax+jt(e));return e}function KA(e,t){var n,r,i,a,l,u,c,f,d,p,g=e.constructor,y=g.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new g(e),ot?Ye(t,y):t;if(c=e.d,p=t.d,r=t.e,f=e.e,c=c.slice(),l=f-r,l){for(d=l<0,d?(n=c,l=-l,u=p.length):(n=p,r=f,u=c.length),i=Math.max(Math.ceil(y/nt),u)+2,l>i&&(l=i,n.length=1),n.reverse(),i=l;i--;)n.push(0);n.reverse()}else{for(i=c.length,u=p.length,d=i0;--i)c[u++]=0;for(i=p.length;i>l;){if(c[--i]0?a=a.charAt(0)+"."+a.slice(1)+Ui(r):l>1&&(a=a.charAt(0)+"."+a.slice(1)),a=a+(i<0?"e":"e+")+i):i<0?(a="0."+Ui(-i-1)+a,n&&(r=n-l)>0&&(a+=Ui(r))):i>=l?(a+=Ui(i+1-l),n&&(r=n-i-1)>0&&(a=a+"."+Ui(r))):((r=i+1)0&&(i+1===l&&(a+="."),a+=Ui(r))),e.s<0?"-"+a:a}function eP(e,t){if(e.length>t)return e.length=t,!0}function GA(e){var t,n,r;function i(a){var l=this;if(!(l instanceof i))return new i(a);if(l.constructor=i,a instanceof i){l.s=a.s,l.e=a.e,l.d=(a=a.d)?a.slice():a;return}if(typeof a=="number"){if(a*0!==0)throw Error(Ea+a);if(a>0)l.s=1;else if(a<0)a=-a,l.s=-1;else{l.s=0,l.e=0,l.d=[0];return}if(a===~~a&&a<1e7){l.e=0,l.d=[a];return}return Jj(l,a.toString())}else if(typeof a!="string")throw Error(Ea+a);if(a.charCodeAt(0)===45?(a=a.slice(1),l.s=-1):l.s=1,HH.test(a))Jj(l,a);else throw Error(Ea+a)}if(i.prototype=ye,i.ROUND_UP=0,i.ROUND_DOWN=1,i.ROUND_CEIL=2,i.ROUND_FLOOR=3,i.ROUND_HALF_UP=4,i.ROUND_HALF_DOWN=5,i.ROUND_HALF_EVEN=6,i.ROUND_HALF_CEIL=7,i.ROUND_HALF_FLOOR=8,i.clone=GA,i.config=i.set=VH,e===void 0&&(e={}),e)for(r=["precision","rounding","toExpNeg","toExpPos","LN10"],t=0;t=i[t+1]&&r<=i[t+2])this[n]=r;else throw Error(Ea+n+": "+r);if((r=e[n="LN10"])!==void 0)if(r==Math.LN10)this[n]=new this(r);else throw Error(Ea+n+": "+r);return this}var ox=GA(qH);Mn=new ox(1);const Ke=ox;function YA(e){var t;return e===0?t=1:t=Math.floor(new Ke(e).abs().log(10).toNumber())+1,t}function XA(e,t,n){for(var r=new Ke(e),i=0,a=[];r.lt(t)&&i<1e5;)a.push(r.toNumber()),r=r.add(n),i++;return a}var QA=e=>{var[t,n]=e,[r,i]=[t,n];return t>n&&([r,i]=[n,t]),[r,i]},ZA=(e,t,n)=>{if(e.lte(0))return new Ke(0);var r=YA(e.toNumber()),i=new Ke(10).pow(r),a=e.div(i),l=r!==1?.05:.1,u=new Ke(Math.ceil(a.div(l).toNumber())).add(n).mul(l),c=u.mul(i);return t?new Ke(c.toNumber()):new Ke(Math.ceil(c.toNumber()))},KH=(e,t,n)=>{var r=new Ke(1),i=new Ke(e);if(!i.isint()&&n){var a=Math.abs(e);a<1?(r=new Ke(10).pow(YA(e)-1),i=new Ke(Math.floor(i.div(r).toNumber())).mul(r)):a>1&&(i=new Ke(Math.floor(e)))}else e===0?i=new Ke(Math.floor((t-1)/2)):n||(i=new Ke(Math.floor(e)));for(var l=Math.floor((t-1)/2),u=[],c=0;c4&&arguments[4]!==void 0?arguments[4]:0;if(!Number.isFinite((n-t)/(r-1)))return{step:new Ke(0),tickMin:new Ke(0),tickMax:new Ke(0)};var l=ZA(new Ke(n).sub(t).div(r-1),i,a),u;t<=0&&n>=0?u=new Ke(0):(u=new Ke(t).add(n).div(2),u=u.sub(new Ke(u).mod(l)));var c=Math.ceil(u.sub(t).div(l).toNumber()),f=Math.ceil(new Ke(n).sub(u).div(l).toNumber()),d=c+f+1;return d>r?JA(t,n,r,i,a+1):(d0?f+(r-d):f,c=n>0?c:c+(r-d)),{step:l,tickMin:u.sub(new Ke(c).mul(l)),tickMax:u.add(new Ke(f).mul(l))})},GH=function(t){var[n,r]=t,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:6,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,l=Math.max(i,2),[u,c]=QA([n,r]);if(u===-1/0||c===1/0){var f=c===1/0?[u,...Array(i-1).fill(1/0)]:[...Array(i-1).fill(-1/0),c];return n>r?f.reverse():f}if(u===c)return KH(u,i,a);var{step:d,tickMin:p,tickMax:g}=JA(u,c,l,a,0),y=XA(p,g.add(new Ke(.1).mul(d)),d);return n>r?y.reverse():y},YH=function(t,n){var[r,i]=t,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,[l,u]=QA([r,i]);if(l===-1/0||u===1/0)return[r,i];if(l===u)return[l];var c=Math.max(n,2),f=ZA(new Ke(u).sub(l).div(c-1),a,0),d=[...XA(new Ke(l),new Ke(u),f),u];return a===!1&&(d=d.map(p=>Math.round(p))),r>i?d.reverse():d},e_=e=>e.rootProps.maxBarSize,XH=e=>e.rootProps.barGap,t_=e=>e.rootProps.barCategoryGap,QH=e=>e.rootProps.barSize,xd=e=>e.rootProps.stackOffset,n_=e=>e.rootProps.reverseStackOrder,lx=e=>e.options.chartName,sx=e=>e.rootProps.syncId,r_=e=>e.rootProps.syncMethod,ux=e=>e.options.eventEmitter,ZH=e=>e.rootProps.baseValue,Rt={grid:-100,barBackground:-50,area:100,cursorRectangle:200,bar:300,line:400,axis:500,scatter:600,activeBar:1e3,cursorLine:1100,activeDot:1200,label:2e3},ga={allowDecimals:!1,allowDataOverflow:!1,angleAxisId:0,reversed:!1,scale:"auto",tick:!0,type:"auto"},Cr={allowDataOverflow:!1,allowDecimals:!1,allowDuplicatedCategory:!0,includeHidden:!1,radiusAxisId:0,reversed:!1,scale:"auto",tick:!0,tickCount:5,type:"auto"},bd=(e,t)=>{if(!(!e||!t))return e!=null&&e.reversed?[t[1],t[0]]:t};function wd(e,t,n){if(n!=="auto")return n;if(e!=null)return zr(e,t)?"category":"number"}function tP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function kf(e){for(var t=1;t{if(t!=null)return e.polarAxis.angleAxis[t]},cx=G([nV,WN],(e,t)=>{var n;if(e!=null)return e;var r=(n=wd(t,"angleAxis",nP.type))!==null&&n!==void 0?n:"category";return kf(kf({},nP),{},{type:r})}),rV=(e,t)=>e.polarAxis.radiusAxis[t],fx=G([rV,WN],(e,t)=>{var n;if(e!=null)return e;var r=(n=wd(t,"radiusAxis",rP.type))!==null&&n!==void 0?n:"category";return kf(kf({},rP),{},{type:r})}),kd=e=>e.polarOptions,dx=G([fi,di,zt],e9),i_=G([kd,dx],(e,t)=>{if(e!=null)return gr(e.innerRadius,t,0)}),a_=G([kd,dx],(e,t)=>{if(e!=null)return gr(e.outerRadius,t,t*.8)}),iV=e=>{if(e==null)return[0,0];var{startAngle:t,endAngle:n}=e;return[t,n]},o_=G([kd],iV);G([cx,o_],bd);var l_=G([dx,i_,a_],(e,t,n)=>{if(!(e==null||t==null||n==null))return[t,n]});G([fx,l_],bd);var s_=G([He,kd,i_,a_,fi,di],(e,t,n,r,i,a)=>{if(!(e!=="centric"&&e!=="radial"||t==null||n==null||r==null)){var{cx:l,cy:u,startAngle:c,endAngle:f}=t;return{cx:gr(l,i,i/2),cy:gr(u,a,a/2),innerRadius:n,outerRadius:r,startAngle:c,endAngle:f,clockWise:!1}}}),Ft=(e,t)=>t,Sd=(e,t,n)=>n;function jd(e){return e==null?void 0:e.id}function u_(e,t,n){var{chartData:r=[]}=t,{allowDuplicatedCategory:i,dataKey:a}=n,l=new Map;return e.forEach(u=>{var c,f=(c=u.data)!==null&&c!==void 0?c:r;if(!(f==null||f.length===0)){var d=jd(u);f.forEach((p,g)=>{var y=a==null||i?g:String(St(p,a,null)),b=St(p,u.dataKey,0),S;l.has(y)?S=l.get(y):S={},Object.assign(S,{[d]:b}),l.set(y,S)})}}),Array.from(l.values())}function Pd(e){return"stackId"in e&&e.stackId!=null&&e.dataKey!=null}var Ed=(e,t)=>e===t?!0:e==null||t==null?!1:e[0]===t[0]&&e[1]===t[1];function Cd(e,t){return Array.isArray(e)&&Array.isArray(t)&&e.length===0&&t.length===0?!0:e===t}function aV(e,t){if(e.length===t.length){for(var n=0;n{var t=He(e);return t==="horizontal"?"xAxis":t==="vertical"?"yAxis":t==="centric"?"angleAxis":"radiusAxis"},Ho=e=>e.tooltip.settings.axisId;function oV(e){if(e in Jl)return Jl[e]();var t="scale".concat(As(e));if(t in Jl)return Jl[t]()}function iP(e){var t=e.ticks,n=e.bandwidth,r=e.range(),i=[Math.min(...r),Math.max(...r)];return{domain:()=>e.domain(),range:(function(a){function l(){return a.apply(this,arguments)}return l.toString=function(){return a.toString()},l})(()=>i),rangeMin:()=>i[0],rangeMax:()=>i[1],isInRange(a){var l=i[0],u=i[1];return l<=u?a>=l&&a<=u:a>=u&&a<=l},bandwidth:n?()=>n.call(e):void 0,ticks:t?a=>t.call(e,a):void 0,map:(a,l)=>{var u=e(a);if(u!=null){if(e.bandwidth&&l!==null&&l!==void 0&&l.position){var c=e.bandwidth();switch(l.position){case"middle":u+=c/2;break;case"end":u+=c;break}}return u}}}}function aP(e,t,n){if(typeof e=="function")return iP(e.copy().domain(t).range(n));if(e!=null){var r=oV(e);if(r!=null)return r.domain(t).range(n),iP(r)}}var lV=(e,t)=>{if(t!=null)switch(e){case"linear":{if(!li(t)){for(var n,r,i=0;ir)&&(r=a))}return n!==void 0&&r!==void 0?[n,r]:void 0}return t}default:return t}};function oP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Sf(e){for(var t=1;te.cartesianAxis.xAxis[t],mi=(e,t)=>{var n=c_(e,t);return n??Dt},Mt={allowDataOverflow:!1,allowDecimals:!0,allowDuplicatedCategory:!0,angle:0,dataKey:void 0,domain:Ev,hide:!0,id:0,includeHidden:!1,interval:"preserveEnd",minTickGap:5,mirror:!1,name:void 0,orientation:"left",padding:{top:0,bottom:0},reversed:!1,scale:"auto",tick:!0,tickCount:5,tickFormatter:void 0,ticks:void 0,type:"number",unit:void 0,width:Ts},f_=(e,t)=>e.cartesianAxis.yAxis[t],gi=(e,t)=>{var n=f_(e,t);return n??Mt},fV={domain:[0,"auto"],includeHidden:!1,reversed:!1,allowDataOverflow:!1,allowDuplicatedCategory:!1,dataKey:void 0,id:0,name:"",range:[64,64],scale:"auto",type:"number",unit:""},hx=(e,t)=>{var n=e.cartesianAxis.zAxis[t];return n??fV},gn=(e,t,n)=>{switch(t){case"xAxis":return mi(e,n);case"yAxis":return gi(e,n);case"zAxis":return hx(e,n);case"angleAxis":return cx(e,n);case"radiusAxis":return fx(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},dV=(e,t,n)=>{switch(t){case"xAxis":return mi(e,n);case"yAxis":return gi(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},Bs=(e,t,n)=>{switch(t){case"xAxis":return mi(e,n);case"yAxis":return gi(e,n);case"angleAxis":return cx(e,n);case"radiusAxis":return fx(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},d_=e=>e.graphicalItems.cartesianItems.some(t=>t.type==="bar")||e.graphicalItems.polarItems.some(t=>t.type==="radialBar");function h_(e,t){return n=>{switch(e){case"xAxis":return"xAxisId"in n&&n.xAxisId===t;case"yAxis":return"yAxisId"in n&&n.yAxisId===t;case"zAxis":return"zAxisId"in n&&n.zAxisId===t;case"angleAxis":return"angleAxisId"in n&&n.angleAxisId===t;case"radiusAxis":return"radiusAxisId"in n&&n.radiusAxisId===t;default:return!1}}}var Od=e=>e.graphicalItems.cartesianItems,hV=G([Ft,Sd],h_),p_=(e,t,n)=>e.filter(n).filter(r=>(t==null?void 0:t.includeHidden)===!0?!0:!r.hide),Us=G([Od,gn,hV],p_,{memoizeOptions:{resultEqualityCheck:Cd}}),m_=G([Us],e=>e.filter(t=>t.type==="area"||t.type==="bar").filter(Pd)),g_=e=>e.filter(t=>!("stackId"in t)||t.stackId===void 0),pV=G([Us],g_),v_=e=>e.map(t=>t.data).filter(Boolean).flat(1),mV=G([Us],v_,{memoizeOptions:{resultEqualityCheck:Cd}}),y_=(e,t)=>{var{chartData:n=[],dataStartIndex:r,dataEndIndex:i}=t;return e.length>0?e:n.slice(r,i+1)},px=G([mV,BA],y_),x_=(e,t,n)=>(t==null?void 0:t.dataKey)!=null?e.map(r=>({value:St(r,t.dataKey)})):n.length>0?n.map(r=>r.dataKey).flatMap(r=>e.map(i=>({value:St(i,r)}))):e.map(r=>({value:r})),Nd=G([px,gn,Us],x_);function b_(e,t){switch(e){case"xAxis":return t.direction==="x";case"yAxis":return t.direction==="y";default:return!1}}function Ic(e){if(Dr(e)||e instanceof Date){var t=Number(e);if(De(t))return t}}function lP(e){if(Array.isArray(e)){var t=[Ic(e[0]),Ic(e[1])];return li(t)?t:void 0}var n=Ic(e);if(n!=null)return[n,n]}function si(e){return e.map(Ic).filter(Pn)}function gV(e,t,n){return!n||typeof t!="number"||mr(t)?[]:n.length?si(n.flatMap(r=>{var i=St(e,r.dataKey),a,l;if(Array.isArray(i)?[a,l]=i:a=l=i,!(!De(a)||!De(l)))return[t-a,t+l]})):[]}var At=e=>{var t=Bt(e),n=Ho(e);return Bs(e,t,n)},Ws=G([At],e=>e==null?void 0:e.dataKey),vV=G([m_,BA,At],u_),w_=(e,t,n,r)=>{var i={},a=t.reduce((l,u)=>{if(u.stackId==null)return l;var c=l[u.stackId];return c==null&&(c=[]),c.push(u),l[u.stackId]=c,l},i);return Object.fromEntries(Object.entries(a).map(l=>{var[u,c]=l,f=r?[...c].reverse():c,d=f.map(jd);return[u,{stackedData:VU(e,d,n),graphicalItems:f}]}))},jf=G([vV,m_,xd,n_],w_),k_=(e,t,n,r)=>{var{dataStartIndex:i,dataEndIndex:a}=t;if(r==null&&n!=="zAxis"){var l=XU(e,i,a);if(!(l!=null&&l[0]===0&&l[1]===0))return l}},yV=G([gn],e=>e.allowDataOverflow),mx=e=>{var t;if(e==null||!("domain"in e))return Ev;if(e.domain!=null)return e.domain;if("ticks"in e&&e.ticks!=null){if(e.type==="number"){var n=si(e.ticks);return[Math.min(...n),Math.max(...n)]}if(e.type==="category")return e.ticks.map(String)}return(t=e==null?void 0:e.domain)!==null&&t!==void 0?t:Ev},S_=G([gn],mx),j_=G([S_,yV],WA),xV=G([jf,pi,Ft,j_],k_,{memoizeOptions:{resultEqualityCheck:Ed}}),gx=e=>e.errorBars,bV=(e,t,n)=>e.flatMap(r=>t[r.id]).filter(Boolean).filter(r=>b_(n,r)),Pf=function(){for(var t=arguments.length,n=new Array(t),r=0;r{var a,l;if(n.length>0&&e.forEach(u=>{n.forEach(c=>{var f,d,p=(f=r[c.id])===null||f===void 0?void 0:f.filter(P=>b_(i,P)),g=St(u,(d=t.dataKey)!==null&&d!==void 0?d:c.dataKey),y=gV(u,g,p);if(y.length>=2){var b=Math.min(...y),S=Math.max(...y);(a==null||bl)&&(l=S)}var w=lP(g);w!=null&&(a=a==null?w[0]:Math.min(a,w[0]),l=l==null?w[1]:Math.max(l,w[1]))})}),(t==null?void 0:t.dataKey)!=null&&e.forEach(u=>{var c=lP(St(u,t.dataKey));c!=null&&(a=a==null?c[0]:Math.min(a,c[0]),l=l==null?c[1]:Math.max(l,c[1]))}),De(a)&&De(l))return[a,l]},wV=G([px,gn,pV,gx,Ft],P_,{memoizeOptions:{resultEqualityCheck:Ed}});function kV(e){var{value:t}=e;if(Dr(t)||t instanceof Date)return t}var SV=(e,t,n)=>{var r=e.map(kV).filter(i=>i!=null);return n&&(t.dataKey==null||t.allowDuplicatedCategory&&$O(r))?oA(0,e.length):t.allowDuplicatedCategory?r:Array.from(new Set(r))},E_=e=>e.referenceElements.dots,Vo=(e,t,n)=>e.filter(r=>r.ifOverflow==="extendDomain").filter(r=>t==="xAxis"?r.xAxisId===n:r.yAxisId===n),jV=G([E_,Ft,Sd],Vo),C_=e=>e.referenceElements.areas,PV=G([C_,Ft,Sd],Vo),O_=e=>e.referenceElements.lines,EV=G([O_,Ft,Sd],Vo),N_=(e,t)=>{if(e!=null){var n=si(e.map(r=>t==="xAxis"?r.x:r.y));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},CV=G(jV,Ft,N_),A_=(e,t)=>{if(e!=null){var n=si(e.flatMap(r=>[t==="xAxis"?r.x1:r.y1,t==="xAxis"?r.x2:r.y2]));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},OV=G([PV,Ft],A_);function NV(e){var t;if(e.x!=null)return si([e.x]);var n=(t=e.segment)===null||t===void 0?void 0:t.map(r=>r.x);return n==null||n.length===0?[]:si(n)}function AV(e){var t;if(e.y!=null)return si([e.y]);var n=(t=e.segment)===null||t===void 0?void 0:t.map(r=>r.y);return n==null||n.length===0?[]:si(n)}var __=(e,t)=>{if(e!=null){var n=e.flatMap(r=>t==="xAxis"?NV(r):AV(r));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},_V=G([EV,Ft],__),IV=G(CV,_V,OV,(e,t,n)=>Pf(e,n,t)),I_=(e,t,n,r,i,a,l,u)=>{if(n!=null)return n;var c=l==="vertical"&&u==="xAxis"||l==="horizontal"&&u==="yAxis",f=c?Pf(r,a,i):Pf(a,i);return WH(t,f,e.allowDataOverflow)},TV=G([gn,S_,j_,xV,wV,IV,He,Ft],I_,{memoizeOptions:{resultEqualityCheck:Ed}}),DV=[0,1],T_=(e,t,n,r,i,a,l)=>{if(!((e==null||n==null||n.length===0)&&l===void 0)){var{dataKey:u,type:c}=e,f=zr(t,a);if(f&&u==null){var d;return oA(0,(d=n==null?void 0:n.length)!==null&&d!==void 0?d:0)}return c==="category"?SV(r,e,f):i==="expand"?DV:l}},vx=G([gn,He,px,Nd,xd,Ft,TV],T_);function MV(e){return e in Jl}var D_=(e,t,n)=>{if(e!=null){var{scale:r,type:i}=e;if(r==="auto")return i==="category"&&n&&(n.indexOf("LineChart")>=0||n.indexOf("AreaChart")>=0||n.indexOf("ComposedChart")>=0&&!t)?"point":i==="category"?"band":"linear";if(typeof r=="string"){var a="scale".concat(As(r));return MV(a)?a:"point"}}},Ko=G([gn,d_,lx],D_);function yx(e,t,n,r){if(!(n==null||r==null))return typeof e.scale=="function"?aP(e.scale,n,r):aP(t,n,r)}var M_=(e,t,n)=>{var r=mx(t);if(!(n!=="auto"&&n!=="linear")){if(t!=null&&t.tickCount&&Array.isArray(r)&&(r[0]==="auto"||r[1]==="auto")&&li(e))return GH(e,t.tickCount,t.allowDecimals);if(t!=null&&t.tickCount&&t.type==="number"&&li(e))return YH(e,t.tickCount,t.allowDecimals)}},xx=G([vx,Bs,Ko],M_),L_=(e,t,n,r)=>{if(r!=="angleAxis"&&(e==null?void 0:e.type)==="number"&&li(t)&&Array.isArray(n)&&n.length>0){var i,a,l=t[0],u=(i=n[0])!==null&&i!==void 0?i:0,c=t[1],f=(a=n[n.length-1])!==null&&a!==void 0?a:0;return[Math.min(l,u),Math.max(c,f)]}return t},LV=G([gn,vx,xx,Ft],L_),RV=G(Nd,gn,(e,t)=>{if(!(!t||t.type!=="number")){var n=1/0,r=Array.from(si(e.map(p=>p.value))).sort((p,g)=>p-g),i=r[0],a=r[r.length-1];if(i==null||a==null)return 1/0;var l=a-i;if(l===0)return 1/0;for(var u=0;ui,(e,t,n,r,i)=>{if(!De(e))return 0;var a=t==="vertical"?r.height:r.width;if(i==="gap")return e*a/2;if(i==="no-gap"){var l=gr(n,e*a),u=e*a/2;return u-l-(u-l)/a*l}return 0}),zV=(e,t,n)=>{var r=mi(e,t);return r==null||typeof r.padding!="string"?0:R_(e,"xAxis",t,n,r.padding)},$V=(e,t,n)=>{var r=gi(e,t);return r==null||typeof r.padding!="string"?0:R_(e,"yAxis",t,n,r.padding)},FV=G(mi,zV,(e,t)=>{var n,r;if(e==null)return{left:0,right:0};var{padding:i}=e;return typeof i=="string"?{left:t,right:t}:{left:((n=i.left)!==null&&n!==void 0?n:0)+t,right:((r=i.right)!==null&&r!==void 0?r:0)+t}}),BV=G(gi,$V,(e,t)=>{var n,r;if(e==null)return{top:0,bottom:0};var{padding:i}=e;return typeof i=="string"?{top:t,bottom:t}:{top:((n=i.top)!==null&&n!==void 0?n:0)+t,bottom:((r=i.bottom)!==null&&r!==void 0?r:0)+t}}),UV=G([zt,FV,od,ad,(e,t,n)=>n],(e,t,n,r,i)=>{var{padding:a}=r;return i?[a.left,n.width-a.right]:[e.left+t.left,e.left+e.width-t.right]}),WV=G([zt,He,BV,od,ad,(e,t,n)=>n],(e,t,n,r,i,a)=>{var{padding:l}=i;return a?[r.height-l.bottom,l.top]:t==="horizontal"?[e.top+e.height-n.bottom,e.top+n.top]:[e.top+n.top,e.top+e.height-n.bottom]}),qs=(e,t,n,r)=>{var i;switch(t){case"xAxis":return UV(e,n,r);case"yAxis":return WV(e,n,r);case"zAxis":return(i=hx(e,n))===null||i===void 0?void 0:i.range;case"angleAxis":return o_(e);case"radiusAxis":return l_(e,n);default:return}},z_=G([gn,qs],bd),qV=G([Ko,LV],lV),Ad=G([gn,Ko,qV,z_],yx);G([Us,gx,Ft],bV);function $_(e,t){return e.idt.id?1:0}var _d=(e,t)=>t,Id=(e,t,n)=>n,HV=G(rd,_d,Id,(e,t,n)=>e.filter(r=>r.orientation===t).filter(r=>r.mirror===n).sort($_)),VV=G(id,_d,Id,(e,t,n)=>e.filter(r=>r.orientation===t).filter(r=>r.mirror===n).sort($_)),F_=(e,t)=>({width:e.width,height:t.height}),KV=(e,t)=>{var n=typeof t.width=="number"?t.width:Ts;return{width:n,height:e.height}},B_=G(zt,mi,F_),GV=(e,t,n)=>{switch(t){case"top":return e.top;case"bottom":return n-e.bottom;default:return 0}},YV=(e,t,n)=>{switch(t){case"left":return e.left;case"right":return n-e.right;default:return 0}},XV=G(di,zt,HV,_d,Id,(e,t,n,r,i)=>{var a={},l;return n.forEach(u=>{var c=F_(t,u);l==null&&(l=GV(t,r,e));var f=r==="top"&&!i||r==="bottom"&&i;a[u.id]=l-Number(f)*c.height,l+=(f?-1:1)*c.height}),a}),QV=G(fi,zt,VV,_d,Id,(e,t,n,r,i)=>{var a={},l;return n.forEach(u=>{var c=KV(t,u);l==null&&(l=YV(t,r,e));var f=r==="left"&&!i||r==="right"&&i;a[u.id]=l-Number(f)*c.width,l+=(f?-1:1)*c.width}),a}),ZV=(e,t)=>{var n=mi(e,t);if(n!=null)return XV(e,n.orientation,n.mirror)},JV=G([zt,mi,ZV,(e,t)=>t],(e,t,n,r)=>{if(t!=null){var i=n==null?void 0:n[r];return i==null?{x:e.left,y:0}:{x:e.left,y:i}}}),eK=(e,t)=>{var n=gi(e,t);if(n!=null)return QV(e,n.orientation,n.mirror)},tK=G([zt,gi,eK,(e,t)=>t],(e,t,n,r)=>{if(t!=null){var i=n==null?void 0:n[r];return i==null?{x:0,y:e.top}:{x:i,y:e.top}}}),U_=G(zt,gi,(e,t)=>{var n=typeof t.width=="number"?t.width:Ts;return{width:n,height:e.height}}),sP=(e,t,n)=>{switch(t){case"xAxis":return B_(e,n).width;case"yAxis":return U_(e,n).height;default:return}},W_=(e,t,n,r)=>{if(n!=null){var{allowDuplicatedCategory:i,type:a,dataKey:l}=n,u=zr(e,r),c=t.map(f=>f.value);if(l&&u&&a==="category"&&i&&$O(c))return c}},bx=G([He,Nd,gn,Ft],W_),q_=(e,t,n,r)=>{if(!(n==null||n.dataKey==null)){var{type:i,scale:a}=n,l=zr(e,r);if(l&&(i==="number"||a!=="auto"))return t.map(u=>u.value)}},wx=G([He,Nd,Bs,Ft],q_),uP=G([He,dV,Ko,Ad,bx,wx,qs,xx,Ft],(e,t,n,r,i,a,l,u,c)=>{if(t!=null){var f=zr(e,c);return{angle:t.angle,interval:t.interval,minTickGap:t.minTickGap,orientation:t.orientation,tick:t.tick,tickCount:t.tickCount,tickFormatter:t.tickFormatter,ticks:t.ticks,type:t.type,unit:t.unit,axisType:c,categoricalDomain:a,duplicateDomain:i,isCategorical:f,niceTicks:u,range:l,realScaleType:n,scale:r}}}),nK=(e,t,n,r,i,a,l,u,c)=>{if(!(t==null||r==null)){var f=zr(e,c),{type:d,ticks:p,tickCount:g}=t,y=n==="scaleBand"&&typeof r.bandwidth=="function"?r.bandwidth()/2:2,b=d==="category"&&r.bandwidth?r.bandwidth()/y:0;b=c==="angleAxis"&&a!=null&&a.length>=2?jn(a[0]-a[1])*2*b:b;var S=p||i;return S?S.map((w,P)=>{var C=l?l.indexOf(w):w,O=r.map(C);return De(O)?{index:P,coordinate:O+b,value:w,offset:b}:null}).filter(Pn):f&&u?u.map((w,P)=>{var C=r.map(w);return De(C)?{coordinate:C+b,value:w,index:P,offset:b}:null}).filter(Pn):r.ticks?r.ticks(g).map((w,P)=>{var C=r.map(w);return De(C)?{coordinate:C+b,value:w,index:P,offset:b}:null}).filter(Pn):r.domain().map((w,P)=>{var C=r.map(w);return De(C)?{coordinate:C+b,value:l?l[w]:w,index:P,offset:b}:null}).filter(Pn)}},H_=G([He,Bs,Ko,Ad,xx,qs,bx,wx,Ft],nK),rK=(e,t,n,r,i,a,l)=>{if(!(t==null||n==null||r==null||r[0]===r[1])){var u=zr(e,l),{tickCount:c}=t,f=0;return f=l==="angleAxis"&&(r==null?void 0:r.length)>=2?jn(r[0]-r[1])*2*f:f,u&&a?a.map((d,p)=>{var g=n.map(d);return De(g)?{coordinate:g+f,value:d,index:p,offset:f}:null}).filter(Pn):n.ticks?n.ticks(c).map((d,p)=>{var g=n.map(d);return De(g)?{coordinate:g+f,value:d,index:p,offset:f}:null}).filter(Pn):n.domain().map((d,p)=>{var g=n.map(d);return De(g)?{coordinate:g+f,value:i?i[d]:d,index:p,offset:f}:null}).filter(Pn)}},Xi=G([He,Bs,Ad,qs,bx,wx,Ft],rK),Qi=G(gn,Ad,(e,t)=>{if(!(e==null||t==null))return Sf(Sf({},e),{},{scale:t})}),iK=G([gn,Ko,vx,z_],yx);G((e,t,n)=>hx(e,n),iK,(e,t)=>{if(!(e==null||t==null))return Sf(Sf({},e),{},{scale:t})});var aK=G([He,rd,id],(e,t,n)=>{switch(e){case"horizontal":return t.some(r=>r.reversed)?"right-to-left":"left-to-right";case"vertical":return n.some(r=>r.reversed)?"bottom-to-top":"top-to-bottom";case"centric":case"radial":return"left-to-right";default:return}}),V_=e=>e.options.defaultTooltipEventType,K_=e=>e.options.validateTooltipEventTypes;function G_(e,t,n){if(e==null)return t;var r=e?"axis":"item";return n==null?t:n.includes(r)?r:t}function kx(e,t){var n=V_(e),r=K_(e);return G_(t,n,r)}function oK(e){return Pe(t=>kx(t,e))}var Y_=(e,t)=>{var n,r=Number(t);if(!(mr(r)||t==null))return r>=0?e==null||(n=e[r])===null||n===void 0?void 0:n.value:void 0},lK=e=>e.tooltip.settings,qi={active:!1,index:null,dataKey:void 0,graphicalItemId:void 0,coordinate:void 0},sK={itemInteraction:{click:qi,hover:qi},axisInteraction:{click:qi,hover:qi},keyboardInteraction:qi,syncInteraction:{active:!1,index:null,dataKey:void 0,label:void 0,coordinate:void 0,sourceViewBox:void 0,graphicalItemId:void 0},tooltipItemPayloads:[],settings:{shared:void 0,trigger:"hover",axisId:0,active:!1,defaultIndex:void 0}},X_=On({name:"tooltip",initialState:sK,reducers:{addTooltipEntrySettings:{reducer(e,t){e.tooltipItemPayloads.push(t.payload)},prepare:at()},replaceTooltipEntrySettings:{reducer(e,t){var{prev:n,next:r}=t.payload,i=pr(e).tooltipItemPayloads.indexOf(n);i>-1&&(e.tooltipItemPayloads[i]=r)},prepare:at()},removeTooltipEntrySettings:{reducer(e,t){var n=pr(e).tooltipItemPayloads.indexOf(t.payload);n>-1&&e.tooltipItemPayloads.splice(n,1)},prepare:at()},setTooltipSettingsState(e,t){e.settings=t.payload},setActiveMouseOverItemIndex(e,t){e.syncInteraction.active=!1,e.keyboardInteraction.active=!1,e.itemInteraction.hover.active=!0,e.itemInteraction.hover.index=t.payload.activeIndex,e.itemInteraction.hover.dataKey=t.payload.activeDataKey,e.itemInteraction.hover.graphicalItemId=t.payload.activeGraphicalItemId,e.itemInteraction.hover.coordinate=t.payload.activeCoordinate},mouseLeaveChart(e){e.itemInteraction.hover.active=!1,e.axisInteraction.hover.active=!1},mouseLeaveItem(e){e.itemInteraction.hover.active=!1},setActiveClickItemIndex(e,t){e.syncInteraction.active=!1,e.itemInteraction.click.active=!0,e.keyboardInteraction.active=!1,e.itemInteraction.click.index=t.payload.activeIndex,e.itemInteraction.click.dataKey=t.payload.activeDataKey,e.itemInteraction.click.graphicalItemId=t.payload.activeGraphicalItemId,e.itemInteraction.click.coordinate=t.payload.activeCoordinate},setMouseOverAxisIndex(e,t){e.syncInteraction.active=!1,e.axisInteraction.hover.active=!0,e.keyboardInteraction.active=!1,e.axisInteraction.hover.index=t.payload.activeIndex,e.axisInteraction.hover.dataKey=t.payload.activeDataKey,e.axisInteraction.hover.coordinate=t.payload.activeCoordinate},setMouseClickAxisIndex(e,t){e.syncInteraction.active=!1,e.keyboardInteraction.active=!1,e.axisInteraction.click.active=!0,e.axisInteraction.click.index=t.payload.activeIndex,e.axisInteraction.click.dataKey=t.payload.activeDataKey,e.axisInteraction.click.coordinate=t.payload.activeCoordinate},setSyncInteraction(e,t){e.syncInteraction=t.payload},setKeyboardInteraction(e,t){e.keyboardInteraction.active=t.payload.active,e.keyboardInteraction.index=t.payload.activeIndex,e.keyboardInteraction.coordinate=t.payload.activeCoordinate}}}),{addTooltipEntrySettings:uK,replaceTooltipEntrySettings:cK,removeTooltipEntrySettings:fK,setTooltipSettingsState:dK,setActiveMouseOverItemIndex:Q_,mouseLeaveItem:hK,mouseLeaveChart:Z_,setActiveClickItemIndex:pK,setMouseOverAxisIndex:J_,setMouseClickAxisIndex:mK,setSyncInteraction:Cv,setKeyboardInteraction:Ov}=X_.actions,gK=X_.reducer;function cP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function kc(e){for(var t=1;t{if(t==null)return qi;var i=bK(e,t,n);if(i==null)return qi;if(i.active)return i;if(e.keyboardInteraction.active)return e.keyboardInteraction;if(e.syncInteraction.active&&e.syncInteraction.index!=null)return e.syncInteraction;var a=e.settings.active===!0;if(wK(i)){if(a)return kc(kc({},i),{},{active:!0})}else if(r!=null)return{active:!0,coordinate:void 0,dataKey:void 0,index:r,graphicalItemId:void 0};return kc(kc({},qi),{},{coordinate:i.coordinate})};function kK(e){if(typeof e=="number")return Number.isFinite(e)?e:void 0;if(e instanceof Date){var t=e.valueOf();return Number.isFinite(t)?t:void 0}var n=Number(e);return Number.isFinite(n)?n:void 0}function SK(e,t){var n=kK(e),r=t[0],i=t[1];if(n===void 0)return!1;var a=Math.min(r,i),l=Math.max(r,i);return n>=a&&n<=l}function jK(e,t,n){if(n==null||t==null)return!0;var r=St(e,t);return r==null||!li(n)?!0:SK(r,n)}var Sx=(e,t,n,r)=>{var i=e==null?void 0:e.index;if(i==null)return null;var a=Number(i);if(!De(a))return i;var l=0,u=1/0;t.length>0&&(u=t.length-1);var c=Math.max(l,Math.min(a,u)),f=t[c];return f==null||jK(f,n,r)?String(c):null},tI=(e,t,n,r,i,a,l)=>{if(a!=null){var u=l[0],c=u==null?void 0:u.getPosition(a);if(c!=null)return c;var f=i==null?void 0:i[Number(a)];if(f)switch(n){case"horizontal":return{x:f.coordinate,y:(r.top+t)/2};default:return{x:(r.left+e)/2,y:f.coordinate}}}},nI=(e,t,n,r)=>{if(t==="axis")return e.tooltipItemPayloads;if(e.tooltipItemPayloads.length===0)return[];var i;if(n==="hover"?i=e.itemInteraction.hover.graphicalItemId:i=e.itemInteraction.click.graphicalItemId,i==null&&r!=null){var a=e.tooltipItemPayloads[0];return a!=null?[a]:[]}return e.tooltipItemPayloads.filter(l=>{var u;return((u=l.settings)===null||u===void 0?void 0:u.graphicalItemId)===i})},rI=e=>e.options.tooltipPayloadSearcher,Go=e=>e.tooltip;function fP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function dP(e){for(var t=1;t{if(!(t==null||a==null)){var{chartData:u,computedData:c,dataStartIndex:f,dataEndIndex:d}=n,p=[];return e.reduce((g,y)=>{var b,{dataDefinedOnItem:S,settings:w}=y,P=OK(S,u),C=Array.isArray(P)?_N(P,f,d):P,O=(b=w==null?void 0:w.dataKey)!==null&&b!==void 0?b:r,A=w==null?void 0:w.nameKey,I;if(r&&Array.isArray(C)&&!Array.isArray(C[0])&&l==="axis"?I=FO(C,r,i):I=a(C,t,c,A),Array.isArray(I))I.forEach(L=>{var F=dP(dP({},w),{},{name:L.name,unit:L.unit,color:void 0,fill:void 0});g.push(dS({tooltipEntrySettings:F,dataKey:L.dataKey,payload:L.payload,value:St(L.payload,L.dataKey),name:L.name}))});else{var E;g.push(dS({tooltipEntrySettings:w,dataKey:O,payload:I,value:St(I,O),name:(E=St(I,A))!==null&&E!==void 0?E:w==null?void 0:w.name}))}return g},p)}},jx=G([At,d_,lx],D_),NK=G([e=>e.graphicalItems.cartesianItems,e=>e.graphicalItems.polarItems],(e,t)=>[...e,...t]),AK=G([Bt,Ho],h_),Yo=G([NK,At,AK],p_,{memoizeOptions:{resultEqualityCheck:Cd}}),_K=G([Yo],e=>e.filter(Pd)),IK=G([Yo],v_,{memoizeOptions:{resultEqualityCheck:Cd}}),Xo=G([IK,pi],y_),TK=G([_K,pi,At],u_),Px=G([Xo,At,Yo],x_),aI=G([At],mx),DK=G([At],e=>e.allowDataOverflow),oI=G([aI,DK],WA),MK=G([Yo],e=>e.filter(Pd)),LK=G([TK,MK,xd,n_],w_),RK=G([LK,pi,Bt,oI],k_),zK=G([Yo],g_),$K=G([Xo,At,zK,gx,Bt],P_,{memoizeOptions:{resultEqualityCheck:Ed}}),FK=G([E_,Bt,Ho],Vo),BK=G([FK,Bt],N_),UK=G([C_,Bt,Ho],Vo),WK=G([UK,Bt],A_),qK=G([O_,Bt,Ho],Vo),HK=G([qK,Bt],__),VK=G([BK,HK,WK],Pf),KK=G([At,aI,oI,RK,$K,VK,He,Bt],I_),Hs=G([At,He,Xo,Px,xd,Bt,KK],T_),GK=G([Hs,At,jx],M_),YK=G([At,Hs,GK,Bt],L_),lI=e=>{var t=Bt(e),n=Ho(e),r=!1;return qs(e,t,n,r)},sI=G([At,lI],bd),uI=G([At,jx,YK,sI],yx),XK=G([He,Px,At,Bt],W_),QK=G([He,Px,At,Bt],q_),ZK=(e,t,n,r,i,a,l,u)=>{if(t){var{type:c}=t,f=zr(e,u);if(r){var d=n==="scaleBand"&&r.bandwidth?r.bandwidth()/2:2,p=c==="category"&&r.bandwidth?r.bandwidth()/d:0;return p=u==="angleAxis"&&i!=null&&(i==null?void 0:i.length)>=2?jn(i[0]-i[1])*2*p:p,f&&l?l.map((g,y)=>{var b=r.map(g);return De(b)?{coordinate:b+p,value:g,index:y,offset:p}:null}).filter(Pn):r.domain().map((g,y)=>{var b=r.map(g);return De(b)?{coordinate:b+p,value:a?a[g]:g,index:y,offset:p}:null}).filter(Pn)}}},vi=G([He,At,jx,uI,lI,XK,QK,Bt],ZK),Ex=G([V_,K_,lK],(e,t,n)=>G_(n.shared,e,t)),cI=e=>e.tooltip.settings.trigger,Cx=e=>e.tooltip.settings.defaultIndex,Vs=G([Go,Ex,cI,Cx],eI),Ma=G([Vs,Xo,Ws,Hs],Sx),fI=G([vi,Ma],Y_),dI=G([Vs],e=>{if(e)return e.dataKey});G([Vs],e=>{if(e)return e.graphicalItemId});var hI=G([Go,Ex,cI,Cx],nI),JK=G([fi,di,He,zt,vi,Cx,hI],tI),e7=G([Vs,JK],(e,t)=>e!=null&&e.coordinate?e.coordinate:t),t7=G([Vs],e=>{var t;return(t=e==null?void 0:e.active)!==null&&t!==void 0?t:!1}),n7=G([hI,Ma,pi,Ws,fI,rI,Ex],iI),r7=G([n7],e=>{if(e!=null){var t=e.map(n=>n.payload).filter(n=>n!=null);return Array.from(new Set(t))}});function hP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function pP(e){for(var t=1;tPe(At),s7=()=>{var e=l7(),t=Pe(vi),n=Pe(uI);return Do(!e||!n?void 0:pP(pP({},e),{},{scale:n}),t)};function mP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function yo(e){for(var t=1;t{var i=t.find(a=>a&&a.index===n);if(i){if(e==="horizontal")return{x:i.coordinate,y:r.chartY};if(e==="vertical")return{x:r.chartX,y:i.coordinate}}return{x:0,y:0}},h7=(e,t,n,r)=>{var i=t.find(f=>f&&f.index===n);if(i){if(e==="centric"){var a=i.coordinate,{radius:l}=r;return yo(yo(yo({},r),Xt(r.cx,r.cy,l,a)),{},{angle:a,radius:l})}var u=i.coordinate,{angle:c}=r;return yo(yo(yo({},r),Xt(r.cx,r.cy,u,c)),{},{angle:c,radius:u})}return{angle:0,clockWise:!1,cx:0,cy:0,endAngle:0,innerRadius:0,outerRadius:0,radius:0,startAngle:0,x:0,y:0}};function p7(e,t){var{chartX:n,chartY:r}=e;return n>=t.left&&n<=t.left+t.width&&r>=t.top&&r<=t.top+t.height}var pI=(e,t,n,r,i)=>{var a,l=(a=t==null?void 0:t.length)!==null&&a!==void 0?a:0;if(l<=1||e==null)return 0;if(r==="angleAxis"&&i!=null&&Math.abs(Math.abs(i[1]-i[0])-360)<=1e-6)for(var u=0;u0?(c=n[u-1])===null||c===void 0?void 0:c.coordinate:(f=n[l-1])===null||f===void 0?void 0:f.coordinate,b=(d=n[u])===null||d===void 0?void 0:d.coordinate,S=u>=l-1?(p=n[0])===null||p===void 0?void 0:p.coordinate:(g=n[u+1])===null||g===void 0?void 0:g.coordinate,w=void 0;if(!(y==null||b==null||S==null))if(jn(b-y)!==jn(S-b)){var P=[];if(jn(S-b)===jn(i[1]-i[0])){w=S;var C=b+i[1]-i[0];P[0]=Math.min(C,(C+y)/2),P[1]=Math.max(C,(C+y)/2)}else{w=y;var O=S+i[1]-i[0];P[0]=Math.min(b,(O+b)/2),P[1]=Math.max(b,(O+b)/2)}var A=[Math.min(b,(w+b)/2),Math.max(b,(w+b)/2)];if(e>A[0]&&e<=A[1]||e>=P[0]&&e<=P[1]){var I;return(I=n[u])===null||I===void 0?void 0:I.index}}else{var E=Math.min(y,S),L=Math.max(y,S);if(e>(E+b)/2&&e<=(L+b)/2){var F;return(F=n[u])===null||F===void 0?void 0:F.index}}}else if(t)for(var H=0;H(R.coordinate+D.coordinate)/2||H>0&&H(R.coordinate+D.coordinate)/2&&e<=(R.coordinate+W.coordinate)/2)return R.index}}return-1},mI=()=>Pe(lx),Ox=(e,t)=>t,gI=(e,t,n)=>n,Nx=(e,t,n,r)=>r,m7=G(vi,e=>Vf(e,t=>t.coordinate)),Ax=G([Go,Ox,gI,Nx],eI),_x=G([Ax,Xo,Ws,Hs],Sx),g7=(e,t,n)=>{if(t!=null){var r=Go(e);return t==="axis"?n==="hover"?r.axisInteraction.hover.dataKey:r.axisInteraction.click.dataKey:n==="hover"?r.itemInteraction.hover.dataKey:r.itemInteraction.click.dataKey}},vI=G([Go,Ox,gI,Nx],nI),Ef=G([fi,di,He,zt,vi,Nx,vI],tI),v7=G([Ax,Ef],(e,t)=>{var n;return(n=e.coordinate)!==null&&n!==void 0?n:t}),yI=G([vi,_x],Y_),y7=G([vI,_x,pi,Ws,yI,rI,Ox],iI),x7=G([Ax,_x],(e,t)=>({isActive:e.active&&t!=null,activeIndex:t})),b7=(e,t,n,r,i,a,l)=>{if(!(!e||!n||!r||!i)&&p7(e,l)){var u=QU(e,t),c=pI(u,a,i,n,r),f=d7(t,i,c,e);return{activeIndex:String(c),activeCoordinate:f}}},w7=(e,t,n,r,i,a,l)=>{if(!(!e||!r||!i||!a||!n)){var u=a9(e,n);if(u){var c=ZU(u,t),f=pI(c,l,a,r,i),d=h7(t,a,f,u);return{activeIndex:String(f),activeCoordinate:d}}}},k7=(e,t,n,r,i,a,l,u)=>{if(!(!e||!t||!r||!i||!a))return t==="horizontal"||t==="vertical"?b7(e,t,r,i,a,l,u):w7(e,t,n,r,i,a,l)},S7=G(e=>e.zIndex.zIndexMap,(e,t)=>t,(e,t,n)=>n,(e,t,n)=>{if(t!=null){var r=e[t];if(r!=null)return n?r.panoramaElement:r.element}}),j7=G(e=>e.zIndex.zIndexMap,e=>{var t=Object.keys(e).map(r=>parseInt(r,10)).concat(Object.values(Rt)),n=Array.from(new Set(t));return n.sort((r,i)=>r-i)},{memoizeOptions:{resultEqualityCheck:aV}});function gP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function vP(e){for(var t=1;tvP(vP({},e),{},{[t]:{element:void 0,panoramaElement:void 0,consumers:0}}),O7)},A7=new Set(Object.values(Rt));function _7(e){return A7.has(e)}var xI=On({name:"zIndex",initialState:N7,reducers:{registerZIndexPortal:{reducer:(e,t)=>{var{zIndex:n}=t.payload;e.zIndexMap[n]?e.zIndexMap[n].consumers+=1:e.zIndexMap[n]={consumers:1,element:void 0,panoramaElement:void 0}},prepare:at()},unregisterZIndexPortal:{reducer:(e,t)=>{var{zIndex:n}=t.payload;e.zIndexMap[n]&&(e.zIndexMap[n].consumers-=1,e.zIndexMap[n].consumers<=0&&!_7(n)&&delete e.zIndexMap[n])},prepare:at()},registerZIndexPortalElement:{reducer:(e,t)=>{var{zIndex:n,element:r,isPanorama:i}=t.payload;e.zIndexMap[n]?i?e.zIndexMap[n].panoramaElement=r:e.zIndexMap[n].element=r:e.zIndexMap[n]={consumers:0,element:i?void 0:r,panoramaElement:i?r:void 0}},prepare:at()},unregisterZIndexPortalElement:{reducer:(e,t)=>{var{zIndex:n}=t.payload;e.zIndexMap[n]&&(t.payload.isPanorama?e.zIndexMap[n].panoramaElement=void 0:e.zIndexMap[n].element=void 0)},prepare:at()}}}),{registerZIndexPortal:I7,unregisterZIndexPortal:T7,registerZIndexPortalElement:D7,unregisterZIndexPortalElement:M7}=xI.actions,L7=xI.reducer;function nr(e){var{zIndex:t,children:n}=e,r=A8(),i=r&&t!==void 0&&t!==0,a=on(),l=yt();k.useLayoutEffect(()=>i?(l(I7({zIndex:t})),()=>{l(T7({zIndex:t}))}):$a,[l,t,i]);var u=Pe(c=>S7(c,t,a));return i?u?wO.createPortal(n,u):null:n}function Nv(){return Nv=Object.assign?Object.assign.bind():function(e){for(var t=1;tk.useContext(bI),cg={exports:{}},xP;function q7(){return xP||(xP=1,(function(e){var t=Object.prototype.hasOwnProperty,n="~";function r(){}Object.create&&(r.prototype=Object.create(null),new r().__proto__||(n=!1));function i(c,f,d){this.fn=c,this.context=f,this.once=d||!1}function a(c,f,d,p,g){if(typeof d!="function")throw new TypeError("The listener must be a function");var y=new i(d,p||c,g),b=n?n+f:f;return c._events[b]?c._events[b].fn?c._events[b]=[c._events[b],y]:c._events[b].push(y):(c._events[b]=y,c._eventsCount++),c}function l(c,f){--c._eventsCount===0?c._events=new r:delete c._events[f]}function u(){this._events=new r,this._eventsCount=0}u.prototype.eventNames=function(){var f=[],d,p;if(this._eventsCount===0)return f;for(p in d=this._events)t.call(d,p)&&f.push(n?p.slice(1):p);return Object.getOwnPropertySymbols?f.concat(Object.getOwnPropertySymbols(d)):f},u.prototype.listeners=function(f){var d=n?n+f:f,p=this._events[d];if(!p)return[];if(p.fn)return[p.fn];for(var g=0,y=p.length,b=new Array(y);g{if(t&&Array.isArray(e)){var n=Number.parseInt(t,10);if(!mr(n))return e[n]}},K7={chartName:"",tooltipPayloadSearcher:()=>{},eventEmitter:void 0,defaultTooltipEventType:"axis"},kI=On({name:"options",initialState:K7,reducers:{createEventEmitter:e=>{e.eventEmitter==null&&(e.eventEmitter=Symbol("rechartsEventEmitter"))}}}),G7=kI.reducer,{createEventEmitter:Y7}=kI.actions;function X7(e){return e.tooltip.syncInteraction}var Q7={chartData:void 0,computedData:void 0,dataStartIndex:0,dataEndIndex:0},SI=On({name:"chartData",initialState:Q7,reducers:{setChartData(e,t){if(e.chartData=t.payload,t.payload==null){e.dataStartIndex=0,e.dataEndIndex=0;return}t.payload.length>0&&e.dataEndIndex!==t.payload.length-1&&(e.dataEndIndex=t.payload.length-1)},setComputedData(e,t){e.computedData=t.payload},setDataStartEndIndexes(e,t){var{startIndex:n,endIndex:r}=t.payload;n!=null&&(e.dataStartIndex=n),r!=null&&(e.dataEndIndex=r)}}}),{setChartData:wP,setDataStartEndIndexes:Z7,setComputedData:Ete}=SI.actions,J7=SI.reducer,eG=["x","y"];function kP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function xo(e){for(var t=1;tc.rootProps.className);k.useEffect(()=>{if(e==null)return $a;var c=(f,d,p)=>{if(t!==p&&e===f){if(r==="index"){var g;if(l&&d!==null&&d!==void 0&&(g=d.payload)!==null&&g!==void 0&&g.coordinate&&d.payload.sourceViewBox){var y=d.payload.coordinate,{x:b,y:S}=y,w=iG(y,eG),{x:P,y:C,width:O,height:A}=d.payload.sourceViewBox,I=xo(xo({},w),{},{x:l.x+(O?(b-P)/O:0)*l.width,y:l.y+(A?(S-C)/A:0)*l.height});n(xo(xo({},d),{},{payload:xo(xo({},d.payload),{},{coordinate:I})}))}else n(d);return}if(i!=null){var E;if(typeof r=="function"){var L={activeTooltipIndex:d.payload.index==null?void 0:Number(d.payload.index),isTooltipActive:d.payload.active,activeIndex:d.payload.index==null?void 0:Number(d.payload.index),activeLabel:d.payload.label,activeDataKey:d.payload.dataKey,activeCoordinate:d.payload.coordinate},F=r(i,L);E=i[F]}else r==="value"&&(E=i.find(he=>String(he.value)===d.payload.label));var{coordinate:H}=d.payload;if(E==null||d.payload.active===!1||H==null||l==null){n(Cv({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:void 0,graphicalItemId:void 0}));return}var{x:R,y:W}=H,D=Math.min(R,l.x+l.width),Z=Math.min(W,l.y+l.height),Y={x:a==="horizontal"?E.coordinate:D,y:a==="horizontal"?Z:E.coordinate},Q=Cv({active:d.payload.active,coordinate:Y,dataKey:d.payload.dataKey,index:String(E.index),label:d.payload.label,sourceViewBox:d.payload.sourceViewBox,graphicalItemId:d.payload.graphicalItemId});n(Q)}}};return Ss.on(Av,c),()=>{Ss.off(Av,c)}},[u,n,t,e,r,i,a,l])}function lG(){var e=Pe(sx),t=Pe(ux),n=yt();k.useEffect(()=>{if(e==null)return $a;var r=(i,a,l)=>{t!==l&&e===i&&n(Z7(a))};return Ss.on(bP,r),()=>{Ss.off(bP,r)}},[n,t,e])}function sG(){var e=yt();k.useEffect(()=>{e(Y7())},[e]),oG(),lG()}function uG(e,t,n,r,i,a){var l=Pe(y=>g7(y,e,t)),u=Pe(ux),c=Pe(sx),f=Pe(r_),d=Pe(X7),p=d==null?void 0:d.active,g=ld();k.useEffect(()=>{if(!p&&c!=null&&u!=null){var y=Cv({active:a,coordinate:n,dataKey:l,index:i,label:typeof r=="number"?String(r):r,sourceViewBox:g,graphicalItemId:void 0});Ss.emit(Av,c,y,u)}},[p,n,l,i,r,u,c,f,a,g])}function SP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function jP(e){for(var t=1;t{L(dK({shared:C,trigger:O,axisId:E,active:i,defaultIndex:F}))},[L,C,O,E,i,F]);var H=ld(),R=QN(),W=oK(C),{activeIndex:D,isActive:Z}=(t=Pe(Se=>x7(Se,W,O,F)))!==null&&t!==void 0?t:{},Y=Pe(Se=>y7(Se,W,O,F)),Q=Pe(Se=>yI(Se,W,O,F)),he=Pe(Se=>v7(Se,W,O,F)),de=Y,J=W7(),ae=(n=i??Z)!==null&&n!==void 0?n:!1,[T,$]=R6([de,ae]),U=W==="axis"?Q:void 0;uG(W,O,he,U,D,ae);var _=I??J;if(_==null||H==null||W==null)return null;var te=de??PP;ae||(te=PP),f&&te.length&&(te=u6(te.filter(Se=>Se.value!=null&&(Se.hide!==!0||r.includeHidden)),g,hG));var fe=te.length>0,ce=k.createElement(iW,{allowEscapeViewBox:a,animationDuration:l,animationEasing:u,isAnimationActive:d,active:ae,coordinate:he,hasPayload:fe,offset:p,position:y,reverseDirection:b,useTranslate3d:S,viewBox:H,wrapperStyle:w,lastBoundingBox:T,innerRef:$,hasPortalFromProps:!!I},pG(c,jP(jP({},r),{},{payload:te,label:U,active:ae,activeIndex:D,coordinate:he,accessibilityLayer:R})));return k.createElement(k.Fragment,null,wO.createPortal(ce,_),ae&&k.createElement(U7,{cursor:P,tooltipEventType:W,coordinate:he,payload:te,index:D}))}var PI=e=>null;PI.displayName="Cell";function gG(e,t,n){return(t=vG(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function vG(e){var t=yG(e,"string");return typeof t=="symbol"?t:t+""}function yG(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}class xG{constructor(t){gG(this,"cache",new Map),this.maxSize=t}get(t){var n=this.cache.get(t);return n!==void 0&&(this.cache.delete(t),this.cache.set(t,n)),n}set(t,n){if(this.cache.has(t))this.cache.delete(t);else if(this.cache.size>=this.maxSize){var r=this.cache.keys().next().value;r!=null&&this.cache.delete(r)}this.cache.set(t,n)}clear(){this.cache.clear()}size(){return this.cache.size}}function EP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function bG(e){for(var t=1;t{try{var n=document.getElementById(OP);n||(n=document.createElement("span"),n.setAttribute("id",OP),n.setAttribute("aria-hidden","true"),document.body.appendChild(n)),Object.assign(n.style,PG,t),n.textContent="".concat(e);var r=n.getBoundingClientRect();return{width:r.width,height:r.height}}catch{return{width:0,height:0}}},os=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(t==null||Ls.isSsr)return{width:0,height:0};if(!EI.enableCache)return NP(t,n);var r=EG(t,n),i=CP.get(r);if(i)return i;var a=NP(t,n);return CP.set(r,a),a},CI;function CG(e,t,n){return(t=OG(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function OG(e){var t=NG(e,"string");return typeof t=="symbol"?t:t+""}function NG(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var AP=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([*/])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,_P=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([+-])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,AG=/^px|cm|vh|vw|em|rem|%|mm|in|pt|pc|ex|ch|vmin|vmax|Q$/,_G=/(-?\d+(?:\.\d+)?)([a-zA-Z%]+)?/,IG={cm:96/2.54,mm:96/25.4,pt:96/72,pc:96/6,in:96,Q:96/(2.54*40),px:1},TG=["cm","mm","pt","pc","in","Q","px"];function DG(e){return TG.includes(e)}var So="NaN";function MG(e,t){return e*IG[t]}class Gt{static parse(t){var n,[,r,i]=(n=_G.exec(t))!==null&&n!==void 0?n:[];return r==null?Gt.NaN:new Gt(parseFloat(r),i??"")}constructor(t,n){this.num=t,this.unit=n,this.num=t,this.unit=n,mr(t)&&(this.unit=""),n!==""&&!AG.test(n)&&(this.num=NaN,this.unit=""),DG(n)&&(this.num=MG(t,n),this.unit="px")}add(t){return this.unit!==t.unit?new Gt(NaN,""):new Gt(this.num+t.num,this.unit)}subtract(t){return this.unit!==t.unit?new Gt(NaN,""):new Gt(this.num-t.num,this.unit)}multiply(t){return this.unit!==""&&t.unit!==""&&this.unit!==t.unit?new Gt(NaN,""):new Gt(this.num*t.num,this.unit||t.unit)}divide(t){return this.unit!==""&&t.unit!==""&&this.unit!==t.unit?new Gt(NaN,""):new Gt(this.num/t.num,this.unit||t.unit)}toString(){return"".concat(this.num).concat(this.unit)}isNaN(){return mr(this.num)}}CI=Gt;CG(Gt,"NaN",new CI(NaN,""));function OI(e){if(e==null||e.includes(So))return So;for(var t=e;t.includes("*")||t.includes("/");){var n,[,r,i,a]=(n=AP.exec(t))!==null&&n!==void 0?n:[],l=Gt.parse(r??""),u=Gt.parse(a??""),c=i==="*"?l.multiply(u):l.divide(u);if(c.isNaN())return So;t=t.replace(AP,c.toString())}for(;t.includes("+")||/.-\d+(?:\.\d+)?/.test(t);){var f,[,d,p,g]=(f=_P.exec(t))!==null&&f!==void 0?f:[],y=Gt.parse(d??""),b=Gt.parse(g??""),S=p==="+"?y.add(b):y.subtract(b);if(S.isNaN())return So;t=t.replace(_P,S.toString())}return t}var IP=/\(([^()]*)\)/;function LG(e){for(var t=e,n;(n=IP.exec(t))!=null;){var[,r]=n;t=t.replace(IP,OI(r))}return t}function RG(e){var t=e.replace(/\s+/g,"");return t=LG(t),t=OI(t),t}function zG(e){try{return RG(e)}catch{return So}}function fg(e){var t=zG(e.slice(5,-1));return t===So?"":t}var $G=["x","y","lineHeight","capHeight","fill","scaleToFit","textAnchor","verticalAnchor"],FG=["dx","dy","angle","className","breakAll"];function _v(){return _v=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{children:t,breakAll:n,style:r}=e;try{var i=[];mt(t)||(n?i=t.toString().split(""):i=t.toString().split(NI));var a=i.map(u=>({word:u,width:os(u,r).width})),l=n?0:os(" ",r).width;return{wordsWithComputedWidth:a,spaceWidth:l}}catch{return null}};function UG(e){return e==="start"||e==="middle"||e==="end"||e==="inherit"}var _I=(e,t,n,r)=>e.reduce((i,a)=>{var{word:l,width:u}=a,c=i[i.length-1];if(c&&u!=null&&(t==null||r||c.width+u+ne.reduce((t,n)=>t.width>n.width?t:n),WG="…",DP=(e,t,n,r,i,a,l,u)=>{var c=e.slice(0,t),f=AI({breakAll:n,style:r,children:c+WG});if(!f)return[!1,[]];var d=_I(f.wordsWithComputedWidth,a,l,u),p=d.length>i||II(d).width>Number(a);return[p,d]},qG=(e,t,n,r,i)=>{var{maxLines:a,children:l,style:u,breakAll:c}=e,f=ge(a),d=String(l),p=_I(t,r,n,i);if(!f||i)return p;var g=p.length>a||II(p).width>Number(r);if(!g)return p;for(var y=0,b=d.length-1,S=0,w;y<=b&&S<=d.length-1;){var P=Math.floor((y+b)/2),C=P-1,[O,A]=DP(d,C,c,u,a,r,n,i),[I]=DP(d,P,c,u,a,r,n,i);if(!O&&!I&&(y=P+1),O&&I&&(b=P-1),!O&&I){w=A;break}S++}return w||p},MP=e=>{var t=mt(e)?[]:e.toString().split(NI);return[{words:t,width:void 0}]},HG=e=>{var{width:t,scaleToFit:n,children:r,style:i,breakAll:a,maxLines:l}=e;if((t||n)&&!Ls.isSsr){var u,c,f=AI({breakAll:a,children:r,style:i});if(f){var{wordsWithComputedWidth:d,spaceWidth:p}=f;u=d,c=p}else return MP(r);return qG({breakAll:a,children:r,maxLines:l,style:i},u,c,t,!!n)}return MP(r)},TI="#808080",VG={angle:0,breakAll:!1,capHeight:"0.71em",fill:TI,lineHeight:"1em",scaleToFit:!1,textAnchor:"start",verticalAnchor:"end",x:0,y:0},Ix=k.forwardRef((e,t)=>{var n=mn(e,VG),{x:r,y:i,lineHeight:a,capHeight:l,fill:u,scaleToFit:c,textAnchor:f,verticalAnchor:d}=n,p=TP(n,$G),g=k.useMemo(()=>HG({breakAll:p.breakAll,children:p.children,maxLines:p.maxLines,scaleToFit:c,style:p.style,width:p.width}),[p.breakAll,p.children,p.maxLines,c,p.style,p.width]),{dx:y,dy:b,angle:S,className:w,breakAll:P}=p,C=TP(p,FG);if(!Dr(r)||!Dr(i)||g.length===0)return null;var O=Number(r)+(ge(y)?y:0),A=Number(i)+(ge(b)?b:0);if(!De(O)||!De(A))return null;var I;switch(d){case"start":I=fg("calc(".concat(l,")"));break;case"middle":I=fg("calc(".concat((g.length-1)/2," * -").concat(a," + (").concat(l," / 2))"));break;default:I=fg("calc(".concat(g.length-1," * -").concat(a,")"));break}var E=[],L=g[0];if(c&&L!=null){var F=L.width,{width:H}=p;E.push("scale(".concat(ge(H)&&ge(F)?H/F:1,")"))}return S&&E.push("rotate(".concat(S,", ").concat(O,", ").concat(A,")")),E.length&&(C.transform=E.join(" ")),k.createElement("text",_v({},dn(C),{ref:t,x:O,y:A,className:Ge("recharts-text",w),textAnchor:f,fill:u.includes("url")?TI:u}),g.map((R,W)=>{var D=R.words.join(P?"":" ");return k.createElement("tspan",{x:O,dy:W===0?I:a,key:"".concat(D,"-").concat(W)},D)}))});Ix.displayName="Text";function LP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Or(e){for(var t=1;t{var{viewBox:t,position:n,offset:r=0,parentViewBox:i}=e,{x:a,y:l,height:u,upperWidth:c,lowerWidth:f}=Iy(t),d=a,p=a+(c-f)/2,g=(d+p)/2,y=(c+f)/2,b=d+c/2,S=u>=0?1:-1,w=S*r,P=S>0?"end":"start",C=S>0?"start":"end",O=c>=0?1:-1,A=O*r,I=O>0?"end":"start",E=O>0?"start":"end",L=i;if(n==="top"){var F={x:d+c/2,y:l-w,horizontalAnchor:"middle",verticalAnchor:P};return L&&(F.height=Math.max(l-L.y,0),F.width=c),F}if(n==="bottom"){var H={x:p+f/2,y:l+u+w,horizontalAnchor:"middle",verticalAnchor:C};return L&&(H.height=Math.max(L.y+L.height-(l+u),0),H.width=f),H}if(n==="left"){var R={x:g-A,y:l+u/2,horizontalAnchor:I,verticalAnchor:"middle"};return L&&(R.width=Math.max(R.x-L.x,0),R.height=u),R}if(n==="right"){var W={x:g+y+A,y:l+u/2,horizontalAnchor:E,verticalAnchor:"middle"};return L&&(W.width=Math.max(L.x+L.width-W.x,0),W.height=u),W}var D=L?{width:y,height:u}:{};return n==="insideLeft"?Or({x:g+A,y:l+u/2,horizontalAnchor:E,verticalAnchor:"middle"},D):n==="insideRight"?Or({x:g+y-A,y:l+u/2,horizontalAnchor:I,verticalAnchor:"middle"},D):n==="insideTop"?Or({x:d+c/2,y:l+w,horizontalAnchor:"middle",verticalAnchor:C},D):n==="insideBottom"?Or({x:p+f/2,y:l+u-w,horizontalAnchor:"middle",verticalAnchor:P},D):n==="insideTopLeft"?Or({x:d+A,y:l+w,horizontalAnchor:E,verticalAnchor:C},D):n==="insideTopRight"?Or({x:d+c-A,y:l+w,horizontalAnchor:I,verticalAnchor:C},D):n==="insideBottomLeft"?Or({x:p+A,y:l+u-w,horizontalAnchor:E,verticalAnchor:P},D):n==="insideBottomRight"?Or({x:p+f-A,y:l+u-w,horizontalAnchor:I,verticalAnchor:P},D):n&&typeof n=="object"&&(ge(n.x)||Aa(n.x))&&(ge(n.y)||Aa(n.y))?Or({x:a+gr(n.x,y),y:l+gr(n.y,u),horizontalAnchor:"end",verticalAnchor:"end"},D):Or({x:b,y:l+u/2,horizontalAnchor:"middle",verticalAnchor:"middle"},D)},QG=["labelRef"],ZG=["content"];function RP(e,t){if(e==null)return{};var n,r,i=JG(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{var{x:t,y:n,upperWidth:r,lowerWidth:i,width:a,height:l,children:u}=e,c=k.useMemo(()=>({x:t,y:n,upperWidth:r,lowerWidth:i,width:a,height:l}),[t,n,r,i,a,l]);return k.createElement(DI.Provider,{value:c},u)},MI=()=>{var e=k.useContext(DI),t=ld();return e||(t?Iy(t):void 0)},iY=k.createContext(null),aY=()=>{var e=k.useContext(iY),t=Pe(s_);return e||t},oY=e=>{var{value:t,formatter:n}=e,r=mt(e.children)?t:e.children;return typeof n=="function"?n(r):r},Tx=e=>e!=null&&typeof e=="function",lY=(e,t)=>{var n=jn(t-e),r=Math.min(Math.abs(t-e),360);return n*r},sY=(e,t,n,r,i)=>{var{offset:a,className:l}=e,{cx:u,cy:c,innerRadius:f,outerRadius:d,startAngle:p,endAngle:g,clockWise:y}=i,b=(f+d)/2,S=lY(p,g),w=S>=0?1:-1,P,C;switch(t){case"insideStart":P=p+w*a,C=y;break;case"insideEnd":P=g-w*a,C=!y;break;case"end":P=g+w*a,C=y;break;default:throw new Error("Unsupported position ".concat(t))}C=S<=0?C:!C;var O=Xt(u,c,b,P),A=Xt(u,c,b,P+(C?1:-1)*359),I="M".concat(O.x,",").concat(O.y,` - A`).concat(b,",").concat(b,",0,1,").concat(C?0:1,`, - `).concat(A.x,",").concat(A.y),E=mt(e.id)?cs("recharts-radial-line-"):e.id;return k.createElement("text",Zr({},r,{dominantBaseline:"central",className:Ge("recharts-radial-bar-label",l)}),k.createElement("defs",null,k.createElement("path",{id:E,d:I})),k.createElement("textPath",{xlinkHref:"#".concat(E)},n))},uY=(e,t,n)=>{var{cx:r,cy:i,innerRadius:a,outerRadius:l,startAngle:u,endAngle:c}=e,f=(u+c)/2;if(n==="outside"){var{x:d,y:p}=Xt(r,i,l+t,f);return{x:d,y:p,textAnchor:d>=r?"start":"end",verticalAnchor:"middle"}}if(n==="center")return{x:r,y:i,textAnchor:"middle",verticalAnchor:"middle"};if(n==="centerTop")return{x:r,y:i,textAnchor:"middle",verticalAnchor:"start"};if(n==="centerBottom")return{x:r,y:i,textAnchor:"middle",verticalAnchor:"end"};var g=(a+l)/2,{x:y,y:b}=Xt(r,i,g,f);return{x:y,y:b,textAnchor:"middle",verticalAnchor:"middle"}},Tc=e=>e!=null&&"cx"in e&&ge(e.cx),cY={angle:0,offset:5,zIndex:Rt.label,position:"middle",textBreakAll:!1};function fY(e){if(!Tc(e))return e;var{cx:t,cy:n,outerRadius:r}=e,i=r*2;return{x:t-r,y:n-r,width:i,upperWidth:i,lowerWidth:i,height:i}}function Wi(e){var t=mn(e,cY),{viewBox:n,parentViewBox:r,position:i,value:a,children:l,content:u,className:c="",textBreakAll:f,labelRef:d}=t,p=aY(),g=MI(),y=i==="center"?g:p??g,b,S,w;n==null?b=y:Tc(n)?b=n:b=Iy(n);var P=fY(b);if(!b||mt(a)&&mt(l)&&!k.isValidElement(u)&&typeof u!="function")return null;var C=es(es({},t),{},{viewBox:b});if(k.isValidElement(u)){var{labelRef:O}=C,A=RP(C,QG);return k.cloneElement(u,A)}if(typeof u=="function"){var{content:I}=C,E=RP(C,ZG);if(S=k.createElement(u,E),k.isValidElement(S))return S}else S=oY(t);var L=dn(t);if(Tc(b)){if(i==="insideStart"||i==="insideEnd"||i==="end")return sY(t,i,S,L,b);w=uY(b,t.offset,t.position)}else{if(!P)return null;var F=XG({viewBox:P,position:i,offset:t.offset,parentViewBox:Tc(r)?void 0:r});w=es(es({x:F.x,y:F.y,textAnchor:F.horizontalAnchor,verticalAnchor:F.verticalAnchor},F.width!==void 0?{width:F.width}:{}),F.height!==void 0?{height:F.height}:{})}return k.createElement(nr,{zIndex:t.zIndex},k.createElement(Ix,Zr({ref:d,className:Ge("recharts-label",c)},L,w,{textAnchor:UG(L.textAnchor)?L.textAnchor:w.textAnchor,breakAll:f}),S))}Wi.displayName="Label";var dY=(e,t,n)=>{if(!e)return null;var r={viewBox:t,labelRef:n};return e===!0?k.createElement(Wi,Zr({key:"label-implicit"},r)):Dr(e)?k.createElement(Wi,Zr({key:"label-implicit",value:e},r)):k.isValidElement(e)?e.type===Wi?k.cloneElement(e,es({key:"label-implicit"},r)):k.createElement(Wi,Zr({key:"label-implicit",content:e},r)):Tx(e)?k.createElement(Wi,Zr({key:"label-implicit",content:e},r)):e&&typeof e=="object"?k.createElement(Wi,Zr({},e,{key:"label-implicit"},r)):null};function hY(e){var{label:t,labelRef:n}=e,r=MI();return dY(t,r,n)||null}var dg={},hg={},$P;function pY(){return $P||($P=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n[n.length-1]}e.last=t})(hg)),hg}var pg={},FP;function mY(){return FP||(FP=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return Array.isArray(n)?n:Array.from(n)}e.toArray=t})(pg)),pg}var BP;function gY(){return BP||(BP=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=pY(),n=mY(),r=wy();function i(a){if(r.isArrayLike(a))return t.last(n.toArray(a))}e.last=i})(dg)),dg}var mg,UP;function vY(){return UP||(UP=1,mg=gY().last),mg}var yY=vY();const xY=yr(yY);var bY=["valueAccessor"],wY=["dataKey","clockWise","id","textBreakAll","zIndex"];function Cf(){return Cf=Object.assign?Object.assign.bind():function(e){for(var t=1;tArray.isArray(e.value)?xY(e.value):e.value,LI=k.createContext(void 0),RI=LI.Provider,zI=k.createContext(void 0);zI.Provider;function jY(){return k.useContext(LI)}function PY(){return k.useContext(zI)}function Dc(e){var{valueAccessor:t=SY}=e,n=WP(e,bY),{dataKey:r,clockWise:i,id:a,textBreakAll:l,zIndex:u}=n,c=WP(n,wY),f=jY(),d=PY(),p=f||d;return!p||!p.length?null:k.createElement(nr,{zIndex:u??Rt.label},k.createElement(hn,{className:"recharts-label-list"},p.map((g,y)=>{var b,S=mt(r)?t(g,y):St(g.payload,r),w=mt(a)?{}:{id:"".concat(a,"-").concat(y)};return k.createElement(Wi,Cf({key:"label-".concat(y)},dn(g),c,w,{fill:(b=n.fill)!==null&&b!==void 0?b:g.fill,parentViewBox:g.parentViewBox,value:S,textBreakAll:l,viewBox:g.viewBox,index:y,zIndex:0}))})))}Dc.displayName="LabelList";function $I(e){var{label:t}=e;return t?t===!0?k.createElement(Dc,{key:"labelList-implicit"}):k.isValidElement(t)||Tx(t)?k.createElement(Dc,{key:"labelList-implicit",content:t}):typeof t=="object"?k.createElement(Dc,Cf({key:"labelList-implicit"},t,{type:String(t.type)})):null:null}function Iv(){return Iv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{cx:t,cy:n,r,className:i}=e,a=Ge("recharts-dot",i);return ge(t)&&ge(n)&&ge(r)?k.createElement("circle",Iv({},Zn(e),xy(e),{className:a,cx:t,cy:n,r})):null},EY={radiusAxis:{},angleAxis:{}},BI=On({name:"polarAxis",initialState:EY,reducers:{addRadiusAxis(e,t){e.radiusAxis[t.payload.id]=t.payload},removeRadiusAxis(e,t){delete e.radiusAxis[t.payload.id]},addAngleAxis(e,t){e.angleAxis[t.payload.id]=t.payload},removeAngleAxis(e,t){delete e.angleAxis[t.payload.id]}}}),{addRadiusAxis:Cte,removeRadiusAxis:Ote,addAngleAxis:Nte,removeAngleAxis:Ate}=BI.actions,CY=BI.reducer;function OY(e){return e&&typeof e=="object"&&"className"in e&&typeof e.className=="string"?e.className:""}var gg={exports:{}},qe={};/** + A`,",",",0,0,",",",",","Z"])),L.x,L.y,a,a,+(d<0),E.x,E.y,r,r,+(H>180),+(d>0),O.x,O.y,a,a,+(d<0),A.x,A.y)}else C+=pt(hj||(hj=wa(["L",",","Z"])),t,n);return C},v9={cx:0,cy:0,innerRadius:0,outerRadius:0,startAngle:0,endAngle:0,cornerRadius:0,forceCornerRadius:!1,cornerIsExternal:!1},cA=e=>{var t=mn(e,v9),{cx:n,cy:r,innerRadius:i,outerRadius:a,cornerRadius:l,forceCornerRadius:u,cornerIsExternal:c,startAngle:f,endAngle:d,className:p}=t;if(a0&&Math.abs(f-d)<360?S=g9({cx:n,cy:r,innerRadius:i,outerRadius:a,cornerRadius:Math.min(x,y/2),forceCornerRadius:u,cornerIsExternal:c,startAngle:f,endAngle:d}):S=uA({cx:n,cy:r,innerRadius:i,outerRadius:a,startAngle:f,endAngle:d}),k.createElement("path",bv({},dn(t),{className:g,d:S}))};function y9(e,t,n){if(e==="horizontal")return[{x:t.x,y:n.top},{x:t.x,y:n.top+n.height}];if(e==="vertical")return[{x:n.left,y:t.y},{x:n.left+n.width,y:t.y}];if(GO(t)){if(e==="centric"){var{cx:r,cy:i,innerRadius:a,outerRadius:l,angle:u}=t,c=Xt(r,i,a,u),f=Xt(r,i,l,u);return[{x:c.x,y:c.y},{x:f.x,y:f.y}]}return sA(t)}}var eg={},tg={},ng={},pj;function x9(){return pj||(pj=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=iN();function n(r){return t.isSymbol(r)?NaN:Number(r)}e.toNumber=n})(ng)),ng}var mj;function b9(){return mj||(mj=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=x9();function n(r){return r?(r=t.toNumber(r),r===1/0||r===-1/0?(r<0?-1:1)*Number.MAX_VALUE:r===r?r:0):r===0?r:0}e.toFinite=n})(tg)),tg}var gj;function w9(){return gj||(gj=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=aN(),n=b9();function r(i,a,l){l&&typeof l!="number"&&t.isIterateeCall(i,a,l)&&(a=l=void 0),i=n.toFinite(i),a===void 0?(a=i,i=0):a=n.toFinite(a),l=l===void 0?it?1:e>=t?0:NaN}function j9(e,t){return e==null||t==null?NaN:te?1:t>=e?0:NaN}function zy(e){let t,n,r;e.length!==2?(t=Gi,n=(u,c)=>Gi(e(u),c),r=(u,c)=>e(u)-c):(t=e===Gi||e===j9?e:P9,n=e,r=e);function i(u,c,f=0,d=u.length){if(f>>1;n(u[p],c)<0?f=p+1:d=p}while(f>>1;n(u[p],c)<=0?f=p+1:d=p}while(ff&&r(u[p-1],c)>-r(u[p],c)?p-1:p}return{left:i,center:l,right:a}}function P9(){return 0}function dA(e){return e===null?NaN:+e}function*E9(e,t){for(let n of e)n!=null&&(n=+n)>=n&&(yield n)}const C9=zy(Gi),zs=C9.right;zy(dA).center;class yj extends Map{constructor(t,n=A9){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:n}}),t!=null)for(const[r,i]of t)this.set(r,i)}get(t){return super.get(xj(this,t))}has(t){return super.has(xj(this,t))}set(t,n){return super.set(O9(this,t),n)}delete(t){return super.delete(N9(this,t))}}function xj({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):n}function O9({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):(e.set(r,n),n)}function N9({_intern:e,_key:t},n){const r=t(n);return e.has(r)&&(n=e.get(r),e.delete(r)),n}function A9(e){return e!==null&&typeof e=="object"?e.valueOf():e}function _9(e=Gi){if(e===Gi)return hA;if(typeof e!="function")throw new TypeError("compare is not a function");return(t,n)=>{const r=e(t,n);return r||r===0?r:(e(n,n)===0)-(e(t,t)===0)}}function hA(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(et?1:0)}const I9=Math.sqrt(50),T9=Math.sqrt(10),M9=Math.sqrt(2);function df(e,t,n){const r=(t-e)/Math.max(0,n),i=Math.floor(Math.log10(r)),a=r/Math.pow(10,i),l=a>=I9?10:a>=T9?5:a>=M9?2:1;let u,c,f;return i<0?(f=Math.pow(10,-i)/l,u=Math.round(e*f),c=Math.round(t*f),u/ft&&--c,f=-f):(f=Math.pow(10,i)*l,u=Math.round(e/f),c=Math.round(t/f),u*ft&&--c),c0))return[];if(e===t)return[e];const r=t=i))return[];const u=a-i+1,c=new Array(u);if(r)if(l<0)for(let f=0;f=r)&&(n=r);return n}function wj(e,t){let n;for(const r of e)r!=null&&(n>r||n===void 0&&r>=r)&&(n=r);return n}function pA(e,t,n=0,r=1/0,i){if(t=Math.floor(t),n=Math.floor(Math.max(0,n)),r=Math.floor(Math.min(e.length-1,r)),!(n<=t&&t<=r))return e;for(i=i===void 0?hA:_9(i);r>n;){if(r-n>600){const c=r-n+1,f=t-n+1,d=Math.log(c),p=.5*Math.exp(2*d/3),g=.5*Math.sqrt(d*p*(c-p)/c)*(f-c/2<0?-1:1),y=Math.max(n,Math.floor(t-f*p/c+g)),x=Math.min(r,Math.floor(t+(c-f)*p/c+g));pA(e,t,y,x,i)}const a=e[t];let l=n,u=r;for(Vl(e,n,t),i(e[r],a)>0&&Vl(e,n,r);l0;)--u}i(e[n],a)===0?Vl(e,n,u):(++u,Vl(e,u,r)),u<=t&&(n=u+1),t<=u&&(r=u-1)}return e}function Vl(e,t,n){const r=e[t];e[t]=e[n],e[n]=r}function D9(e,t,n){if(e=Float64Array.from(E9(e)),!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return wj(e);if(t>=1)return bj(e);var r,i=(r-1)*t,a=Math.floor(i),l=bj(pA(e,a).subarray(0,a+1)),u=wj(e.subarray(a+1));return l+(u-l)*(i-a)}}function L9(e,t,n=dA){if(!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return+n(e[0],0,e);if(t>=1)return+n(e[r-1],r-1,e);var r,i=(r-1)*t,a=Math.floor(i),l=+n(e[a],a,e),u=+n(e[a+1],a+1,e);return l+(u-l)*(i-a)}}function R9(e,t,n){e=+e,t=+t,n=(i=arguments.length)<2?(t=e,e=0,1):i<3?1:+n;for(var r=-1,i=Math.max(0,Math.ceil((t-e)/n))|0,a=new Array(i);++r>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?bc(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?bc(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=F9.exec(e))?new En(t[1],t[2],t[3],1):(t=B9.exec(e))?new En(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=U9.exec(e))?bc(t[1],t[2],t[3],t[4]):(t=W9.exec(e))?bc(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=q9.exec(e))?Oj(t[1],t[2]/100,t[3]/100,1):(t=H9.exec(e))?Oj(t[1],t[2]/100,t[3]/100,t[4]):kj.hasOwnProperty(e)?Pj(kj[e]):e==="transparent"?new En(NaN,NaN,NaN,0):null}function Pj(e){return new En(e>>16&255,e>>8&255,e&255,1)}function bc(e,t,n,r){return r<=0&&(e=t=n=NaN),new En(e,t,n,r)}function G9(e){return e instanceof $s||(e=ws(e)),e?(e=e.rgb(),new En(e.r,e.g,e.b,e.opacity)):new En}function Pv(e,t,n,r){return arguments.length===1?G9(e):new En(e,t,n,r??1)}function En(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}By(En,Pv,gA($s,{brighter(e){return e=e==null?hf:Math.pow(hf,e),new En(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?xs:Math.pow(xs,e),new En(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new En(Ea(this.r),Ea(this.g),Ea(this.b),pf(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Ej,formatHex:Ej,formatHex8:Y9,formatRgb:Cj,toString:Cj}));function Ej(){return`#${ka(this.r)}${ka(this.g)}${ka(this.b)}`}function Y9(){return`#${ka(this.r)}${ka(this.g)}${ka(this.b)}${ka((isNaN(this.opacity)?1:this.opacity)*255)}`}function Cj(){const e=pf(this.opacity);return`${e===1?"rgb(":"rgba("}${Ea(this.r)}, ${Ea(this.g)}, ${Ea(this.b)}${e===1?")":`, ${e})`}`}function pf(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Ea(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function ka(e){return e=Ea(e),(e<16?"0":"")+e.toString(16)}function Oj(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new hr(e,t,n,r)}function vA(e){if(e instanceof hr)return new hr(e.h,e.s,e.l,e.opacity);if(e instanceof $s||(e=ws(e)),!e)return new hr;if(e instanceof hr)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,i=Math.min(t,n,r),a=Math.max(t,n,r),l=NaN,u=a-i,c=(a+i)/2;return u?(t===a?l=(n-r)/u+(n0&&c<1?0:l,new hr(l,u,c,e.opacity)}function X9(e,t,n,r){return arguments.length===1?vA(e):new hr(e,t,n,r??1)}function hr(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}By(hr,X9,gA($s,{brighter(e){return e=e==null?hf:Math.pow(hf,e),new hr(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?xs:Math.pow(xs,e),new hr(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,i=2*n-r;return new En(ig(e>=240?e-240:e+120,i,r),ig(e,i,r),ig(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new hr(Nj(this.h),wc(this.s),wc(this.l),pf(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=pf(this.opacity);return`${e===1?"hsl(":"hsla("}${Nj(this.h)}, ${wc(this.s)*100}%, ${wc(this.l)*100}%${e===1?")":`, ${e})`}`}}));function Nj(e){return e=(e||0)%360,e<0?e+360:e}function wc(e){return Math.max(0,Math.min(1,e||0))}function ig(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}const Uy=e=>()=>e;function Q9(e,t){return function(n){return e+n*t}}function Z9(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(r){return Math.pow(e+r*t,n)}}function J9(e){return(e=+e)==1?yA:function(t,n){return n-t?Z9(t,n,e):Uy(isNaN(t)?n:t)}}function yA(e,t){var n=t-e;return n?Q9(e,n):Uy(isNaN(e)?t:e)}const Aj=(function e(t){var n=J9(t);function r(i,a){var l=n((i=Pv(i)).r,(a=Pv(a)).r),u=n(i.g,a.g),c=n(i.b,a.b),f=yA(i.opacity,a.opacity);return function(d){return i.r=l(d),i.g=u(d),i.b=c(d),i.opacity=f(d),i+""}}return r.gamma=e,r})(1);function eq(e,t){t||(t=[]);var n=e?Math.min(t.length,e.length):0,r=t.slice(),i;return function(a){for(i=0;in&&(a=t.slice(n,a),u[l]?u[l]+=a:u[++l]=a),(r=r[0])===(i=i[0])?u[l]?u[l]+=i:u[++l]=i:(u[++l]=null,c.push({i:l,x:mf(r,i)})),n=ag.lastIndex;return nt&&(n=e,e=t,t=n),function(r){return Math.max(e,Math.min(t,r))}}function fq(e,t,n){var r=e[0],i=e[1],a=t[0],l=t[1];return i2?dq:fq,c=f=null,p}function p(g){return g==null||isNaN(g=+g)?a:(c||(c=u(e.map(r),t,n)))(r(l(g)))}return p.invert=function(g){return l(i((f||(f=u(t,e.map(r),mf)))(g)))},p.domain=function(g){return arguments.length?(e=Array.from(g,gf),d()):e.slice()},p.range=function(g){return arguments.length?(t=Array.from(g),d()):t.slice()},p.rangeRound=function(g){return t=Array.from(g),n=Wy,d()},p.clamp=function(g){return arguments.length?(l=g?!0:fn,d()):l!==fn},p.interpolate=function(g){return arguments.length?(n=g,d()):n},p.unknown=function(g){return arguments.length?(a=g,p):a},function(g,y){return r=g,i=y,d()}}function qy(){return pd()(fn,fn)}function hq(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)}function vf(e,t){if(!isFinite(e)||e===0)return null;var n=(e=t?e.toExponential(t-1):e.toExponential()).indexOf("e"),r=e.slice(0,n);return[r.length>1?r[0]+r.slice(2):r,+e.slice(n+1)]}function Ro(e){return e=vf(Math.abs(e)),e?e[1]:NaN}function pq(e,t){return function(n,r){for(var i=n.length,a=[],l=0,u=e[0],c=0;i>0&&u>0&&(c+u+1>r&&(u=Math.max(1,r-c)),a.push(n.substring(i-=u,i+u)),!((c+=u+1)>r));)u=e[l=(l+1)%e.length];return a.reverse().join(t)}}function mq(e){return function(t){return t.replace(/[0-9]/g,function(n){return e[+n]})}}var gq=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function ks(e){if(!(t=gq.exec(e)))throw new Error("invalid format: "+e);var t;return new Hy({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}ks.prototype=Hy.prototype;function Hy(e){this.fill=e.fill===void 0?" ":e.fill+"",this.align=e.align===void 0?">":e.align+"",this.sign=e.sign===void 0?"-":e.sign+"",this.symbol=e.symbol===void 0?"":e.symbol+"",this.zero=!!e.zero,this.width=e.width===void 0?void 0:+e.width,this.comma=!!e.comma,this.precision=e.precision===void 0?void 0:+e.precision,this.trim=!!e.trim,this.type=e.type===void 0?"":e.type+""}Hy.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function vq(e){e:for(var t=e.length,n=1,r=-1,i;n0&&(r=0);break}return r>0?e.slice(0,r)+e.slice(i+1):e}var yf;function yq(e,t){var n=vf(e,t);if(!n)return yf=void 0,e.toPrecision(t);var r=n[0],i=n[1],a=i-(yf=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,l=r.length;return a===l?r:a>l?r+new Array(a-l+1).join("0"):a>0?r.slice(0,a)+"."+r.slice(a):"0."+new Array(1-a).join("0")+vf(e,Math.max(0,t+a-1))[0]}function Ij(e,t){var n=vf(e,t);if(!n)return e+"";var r=n[0],i=n[1];return i<0?"0."+new Array(-i).join("0")+r:r.length>i+1?r.slice(0,i+1)+"."+r.slice(i+1):r+new Array(i-r.length+2).join("0")}const Tj={"%":(e,t)=>(e*100).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+"",d:hq,e:(e,t)=>e.toExponential(t),f:(e,t)=>e.toFixed(t),g:(e,t)=>e.toPrecision(t),o:e=>Math.round(e).toString(8),p:(e,t)=>Ij(e*100,t),r:Ij,s:yq,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function Mj(e){return e}var Dj=Array.prototype.map,Lj=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function xq(e){var t=e.grouping===void 0||e.thousands===void 0?Mj:pq(Dj.call(e.grouping,Number),e.thousands+""),n=e.currency===void 0?"":e.currency[0]+"",r=e.currency===void 0?"":e.currency[1]+"",i=e.decimal===void 0?".":e.decimal+"",a=e.numerals===void 0?Mj:mq(Dj.call(e.numerals,String)),l=e.percent===void 0?"%":e.percent+"",u=e.minus===void 0?"−":e.minus+"",c=e.nan===void 0?"NaN":e.nan+"";function f(p,g){p=ks(p);var y=p.fill,x=p.align,S=p.sign,w=p.symbol,P=p.zero,C=p.width,O=p.comma,A=p.precision,I=p.trim,E=p.type;E==="n"?(O=!0,E="g"):Tj[E]||(A===void 0&&(A=12),I=!0,E="g"),(P||y==="0"&&x==="=")&&(P=!0,y="0",x="=");var L=(g&&g.prefix!==void 0?g.prefix:"")+(w==="$"?n:w==="#"&&/[boxX]/.test(E)?"0"+E.toLowerCase():""),F=(w==="$"?r:/[%p]/.test(E)?l:"")+(g&&g.suffix!==void 0?g.suffix:""),H=Tj[E],R=/[defgprs%]/.test(E);A=A===void 0?6:/[gprs]/.test(E)?Math.max(1,Math.min(21,A)):Math.max(0,Math.min(20,A));function W(M){var Z=L,Y=F,Q,he,de;if(E==="c")Y=H(M)+Y,M="";else{M=+M;var J=M<0||1/M<0;if(M=isNaN(M)?c:H(Math.abs(M),A),I&&(M=vq(M)),J&&+M==0&&S!=="+"&&(J=!1),Z=(J?S==="("?S:u:S==="-"||S==="("?"":S)+Z,Y=(E==="s"&&!isNaN(M)&&yf!==void 0?Lj[8+yf/3]:"")+Y+(J&&S==="("?")":""),R){for(Q=-1,he=M.length;++Qde||de>57){Y=(de===46?i+M.slice(Q+1):M.slice(Q))+Y,M=M.slice(0,Q);break}}}O&&!P&&(M=t(M,1/0));var ae=Z.length+M.length+Y.length,T=ae>1)+Z+M+Y+T.slice(ae);break;default:M=T+Z+M+Y;break}return a(M)}return W.toString=function(){return p+""},W}function d(p,g){var y=Math.max(-8,Math.min(8,Math.floor(Ro(g)/3)))*3,x=Math.pow(10,-y),S=f((p=ks(p),p.type="f",p),{suffix:Lj[8+y/3]});return function(w){return S(x*w)}}return{format:f,formatPrefix:d}}var kc,Vy,xA;bq({thousands:",",grouping:[3],currency:["$",""]});function bq(e){return kc=xq(e),Vy=kc.format,xA=kc.formatPrefix,kc}function wq(e){return Math.max(0,-Ro(Math.abs(e)))}function kq(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(Ro(t)/3)))*3-Ro(Math.abs(e)))}function Sq(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,Ro(t)-Ro(e))+1}function bA(e,t,n,r){var i=Sv(e,t,n),a;switch(r=ks(r??",f"),r.type){case"s":{var l=Math.max(Math.abs(e),Math.abs(t));return r.precision==null&&!isNaN(a=kq(i,l))&&(r.precision=a),xA(r,l)}case"":case"e":case"g":case"p":case"r":{r.precision==null&&!isNaN(a=Sq(i,Math.max(Math.abs(e),Math.abs(t))))&&(r.precision=a-(r.type==="e"));break}case"f":case"%":{r.precision==null&&!isNaN(a=wq(i))&&(r.precision=a-(r.type==="%")*2);break}}return Vy(r)}function ea(e){var t=e.domain;return e.ticks=function(n){var r=t();return wv(r[0],r[r.length-1],n??10)},e.tickFormat=function(n,r){var i=t();return bA(i[0],i[i.length-1],n??10,r)},e.nice=function(n){n==null&&(n=10);var r=t(),i=0,a=r.length-1,l=r[i],u=r[a],c,f,d=10;for(u0;){if(f=kv(l,u,n),f===c)return r[i]=l,r[a]=u,t(r);if(f>0)l=Math.floor(l/f)*f,u=Math.ceil(u/f)*f;else if(f<0)l=Math.ceil(l*f)/f,u=Math.floor(u*f)/f;else break;c=f}return e},e}function wA(){var e=qy();return e.copy=function(){return Fs(e,wA())},nr.apply(e,arguments),ea(e)}function kA(e){var t;function n(r){return r==null||isNaN(r=+r)?t:r}return n.invert=n,n.domain=n.range=function(r){return arguments.length?(e=Array.from(r,gf),n):e.slice()},n.unknown=function(r){return arguments.length?(t=r,n):t},n.copy=function(){return kA(e).unknown(t)},e=arguments.length?Array.from(e,gf):[0,1],ea(n)}function SA(e,t){e=e.slice();var n=0,r=e.length-1,i=e[n],a=e[r],l;return aMath.pow(e,t)}function Oq(e){return e===Math.E?Math.log:e===10&&Math.log10||e===2&&Math.log2||(e=Math.log(e),t=>Math.log(t)/e)}function $j(e){return(t,n)=>-e(-t,n)}function Ky(e){const t=e(Rj,zj),n=t.domain;let r=10,i,a;function l(){return i=Oq(r),a=Cq(r),n()[0]<0?(i=$j(i),a=$j(a),e(jq,Pq)):e(Rj,zj),t}return t.base=function(u){return arguments.length?(r=+u,l()):r},t.domain=function(u){return arguments.length?(n(u),l()):n()},t.ticks=u=>{const c=n();let f=c[0],d=c[c.length-1];const p=d0){for(;g<=y;++g)for(x=1;xd)break;P.push(S)}}else for(;g<=y;++g)for(x=r-1;x>=1;--x)if(S=g>0?x/a(-g):x*a(g),!(Sd)break;P.push(S)}P.length*2{if(u==null&&(u=10),c==null&&(c=r===10?"s":","),typeof c!="function"&&(!(r%1)&&(c=ks(c)).precision==null&&(c.trim=!0),c=Vy(c)),u===1/0)return c;const f=Math.max(1,r*u/t.ticks().length);return d=>{let p=d/a(Math.round(i(d)));return p*rn(SA(n(),{floor:u=>a(Math.floor(i(u))),ceil:u=>a(Math.ceil(i(u)))})),t}function jA(){const e=Ky(pd()).domain([1,10]);return e.copy=()=>Fs(e,jA()).base(e.base()),nr.apply(e,arguments),e}function Fj(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function Bj(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function Gy(e){var t=1,n=e(Fj(t),Bj(t));return n.constant=function(r){return arguments.length?e(Fj(t=+r),Bj(t)):t},ea(n)}function PA(){var e=Gy(pd());return e.copy=function(){return Fs(e,PA()).constant(e.constant())},nr.apply(e,arguments)}function Uj(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function Nq(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function Aq(e){return e<0?-e*e:e*e}function Yy(e){var t=e(fn,fn),n=1;function r(){return n===1?e(fn,fn):n===.5?e(Nq,Aq):e(Uj(n),Uj(1/n))}return t.exponent=function(i){return arguments.length?(n=+i,r()):n},ea(t)}function Xy(){var e=Yy(pd());return e.copy=function(){return Fs(e,Xy()).exponent(e.exponent())},nr.apply(e,arguments),e}function _q(){return Xy.apply(null,arguments).exponent(.5)}function Wj(e){return Math.sign(e)*e*e}function Iq(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}function EA(){var e=qy(),t=[0,1],n=!1,r;function i(a){var l=Iq(e(a));return isNaN(l)?r:n?Math.round(l):l}return i.invert=function(a){return e.invert(Wj(a))},i.domain=function(a){return arguments.length?(e.domain(a),i):e.domain()},i.range=function(a){return arguments.length?(e.range((t=Array.from(a,gf)).map(Wj)),i):t.slice()},i.rangeRound=function(a){return i.range(a).round(!0)},i.round=function(a){return arguments.length?(n=!!a,i):n},i.clamp=function(a){return arguments.length?(e.clamp(a),i):e.clamp()},i.unknown=function(a){return arguments.length?(r=a,i):r},i.copy=function(){return EA(e.domain(),t).round(n).clamp(e.clamp()).unknown(r)},nr.apply(i,arguments),ea(i)}function CA(){var e=[],t=[],n=[],r;function i(){var l=0,u=Math.max(1,t.length);for(n=new Array(u-1);++l0?n[u-1]:e[0],u=n?[r[n-1],t]:[r[f-1],r[f]]},l.unknown=function(c){return arguments.length&&(a=c),l},l.thresholds=function(){return r.slice()},l.copy=function(){return OA().domain([e,t]).range(i).unknown(a)},nr.apply(ea(l),arguments)}function NA(){var e=[.5],t=[0,1],n,r=1;function i(a){return a!=null&&a<=a?t[zs(e,a,0,r)]:n}return i.domain=function(a){return arguments.length?(e=Array.from(a),r=Math.min(e.length,t.length-1),i):e.slice()},i.range=function(a){return arguments.length?(t=Array.from(a),r=Math.min(e.length,t.length-1),i):t.slice()},i.invertExtent=function(a){var l=t.indexOf(a);return[e[l-1],e[l]]},i.unknown=function(a){return arguments.length?(n=a,i):n},i.copy=function(){return NA().domain(e).range(t).unknown(n)},nr.apply(i,arguments)}const og=new Date,lg=new Date;function Nt(e,t,n,r){function i(a){return e(a=arguments.length===0?new Date:new Date(+a)),a}return i.floor=a=>(e(a=new Date(+a)),a),i.ceil=a=>(e(a=new Date(a-1)),t(a,1),e(a),a),i.round=a=>{const l=i(a),u=i.ceil(a);return a-l(t(a=new Date(+a),l==null?1:Math.floor(l)),a),i.range=(a,l,u)=>{const c=[];if(a=i.ceil(a),u=u==null?1:Math.floor(u),!(a0))return c;let f;do c.push(f=new Date(+a)),t(a,u),e(a);while(fNt(l=>{if(l>=l)for(;e(l),!a(l);)l.setTime(l-1)},(l,u)=>{if(l>=l)if(u<0)for(;++u<=0;)for(;t(l,-1),!a(l););else for(;--u>=0;)for(;t(l,1),!a(l););}),n&&(i.count=(a,l)=>(og.setTime(+a),lg.setTime(+l),e(og),e(lg),Math.floor(n(og,lg))),i.every=a=>(a=Math.floor(a),!isFinite(a)||!(a>0)?null:a>1?i.filter(r?l=>r(l)%a===0:l=>i.count(0,l)%a===0):i)),i}const xf=Nt(()=>{},(e,t)=>{e.setTime(+e+t)},(e,t)=>t-e);xf.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?Nt(t=>{t.setTime(Math.floor(t/e)*e)},(t,n)=>{t.setTime(+t+n*e)},(t,n)=>(n-t)/e):xf);xf.range;const ei=1e3,Zn=ei*60,ti=Zn*60,ai=ti*24,Qy=ai*7,qj=ai*30,sg=ai*365,Sa=Nt(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*ei)},(e,t)=>(t-e)/ei,e=>e.getUTCSeconds());Sa.range;const Zy=Nt(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*ei)},(e,t)=>{e.setTime(+e+t*Zn)},(e,t)=>(t-e)/Zn,e=>e.getMinutes());Zy.range;const Jy=Nt(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*Zn)},(e,t)=>(t-e)/Zn,e=>e.getUTCMinutes());Jy.range;const ex=Nt(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*ei-e.getMinutes()*Zn)},(e,t)=>{e.setTime(+e+t*ti)},(e,t)=>(t-e)/ti,e=>e.getHours());ex.range;const tx=Nt(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*ti)},(e,t)=>(t-e)/ti,e=>e.getUTCHours());tx.range;const Bs=Nt(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*Zn)/ai,e=>e.getDate()-1);Bs.range;const md=Nt(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/ai,e=>e.getUTCDate()-1);md.range;const AA=Nt(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/ai,e=>Math.floor(e/ai));AA.range;function Ua(e){return Nt(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(t,n)=>{t.setDate(t.getDate()+n*7)},(t,n)=>(n-t-(n.getTimezoneOffset()-t.getTimezoneOffset())*Zn)/Qy)}const gd=Ua(0),bf=Ua(1),Tq=Ua(2),Mq=Ua(3),zo=Ua(4),Dq=Ua(5),Lq=Ua(6);gd.range;bf.range;Tq.range;Mq.range;zo.range;Dq.range;Lq.range;function Wa(e){return Nt(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCDate(t.getUTCDate()+n*7)},(t,n)=>(n-t)/Qy)}const vd=Wa(0),wf=Wa(1),Rq=Wa(2),zq=Wa(3),$o=Wa(4),$q=Wa(5),Fq=Wa(6);vd.range;wf.range;Rq.range;zq.range;$o.range;$q.range;Fq.range;const nx=Nt(e=>{e.setDate(1),e.setHours(0,0,0,0)},(e,t)=>{e.setMonth(e.getMonth()+t)},(e,t)=>t.getMonth()-e.getMonth()+(t.getFullYear()-e.getFullYear())*12,e=>e.getMonth());nx.range;const rx=Nt(e=>{e.setUTCDate(1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCMonth(e.getUTCMonth()+t)},(e,t)=>t.getUTCMonth()-e.getUTCMonth()+(t.getUTCFullYear()-e.getUTCFullYear())*12,e=>e.getUTCMonth());rx.range;const oi=Nt(e=>{e.setMonth(0,1),e.setHours(0,0,0,0)},(e,t)=>{e.setFullYear(e.getFullYear()+t)},(e,t)=>t.getFullYear()-e.getFullYear(),e=>e.getFullYear());oi.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Nt(t=>{t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)},(t,n)=>{t.setFullYear(t.getFullYear()+n*e)});oi.range;const li=Nt(e=>{e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t)},(e,t)=>t.getUTCFullYear()-e.getUTCFullYear(),e=>e.getUTCFullYear());li.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Nt(t=>{t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCFullYear(t.getUTCFullYear()+n*e)});li.range;function _A(e,t,n,r,i,a){const l=[[Sa,1,ei],[Sa,5,5*ei],[Sa,15,15*ei],[Sa,30,30*ei],[a,1,Zn],[a,5,5*Zn],[a,15,15*Zn],[a,30,30*Zn],[i,1,ti],[i,3,3*ti],[i,6,6*ti],[i,12,12*ti],[r,1,ai],[r,2,2*ai],[n,1,Qy],[t,1,qj],[t,3,3*qj],[e,1,sg]];function u(f,d,p){const g=dw).right(l,g);if(y===l.length)return e.every(Sv(f/sg,d/sg,p));if(y===0)return xf.every(Math.max(Sv(f,d,p),1));const[x,S]=l[g/l[y-1][2]53)return null;"w"in ie||(ie.w=1),"Z"in ie?(ze=cg(Kl(ie.y,0,1)),ct=ze.getUTCDay(),ze=ct>4||ct===0?wf.ceil(ze):wf(ze),ze=md.offset(ze,(ie.V-1)*7),ie.y=ze.getUTCFullYear(),ie.m=ze.getUTCMonth(),ie.d=ze.getUTCDate()+(ie.w+6)%7):(ze=ug(Kl(ie.y,0,1)),ct=ze.getDay(),ze=ct>4||ct===0?bf.ceil(ze):bf(ze),ze=Bs.offset(ze,(ie.V-1)*7),ie.y=ze.getFullYear(),ie.m=ze.getMonth(),ie.d=ze.getDate()+(ie.w+6)%7)}else("W"in ie||"U"in ie)&&("w"in ie||(ie.w="u"in ie?ie.u%7:"W"in ie?1:0),ct="Z"in ie?cg(Kl(ie.y,0,1)).getUTCDay():ug(Kl(ie.y,0,1)).getDay(),ie.m=0,ie.d="W"in ie?(ie.w+6)%7+ie.W*7-(ct+5)%7:ie.w+ie.U*7-(ct+6)%7);return"Z"in ie?(ie.H+=ie.Z/100|0,ie.M+=ie.Z%100,cg(ie)):ug(ie)}}function F(X,we,Ae,ie){for(var rt=0,ze=we.length,ct=Ae.length,ft,Ut;rt=ct)return-1;if(ft=we.charCodeAt(rt++),ft===37){if(ft=we.charAt(rt++),Ut=I[ft in Hj?we.charAt(rt++):ft],!Ut||(ie=Ut(X,Ae,ie))<0)return-1}else if(ft!=Ae.charCodeAt(ie++))return-1}return ie}function H(X,we,Ae){var ie=f.exec(we.slice(Ae));return ie?(X.p=d.get(ie[0].toLowerCase()),Ae+ie[0].length):-1}function R(X,we,Ae){var ie=y.exec(we.slice(Ae));return ie?(X.w=x.get(ie[0].toLowerCase()),Ae+ie[0].length):-1}function W(X,we,Ae){var ie=p.exec(we.slice(Ae));return ie?(X.w=g.get(ie[0].toLowerCase()),Ae+ie[0].length):-1}function M(X,we,Ae){var ie=P.exec(we.slice(Ae));return ie?(X.m=C.get(ie[0].toLowerCase()),Ae+ie[0].length):-1}function Z(X,we,Ae){var ie=S.exec(we.slice(Ae));return ie?(X.m=w.get(ie[0].toLowerCase()),Ae+ie[0].length):-1}function Y(X,we,Ae){return F(X,t,we,Ae)}function Q(X,we,Ae){return F(X,n,we,Ae)}function he(X,we,Ae){return F(X,r,we,Ae)}function de(X){return l[X.getDay()]}function J(X){return a[X.getDay()]}function ae(X){return c[X.getMonth()]}function T(X){return u[X.getMonth()]}function $(X){return i[+(X.getHours()>=12)]}function U(X){return 1+~~(X.getMonth()/3)}function _(X){return l[X.getUTCDay()]}function te(X){return a[X.getUTCDay()]}function fe(X){return c[X.getUTCMonth()]}function ce(X){return u[X.getUTCMonth()]}function Se(X){return i[+(X.getUTCHours()>=12)]}function je(X){return 1+~~(X.getUTCMonth()/3)}return{format:function(X){var we=E(X+="",O);return we.toString=function(){return X},we},parse:function(X){var we=L(X+="",!1);return we.toString=function(){return X},we},utcFormat:function(X){var we=E(X+="",A);return we.toString=function(){return X},we},utcParse:function(X){var we=L(X+="",!0);return we.toString=function(){return X},we}}}var Hj={"-":"",_:" ",0:"0"},$t=/^\s*\d+/,Vq=/^%/,Kq=/[\\^$*+?|[\]().{}]/g;function We(e,t,n){var r=e<0?"-":"",i=(r?-e:e)+"",a=i.length;return r+(a[t.toLowerCase(),n]))}function Yq(e,t,n){var r=$t.exec(t.slice(n,n+1));return r?(e.w=+r[0],n+r[0].length):-1}function Xq(e,t,n){var r=$t.exec(t.slice(n,n+1));return r?(e.u=+r[0],n+r[0].length):-1}function Qq(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.U=+r[0],n+r[0].length):-1}function Zq(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.V=+r[0],n+r[0].length):-1}function Jq(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.W=+r[0],n+r[0].length):-1}function Vj(e,t,n){var r=$t.exec(t.slice(n,n+4));return r?(e.y=+r[0],n+r[0].length):-1}function Kj(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function eH(e,t,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(n,n+6));return r?(e.Z=r[1]?0:-(r[2]+(r[3]||"00")),n+r[0].length):-1}function tH(e,t,n){var r=$t.exec(t.slice(n,n+1));return r?(e.q=r[0]*3-3,n+r[0].length):-1}function nH(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.m=r[0]-1,n+r[0].length):-1}function Gj(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.d=+r[0],n+r[0].length):-1}function rH(e,t,n){var r=$t.exec(t.slice(n,n+3));return r?(e.m=0,e.d=+r[0],n+r[0].length):-1}function Yj(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.H=+r[0],n+r[0].length):-1}function iH(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.M=+r[0],n+r[0].length):-1}function aH(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.S=+r[0],n+r[0].length):-1}function oH(e,t,n){var r=$t.exec(t.slice(n,n+3));return r?(e.L=+r[0],n+r[0].length):-1}function lH(e,t,n){var r=$t.exec(t.slice(n,n+6));return r?(e.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function sH(e,t,n){var r=Vq.exec(t.slice(n,n+1));return r?n+r[0].length:-1}function uH(e,t,n){var r=$t.exec(t.slice(n));return r?(e.Q=+r[0],n+r[0].length):-1}function cH(e,t,n){var r=$t.exec(t.slice(n));return r?(e.s=+r[0],n+r[0].length):-1}function Xj(e,t){return We(e.getDate(),t,2)}function fH(e,t){return We(e.getHours(),t,2)}function dH(e,t){return We(e.getHours()%12||12,t,2)}function hH(e,t){return We(1+Bs.count(oi(e),e),t,3)}function IA(e,t){return We(e.getMilliseconds(),t,3)}function pH(e,t){return IA(e,t)+"000"}function mH(e,t){return We(e.getMonth()+1,t,2)}function gH(e,t){return We(e.getMinutes(),t,2)}function vH(e,t){return We(e.getSeconds(),t,2)}function yH(e){var t=e.getDay();return t===0?7:t}function xH(e,t){return We(gd.count(oi(e)-1,e),t,2)}function TA(e){var t=e.getDay();return t>=4||t===0?zo(e):zo.ceil(e)}function bH(e,t){return e=TA(e),We(zo.count(oi(e),e)+(oi(e).getDay()===4),t,2)}function wH(e){return e.getDay()}function kH(e,t){return We(bf.count(oi(e)-1,e),t,2)}function SH(e,t){return We(e.getFullYear()%100,t,2)}function jH(e,t){return e=TA(e),We(e.getFullYear()%100,t,2)}function PH(e,t){return We(e.getFullYear()%1e4,t,4)}function EH(e,t){var n=e.getDay();return e=n>=4||n===0?zo(e):zo.ceil(e),We(e.getFullYear()%1e4,t,4)}function CH(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+We(t/60|0,"0",2)+We(t%60,"0",2)}function Qj(e,t){return We(e.getUTCDate(),t,2)}function OH(e,t){return We(e.getUTCHours(),t,2)}function NH(e,t){return We(e.getUTCHours()%12||12,t,2)}function AH(e,t){return We(1+md.count(li(e),e),t,3)}function MA(e,t){return We(e.getUTCMilliseconds(),t,3)}function _H(e,t){return MA(e,t)+"000"}function IH(e,t){return We(e.getUTCMonth()+1,t,2)}function TH(e,t){return We(e.getUTCMinutes(),t,2)}function MH(e,t){return We(e.getUTCSeconds(),t,2)}function DH(e){var t=e.getUTCDay();return t===0?7:t}function LH(e,t){return We(vd.count(li(e)-1,e),t,2)}function DA(e){var t=e.getUTCDay();return t>=4||t===0?$o(e):$o.ceil(e)}function RH(e,t){return e=DA(e),We($o.count(li(e),e)+(li(e).getUTCDay()===4),t,2)}function zH(e){return e.getUTCDay()}function $H(e,t){return We(wf.count(li(e)-1,e),t,2)}function FH(e,t){return We(e.getUTCFullYear()%100,t,2)}function BH(e,t){return e=DA(e),We(e.getUTCFullYear()%100,t,2)}function UH(e,t){return We(e.getUTCFullYear()%1e4,t,4)}function WH(e,t){var n=e.getUTCDay();return e=n>=4||n===0?$o(e):$o.ceil(e),We(e.getUTCFullYear()%1e4,t,4)}function qH(){return"+0000"}function Zj(){return"%"}function Jj(e){return+e}function eP(e){return Math.floor(+e/1e3)}var yo,LA,RA;HH({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function HH(e){return yo=Hq(e),LA=yo.format,yo.parse,RA=yo.utcFormat,yo.utcParse,yo}function VH(e){return new Date(e)}function KH(e){return e instanceof Date?+e:+new Date(+e)}function ix(e,t,n,r,i,a,l,u,c,f){var d=qy(),p=d.invert,g=d.domain,y=f(".%L"),x=f(":%S"),S=f("%I:%M"),w=f("%I %p"),P=f("%a %d"),C=f("%b %d"),O=f("%B"),A=f("%Y");function I(E){return(c(E)t(i/(e.length-1)))},n.quantiles=function(r){return Array.from({length:r+1},(i,a)=>D9(e,a/r))},n.copy=function(){return BA(t).domain(e)},pi.apply(n,arguments)}function xd(){var e=0,t=.5,n=1,r=1,i,a,l,u,c,f=fn,d,p=!1,g;function y(S){return isNaN(S=+S)?g:(S=.5+((S=+d(S))-a)*(r*Se.chartData,HA=G([mi],e=>{var t=e.chartData!=null?e.chartData.length-1:0;return{chartData:e.chartData,computedData:e.computedData,dataEndIndex:t,dataStartIndex:0}}),VA=(e,t,n,r)=>r?HA(e):mi(e),KA=(e,t,n)=>n?HA(e):mi(e);function si(e){if(Array.isArray(e)&&e.length===2){var[t,n]=e;if(Me(t)&&Me(n))return!0}return!1}function tP(e,t,n){return n?e:[Math.min(e[0],t[0]),Math.max(e[1],t[1])]}function GA(e,t){if(t&&typeof e!="function"&&Array.isArray(e)&&e.length===2){var[n,r]=e,i,a;if(Me(n))i=n;else if(typeof n=="function")return;if(Me(r))a=r;else if(typeof r=="function")return;var l=[i,a];if(si(l))return l}}function ZH(e,t,n){if(!(!n&&t==null)){if(typeof e=="function"&&t!=null)try{var r=e(t,n);if(si(r))return tP(r,t,n)}catch{}if(Array.isArray(e)&&e.length===2){var[i,a]=e,l,u;if(i==="auto")t!=null&&(l=Math.min(...t));else if(ge(i))l=i;else if(typeof i=="function")try{t!=null&&(l=i(t==null?void 0:t[0]))}catch{}else if(typeof i=="string"&&hS.test(i)){var c=hS.exec(i);if(c==null||c[1]==null||t==null)l=void 0;else{var f=+c[1];l=t[0]-f}}else l=t==null?void 0:t[0];if(a==="auto")t!=null&&(u=Math.max(...t));else if(ge(a))u=a;else if(typeof a=="function")try{t!=null&&(u=a(t==null?void 0:t[1]))}catch{}else if(typeof a=="string"&&pS.test(a)){var d=pS.exec(a);if(d==null||d[1]==null||t==null)u=void 0;else{var p=+d[1];u=t[1]+p}}else u=t==null?void 0:t[1];var g=[l,u];if(si(g))return t==null?g:tP(g,t,n)}}}var qo=1e9,JH={precision:20,rounding:4,toExpNeg:-7,toExpPos:21,LN10:"2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286"},sx,ot=!0,tr="[DecimalError] ",Ca=tr+"Invalid argument: ",lx=tr+"Exponent out of range: ",Ho=Math.floor,ba=Math.pow,eV=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,Dn,Lt=1e7,nt=7,YA=9007199254740991,kf=Ho(YA/nt),ye={};ye.absoluteValue=ye.abs=function(){var e=new this.constructor(this);return e.s&&(e.s=1),e};ye.comparedTo=ye.cmp=function(e){var t,n,r,i,a=this;if(e=new a.constructor(e),a.s!==e.s)return a.s||-e.s;if(a.e!==e.e)return a.e>e.e^a.s<0?1:-1;for(r=a.d.length,i=e.d.length,t=0,n=re.d[t]^a.s<0?1:-1;return r===i?0:r>i^a.s<0?1:-1};ye.decimalPlaces=ye.dp=function(){var e=this,t=e.d.length-1,n=(t-e.e)*nt;if(t=e.d[t],t)for(;t%10==0;t/=10)n--;return n<0?0:n};ye.dividedBy=ye.div=function(e){return ni(this,new this.constructor(e))};ye.dividedToIntegerBy=ye.idiv=function(e){var t=this,n=t.constructor;return Ye(ni(t,new n(e),0,1),n.precision)};ye.equals=ye.eq=function(e){return!this.cmp(e)};ye.exponent=function(){return jt(this)};ye.greaterThan=ye.gt=function(e){return this.cmp(e)>0};ye.greaterThanOrEqualTo=ye.gte=function(e){return this.cmp(e)>=0};ye.isInteger=ye.isint=function(){return this.e>this.d.length-2};ye.isNegative=ye.isneg=function(){return this.s<0};ye.isPositive=ye.ispos=function(){return this.s>0};ye.isZero=function(){return this.s===0};ye.lessThan=ye.lt=function(e){return this.cmp(e)<0};ye.lessThanOrEqualTo=ye.lte=function(e){return this.cmp(e)<1};ye.logarithm=ye.log=function(e){var t,n=this,r=n.constructor,i=r.precision,a=i+5;if(e===void 0)e=new r(10);else if(e=new r(e),e.s<1||e.eq(Dn))throw Error(tr+"NaN");if(n.s<1)throw Error(tr+(n.s?"NaN":"-Infinity"));return n.eq(Dn)?new r(0):(ot=!1,t=ni(Ss(n,a),Ss(e,a),a),ot=!0,Ye(t,i))};ye.minus=ye.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?ZA(t,e):XA(t,(e.s=-e.s,e))};ye.modulo=ye.mod=function(e){var t,n=this,r=n.constructor,i=r.precision;if(e=new r(e),!e.s)throw Error(tr+"NaN");return n.s?(ot=!1,t=ni(n,e,0,1).times(e),ot=!0,n.minus(t)):Ye(new r(n),i)};ye.naturalExponential=ye.exp=function(){return QA(this)};ye.naturalLogarithm=ye.ln=function(){return Ss(this)};ye.negated=ye.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e};ye.plus=ye.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?XA(t,e):ZA(t,(e.s=-e.s,e))};ye.precision=ye.sd=function(e){var t,n,r,i=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(Ca+e);if(t=jt(i)+1,r=i.d.length-1,n=r*nt+1,r=i.d[r],r){for(;r%10==0;r/=10)n--;for(r=i.d[0];r>=10;r/=10)n++}return e&&t>n?t:n};ye.squareRoot=ye.sqrt=function(){var e,t,n,r,i,a,l,u=this,c=u.constructor;if(u.s<1){if(!u.s)return new c(0);throw Error(tr+"NaN")}for(e=jt(u),ot=!1,i=Math.sqrt(+u),i==0||i==1/0?(t=Tr(u.d),(t.length+e)%2==0&&(t+="0"),i=Math.sqrt(t),e=Ho((e+1)/2)-(e<0||e%2),i==1/0?t="5e"+e:(t=i.toExponential(),t=t.slice(0,t.indexOf("e")+1)+e),r=new c(t)):r=new c(i.toString()),n=c.precision,i=l=n+3;;)if(a=r,r=a.plus(ni(u,a,l+2)).times(.5),Tr(a.d).slice(0,l)===(t=Tr(r.d)).slice(0,l)){if(t=t.slice(l-3,l+1),i==l&&t=="4999"){if(Ye(a,n+1,0),a.times(a).eq(u)){r=a;break}}else if(t!="9999")break;l+=4}return ot=!0,Ye(r,n)};ye.times=ye.mul=function(e){var t,n,r,i,a,l,u,c,f,d=this,p=d.constructor,g=d.d,y=(e=new p(e)).d;if(!d.s||!e.s)return new p(0);for(e.s*=d.s,n=d.e+e.e,c=g.length,f=y.length,c=0;){for(t=0,i=c+r;i>r;)u=a[i]+y[r]*g[i-r-1]+t,a[i--]=u%Lt|0,t=u/Lt|0;a[i]=(a[i]+t)%Lt|0}for(;!a[--l];)a.pop();return t?++n:a.shift(),e.d=a,e.e=n,ot?Ye(e,p.precision):e};ye.toDecimalPlaces=ye.todp=function(e,t){var n=this,r=n.constructor;return n=new r(n),e===void 0?n:(Rr(e,0,qo),t===void 0?t=r.rounding:Rr(t,0,8),Ye(n,e+jt(n)+1,t))};ye.toExponential=function(e,t){var n,r=this,i=r.constructor;return e===void 0?n=Da(r,!0):(Rr(e,0,qo),t===void 0?t=i.rounding:Rr(t,0,8),r=Ye(new i(r),e+1,t),n=Da(r,!0,e+1)),n};ye.toFixed=function(e,t){var n,r,i=this,a=i.constructor;return e===void 0?Da(i):(Rr(e,0,qo),t===void 0?t=a.rounding:Rr(t,0,8),r=Ye(new a(i),e+jt(i)+1,t),n=Da(r.abs(),!1,e+jt(r)+1),i.isneg()&&!i.isZero()?"-"+n:n)};ye.toInteger=ye.toint=function(){var e=this,t=e.constructor;return Ye(new t(e),jt(e)+1,t.rounding)};ye.toNumber=function(){return+this};ye.toPower=ye.pow=function(e){var t,n,r,i,a,l,u=this,c=u.constructor,f=12,d=+(e=new c(e));if(!e.s)return new c(Dn);if(u=new c(u),!u.s){if(e.s<1)throw Error(tr+"Infinity");return u}if(u.eq(Dn))return u;if(r=c.precision,e.eq(Dn))return Ye(u,r);if(t=e.e,n=e.d.length-1,l=t>=n,a=u.s,l){if((n=d<0?-d:d)<=YA){for(i=new c(Dn),t=Math.ceil(r/nt+4),ot=!1;n%2&&(i=i.times(u),rP(i.d,t)),n=Ho(n/2),n!==0;)u=u.times(u),rP(u.d,t);return ot=!0,e.s<0?new c(Dn).div(i):Ye(i,r)}}else if(a<0)throw Error(tr+"NaN");return a=a<0&&e.d[Math.max(t,n)]&1?-1:1,u.s=1,ot=!1,i=e.times(Ss(u,r+f)),ot=!0,i=QA(i),i.s=a,i};ye.toPrecision=function(e,t){var n,r,i=this,a=i.constructor;return e===void 0?(n=jt(i),r=Da(i,n<=a.toExpNeg||n>=a.toExpPos)):(Rr(e,1,qo),t===void 0?t=a.rounding:Rr(t,0,8),i=Ye(new a(i),e,t),n=jt(i),r=Da(i,e<=n||n<=a.toExpNeg,e)),r};ye.toSignificantDigits=ye.tosd=function(e,t){var n=this,r=n.constructor;return e===void 0?(e=r.precision,t=r.rounding):(Rr(e,1,qo),t===void 0?t=r.rounding:Rr(t,0,8)),Ye(new r(n),e,t)};ye.toString=ye.valueOf=ye.val=ye.toJSON=ye[Symbol.for("nodejs.util.inspect.custom")]=function(){var e=this,t=jt(e),n=e.constructor;return Da(e,t<=n.toExpNeg||t>=n.toExpPos)};function XA(e,t){var n,r,i,a,l,u,c,f,d=e.constructor,p=d.precision;if(!e.s||!t.s)return t.s||(t=new d(e)),ot?Ye(t,p):t;if(c=e.d,f=t.d,l=e.e,i=t.e,c=c.slice(),a=l-i,a){for(a<0?(r=c,a=-a,u=f.length):(r=f,i=l,u=c.length),l=Math.ceil(p/nt),u=l>u?l+1:u+1,a>u&&(a=u,r.length=1),r.reverse();a--;)r.push(0);r.reverse()}for(u=c.length,a=f.length,u-a<0&&(a=u,r=f,f=c,c=r),n=0;a;)n=(c[--a]=c[a]+f[a]+n)/Lt|0,c[a]%=Lt;for(n&&(c.unshift(n),++i),u=c.length;c[--u]==0;)c.pop();return t.d=c,t.e=i,ot?Ye(t,p):t}function Rr(e,t,n){if(e!==~~e||en)throw Error(Ca+e)}function Tr(e){var t,n,r,i=e.length-1,a="",l=e[0];if(i>0){for(a+=l,t=1;tl?1:-1;else for(u=c=0;ui[u]?1:-1;break}return c}function n(r,i,a){for(var l=0;a--;)r[a]-=l,l=r[a]1;)r.shift()}return function(r,i,a,l){var u,c,f,d,p,g,y,x,S,w,P,C,O,A,I,E,L,F,H=r.constructor,R=r.s==i.s?1:-1,W=r.d,M=i.d;if(!r.s)return new H(r);if(!i.s)throw Error(tr+"Division by zero");for(c=r.e-i.e,L=M.length,I=W.length,y=new H(R),x=y.d=[],f=0;M[f]==(W[f]||0);)++f;if(M[f]>(W[f]||0)&&--c,a==null?C=a=H.precision:l?C=a+(jt(r)-jt(i))+1:C=a,C<0)return new H(0);if(C=C/nt+2|0,f=0,L==1)for(d=0,M=M[0],C++;(f1&&(M=e(M,d),W=e(W,d),L=M.length,I=W.length),A=L,S=W.slice(0,L),w=S.length;w=Lt/2&&++E;do d=0,u=t(M,S,L,w),u<0?(P=S[0],L!=w&&(P=P*Lt+(S[1]||0)),d=P/E|0,d>1?(d>=Lt&&(d=Lt-1),p=e(M,d),g=p.length,w=S.length,u=t(p,S,g,w),u==1&&(d--,n(p,L16)throw Error(lx+jt(e));if(!e.s)return new d(Dn);for(ot=!1,u=p,l=new d(.03125);e.abs().gte(.1);)e=e.times(l),f+=5;for(r=Math.log(ba(2,f))/Math.LN10*2+5|0,u+=r,n=i=a=new d(Dn),d.precision=u;;){if(i=Ye(i.times(e),u),n=n.times(++c),l=a.plus(ni(i,n,u)),Tr(l.d).slice(0,u)===Tr(a.d).slice(0,u)){for(;f--;)a=Ye(a.times(a),u);return d.precision=p,t==null?(ot=!0,Ye(a,p)):a}a=l}}function jt(e){for(var t=e.e*nt,n=e.d[0];n>=10;n/=10)t++;return t}function fg(e,t,n){if(t>e.LN10.sd())throw ot=!0,n&&(e.precision=n),Error(tr+"LN10 precision limit exceeded");return Ye(new e(e.LN10),t)}function Wi(e){for(var t="";e--;)t+="0";return t}function Ss(e,t){var n,r,i,a,l,u,c,f,d,p=1,g=10,y=e,x=y.d,S=y.constructor,w=S.precision;if(y.s<1)throw Error(tr+(y.s?"NaN":"-Infinity"));if(y.eq(Dn))return new S(0);if(t==null?(ot=!1,f=w):f=t,y.eq(10))return t==null&&(ot=!0),fg(S,f);if(f+=g,S.precision=f,n=Tr(x),r=n.charAt(0),a=jt(y),Math.abs(a)<15e14){for(;r<7&&r!=1||r==1&&n.charAt(1)>3;)y=y.times(e),n=Tr(y.d),r=n.charAt(0),p++;a=jt(y),r>1?(y=new S("0."+n),a++):y=new S(r+"."+n.slice(1))}else return c=fg(S,f+2,w).times(a+""),y=Ss(new S(r+"."+n.slice(1)),f-g).plus(c),S.precision=w,t==null?(ot=!0,Ye(y,w)):y;for(u=l=y=ni(y.minus(Dn),y.plus(Dn),f),d=Ye(y.times(y),f),i=3;;){if(l=Ye(l.times(d),f),c=u.plus(ni(l,new S(i),f)),Tr(c.d).slice(0,f)===Tr(u.d).slice(0,f))return u=u.times(2),a!==0&&(u=u.plus(fg(S,f+2,w).times(a+""))),u=ni(u,new S(p),f),S.precision=w,t==null?(ot=!0,Ye(u,w)):u;u=c,i+=2}}function nP(e,t){var n,r,i;for((n=t.indexOf("."))>-1&&(t=t.replace(".","")),(r=t.search(/e/i))>0?(n<0&&(n=r),n+=+t.slice(r+1),t=t.substring(0,r)):n<0&&(n=t.length),r=0;t.charCodeAt(r)===48;)++r;for(i=t.length;t.charCodeAt(i-1)===48;)--i;if(t=t.slice(r,i),t){if(i-=r,n=n-r-1,e.e=Ho(n/nt),e.d=[],r=(n+1)%nt,n<0&&(r+=nt),rkf||e.e<-kf))throw Error(lx+n)}else e.s=0,e.e=0,e.d=[0];return e}function Ye(e,t,n){var r,i,a,l,u,c,f,d,p=e.d;for(l=1,a=p[0];a>=10;a/=10)l++;if(r=t-l,r<0)r+=nt,i=t,f=p[d=0];else{if(d=Math.ceil((r+1)/nt),a=p.length,d>=a)return e;for(f=a=p[d],l=1;a>=10;a/=10)l++;r%=nt,i=r-nt+l}if(n!==void 0&&(a=ba(10,l-i-1),u=f/a%10|0,c=t<0||p[d+1]!==void 0||f%a,c=n<4?(u||c)&&(n==0||n==(e.s<0?3:2)):u>5||u==5&&(n==4||c||n==6&&(r>0?i>0?f/ba(10,l-i):0:p[d-1])%10&1||n==(e.s<0?8:7))),t<1||!p[0])return c?(a=jt(e),p.length=1,t=t-a-1,p[0]=ba(10,(nt-t%nt)%nt),e.e=Ho(-t/nt)||0):(p.length=1,p[0]=e.e=e.s=0),e;if(r==0?(p.length=d,a=1,d--):(p.length=d+1,a=ba(10,nt-r),p[d]=i>0?(f/ba(10,l-i)%ba(10,i)|0)*a:0),c)for(;;)if(d==0){(p[0]+=a)==Lt&&(p[0]=1,++e.e);break}else{if(p[d]+=a,p[d]!=Lt)break;p[d--]=0,a=1}for(r=p.length;p[--r]===0;)p.pop();if(ot&&(e.e>kf||e.e<-kf))throw Error(lx+jt(e));return e}function ZA(e,t){var n,r,i,a,l,u,c,f,d,p,g=e.constructor,y=g.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new g(e),ot?Ye(t,y):t;if(c=e.d,p=t.d,r=t.e,f=e.e,c=c.slice(),l=f-r,l){for(d=l<0,d?(n=c,l=-l,u=p.length):(n=p,r=f,u=c.length),i=Math.max(Math.ceil(y/nt),u)+2,l>i&&(l=i,n.length=1),n.reverse(),i=l;i--;)n.push(0);n.reverse()}else{for(i=c.length,u=p.length,d=i0;--i)c[u++]=0;for(i=p.length;i>l;){if(c[--i]0?a=a.charAt(0)+"."+a.slice(1)+Wi(r):l>1&&(a=a.charAt(0)+"."+a.slice(1)),a=a+(i<0?"e":"e+")+i):i<0?(a="0."+Wi(-i-1)+a,n&&(r=n-l)>0&&(a+=Wi(r))):i>=l?(a+=Wi(i+1-l),n&&(r=n-i-1)>0&&(a=a+"."+Wi(r))):((r=i+1)0&&(i+1===l&&(a+="."),a+=Wi(r))),e.s<0?"-"+a:a}function rP(e,t){if(e.length>t)return e.length=t,!0}function JA(e){var t,n,r;function i(a){var l=this;if(!(l instanceof i))return new i(a);if(l.constructor=i,a instanceof i){l.s=a.s,l.e=a.e,l.d=(a=a.d)?a.slice():a;return}if(typeof a=="number"){if(a*0!==0)throw Error(Ca+a);if(a>0)l.s=1;else if(a<0)a=-a,l.s=-1;else{l.s=0,l.e=0,l.d=[0];return}if(a===~~a&&a<1e7){l.e=0,l.d=[a];return}return nP(l,a.toString())}else if(typeof a!="string")throw Error(Ca+a);if(a.charCodeAt(0)===45?(a=a.slice(1),l.s=-1):l.s=1,eV.test(a))nP(l,a);else throw Error(Ca+a)}if(i.prototype=ye,i.ROUND_UP=0,i.ROUND_DOWN=1,i.ROUND_CEIL=2,i.ROUND_FLOOR=3,i.ROUND_HALF_UP=4,i.ROUND_HALF_DOWN=5,i.ROUND_HALF_EVEN=6,i.ROUND_HALF_CEIL=7,i.ROUND_HALF_FLOOR=8,i.clone=JA,i.config=i.set=tV,e===void 0&&(e={}),e)for(r=["precision","rounding","toExpNeg","toExpPos","LN10"],t=0;t=i[t+1]&&r<=i[t+2])this[n]=r;else throw Error(Ca+n+": "+r);if((r=e[n="LN10"])!==void 0)if(r==Math.LN10)this[n]=new this(r);else throw Error(Ca+n+": "+r);return this}var sx=JA(JH);Dn=new sx(1);const Ke=sx;function e_(e){var t;return e===0?t=1:t=Math.floor(new Ke(e).abs().log(10).toNumber())+1,t}function t_(e,t,n){for(var r=new Ke(e),i=0,a=[];r.lt(t)&&i<1e5;)a.push(r.toNumber()),r=r.add(n),i++;return a}var n_=e=>{var[t,n]=e,[r,i]=[t,n];return t>n&&([r,i]=[n,t]),[r,i]},r_=(e,t,n)=>{if(e.lte(0))return new Ke(0);var r=e_(e.toNumber()),i=new Ke(10).pow(r),a=e.div(i),l=r!==1?.05:.1,u=new Ke(Math.ceil(a.div(l).toNumber())).add(n).mul(l),c=u.mul(i);return t?new Ke(c.toNumber()):new Ke(Math.ceil(c.toNumber()))},nV=(e,t,n)=>{var r=new Ke(1),i=new Ke(e);if(!i.isint()&&n){var a=Math.abs(e);a<1?(r=new Ke(10).pow(e_(e)-1),i=new Ke(Math.floor(i.div(r).toNumber())).mul(r)):a>1&&(i=new Ke(Math.floor(e)))}else e===0?i=new Ke(Math.floor((t-1)/2)):n||(i=new Ke(Math.floor(e)));for(var l=Math.floor((t-1)/2),u=[],c=0;c4&&arguments[4]!==void 0?arguments[4]:0;if(!Number.isFinite((n-t)/(r-1)))return{step:new Ke(0),tickMin:new Ke(0),tickMax:new Ke(0)};var l=r_(new Ke(n).sub(t).div(r-1),i,a),u;t<=0&&n>=0?u=new Ke(0):(u=new Ke(t).add(n).div(2),u=u.sub(new Ke(u).mod(l)));var c=Math.ceil(u.sub(t).div(l).toNumber()),f=Math.ceil(new Ke(n).sub(u).div(l).toNumber()),d=c+f+1;return d>r?i_(t,n,r,i,a+1):(d0?f+(r-d):f,c=n>0?c:c+(r-d)),{step:l,tickMin:u.sub(new Ke(c).mul(l)),tickMax:u.add(new Ke(f).mul(l))})},rV=function(t){var[n,r]=t,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:6,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,l=Math.max(i,2),[u,c]=n_([n,r]);if(u===-1/0||c===1/0){var f=c===1/0?[u,...Array(i-1).fill(1/0)]:[...Array(i-1).fill(-1/0),c];return n>r?f.reverse():f}if(u===c)return nV(u,i,a);var{step:d,tickMin:p,tickMax:g}=i_(u,c,l,a,0),y=t_(p,g.add(new Ke(.1).mul(d)),d);return n>r?y.reverse():y},iV=function(t,n){var[r,i]=t,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,[l,u]=n_([r,i]);if(l===-1/0||u===1/0)return[r,i];if(l===u)return[l];var c=Math.max(n,2),f=r_(new Ke(u).sub(l).div(c-1),a,0),d=[...t_(new Ke(l),new Ke(u),f),u];return a===!1&&(d=d.map(p=>Math.round(p))),r>i?d.reverse():d},a_=e=>e.rootProps.maxBarSize,aV=e=>e.rootProps.barGap,o_=e=>e.rootProps.barCategoryGap,oV=e=>e.rootProps.barSize,bd=e=>e.rootProps.stackOffset,l_=e=>e.rootProps.reverseStackOrder,ux=e=>e.options.chartName,cx=e=>e.rootProps.syncId,s_=e=>e.rootProps.syncMethod,fx=e=>e.options.eventEmitter,lV=e=>e.rootProps.baseValue,Rt={grid:-100,barBackground:-50,area:100,cursorRectangle:200,bar:300,line:400,axis:500,scatter:600,activeBar:1e3,cursorLine:1100,activeDot:1200,label:2e3},va={allowDecimals:!1,allowDataOverflow:!1,angleAxisId:0,reversed:!1,scale:"auto",tick:!0,type:"auto"},Or={allowDataOverflow:!1,allowDecimals:!1,allowDuplicatedCategory:!0,includeHidden:!1,radiusAxisId:0,reversed:!1,scale:"auto",tick:!0,tickCount:5,type:"auto"},wd=(e,t)=>{if(!(!e||!t))return e!=null&&e.reversed?[t[1],t[0]]:t};function kd(e,t,n){if(n!=="auto")return n;if(e!=null)return $r(e,t)?"category":"number"}function iP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Sf(e){for(var t=1;t{if(t!=null)return e.polarAxis.angleAxis[t]},dx=G([fV,GN],(e,t)=>{var n;if(e!=null)return e;var r=(n=kd(t,"angleAxis",aP.type))!==null&&n!==void 0?n:"category";return Sf(Sf({},aP),{},{type:r})}),dV=(e,t)=>e.polarAxis.radiusAxis[t],hx=G([dV,GN],(e,t)=>{var n;if(e!=null)return e;var r=(n=kd(t,"radiusAxis",oP.type))!==null&&n!==void 0?n:"category";return Sf(Sf({},oP),{},{type:r})}),Sd=e=>e.polarOptions,px=G([di,hi,zt],u9),u_=G([Sd,px],(e,t)=>{if(e!=null)return vr(e.innerRadius,t,0)}),c_=G([Sd,px],(e,t)=>{if(e!=null)return vr(e.outerRadius,t,t*.8)}),hV=e=>{if(e==null)return[0,0];var{startAngle:t,endAngle:n}=e;return[t,n]},f_=G([Sd],hV);G([dx,f_],wd);var d_=G([px,u_,c_],(e,t,n)=>{if(!(e==null||t==null||n==null))return[t,n]});G([hx,d_],wd);var h_=G([He,Sd,u_,c_,di,hi],(e,t,n,r,i,a)=>{if(!(e!=="centric"&&e!=="radial"||t==null||n==null||r==null)){var{cx:l,cy:u,startAngle:c,endAngle:f}=t;return{cx:vr(l,i,i/2),cy:vr(u,a,a/2),innerRadius:n,outerRadius:r,startAngle:c,endAngle:f,clockWise:!1}}}),Ft=(e,t)=>t,jd=(e,t,n)=>n;function Pd(e){return e==null?void 0:e.id}function p_(e,t,n){var{chartData:r=[]}=t,{allowDuplicatedCategory:i,dataKey:a}=n,l=new Map;return e.forEach(u=>{var c,f=(c=u.data)!==null&&c!==void 0?c:r;if(!(f==null||f.length===0)){var d=Pd(u);f.forEach((p,g)=>{var y=a==null||i?g:String(St(p,a,null)),x=St(p,u.dataKey,0),S;l.has(y)?S=l.get(y):S={},Object.assign(S,{[d]:x}),l.set(y,S)})}}),Array.from(l.values())}function Ed(e){return"stackId"in e&&e.stackId!=null&&e.dataKey!=null}var Cd=(e,t)=>e===t?!0:e==null||t==null?!1:e[0]===t[0]&&e[1]===t[1];function Od(e,t){return Array.isArray(e)&&Array.isArray(t)&&e.length===0&&t.length===0?!0:e===t}function pV(e,t){if(e.length===t.length){for(var n=0;n{var t=He(e);return t==="horizontal"?"xAxis":t==="vertical"?"yAxis":t==="centric"?"angleAxis":"radiusAxis"},Vo=e=>e.tooltip.settings.axisId;function mV(e){if(e in es)return es[e]();var t="scale".concat(_s(e));if(t in es)return es[t]()}function lP(e){var t=e.ticks,n=e.bandwidth,r=e.range(),i=[Math.min(...r),Math.max(...r)];return{domain:()=>e.domain(),range:(function(a){function l(){return a.apply(this,arguments)}return l.toString=function(){return a.toString()},l})(()=>i),rangeMin:()=>i[0],rangeMax:()=>i[1],isInRange(a){var l=i[0],u=i[1];return l<=u?a>=l&&a<=u:a>=u&&a<=l},bandwidth:n?()=>n.call(e):void 0,ticks:t?a=>t.call(e,a):void 0,map:(a,l)=>{var u=e(a);if(u!=null){if(e.bandwidth&&l!==null&&l!==void 0&&l.position){var c=e.bandwidth();switch(l.position){case"middle":u+=c/2;break;case"end":u+=c;break}}return u}}}}function sP(e,t,n){if(typeof e=="function")return lP(e.copy().domain(t).range(n));if(e!=null){var r=mV(e);if(r!=null)return r.domain(t).range(n),lP(r)}}var gV=(e,t)=>{if(t!=null)switch(e){case"linear":{if(!si(t)){for(var n,r,i=0;ir)&&(r=a))}return n!==void 0&&r!==void 0?[n,r]:void 0}return t}default:return t}};function uP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function jf(e){for(var t=1;te.cartesianAxis.xAxis[t],gi=(e,t)=>{var n=m_(e,t);return n??Mt},Dt={allowDataOverflow:!1,allowDecimals:!0,allowDuplicatedCategory:!0,angle:0,dataKey:void 0,domain:Ov,hide:!0,id:0,includeHidden:!1,interval:"preserveEnd",minTickGap:5,mirror:!1,name:void 0,orientation:"left",padding:{top:0,bottom:0},reversed:!1,scale:"auto",tick:!0,tickCount:5,tickFormatter:void 0,ticks:void 0,type:"number",unit:void 0,width:Ms},g_=(e,t)=>e.cartesianAxis.yAxis[t],vi=(e,t)=>{var n=g_(e,t);return n??Dt},bV={domain:[0,"auto"],includeHidden:!1,reversed:!1,allowDataOverflow:!1,allowDuplicatedCategory:!1,dataKey:void 0,id:0,name:"",range:[64,64],scale:"auto",type:"number",unit:""},mx=(e,t)=>{var n=e.cartesianAxis.zAxis[t];return n??bV},gn=(e,t,n)=>{switch(t){case"xAxis":return gi(e,n);case"yAxis":return vi(e,n);case"zAxis":return mx(e,n);case"angleAxis":return dx(e,n);case"radiusAxis":return hx(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},wV=(e,t,n)=>{switch(t){case"xAxis":return gi(e,n);case"yAxis":return vi(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},Us=(e,t,n)=>{switch(t){case"xAxis":return gi(e,n);case"yAxis":return vi(e,n);case"angleAxis":return dx(e,n);case"radiusAxis":return hx(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},v_=e=>e.graphicalItems.cartesianItems.some(t=>t.type==="bar")||e.graphicalItems.polarItems.some(t=>t.type==="radialBar");function y_(e,t){return n=>{switch(e){case"xAxis":return"xAxisId"in n&&n.xAxisId===t;case"yAxis":return"yAxisId"in n&&n.yAxisId===t;case"zAxis":return"zAxisId"in n&&n.zAxisId===t;case"angleAxis":return"angleAxisId"in n&&n.angleAxisId===t;case"radiusAxis":return"radiusAxisId"in n&&n.radiusAxisId===t;default:return!1}}}var Nd=e=>e.graphicalItems.cartesianItems,kV=G([Ft,jd],y_),x_=(e,t,n)=>e.filter(n).filter(r=>(t==null?void 0:t.includeHidden)===!0?!0:!r.hide),Ws=G([Nd,gn,kV],x_,{memoizeOptions:{resultEqualityCheck:Od}}),b_=G([Ws],e=>e.filter(t=>t.type==="area"||t.type==="bar").filter(Ed)),w_=e=>e.filter(t=>!("stackId"in t)||t.stackId===void 0),SV=G([Ws],w_),k_=e=>e.map(t=>t.data).filter(Boolean).flat(1),jV=G([Ws],k_,{memoizeOptions:{resultEqualityCheck:Od}}),S_=(e,t)=>{var{chartData:n=[],dataStartIndex:r,dataEndIndex:i}=t;return e.length>0?e:n.slice(r,i+1)},gx=G([jV,VA],S_),j_=(e,t,n)=>(t==null?void 0:t.dataKey)!=null?e.map(r=>({value:St(r,t.dataKey)})):n.length>0?n.map(r=>r.dataKey).flatMap(r=>e.map(i=>({value:St(i,r)}))):e.map(r=>({value:r})),Ad=G([gx,gn,Ws],j_);function P_(e,t){switch(e){case"xAxis":return t.direction==="x";case"yAxis":return t.direction==="y";default:return!1}}function Tc(e){if(Dr(e)||e instanceof Date){var t=Number(e);if(Me(t))return t}}function cP(e){if(Array.isArray(e)){var t=[Tc(e[0]),Tc(e[1])];return si(t)?t:void 0}var n=Tc(e);if(n!=null)return[n,n]}function ui(e){return e.map(Tc).filter(Pn)}function PV(e,t,n){return!n||typeof t!="number"||gr(t)?[]:n.length?ui(n.flatMap(r=>{var i=St(e,r.dataKey),a,l;if(Array.isArray(i)?[a,l]=i:a=l=i,!(!Me(a)||!Me(l)))return[t-a,t+l]})):[]}var At=e=>{var t=Bt(e),n=Vo(e);return Us(e,t,n)},qs=G([At],e=>e==null?void 0:e.dataKey),EV=G([b_,VA,At],p_),E_=(e,t,n,r)=>{var i={},a=t.reduce((l,u)=>{if(u.stackId==null)return l;var c=l[u.stackId];return c==null&&(c=[]),c.push(u),l[u.stackId]=c,l},i);return Object.fromEntries(Object.entries(a).map(l=>{var[u,c]=l,f=r?[...c].reverse():c,d=f.map(Pd);return[u,{stackedData:t8(e,d,n),graphicalItems:f}]}))},Pf=G([EV,b_,bd,l_],E_),C_=(e,t,n,r)=>{var{dataStartIndex:i,dataEndIndex:a}=t;if(r==null&&n!=="zAxis"){var l=a8(e,i,a);if(!(l!=null&&l[0]===0&&l[1]===0))return l}},CV=G([gn],e=>e.allowDataOverflow),vx=e=>{var t;if(e==null||!("domain"in e))return Ov;if(e.domain!=null)return e.domain;if("ticks"in e&&e.ticks!=null){if(e.type==="number"){var n=ui(e.ticks);return[Math.min(...n),Math.max(...n)]}if(e.type==="category")return e.ticks.map(String)}return(t=e==null?void 0:e.domain)!==null&&t!==void 0?t:Ov},O_=G([gn],vx),N_=G([O_,CV],GA),OV=G([Pf,mi,Ft,N_],C_,{memoizeOptions:{resultEqualityCheck:Cd}}),yx=e=>e.errorBars,NV=(e,t,n)=>e.flatMap(r=>t[r.id]).filter(Boolean).filter(r=>P_(n,r)),Ef=function(){for(var t=arguments.length,n=new Array(t),r=0;r{var a,l;if(n.length>0&&e.forEach(u=>{n.forEach(c=>{var f,d,p=(f=r[c.id])===null||f===void 0?void 0:f.filter(P=>P_(i,P)),g=St(u,(d=t.dataKey)!==null&&d!==void 0?d:c.dataKey),y=PV(u,g,p);if(y.length>=2){var x=Math.min(...y),S=Math.max(...y);(a==null||xl)&&(l=S)}var w=cP(g);w!=null&&(a=a==null?w[0]:Math.min(a,w[0]),l=l==null?w[1]:Math.max(l,w[1]))})}),(t==null?void 0:t.dataKey)!=null&&e.forEach(u=>{var c=cP(St(u,t.dataKey));c!=null&&(a=a==null?c[0]:Math.min(a,c[0]),l=l==null?c[1]:Math.max(l,c[1]))}),Me(a)&&Me(l))return[a,l]},AV=G([gx,gn,SV,yx,Ft],A_,{memoizeOptions:{resultEqualityCheck:Cd}});function _V(e){var{value:t}=e;if(Dr(t)||t instanceof Date)return t}var IV=(e,t,n)=>{var r=e.map(_V).filter(i=>i!=null);return n&&(t.dataKey==null||t.allowDuplicatedCategory&&qO(r))?fA(0,e.length):t.allowDuplicatedCategory?r:Array.from(new Set(r))},__=e=>e.referenceElements.dots,Ko=(e,t,n)=>e.filter(r=>r.ifOverflow==="extendDomain").filter(r=>t==="xAxis"?r.xAxisId===n:r.yAxisId===n),TV=G([__,Ft,jd],Ko),I_=e=>e.referenceElements.areas,MV=G([I_,Ft,jd],Ko),T_=e=>e.referenceElements.lines,DV=G([T_,Ft,jd],Ko),M_=(e,t)=>{if(e!=null){var n=ui(e.map(r=>t==="xAxis"?r.x:r.y));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},LV=G(TV,Ft,M_),D_=(e,t)=>{if(e!=null){var n=ui(e.flatMap(r=>[t==="xAxis"?r.x1:r.y1,t==="xAxis"?r.x2:r.y2]));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},RV=G([MV,Ft],D_);function zV(e){var t;if(e.x!=null)return ui([e.x]);var n=(t=e.segment)===null||t===void 0?void 0:t.map(r=>r.x);return n==null||n.length===0?[]:ui(n)}function $V(e){var t;if(e.y!=null)return ui([e.y]);var n=(t=e.segment)===null||t===void 0?void 0:t.map(r=>r.y);return n==null||n.length===0?[]:ui(n)}var L_=(e,t)=>{if(e!=null){var n=e.flatMap(r=>t==="xAxis"?zV(r):$V(r));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},FV=G([DV,Ft],L_),BV=G(LV,FV,RV,(e,t,n)=>Ef(e,n,t)),R_=(e,t,n,r,i,a,l,u)=>{if(n!=null)return n;var c=l==="vertical"&&u==="xAxis"||l==="horizontal"&&u==="yAxis",f=c?Ef(r,a,i):Ef(a,i);return ZH(t,f,e.allowDataOverflow)},UV=G([gn,O_,N_,OV,AV,BV,He,Ft],R_,{memoizeOptions:{resultEqualityCheck:Cd}}),WV=[0,1],z_=(e,t,n,r,i,a,l)=>{if(!((e==null||n==null||n.length===0)&&l===void 0)){var{dataKey:u,type:c}=e,f=$r(t,a);if(f&&u==null){var d;return fA(0,(d=n==null?void 0:n.length)!==null&&d!==void 0?d:0)}return c==="category"?IV(r,e,f):i==="expand"?WV:l}},xx=G([gn,He,gx,Ad,bd,Ft,UV],z_);function qV(e){return e in es}var $_=(e,t,n)=>{if(e!=null){var{scale:r,type:i}=e;if(r==="auto")return i==="category"&&n&&(n.indexOf("LineChart")>=0||n.indexOf("AreaChart")>=0||n.indexOf("ComposedChart")>=0&&!t)?"point":i==="category"?"band":"linear";if(typeof r=="string"){var a="scale".concat(_s(r));return qV(a)?a:"point"}}},Go=G([gn,v_,ux],$_);function bx(e,t,n,r){if(!(n==null||r==null))return typeof e.scale=="function"?sP(e.scale,n,r):sP(t,n,r)}var F_=(e,t,n)=>{var r=vx(t);if(!(n!=="auto"&&n!=="linear")){if(t!=null&&t.tickCount&&Array.isArray(r)&&(r[0]==="auto"||r[1]==="auto")&&si(e))return rV(e,t.tickCount,t.allowDecimals);if(t!=null&&t.tickCount&&t.type==="number"&&si(e))return iV(e,t.tickCount,t.allowDecimals)}},wx=G([xx,Us,Go],F_),B_=(e,t,n,r)=>{if(r!=="angleAxis"&&(e==null?void 0:e.type)==="number"&&si(t)&&Array.isArray(n)&&n.length>0){var i,a,l=t[0],u=(i=n[0])!==null&&i!==void 0?i:0,c=t[1],f=(a=n[n.length-1])!==null&&a!==void 0?a:0;return[Math.min(l,u),Math.max(c,f)]}return t},HV=G([gn,xx,wx,Ft],B_),VV=G(Ad,gn,(e,t)=>{if(!(!t||t.type!=="number")){var n=1/0,r=Array.from(ui(e.map(p=>p.value))).sort((p,g)=>p-g),i=r[0],a=r[r.length-1];if(i==null||a==null)return 1/0;var l=a-i;if(l===0)return 1/0;for(var u=0;ui,(e,t,n,r,i)=>{if(!Me(e))return 0;var a=t==="vertical"?r.height:r.width;if(i==="gap")return e*a/2;if(i==="no-gap"){var l=vr(n,e*a),u=e*a/2;return u-l-(u-l)/a*l}return 0}),KV=(e,t,n)=>{var r=gi(e,t);return r==null||typeof r.padding!="string"?0:U_(e,"xAxis",t,n,r.padding)},GV=(e,t,n)=>{var r=vi(e,t);return r==null||typeof r.padding!="string"?0:U_(e,"yAxis",t,n,r.padding)},YV=G(gi,KV,(e,t)=>{var n,r;if(e==null)return{left:0,right:0};var{padding:i}=e;return typeof i=="string"?{left:t,right:t}:{left:((n=i.left)!==null&&n!==void 0?n:0)+t,right:((r=i.right)!==null&&r!==void 0?r:0)+t}}),XV=G(vi,GV,(e,t)=>{var n,r;if(e==null)return{top:0,bottom:0};var{padding:i}=e;return typeof i=="string"?{top:t,bottom:t}:{top:((n=i.top)!==null&&n!==void 0?n:0)+t,bottom:((r=i.bottom)!==null&&r!==void 0?r:0)+t}}),QV=G([zt,YV,ld,od,(e,t,n)=>n],(e,t,n,r,i)=>{var{padding:a}=r;return i?[a.left,n.width-a.right]:[e.left+t.left,e.left+e.width-t.right]}),ZV=G([zt,He,XV,ld,od,(e,t,n)=>n],(e,t,n,r,i,a)=>{var{padding:l}=i;return a?[r.height-l.bottom,l.top]:t==="horizontal"?[e.top+e.height-n.bottom,e.top+n.top]:[e.top+n.top,e.top+e.height-n.bottom]}),Hs=(e,t,n,r)=>{var i;switch(t){case"xAxis":return QV(e,n,r);case"yAxis":return ZV(e,n,r);case"zAxis":return(i=mx(e,n))===null||i===void 0?void 0:i.range;case"angleAxis":return f_(e);case"radiusAxis":return d_(e,n);default:return}},W_=G([gn,Hs],wd),JV=G([Go,HV],gV),_d=G([gn,Go,JV,W_],bx);G([Ws,yx,Ft],NV);function q_(e,t){return e.idt.id?1:0}var Id=(e,t)=>t,Td=(e,t,n)=>n,eK=G(id,Id,Td,(e,t,n)=>e.filter(r=>r.orientation===t).filter(r=>r.mirror===n).sort(q_)),tK=G(ad,Id,Td,(e,t,n)=>e.filter(r=>r.orientation===t).filter(r=>r.mirror===n).sort(q_)),H_=(e,t)=>({width:e.width,height:t.height}),nK=(e,t)=>{var n=typeof t.width=="number"?t.width:Ms;return{width:n,height:e.height}},V_=G(zt,gi,H_),rK=(e,t,n)=>{switch(t){case"top":return e.top;case"bottom":return n-e.bottom;default:return 0}},iK=(e,t,n)=>{switch(t){case"left":return e.left;case"right":return n-e.right;default:return 0}},aK=G(hi,zt,eK,Id,Td,(e,t,n,r,i)=>{var a={},l;return n.forEach(u=>{var c=H_(t,u);l==null&&(l=rK(t,r,e));var f=r==="top"&&!i||r==="bottom"&&i;a[u.id]=l-Number(f)*c.height,l+=(f?-1:1)*c.height}),a}),oK=G(di,zt,tK,Id,Td,(e,t,n,r,i)=>{var a={},l;return n.forEach(u=>{var c=nK(t,u);l==null&&(l=iK(t,r,e));var f=r==="left"&&!i||r==="right"&&i;a[u.id]=l-Number(f)*c.width,l+=(f?-1:1)*c.width}),a}),lK=(e,t)=>{var n=gi(e,t);if(n!=null)return aK(e,n.orientation,n.mirror)},sK=G([zt,gi,lK,(e,t)=>t],(e,t,n,r)=>{if(t!=null){var i=n==null?void 0:n[r];return i==null?{x:e.left,y:0}:{x:e.left,y:i}}}),uK=(e,t)=>{var n=vi(e,t);if(n!=null)return oK(e,n.orientation,n.mirror)},cK=G([zt,vi,uK,(e,t)=>t],(e,t,n,r)=>{if(t!=null){var i=n==null?void 0:n[r];return i==null?{x:0,y:e.top}:{x:i,y:e.top}}}),K_=G(zt,vi,(e,t)=>{var n=typeof t.width=="number"?t.width:Ms;return{width:n,height:e.height}}),fP=(e,t,n)=>{switch(t){case"xAxis":return V_(e,n).width;case"yAxis":return K_(e,n).height;default:return}},G_=(e,t,n,r)=>{if(n!=null){var{allowDuplicatedCategory:i,type:a,dataKey:l}=n,u=$r(e,r),c=t.map(f=>f.value);if(l&&u&&a==="category"&&i&&qO(c))return c}},kx=G([He,Ad,gn,Ft],G_),Y_=(e,t,n,r)=>{if(!(n==null||n.dataKey==null)){var{type:i,scale:a}=n,l=$r(e,r);if(l&&(i==="number"||a!=="auto"))return t.map(u=>u.value)}},Sx=G([He,Ad,Us,Ft],Y_),dP=G([He,wV,Go,_d,kx,Sx,Hs,wx,Ft],(e,t,n,r,i,a,l,u,c)=>{if(t!=null){var f=$r(e,c);return{angle:t.angle,interval:t.interval,minTickGap:t.minTickGap,orientation:t.orientation,tick:t.tick,tickCount:t.tickCount,tickFormatter:t.tickFormatter,ticks:t.ticks,type:t.type,unit:t.unit,axisType:c,categoricalDomain:a,duplicateDomain:i,isCategorical:f,niceTicks:u,range:l,realScaleType:n,scale:r}}}),fK=(e,t,n,r,i,a,l,u,c)=>{if(!(t==null||r==null)){var f=$r(e,c),{type:d,ticks:p,tickCount:g}=t,y=n==="scaleBand"&&typeof r.bandwidth=="function"?r.bandwidth()/2:2,x=d==="category"&&r.bandwidth?r.bandwidth()/y:0;x=c==="angleAxis"&&a!=null&&a.length>=2?jn(a[0]-a[1])*2*x:x;var S=p||i;return S?S.map((w,P)=>{var C=l?l.indexOf(w):w,O=r.map(C);return Me(O)?{index:P,coordinate:O+x,value:w,offset:x}:null}).filter(Pn):f&&u?u.map((w,P)=>{var C=r.map(w);return Me(C)?{coordinate:C+x,value:w,index:P,offset:x}:null}).filter(Pn):r.ticks?r.ticks(g).map((w,P)=>{var C=r.map(w);return Me(C)?{coordinate:C+x,value:w,index:P,offset:x}:null}).filter(Pn):r.domain().map((w,P)=>{var C=r.map(w);return Me(C)?{coordinate:C+x,value:l?l[w]:w,index:P,offset:x}:null}).filter(Pn)}},X_=G([He,Us,Go,_d,wx,Hs,kx,Sx,Ft],fK),dK=(e,t,n,r,i,a,l)=>{if(!(t==null||n==null||r==null||r[0]===r[1])){var u=$r(e,l),{tickCount:c}=t,f=0;return f=l==="angleAxis"&&(r==null?void 0:r.length)>=2?jn(r[0]-r[1])*2*f:f,u&&a?a.map((d,p)=>{var g=n.map(d);return Me(g)?{coordinate:g+f,value:d,index:p,offset:f}:null}).filter(Pn):n.ticks?n.ticks(c).map((d,p)=>{var g=n.map(d);return Me(g)?{coordinate:g+f,value:d,index:p,offset:f}:null}).filter(Pn):n.domain().map((d,p)=>{var g=n.map(d);return Me(g)?{coordinate:g+f,value:i?i[d]:d,index:p,offset:f}:null}).filter(Pn)}},Qi=G([He,Us,_d,Hs,kx,Sx,Ft],dK),Zi=G(gn,_d,(e,t)=>{if(!(e==null||t==null))return jf(jf({},e),{},{scale:t})}),hK=G([gn,Go,xx,W_],bx);G((e,t,n)=>mx(e,n),hK,(e,t)=>{if(!(e==null||t==null))return jf(jf({},e),{},{scale:t})});var pK=G([He,id,ad],(e,t,n)=>{switch(e){case"horizontal":return t.some(r=>r.reversed)?"right-to-left":"left-to-right";case"vertical":return n.some(r=>r.reversed)?"bottom-to-top":"top-to-bottom";case"centric":case"radial":return"left-to-right";default:return}}),Q_=e=>e.options.defaultTooltipEventType,Z_=e=>e.options.validateTooltipEventTypes;function J_(e,t,n){if(e==null)return t;var r=e?"axis":"item";return n==null?t:n.includes(r)?r:t}function jx(e,t){var n=Q_(e),r=Z_(e);return J_(t,n,r)}function mK(e){return Pe(t=>jx(t,e))}var eI=(e,t)=>{var n,r=Number(t);if(!(gr(r)||t==null))return r>=0?e==null||(n=e[r])===null||n===void 0?void 0:n.value:void 0},gK=e=>e.tooltip.settings,Hi={active:!1,index:null,dataKey:void 0,graphicalItemId:void 0,coordinate:void 0},vK={itemInteraction:{click:Hi,hover:Hi},axisInteraction:{click:Hi,hover:Hi},keyboardInteraction:Hi,syncInteraction:{active:!1,index:null,dataKey:void 0,label:void 0,coordinate:void 0,sourceViewBox:void 0,graphicalItemId:void 0},tooltipItemPayloads:[],settings:{shared:void 0,trigger:"hover",axisId:0,active:!1,defaultIndex:void 0}},tI=On({name:"tooltip",initialState:vK,reducers:{addTooltipEntrySettings:{reducer(e,t){e.tooltipItemPayloads.push(t.payload)},prepare:at()},replaceTooltipEntrySettings:{reducer(e,t){var{prev:n,next:r}=t.payload,i=mr(e).tooltipItemPayloads.indexOf(n);i>-1&&(e.tooltipItemPayloads[i]=r)},prepare:at()},removeTooltipEntrySettings:{reducer(e,t){var n=mr(e).tooltipItemPayloads.indexOf(t.payload);n>-1&&e.tooltipItemPayloads.splice(n,1)},prepare:at()},setTooltipSettingsState(e,t){e.settings=t.payload},setActiveMouseOverItemIndex(e,t){e.syncInteraction.active=!1,e.keyboardInteraction.active=!1,e.itemInteraction.hover.active=!0,e.itemInteraction.hover.index=t.payload.activeIndex,e.itemInteraction.hover.dataKey=t.payload.activeDataKey,e.itemInteraction.hover.graphicalItemId=t.payload.activeGraphicalItemId,e.itemInteraction.hover.coordinate=t.payload.activeCoordinate},mouseLeaveChart(e){e.itemInteraction.hover.active=!1,e.axisInteraction.hover.active=!1},mouseLeaveItem(e){e.itemInteraction.hover.active=!1},setActiveClickItemIndex(e,t){e.syncInteraction.active=!1,e.itemInteraction.click.active=!0,e.keyboardInteraction.active=!1,e.itemInteraction.click.index=t.payload.activeIndex,e.itemInteraction.click.dataKey=t.payload.activeDataKey,e.itemInteraction.click.graphicalItemId=t.payload.activeGraphicalItemId,e.itemInteraction.click.coordinate=t.payload.activeCoordinate},setMouseOverAxisIndex(e,t){e.syncInteraction.active=!1,e.axisInteraction.hover.active=!0,e.keyboardInteraction.active=!1,e.axisInteraction.hover.index=t.payload.activeIndex,e.axisInteraction.hover.dataKey=t.payload.activeDataKey,e.axisInteraction.hover.coordinate=t.payload.activeCoordinate},setMouseClickAxisIndex(e,t){e.syncInteraction.active=!1,e.keyboardInteraction.active=!1,e.axisInteraction.click.active=!0,e.axisInteraction.click.index=t.payload.activeIndex,e.axisInteraction.click.dataKey=t.payload.activeDataKey,e.axisInteraction.click.coordinate=t.payload.activeCoordinate},setSyncInteraction(e,t){e.syncInteraction=t.payload},setKeyboardInteraction(e,t){e.keyboardInteraction.active=t.payload.active,e.keyboardInteraction.index=t.payload.activeIndex,e.keyboardInteraction.coordinate=t.payload.activeCoordinate}}}),{addTooltipEntrySettings:yK,replaceTooltipEntrySettings:xK,removeTooltipEntrySettings:bK,setTooltipSettingsState:wK,setActiveMouseOverItemIndex:nI,mouseLeaveItem:kK,mouseLeaveChart:rI,setActiveClickItemIndex:SK,setMouseOverAxisIndex:iI,setMouseClickAxisIndex:jK,setSyncInteraction:Nv,setKeyboardInteraction:Av}=tI.actions,PK=tI.reducer;function hP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Sc(e){for(var t=1;t{if(t==null)return Hi;var i=NK(e,t,n);if(i==null)return Hi;if(i.active)return i;if(e.keyboardInteraction.active)return e.keyboardInteraction;if(e.syncInteraction.active&&e.syncInteraction.index!=null)return e.syncInteraction;var a=e.settings.active===!0;if(AK(i)){if(a)return Sc(Sc({},i),{},{active:!0})}else if(r!=null)return{active:!0,coordinate:void 0,dataKey:void 0,index:r,graphicalItemId:void 0};return Sc(Sc({},Hi),{},{coordinate:i.coordinate})};function _K(e){if(typeof e=="number")return Number.isFinite(e)?e:void 0;if(e instanceof Date){var t=e.valueOf();return Number.isFinite(t)?t:void 0}var n=Number(e);return Number.isFinite(n)?n:void 0}function IK(e,t){var n=_K(e),r=t[0],i=t[1];if(n===void 0)return!1;var a=Math.min(r,i),l=Math.max(r,i);return n>=a&&n<=l}function TK(e,t,n){if(n==null||t==null)return!0;var r=St(e,t);return r==null||!si(n)?!0:IK(r,n)}var Px=(e,t,n,r)=>{var i=e==null?void 0:e.index;if(i==null)return null;var a=Number(i);if(!Me(a))return i;var l=0,u=1/0;t.length>0&&(u=t.length-1);var c=Math.max(l,Math.min(a,u)),f=t[c];return f==null||TK(f,n,r)?String(c):null},oI=(e,t,n,r,i,a,l)=>{if(a!=null){var u=l[0],c=u==null?void 0:u.getPosition(a);if(c!=null)return c;var f=i==null?void 0:i[Number(a)];if(f)switch(n){case"horizontal":return{x:f.coordinate,y:(r.top+t)/2};default:return{x:(r.left+e)/2,y:f.coordinate}}}},lI=(e,t,n,r)=>{if(t==="axis")return e.tooltipItemPayloads;if(e.tooltipItemPayloads.length===0)return[];var i;if(n==="hover"?i=e.itemInteraction.hover.graphicalItemId:i=e.itemInteraction.click.graphicalItemId,i==null&&r!=null){var a=e.tooltipItemPayloads[0];return a!=null?[a]:[]}return e.tooltipItemPayloads.filter(l=>{var u;return((u=l.settings)===null||u===void 0?void 0:u.graphicalItemId)===i})},sI=e=>e.options.tooltipPayloadSearcher,Yo=e=>e.tooltip;function pP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function mP(e){for(var t=1;t{if(!(t==null||a==null)){var{chartData:u,computedData:c,dataStartIndex:f,dataEndIndex:d}=n,p=[];return e.reduce((g,y)=>{var x,{dataDefinedOnItem:S,settings:w}=y,P=RK(S,u),C=Array.isArray(P)?LN(P,f,d):P,O=(x=w==null?void 0:w.dataKey)!==null&&x!==void 0?x:r,A=w==null?void 0:w.nameKey,I;if(r&&Array.isArray(C)&&!Array.isArray(C[0])&&l==="axis"?I=HO(C,r,i):I=a(C,t,c,A),Array.isArray(I))I.forEach(L=>{var F=mP(mP({},w),{},{name:L.name,unit:L.unit,color:void 0,fill:void 0});g.push(mS({tooltipEntrySettings:F,dataKey:L.dataKey,payload:L.payload,value:St(L.payload,L.dataKey),name:L.name}))});else{var E;g.push(mS({tooltipEntrySettings:w,dataKey:O,payload:I,value:St(I,O),name:(E=St(I,A))!==null&&E!==void 0?E:w==null?void 0:w.name}))}return g},p)}},Ex=G([At,v_,ux],$_),zK=G([e=>e.graphicalItems.cartesianItems,e=>e.graphicalItems.polarItems],(e,t)=>[...e,...t]),$K=G([Bt,Vo],y_),Xo=G([zK,At,$K],x_,{memoizeOptions:{resultEqualityCheck:Od}}),FK=G([Xo],e=>e.filter(Ed)),BK=G([Xo],k_,{memoizeOptions:{resultEqualityCheck:Od}}),Qo=G([BK,mi],S_),UK=G([FK,mi,At],p_),Cx=G([Qo,At,Xo],j_),cI=G([At],vx),WK=G([At],e=>e.allowDataOverflow),fI=G([cI,WK],GA),qK=G([Xo],e=>e.filter(Ed)),HK=G([UK,qK,bd,l_],E_),VK=G([HK,mi,Bt,fI],C_),KK=G([Xo],w_),GK=G([Qo,At,KK,yx,Bt],A_,{memoizeOptions:{resultEqualityCheck:Cd}}),YK=G([__,Bt,Vo],Ko),XK=G([YK,Bt],M_),QK=G([I_,Bt,Vo],Ko),ZK=G([QK,Bt],D_),JK=G([T_,Bt,Vo],Ko),e7=G([JK,Bt],L_),t7=G([XK,e7,ZK],Ef),n7=G([At,cI,fI,VK,GK,t7,He,Bt],R_),Vs=G([At,He,Qo,Cx,bd,Bt,n7],z_),r7=G([Vs,At,Ex],F_),i7=G([At,Vs,r7,Bt],B_),dI=e=>{var t=Bt(e),n=Vo(e),r=!1;return Hs(e,t,n,r)},hI=G([At,dI],wd),pI=G([At,Ex,i7,hI],bx),a7=G([He,Cx,At,Bt],G_),o7=G([He,Cx,At,Bt],Y_),l7=(e,t,n,r,i,a,l,u)=>{if(t){var{type:c}=t,f=$r(e,u);if(r){var d=n==="scaleBand"&&r.bandwidth?r.bandwidth()/2:2,p=c==="category"&&r.bandwidth?r.bandwidth()/d:0;return p=u==="angleAxis"&&i!=null&&(i==null?void 0:i.length)>=2?jn(i[0]-i[1])*2*p:p,f&&l?l.map((g,y)=>{var x=r.map(g);return Me(x)?{coordinate:x+p,value:g,index:y,offset:p}:null}).filter(Pn):r.domain().map((g,y)=>{var x=r.map(g);return Me(x)?{coordinate:x+p,value:a?a[g]:g,index:y,offset:p}:null}).filter(Pn)}}},yi=G([He,At,Ex,pI,dI,a7,o7,Bt],l7),Ox=G([Q_,Z_,gK],(e,t,n)=>J_(n.shared,e,t)),mI=e=>e.tooltip.settings.trigger,Nx=e=>e.tooltip.settings.defaultIndex,Ks=G([Yo,Ox,mI,Nx],aI),La=G([Ks,Qo,qs,Vs],Px),gI=G([yi,La],eI),vI=G([Ks],e=>{if(e)return e.dataKey});G([Ks],e=>{if(e)return e.graphicalItemId});var yI=G([Yo,Ox,mI,Nx],lI),s7=G([di,hi,He,zt,yi,Nx,yI],oI),u7=G([Ks,s7],(e,t)=>e!=null&&e.coordinate?e.coordinate:t),c7=G([Ks],e=>{var t;return(t=e==null?void 0:e.active)!==null&&t!==void 0?t:!1}),f7=G([yI,La,mi,qs,gI,sI,Ox],uI),d7=G([f7],e=>{if(e!=null){var t=e.map(n=>n.payload).filter(n=>n!=null);return Array.from(new Set(t))}});function gP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function vP(e){for(var t=1;tPe(At),v7=()=>{var e=g7(),t=Pe(yi),n=Pe(pI);return Do(!e||!n?void 0:vP(vP({},e),{},{scale:n}),t)};function yP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function xo(e){for(var t=1;t{var i=t.find(a=>a&&a.index===n);if(i){if(e==="horizontal")return{x:i.coordinate,y:r.chartY};if(e==="vertical")return{x:r.chartX,y:i.coordinate}}return{x:0,y:0}},k7=(e,t,n,r)=>{var i=t.find(f=>f&&f.index===n);if(i){if(e==="centric"){var a=i.coordinate,{radius:l}=r;return xo(xo(xo({},r),Xt(r.cx,r.cy,l,a)),{},{angle:a,radius:l})}var u=i.coordinate,{angle:c}=r;return xo(xo(xo({},r),Xt(r.cx,r.cy,u,c)),{},{angle:c,radius:u})}return{angle:0,clockWise:!1,cx:0,cy:0,endAngle:0,innerRadius:0,outerRadius:0,radius:0,startAngle:0,x:0,y:0}};function S7(e,t){var{chartX:n,chartY:r}=e;return n>=t.left&&n<=t.left+t.width&&r>=t.top&&r<=t.top+t.height}var xI=(e,t,n,r,i)=>{var a,l=(a=t==null?void 0:t.length)!==null&&a!==void 0?a:0;if(l<=1||e==null)return 0;if(r==="angleAxis"&&i!=null&&Math.abs(Math.abs(i[1]-i[0])-360)<=1e-6)for(var u=0;u0?(c=n[u-1])===null||c===void 0?void 0:c.coordinate:(f=n[l-1])===null||f===void 0?void 0:f.coordinate,x=(d=n[u])===null||d===void 0?void 0:d.coordinate,S=u>=l-1?(p=n[0])===null||p===void 0?void 0:p.coordinate:(g=n[u+1])===null||g===void 0?void 0:g.coordinate,w=void 0;if(!(y==null||x==null||S==null))if(jn(x-y)!==jn(S-x)){var P=[];if(jn(S-x)===jn(i[1]-i[0])){w=S;var C=x+i[1]-i[0];P[0]=Math.min(C,(C+y)/2),P[1]=Math.max(C,(C+y)/2)}else{w=y;var O=S+i[1]-i[0];P[0]=Math.min(x,(O+x)/2),P[1]=Math.max(x,(O+x)/2)}var A=[Math.min(x,(w+x)/2),Math.max(x,(w+x)/2)];if(e>A[0]&&e<=A[1]||e>=P[0]&&e<=P[1]){var I;return(I=n[u])===null||I===void 0?void 0:I.index}}else{var E=Math.min(y,S),L=Math.max(y,S);if(e>(E+x)/2&&e<=(L+x)/2){var F;return(F=n[u])===null||F===void 0?void 0:F.index}}}else if(t)for(var H=0;H(R.coordinate+M.coordinate)/2||H>0&&H(R.coordinate+M.coordinate)/2&&e<=(R.coordinate+W.coordinate)/2)return R.index}}return-1},bI=()=>Pe(ux),Ax=(e,t)=>t,wI=(e,t,n)=>n,_x=(e,t,n,r)=>r,j7=G(yi,e=>Kf(e,t=>t.coordinate)),Ix=G([Yo,Ax,wI,_x],aI),Tx=G([Ix,Qo,qs,Vs],Px),P7=(e,t,n)=>{if(t!=null){var r=Yo(e);return t==="axis"?n==="hover"?r.axisInteraction.hover.dataKey:r.axisInteraction.click.dataKey:n==="hover"?r.itemInteraction.hover.dataKey:r.itemInteraction.click.dataKey}},kI=G([Yo,Ax,wI,_x],lI),Cf=G([di,hi,He,zt,yi,_x,kI],oI),E7=G([Ix,Cf],(e,t)=>{var n;return(n=e.coordinate)!==null&&n!==void 0?n:t}),SI=G([yi,Tx],eI),C7=G([kI,Tx,mi,qs,SI,sI,Ax],uI),O7=G([Ix,Tx],(e,t)=>({isActive:e.active&&t!=null,activeIndex:t})),N7=(e,t,n,r,i,a,l)=>{if(!(!e||!n||!r||!i)&&S7(e,l)){var u=o8(e,t),c=xI(u,a,i,n,r),f=w7(t,i,c,e);return{activeIndex:String(c),activeCoordinate:f}}},A7=(e,t,n,r,i,a,l)=>{if(!(!e||!r||!i||!a||!n)){var u=p9(e,n);if(u){var c=l8(u,t),f=xI(c,l,a,r,i),d=k7(t,a,f,u);return{activeIndex:String(f),activeCoordinate:d}}}},_7=(e,t,n,r,i,a,l,u)=>{if(!(!e||!t||!r||!i||!a))return t==="horizontal"||t==="vertical"?N7(e,t,r,i,a,l,u):A7(e,t,n,r,i,a,l)},I7=G(e=>e.zIndex.zIndexMap,(e,t)=>t,(e,t,n)=>n,(e,t,n)=>{if(t!=null){var r=e[t];if(r!=null)return n?r.panoramaElement:r.element}}),T7=G(e=>e.zIndex.zIndexMap,e=>{var t=Object.keys(e).map(r=>parseInt(r,10)).concat(Object.values(Rt)),n=Array.from(new Set(t));return n.sort((r,i)=>r-i)},{memoizeOptions:{resultEqualityCheck:pV}});function xP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function bP(e){for(var t=1;tbP(bP({},e),{},{[t]:{element:void 0,panoramaElement:void 0,consumers:0}}),R7)},$7=new Set(Object.values(Rt));function F7(e){return $7.has(e)}var jI=On({name:"zIndex",initialState:z7,reducers:{registerZIndexPortal:{reducer:(e,t)=>{var{zIndex:n}=t.payload;e.zIndexMap[n]?e.zIndexMap[n].consumers+=1:e.zIndexMap[n]={consumers:1,element:void 0,panoramaElement:void 0}},prepare:at()},unregisterZIndexPortal:{reducer:(e,t)=>{var{zIndex:n}=t.payload;e.zIndexMap[n]&&(e.zIndexMap[n].consumers-=1,e.zIndexMap[n].consumers<=0&&!F7(n)&&delete e.zIndexMap[n])},prepare:at()},registerZIndexPortalElement:{reducer:(e,t)=>{var{zIndex:n,element:r,isPanorama:i}=t.payload;e.zIndexMap[n]?i?e.zIndexMap[n].panoramaElement=r:e.zIndexMap[n].element=r:e.zIndexMap[n]={consumers:0,element:i?void 0:r,panoramaElement:i?r:void 0}},prepare:at()},unregisterZIndexPortalElement:{reducer:(e,t)=>{var{zIndex:n}=t.payload;e.zIndexMap[n]&&(t.payload.isPanorama?e.zIndexMap[n].panoramaElement=void 0:e.zIndexMap[n].element=void 0)},prepare:at()}}}),{registerZIndexPortal:B7,unregisterZIndexPortal:U7,registerZIndexPortalElement:W7,unregisterZIndexPortalElement:q7}=jI.actions,H7=jI.reducer;function rr(e){var{zIndex:t,children:n}=e,r=$8(),i=r&&t!==void 0&&t!==0,a=on(),l=yt();k.useLayoutEffect(()=>i?(l(B7({zIndex:t})),()=>{l(U7({zIndex:t}))}):Fa,[l,t,i]);var u=Pe(c=>I7(c,t,a));return i?u?EO.createPortal(n,u):null:n}function _v(){return _v=Object.assign?Object.assign.bind():function(e){for(var t=1;tk.useContext(PI),dg={exports:{}},kP;function J7(){return kP||(kP=1,(function(e){var t=Object.prototype.hasOwnProperty,n="~";function r(){}Object.create&&(r.prototype=Object.create(null),new r().__proto__||(n=!1));function i(c,f,d){this.fn=c,this.context=f,this.once=d||!1}function a(c,f,d,p,g){if(typeof d!="function")throw new TypeError("The listener must be a function");var y=new i(d,p||c,g),x=n?n+f:f;return c._events[x]?c._events[x].fn?c._events[x]=[c._events[x],y]:c._events[x].push(y):(c._events[x]=y,c._eventsCount++),c}function l(c,f){--c._eventsCount===0?c._events=new r:delete c._events[f]}function u(){this._events=new r,this._eventsCount=0}u.prototype.eventNames=function(){var f=[],d,p;if(this._eventsCount===0)return f;for(p in d=this._events)t.call(d,p)&&f.push(n?p.slice(1):p);return Object.getOwnPropertySymbols?f.concat(Object.getOwnPropertySymbols(d)):f},u.prototype.listeners=function(f){var d=n?n+f:f,p=this._events[d];if(!p)return[];if(p.fn)return[p.fn];for(var g=0,y=p.length,x=new Array(y);g{if(t&&Array.isArray(e)){var n=Number.parseInt(t,10);if(!gr(n))return e[n]}},nG={chartName:"",tooltipPayloadSearcher:()=>{},eventEmitter:void 0,defaultTooltipEventType:"axis"},CI=On({name:"options",initialState:nG,reducers:{createEventEmitter:e=>{e.eventEmitter==null&&(e.eventEmitter=Symbol("rechartsEventEmitter"))}}}),rG=CI.reducer,{createEventEmitter:iG}=CI.actions;function aG(e){return e.tooltip.syncInteraction}var oG={chartData:void 0,computedData:void 0,dataStartIndex:0,dataEndIndex:0},OI=On({name:"chartData",initialState:oG,reducers:{setChartData(e,t){if(e.chartData=t.payload,t.payload==null){e.dataStartIndex=0,e.dataEndIndex=0;return}t.payload.length>0&&e.dataEndIndex!==t.payload.length-1&&(e.dataEndIndex=t.payload.length-1)},setComputedData(e,t){e.computedData=t.payload},setDataStartEndIndexes(e,t){var{startIndex:n,endIndex:r}=t.payload;n!=null&&(e.dataStartIndex=n),r!=null&&(e.dataEndIndex=r)}}}),{setChartData:jP,setDataStartEndIndexes:lG,setComputedData:Dte}=OI.actions,sG=OI.reducer,uG=["x","y"];function PP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function bo(e){for(var t=1;tc.rootProps.className);k.useEffect(()=>{if(e==null)return Fa;var c=(f,d,p)=>{if(t!==p&&e===f){if(r==="index"){var g;if(l&&d!==null&&d!==void 0&&(g=d.payload)!==null&&g!==void 0&&g.coordinate&&d.payload.sourceViewBox){var y=d.payload.coordinate,{x,y:S}=y,w=hG(y,uG),{x:P,y:C,width:O,height:A}=d.payload.sourceViewBox,I=bo(bo({},w),{},{x:l.x+(O?(x-P)/O:0)*l.width,y:l.y+(A?(S-C)/A:0)*l.height});n(bo(bo({},d),{},{payload:bo(bo({},d.payload),{},{coordinate:I})}))}else n(d);return}if(i!=null){var E;if(typeof r=="function"){var L={activeTooltipIndex:d.payload.index==null?void 0:Number(d.payload.index),isTooltipActive:d.payload.active,activeIndex:d.payload.index==null?void 0:Number(d.payload.index),activeLabel:d.payload.label,activeDataKey:d.payload.dataKey,activeCoordinate:d.payload.coordinate},F=r(i,L);E=i[F]}else r==="value"&&(E=i.find(he=>String(he.value)===d.payload.label));var{coordinate:H}=d.payload;if(E==null||d.payload.active===!1||H==null||l==null){n(Nv({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:void 0,graphicalItemId:void 0}));return}var{x:R,y:W}=H,M=Math.min(R,l.x+l.width),Z=Math.min(W,l.y+l.height),Y={x:a==="horizontal"?E.coordinate:M,y:a==="horizontal"?Z:E.coordinate},Q=Nv({active:d.payload.active,coordinate:Y,dataKey:d.payload.dataKey,index:String(E.index),label:d.payload.label,sourceViewBox:d.payload.sourceViewBox,graphicalItemId:d.payload.graphicalItemId});n(Q)}}};return js.on(Iv,c),()=>{js.off(Iv,c)}},[u,n,t,e,r,i,a,l])}function gG(){var e=Pe(cx),t=Pe(fx),n=yt();k.useEffect(()=>{if(e==null)return Fa;var r=(i,a,l)=>{t!==l&&e===i&&n(lG(a))};return js.on(SP,r),()=>{js.off(SP,r)}},[n,t,e])}function vG(){var e=yt();k.useEffect(()=>{e(iG())},[e]),mG(),gG()}function yG(e,t,n,r,i,a){var l=Pe(y=>P7(y,e,t)),u=Pe(fx),c=Pe(cx),f=Pe(s_),d=Pe(aG),p=d==null?void 0:d.active,g=sd();k.useEffect(()=>{if(!p&&c!=null&&u!=null){var y=Nv({active:a,coordinate:n,dataKey:l,index:i,label:typeof r=="number"?String(r):r,sourceViewBox:g,graphicalItemId:void 0});js.emit(Iv,c,y,u)}},[p,n,l,i,r,u,c,f,a,g])}function EP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function CP(e){for(var t=1;t{L(wK({shared:C,trigger:O,axisId:E,active:i,defaultIndex:F}))},[L,C,O,E,i,F]);var H=sd(),R=nA(),W=mK(C),{activeIndex:M,isActive:Z}=(t=Pe(Se=>O7(Se,W,O,F)))!==null&&t!==void 0?t:{},Y=Pe(Se=>C7(Se,W,O,F)),Q=Pe(Se=>SI(Se,W,O,F)),he=Pe(Se=>E7(Se,W,O,F)),de=Y,J=Z7(),ae=(n=i??Z)!==null&&n!==void 0?n:!1,[T,$]=V6([de,ae]),U=W==="axis"?Q:void 0;yG(W,O,he,U,M,ae);var _=I??J;if(_==null||H==null||W==null)return null;var te=de??OP;ae||(te=OP),f&&te.length&&(te=y6(te.filter(Se=>Se.value!=null&&(Se.hide!==!0||r.includeHidden)),g,kG));var fe=te.length>0,ce=k.createElement(hW,{allowEscapeViewBox:a,animationDuration:l,animationEasing:u,isAnimationActive:d,active:ae,coordinate:he,hasPayload:fe,offset:p,position:y,reverseDirection:x,useTranslate3d:S,viewBox:H,wrapperStyle:w,lastBoundingBox:T,innerRef:$,hasPortalFromProps:!!I},SG(c,CP(CP({},r),{},{payload:te,label:U,active:ae,activeIndex:M,coordinate:he,accessibilityLayer:R})));return k.createElement(k.Fragment,null,EO.createPortal(ce,_),ae&&k.createElement(Q7,{cursor:P,tooltipEventType:W,coordinate:he,payload:te,index:M}))}var AI=e=>null;AI.displayName="Cell";function PG(e,t,n){return(t=EG(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function EG(e){var t=CG(e,"string");return typeof t=="symbol"?t:t+""}function CG(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}class OG{constructor(t){PG(this,"cache",new Map),this.maxSize=t}get(t){var n=this.cache.get(t);return n!==void 0&&(this.cache.delete(t),this.cache.set(t,n)),n}set(t,n){if(this.cache.has(t))this.cache.delete(t);else if(this.cache.size>=this.maxSize){var r=this.cache.keys().next().value;r!=null&&this.cache.delete(r)}this.cache.set(t,n)}clear(){this.cache.clear()}size(){return this.cache.size}}function NP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function NG(e){for(var t=1;t{try{var n=document.getElementById(_P);n||(n=document.createElement("span"),n.setAttribute("id",_P),n.setAttribute("aria-hidden","true"),document.body.appendChild(n)),Object.assign(n.style,MG,t),n.textContent="".concat(e);var r=n.getBoundingClientRect();return{width:r.width,height:r.height}}catch{return{width:0,height:0}}},ls=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(t==null||Rs.isSsr)return{width:0,height:0};if(!_I.enableCache)return IP(t,n);var r=DG(t,n),i=AP.get(r);if(i)return i;var a=IP(t,n);return AP.set(r,a),a},II;function LG(e,t,n){return(t=RG(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function RG(e){var t=zG(e,"string");return typeof t=="symbol"?t:t+""}function zG(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var TP=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([*/])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,MP=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([+-])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,$G=/^px|cm|vh|vw|em|rem|%|mm|in|pt|pc|ex|ch|vmin|vmax|Q$/,FG=/(-?\d+(?:\.\d+)?)([a-zA-Z%]+)?/,BG={cm:96/2.54,mm:96/25.4,pt:96/72,pc:96/6,in:96,Q:96/(2.54*40),px:1},UG=["cm","mm","pt","pc","in","Q","px"];function WG(e){return UG.includes(e)}var jo="NaN";function qG(e,t){return e*BG[t]}class Gt{static parse(t){var n,[,r,i]=(n=FG.exec(t))!==null&&n!==void 0?n:[];return r==null?Gt.NaN:new Gt(parseFloat(r),i??"")}constructor(t,n){this.num=t,this.unit=n,this.num=t,this.unit=n,gr(t)&&(this.unit=""),n!==""&&!$G.test(n)&&(this.num=NaN,this.unit=""),WG(n)&&(this.num=qG(t,n),this.unit="px")}add(t){return this.unit!==t.unit?new Gt(NaN,""):new Gt(this.num+t.num,this.unit)}subtract(t){return this.unit!==t.unit?new Gt(NaN,""):new Gt(this.num-t.num,this.unit)}multiply(t){return this.unit!==""&&t.unit!==""&&this.unit!==t.unit?new Gt(NaN,""):new Gt(this.num*t.num,this.unit||t.unit)}divide(t){return this.unit!==""&&t.unit!==""&&this.unit!==t.unit?new Gt(NaN,""):new Gt(this.num/t.num,this.unit||t.unit)}toString(){return"".concat(this.num).concat(this.unit)}isNaN(){return gr(this.num)}}II=Gt;LG(Gt,"NaN",new II(NaN,""));function TI(e){if(e==null||e.includes(jo))return jo;for(var t=e;t.includes("*")||t.includes("/");){var n,[,r,i,a]=(n=TP.exec(t))!==null&&n!==void 0?n:[],l=Gt.parse(r??""),u=Gt.parse(a??""),c=i==="*"?l.multiply(u):l.divide(u);if(c.isNaN())return jo;t=t.replace(TP,c.toString())}for(;t.includes("+")||/.-\d+(?:\.\d+)?/.test(t);){var f,[,d,p,g]=(f=MP.exec(t))!==null&&f!==void 0?f:[],y=Gt.parse(d??""),x=Gt.parse(g??""),S=p==="+"?y.add(x):y.subtract(x);if(S.isNaN())return jo;t=t.replace(MP,S.toString())}return t}var DP=/\(([^()]*)\)/;function HG(e){for(var t=e,n;(n=DP.exec(t))!=null;){var[,r]=n;t=t.replace(DP,TI(r))}return t}function VG(e){var t=e.replace(/\s+/g,"");return t=HG(t),t=TI(t),t}function KG(e){try{return VG(e)}catch{return jo}}function hg(e){var t=KG(e.slice(5,-1));return t===jo?"":t}var GG=["x","y","lineHeight","capHeight","fill","scaleToFit","textAnchor","verticalAnchor"],YG=["dx","dy","angle","className","breakAll"];function Tv(){return Tv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{children:t,breakAll:n,style:r}=e;try{var i=[];mt(t)||(n?i=t.toString().split(""):i=t.toString().split(MI));var a=i.map(u=>({word:u,width:ls(u,r).width})),l=n?0:ls(" ",r).width;return{wordsWithComputedWidth:a,spaceWidth:l}}catch{return null}};function QG(e){return e==="start"||e==="middle"||e==="end"||e==="inherit"}var LI=(e,t,n,r)=>e.reduce((i,a)=>{var{word:l,width:u}=a,c=i[i.length-1];if(c&&u!=null&&(t==null||r||c.width+u+ne.reduce((t,n)=>t.width>n.width?t:n),ZG="…",RP=(e,t,n,r,i,a,l,u)=>{var c=e.slice(0,t),f=DI({breakAll:n,style:r,children:c+ZG});if(!f)return[!1,[]];var d=LI(f.wordsWithComputedWidth,a,l,u),p=d.length>i||RI(d).width>Number(a);return[p,d]},JG=(e,t,n,r,i)=>{var{maxLines:a,children:l,style:u,breakAll:c}=e,f=ge(a),d=String(l),p=LI(t,r,n,i);if(!f||i)return p;var g=p.length>a||RI(p).width>Number(r);if(!g)return p;for(var y=0,x=d.length-1,S=0,w;y<=x&&S<=d.length-1;){var P=Math.floor((y+x)/2),C=P-1,[O,A]=RP(d,C,c,u,a,r,n,i),[I]=RP(d,P,c,u,a,r,n,i);if(!O&&!I&&(y=P+1),O&&I&&(x=P-1),!O&&I){w=A;break}S++}return w||p},zP=e=>{var t=mt(e)?[]:e.toString().split(MI);return[{words:t,width:void 0}]},eY=e=>{var{width:t,scaleToFit:n,children:r,style:i,breakAll:a,maxLines:l}=e;if((t||n)&&!Rs.isSsr){var u,c,f=DI({breakAll:a,children:r,style:i});if(f){var{wordsWithComputedWidth:d,spaceWidth:p}=f;u=d,c=p}else return zP(r);return JG({breakAll:a,children:r,maxLines:l,style:i},u,c,t,!!n)}return zP(r)},zI="#808080",tY={angle:0,breakAll:!1,capHeight:"0.71em",fill:zI,lineHeight:"1em",scaleToFit:!1,textAnchor:"start",verticalAnchor:"end",x:0,y:0},Mx=k.forwardRef((e,t)=>{var n=mn(e,tY),{x:r,y:i,lineHeight:a,capHeight:l,fill:u,scaleToFit:c,textAnchor:f,verticalAnchor:d}=n,p=LP(n,GG),g=k.useMemo(()=>eY({breakAll:p.breakAll,children:p.children,maxLines:p.maxLines,scaleToFit:c,style:p.style,width:p.width}),[p.breakAll,p.children,p.maxLines,c,p.style,p.width]),{dx:y,dy:x,angle:S,className:w,breakAll:P}=p,C=LP(p,YG);if(!Dr(r)||!Dr(i)||g.length===0)return null;var O=Number(r)+(ge(y)?y:0),A=Number(i)+(ge(x)?x:0);if(!Me(O)||!Me(A))return null;var I;switch(d){case"start":I=hg("calc(".concat(l,")"));break;case"middle":I=hg("calc(".concat((g.length-1)/2," * -").concat(a," + (").concat(l," / 2))"));break;default:I=hg("calc(".concat(g.length-1," * -").concat(a,")"));break}var E=[],L=g[0];if(c&&L!=null){var F=L.width,{width:H}=p;E.push("scale(".concat(ge(H)&&ge(F)?H/F:1,")"))}return S&&E.push("rotate(".concat(S,", ").concat(O,", ").concat(A,")")),E.length&&(C.transform=E.join(" ")),k.createElement("text",Tv({},dn(C),{ref:t,x:O,y:A,className:Ge("recharts-text",w),textAnchor:f,fill:u.includes("url")?zI:u}),g.map((R,W)=>{var M=R.words.join(P?"":" ");return k.createElement("tspan",{x:O,dy:W===0?I:a,key:"".concat(M,"-").concat(W)},M)}))});Mx.displayName="Text";function $P(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Nr(e){for(var t=1;t{var{viewBox:t,position:n,offset:r=0,parentViewBox:i}=e,{x:a,y:l,height:u,upperWidth:c,lowerWidth:f}=My(t),d=a,p=a+(c-f)/2,g=(d+p)/2,y=(c+f)/2,x=d+c/2,S=u>=0?1:-1,w=S*r,P=S>0?"end":"start",C=S>0?"start":"end",O=c>=0?1:-1,A=O*r,I=O>0?"end":"start",E=O>0?"start":"end",L=i;if(n==="top"){var F={x:d+c/2,y:l-w,horizontalAnchor:"middle",verticalAnchor:P};return L&&(F.height=Math.max(l-L.y,0),F.width=c),F}if(n==="bottom"){var H={x:p+f/2,y:l+u+w,horizontalAnchor:"middle",verticalAnchor:C};return L&&(H.height=Math.max(L.y+L.height-(l+u),0),H.width=f),H}if(n==="left"){var R={x:g-A,y:l+u/2,horizontalAnchor:I,verticalAnchor:"middle"};return L&&(R.width=Math.max(R.x-L.x,0),R.height=u),R}if(n==="right"){var W={x:g+y+A,y:l+u/2,horizontalAnchor:E,verticalAnchor:"middle"};return L&&(W.width=Math.max(L.x+L.width-W.x,0),W.height=u),W}var M=L?{width:y,height:u}:{};return n==="insideLeft"?Nr({x:g+A,y:l+u/2,horizontalAnchor:E,verticalAnchor:"middle"},M):n==="insideRight"?Nr({x:g+y-A,y:l+u/2,horizontalAnchor:I,verticalAnchor:"middle"},M):n==="insideTop"?Nr({x:d+c/2,y:l+w,horizontalAnchor:"middle",verticalAnchor:C},M):n==="insideBottom"?Nr({x:p+f/2,y:l+u-w,horizontalAnchor:"middle",verticalAnchor:P},M):n==="insideTopLeft"?Nr({x:d+A,y:l+w,horizontalAnchor:E,verticalAnchor:C},M):n==="insideTopRight"?Nr({x:d+c-A,y:l+w,horizontalAnchor:I,verticalAnchor:C},M):n==="insideBottomLeft"?Nr({x:p+A,y:l+u-w,horizontalAnchor:E,verticalAnchor:P},M):n==="insideBottomRight"?Nr({x:p+f-A,y:l+u-w,horizontalAnchor:I,verticalAnchor:P},M):n&&typeof n=="object"&&(ge(n.x)||_a(n.x))&&(ge(n.y)||_a(n.y))?Nr({x:a+vr(n.x,y),y:l+vr(n.y,u),horizontalAnchor:"end",verticalAnchor:"end"},M):Nr({x,y:l+u/2,horizontalAnchor:"middle",verticalAnchor:"middle"},M)},oY=["labelRef"],lY=["content"];function FP(e,t){if(e==null)return{};var n,r,i=sY(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{var{x:t,y:n,upperWidth:r,lowerWidth:i,width:a,height:l,children:u}=e,c=k.useMemo(()=>({x:t,y:n,upperWidth:r,lowerWidth:i,width:a,height:l}),[t,n,r,i,a,l]);return k.createElement($I.Provider,{value:c},u)},FI=()=>{var e=k.useContext($I),t=sd();return e||(t?My(t):void 0)},hY=k.createContext(null),pY=()=>{var e=k.useContext(hY),t=Pe(h_);return e||t},mY=e=>{var{value:t,formatter:n}=e,r=mt(e.children)?t:e.children;return typeof n=="function"?n(r):r},Dx=e=>e!=null&&typeof e=="function",gY=(e,t)=>{var n=jn(t-e),r=Math.min(Math.abs(t-e),360);return n*r},vY=(e,t,n,r,i)=>{var{offset:a,className:l}=e,{cx:u,cy:c,innerRadius:f,outerRadius:d,startAngle:p,endAngle:g,clockWise:y}=i,x=(f+d)/2,S=gY(p,g),w=S>=0?1:-1,P,C;switch(t){case"insideStart":P=p+w*a,C=y;break;case"insideEnd":P=g-w*a,C=!y;break;case"end":P=g+w*a,C=y;break;default:throw new Error("Unsupported position ".concat(t))}C=S<=0?C:!C;var O=Xt(u,c,x,P),A=Xt(u,c,x,P+(C?1:-1)*359),I="M".concat(O.x,",").concat(O.y,` + A`).concat(x,",").concat(x,",0,1,").concat(C?0:1,`, + `).concat(A.x,",").concat(A.y),E=mt(e.id)?fs("recharts-radial-line-"):e.id;return k.createElement("text",Jr({},r,{dominantBaseline:"central",className:Ge("recharts-radial-bar-label",l)}),k.createElement("defs",null,k.createElement("path",{id:E,d:I})),k.createElement("textPath",{xlinkHref:"#".concat(E)},n))},yY=(e,t,n)=>{var{cx:r,cy:i,innerRadius:a,outerRadius:l,startAngle:u,endAngle:c}=e,f=(u+c)/2;if(n==="outside"){var{x:d,y:p}=Xt(r,i,l+t,f);return{x:d,y:p,textAnchor:d>=r?"start":"end",verticalAnchor:"middle"}}if(n==="center")return{x:r,y:i,textAnchor:"middle",verticalAnchor:"middle"};if(n==="centerTop")return{x:r,y:i,textAnchor:"middle",verticalAnchor:"start"};if(n==="centerBottom")return{x:r,y:i,textAnchor:"middle",verticalAnchor:"end"};var g=(a+l)/2,{x:y,y:x}=Xt(r,i,g,f);return{x:y,y:x,textAnchor:"middle",verticalAnchor:"middle"}},Mc=e=>e!=null&&"cx"in e&&ge(e.cx),xY={angle:0,offset:5,zIndex:Rt.label,position:"middle",textBreakAll:!1};function bY(e){if(!Mc(e))return e;var{cx:t,cy:n,outerRadius:r}=e,i=r*2;return{x:t-r,y:n-r,width:i,upperWidth:i,lowerWidth:i,height:i}}function qi(e){var t=mn(e,xY),{viewBox:n,parentViewBox:r,position:i,value:a,children:l,content:u,className:c="",textBreakAll:f,labelRef:d}=t,p=pY(),g=FI(),y=i==="center"?g:p??g,x,S,w;n==null?x=y:Mc(n)?x=n:x=My(n);var P=bY(x);if(!x||mt(a)&&mt(l)&&!k.isValidElement(u)&&typeof u!="function")return null;var C=ts(ts({},t),{},{viewBox:x});if(k.isValidElement(u)){var{labelRef:O}=C,A=FP(C,oY);return k.cloneElement(u,A)}if(typeof u=="function"){var{content:I}=C,E=FP(C,lY);if(S=k.createElement(u,E),k.isValidElement(S))return S}else S=mY(t);var L=dn(t);if(Mc(x)){if(i==="insideStart"||i==="insideEnd"||i==="end")return vY(t,i,S,L,x);w=yY(x,t.offset,t.position)}else{if(!P)return null;var F=aY({viewBox:P,position:i,offset:t.offset,parentViewBox:Mc(r)?void 0:r});w=ts(ts({x:F.x,y:F.y,textAnchor:F.horizontalAnchor,verticalAnchor:F.verticalAnchor},F.width!==void 0?{width:F.width}:{}),F.height!==void 0?{height:F.height}:{})}return k.createElement(rr,{zIndex:t.zIndex},k.createElement(Mx,Jr({ref:d,className:Ge("recharts-label",c)},L,w,{textAnchor:QG(L.textAnchor)?L.textAnchor:w.textAnchor,breakAll:f}),S))}qi.displayName="Label";var wY=(e,t,n)=>{if(!e)return null;var r={viewBox:t,labelRef:n};return e===!0?k.createElement(qi,Jr({key:"label-implicit"},r)):Dr(e)?k.createElement(qi,Jr({key:"label-implicit",value:e},r)):k.isValidElement(e)?e.type===qi?k.cloneElement(e,ts({key:"label-implicit"},r)):k.createElement(qi,Jr({key:"label-implicit",content:e},r)):Dx(e)?k.createElement(qi,Jr({key:"label-implicit",content:e},r)):e&&typeof e=="object"?k.createElement(qi,Jr({},e,{key:"label-implicit"},r)):null};function kY(e){var{label:t,labelRef:n}=e,r=FI();return wY(t,r,n)||null}var pg={},mg={},UP;function SY(){return UP||(UP=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n[n.length-1]}e.last=t})(mg)),mg}var gg={},WP;function jY(){return WP||(WP=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return Array.isArray(n)?n:Array.from(n)}e.toArray=t})(gg)),gg}var qP;function PY(){return qP||(qP=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=SY(),n=jY(),r=Sy();function i(a){if(r.isArrayLike(a))return t.last(n.toArray(a))}e.last=i})(pg)),pg}var vg,HP;function EY(){return HP||(HP=1,vg=PY().last),vg}var CY=EY();const OY=xr(CY);var NY=["valueAccessor"],AY=["dataKey","clockWise","id","textBreakAll","zIndex"];function Of(){return Of=Object.assign?Object.assign.bind():function(e){for(var t=1;tArray.isArray(e.value)?OY(e.value):e.value,BI=k.createContext(void 0),UI=BI.Provider,WI=k.createContext(void 0);WI.Provider;function TY(){return k.useContext(BI)}function MY(){return k.useContext(WI)}function Dc(e){var{valueAccessor:t=IY}=e,n=VP(e,NY),{dataKey:r,clockWise:i,id:a,textBreakAll:l,zIndex:u}=n,c=VP(n,AY),f=TY(),d=MY(),p=f||d;return!p||!p.length?null:k.createElement(rr,{zIndex:u??Rt.label},k.createElement(hn,{className:"recharts-label-list"},p.map((g,y)=>{var x,S=mt(r)?t(g,y):St(g.payload,r),w=mt(a)?{}:{id:"".concat(a,"-").concat(y)};return k.createElement(qi,Of({key:"label-".concat(y)},dn(g),c,w,{fill:(x=n.fill)!==null&&x!==void 0?x:g.fill,parentViewBox:g.parentViewBox,value:S,textBreakAll:l,viewBox:g.viewBox,index:y,zIndex:0}))})))}Dc.displayName="LabelList";function qI(e){var{label:t}=e;return t?t===!0?k.createElement(Dc,{key:"labelList-implicit"}):k.isValidElement(t)||Dx(t)?k.createElement(Dc,{key:"labelList-implicit",content:t}):typeof t=="object"?k.createElement(Dc,Of({key:"labelList-implicit"},t,{type:String(t.type)})):null:null}function Mv(){return Mv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{cx:t,cy:n,r,className:i}=e,a=Ge("recharts-dot",i);return ge(t)&&ge(n)&&ge(r)?k.createElement("circle",Mv({},Jn(e),wy(e),{className:a,cx:t,cy:n,r})):null},DY={radiusAxis:{},angleAxis:{}},VI=On({name:"polarAxis",initialState:DY,reducers:{addRadiusAxis(e,t){e.radiusAxis[t.payload.id]=t.payload},removeRadiusAxis(e,t){delete e.radiusAxis[t.payload.id]},addAngleAxis(e,t){e.angleAxis[t.payload.id]=t.payload},removeAngleAxis(e,t){delete e.angleAxis[t.payload.id]}}}),{addRadiusAxis:Lte,removeRadiusAxis:Rte,addAngleAxis:zte,removeAngleAxis:$te}=VI.actions,LY=VI.reducer;function RY(e){return e&&typeof e=="object"&&"className"in e&&typeof e.className=="string"?e.className:""}var yg={exports:{}},qe={};/** * @license React * react-is.production.min.js * @@ -121,7 +121,7 @@ Error generating stack: `+j.message+` * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var qP;function NY(){if(qP)return qe;qP=1;var e=Symbol.for("react.element"),t=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),i=Symbol.for("react.profiler"),a=Symbol.for("react.provider"),l=Symbol.for("react.context"),u=Symbol.for("react.server_context"),c=Symbol.for("react.forward_ref"),f=Symbol.for("react.suspense"),d=Symbol.for("react.suspense_list"),p=Symbol.for("react.memo"),g=Symbol.for("react.lazy"),y=Symbol.for("react.offscreen"),b;b=Symbol.for("react.module.reference");function S(w){if(typeof w=="object"&&w!==null){var P=w.$$typeof;switch(P){case e:switch(w=w.type,w){case n:case i:case r:case f:case d:return w;default:switch(w=w&&w.$$typeof,w){case u:case l:case c:case g:case p:case a:return w;default:return P}}case t:return P}}}return qe.ContextConsumer=l,qe.ContextProvider=a,qe.Element=e,qe.ForwardRef=c,qe.Fragment=n,qe.Lazy=g,qe.Memo=p,qe.Portal=t,qe.Profiler=i,qe.StrictMode=r,qe.Suspense=f,qe.SuspenseList=d,qe.isAsyncMode=function(){return!1},qe.isConcurrentMode=function(){return!1},qe.isContextConsumer=function(w){return S(w)===l},qe.isContextProvider=function(w){return S(w)===a},qe.isElement=function(w){return typeof w=="object"&&w!==null&&w.$$typeof===e},qe.isForwardRef=function(w){return S(w)===c},qe.isFragment=function(w){return S(w)===n},qe.isLazy=function(w){return S(w)===g},qe.isMemo=function(w){return S(w)===p},qe.isPortal=function(w){return S(w)===t},qe.isProfiler=function(w){return S(w)===i},qe.isStrictMode=function(w){return S(w)===r},qe.isSuspense=function(w){return S(w)===f},qe.isSuspenseList=function(w){return S(w)===d},qe.isValidElementType=function(w){return typeof w=="string"||typeof w=="function"||w===n||w===i||w===r||w===f||w===d||w===y||typeof w=="object"&&w!==null&&(w.$$typeof===g||w.$$typeof===p||w.$$typeof===a||w.$$typeof===l||w.$$typeof===c||w.$$typeof===b||w.getModuleId!==void 0)},qe.typeOf=S,qe}var HP;function AY(){return HP||(HP=1,gg.exports=NY()),gg.exports}var _Y=AY(),VP=e=>typeof e=="string"?e:e?e.displayName||e.name||"Component":"",KP=null,vg=null,UI=e=>{if(e===KP&&Array.isArray(vg))return vg;var t=[];return k.Children.forEach(e,n=>{mt(n)||(_Y.isFragment(n)?t=t.concat(UI(n.props.children)):t.push(n))}),vg=t,KP=e,t};function IY(e,t){var n=[],r=[];return Array.isArray(t)?r=t.map(i=>VP(i)):r=[VP(t)],UI(e).forEach(i=>{var a=Io(i,"type.displayName")||Io(i,"type.name");a&&r.indexOf(a)!==-1&&n.push(i)}),n}var WI=e=>e&&typeof e=="object"&&"clipDot"in e?!!e.clipDot:!0,yg={},GP;function TY(){return GP||(GP=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){var i;if(typeof n!="object"||n==null)return!1;if(Object.getPrototypeOf(n)===null)return!0;if(Object.prototype.toString.call(n)!=="[object Object]"){const a=n[Symbol.toStringTag];return a==null||!((i=Object.getOwnPropertyDescriptor(n,Symbol.toStringTag))!=null&&i.writable)?!1:n.toString()===`[object ${a}]`}let r=n;for(;Object.getPrototypeOf(r)!==null;)r=Object.getPrototypeOf(r);return Object.getPrototypeOf(n)===r}e.isPlainObject=t})(yg)),yg}var xg,YP;function DY(){return YP||(YP=1,xg=TY().isPlainObject),xg}var MY=DY();const LY=yr(MY);var XP,QP,ZP,JP,eE;function tE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function nE(e){for(var t=1;t{var a=n-r,l;return l=pt(XP||(XP=Yl(["M ",",",""])),e,t),l+=pt(QP||(QP=Yl(["L ",",",""])),e+n,t),l+=pt(ZP||(ZP=Yl(["L ",",",""])),e+n-a/2,t+i),l+=pt(JP||(JP=Yl(["L ",",",""])),e+n-a/2-r,t+i),l+=pt(eE||(eE=Yl(["L ",","," Z"])),e,t),l},FY={x:0,y:0,upperWidth:0,lowerWidth:0,height:0,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},BY=e=>{var t=mn(e,FY),{x:n,y:r,upperWidth:i,lowerWidth:a,height:l,className:u}=t,{animationEasing:c,animationDuration:f,animationBegin:d,isUpdateAnimationActive:p}=t,g=k.useRef(null),[y,b]=k.useState(-1),S=k.useRef(i),w=k.useRef(a),P=k.useRef(l),C=k.useRef(n),O=k.useRef(r),A=dd(e,"trapezoid-");if(k.useEffect(()=>{if(g.current&&g.current.getTotalLength)try{var Y=g.current.getTotalLength();Y&&b(Y)}catch{}},[]),n!==+n||r!==+r||i!==+i||a!==+a||l!==+l||i===0&&a===0||l===0)return null;var I=Ge("recharts-trapezoid",u);if(!p)return k.createElement("g",null,k.createElement("path",Of({},dn(t),{className:I,d:rE(n,r,i,a,l)})));var E=S.current,L=w.current,F=P.current,H=C.current,R=O.current,W="0px ".concat(y===-1?1:y,"px"),D="".concat(y,"px 0px"),Z=ZN(["strokeDasharray"],f,c);return k.createElement(fd,{animationId:A,key:A,canBegin:y>0,duration:f,easing:c,isActive:p,begin:d},Y=>{var Q=ut(E,i,Y),he=ut(L,a,Y),de=ut(F,l,Y),J=ut(H,n,Y),ae=ut(R,r,Y);g.current&&(S.current=Q,w.current=he,P.current=de,C.current=J,O.current=ae);var T=Y>0?{transition:Z,strokeDasharray:D}:{strokeDasharray:W};return k.createElement("path",Of({},dn(t),{className:I,d:rE(J,ae,Q,he,de),ref:g,style:nE(nE({},T),t.style)}))})},UY=["option","shapeType","activeClassName"];function WY(e,t){if(e==null)return{};var n,r,i=qY(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{var r=yt();return(i,a)=>l=>{e==null||e(i,a,l),r(Q_({activeIndex:String(a),activeDataKey:t,activeCoordinate:i.tooltipPosition,activeGraphicalItemId:n}))}},HI=e=>{var t=yt();return(n,r)=>i=>{e==null||e(n,r,i),t(hK())}},VI=(e,t,n)=>{var r=yt();return(i,a)=>l=>{e==null||e(i,a,l),r(pK({activeIndex:String(a),activeDataKey:t,activeCoordinate:i.tooltipPosition,activeGraphicalItemId:n}))}};function KI(e){var{tooltipEntrySettings:t}=e,n=yt(),r=on(),i=k.useRef(null);return k.useLayoutEffect(()=>{r||(i.current===null?n(uK(t)):i.current!==t&&n(cK({prev:i.current,next:t})),i.current=t)},[t,n,r]),k.useLayoutEffect(()=>()=>{i.current&&(n(fK(i.current)),i.current=null)},[n]),null}function GI(e){var{legendPayload:t}=e,n=yt(),r=on(),i=k.useRef(null);return k.useLayoutEffect(()=>{r||(i.current===null?n(W8(t)):i.current!==t&&n(q8({prev:i.current,next:t})),i.current=t)},[n,r,t]),k.useLayoutEffect(()=>()=>{i.current&&(n(H8(i.current)),i.current=null)},[n]),null}var bg,ZY=()=>{var[e]=k.useState(()=>cs("uid-"));return e},JY=(bg=$D.useId)!==null&&bg!==void 0?bg:ZY;function eX(e,t){var n=JY();return t||(e?"".concat(e,"-").concat(n):n)}var tX=k.createContext(void 0),YI=e=>{var{id:t,type:n,children:r}=e,i=eX("recharts-".concat(n),t);return k.createElement(tX.Provider,{value:i},r(i))},nX={cartesianItems:[],polarItems:[]},XI=On({name:"graphicalItems",initialState:nX,reducers:{addCartesianGraphicalItem:{reducer(e,t){e.cartesianItems.push(t.payload)},prepare:at()},replaceCartesianGraphicalItem:{reducer(e,t){var{prev:n,next:r}=t.payload,i=pr(e).cartesianItems.indexOf(n);i>-1&&(e.cartesianItems[i]=r)},prepare:at()},removeCartesianGraphicalItem:{reducer(e,t){var n=pr(e).cartesianItems.indexOf(t.payload);n>-1&&e.cartesianItems.splice(n,1)},prepare:at()},addPolarGraphicalItem:{reducer(e,t){e.polarItems.push(t.payload)},prepare:at()},removePolarGraphicalItem:{reducer(e,t){var n=pr(e).polarItems.indexOf(t.payload);n>-1&&e.polarItems.splice(n,1)},prepare:at()}}}),{addCartesianGraphicalItem:rX,replaceCartesianGraphicalItem:iX,removeCartesianGraphicalItem:aX,addPolarGraphicalItem:_te,removePolarGraphicalItem:Ite}=XI.actions,oX=XI.reducer,lX=e=>{var t=yt(),n=k.useRef(null);return k.useLayoutEffect(()=>{n.current===null?t(rX(e)):n.current!==e&&t(iX({prev:n.current,next:e})),n.current=e},[t,e]),k.useLayoutEffect(()=>()=>{n.current&&(t(aX(n.current)),n.current=null)},[t]),null},QI=k.memo(lX),sX=["points"];function oE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function wg(e){for(var t=1;t{var w,P,C=wg(wg(wg({r:3},l),p),{},{index:S,cx:(w=b.x)!==null&&w!==void 0?w:void 0,cy:(P=b.y)!==null&&P!==void 0?P:void 0,dataKey:a,value:b.value,payload:b.payload,points:t});return k.createElement(pX,{key:"dot-".concat(S),option:n,dotProps:C,className:i})}),y={};return u&&c!=null&&(y.clipPath="url(#clipPath-".concat(d?"":"dots-").concat(c,")")),k.createElement(nr,{zIndex:f},k.createElement(hn,Af({className:r},y),g))}function lE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function sE(e){for(var t=1;t({top:e.top,bottom:e.bottom,left:e.left,right:e.right})),AX=G([NX,fi,di],(e,t,n)=>{if(!(!e||t==null||n==null))return{x:e.left,y:e.top,width:Math.max(0,t-e.left-e.right),height:Math.max(0,n-e.top-e.bottom)}}),Dx=()=>Pe(AX),_X=()=>Pe(r7);function uE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function kg(e){for(var t=1;t{var{point:t,childIndex:n,mainColor:r,activeDot:i,dataKey:a,clipPath:l}=e;if(i===!1||t.x==null||t.y==null)return null;var u={index:n,dataKey:a,cx:t.x,cy:t.y,r:4,fill:r??"none",strokeWidth:2,stroke:"#fff",payload:t.payload,value:t.value},c=kg(kg(kg({},u),Ns(i)),xy(i)),f;return k.isValidElement(i)?f=k.cloneElement(i,c):typeof i=="function"?f=i(c):f=k.createElement(FI,c),k.createElement(hn,{className:"recharts-active-dot",clipPath:l},f)};function cE(e){var{points:t,mainColor:n,activeDot:r,itemDataKey:i,clipPath:a,zIndex:l=Rt.activeDot}=e,u=Pe(Ma),c=_X();if(t==null||c==null)return null;var f=t.find(d=>c.includes(d.payload));return mt(f)?null:k.createElement(nr,{zIndex:l},k.createElement(MX,{point:f,childIndex:Number(u),mainColor:n,dataKey:i,activeDot:r,clipPath:a}))}var fE=(e,t,n)=>{var r=n??e;if(!mt(r))return gr(r,t,0)},LX=(e,t,n)=>{var r={},i=e.filter(Pd),a=e.filter(f=>f.stackId==null),l=i.reduce((f,d)=>{var p=f[d.stackId];return p==null&&(p=[]),p.push(d),f[d.stackId]=p,f},r),u=Object.entries(l).map(f=>{var d,[p,g]=f,y=g.map(S=>S.dataKey),b=fE(t,n,(d=g[0])===null||d===void 0?void 0:d.barSize);return{stackId:p,dataKeys:y,barSize:b}}),c=a.map(f=>{var d=[f.dataKey].filter(g=>g!=null),p=fE(t,n,f.barSize);return{stackId:void 0,dataKeys:d,barSize:p}});return[...u,...c]};function dE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function jc(e){for(var t=1;tC+(O.barSize||0),0);g+=(l-1)*u,g>=n&&(g-=(l-1)*u,u=0),g>=n&&p>0&&(d=!0,p*=.9,g=l*p);var y=(n-g)/2>>0,b={offset:y-u,size:0};c=r.reduce((C,O)=>{var A,I={stackId:O.stackId,dataKeys:O.dataKeys,position:{offset:b.offset+b.size+u,size:d?p:(A=O.barSize)!==null&&A!==void 0?A:0}},E=[...C,I];return b=I.position,E},f)}else{var S=gr(t,n,0,!0);n-2*S-(l-1)*u<=0&&(u=0);var w=(n-2*S-(l-1)*u)/l;w>1&&(w>>=0);var P=De(i)?Math.min(w,i):w;c=r.reduce((C,O,A)=>[...C,{stackId:O.stackId,dataKeys:O.dataKeys,position:{offset:S+(w+u)*A+(w-P)/2,size:P}}],f)}return c}}var BX=(e,t,n,r,i,a,l)=>{var u=mt(l)?t:l,c=FX(n,r,i!==a?i:a,e,u);return i!==a&&c!=null&&(c=c.map(f=>jc(jc({},f),{},{position:jc(jc({},f.position),{},{offset:f.position.offset-i/2})}))),c},UX=(e,t)=>{var n=jd(t);if(!(!e||n==null||t==null)){var{stackId:r}=t;if(r!=null){var i=e[r];if(i){var{stackedData:a}=i;if(a)return a.find(l=>l.key===n)}}}},WX=(e,t)=>{if(!(e==null||t==null)){var n=e.find(r=>r.stackId===t.stackId&&t.dataKey!=null&&r.dataKeys.includes(t.dataKey));if(n!=null)return n.position}};function qX(e,t){return e&&typeof e=="object"&&"zIndex"in e&&typeof e.zIndex=="number"&&De(e.zIndex)?e.zIndex:t}var HX=e=>{var{chartData:t}=e,n=yt(),r=on();return k.useEffect(()=>r?()=>{}:(n(wP(t)),()=>{n(wP(void 0))}),[t,n,r]),null},hE={x:0,y:0,width:0,height:0,padding:{top:0,right:0,bottom:0,left:0}},eT=On({name:"brush",initialState:hE,reducers:{setBrushSettings(e,t){return t.payload==null?hE:t.payload}}}),{setBrushSettings:Lte}=eT.actions,VX=eT.reducer;function KX(e){return(e%180+180)%180}var GX=function(t){var{width:n,height:r}=t,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=KX(i),l=a*Math.PI/180,u=Math.atan(r/n),c=l>u&&l{e.dots.push(t.payload)},removeDot:(e,t)=>{var n=pr(e).dots.findIndex(r=>r===t.payload);n!==-1&&e.dots.splice(n,1)},addArea:(e,t)=>{e.areas.push(t.payload)},removeArea:(e,t)=>{var n=pr(e).areas.findIndex(r=>r===t.payload);n!==-1&&e.areas.splice(n,1)},addLine:(e,t)=>{e.lines.push(t.payload)},removeLine:(e,t)=>{var n=pr(e).lines.findIndex(r=>r===t.payload);n!==-1&&e.lines.splice(n,1)}}}),{addDot:Rte,removeDot:zte,addArea:$te,removeArea:Fte,addLine:Bte,removeLine:Ute}=tT.actions,XX=tT.reducer,QX=k.createContext(void 0),ZX=e=>{var{children:t}=e,[n]=k.useState("".concat(cs("recharts"),"-clip")),r=Dx();if(r==null)return null;var{x:i,y:a,width:l,height:u}=r;return k.createElement(QX.Provider,{value:n},k.createElement("defs",null,k.createElement("clipPath",{id:n},k.createElement("rect",{x:i,y:a,height:u,width:l}))),t)};function nT(e,t){if(t<1)return[];if(t===1)return e;for(var n=[],r=0;re*i)return!1;var a=n();return e*(t-e*a/2-r)>=0&&e*(t+e*a/2-i)<=0}function tQ(e,t){return nT(e,t+1)}function nQ(e,t,n,r,i){for(var a=(r||[]).slice(),{start:l,end:u}=t,c=0,f=1,d=l,p=function(){var b=r==null?void 0:r[c];if(b===void 0)return{v:nT(r,f)};var S=c,w,P=()=>(w===void 0&&(w=n(b,S)),w),C=b.coordinate,O=c===0||js(e,C,P,d,u);O||(c=0,d=l,f+=1),O&&(d=C+e*(P()/2+i),c+=f)},g;f<=a.length;)if(g=p(),g)return g.v;return[]}function rQ(e,t,n,r,i){var a=(r||[]).slice(),l=a.length;if(l===0)return[];for(var{start:u,end:c}=t,f=1;f<=l;f++){for(var d=(l-1)%f,p=u,g=!0,y=function(){var A=r[S];if(A==null)return 0;var I=S,E,L=()=>(E===void 0&&(E=n(A,I)),E),F=A.coordinate,H=S===d||js(e,F,L,p,c);if(!H)return g=!1,1;H&&(p=F+e*(L()/2+i))},b,S=d;S(S===void 0&&(S=n(y,g)),S);if(g===l-1){var P=e*(b.coordinate+e*w()/2-c);a[g]=b=tn(tn({},b),{},{tickCoord:P>0?b.coordinate-P*e:b.coordinate})}else a[g]=b=tn(tn({},b),{},{tickCoord:b.coordinate});if(b.tickCoord!=null){var C=js(e,b.tickCoord,w,u,c);C&&(c=b.tickCoord-e*(w()/2+i),a[g]=tn(tn({},b),{},{isShow:!0}))}},d=l-1;d>=0;d--)f(d);return a}function sQ(e,t,n,r,i,a){var l=(r||[]).slice(),u=l.length,{start:c,end:f}=t;if(a){var d=r[u-1];if(d!=null){var p=n(d,u-1),g=e*(d.coordinate+e*p/2-f);if(l[u-1]=d=tn(tn({},d),{},{tickCoord:g>0?d.coordinate-g*e:d.coordinate}),d.tickCoord!=null){var y=js(e,d.tickCoord,()=>p,c,f);y&&(f=d.tickCoord-e*(p/2+i),l[u-1]=tn(tn({},d),{},{isShow:!0}))}}}for(var b=a?u-1:u,S=function(C){var O=l[C];if(O==null)return 1;var A=O,I,E=()=>(I===void 0&&(I=n(O,C)),I);if(C===0){var L=e*(A.coordinate-e*E()/2-c);l[C]=A=tn(tn({},A),{},{tickCoord:L<0?A.coordinate-L*e:A.coordinate})}else l[C]=A=tn(tn({},A),{},{tickCoord:A.coordinate});if(A.tickCoord!=null){var F=js(e,A.tickCoord,E,c,f);F&&(c=A.tickCoord+e*(E()/2+i),l[C]=tn(tn({},A),{},{isShow:!0}))}},w=0;w{var L=typeof f=="function"?f(I.value,E):I.value;return b==="width"?JX(os(L,{fontSize:t,letterSpacing:n}),S,p):os(L,{fontSize:t,letterSpacing:n})[b]},P=i[0],C=i[1],O=i.length>=2&&P!=null&&C!=null?jn(C.coordinate-P.coordinate):1,A=eQ(a,O,b);return c==="equidistantPreserveStart"?nQ(O,A,w,i,l):c==="equidistantPreserveEnd"?rQ(O,A,w,i,l):(c==="preserveStart"||c==="preserveStartEnd"?y=sQ(O,A,w,i,l,c==="preserveStartEnd"):y=lQ(O,A,w,i,l),y.filter(I=>I.isShow))}var uQ=e=>{var{ticks:t,label:n,labelGapWithTick:r=5,tickSize:i=0,tickMargin:a=0}=e,l=0;if(t){Array.from(t).forEach(d=>{if(d){var p=d.getBoundingClientRect();p.width>l&&(l=p.width)}});var u=n?n.getBoundingClientRect().width:0,c=i+a,f=l+c+u+(n?r:0);return Math.round(f)}return 0},cQ=["axisLine","width","height","className","hide","ticks","axisType"];function fQ(e,t){if(e==null)return{};var n,r,i=dQ(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{var{ticks:n=[],tick:r,tickLine:i,stroke:a,tickFormatter:l,unit:u,padding:c,tickTextProps:f,orientation:d,mirror:p,x:g,y,width:b,height:S,tickSize:w,tickMargin:P,fontSize:C,letterSpacing:O,getTicksConfig:A,events:I,axisType:E}=e,L=Mx(ht(ht({},A),{},{ticks:n}),C,O),F=yQ(d,p),H=xQ(d,p),R=Zn(A),W=Ns(r),D={};typeof i=="object"&&(D=i);var Z=ht(ht({},R),{},{fill:"none"},D),Y=L.map(de=>ht({entry:de},vQ(de,g,y,b,S,d,w,p,P))),Q=Y.map(de=>{var{entry:J,line:ae}=de;return k.createElement(hn,{className:"recharts-cartesian-axis-tick",key:"tick-".concat(J.value,"-").concat(J.coordinate,"-").concat(J.tickCoord)},i&&k.createElement("line",La({},Z,ae,{className:Ge("recharts-cartesian-axis-tick-line",Io(i,"className"))})))}),he=Y.map((de,J)=>{var ae,T,{entry:$,tick:U}=de,_=ht(ht(ht(ht({verticalAnchor:H},R),{},{textAnchor:F,stroke:"none",fill:a},U),{},{index:J,payload:$,visibleTicksCount:L.length,tickFormatter:l,padding:c},f),{},{angle:(ae=(T=f==null?void 0:f.angle)!==null&&T!==void 0?T:R.angle)!==null&&ae!==void 0?ae:0}),te=ht(ht({},_),W);return k.createElement(hn,La({className:"recharts-cartesian-axis-tick-label",key:"tick-label-".concat($.value,"-").concat($.coordinate,"-").concat($.tickCoord)},by(I,$,J)),r&&k.createElement(bQ,{option:r,tickProps:te,value:"".concat(typeof l=="function"?l($.value,J):$.value).concat(u||"")}))});return k.createElement("g",{className:"recharts-cartesian-axis-ticks recharts-".concat(E,"-ticks")},he.length>0&&k.createElement(nr,{zIndex:Rt.label},k.createElement("g",{className:"recharts-cartesian-axis-tick-labels recharts-".concat(E,"-tick-labels"),ref:t},he)),Q.length>0&&k.createElement("g",{className:"recharts-cartesian-axis-tick-lines recharts-".concat(E,"-tick-lines")},Q))}),kQ=k.forwardRef((e,t)=>{var{axisLine:n,width:r,height:i,className:a,hide:l,ticks:u,axisType:c}=e,f=fQ(e,cQ),[d,p]=k.useState(""),[g,y]=k.useState(""),b=k.useRef(null);k.useImperativeHandle(t,()=>({getCalculatedWidth:()=>{var w;return uQ({ticks:b.current,label:(w=e.labelRef)===null||w===void 0?void 0:w.current,labelGapWithTick:5,tickSize:e.tickSize,tickMargin:e.tickMargin})}}));var S=k.useCallback(w=>{if(w){var P=w.getElementsByClassName("recharts-cartesian-axis-tick-value");b.current=P;var C=P[0];if(C){var O=window.getComputedStyle(C),A=O.fontSize,I=O.letterSpacing;(A!==d||I!==g)&&(p(A),y(I))}}},[d,g]);return l||r!=null&&r<=0||i!=null&&i<=0?null:k.createElement(nr,{zIndex:e.zIndex},k.createElement(hn,{className:Ge("recharts-cartesian-axis",a)},k.createElement(gQ,{x:e.x,y:e.y,width:r,height:i,orientation:e.orientation,mirror:e.mirror,axisLine:n,otherSvgProps:Zn(e)}),k.createElement(wQ,{ref:S,axisType:c,events:f,fontSize:d,getTicksConfig:e,height:e.height,letterSpacing:g,mirror:e.mirror,orientation:e.orientation,padding:e.padding,stroke:e.stroke,tick:e.tick,tickFormatter:e.tickFormatter,tickLine:e.tickLine,tickMargin:e.tickMargin,tickSize:e.tickSize,tickTextProps:e.tickTextProps,ticks:u,unit:e.unit,width:e.width,x:e.x,y:e.y}),k.createElement(rY,{x:e.x,y:e.y,width:e.width,height:e.height,lowerWidth:e.width,upperWidth:e.width},k.createElement(hY,{label:e.label,labelRef:e.labelRef}),e.children)))}),Lx=k.forwardRef((e,t)=>{var n=mn(e,ni);return k.createElement(kQ,La({},n,{ref:t}))});Lx.displayName="CartesianAxis";var SQ=["x1","y1","x2","y2","key"],jQ=["offset"],PQ=["xAxisId","yAxisId"],EQ=["xAxisId","yAxisId"];function gE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function nn(e){for(var t=1;t{var{fill:t}=e;if(!t||t==="none")return null;var{fillOpacity:n,x:r,y:i,width:a,height:l,ry:u}=e;return k.createElement("rect",{x:r,y:i,ry:u,width:a,height:l,stroke:"none",fill:t,fillOpacity:n,className:"recharts-cartesian-grid-bg"})};function rT(e){var{option:t,lineItemProps:n}=e,r;if(k.isValidElement(t))r=k.cloneElement(t,n);else if(typeof t=="function")r=t(n);else{var i,{x1:a,y1:l,x2:u,y2:c,key:f}=n,d=_f(n,SQ),p=(i=Zn(d))!==null&&i!==void 0?i:{},{offset:g}=p,y=_f(p,jQ);r=k.createElement("line",Sa({},y,{x1:a,y1:l,x2:u,y2:c,fill:"none",key:f}))}return r}function IQ(e){var{x:t,width:n,horizontal:r=!0,horizontalPoints:i}=e;if(!r||!i||!i.length)return null;var{xAxisId:a,yAxisId:l}=e,u=_f(e,PQ),c=i.map((f,d)=>{var p=nn(nn({},u),{},{x1:t,y1:f,x2:t+n,y2:f,key:"line-".concat(d),index:d});return k.createElement(rT,{key:"line-".concat(d),option:r,lineItemProps:p})});return k.createElement("g",{className:"recharts-cartesian-grid-horizontal"},c)}function TQ(e){var{y:t,height:n,vertical:r=!0,verticalPoints:i}=e;if(!r||!i||!i.length)return null;var{xAxisId:a,yAxisId:l}=e,u=_f(e,EQ),c=i.map((f,d)=>{var p=nn(nn({},u),{},{x1:f,y1:t,x2:f,y2:t+n,key:"line-".concat(d),index:d});return k.createElement(rT,{option:r,lineItemProps:p,key:"line-".concat(d)})});return k.createElement("g",{className:"recharts-cartesian-grid-vertical"},c)}function DQ(e){var{horizontalFill:t,fillOpacity:n,x:r,y:i,width:a,height:l,horizontalPoints:u,horizontal:c=!0}=e;if(!c||!t||!t.length||u==null)return null;var f=u.map(p=>Math.round(p+i-i)).sort((p,g)=>p-g);i!==f[0]&&f.unshift(0);var d=f.map((p,g)=>{var y=f[g+1],b=y==null,S=b?i+l-p:y-p;if(S<=0)return null;var w=g%t.length;return k.createElement("rect",{key:"react-".concat(g),y:p,x:r,height:S,width:a,stroke:"none",fill:t[w],fillOpacity:n,className:"recharts-cartesian-grid-bg"})});return k.createElement("g",{className:"recharts-cartesian-gridstripes-horizontal"},d)}function MQ(e){var{vertical:t=!0,verticalFill:n,fillOpacity:r,x:i,y:a,width:l,height:u,verticalPoints:c}=e;if(!t||!n||!n.length)return null;var f=c.map(p=>Math.round(p+i-i)).sort((p,g)=>p-g);i!==f[0]&&f.unshift(0);var d=f.map((p,g)=>{var y=f[g+1],b=y==null,S=b?i+l-p:y-p;if(S<=0)return null;var w=g%n.length;return k.createElement("rect",{key:"react-".concat(g),x:p,y:a,width:S,height:u,stroke:"none",fill:n[w],fillOpacity:r,className:"recharts-cartesian-grid-bg"})});return k.createElement("g",{className:"recharts-cartesian-gridstripes-vertical"},d)}var LQ=(e,t)=>{var{xAxis:n,width:r,height:i,offset:a}=e;return IN(Mx(nn(nn(nn({},ni),n),{},{ticks:TN(n),viewBox:{x:0,y:0,width:r,height:i}})),a.left,a.left+a.width,t)},RQ=(e,t)=>{var{yAxis:n,width:r,height:i,offset:a}=e;return IN(Mx(nn(nn(nn({},ni),n),{},{ticks:TN(n),viewBox:{x:0,y:0,width:r,height:i}})),a.top,a.top+a.height,t)},zQ={horizontal:!0,vertical:!0,horizontalPoints:[],verticalPoints:[],stroke:"#ccc",fill:"none",verticalFill:[],horizontalFill:[],xAxisId:0,yAxisId:0,syncWithTicks:!1,zIndex:Rt.grid};function Rx(e){var t=BN(),n=UN(),r=FN(),i=nn(nn({},mn(e,zQ)),{},{x:ge(e.x)?e.x:r.left,y:ge(e.y)?e.y:r.top,width:ge(e.width)?e.width:r.width,height:ge(e.height)?e.height:r.height}),{xAxisId:a,yAxisId:l,x:u,y:c,width:f,height:d,syncWithTicks:p,horizontalValues:g,verticalValues:y}=i,b=on(),S=Pe(H=>uP(H,"xAxis",a,b)),w=Pe(H=>uP(H,"yAxis",l,b));if(!Mr(f)||!Mr(d)||!ge(u)||!ge(c))return null;var P=i.verticalCoordinatesGenerator||LQ,C=i.horizontalCoordinatesGenerator||RQ,{horizontalPoints:O,verticalPoints:A}=i;if((!O||!O.length)&&typeof C=="function"){var I=g&&g.length,E=C({yAxis:w?nn(nn({},w),{},{ticks:I?g:w.ticks}):void 0,width:t??f,height:n??d,offset:r},I?!0:p);tf(Array.isArray(E),"horizontalCoordinatesGenerator should return Array but instead it returned [".concat(typeof E,"]")),Array.isArray(E)&&(O=E)}if((!A||!A.length)&&typeof P=="function"){var L=y&&y.length,F=P({xAxis:S?nn(nn({},S),{},{ticks:L?y:S.ticks}):void 0,width:t??f,height:n??d,offset:r},L?!0:p);tf(Array.isArray(F),"verticalCoordinatesGenerator should return Array but instead it returned [".concat(typeof F,"]")),Array.isArray(F)&&(A=F)}return k.createElement(nr,{zIndex:i.zIndex},k.createElement("g",{className:"recharts-cartesian-grid"},k.createElement(_Q,{fill:i.fill,fillOpacity:i.fillOpacity,x:i.x,y:i.y,width:i.width,height:i.height,ry:i.ry}),k.createElement(DQ,Sa({},i,{horizontalPoints:O})),k.createElement(MQ,Sa({},i,{verticalPoints:A})),k.createElement(IQ,Sa({},i,{offset:r,horizontalPoints:O,xAxis:S,yAxis:w})),k.createElement(TQ,Sa({},i,{offset:r,verticalPoints:A,xAxis:S,yAxis:w}))))}Rx.displayName="CartesianGrid";var $Q={},iT=On({name:"errorBars",initialState:$Q,reducers:{addErrorBar:(e,t)=>{var{itemId:n,errorBar:r}=t.payload;e[n]||(e[n]=[]),e[n].push(r)},replaceErrorBar:(e,t)=>{var{itemId:n,prev:r,next:i}=t.payload;e[n]&&(e[n]=e[n].map(a=>a.dataKey===r.dataKey&&a.direction===r.direction?i:a))},removeErrorBar:(e,t)=>{var{itemId:n,errorBar:r}=t.payload;e[n]&&(e[n]=e[n].filter(i=>i.dataKey!==r.dataKey||i.direction!==r.direction))}}}),{addErrorBar:Wte,replaceErrorBar:qte,removeErrorBar:Hte}=iT.actions,FQ=iT.reducer,BQ=["children"];function UQ(e,t){if(e==null)return{};var n,r,i=WQ(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r({x:0,y:0,value:0}),errorBarOffset:0},HQ=k.createContext(qQ);function VQ(e){var{children:t}=e,n=UQ(e,BQ);return k.createElement(HQ.Provider,{value:n},t)}function zx(e,t){var n,r,i=Pe(f=>mi(f,e)),a=Pe(f=>gi(f,t)),l=(n=i==null?void 0:i.allowDataOverflow)!==null&&n!==void 0?n:Dt.allowDataOverflow,u=(r=a==null?void 0:a.allowDataOverflow)!==null&&r!==void 0?r:Mt.allowDataOverflow,c=l||u;return{needClip:c,needClipX:l,needClipY:u}}function aT(e){var{xAxisId:t,yAxisId:n,clipPathId:r}=e,i=Dx(),{needClipX:a,needClipY:l,needClip:u}=zx(t,n);if(!u||!i)return null;var{x:c,y:f,width:d,height:p}=i;return k.createElement("clipPath",{id:"clipPath-".concat(r)},k.createElement("rect",{x:a?c:c-d/2,y:l?f:f-p/2,width:a?d:d*2,height:l?p:p*2}))}function KQ(e){var t=Ns(e),n=3,r=2;if(t!=null){var{r:i,strokeWidth:a}=t,l=Number(i),u=Number(a);return(Number.isNaN(l)||l<0)&&(l=n),(Number.isNaN(u)||u<0)&&(u=r),{r:l,strokeWidth:u}}return{r:n,strokeWidth:r}}var Sg={exports:{}},jg={};/** + */var KP;function zY(){if(KP)return qe;KP=1;var e=Symbol.for("react.element"),t=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),i=Symbol.for("react.profiler"),a=Symbol.for("react.provider"),l=Symbol.for("react.context"),u=Symbol.for("react.server_context"),c=Symbol.for("react.forward_ref"),f=Symbol.for("react.suspense"),d=Symbol.for("react.suspense_list"),p=Symbol.for("react.memo"),g=Symbol.for("react.lazy"),y=Symbol.for("react.offscreen"),x;x=Symbol.for("react.module.reference");function S(w){if(typeof w=="object"&&w!==null){var P=w.$$typeof;switch(P){case e:switch(w=w.type,w){case n:case i:case r:case f:case d:return w;default:switch(w=w&&w.$$typeof,w){case u:case l:case c:case g:case p:case a:return w;default:return P}}case t:return P}}}return qe.ContextConsumer=l,qe.ContextProvider=a,qe.Element=e,qe.ForwardRef=c,qe.Fragment=n,qe.Lazy=g,qe.Memo=p,qe.Portal=t,qe.Profiler=i,qe.StrictMode=r,qe.Suspense=f,qe.SuspenseList=d,qe.isAsyncMode=function(){return!1},qe.isConcurrentMode=function(){return!1},qe.isContextConsumer=function(w){return S(w)===l},qe.isContextProvider=function(w){return S(w)===a},qe.isElement=function(w){return typeof w=="object"&&w!==null&&w.$$typeof===e},qe.isForwardRef=function(w){return S(w)===c},qe.isFragment=function(w){return S(w)===n},qe.isLazy=function(w){return S(w)===g},qe.isMemo=function(w){return S(w)===p},qe.isPortal=function(w){return S(w)===t},qe.isProfiler=function(w){return S(w)===i},qe.isStrictMode=function(w){return S(w)===r},qe.isSuspense=function(w){return S(w)===f},qe.isSuspenseList=function(w){return S(w)===d},qe.isValidElementType=function(w){return typeof w=="string"||typeof w=="function"||w===n||w===i||w===r||w===f||w===d||w===y||typeof w=="object"&&w!==null&&(w.$$typeof===g||w.$$typeof===p||w.$$typeof===a||w.$$typeof===l||w.$$typeof===c||w.$$typeof===x||w.getModuleId!==void 0)},qe.typeOf=S,qe}var GP;function $Y(){return GP||(GP=1,yg.exports=zY()),yg.exports}var FY=$Y(),YP=e=>typeof e=="string"?e:e?e.displayName||e.name||"Component":"",XP=null,xg=null,KI=e=>{if(e===XP&&Array.isArray(xg))return xg;var t=[];return k.Children.forEach(e,n=>{mt(n)||(FY.isFragment(n)?t=t.concat(KI(n.props.children)):t.push(n))}),xg=t,XP=e,t};function BY(e,t){var n=[],r=[];return Array.isArray(t)?r=t.map(i=>YP(i)):r=[YP(t)],KI(e).forEach(i=>{var a=To(i,"type.displayName")||To(i,"type.name");a&&r.indexOf(a)!==-1&&n.push(i)}),n}var GI=e=>e&&typeof e=="object"&&"clipDot"in e?!!e.clipDot:!0,bg={},QP;function UY(){return QP||(QP=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){var i;if(typeof n!="object"||n==null)return!1;if(Object.getPrototypeOf(n)===null)return!0;if(Object.prototype.toString.call(n)!=="[object Object]"){const a=n[Symbol.toStringTag];return a==null||!((i=Object.getOwnPropertyDescriptor(n,Symbol.toStringTag))!=null&&i.writable)?!1:n.toString()===`[object ${a}]`}let r=n;for(;Object.getPrototypeOf(r)!==null;)r=Object.getPrototypeOf(r);return Object.getPrototypeOf(n)===r}e.isPlainObject=t})(bg)),bg}var wg,ZP;function WY(){return ZP||(ZP=1,wg=UY().isPlainObject),wg}var qY=WY();const HY=xr(qY);var JP,eE,tE,nE,rE;function iE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function aE(e){for(var t=1;t{var a=n-r,l;return l=pt(JP||(JP=Xl(["M ",",",""])),e,t),l+=pt(eE||(eE=Xl(["L ",",",""])),e+n,t),l+=pt(tE||(tE=Xl(["L ",",",""])),e+n-a/2,t+i),l+=pt(nE||(nE=Xl(["L ",",",""])),e+n-a/2-r,t+i),l+=pt(rE||(rE=Xl(["L ",","," Z"])),e,t),l},YY={x:0,y:0,upperWidth:0,lowerWidth:0,height:0,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},XY=e=>{var t=mn(e,YY),{x:n,y:r,upperWidth:i,lowerWidth:a,height:l,className:u}=t,{animationEasing:c,animationDuration:f,animationBegin:d,isUpdateAnimationActive:p}=t,g=k.useRef(null),[y,x]=k.useState(-1),S=k.useRef(i),w=k.useRef(a),P=k.useRef(l),C=k.useRef(n),O=k.useRef(r),A=hd(e,"trapezoid-");if(k.useEffect(()=>{if(g.current&&g.current.getTotalLength)try{var Y=g.current.getTotalLength();Y&&x(Y)}catch{}},[]),n!==+n||r!==+r||i!==+i||a!==+a||l!==+l||i===0&&a===0||l===0)return null;var I=Ge("recharts-trapezoid",u);if(!p)return k.createElement("g",null,k.createElement("path",Nf({},dn(t),{className:I,d:oE(n,r,i,a,l)})));var E=S.current,L=w.current,F=P.current,H=C.current,R=O.current,W="0px ".concat(y===-1?1:y,"px"),M="".concat(y,"px 0px"),Z=rA(["strokeDasharray"],f,c);return k.createElement(dd,{animationId:A,key:A,canBegin:y>0,duration:f,easing:c,isActive:p,begin:d},Y=>{var Q=ut(E,i,Y),he=ut(L,a,Y),de=ut(F,l,Y),J=ut(H,n,Y),ae=ut(R,r,Y);g.current&&(S.current=Q,w.current=he,P.current=de,C.current=J,O.current=ae);var T=Y>0?{transition:Z,strokeDasharray:M}:{strokeDasharray:W};return k.createElement("path",Nf({},dn(t),{className:I,d:oE(J,ae,Q,he,de),ref:g,style:aE(aE({},T),t.style)}))})},QY=["option","shapeType","activeClassName"];function ZY(e,t){if(e==null)return{};var n,r,i=JY(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{var r=yt();return(i,a)=>l=>{e==null||e(i,a,l),r(nI({activeIndex:String(a),activeDataKey:t,activeCoordinate:i.tooltipPosition,activeGraphicalItemId:n}))}},XI=e=>{var t=yt();return(n,r)=>i=>{e==null||e(n,r,i),t(kK())}},QI=(e,t,n)=>{var r=yt();return(i,a)=>l=>{e==null||e(i,a,l),r(SK({activeIndex:String(a),activeDataKey:t,activeCoordinate:i.tooltipPosition,activeGraphicalItemId:n}))}};function ZI(e){var{tooltipEntrySettings:t}=e,n=yt(),r=on(),i=k.useRef(null);return k.useLayoutEffect(()=>{r||(i.current===null?n(yK(t)):i.current!==t&&n(xK({prev:i.current,next:t})),i.current=t)},[t,n,r]),k.useLayoutEffect(()=>()=>{i.current&&(n(bK(i.current)),i.current=null)},[n]),null}function JI(e){var{legendPayload:t}=e,n=yt(),r=on(),i=k.useRef(null);return k.useLayoutEffect(()=>{r||(i.current===null?n(Z8(t)):i.current!==t&&n(J8({prev:i.current,next:t})),i.current=t)},[n,r,t]),k.useLayoutEffect(()=>()=>{i.current&&(n(eW(i.current)),i.current=null)},[n]),null}var kg,lX=()=>{var[e]=k.useState(()=>fs("uid-"));return e},sX=(kg=qM.useId)!==null&&kg!==void 0?kg:lX;function uX(e,t){var n=sX();return t||(e?"".concat(e,"-").concat(n):n)}var cX=k.createContext(void 0),eT=e=>{var{id:t,type:n,children:r}=e,i=uX("recharts-".concat(n),t);return k.createElement(cX.Provider,{value:i},r(i))},fX={cartesianItems:[],polarItems:[]},tT=On({name:"graphicalItems",initialState:fX,reducers:{addCartesianGraphicalItem:{reducer(e,t){e.cartesianItems.push(t.payload)},prepare:at()},replaceCartesianGraphicalItem:{reducer(e,t){var{prev:n,next:r}=t.payload,i=mr(e).cartesianItems.indexOf(n);i>-1&&(e.cartesianItems[i]=r)},prepare:at()},removeCartesianGraphicalItem:{reducer(e,t){var n=mr(e).cartesianItems.indexOf(t.payload);n>-1&&e.cartesianItems.splice(n,1)},prepare:at()},addPolarGraphicalItem:{reducer(e,t){e.polarItems.push(t.payload)},prepare:at()},removePolarGraphicalItem:{reducer(e,t){var n=mr(e).polarItems.indexOf(t.payload);n>-1&&e.polarItems.splice(n,1)},prepare:at()}}}),{addCartesianGraphicalItem:dX,replaceCartesianGraphicalItem:hX,removeCartesianGraphicalItem:pX,addPolarGraphicalItem:Fte,removePolarGraphicalItem:Bte}=tT.actions,mX=tT.reducer,gX=e=>{var t=yt(),n=k.useRef(null);return k.useLayoutEffect(()=>{n.current===null?t(dX(e)):n.current!==e&&t(hX({prev:n.current,next:e})),n.current=e},[t,e]),k.useLayoutEffect(()=>()=>{n.current&&(t(pX(n.current)),n.current=null)},[t]),null},nT=k.memo(gX),vX=["points"];function uE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Sg(e){for(var t=1;t{var w,P,C=Sg(Sg(Sg({r:3},l),p),{},{index:S,cx:(w=x.x)!==null&&w!==void 0?w:void 0,cy:(P=x.y)!==null&&P!==void 0?P:void 0,dataKey:a,value:x.value,payload:x.payload,points:t});return k.createElement(SX,{key:"dot-".concat(S),option:n,dotProps:C,className:i})}),y={};return u&&c!=null&&(y.clipPath="url(#clipPath-".concat(d?"":"dots-").concat(c,")")),k.createElement(rr,{zIndex:f},k.createElement(hn,_f({className:r},y),g))}function cE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function fE(e){for(var t=1;t({top:e.top,bottom:e.bottom,left:e.left,right:e.right})),$X=G([zX,di,hi],(e,t,n)=>{if(!(!e||t==null||n==null))return{x:e.left,y:e.top,width:Math.max(0,t-e.left-e.right),height:Math.max(0,n-e.top-e.bottom)}}),Lx=()=>Pe($X),FX=()=>Pe(d7);function dE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function jg(e){for(var t=1;t{var{point:t,childIndex:n,mainColor:r,activeDot:i,dataKey:a,clipPath:l}=e;if(i===!1||t.x==null||t.y==null)return null;var u={index:n,dataKey:a,cx:t.x,cy:t.y,r:4,fill:r??"none",strokeWidth:2,stroke:"#fff",payload:t.payload,value:t.value},c=jg(jg(jg({},u),As(i)),wy(i)),f;return k.isValidElement(i)?f=k.cloneElement(i,c):typeof i=="function"?f=i(c):f=k.createElement(HI,c),k.createElement(hn,{className:"recharts-active-dot",clipPath:l},f)};function hE(e){var{points:t,mainColor:n,activeDot:r,itemDataKey:i,clipPath:a,zIndex:l=Rt.activeDot}=e,u=Pe(La),c=FX();if(t==null||c==null)return null;var f=t.find(d=>c.includes(d.payload));return mt(f)?null:k.createElement(rr,{zIndex:l},k.createElement(qX,{point:f,childIndex:Number(u),mainColor:n,dataKey:i,activeDot:r,clipPath:a}))}var pE=(e,t,n)=>{var r=n??e;if(!mt(r))return vr(r,t,0)},HX=(e,t,n)=>{var r={},i=e.filter(Ed),a=e.filter(f=>f.stackId==null),l=i.reduce((f,d)=>{var p=f[d.stackId];return p==null&&(p=[]),p.push(d),f[d.stackId]=p,f},r),u=Object.entries(l).map(f=>{var d,[p,g]=f,y=g.map(S=>S.dataKey),x=pE(t,n,(d=g[0])===null||d===void 0?void 0:d.barSize);return{stackId:p,dataKeys:y,barSize:x}}),c=a.map(f=>{var d=[f.dataKey].filter(g=>g!=null),p=pE(t,n,f.barSize);return{stackId:void 0,dataKeys:d,barSize:p}});return[...u,...c]};function mE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Pc(e){for(var t=1;tC+(O.barSize||0),0);g+=(l-1)*u,g>=n&&(g-=(l-1)*u,u=0),g>=n&&p>0&&(d=!0,p*=.9,g=l*p);var y=(n-g)/2>>0,x={offset:y-u,size:0};c=r.reduce((C,O)=>{var A,I={stackId:O.stackId,dataKeys:O.dataKeys,position:{offset:x.offset+x.size+u,size:d?p:(A=O.barSize)!==null&&A!==void 0?A:0}},E=[...C,I];return x=I.position,E},f)}else{var S=vr(t,n,0,!0);n-2*S-(l-1)*u<=0&&(u=0);var w=(n-2*S-(l-1)*u)/l;w>1&&(w>>=0);var P=Me(i)?Math.min(w,i):w;c=r.reduce((C,O,A)=>[...C,{stackId:O.stackId,dataKeys:O.dataKeys,position:{offset:S+(w+u)*A+(w-P)/2,size:P}}],f)}return c}}var XX=(e,t,n,r,i,a,l)=>{var u=mt(l)?t:l,c=YX(n,r,i!==a?i:a,e,u);return i!==a&&c!=null&&(c=c.map(f=>Pc(Pc({},f),{},{position:Pc(Pc({},f.position),{},{offset:f.position.offset-i/2})}))),c},QX=(e,t)=>{var n=Pd(t);if(!(!e||n==null||t==null)){var{stackId:r}=t;if(r!=null){var i=e[r];if(i){var{stackedData:a}=i;if(a)return a.find(l=>l.key===n)}}}},ZX=(e,t)=>{if(!(e==null||t==null)){var n=e.find(r=>r.stackId===t.stackId&&t.dataKey!=null&&r.dataKeys.includes(t.dataKey));if(n!=null)return n.position}};function JX(e,t){return e&&typeof e=="object"&&"zIndex"in e&&typeof e.zIndex=="number"&&Me(e.zIndex)?e.zIndex:t}var eQ=e=>{var{chartData:t}=e,n=yt(),r=on();return k.useEffect(()=>r?()=>{}:(n(jP(t)),()=>{n(jP(void 0))}),[t,n,r]),null},gE={x:0,y:0,width:0,height:0,padding:{top:0,right:0,bottom:0,left:0}},aT=On({name:"brush",initialState:gE,reducers:{setBrushSettings(e,t){return t.payload==null?gE:t.payload}}}),{setBrushSettings:Hte}=aT.actions,tQ=aT.reducer;function nQ(e){return(e%180+180)%180}var rQ=function(t){var{width:n,height:r}=t,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=nQ(i),l=a*Math.PI/180,u=Math.atan(r/n),c=l>u&&l{e.dots.push(t.payload)},removeDot:(e,t)=>{var n=mr(e).dots.findIndex(r=>r===t.payload);n!==-1&&e.dots.splice(n,1)},addArea:(e,t)=>{e.areas.push(t.payload)},removeArea:(e,t)=>{var n=mr(e).areas.findIndex(r=>r===t.payload);n!==-1&&e.areas.splice(n,1)},addLine:(e,t)=>{e.lines.push(t.payload)},removeLine:(e,t)=>{var n=mr(e).lines.findIndex(r=>r===t.payload);n!==-1&&e.lines.splice(n,1)}}}),{addDot:Vte,removeDot:Kte,addArea:Gte,removeArea:Yte,addLine:Xte,removeLine:Qte}=oT.actions,aQ=oT.reducer,oQ=k.createContext(void 0),lQ=e=>{var{children:t}=e,[n]=k.useState("".concat(fs("recharts"),"-clip")),r=Lx();if(r==null)return null;var{x:i,y:a,width:l,height:u}=r;return k.createElement(oQ.Provider,{value:n},k.createElement("defs",null,k.createElement("clipPath",{id:n},k.createElement("rect",{x:i,y:a,height:u,width:l}))),t)};function lT(e,t){if(t<1)return[];if(t===1)return e;for(var n=[],r=0;re*i)return!1;var a=n();return e*(t-e*a/2-r)>=0&&e*(t+e*a/2-i)<=0}function cQ(e,t){return lT(e,t+1)}function fQ(e,t,n,r,i){for(var a=(r||[]).slice(),{start:l,end:u}=t,c=0,f=1,d=l,p=function(){var x=r==null?void 0:r[c];if(x===void 0)return{v:lT(r,f)};var S=c,w,P=()=>(w===void 0&&(w=n(x,S)),w),C=x.coordinate,O=c===0||Ps(e,C,P,d,u);O||(c=0,d=l,f+=1),O&&(d=C+e*(P()/2+i),c+=f)},g;f<=a.length;)if(g=p(),g)return g.v;return[]}function dQ(e,t,n,r,i){var a=(r||[]).slice(),l=a.length;if(l===0)return[];for(var{start:u,end:c}=t,f=1;f<=l;f++){for(var d=(l-1)%f,p=u,g=!0,y=function(){var A=r[S];if(A==null)return 0;var I=S,E,L=()=>(E===void 0&&(E=n(A,I)),E),F=A.coordinate,H=S===d||Ps(e,F,L,p,c);if(!H)return g=!1,1;H&&(p=F+e*(L()/2+i))},x,S=d;S(S===void 0&&(S=n(y,g)),S);if(g===l-1){var P=e*(x.coordinate+e*w()/2-c);a[g]=x=tn(tn({},x),{},{tickCoord:P>0?x.coordinate-P*e:x.coordinate})}else a[g]=x=tn(tn({},x),{},{tickCoord:x.coordinate});if(x.tickCoord!=null){var C=Ps(e,x.tickCoord,w,u,c);C&&(c=x.tickCoord-e*(w()/2+i),a[g]=tn(tn({},x),{},{isShow:!0}))}},d=l-1;d>=0;d--)f(d);return a}function vQ(e,t,n,r,i,a){var l=(r||[]).slice(),u=l.length,{start:c,end:f}=t;if(a){var d=r[u-1];if(d!=null){var p=n(d,u-1),g=e*(d.coordinate+e*p/2-f);if(l[u-1]=d=tn(tn({},d),{},{tickCoord:g>0?d.coordinate-g*e:d.coordinate}),d.tickCoord!=null){var y=Ps(e,d.tickCoord,()=>p,c,f);y&&(f=d.tickCoord-e*(p/2+i),l[u-1]=tn(tn({},d),{},{isShow:!0}))}}}for(var x=a?u-1:u,S=function(C){var O=l[C];if(O==null)return 1;var A=O,I,E=()=>(I===void 0&&(I=n(O,C)),I);if(C===0){var L=e*(A.coordinate-e*E()/2-c);l[C]=A=tn(tn({},A),{},{tickCoord:L<0?A.coordinate-L*e:A.coordinate})}else l[C]=A=tn(tn({},A),{},{tickCoord:A.coordinate});if(A.tickCoord!=null){var F=Ps(e,A.tickCoord,E,c,f);F&&(c=A.tickCoord+e*(E()/2+i),l[C]=tn(tn({},A),{},{isShow:!0}))}},w=0;w{var L=typeof f=="function"?f(I.value,E):I.value;return x==="width"?sQ(ls(L,{fontSize:t,letterSpacing:n}),S,p):ls(L,{fontSize:t,letterSpacing:n})[x]},P=i[0],C=i[1],O=i.length>=2&&P!=null&&C!=null?jn(C.coordinate-P.coordinate):1,A=uQ(a,O,x);return c==="equidistantPreserveStart"?fQ(O,A,w,i,l):c==="equidistantPreserveEnd"?dQ(O,A,w,i,l):(c==="preserveStart"||c==="preserveStartEnd"?y=vQ(O,A,w,i,l,c==="preserveStartEnd"):y=gQ(O,A,w,i,l),y.filter(I=>I.isShow))}var yQ=e=>{var{ticks:t,label:n,labelGapWithTick:r=5,tickSize:i=0,tickMargin:a=0}=e,l=0;if(t){Array.from(t).forEach(d=>{if(d){var p=d.getBoundingClientRect();p.width>l&&(l=p.width)}});var u=n?n.getBoundingClientRect().width:0,c=i+a,f=l+c+u+(n?r:0);return Math.round(f)}return 0},xQ=["axisLine","width","height","className","hide","ticks","axisType"];function bQ(e,t){if(e==null)return{};var n,r,i=wQ(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{var{ticks:n=[],tick:r,tickLine:i,stroke:a,tickFormatter:l,unit:u,padding:c,tickTextProps:f,orientation:d,mirror:p,x:g,y,width:x,height:S,tickSize:w,tickMargin:P,fontSize:C,letterSpacing:O,getTicksConfig:A,events:I,axisType:E}=e,L=Rx(ht(ht({},A),{},{ticks:n}),C,O),F=CQ(d,p),H=OQ(d,p),R=Jn(A),W=As(r),M={};typeof i=="object"&&(M=i);var Z=ht(ht({},R),{},{fill:"none"},M),Y=L.map(de=>ht({entry:de},EQ(de,g,y,x,S,d,w,p,P))),Q=Y.map(de=>{var{entry:J,line:ae}=de;return k.createElement(hn,{className:"recharts-cartesian-axis-tick",key:"tick-".concat(J.value,"-").concat(J.coordinate,"-").concat(J.tickCoord)},i&&k.createElement("line",Ra({},Z,ae,{className:Ge("recharts-cartesian-axis-tick-line",To(i,"className"))})))}),he=Y.map((de,J)=>{var ae,T,{entry:$,tick:U}=de,_=ht(ht(ht(ht({verticalAnchor:H},R),{},{textAnchor:F,stroke:"none",fill:a},U),{},{index:J,payload:$,visibleTicksCount:L.length,tickFormatter:l,padding:c},f),{},{angle:(ae=(T=f==null?void 0:f.angle)!==null&&T!==void 0?T:R.angle)!==null&&ae!==void 0?ae:0}),te=ht(ht({},_),W);return k.createElement(hn,Ra({className:"recharts-cartesian-axis-tick-label",key:"tick-label-".concat($.value,"-").concat($.coordinate,"-").concat($.tickCoord)},ky(I,$,J)),r&&k.createElement(NQ,{option:r,tickProps:te,value:"".concat(typeof l=="function"?l($.value,J):$.value).concat(u||"")}))});return k.createElement("g",{className:"recharts-cartesian-axis-ticks recharts-".concat(E,"-ticks")},he.length>0&&k.createElement(rr,{zIndex:Rt.label},k.createElement("g",{className:"recharts-cartesian-axis-tick-labels recharts-".concat(E,"-tick-labels"),ref:t},he)),Q.length>0&&k.createElement("g",{className:"recharts-cartesian-axis-tick-lines recharts-".concat(E,"-tick-lines")},Q))}),_Q=k.forwardRef((e,t)=>{var{axisLine:n,width:r,height:i,className:a,hide:l,ticks:u,axisType:c}=e,f=bQ(e,xQ),[d,p]=k.useState(""),[g,y]=k.useState(""),x=k.useRef(null);k.useImperativeHandle(t,()=>({getCalculatedWidth:()=>{var w;return yQ({ticks:x.current,label:(w=e.labelRef)===null||w===void 0?void 0:w.current,labelGapWithTick:5,tickSize:e.tickSize,tickMargin:e.tickMargin})}}));var S=k.useCallback(w=>{if(w){var P=w.getElementsByClassName("recharts-cartesian-axis-tick-value");x.current=P;var C=P[0];if(C){var O=window.getComputedStyle(C),A=O.fontSize,I=O.letterSpacing;(A!==d||I!==g)&&(p(A),y(I))}}},[d,g]);return l||r!=null&&r<=0||i!=null&&i<=0?null:k.createElement(rr,{zIndex:e.zIndex},k.createElement(hn,{className:Ge("recharts-cartesian-axis",a)},k.createElement(PQ,{x:e.x,y:e.y,width:r,height:i,orientation:e.orientation,mirror:e.mirror,axisLine:n,otherSvgProps:Jn(e)}),k.createElement(AQ,{ref:S,axisType:c,events:f,fontSize:d,getTicksConfig:e,height:e.height,letterSpacing:g,mirror:e.mirror,orientation:e.orientation,padding:e.padding,stroke:e.stroke,tick:e.tick,tickFormatter:e.tickFormatter,tickLine:e.tickLine,tickMargin:e.tickMargin,tickSize:e.tickSize,tickTextProps:e.tickTextProps,ticks:u,unit:e.unit,width:e.width,x:e.x,y:e.y}),k.createElement(dY,{x:e.x,y:e.y,width:e.width,height:e.height,lowerWidth:e.width,upperWidth:e.width},k.createElement(kY,{label:e.label,labelRef:e.labelRef}),e.children)))}),zx=k.forwardRef((e,t)=>{var n=mn(e,ri);return k.createElement(_Q,Ra({},n,{ref:t}))});zx.displayName="CartesianAxis";var IQ=["x1","y1","x2","y2","key"],TQ=["offset"],MQ=["xAxisId","yAxisId"],DQ=["xAxisId","yAxisId"];function xE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function nn(e){for(var t=1;t{var{fill:t}=e;if(!t||t==="none")return null;var{fillOpacity:n,x:r,y:i,width:a,height:l,ry:u}=e;return k.createElement("rect",{x:r,y:i,ry:u,width:a,height:l,stroke:"none",fill:t,fillOpacity:n,className:"recharts-cartesian-grid-bg"})};function sT(e){var{option:t,lineItemProps:n}=e,r;if(k.isValidElement(t))r=k.cloneElement(t,n);else if(typeof t=="function")r=t(n);else{var i,{x1:a,y1:l,x2:u,y2:c,key:f}=n,d=If(n,IQ),p=(i=Jn(d))!==null&&i!==void 0?i:{},{offset:g}=p,y=If(p,TQ);r=k.createElement("line",ja({},y,{x1:a,y1:l,x2:u,y2:c,fill:"none",key:f}))}return r}function BQ(e){var{x:t,width:n,horizontal:r=!0,horizontalPoints:i}=e;if(!r||!i||!i.length)return null;var{xAxisId:a,yAxisId:l}=e,u=If(e,MQ),c=i.map((f,d)=>{var p=nn(nn({},u),{},{x1:t,y1:f,x2:t+n,y2:f,key:"line-".concat(d),index:d});return k.createElement(sT,{key:"line-".concat(d),option:r,lineItemProps:p})});return k.createElement("g",{className:"recharts-cartesian-grid-horizontal"},c)}function UQ(e){var{y:t,height:n,vertical:r=!0,verticalPoints:i}=e;if(!r||!i||!i.length)return null;var{xAxisId:a,yAxisId:l}=e,u=If(e,DQ),c=i.map((f,d)=>{var p=nn(nn({},u),{},{x1:f,y1:t,x2:f,y2:t+n,key:"line-".concat(d),index:d});return k.createElement(sT,{option:r,lineItemProps:p,key:"line-".concat(d)})});return k.createElement("g",{className:"recharts-cartesian-grid-vertical"},c)}function WQ(e){var{horizontalFill:t,fillOpacity:n,x:r,y:i,width:a,height:l,horizontalPoints:u,horizontal:c=!0}=e;if(!c||!t||!t.length||u==null)return null;var f=u.map(p=>Math.round(p+i-i)).sort((p,g)=>p-g);i!==f[0]&&f.unshift(0);var d=f.map((p,g)=>{var y=f[g+1],x=y==null,S=x?i+l-p:y-p;if(S<=0)return null;var w=g%t.length;return k.createElement("rect",{key:"react-".concat(g),y:p,x:r,height:S,width:a,stroke:"none",fill:t[w],fillOpacity:n,className:"recharts-cartesian-grid-bg"})});return k.createElement("g",{className:"recharts-cartesian-gridstripes-horizontal"},d)}function qQ(e){var{vertical:t=!0,verticalFill:n,fillOpacity:r,x:i,y:a,width:l,height:u,verticalPoints:c}=e;if(!t||!n||!n.length)return null;var f=c.map(p=>Math.round(p+i-i)).sort((p,g)=>p-g);i!==f[0]&&f.unshift(0);var d=f.map((p,g)=>{var y=f[g+1],x=y==null,S=x?i+l-p:y-p;if(S<=0)return null;var w=g%n.length;return k.createElement("rect",{key:"react-".concat(g),x:p,y:a,width:S,height:u,stroke:"none",fill:n[w],fillOpacity:r,className:"recharts-cartesian-grid-bg"})});return k.createElement("g",{className:"recharts-cartesian-gridstripes-vertical"},d)}var HQ=(e,t)=>{var{xAxis:n,width:r,height:i,offset:a}=e;return RN(Rx(nn(nn(nn({},ri),n),{},{ticks:zN(n),viewBox:{x:0,y:0,width:r,height:i}})),a.left,a.left+a.width,t)},VQ=(e,t)=>{var{yAxis:n,width:r,height:i,offset:a}=e;return RN(Rx(nn(nn(nn({},ri),n),{},{ticks:zN(n),viewBox:{x:0,y:0,width:r,height:i}})),a.top,a.top+a.height,t)},KQ={horizontal:!0,vertical:!0,horizontalPoints:[],verticalPoints:[],stroke:"#ccc",fill:"none",verticalFill:[],horizontalFill:[],xAxisId:0,yAxisId:0,syncWithTicks:!1,zIndex:Rt.grid};function $x(e){var t=VN(),n=KN(),r=HN(),i=nn(nn({},mn(e,KQ)),{},{x:ge(e.x)?e.x:r.left,y:ge(e.y)?e.y:r.top,width:ge(e.width)?e.width:r.width,height:ge(e.height)?e.height:r.height}),{xAxisId:a,yAxisId:l,x:u,y:c,width:f,height:d,syncWithTicks:p,horizontalValues:g,verticalValues:y}=i,x=on(),S=Pe(H=>dP(H,"xAxis",a,x)),w=Pe(H=>dP(H,"yAxis",l,x));if(!Lr(f)||!Lr(d)||!ge(u)||!ge(c))return null;var P=i.verticalCoordinatesGenerator||HQ,C=i.horizontalCoordinatesGenerator||VQ,{horizontalPoints:O,verticalPoints:A}=i;if((!O||!O.length)&&typeof C=="function"){var I=g&&g.length,E=C({yAxis:w?nn(nn({},w),{},{ticks:I?g:w.ticks}):void 0,width:t??f,height:n??d,offset:r},I?!0:p);nf(Array.isArray(E),"horizontalCoordinatesGenerator should return Array but instead it returned [".concat(typeof E,"]")),Array.isArray(E)&&(O=E)}if((!A||!A.length)&&typeof P=="function"){var L=y&&y.length,F=P({xAxis:S?nn(nn({},S),{},{ticks:L?y:S.ticks}):void 0,width:t??f,height:n??d,offset:r},L?!0:p);nf(Array.isArray(F),"verticalCoordinatesGenerator should return Array but instead it returned [".concat(typeof F,"]")),Array.isArray(F)&&(A=F)}return k.createElement(rr,{zIndex:i.zIndex},k.createElement("g",{className:"recharts-cartesian-grid"},k.createElement(FQ,{fill:i.fill,fillOpacity:i.fillOpacity,x:i.x,y:i.y,width:i.width,height:i.height,ry:i.ry}),k.createElement(WQ,ja({},i,{horizontalPoints:O})),k.createElement(qQ,ja({},i,{verticalPoints:A})),k.createElement(BQ,ja({},i,{offset:r,horizontalPoints:O,xAxis:S,yAxis:w})),k.createElement(UQ,ja({},i,{offset:r,verticalPoints:A,xAxis:S,yAxis:w}))))}$x.displayName="CartesianGrid";var GQ={},uT=On({name:"errorBars",initialState:GQ,reducers:{addErrorBar:(e,t)=>{var{itemId:n,errorBar:r}=t.payload;e[n]||(e[n]=[]),e[n].push(r)},replaceErrorBar:(e,t)=>{var{itemId:n,prev:r,next:i}=t.payload;e[n]&&(e[n]=e[n].map(a=>a.dataKey===r.dataKey&&a.direction===r.direction?i:a))},removeErrorBar:(e,t)=>{var{itemId:n,errorBar:r}=t.payload;e[n]&&(e[n]=e[n].filter(i=>i.dataKey!==r.dataKey||i.direction!==r.direction))}}}),{addErrorBar:Zte,replaceErrorBar:Jte,removeErrorBar:ene}=uT.actions,YQ=uT.reducer,XQ=["children"];function QQ(e,t){if(e==null)return{};var n,r,i=ZQ(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r({x:0,y:0,value:0}),errorBarOffset:0},eZ=k.createContext(JQ);function tZ(e){var{children:t}=e,n=QQ(e,XQ);return k.createElement(eZ.Provider,{value:n},t)}function Fx(e,t){var n,r,i=Pe(f=>gi(f,e)),a=Pe(f=>vi(f,t)),l=(n=i==null?void 0:i.allowDataOverflow)!==null&&n!==void 0?n:Mt.allowDataOverflow,u=(r=a==null?void 0:a.allowDataOverflow)!==null&&r!==void 0?r:Dt.allowDataOverflow,c=l||u;return{needClip:c,needClipX:l,needClipY:u}}function cT(e){var{xAxisId:t,yAxisId:n,clipPathId:r}=e,i=Lx(),{needClipX:a,needClipY:l,needClip:u}=Fx(t,n);if(!u||!i)return null;var{x:c,y:f,width:d,height:p}=i;return k.createElement("clipPath",{id:"clipPath-".concat(r)},k.createElement("rect",{x:a?c:c-d/2,y:l?f:f-p/2,width:a?d:d*2,height:l?p:p*2}))}function nZ(e){var t=As(e),n=3,r=2;if(t!=null){var{r:i,strokeWidth:a}=t,l=Number(i),u=Number(a);return(Number.isNaN(l)||l<0)&&(l=n),(Number.isNaN(u)||u<0)&&(u=r),{r:l,strokeWidth:u}}return{r:n,strokeWidth:r}}var Pg={exports:{}},Eg={};/** * @license React * use-sync-external-store-with-selector.production.js * @@ -129,7 +129,7 @@ Error generating stack: `+j.message+` * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var vE;function GQ(){if(vE)return jg;vE=1;var e=$o();function t(c,f){return c===f&&(c!==0||1/c===1/f)||c!==c&&f!==f}var n=typeof Object.is=="function"?Object.is:t,r=e.useSyncExternalStore,i=e.useRef,a=e.useEffect,l=e.useMemo,u=e.useDebugValue;return jg.useSyncExternalStoreWithSelector=function(c,f,d,p,g){var y=i(null);if(y.current===null){var b={hasValue:!1,value:null};y.current=b}else b=y.current;y=l(function(){function w(I){if(!P){if(P=!0,C=I,I=p(I),g!==void 0&&b.hasValue){var E=b.value;if(g(E,I))return O=E}return O=I}if(E=O,n(C,I))return E;var L=p(I);return g!==void 0&&g(E,L)?(C=I,E):(C=I,O=L)}var P=!1,C,O,A=d===void 0?null:d;return[function(){return w(f())},A===null?void 0:function(){return w(A())}]},[f,d,p,g]);var S=r(c,y[0],y[1]);return a(function(){b.hasValue=!0,b.value=S},[S]),u(S),S},jg}var yE;function YQ(){return yE||(yE=1,Sg.exports=GQ()),Sg.exports}YQ();function XQ(e){e()}function QQ(){let e=null,t=null;return{clear(){e=null,t=null},notify(){XQ(()=>{let n=e;for(;n;)n.callback(),n=n.next})},get(){const n=[];let r=e;for(;r;)n.push(r),r=r.next;return n},subscribe(n){let r=!0;const i=t={callback:n,next:null,prev:t};return i.prev?i.prev.next=i:e=i,function(){!r||e===null||(r=!1,i.next?i.next.prev=i.prev:t=i.prev,i.prev?i.prev.next=i.next:e=i.next)}}}}var xE={notify(){},get:()=>[]};function ZQ(e,t){let n,r=xE,i=0,a=!1;function l(S){d();const w=r.subscribe(S);let P=!1;return()=>{P||(P=!0,w(),p())}}function u(){r.notify()}function c(){b.onStateChange&&b.onStateChange()}function f(){return a}function d(){i++,n||(n=e.subscribe(c),r=QQ())}function p(){i--,n&&i===0&&(n(),n=void 0,r.clear(),r=xE)}function g(){a||(a=!0,d())}function y(){a&&(a=!1,p())}const b={addNestedSub:l,notifyNestedSubs:u,handleChangeWrapper:c,isSubscribed:f,trySubscribe:g,tryUnsubscribe:y,getListeners:()=>r};return b}var JQ=()=>typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",eZ=JQ(),tZ=()=>typeof navigator<"u"&&navigator.product==="ReactNative",nZ=tZ(),rZ=()=>eZ||nZ?k.useLayoutEffect:k.useEffect,iZ=rZ();function bE(e,t){return e===t?e!==0||t!==0||1/e===1/t:e!==e&&t!==t}function aZ(e,t){if(bE(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;const n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let i=0;i{const c=ZQ(i);return{store:i,subscription:c,getServerState:r?()=>r:void 0}},[i,r]),l=k.useMemo(()=>i.getState(),[i]);iZ(()=>{const{subscription:c}=a;return c.onStateChange=c.notifyNestedSubs,c.trySubscribe(),l!==i.getState()&&c.notifyNestedSubs(),()=>{c.tryUnsubscribe(),c.onStateChange=void 0}},[a,l]);const u=n||lZ;return k.createElement(u.Provider,{value:a},t)}var uZ=sZ,cZ=new Set(["axisLine","tickLine","activeBar","activeDot","activeLabel","activeShape","allowEscapeViewBox","background","cursor","dot","label","line","margin","padding","position","shape","style","tick","wrapperStyle","radius"]);function fZ(e,t){return e==null&&t==null?!0:typeof e=="number"&&typeof t=="number"?e===t||e!==e&&t!==t:e===t}function Td(e,t){var n=new Set([...Object.keys(e),...Object.keys(t)]);for(var r of n)if(cZ.has(r)){if(e[r]==null&&t[r]==null)continue;if(!aZ(e[r],t[r]))return!1}else if(!fZ(e[r],t[r]))return!1;return!0}function $r(e,t){var n,r;return(n=(r=e.graphicalItems.cartesianItems.find(i=>i.id===t))===null||r===void 0?void 0:r.xAxisId)!==null&&n!==void 0?n:ZI}function Fr(e,t){var n,r;return(n=(r=e.graphicalItems.cartesianItems.find(i=>i.id===t))===null||r===void 0?void 0:r.yAxisId)!==null&&n!==void 0?n:ZI}var oT=(e,t,n)=>Qi(e,"xAxis",$r(e,t),n),lT=(e,t,n)=>Xi(e,"xAxis",$r(e,t),n),sT=(e,t,n)=>Qi(e,"yAxis",Fr(e,t),n),uT=(e,t,n)=>Xi(e,"yAxis",Fr(e,t),n),dZ=G([He,oT,sT,lT,uT],(e,t,n,r,i)=>zr(e,"xAxis")?Do(t,r,!1):Do(n,i,!1)),hZ=(e,t)=>t,cT=G([Od,hZ],(e,t)=>e.filter(n=>n.type==="area").find(n=>n.id===t)),fT=e=>{var t=He(e),n=zr(t,"xAxis");return n?"yAxis":"xAxis"},pZ=(e,t)=>{var n=fT(e);return n==="yAxis"?Fr(e,t):$r(e,t)},mZ=(e,t,n)=>jf(e,fT(e),pZ(e,t),n),gZ=G([cT,mZ],(e,t)=>{var n;if(!(e==null||t==null)){var{stackId:r}=e,i=jd(e);if(!(r==null||i==null)){var a=(n=t[r])===null||n===void 0?void 0:n.stackedData,l=a==null?void 0:a.find(u=>u.key===i);if(l!=null)return l.map(u=>[u[0],u[1]])}}}),vZ=G([He,oT,sT,lT,uT,gZ,UA,dZ,cT,ZH],(e,t,n,r,i,a,l,u,c,f)=>{var{chartData:d,dataStartIndex:p,dataEndIndex:g}=l;if(!(c==null||e!=="horizontal"&&e!=="vertical"||t==null||n==null||r==null||i==null||r.length===0||i.length===0||u==null)){var{data:y}=c,b;if(y&&y.length>0?b=y:b=d==null?void 0:d.slice(p,g+1),b!=null)return LZ({layout:e,xAxis:t,yAxis:n,xAxisTicks:r,yAxisTicks:i,dataStartIndex:p,areaSettings:c,stackedData:a,displayedData:b,chartBaseValue:f,bandSize:u})}}),yZ=["id"],xZ=["activeDot","animationBegin","animationDuration","animationEasing","connectNulls","dot","fill","fillOpacity","hide","isAnimationActive","legendType","stroke","xAxisId","yAxisId"];function Ca(){return Ca=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{dataKey:t,name:n,stroke:r,fill:i,legendType:a,hide:l}=e;return[{inactive:l,dataKey:t,type:a,color:If(r,i),value:nd(n,t),payload:e}]},PZ=k.memo(e=>{var{dataKey:t,data:n,stroke:r,strokeWidth:i,fill:a,name:l,hide:u,unit:c,tooltipType:f,id:d}=e,p={dataDefinedOnItem:n,getPosition:$a,settings:{stroke:r,strokeWidth:i,fill:a,dataKey:t,nameKey:void 0,name:nd(l,t),hide:u,type:f,color:If(r,a),unit:c,graphicalItemId:d}};return k.createElement(KI,{tooltipEntrySettings:p})});function EZ(e){var{clipPathId:t,points:n,props:r}=e,{needClip:i,dot:a,dataKey:l}=r,u=Zn(r);return k.createElement(gX,{points:n,dot:a,className:"recharts-area-dots",dotClassName:"recharts-area-dot",dataKey:l,baseProps:u,needClip:i,clipPathId:t})}function CZ(e){var{showLabels:t,children:n,points:r}=e,i=r.map(a=>{var l,u,c={x:(l=a.x)!==null&&l!==void 0?l:0,y:(u=a.y)!==null&&u!==void 0?u:0,width:0,lowerWidth:0,upperWidth:0,height:0};return jo(jo({},c),{},{value:a.value,payload:a.payload,parentViewBox:void 0,viewBox:c,fill:void 0})});return k.createElement(RI,{value:t?i:void 0},n)}function kE(e){var{points:t,baseLine:n,needClip:r,clipPathId:i,props:a}=e,{layout:l,type:u,stroke:c,connectNulls:f,isRange:d}=a,{id:p}=a,g=dT(a,yZ),y=Zn(g),b=dn(g);return k.createElement(k.Fragment,null,(t==null?void 0:t.length)>1&&k.createElement(hn,{clipPath:r?"url(#clipPath-".concat(i,")"):void 0},k.createElement(as,Ca({},b,{id:p,points:t,connectNulls:f,type:u,baseLine:n,layout:l,stroke:"none",className:"recharts-area-area"})),c!=="none"&&k.createElement(as,Ca({},y,{className:"recharts-area-curve",layout:l,type:u,connectNulls:f,fill:"none",points:t})),c!=="none"&&d&&k.createElement(as,Ca({},y,{className:"recharts-area-curve",layout:l,type:u,connectNulls:f,fill:"none",points:n}))),k.createElement(EZ,{points:t,props:g,clipPathId:i}))}function OZ(e){var t,n,{alpha:r,baseLine:i,points:a,strokeWidth:l}=e,u=(t=a[0])===null||t===void 0?void 0:t.y,c=(n=a[a.length-1])===null||n===void 0?void 0:n.y;if(!De(u)||!De(c))return null;var f=r*Math.abs(u-c),d=Math.max(...a.map(p=>p.x||0));return ge(i)?d=Math.max(i,d):i&&Array.isArray(i)&&i.length&&(d=Math.max(...i.map(p=>p.x||0),d)),ge(d)?k.createElement("rect",{x:0,y:up.y||0));return ge(i)?d=Math.max(i,d):i&&Array.isArray(i)&&i.length&&(d=Math.max(...i.map(p=>p.y||0),d)),ge(d)?k.createElement("rect",{x:u({points:l,baseLine:u}),[l,u]),S=dd(b,"recharts-area-"),w=Ty(),[P,C]=k.useState(!1),O=!P,A=k.useCallback(()=>{typeof y=="function"&&y(),C(!1)},[y]),I=k.useCallback(()=>{typeof g=="function"&&g(),C(!0)},[g]);if(w==null)return null;var E=i.current,L=a.current;return k.createElement(CZ,{showLabels:O,points:l},r.children,k.createElement(fd,{animationId:S,begin:f,duration:d,isActive:c,easing:p,onAnimationEnd:A,onAnimationStart:I,key:S},F=>{if(E){var H=E.length/l.length,R=F===1?l:l.map((D,Z)=>{var Y=Math.floor(Z*H);if(E[Y]){var Q=E[Y];return jo(jo({},D),{},{x:ut(Q.x,D.x,F),y:ut(Q.y,D.y,F)})}return D}),W;return ge(u)?W=ut(L,u,F):mt(u)||mr(u)?W=ut(L,0,F):W=u.map((D,Z)=>{var Y=Math.floor(Z*H);if(Array.isArray(L)&&L[Y]){var Q=L[Y];return jo(jo({},D),{},{x:ut(Q.x,D.x,F),y:ut(Q.y,D.y,F)})}return D}),F>0&&(i.current=R,a.current=W),k.createElement(kE,{points:R,baseLine:W,needClip:t,clipPathId:n,props:r})}return F>0&&(i.current=l,a.current=u),k.createElement(hn,null,c&&k.createElement("defs",null,k.createElement("clipPath",{id:"animationClipPath-".concat(n)},k.createElement(AZ,{alpha:F,points:l,baseLine:u,layout:w,strokeWidth:r.strokeWidth}))),k.createElement(hn,{clipPath:"url(#animationClipPath-".concat(n,")")},k.createElement(kE,{points:l,baseLine:u,needClip:t,clipPathId:n,props:r})))}),k.createElement($I,{label:r.label}))}function IZ(e){var{needClip:t,clipPathId:n,props:r}=e,i=k.useRef(null),a=k.useRef();return k.createElement(_Z,{needClip:t,clipPathId:n,props:r,previousPointsRef:i,previousBaselineRef:a})}class TZ extends k.PureComponent{render(){var{hide:t,dot:n,points:r,className:i,top:a,left:l,needClip:u,xAxisId:c,yAxisId:f,width:d,height:p,id:g,baseLine:y,zIndex:b}=this.props;if(t)return null;var S=Ge("recharts-area",i),w=g,{r:P,strokeWidth:C}=KQ(n),O=WI(n),A=P*2+C,I=u?"url(#clipPath-".concat(O?"":"dots-").concat(w,")"):void 0;return k.createElement(nr,{zIndex:b},k.createElement(hn,{className:S},u&&k.createElement("defs",null,k.createElement(aT,{clipPathId:w,xAxisId:c,yAxisId:f}),!O&&k.createElement("clipPath",{id:"clipPath-dots-".concat(w)},k.createElement("rect",{x:l-A/2,y:a-A/2,width:d+A,height:p+A}))),k.createElement(IZ,{needClip:u,clipPathId:w,props:this.props})),k.createElement(cE,{points:r,mainColor:If(this.props.stroke,this.props.fill),itemDataKey:this.props.dataKey,activeDot:this.props.activeDot,clipPath:I}),this.props.isRange&&Array.isArray(y)&&k.createElement(cE,{points:y,mainColor:If(this.props.stroke,this.props.fill),itemDataKey:this.props.dataKey,activeDot:this.props.activeDot,clipPath:I}))}}var hT={activeDot:!0,animationBegin:0,animationDuration:1500,animationEasing:"ease",connectNulls:!1,dot:!1,fill:"#3182bd",fillOpacity:.6,hide:!1,isAnimationActive:"auto",legendType:"line",stroke:"#3182bd",strokeWidth:1,type:"linear",label:!1,xAxisId:0,yAxisId:0,zIndex:Rt.area};function DZ(e){var t,n=mn(e,hT),{activeDot:r,animationBegin:i,animationDuration:a,animationEasing:l,connectNulls:u,dot:c,fill:f,fillOpacity:d,hide:p,isAnimationActive:g,legendType:y,stroke:b,xAxisId:S,yAxisId:w}=n,P=dT(n,xZ),C=Fa(),O=mI(),{needClip:A}=zx(S,w),I=on(),{points:E,isRange:L,baseLine:F}=(t=Pe(Y=>vZ(Y,e.id,I)))!==null&&t!==void 0?t:{},H=Dx();if(C!=="horizontal"&&C!=="vertical"||H==null||O!=="AreaChart"&&O!=="ComposedChart")return null;var{height:R,width:W,x:D,y:Z}=H;return!E||!E.length?null:k.createElement(TZ,Ca({},P,{activeDot:r,animationBegin:i,animationDuration:a,animationEasing:l,baseLine:F,connectNulls:u,dot:c,fill:f,fillOpacity:d,height:R,hide:p,layout:C,isAnimationActive:g==="auto"?!Ls.isSsr:g,isRange:L,legendType:y,needClip:A,points:E,stroke:b,width:W,left:D,top:Z,xAxisId:S,yAxisId:w}))}var MZ=(e,t,n,r,i)=>{var a=n??t;if(ge(a))return a;var l=e==="horizontal"?i:r,u=l.scale.domain();if(l.type==="number"){var c=Math.max(u[0],u[1]),f=Math.min(u[0],u[1]);return a==="dataMin"?f:a==="dataMax"||c<0?c:Math.max(Math.min(u[0],u[1]),0)}return a==="dataMin"?u[0]:a==="dataMax"?u[1]:u[0]};function LZ(e){var{areaSettings:{connectNulls:t,baseValue:n,dataKey:r},stackedData:i,layout:a,chartBaseValue:l,xAxis:u,yAxis:c,displayedData:f,dataStartIndex:d,xAxisTicks:p,yAxisTicks:g,bandSize:y}=e,b=i&&i.length,S=MZ(a,l,n,u,c),w=a==="horizontal",P=!1,C=f.map((A,I)=>{var E,L,F,H;if(b)H=i[d+I];else{var R=St(A,r);Array.isArray(R)?(H=R,P=!0):H=[S,R]}var W=(E=(L=H)===null||L===void 0?void 0:L[1])!==null&&E!==void 0?E:null,D=W==null||b&&!t&&St(A,r)==null;if(w){var Z;return{x:sS({axis:u,ticks:p,bandSize:y,entry:A,index:I}),y:D?null:(Z=c.scale.map(W))!==null&&Z!==void 0?Z:null,value:H,payload:A}}return{x:D?null:(F=u.scale.map(W))!==null&&F!==void 0?F:null,y:sS({axis:c,ticks:g,bandSize:y,entry:A,index:I}),value:H,payload:A}}),O;return b||P?O=C.map(A=>{var I,E=Array.isArray(A.value)?A.value[0]:null;if(w){var L;return{x:A.x,y:E!=null&&A.y!=null&&(L=c.scale.map(E))!==null&&L!==void 0?L:null,payload:A.payload}}return{x:E!=null&&(I=u.scale.map(E))!==null&&I!==void 0?I:null,y:A.y,payload:A.payload}}):O=w?c.scale.map(S):u.scale.map(S),{points:C,baseLine:O??0,isRange:P}}function RZ(e){var t=mn(e,hT),n=on();return k.createElement(YI,{id:t.id,type:"area"},r=>k.createElement(k.Fragment,null,k.createElement(GI,{legendPayload:jZ(t)}),k.createElement(PZ,{dataKey:t.dataKey,data:t.data,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,tooltipType:t.tooltipType,id:r}),k.createElement(QI,{type:"area",id:r,data:t.data,dataKey:t.dataKey,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,stackId:DN(t.stackId),hide:t.hide,barSize:void 0,baseValue:t.baseValue,isPanorama:n,connectNulls:t.connectNulls}),k.createElement(DZ,Ca({},t,{id:r}))))}var Tv=k.memo(RZ,Td);Tv.displayName="Area";var zZ="Invariant failed";function $Z(e,t){throw new Error(zZ)}function Dv(){return Dv=Object.assign?Object.assign.bind():function(e){for(var t=1;t1&&arguments[1]!==void 0?arguments[1]:0;return(r,i)=>{if(ge(t))return t;var a=ge(r)||mt(r);return a?t(r,i):(a||$Z(),n)}},BZ=(e,t,n)=>n,UZ=(e,t)=>t,Ks=G([Od,UZ],(e,t)=>e.filter(n=>n.type==="bar").find(n=>n.id===t)),WZ=G([Ks],e=>e==null?void 0:e.maxBarSize),qZ=(e,t,n,r)=>r,HZ=G([He,Od,$r,Fr,BZ],(e,t,n,r,i)=>t.filter(a=>e==="horizontal"?a.xAxisId===n:a.yAxisId===r).filter(a=>a.isPanorama===i).filter(a=>a.hide===!1).filter(a=>a.type==="bar")),VZ=(e,t,n)=>{var r=He(e),i=$r(e,t),a=Fr(e,t);if(!(i==null||a==null))return r==="horizontal"?jf(e,"yAxis",a,n):jf(e,"xAxis",i,n)},KZ=(e,t)=>{var n=He(e),r=$r(e,t),i=Fr(e,t);if(!(r==null||i==null))return n==="horizontal"?sP(e,"xAxis",r):sP(e,"yAxis",i)},GZ=G([HZ,QH,KZ],LX),YZ=(e,t,n)=>{var r,i,a=Ks(e,t);if(a==null)return 0;var l=$r(e,t),u=Fr(e,t);if(l==null||u==null)return 0;var c=He(e),f=e_(e),{maxBarSize:d}=a,p=mt(d)?f:d,g,y;return c==="horizontal"?(g=Qi(e,"xAxis",l,n),y=Xi(e,"xAxis",l,n)):(g=Qi(e,"yAxis",u,n),y=Xi(e,"yAxis",u,n)),(r=(i=Do(g,y,!0))!==null&&i!==void 0?i:p)!==null&&r!==void 0?r:0},pT=(e,t,n)=>{var r=He(e),i=$r(e,t),a=Fr(e,t);if(!(i==null||a==null)){var l,u;return r==="horizontal"?(l=Qi(e,"xAxis",i,n),u=Xi(e,"xAxis",i,n)):(l=Qi(e,"yAxis",a,n),u=Xi(e,"yAxis",a,n)),Do(l,u)}},XZ=G([GZ,e_,XH,t_,YZ,pT,WZ],BX),QZ=(e,t,n)=>{var r=$r(e,t);if(r!=null)return Qi(e,"xAxis",r,n)},ZZ=(e,t,n)=>{var r=Fr(e,t);if(r!=null)return Qi(e,"yAxis",r,n)},JZ=(e,t,n)=>{var r=$r(e,t);if(r!=null)return Xi(e,"xAxis",r,n)},eJ=(e,t,n)=>{var r=Fr(e,t);if(r!=null)return Xi(e,"yAxis",r,n)},tJ=G([XZ,Ks],WX),nJ=G([VZ,Ks],UX),rJ=G([zt,Ay,QZ,ZZ,JZ,eJ,tJ,He,UA,pT,nJ,Ks,qZ],(e,t,n,r,i,a,l,u,c,f,d,p,g)=>{var{chartData:y,dataStartIndex:b,dataEndIndex:S}=c;if(!(p==null||l==null||t==null||u!=="horizontal"&&u!=="vertical"||n==null||r==null||i==null||a==null||f==null)){var{data:w}=p,P;if(w!=null&&w.length>0?P=w:P=y==null?void 0:y.slice(b,S+1),P!=null)return _J({layout:u,barSettings:p,pos:l,parentViewBox:t,bandSize:f,xAxis:n,yAxis:r,xAxisTicks:i,yAxisTicks:a,stackedData:d,displayedData:P,offset:e,cells:g,dataStartIndex:b})}}),iJ=["index"];function Mv(){return Mv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var t=k.useContext(mT);if(t!=null)return t.stackId;if(e!=null)return DN(e)},sJ=(e,t)=>"recharts-bar-stack-clip-path-".concat(e,"-").concat(t),uJ=e=>{var t=k.useContext(mT);if(t!=null){var{stackId:n}=t;return"url(#".concat(sJ(n,e),")")}},gT=e=>{var{index:t}=e,n=aJ(e,iJ),r=uJ(t);return k.createElement(hn,Mv({className:"recharts-bar-stack-layer",clipPath:r},n))},cJ=["onMouseEnter","onMouseLeave","onClick"],fJ=["value","background","tooltipPosition"],dJ=["id"],hJ=["onMouseEnter","onClick","onMouseLeave"];function ui(){return ui=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{dataKey:t,name:n,fill:r,legendType:i,hide:a}=e;return[{inactive:a,dataKey:t,type:i,color:r,value:nd(n,t),payload:e}]},xJ=k.memo(e=>{var{dataKey:t,stroke:n,strokeWidth:r,fill:i,name:a,hide:l,unit:u,tooltipType:c,id:f}=e,d={dataDefinedOnItem:void 0,getPosition:$a,settings:{stroke:n,strokeWidth:r,fill:i,dataKey:t,nameKey:void 0,name:nd(a,t),hide:l,type:c,color:i,unit:u,graphicalItemId:f}};return k.createElement(KI,{tooltipEntrySettings:d})});function bJ(e){var t=Pe(Ma),{data:n,dataKey:r,background:i,allOtherBarProps:a}=e,{onMouseEnter:l,onMouseLeave:u,onClick:c}=a,f=Df(a,cJ),d=qI(l,r,a.id),p=HI(u),g=VI(c,r,a.id);if(!i||n==null)return null;var y=Ns(i);return k.createElement(nr,{zIndex:qX(i,Rt.barBackground)},n.map((b,S)=>{var{value:w,background:P,tooltipPosition:C}=b,O=Df(b,fJ);if(!P)return null;var A=d(b,S),I=p(b,S),E=g(b,S),L=un(un(un(un(un({option:i,isActive:String(S)===t},O),{},{fill:"#eee"},P),y),by(f,b,S)),{},{onMouseEnter:A,onMouseLeave:I,onClick:E,dataKey:r,index:S,className:"recharts-bar-background-rectangle"});return k.createElement(Tf,ui({key:"background-bar-".concat(S)},L))}))}function wJ(e){var{showLabels:t,children:n,rects:r}=e,i=r==null?void 0:r.map(a=>{var l={x:a.x,y:a.y,width:a.width,lowerWidth:a.width,upperWidth:a.width,height:a.height};return un(un({},l),{},{value:a.value,payload:a.payload,parentViewBox:a.parentViewBox,viewBox:l,fill:a.fill})});return k.createElement(RI,{value:t?i:void 0},n)}function kJ(e){var{shape:t,activeBar:n,baseProps:r,entry:i,index:a,dataKey:l}=e,u=Pe(Ma),c=Pe(dI),f=n&&String(a)===u&&(c==null||l===c),d=f?n:t;return f?k.createElement(nr,{zIndex:Rt.activeBar},k.createElement(gT,{index:a},k.createElement(Tf,ui({},r,{name:String(r.name)},i,{isActive:f,option:d,index:a,dataKey:l})))):k.createElement(Tf,ui({},r,{name:String(r.name)},i,{isActive:f,option:d,index:a,dataKey:l}))}function SJ(e){var{shape:t,baseProps:n,entry:r,index:i,dataKey:a}=e;return k.createElement(Tf,ui({},n,{name:String(n.name)},r,{isActive:!1,option:t,index:i,dataKey:a}))}function jJ(e){var t,{data:n,props:r}=e,i=(t=Zn(r))!==null&&t!==void 0?t:{},{id:a}=i,l=Df(i,dJ),{shape:u,dataKey:c,activeBar:f}=r,{onMouseEnter:d,onClick:p,onMouseLeave:g}=r,y=Df(r,hJ),b=qI(d,c,a),S=HI(g),w=VI(p,c,a);return n?k.createElement(k.Fragment,null,n.map((P,C)=>k.createElement(gT,ui({index:C,key:"rectangle-".concat(P==null?void 0:P.x,"-").concat(P==null?void 0:P.y,"-").concat(P==null?void 0:P.value,"-").concat(C),className:"recharts-bar-rectangle"},by(y,P,C),{onMouseEnter:b(P,C),onMouseLeave:S(P,C),onClick:w(P,C)}),f?k.createElement(kJ,{shape:u,activeBar:f,baseProps:l,entry:P,index:C,dataKey:c}):k.createElement(SJ,{shape:u,baseProps:l,entry:P,index:C,dataKey:c})))):null}function PJ(e){var{props:t,previousRectanglesRef:n}=e,{data:r,layout:i,isAnimationActive:a,animationBegin:l,animationDuration:u,animationEasing:c,onAnimationEnd:f,onAnimationStart:d}=t,p=n.current,g=dd(t,"recharts-bar-"),[y,b]=k.useState(!1),S=!y,w=k.useCallback(()=>{typeof f=="function"&&f(),b(!1)},[f]),P=k.useCallback(()=>{typeof d=="function"&&d(),b(!0)},[d]);return k.createElement(wJ,{showLabels:S,rects:r},k.createElement(fd,{animationId:g,begin:l,duration:u,isActive:a,easing:c,onAnimationEnd:w,onAnimationStart:P,key:g},C=>{var O=C===1?r:r==null?void 0:r.map((A,I)=>{var E=p&&p[I];if(E)return un(un({},A),{},{x:ut(E.x,A.x,C),y:ut(E.y,A.y,C),width:ut(E.width,A.width,C),height:ut(E.height,A.height,C)});if(i==="horizontal"){var L=ut(0,A.height,C),F=ut(A.stackedBarStart,A.y,C);return un(un({},A),{},{y:F,height:L})}var H=ut(0,A.width,C),R=ut(A.stackedBarStart,A.x,C);return un(un({},A),{},{width:H,x:R})});return C>0&&(n.current=O??null),O==null?null:k.createElement(hn,null,k.createElement(jJ,{props:t,data:O}))}),k.createElement($I,{label:t.label}),t.children)}function EJ(e){var t=k.useRef(null);return k.createElement(PJ,{previousRectanglesRef:t,props:e})}var vT=0,CJ=(e,t)=>{var n=Array.isArray(e.value)?e.value[1]:e.value;return{x:e.x,y:e.y,value:n,errorVal:St(e,t)}};class OJ extends k.PureComponent{render(){var{hide:t,data:n,dataKey:r,className:i,xAxisId:a,yAxisId:l,needClip:u,background:c,id:f}=this.props;if(t||n==null)return null;var d=Ge("recharts-bar",i),p=f;return k.createElement(hn,{className:d,id:f},u&&k.createElement("defs",null,k.createElement(aT,{clipPathId:p,xAxisId:a,yAxisId:l})),k.createElement(hn,{className:"recharts-bar-rectangles",clipPath:u?"url(#clipPath-".concat(p,")"):void 0},k.createElement(bJ,{data:n,dataKey:r,background:c,allOtherBarProps:this.props}),k.createElement(EJ,this.props)))}}var NJ={activeBar:!1,animationBegin:0,animationDuration:400,animationEasing:"ease",background:!1,hide:!1,isAnimationActive:"auto",label:!1,legendType:"rect",minPointSize:vT,xAxisId:0,yAxisId:0,zIndex:Rt.bar};function AJ(e){var{xAxisId:t,yAxisId:n,hide:r,legendType:i,minPointSize:a,activeBar:l,animationBegin:u,animationDuration:c,animationEasing:f,isAnimationActive:d}=e,{needClip:p}=zx(t,n),g=Fa(),y=on(),b=IY(e.children,PI),S=Pe(C=>rJ(C,e.id,y,b));if(g!=="vertical"&&g!=="horizontal")return null;var w,P=S==null?void 0:S[0];return P==null||P.height==null||P.width==null?w=0:w=g==="vertical"?P.height/2:P.width/2,k.createElement(VQ,{xAxisId:t,yAxisId:n,data:S,dataPointFormatter:CJ,errorBarOffset:w},k.createElement(OJ,ui({},e,{layout:g,needClip:p,data:S,xAxisId:t,yAxisId:n,hide:r,legendType:i,minPointSize:a,activeBar:l,animationBegin:u,animationDuration:c,animationEasing:f,isAnimationActive:d})))}function _J(e){var{layout:t,barSettings:{dataKey:n,minPointSize:r},pos:i,bandSize:a,xAxis:l,yAxis:u,xAxisTicks:c,yAxisTicks:f,stackedData:d,displayedData:p,offset:g,cells:y,parentViewBox:b,dataStartIndex:S}=e,w=t==="horizontal"?u:l,P=d?w.scale.domain():null,C=KU({numericAxis:w}),O=w.scale.map(C);return p.map((A,I)=>{var E,L,F,H,R,W;if(d){var D=d[I+S];if(D==null)return null;E=UU(D,P)}else E=St(A,n),Array.isArray(E)||(E=[C,E]);var Z=FZ(r,vT)(E[1],I);if(t==="horizontal"){var Y,Q=u.scale.map(E[0]),he=u.scale.map(E[1]);if(Q==null||he==null)return null;L=uS({axis:l,ticks:c,bandSize:a,offset:i.offset,entry:A,index:I}),F=(Y=he??Q)!==null&&Y!==void 0?Y:void 0,H=i.size;var de=Q-he;if(R=mr(de)?0:de,W={x:L,y:g.top,width:H,height:g.height},Math.abs(Z)>0&&Math.abs(R)0&&Math.abs(H)k.createElement(k.Fragment,null,k.createElement(GI,{legendPayload:yJ(t)}),k.createElement(xJ,{dataKey:t.dataKey,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,tooltipType:t.tooltipType,id:i}),k.createElement(QI,{type:"bar",id:i,data:void 0,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,dataKey:t.dataKey,stackId:n,hide:t.hide,barSize:t.barSize,minPointSize:t.minPointSize,maxBarSize:t.maxBarSize,isPanorama:r}),k.createElement(nr,{zIndex:t.zIndex},k.createElement(AJ,ui({},t,{id:i})))))}var Lv=k.memo(IJ,Td);Lv.displayName="Bar";var TJ=["domain","range"],DJ=["domain","range"];function jE(e,t){if(e==null)return{};var n,r,i=MJ(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{if(l!=null)return CE(CE({},a),{},{type:l})},[a,l]);return k.useLayoutEffect(()=>{u!=null&&(n.current===null?t(wX(u)):n.current!==u&&t(kX({prev:n.current,next:u})),n.current=u)},[u,t]),k.useLayoutEffect(()=>()=>{n.current&&(t(SX(n.current)),n.current=null)},[t]),null}var qJ=e=>{var{xAxisId:t,className:n}=e,r=Pe(Ay),i=on(),a="xAxis",l=Pe(P=>H_(P,a,t,i)),u=Pe(P=>B_(P,t)),c=Pe(P=>JV(P,t)),f=Pe(P=>c_(P,t));if(u==null||c==null||f==null)return null;var{dangerouslySetInnerHTML:d,ticks:p,scale:g}=e,y=zv(e,RJ),{id:b,scale:S}=f,w=zv(f,zJ);return k.createElement(Lx,Rv({},y,w,{x:c.x,y:c.y,width:u.width,height:u.height,className:Ge("recharts-".concat(a," ").concat(a),n),viewBox:r,ticks:l,axisType:a}))},HJ={allowDataOverflow:Dt.allowDataOverflow,allowDecimals:Dt.allowDecimals,allowDuplicatedCategory:Dt.allowDuplicatedCategory,angle:Dt.angle,axisLine:ni.axisLine,height:Dt.height,hide:!1,includeHidden:Dt.includeHidden,interval:Dt.interval,label:!1,minTickGap:Dt.minTickGap,mirror:Dt.mirror,orientation:Dt.orientation,padding:Dt.padding,reversed:Dt.reversed,scale:Dt.scale,tick:Dt.tick,tickCount:Dt.tickCount,tickLine:ni.tickLine,tickSize:ni.tickSize,type:Dt.type,xAxisId:0},VJ=e=>{var t=mn(e,HJ);return k.createElement(k.Fragment,null,k.createElement(WJ,{allowDataOverflow:t.allowDataOverflow,allowDecimals:t.allowDecimals,allowDuplicatedCategory:t.allowDuplicatedCategory,angle:t.angle,dataKey:t.dataKey,domain:t.domain,height:t.height,hide:t.hide,id:t.xAxisId,includeHidden:t.includeHidden,interval:t.interval,minTickGap:t.minTickGap,mirror:t.mirror,name:t.name,orientation:t.orientation,padding:t.padding,reversed:t.reversed,scale:t.scale,tick:t.tick,tickCount:t.tickCount,tickFormatter:t.tickFormatter,ticks:t.ticks,type:t.type,unit:t.unit}),k.createElement(qJ,t))},$x=k.memo(VJ,yT);$x.displayName="XAxis";var KJ=["type"],GJ=["dangerouslySetInnerHTML","ticks","scale"],YJ=["id","scale"];function $v(){return $v=Object.assign?Object.assign.bind():function(e){for(var t=1;t{if(l!=null)return NE(NE({},a),{},{type:l})},[l,a]);return k.useLayoutEffect(()=>{u!=null&&(n.current===null?t(jX(u)):n.current!==u&&t(PX({prev:n.current,next:u})),n.current=u)},[u,t]),k.useLayoutEffect(()=>()=>{n.current&&(t(EX(n.current)),n.current=null)},[t]),null}function tee(e){var{yAxisId:t,className:n,width:r,label:i}=e,a=k.useRef(null),l=k.useRef(null),u=Pe(Ay),c=on(),f=yt(),d="yAxis",p=Pe(E=>U_(E,t)),g=Pe(E=>tK(E,t)),y=Pe(E=>H_(E,d,t,c)),b=Pe(E=>f_(E,t));if(k.useLayoutEffect(()=>{if(!(r!=="auto"||!p||Tx(i)||k.isValidElement(i)||b==null)){var E=a.current;if(E){var L=E.getCalculatedWidth();Math.round(p.width)!==Math.round(L)&&f(CX({id:t,width:L}))}}},[y,p,f,i,t,r,b]),p==null||g==null||b==null)return null;var{dangerouslySetInnerHTML:S,ticks:w,scale:P}=e,C=Fv(e,GJ),{id:O,scale:A}=b,I=Fv(b,YJ);return k.createElement(Lx,$v({},C,I,{ref:a,labelRef:l,x:g.x,y:g.y,tickTextProps:r==="auto"?{width:void 0}:{width:r},width:p.width,height:p.height,className:Ge("recharts-".concat(d," ").concat(d),n),viewBox:u,ticks:y,axisType:d}))}var nee={allowDataOverflow:Mt.allowDataOverflow,allowDecimals:Mt.allowDecimals,allowDuplicatedCategory:Mt.allowDuplicatedCategory,angle:Mt.angle,axisLine:ni.axisLine,hide:!1,includeHidden:Mt.includeHidden,interval:Mt.interval,label:!1,minTickGap:Mt.minTickGap,mirror:Mt.mirror,orientation:Mt.orientation,padding:Mt.padding,reversed:Mt.reversed,scale:Mt.scale,tick:Mt.tick,tickCount:Mt.tickCount,tickLine:ni.tickLine,tickSize:ni.tickSize,type:Mt.type,width:Mt.width,yAxisId:0},ree=e=>{var t=mn(e,nee);return k.createElement(k.Fragment,null,k.createElement(eee,{interval:t.interval,id:t.yAxisId,scale:t.scale,type:t.type,domain:t.domain,allowDataOverflow:t.allowDataOverflow,dataKey:t.dataKey,allowDuplicatedCategory:t.allowDuplicatedCategory,allowDecimals:t.allowDecimals,tickCount:t.tickCount,padding:t.padding,includeHidden:t.includeHidden,reversed:t.reversed,ticks:t.ticks,width:t.width,orientation:t.orientation,mirror:t.mirror,hide:t.hide,unit:t.unit,name:t.name,angle:t.angle,minTickGap:t.minTickGap,tick:t.tick,tickFormatter:t.tickFormatter}),k.createElement(tee,t))},Ps=k.memo(ree,yT);Ps.displayName="YAxis";var iee=(e,t)=>t,Fx=G([iee,He,s_,Bt,sI,vi,m7,zt],k7),Bx=e=>{var t=e.currentTarget.getBoundingClientRect(),n=t.width/e.currentTarget.offsetWidth,r=t.height/e.currentTarget.offsetHeight;return{chartX:Math.round((e.clientX-t.left)/n),chartY:Math.round((e.clientY-t.top)/r)}},xT=Jn("mouseClick"),bT=Is();bT.startListening({actionCreator:xT,effect:(e,t)=>{var n=e.payload,r=Fx(t.getState(),Bx(n));(r==null?void 0:r.activeIndex)!=null&&t.dispatch(mK({activeIndex:r.activeIndex,activeDataKey:void 0,activeCoordinate:r.activeCoordinate}))}});var Bv=Jn("mouseMove"),wT=Is(),Pc=null;wT.startListening({actionCreator:Bv,effect:(e,t)=>{var n=e.payload;Pc!==null&&cancelAnimationFrame(Pc);var r=Bx(n);Pc=requestAnimationFrame(()=>{var i=t.getState(),a=kx(i,i.tooltip.settings.shared);if(a==="axis"){var l=Fx(i,r);(l==null?void 0:l.activeIndex)!=null?t.dispatch(J_({activeIndex:l.activeIndex,activeDataKey:void 0,activeCoordinate:l.activeCoordinate})):t.dispatch(Z_())}Pc=null})}});function aee(e,t){return t instanceof HTMLElement?"HTMLElement <".concat(t.tagName,' class="').concat(t.className,'">'):t===window?"global.window":e==="children"&&typeof t=="object"&&t!==null?"<>":t}var AE={accessibilityLayer:!0,barCategoryGap:"10%",barGap:4,barSize:void 0,className:void 0,maxBarSize:void 0,stackOffset:"none",syncId:void 0,syncMethod:"index",baseValue:void 0,reverseStackOrder:!1},kT=On({name:"rootProps",initialState:AE,reducers:{updateOptions:(e,t)=>{var n;e.accessibilityLayer=t.payload.accessibilityLayer,e.barCategoryGap=t.payload.barCategoryGap,e.barGap=(n=t.payload.barGap)!==null&&n!==void 0?n:AE.barGap,e.barSize=t.payload.barSize,e.maxBarSize=t.payload.maxBarSize,e.stackOffset=t.payload.stackOffset,e.syncId=t.payload.syncId,e.syncMethod=t.payload.syncMethod,e.className=t.payload.className,e.baseValue=t.payload.baseValue,e.reverseStackOrder=t.payload.reverseStackOrder}}}),oee=kT.reducer,{updateOptions:lee}=kT.actions,see=null,uee={updatePolarOptions:(e,t)=>t.payload},ST=On({name:"polarOptions",initialState:see,reducers:uee}),{updatePolarOptions:Vte}=ST.actions,cee=ST.reducer,jT=Jn("keyDown"),PT=Jn("focus"),Ux=Is();Ux.startListening({actionCreator:jT,effect:(e,t)=>{var n=t.getState(),r=n.rootProps.accessibilityLayer!==!1;if(r){var{keyboardInteraction:i}=n.tooltip,a=e.payload;if(!(a!=="ArrowRight"&&a!=="ArrowLeft"&&a!=="Enter")){var l=Sx(i,Xo(n),Ws(n),Hs(n)),u=l==null?-1:Number(l);if(!(!Number.isFinite(u)||u<0)){var c=vi(n);if(a==="Enter"){var f=Ef(n,"axis","hover",String(i.index));t.dispatch(Ov({active:!i.active,activeIndex:i.index,activeCoordinate:f}));return}var d=aK(n),p=d==="left-to-right"?1:-1,g=a==="ArrowRight"?1:-1,y=u+g*p;if(!(c==null||y>=c.length||y<0)){var b=Ef(n,"axis","hover",String(y));t.dispatch(Ov({active:!0,activeIndex:y.toString(),activeCoordinate:b}))}}}}}});Ux.startListening({actionCreator:PT,effect:(e,t)=>{var n=t.getState(),r=n.rootProps.accessibilityLayer!==!1;if(r){var{keyboardInteraction:i}=n.tooltip;if(!i.active&&i.index==null){var a="0",l=Ef(n,"axis","hover",String(a));t.dispatch(Ov({active:!0,activeIndex:a,activeCoordinate:l}))}}}});var Yn=Jn("externalEvent"),ET=Is(),Cg=new Map;ET.startListening({actionCreator:Yn,effect:(e,t)=>{var{handler:n,reactEvent:r}=e.payload;if(n!=null){r.persist();var i=r.type,a=Cg.get(i);a!==void 0&&cancelAnimationFrame(a);var l=requestAnimationFrame(()=>{try{var u=t.getState(),c={activeCoordinate:e7(u),activeDataKey:dI(u),activeIndex:Ma(u),activeLabel:fI(u),activeTooltipIndex:Ma(u),isTooltipActive:t7(u)};n(c,r)}finally{Cg.delete(i)}});Cg.set(i,l)}}});var fee=G([Go],e=>e.tooltipItemPayloads),dee=G([fee,(e,t)=>t,(e,t,n)=>n],(e,t,n)=>{if(t!=null){var r=e.find(a=>a.settings.graphicalItemId===n);if(r!=null){var{getPosition:i}=r;if(i!=null)return i(t)}}}),CT=Jn("touchMove"),OT=Is();OT.startListening({actionCreator:CT,effect:(e,t)=>{var n=e.payload;if(!(n.touches==null||n.touches.length===0)){var r=t.getState(),i=kx(r,r.tooltip.settings.shared);if(i==="axis"){var a=n.touches[0];if(a==null)return;var l=Fx(r,Bx({clientX:a.clientX,clientY:a.clientY,currentTarget:n.currentTarget}));(l==null?void 0:l.activeIndex)!=null&&t.dispatch(J_({activeIndex:l.activeIndex,activeDataKey:void 0,activeCoordinate:l.activeCoordinate}))}else if(i==="item"){var u,c=n.touches[0];if(document.elementFromPoint==null||c==null)return;var f=document.elementFromPoint(c.clientX,c.clientY);if(!f||!f.getAttribute)return;var d=f.getAttribute(e8),p=(u=f.getAttribute(t8))!==null&&u!==void 0?u:void 0,g=Yo(r).find(S=>S.id===p);if(d==null||g==null||p==null)return;var{dataKey:y}=g,b=dee(r,d,p);t.dispatch(Q_({activeDataKey:y,activeIndex:d,activeCoordinate:b,activeGraphicalItemId:p}))}}}});var hee=rN({brush:VX,cartesianAxis:OX,chartData:J7,errorBars:FQ,graphicalItems:oX,layout:RU,legend:V8,options:G7,polarAxis:CY,polarOptions:cee,referenceElements:XX,rootProps:oee,tooltip:gK,zIndex:L7}),pee=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"Chart";return sU({reducer:hee,preloadedState:t,middleware:r=>{var i;return r({serializableCheck:!1,immutableCheck:!["commonjs","es6","production"].includes((i="es6")!==null&&i!==void 0?i:"")}).concat([bT.middleware,wT.middleware,Ux.middleware,ET.middleware,OT.middleware])},enhancers:r=>{var i=r;return typeof r=="function"&&(i=r()),i.concat(yN({type:"raf"}))},devTools:{serialize:{replacer:aee},name:"recharts-".concat(n)}})};function mee(e){var{preloadedState:t,children:n,reduxStoreName:r}=e,i=on(),a=k.useRef(null);if(i)return n;a.current==null&&(a.current=pee(t,r));var l=Sy;return k.createElement(uZ,{context:l,store:a.current},n)}function gee(e){var{layout:t,margin:n}=e,r=yt(),i=on();return k.useEffect(()=>{i||(r(DU(t)),r(TU(n)))},[r,i,t,n]),null}var vee=k.memo(gee,Td);function yee(e){var t=yt();return k.useEffect(()=>{t(lee(e))},[t,e]),null}function _E(e){var{zIndex:t,isPanorama:n}=e,r=k.useRef(null),i=yt();return k.useLayoutEffect(()=>(r.current&&i(D7({zIndex:t,element:r.current,isPanorama:n})),()=>{i(M7({zIndex:t,isPanorama:n}))}),[i,t,n]),k.createElement("g",{tabIndex:-1,ref:r})}function IE(e){var{children:t,isPanorama:n}=e,r=Pe(j7);if(!r||r.length===0)return t;var i=r.filter(l=>l<0),a=r.filter(l=>l>0);return k.createElement(k.Fragment,null,i.map(l=>k.createElement(_E,{key:l,zIndex:l,isPanorama:n})),t,a.map(l=>k.createElement(_E,{key:l,zIndex:l,isPanorama:n})))}var xee=["children"];function bee(e,t){if(e==null)return{};var n,r,i=wee(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{var n=BN(),r=UN(),i=QN();if(!Mr(n)||!Mr(r))return null;var{children:a,otherAttributes:l,title:u,desc:c}=e,f,d;return l!=null&&(typeof l.tabIndex=="number"?f=l.tabIndex:f=i?0:void 0,typeof l.role=="string"?d=l.role:d=i?"application":void 0),k.createElement(bO,Mf({},l,{title:u,desc:c,role:d,tabIndex:f,width:n,height:r,style:kee,ref:t}),a)}),jee=e=>{var{children:t}=e,n=Pe(od);if(!n)return null;var{width:r,height:i,y:a,x:l}=n;return k.createElement(bO,{width:r,height:i,x:l,y:a},t)},TE=k.forwardRef((e,t)=>{var{children:n}=e,r=bee(e,xee),i=on();return i?k.createElement(jee,null,k.createElement(IE,{isPanorama:!0},n)):k.createElement(See,Mf({ref:t},r),k.createElement(IE,{isPanorama:!1},n))});function Pee(){var e=yt(),[t,n]=k.useState(null),r=Pe(JU);return k.useEffect(()=>{if(t!=null){var i=t.getBoundingClientRect(),a=i.width/t.offsetWidth;De(a)&&a!==r&&e(LU(a))}},[t,e,r]),n}function DE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Eee(e){for(var t=1;t(sG(),null);function Lf(e){if(typeof e=="number")return e;if(typeof e=="string"){var t=parseFloat(e);if(!Number.isNaN(t))return t}return 0}var _ee=k.forwardRef((e,t)=>{var n,r,i=k.useRef(null),[a,l]=k.useState({containerWidth:Lf((n=e.style)===null||n===void 0?void 0:n.width),containerHeight:Lf((r=e.style)===null||r===void 0?void 0:r.height)}),u=k.useCallback((f,d)=>{l(p=>{var g=Math.round(f),y=Math.round(d);return p.containerWidth===g&&p.containerHeight===y?p:{containerWidth:g,containerHeight:y}})},[]),c=k.useCallback(f=>{if(typeof t=="function"&&t(f),f!=null&&typeof ResizeObserver<"u"){var{width:d,height:p}=f.getBoundingClientRect();u(d,p);var g=b=>{var S=b[0];if(S!=null){var{width:w,height:P}=S.contentRect;u(w,P)}},y=new ResizeObserver(g);y.observe(f),i.current=y}},[t,u]);return k.useEffect(()=>()=>{var f=i.current;f!=null&&f.disconnect()},[u]),k.createElement(k.Fragment,null,k.createElement(Ds,{width:a.containerWidth,height:a.containerHeight}),k.createElement("div",Gi({ref:c},e)))}),Iee=k.forwardRef((e,t)=>{var{width:n,height:r}=e,[i,a]=k.useState({containerWidth:Lf(n),containerHeight:Lf(r)}),l=k.useCallback((c,f)=>{a(d=>{var p=Math.round(c),g=Math.round(f);return d.containerWidth===p&&d.containerHeight===g?d:{containerWidth:p,containerHeight:g}})},[]),u=k.useCallback(c=>{if(typeof t=="function"&&t(c),c!=null){var{width:f,height:d}=c.getBoundingClientRect();l(f,d)}},[t,l]);return k.createElement(k.Fragment,null,k.createElement(Ds,{width:i.containerWidth,height:i.containerHeight}),k.createElement("div",Gi({ref:u},e)))}),Tee=k.forwardRef((e,t)=>{var{width:n,height:r}=e;return k.createElement(k.Fragment,null,k.createElement(Ds,{width:n,height:r}),k.createElement("div",Gi({ref:t},e)))}),Dee=k.forwardRef((e,t)=>{var{width:n,height:r}=e;return typeof n=="string"||typeof r=="string"?k.createElement(Iee,Gi({},e,{ref:t})):typeof n=="number"&&typeof r=="number"?k.createElement(Tee,Gi({},e,{width:n,height:r,ref:t})):k.createElement(k.Fragment,null,k.createElement(Ds,{width:n,height:r}),k.createElement("div",Gi({ref:t},e)))});function Mee(e){return e?_ee:Dee}var Lee=k.forwardRef((e,t)=>{var{children:n,className:r,height:i,onClick:a,onContextMenu:l,onDoubleClick:u,onMouseDown:c,onMouseEnter:f,onMouseLeave:d,onMouseMove:p,onMouseUp:g,onTouchEnd:y,onTouchMove:b,onTouchStart:S,style:w,width:P,responsive:C,dispatchTouchEvents:O=!0}=e,A=k.useRef(null),I=yt(),[E,L]=k.useState(null),[F,H]=k.useState(null),R=Pee(),W=_y(),D=(W==null?void 0:W.width)>0?W.width:P,Z=(W==null?void 0:W.height)>0?W.height:i,Y=k.useCallback(X=>{R(X),typeof t=="function"&&t(X),L(X),H(X),X!=null&&(A.current=X)},[R,t,L,H]),Q=k.useCallback(X=>{I(xT(X)),I(Yn({handler:a,reactEvent:X}))},[I,a]),he=k.useCallback(X=>{I(Bv(X)),I(Yn({handler:f,reactEvent:X}))},[I,f]),de=k.useCallback(X=>{I(Z_()),I(Yn({handler:d,reactEvent:X}))},[I,d]),J=k.useCallback(X=>{I(Bv(X)),I(Yn({handler:p,reactEvent:X}))},[I,p]),ae=k.useCallback(()=>{I(PT())},[I]),T=k.useCallback(X=>{I(jT(X.key))},[I]),$=k.useCallback(X=>{I(Yn({handler:l,reactEvent:X}))},[I,l]),U=k.useCallback(X=>{I(Yn({handler:u,reactEvent:X}))},[I,u]),_=k.useCallback(X=>{I(Yn({handler:c,reactEvent:X}))},[I,c]),te=k.useCallback(X=>{I(Yn({handler:g,reactEvent:X}))},[I,g]),fe=k.useCallback(X=>{I(Yn({handler:S,reactEvent:X}))},[I,S]),ce=k.useCallback(X=>{O&&I(CT(X)),I(Yn({handler:b,reactEvent:X}))},[I,O,b]),Se=k.useCallback(X=>{I(Yn({handler:y,reactEvent:X}))},[I,y]),je=Mee(C);return k.createElement(bI.Provider,{value:E},k.createElement(UB.Provider,{value:F},k.createElement(je,{width:D??(w==null?void 0:w.width),height:Z??(w==null?void 0:w.height),className:Ge("recharts-wrapper",r),style:Eee({position:"relative",cursor:"default",width:D,height:Z},w),onClick:Q,onContextMenu:$,onDoubleClick:U,onFocus:ae,onKeyDown:T,onMouseDown:_,onMouseEnter:he,onMouseLeave:de,onMouseMove:J,onMouseUp:te,onTouchEnd:Se,onTouchMove:ce,onTouchStart:fe,ref:Y},k.createElement(Aee,null),n)))}),Ree=["width","height","responsive","children","className","style","compact","title","desc"];function zee(e,t){if(e==null)return{};var n,r,i=$ee(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{var{width:n,height:r,responsive:i,children:a,className:l,style:u,compact:c,title:f,desc:d}=e,p=zee(e,Ree),g=Zn(p);return c?k.createElement(k.Fragment,null,k.createElement(Ds,{width:n,height:r}),k.createElement(TE,{otherAttributes:g,title:f,desc:d},a)):k.createElement(Lee,{className:l,style:u,width:n,height:r,responsive:i??!1,onClick:e.onClick,onMouseLeave:e.onMouseLeave,onMouseEnter:e.onMouseEnter,onMouseMove:e.onMouseMove,onMouseDown:e.onMouseDown,onMouseUp:e.onMouseUp,onContextMenu:e.onContextMenu,onDoubleClick:e.onDoubleClick,onTouchStart:e.onTouchStart,onTouchMove:e.onTouchMove,onTouchEnd:e.onTouchEnd},k.createElement(TE,{otherAttributes:g,title:f,desc:d,ref:t},k.createElement(ZX,null,a)))});function Uv(){return Uv=Object.assign?Object.assign.bind():function(e){for(var t=1;tk.createElement(NT,{chartName:"BarChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:Wee,tooltipPayloadSearcher:wI,categoricalChartProps:e,ref:t})),Hee=["axis"],Vee=k.forwardRef((e,t)=>k.createElement(NT,{chartName:"AreaChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:Hee,tooltipPayloadSearcher:wI,categoricalChartProps:e,ref:t}));function AT({active:e,payload:t,label:n,labelFormatter:r,valueFormatter:i}){if(!e||!t||t.length===0)return null;const a=r?r(n||""):n;return m.jsxs("div",{className:"bg-base-200 border border-base-300 rounded-lg px-3 py-2 shadow-lg text-sm",children:[a&&m.jsx("p",{className:"text-base-content font-medium mb-1",children:a}),t.map((l,u)=>{const[c,f]=i?i(l.value,l.name):[l.value,l.name];return m.jsxs("p",{className:"text-base-content/80",children:[m.jsxs("span",{className:"font-medium",children:[f,":"]})," ",c]},u)})]})}function Kee({daily:e}){if(!e||e.length===0)return m.jsx("div",{className:"flex items-center justify-center h-48 text-base-content/50",children:"No data available"});const t=e.map(n=>({...n,displayDate:n.date.includes("-")?`${n.date.slice(5,7)}/${n.date.slice(8,10)}`:`${n.date.slice(4,6)}/${n.date.slice(6,8)}`}));return m.jsx("div",{className:"h-64 w-full",children:m.jsx($N,{width:"100%",height:"100%",debounce:50,children:m.jsxs(Vee,{data:t,margin:{top:5,right:20,left:10,bottom:5},children:[m.jsxs("defs",{children:[m.jsxs("linearGradient",{id:"dailyCostGradient",x1:"0",y1:"0",x2:"0",y2:"1",children:[m.jsx("stop",{offset:"5%",stopColor:"#3b82f6",stopOpacity:.6}),m.jsx("stop",{offset:"95%",stopColor:"#3b82f6",stopOpacity:0})]}),m.jsxs("linearGradient",{id:"dailyTokenGradient",x1:"0",y1:"0",x2:"0",y2:"1",children:[m.jsx("stop",{offset:"5%",stopColor:"#8b5cf6",stopOpacity:.3}),m.jsx("stop",{offset:"95%",stopColor:"#8b5cf6",stopOpacity:0})]})]}),m.jsx(Rx,{strokeDasharray:"3 3",className:"stroke-base-content/10"}),m.jsx($x,{dataKey:"displayDate",tick:{fontSize:12},className:"text-base-content/60",tickLine:!1,axisLine:!1}),m.jsx(Ps,{yAxisId:"cost",tick:{fontSize:12},className:"text-base-content/60",tickLine:!1,axisLine:!1,tickFormatter:n=>`${n.toFixed(0)}$`}),m.jsx(Ps,{yAxisId:"tokens",orientation:"right",tick:{fontSize:12},className:"text-base-content/60",tickLine:!1,axisLine:!1,tickFormatter:n=>_o(n)}),m.jsx(jI,{content:m.jsx(AT,{labelFormatter:n=>`Date: ${n}`,valueFormatter:(n,r)=>r==="totalCost"?[`${Number(n).toFixed(2)}$`,"Cost"]:r==="totalTokens"?[_o(Number(n)),"Tokens"]:[n,r]})}),m.jsx(Tv,{yAxisId:"tokens",type:"monotone",dataKey:"totalTokens",stroke:"#8b5cf6",strokeWidth:1.5,fill:"url(#dailyTokenGradient)"}),m.jsx(Tv,{yAxisId:"cost",type:"monotone",dataKey:"totalCost",stroke:"#3b82f6",strokeWidth:2,fill:"url(#dailyCostGradient)"})]})})})}function Gee({monthly:e}){return!e||e.length===0?m.jsx("div",{className:"flex items-center justify-center h-48 text-base-content/50",children:"No data available"}):m.jsx("div",{className:"h-64 w-full",children:m.jsx($N,{width:"100%",height:"100%",debounce:50,children:m.jsxs(qee,{data:e,margin:{top:5,right:20,left:10,bottom:5},children:[m.jsx(Rx,{strokeDasharray:"3 3",className:"stroke-base-content/10"}),m.jsx($x,{dataKey:"month",tick:{fontSize:12},className:"text-base-content/60",tickLine:!1,axisLine:!1}),m.jsx(Ps,{yAxisId:"cost",tick:{fontSize:12},className:"text-base-content/60",tickLine:!1,axisLine:!1,tickFormatter:t=>`${t.toFixed(0)}$`}),m.jsx(Ps,{yAxisId:"tokens",orientation:"right",tick:{fontSize:12},className:"text-base-content/60",tickLine:!1,axisLine:!1,tickFormatter:t=>_o(t)}),m.jsx(jI,{content:m.jsx(AT,{labelFormatter:t=>`Month: ${t}`,valueFormatter:(t,n)=>n==="totalCost"?[`${Number(t).toFixed(2)}$`,"Cost"]:n==="totalTokens"?[_o(Number(t)),"Tokens"]:[t,n]})}),m.jsx(Lv,{yAxisId:"tokens",dataKey:"totalTokens",fill:"#8b5cf6",opacity:.4,radius:[4,4,0,0]}),m.jsx(Lv,{yAxisId:"cost",dataKey:"totalCost",fill:"#6366f1",opacity:.8,radius:[4,4,0,0]})]})})})}function Yee(){return m.jsx("div",{className:"card bg-base-200",children:m.jsxs("div",{className:"card-body",children:[m.jsx("h2",{className:"text-lg font-bold mb-2",children:"Model Routing & Subscriptions"}),m.jsxs("div",{className:"space-y-6",children:[m.jsxs("div",{children:[m.jsx("h3",{className:"text-xs font-semibold uppercase tracking-wide text-base-content/50 mb-2",children:"Routing Strategy"}),m.jsx("div",{className:"overflow-x-auto",children:m.jsxs("table",{className:"table table-sm",children:[m.jsx("thead",{children:m.jsxs("tr",{children:[m.jsx("th",{children:"/spec Phase"}),m.jsx("th",{children:"Orchestrator"}),m.jsx("th",{children:"Review Agents"})]})}),m.jsxs("tbody",{children:[m.jsxs("tr",{children:[m.jsx("td",{children:"Planning"}),m.jsx("td",{className:"font-mono text-primary",children:"Opus 4.6"}),m.jsx("td",{className:"font-mono text-secondary",children:"Sonnet 4.5"})]}),m.jsxs("tr",{children:[m.jsx("td",{children:"Implementation"}),m.jsx("td",{className:"font-mono text-secondary",children:"Sonnet 4.5"}),m.jsx("td",{className:"text-base-content/40",children:"—"})]}),m.jsxs("tr",{children:[m.jsx("td",{children:"Verification"}),m.jsx("td",{className:"font-mono text-primary",children:"Opus 4.6"}),m.jsxs("td",{className:"font-mono text-secondary",children:["Sonnet 4.5 + ",m.jsx("span",{className:"text-primary",children:"Opus 4.6"})]})]})]})]})}),m.jsx("p",{className:"text-sm text-base-content/70 mt-2",children:"Opus handles planning and verification orchestration. Sonnet handles implementation and most review agents to reduce costs."})]}),m.jsxs("div",{className:"alert alert-info",children:[m.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",className:"stroke-current shrink-0 w-5 h-5",children:m.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",d:"M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})}),m.jsxs("span",{className:"text-sm",children:["In quick mode, use ",m.jsx("code",{className:"bg-base-300 px-1 rounded",children:"/model"})," in Claude Code to switch between Opus 4.6 (complex tasks) and Sonnet 4.5 (routine fixes)."]})]}),m.jsxs("div",{children:[m.jsx("h3",{className:"text-xs font-semibold uppercase tracking-wide text-base-content/50 mb-2",children:"Subscription Recommendations"}),m.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-4",children:[m.jsx("a",{href:"https://support.claude.com/en/articles/11049741-what-is-the-max-plan",target:"_blank",rel:"noopener noreferrer",className:"card bg-base-100 shadow hover:shadow-lg transition-shadow cursor-pointer",children:m.jsxs("div",{className:"card-body p-4",children:[m.jsx("h4",{className:"card-title text-base",children:"Max 5x"}),m.jsx("p",{className:"text-sm text-base-content/70",children:"Moderate solo usage"})]})}),m.jsx("a",{href:"https://support.claude.com/en/articles/11049741-what-is-the-max-plan",target:"_blank",rel:"noopener noreferrer",className:"card bg-base-100 shadow hover:shadow-lg transition-shadow cursor-pointer",children:m.jsxs("div",{className:"card-body p-4",children:[m.jsx("h4",{className:"card-title text-base",children:"Max 20x"}),m.jsx("p",{className:"text-sm text-base-content/70",children:"Heavy solo usage"})]})}),m.jsx("a",{href:"https://support.claude.com/en/articles/9266767-what-is-the-team-plan",target:"_blank",rel:"noopener noreferrer",className:"card bg-base-100 shadow hover:shadow-lg transition-shadow cursor-pointer",children:m.jsxs("div",{className:"card-body p-4",children:[m.jsx("h4",{className:"card-title text-base",children:"Team Premium"}),m.jsx("p",{className:"text-sm text-base-content/70",children:"6.25x/member + SSO/admin"})]})})]})]})]})]})})}function Xee(){const{daily:e,monthly:t,isLoading:n,error:r,available:i,dataExists:a}=AB();if(n)return m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{className:"flex items-baseline gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Usage"}),m.jsxs("span",{className:"text-xs text-base-content/40 flex items-center gap-2",children:[m.jsx("span",{className:"loading loading-spinner loading-xs"}),"Loading usage data..."]})]}),m.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4",children:[...Array(4)].map((c,f)=>m.jsx("div",{className:"stats shadow bg-base-200 animate-pulse",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"h-3 bg-base-300 rounded w-20 mb-2"}),m.jsx("div",{className:"h-8 bg-base-300 rounded w-24 mb-1"}),m.jsx("div",{className:"h-3 bg-base-300 rounded w-16"})]})},f))}),m.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-3 gap-4",children:[m.jsx("div",{className:"card bg-base-200 lg:col-span-2 animate-pulse",children:m.jsxs("div",{className:"card-body",children:[m.jsx("div",{className:"h-4 bg-base-300 rounded w-48 mb-4"}),m.jsx("div",{className:"h-48 bg-base-300 rounded"})]})}),m.jsx("div",{className:"card bg-base-200 animate-pulse",children:m.jsxs("div",{className:"card-body",children:[m.jsx("div",{className:"h-4 bg-base-300 rounded w-40 mb-4"}),m.jsx("div",{className:"h-48 bg-base-300 rounded"})]})})]})]});if(!i)return m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Usage"}),m.jsx("p",{className:"text-base-content/60",children:"Token usage and API cost tracking"})]}),m.jsxs("div",{className:"alert alert-warning",children:[m.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:"stroke-current shrink-0 h-6 w-6",fill:"none",viewBox:"0 0 24 24",children:m.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",d:"M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"})}),m.jsxs("div",{children:[m.jsx("h3",{className:"font-bold",children:"Usage tracking requires ccusage"}),m.jsxs("div",{className:"text-xs",children:["Install with: ",m.jsx("code",{className:"bg-base-300 px-1 rounded",children:"npm install -g ccusage@latest"})]})]})]})]});if(r)return m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Usage"}),m.jsx("p",{className:"text-base-content/60",children:"Token usage and API cost tracking"})]}),m.jsx("div",{className:"alert alert-error",children:m.jsxs("span",{children:["Failed to load usage data: ",r]})})]});if(!a)return m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Usage"}),m.jsx("p",{className:"text-base-content/60",children:"Token usage and API cost tracking"})]}),m.jsxs("div",{className:"alert alert-info",children:[m.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",className:"stroke-current shrink-0 w-6 h-6",children:m.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",d:"M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})}),m.jsx("span",{children:"No usage data yet. Statistics will appear here after you use Claude Code."})]})]});const l=e.slice(-14),u=t.length<=2;return m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{className:"flex items-baseline gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Usage"}),m.jsx("span",{className:"text-xs text-base-content/40",children:"All projects"})]}),m.jsx(_B,{daily:e}),m.jsxs("div",{className:u?"grid grid-cols-1 lg:grid-cols-3 gap-4":"space-y-4",children:[m.jsx("div",{className:`card bg-base-200 ${u?"lg:col-span-2":""}`,children:m.jsxs("div",{className:"card-body",children:[m.jsx("h2",{className:"card-title text-sm",children:"Daily Cost & Tokens (Last 14 Days)"}),m.jsx(Kee,{daily:l})]})}),m.jsx("div",{className:"card bg-base-200",children:m.jsxs("div",{className:"card-body",children:[m.jsx("h2",{className:"card-title text-sm",children:"Monthly Cost & Tokens"}),m.jsx(Gee,{monthly:t})]})})]}),m.jsx(Yee,{})]})}const Qee=2e3,Zee=30;function ME(e){if(!e)return NaN;const t=e.replace(/^v/i,"");return parseInt(t,10)}function LE(e,t){const n=new Map;for(const r of t)n.set(r.name,r);return e.map(r=>{const i=n.get(r.name),a=(i==null?void 0:i.version)??null,l=ME(r.latestVersion),u=ME(a),c=i!=null&&!isNaN(l)&&!isNaN(u)&&u{try{const A=await fetch("/api/vault/status");if(!A.ok)throw new Error(`Status fetch failed: ${A.status}`);const I=await A.json();if(!w.current)return;t(I),r(LE(I.catalog,I.assets)),u(null)}catch(A){if(!w.current)return;u(A.message)}finally{w.current&&a(!1)}},[]),C=k.useCallback(async A=>{if(!(c.current.has(A)||f.current.has(A))){f.current.add(A),d.current.delete(A),p(I=>I+1);try{const I=await fetch(`/api/vault/detail/${encodeURIComponent(A)}`);if(!I.ok)throw new Error(`Detail fetch failed: ${I.status}`);const E=await I.json();w.current&&c.current.set(A,E)}catch(I){w.current&&(d.current.set(A,I.message),console.error("Failed to fetch vault detail:",A,I))}finally{f.current.delete(A),w.current&&p(I=>I+1)}}},[]),O=k.useCallback(async()=>{y(!0),S(null);try{const A=await fetch("/api/vault/install",{method:"POST"});if(!A.ok){const E=await A.json().catch(()=>({error:"Install failed"}));throw new Error(E.error||"Install failed")}let I=0;for(;IsetTimeout(F,Qee)),!w.current)return;I++;const E=await fetch("/api/vault/status");if(!E.ok)continue;const L=await E.json();if(!L.isInstalling){c.current.clear(),d.current.clear(),w.current&&(t(L),r(LE(L.catalog,L.assets)),y(!1));return}}w.current&&(S("Install taking longer than expected"),y(!1),await P())}catch(A){w.current&&(S(A.message),y(!1))}},[P]);return k.useEffect(()=>(w.current=!0,P(),()=>{w.current=!1}),[P]),{vaultStatus:e,mergedAssets:n,isLoading:i,error:l,fetchDetail:C,detailCache:c.current,loadingDetails:f.current,detailErrors:d.current,installAll:O,isInstalling:g,installError:b,refresh:P}}function ete({assets:e}){const t=e.length,n=e.reduce((u,c)=>(u[c.type]=(u[c.type]||0)+1,u),{}),r=n.skill||0,i=n.rule||0,a=n.command||0,l=t-r-i-a;return m.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4",children:[m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Total Assets"}),m.jsx("div",{className:"stat-value text-primary",children:t}),m.jsx("div",{className:"stat-desc",children:"In vault catalog"})]})}),m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Skills"}),m.jsx("div",{className:"stat-value",children:r}),m.jsx("div",{className:"stat-desc",children:"Reusable workflows"})]})}),m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Rules"}),m.jsx("div",{className:"stat-value",children:i}),m.jsx("div",{className:"stat-desc",children:"Coding standards"})]})}),m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:l>0?"Commands & Other":"Commands"}),m.jsx("div",{className:"stat-value",children:a+l}),m.jsx("div",{className:"stat-desc",children:"Slash commands"})]})})]})}function tte({detail:e,isLoading:t,onRetry:n}){return t?m.jsxs("div",{className:"p-4 bg-base-200 rounded-b-lg flex items-center gap-2",children:[m.jsx("span",{className:"loading loading-spinner loading-sm"}),m.jsx("span",{className:"text-sm text-base-content/60",children:"Loading details..."})]}):e?m.jsxs("div",{className:"p-4 bg-base-200 rounded-b-lg space-y-3",children:[e.metadata.description&&m.jsx("p",{className:"text-sm text-base-content/70",children:e.metadata.description}),e.versions.length>0&&m.jsxs("div",{children:[m.jsx("h4",{className:"text-xs font-semibold text-base-content/50 uppercase mb-2",children:"Version History"}),m.jsxs("table",{className:"table table-xs w-full",children:[m.jsx("thead",{children:m.jsxs("tr",{children:[m.jsx("th",{children:"Version"}),m.jsx("th",{children:"Date"}),m.jsx("th",{children:"Files"})]})}),m.jsx("tbody",{children:e.versions.map(r=>m.jsxs("tr",{children:[m.jsxs("td",{className:"font-mono",children:["v",r.version]}),m.jsx("td",{className:"text-base-content/60",children:r.createdAt??"—"}),m.jsx("td",{children:r.filesCount})]},r.version))})]})]}),e.metadata.authors.length>0&&m.jsxs("div",{className:"text-xs text-base-content/50",children:["Authors: ",e.metadata.authors.join(", ")]})]}):m.jsxs("div",{className:"p-4 bg-base-200 rounded-b-lg text-sm text-base-content/60",children:[m.jsx("span",{children:"Failed to load details."}),n&&m.jsx("button",{className:"btn btn-ghost btn-xs ml-2",onClick:n,children:"Retry"})]})}const nte={skill:"lucide:wand-2",rule:"lucide:scale",command:"lucide:terminal"},rte={skill:"primary",rule:"info",command:"accent"},ite=[{id:"all",label:"All"},{id:"skill",label:"Skills"},{id:"rule",label:"Rules"},{id:"command",label:"Commands"}];function ate({assets:e,searchQuery:t,activeTab:n,onTabChange:r,onSearchChange:i,expandedAsset:a,onAssetClick:l,fetchDetail:u,detailCache:c,loadingDetails:f}){const d=e.filter(p=>{const g=n==="all"||p.type===n,y=!t||p.name.toLowerCase().includes(t.toLowerCase());return g&&y});return m.jsxs("div",{className:"space-y-4",children:[m.jsxs("div",{className:"flex items-center justify-between gap-4 flex-wrap",children:[m.jsx(GD,{tabs:ite,activeTab:n,onTabChange:r}),m.jsx("input",{type:"text",placeholder:"Search assets...",className:"input input-bordered input-sm w-60",value:t,onChange:p=>i(p.target.value)})]}),d.length===0?m.jsx("div",{className:"text-center py-8 text-base-content/50",children:t?`No assets matching "${t}"`:"No assets in this category"}):m.jsx("div",{className:"overflow-x-auto",children:m.jsxs("table",{className:"table w-full",children:[m.jsx("thead",{children:m.jsxs("tr",{children:[m.jsx("th",{children:"Name"}),m.jsx("th",{children:"Type"}),m.jsx("th",{children:"Installed"}),m.jsx("th",{children:"Latest"}),m.jsx("th",{children:"Scope"})]})}),m.jsx("tbody",{children:d.map(p=>m.jsx(ote,{asset:p,isExpanded:a===p.name,onClick:()=>l(p.name),fetchDetail:u,detail:c.get(p.name)??null,isLoadingDetail:f.has(p.name)},p.name))})]})})]})}function ote({asset:e,isExpanded:t,onClick:n,fetchDetail:r,detail:i,isLoadingDetail:a}){const l=nte[e.type]??"lucide:package",u=rte[e.type]??"ghost",c=()=>{n(),!t&&!i&&!a&&r(e.name)};return m.jsxs(m.Fragment,{children:[m.jsxs("tr",{className:"cursor-pointer hover:bg-base-200 transition-colors",onClick:c,children:[m.jsx("td",{children:m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(se,{icon:l,size:16,className:"text-base-content/50"}),m.jsx("span",{className:"font-medium",children:e.name}),e.hasUpdate&&m.jsx(Te,{variant:"warning",size:"sm",children:"update"})]})}),m.jsx("td",{children:m.jsx(Te,{variant:u,size:"sm",children:e.type})}),m.jsx("td",{className:"font-mono text-sm",children:e.installedVersion??"—"}),m.jsxs("td",{className:"font-mono text-sm",children:["v",e.latestVersion]}),m.jsx("td",{className:"text-sm text-base-content/60",children:e.scope??"—"})]}),t&&m.jsx("tr",{children:m.jsx("td",{colSpan:5,className:"p-0",children:m.jsx(tte,{detail:i,isLoading:a,onRetry:()=>r(e.name)})})})]})}function lte(e){try{const t=new URL(e);return(t.host+t.pathname).replace(/\.git$/,"")}catch{return e}}function ste(){const{vaultStatus:e,mergedAssets:t,isLoading:n,error:r,fetchDetail:i,detailCache:a,loadingDetails:l,installAll:u,isInstalling:c,installError:f}=Jee(),d=oC(),p=k.useRef(c),[g,y]=k.useState(""),[b,S]=k.useState("all"),[w,P]=k.useState(null),C=k.useCallback(()=>{u()},[u]),O=k.useCallback(A=>{P(I=>I===A?null:A)},[]);return k.useEffect(()=>{p.current&&!c&&(f?f.includes("longer than expected")?d.warning(f,"Install Timeout"):d.error(f,"Install Failed"):d.success("Vault synced successfully","Sync Complete")),p.current=c},[c,f,d]),n?m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{className:"flex items-baseline gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Vault"}),m.jsxs("span",{className:"text-xs text-base-content/40 flex items-center gap-2",children:[m.jsx("span",{className:"loading loading-spinner loading-xs"}),"Loading vault data..."]})]}),m.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4",children:[...Array(4)].map((A,I)=>m.jsx("div",{className:"stats shadow bg-base-200 animate-pulse",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"h-3 bg-base-300 rounded w-20 mb-2"}),m.jsx("div",{className:"h-8 bg-base-300 rounded w-24 mb-1"}),m.jsx("div",{className:"h-3 bg-base-300 rounded w-16"})]})},I))}),m.jsx("div",{className:"card bg-base-200 animate-pulse",children:m.jsxs("div",{className:"card-body",children:[m.jsx("div",{className:"h-4 bg-base-300 rounded w-48 mb-4"}),m.jsx("div",{className:"h-48 bg-base-300 rounded"})]})})]}):r?m.jsxs("div",{className:"space-y-8",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Vault"}),m.jsx("div",{className:"alert alert-error",children:m.jsxs("span",{children:["Failed to load vault data: ",r]})})]}):e!=null&&e.installed?e.configured?m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{className:"flex items-center justify-between flex-wrap gap-4",children:[m.jsxs("div",{className:"flex items-center gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Vault"}),m.jsx(Te,{variant:"success",size:"sm",children:"Connected"}),f&&m.jsx("span",{className:"text-xs text-warning",children:f})]}),m.jsx(ute,{isInstalling:c,onInstall:C})]}),m.jsxs("div",{className:"flex items-center gap-2 text-sm text-base-content/60",children:[e.vaultUrl&&m.jsxs(m.Fragment,{children:[m.jsx(se,{icon:"lucide:git-branch",size:16}),m.jsx("span",{className:"font-mono text-xs",children:lte(e.vaultUrl)})]}),e.version&&m.jsxs(Te,{variant:"ghost",size:"sm",children:["sx v",e.version]}),m.jsxs("span",{children:["Run ",m.jsx("code",{className:"font-mono text-xs bg-base-300 px-1 rounded",children:"/vault"})," in Claude Code to push or pull skills, rules, and commands."]})]}),m.jsx(ete,{assets:t}),t.length===0?m.jsx(Po,{icon:"lucide:package",title:"No assets in vault",description:"Push skills, rules, or commands to your vault using /vault in Claude Code."}):m.jsx(ate,{assets:t,searchQuery:g,activeTab:b,onTabChange:S,onSearchChange:y,expandedAsset:w,onAssetClick:O,fetchDetail:i,detailCache:a,loadingDetails:l})]}):m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{className:"flex items-center gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Vault"}),e.version&&m.jsxs(Te,{variant:"ghost",size:"sm",children:["sx v",e.version]})]}),m.jsx(Po,{icon:"lucide:archive",title:"Vault not configured",description:"Run /vault in Claude Code to configure your vault and push or pull skills, rules, and commands."})]}):m.jsxs("div",{className:"space-y-8",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Vault"}),m.jsx(Po,{icon:"lucide:archive",title:"sx is not installed",description:"Run /vault in Claude Code to push or pull skills, rules, and commands."})]})}function ute({isInstalling:e,onInstall:t}){return m.jsx("button",{className:"btn btn-primary btn-sm",disabled:e,onClick:t,children:e?m.jsxs(m.Fragment,{children:[m.jsx("span",{className:"loading loading-spinner loading-xs"}),"Syncing..."]}):m.jsxs(m.Fragment,{children:[m.jsx(se,{icon:"lucide:refresh-cw",size:14}),"Sync All"]})})}const Xl=[{key:"DEBUG",label:"Debug",icon:"🔍",color:"text-gray-400"},{key:"INFO",label:"Info",icon:"ℹ️",color:"text-info"},{key:"WARN",label:"Warn",icon:"⚠️",color:"text-warning"},{key:"ERROR",label:"Error",icon:"❌",color:"text-error"}],Ql=[{key:"HOOK",label:"Hook",icon:"🪝",color:"text-purple-400"},{key:"WORKER",label:"Worker",icon:"⚙️",color:"text-info"},{key:"SDK",label:"SDK",icon:"📦",color:"text-success"},{key:"PARSER",label:"Parser",icon:"📄",color:"text-sky-400"},{key:"DB",label:"DB",icon:"🗄️",color:"text-orange-400"},{key:"SYSTEM",label:"System",icon:"💻",color:"text-gray-400"},{key:"HTTP",label:"HTTP",icon:"🌐",color:"text-green-400"},{key:"SESSION",label:"Session",icon:"📋",color:"text-pink-400"},{key:"CHROMA",label:"Chroma",icon:"🔮",color:"text-violet-400"}];function cte(e){const t=/^\[([^\]]+)\]\s+\[(\w+)\s*\]\s+\[(\w+)\s*\]\s+(?:\[([^\]]+)\]\s+)?(.*)$/,n=e.match(t);if(!n)return{raw:e};const[,r,i,a,l,u]=n;let c;return u.startsWith("→")?c="dataIn":u.startsWith("←")?c="dataOut":u.startsWith("✓")?c="success":u.startsWith("✗")?c="failure":u.startsWith("⏱")?c="timing":u.includes("[HAPPY-PATH]")&&(c="happyPath"),{raw:e,timestamp:r,level:i==null?void 0:i.trim(),component:a==null?void 0:a.trim(),correlationId:l||void 0,message:u,isSpecial:c}}function fte({isOpen:e,onClose:t}){const[n,r]=k.useState(""),[i,a]=k.useState(!1),[l,u]=k.useState(null),[c,f]=k.useState(!1),[d,p]=k.useState(350),[g,y]=k.useState(!1),b=k.useRef(0),S=k.useRef(0),w=k.useRef(null),P=k.useRef(!0),[C,O]=k.useState(new Set(["DEBUG","INFO","WARN","ERROR"])),[A,I]=k.useState(new Set(["HOOK","WORKER","SDK","PARSER","DB","SYSTEM","HTTP","SESSION","CHROMA"])),[E,L]=k.useState(!1),F=k.useMemo(()=>n?n.split(` -`).map(cte):[],[n]),H=k.useMemo(()=>F.filter(_=>E?_.raw.includes("[ALIGNMENT]"):!_.level||!_.component?!0:C.has(_.level)&&A.has(_.component)),[F,C,A,E]),R=k.useCallback(()=>{if(!w.current)return!0;const{scrollTop:_,scrollHeight:te,clientHeight:fe}=w.current;return te-_-fe<50},[]),W=k.useCallback(()=>{w.current&&P.current&&(w.current.scrollTop=w.current.scrollHeight)},[]),D=k.useCallback(async()=>{P.current=R(),a(!0),u(null);try{const _=await fetch("/api/logs");if(!_.ok)throw new Error(`Failed to fetch logs: ${_.statusText}`);const te=await _.json();r(te.logs||"")}catch(_){u(_ instanceof Error?_.message:"Unknown error")}finally{a(!1)}},[R]);k.useEffect(()=>{W()},[n,W]);const Z=k.useCallback(async()=>{if(confirm("Are you sure you want to clear all logs?")){a(!0),u(null);try{const _=await fetch("/api/logs/clear",{method:"POST"});if(!_.ok)throw new Error(`Failed to clear logs: ${_.statusText}`);r("")}catch(_){u(_ instanceof Error?_.message:"Unknown error")}finally{a(!1)}}},[]),Y=k.useCallback(_=>{_.preventDefault(),y(!0),b.current=_.clientY,S.current=d},[d]);k.useEffect(()=>{if(!g)return;const _=fe=>{const ce=b.current-fe.clientY,Se=Math.min(Math.max(150,S.current+ce),window.innerHeight-100);p(Se)},te=()=>{y(!1)};return document.addEventListener("mousemove",_),document.addEventListener("mouseup",te),()=>{document.removeEventListener("mousemove",_),document.removeEventListener("mouseup",te)}},[g]),k.useEffect(()=>{e&&(P.current=!0,D())},[e,D]),k.useEffect(()=>{if(!e||!c)return;const _=setInterval(D,2e3);return()=>clearInterval(_)},[e,c,D]);const Q=k.useCallback(_=>{O(te=>{const fe=new Set(te);return fe.has(_)?fe.delete(_):fe.add(_),fe})},[]),he=k.useCallback(_=>{I(te=>{const fe=new Set(te);return fe.has(_)?fe.delete(_):fe.add(_),fe})},[]),de=k.useCallback(_=>{O(_?new Set(["DEBUG","INFO","WARN","ERROR"]):new Set)},[]),J=k.useCallback(_=>{I(_?new Set(["HOOK","WORKER","SDK","PARSER","DB","SYSTEM","HTTP","SESSION","CHROMA"]):new Set)},[]);if(!e)return null;const ae=_=>{const te=Xl.find(fe=>fe.key===_);return(te==null?void 0:te.color)||"text-base-content"},T=_=>{const te=Ql.find(fe=>fe.key===_);return(te==null?void 0:te.color)||"text-base-content"},$=_=>_.level==="ERROR"?"bg-error/10":_.level==="WARN"?"bg-warning/5":"",U=(_,te)=>{var Se,je;if(!_.timestamp)return m.jsx("div",{className:"whitespace-pre-wrap break-all text-base-content/60",children:_.raw},te);const fe=Xl.find(X=>X.key===_.level),ce=Ql.find(X=>X.key===_.component);return m.jsxs("div",{className:`whitespace-pre-wrap break-all py-0.5 px-1 rounded ${$(_)}`,children:[m.jsxs("span",{className:"text-base-content/40",children:["[",_.timestamp,"]"]})," ",m.jsxs("span",{className:`font-medium ${ae(_.level)}`,title:_.level,children:["[",(fe==null?void 0:fe.icon)||""," ",(Se=_.level)==null?void 0:Se.padEnd(5),"]"]})," ",m.jsxs("span",{className:`font-medium ${T(_.component)}`,title:_.component,children:["[",(ce==null?void 0:ce.icon)||""," ",(je=_.component)==null?void 0:je.padEnd(7),"]"]})," ",_.correlationId&&m.jsxs(m.Fragment,{children:[m.jsxs("span",{className:"text-base-content/50",children:["[",_.correlationId,"]"]})," "]}),m.jsx("span",{className:_.isSpecial==="success"?"text-success":_.isSpecial==="failure"?"text-error":"text-base-content",children:_.message})]},te)};return m.jsxs("div",{className:"fixed bottom-0 left-0 right-0 bg-base-100 border-t border-base-300 flex flex-col z-50 shadow-2xl",style:{height:`${d}px`},children:[m.jsx("div",{className:"h-1.5 cursor-ns-resize flex items-center justify-center bg-base-200 hover:bg-base-300 transition-colors",onMouseDown:Y,children:m.jsx("div",{className:"w-12 h-1 bg-base-300 rounded-full"})}),m.jsxs("div",{className:"flex justify-between items-center px-3 h-9 bg-base-200 border-b border-base-300",children:[m.jsx("div",{className:"flex gap-1",children:m.jsx("div",{className:"px-3 py-1 text-xs font-medium bg-base-100 text-base-content rounded",children:"Console"})}),m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsxs("label",{className:"flex items-center gap-1.5 text-xs text-base-content/60 cursor-pointer",children:[m.jsx("input",{type:"checkbox",className:"checkbox checkbox-xs",checked:c,onChange:_=>f(_.target.checked)}),"Auto-refresh"]}),m.jsx("button",{className:"btn btn-ghost btn-xs btn-square",onClick:D,disabled:i,title:"Refresh logs",children:m.jsx(se,{icon:"lucide:refresh-cw",size:14,className:i?"animate-spin":""})}),m.jsx("button",{className:"btn btn-ghost btn-xs btn-square",onClick:()=>{P.current=!0,W()},title:"Scroll to bottom",children:m.jsx(se,{icon:"lucide:arrow-down",size:14})}),m.jsx("button",{className:"btn btn-ghost btn-xs btn-square hover:text-error",onClick:Z,disabled:i,title:"Clear logs",children:m.jsx(se,{icon:"lucide:trash-2",size:14})}),m.jsx("button",{className:"btn btn-ghost btn-xs btn-square",onClick:t,title:"Close console",children:m.jsx(se,{icon:"lucide:x",size:14})})]})]}),m.jsxs("div",{className:"flex flex-wrap gap-3 px-3 py-2 bg-base-200/50 border-b border-base-300 text-xs",children:[m.jsxs("div",{className:"flex items-center gap-1.5",children:[m.jsx("span",{className:"font-medium text-base-content/50 uppercase text-[10px]",children:"Quick:"}),m.jsx("button",{className:`badge badge-sm cursor-pointer ${E?"badge-warning":"badge-ghost opacity-50"}`,onClick:()=>L(!E),title:"Show only session alignment logs",children:"🔗 Alignment"})]}),m.jsxs("div",{className:"flex items-center gap-1.5",children:[m.jsx("span",{className:"font-medium text-base-content/50 uppercase text-[10px]",children:"Levels:"}),m.jsxs("div",{className:"flex flex-wrap gap-1",children:[Xl.map(_=>m.jsxs("button",{className:`badge badge-sm cursor-pointer ${C.has(_.key)?"badge-primary":"badge-ghost opacity-40"}`,onClick:()=>Q(_.key),title:_.label,children:[_.icon," ",_.label]},_.key)),m.jsx("button",{className:"badge badge-sm badge-ghost cursor-pointer",onClick:()=>de(C.size===0),title:C.size===Xl.length?"Select none":"Select all",children:C.size===Xl.length?"○":"●"})]})]}),m.jsxs("div",{className:"flex items-center gap-1.5",children:[m.jsx("span",{className:"font-medium text-base-content/50 uppercase text-[10px]",children:"Components:"}),m.jsxs("div",{className:"flex flex-wrap gap-1",children:[Ql.map(_=>m.jsxs("button",{className:`badge badge-sm cursor-pointer ${A.has(_.key)?"badge-secondary":"badge-ghost opacity-40"}`,onClick:()=>he(_.key),title:_.label,children:[_.icon," ",_.label]},_.key)),m.jsx("button",{className:"badge badge-sm badge-ghost cursor-pointer",onClick:()=>J(A.size===0),title:A.size===Ql.length?"Select none":"Select all",children:A.size===Ql.length?"○":"●"})]})]})]}),l&&m.jsxs("div",{className:"px-3 py-2 bg-error/10 text-error text-xs",children:["⚠ ",l]}),m.jsx("div",{className:"flex-1 overflow-y-auto px-3 py-2",ref:w,children:m.jsx("div",{className:"font-mono text-xs leading-relaxed",children:H.length===0?m.jsx("div",{className:"text-base-content/40 italic",children:"No logs available"}):H.map((_,te)=>U(_,te))})})]})}const Wv={COMMAND_PALETTE:{key:"k",modifiers:["ctrl","meta"],description:"Open command palette",action:"openCommandPalette"},SEARCH:{key:"/",modifiers:["ctrl","meta"],description:"Focus search",action:"focusSearch"},ESCAPE:{key:"Escape",description:"Close modal/palette",action:"escape"},TOGGLE_THEME:{key:"t",modifiers:["ctrl","meta"],description:"Toggle theme",action:"toggleTheme"},TOGGLE_SIDEBAR:{key:"b",modifiers:["ctrl","meta"],description:"Toggle sidebar",action:"toggleSidebar"}},dte=[{sequence:["g","d"],description:"Go to Dashboard",action:"navigate:/"},{sequence:["g","m"],description:"Go to Memories",action:"navigate:/memories"},{sequence:["g","v"],description:"Go to Vault",action:"navigate:/vault"}];function RE(e){var r,i,a,l;const t=typeof navigator<"u"&&navigator.platform.includes("Mac"),n=[];return((r=e.modifiers)!=null&&r.includes("ctrl")||(i=e.modifiers)!=null&&i.includes("meta"))&&n.push(t?"⌘":"Ctrl"),(a=e.modifiers)!=null&&a.includes("shift")&&n.push(t?"⇧":"Shift"),(l=e.modifiers)!=null&&l.includes("alt")&&n.push(t?"⌥":"Alt"),n.push(e.key.toUpperCase()),n.join(t?"":"+")}function hte({open:e,onClose:t,onNavigate:n,onToggleTheme:r,onToggleSidebar:i}){const[a,l]=k.useState(""),[u,c]=k.useState(0),f=k.useRef(null),d=k.useRef(null),p=k.useMemo(()=>[{id:"nav-dashboard",label:"Go to Dashboard",shortcut:"G D",category:"navigation",icon:"lucide:layout-dashboard",action:()=>n("/")},{id:"nav-memories",label:"Go to Memories",shortcut:"G M",category:"navigation",icon:"lucide:brain",action:()=>n("/memories")},{id:"nav-usage",label:"Go to Usage",shortcut:"G U",category:"navigation",icon:"lucide:bar-chart-3",action:()=>n("/usage")},{id:"nav-vault",label:"Go to Vault",shortcut:"G V",category:"navigation",icon:"lucide:archive",action:()=>n("/vault")},{id:"action-theme",label:"Toggle Theme",shortcut:RE(Wv.TOGGLE_THEME),category:"action",icon:"lucide:sun-moon",action:r},{id:"action-sidebar",label:"Toggle Sidebar",shortcut:RE(Wv.TOGGLE_SIDEBAR),category:"action",icon:"lucide:panel-left",action:i}],[n,r,i]),g=k.useMemo(()=>{if(!a)return p;const C=a.toLowerCase();return p.filter(O=>O.label.toLowerCase().includes(C)||O.category.toLowerCase().includes(C))},[p,a]);k.useEffect(()=>{c(0)},[a]),k.useEffect(()=>{e&&(l(""),c(0),setTimeout(()=>{var C;return(C=f.current)==null?void 0:C.focus()},50))},[e]),k.useEffect(()=>{if(!d.current)return;const C=d.current.querySelector('[data-selected="true"]');C==null||C.scrollIntoView({block:"nearest"})},[u]);const y=C=>{C.action(),t()},b=C=>{switch(C.key){case"ArrowDown":C.preventDefault(),c(O=>(O+1)%g.length);break;case"ArrowUp":C.preventDefault(),c(O=>(O-1+g.length)%g.length);break;case"Enter":C.preventDefault(),g[u]&&y(g[u]);break;case"Escape":C.preventDefault(),t();break}};if(!e)return null;const S=g.reduce((C,O)=>(C[O.category]||(C[O.category]=[]),C[O.category].push(O),C),{}),w={navigation:"Navigation",action:"Actions",theme:"Theme"};let P=0;return m.jsxs("dialog",{className:"modal modal-open",children:[m.jsxs("div",{className:"modal-box max-w-xl p-0 overflow-hidden",children:[m.jsxs("div",{className:"flex items-center gap-2 p-3 border-b border-base-300",children:[m.jsx(se,{icon:"lucide:search",size:18,className:"text-base-content/50"}),m.jsx("input",{ref:f,type:"text",placeholder:"Type a command or search...",value:a,onChange:C=>l(C.target.value),onKeyDown:b,className:"flex-1 bg-transparent outline-none text-base"}),m.jsx("kbd",{className:"kbd kbd-sm",children:"ESC"})]}),m.jsx("div",{ref:d,className:"max-h-80 overflow-y-auto p-2",children:g.length===0?m.jsx("div",{className:"text-center py-8 text-base-content/50",children:"No commands found"}):Object.entries(S).map(([C,O])=>m.jsxs("div",{children:[m.jsx("div",{className:"text-xs font-medium text-base-content/50 px-2 py-1 mt-2 first:mt-0",children:w[C]||C}),O.map(A=>{const I=P===u,E=P;return P++,m.jsxs("button",{"data-selected":I,className:`w-full flex items-center gap-3 px-3 py-2 rounded-lg text-left transition-colors ${I?"bg-primary text-primary-content":"hover:bg-base-200"}`,onClick:()=>y(A),onMouseEnter:()=>c(E),children:[m.jsx(se,{icon:A.icon,size:16,className:I?"text-primary-content":"text-base-content/60"}),m.jsx("span",{className:"flex-1",children:A.label}),A.shortcut&&m.jsx("kbd",{className:`kbd kbd-sm ${I?"bg-primary-content/20 text-primary-content":""}`,children:A.shortcut})]},A.id)})]},C))}),m.jsxs("div",{className:"border-t border-base-300 px-3 py-2 text-xs text-base-content/50 flex gap-4",children:[m.jsxs("span",{children:[m.jsx("kbd",{className:"kbd kbd-xs",children:"↑↓"})," Navigate"]}),m.jsxs("span",{children:[m.jsx("kbd",{className:"kbd kbd-xs",children:"↵"})," Select"]}),m.jsxs("span",{children:[m.jsx("kbd",{className:"kbd kbd-xs",children:"ESC"})," Close"]})]})]}),m.jsx("form",{method:"dialog",className:"modal-backdrop bg-black/50",children:m.jsx("button",{onClick:t,children:"close"})})]})}function pte({license:e,onActivated:t}){const[n,r]=k.useState(""),[i,a]=k.useState(null),[l,u]=k.useState(!1),c=k.useCallback(async()=>{const y=n.trim();if(y){a(null),u(!0);try{const S=await(await fetch("/api/license/activate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:y})})).json();S.success?(r(""),a(null),t()):a(S.error??"Activation failed")}catch{a("Connection failed. Is the Pilot worker running?")}finally{u(!1)}}},[n,t]),f=k.useCallback(y=>{y.key==="Enter"&&!l&&c()},[c,l]),d=(e==null?void 0:e.isExpired)===!0,p=d?"License Expired":"License Required",g=d?"Your Claude Pilot license has expired. Please activate a new license to continue using the Console.":"Claude Pilot Console requires an active license or trial. Activate your license key below to get started.";return m.jsx("div",{className:"min-h-screen flex items-center justify-center bg-base-200 p-4",children:m.jsx("div",{className:"card bg-base-100 shadow-xl w-full max-w-md",children:m.jsxs("div",{className:"card-body items-center text-center gap-4",children:[m.jsx("div",{className:"text-5xl mb-2",children:d?"🚫":"🔒"}),m.jsx("h1",{className:"card-title text-2xl",children:p}),m.jsx("p",{className:"text-base-content/60 text-sm",children:g}),m.jsxs("div",{className:"w-full space-y-3 mt-2",children:[m.jsx("input",{type:"text",className:"input input-bordered w-full",placeholder:"Enter your license key",value:n,onChange:y=>{r(y.target.value),a(null)},onKeyDown:f,disabled:l,autoFocus:!0}),i&&m.jsx("p",{className:"text-error text-sm text-left",children:i}),m.jsx("button",{className:"btn btn-primary w-full",onClick:c,disabled:l||!n.trim(),children:l?"Activating...":"Activate License"})]}),m.jsx("div",{className:"divider text-base-content/40 text-xs my-1",children:"or"}),m.jsx("a",{href:"https://claude-pilot.com/#pricing",target:"_blank",rel:"noopener noreferrer",className:"btn btn-outline btn-sm w-full",children:"Get a License"}),m.jsxs("p",{className:"text-base-content/40 text-xs mt-2",children:["Visit"," ",m.jsx("a",{href:"https://claude-pilot.com",target:"_blank",rel:"noopener noreferrer",className:"text-primary hover:underline",children:"claude-pilot.com"})," ","to learn more about Claude Pilot."]})]})})})}const _T="pilot-memory-theme";function mte(){return typeof window>"u"||window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}function zE(){try{const e=localStorage.getItem(_T);if(e==="system"||e==="light"||e==="dark")return e}catch(e){console.warn("Failed to read theme preference from localStorage:",e)}return"system"}function $E(e){return e==="system"?mte():e}function FE(e){return e==="dark"?"claude-pilot":"claude-pilot-light"}function gte(){const[e,t]=k.useState(zE),[n,r]=k.useState(()=>$E(zE()));return k.useEffect(()=>{const a=$E(e);r(a),document.documentElement.setAttribute("data-theme",FE(a))},[e]),k.useEffect(()=>{if(e!=="system")return;const a=window.matchMedia("(prefers-color-scheme: dark)"),l=u=>{const c=u.matches?"dark":"light";r(c),document.documentElement.setAttribute("data-theme",FE(c))};return a.addEventListener("change",l),()=>a.removeEventListener("change",l)},[e]),{preference:e,resolvedTheme:n,setThemePreference:a=>{try{localStorage.setItem(_T,a),t(a)}catch(l){console.warn("Failed to save theme preference to localStorage:",l),t(a)}}}}function vte(e,t={}){const{enabled:n=!0}=t,r=k.useRef([]),i=k.useRef(null),a=k.useCallback(()=>{r.current=[],i.current&&(clearTimeout(i.current),i.current=null)},[]);k.useEffect(()=>{if(!n)return;const l=u=>{const c=u.target;if(c.tagName==="INPUT"||c.tagName==="TEXTAREA"||c.isContentEditable){u.key==="Escape"&&e("escape");return}navigator.platform.includes("Mac");const f=u.ctrlKey||u.metaKey;for(const d of Object.values(Wv)){const p=!d.modifiers||d.modifiers.some(b=>b==="ctrl"?u.ctrlKey:b==="meta"?u.metaKey:b==="shift"?u.shiftKey:b==="alt"?u.altKey:!1),g=u.key.toLowerCase()===d.key.toLowerCase(),y=d.modifiers&&d.modifiers.length>0;if(g&&p&&(y?f:!f)){u.preventDefault(),e(d.action),a();return}}if(!f&&!u.shiftKey&&!u.altKey){i.current&&clearTimeout(i.current),r.current.push(u.key.toLowerCase()),i.current=setTimeout(a,1e3);for(const d of dte){const p=r.current,g=d.sequence;if(g.slice(0,p.length).every((b,S)=>b===p[S])){if(p.length===g.length){u.preventDefault(),e(d.action),a();return}return}}a()}};return document.addEventListener("keydown",l),()=>{document.removeEventListener("keydown",l),a()}},[n,e,a])}const yte=[{path:"/",component:IL},{path:"/spec",component:OB},{path:"/memories",component:Xw},{path:"/memories/:type",component:Xw},{path:"/sessions",component:ZL},{path:"/usage",component:Xee},{path:"/vault",component:ste}],BE="pilot-memory-sidebar-collapsed";function xte(){const{path:e,navigate:t}=cC(),{resolvedTheme:n,setThemePreference:r}=gte(),{workerStatus:i}=fC(),{license:a,isLoading:l,refetch:u}=uC(),[c,f]=k.useState(()=>{if(typeof window<"u"&&window.innerWidth<1024)return!0;try{return localStorage.getItem(BE)==="true"}catch{return!1}}),[d,p]=k.useState(!1),[g,y]=k.useState(!1),b=k.useCallback(()=>{r(n==="light"?"dark":"light")},[n,r]),S=k.useCallback(()=>{f(O=>{const A=!O;try{localStorage.setItem(BE,String(A))}catch{}return A})},[]),w=k.useCallback(()=>{p(O=>!O)},[]),P=k.useCallback(O=>{if(O==="openCommandPalette")y(!0);else if(O==="escape")y(!1),p(!1);else if(O==="toggleTheme")r(n==="light"?"dark":"light");else if(O==="toggleSidebar")S();else if(O==="focusSearch"){const A=document.querySelector('input[type="search"]');A==null||A.focus()}else O.startsWith("navigate:")&&t(O.replace("navigate:",""))},[n,r,t,S]);vte(P);const C=!l&&(a==null?void 0:a.valid)===!0&&!a.isExpired;return l?m.jsx("div",{className:"min-h-screen flex items-center justify-center bg-base-200","data-theme":n==="dark"?"claude-pilot":"claude-pilot-light",children:m.jsx("span",{className:"loading loading-spinner loading-lg text-primary"})}):C?m.jsx(fL,{children:m.jsxs(uL,{children:[m.jsx(yL,{currentPath:`#${e}`,workerStatus:i.status,version:i.version,queueDepth:i.queueDepth,theme:n,onToggleTheme:b,onToggleLogs:w,sidebarCollapsed:c,onToggleSidebar:S,children:m.jsx(xL,{routes:yte})}),m.jsx(fte,{isOpen:d,onClose:()=>p(!1)}),m.jsx(hte,{open:g,onClose:()=>y(!1),onNavigate:t,onToggleTheme:b,onToggleSidebar:S})]})}):m.jsx("div",{"data-theme":n==="dark"?"claude-pilot":"claude-pilot-light",children:m.jsx(pte,{license:a,onActivated:u})})}class bte extends k.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?m.jsxs("div",{style:{padding:"20px",color:"#ff6b6b",backgroundColor:"#1a1a1a",minHeight:"100vh"},children:[m.jsx("h1",{style:{fontSize:"24px",marginBottom:"10px"},children:"Something went wrong"}),m.jsx("p",{style:{marginBottom:"10px",color:"#8b949e"},children:"The application encountered an error. Please refresh the page to try again."}),this.state.error&&m.jsxs("details",{style:{marginTop:"20px",color:"#8b949e"},children:[m.jsx("summary",{style:{cursor:"pointer",marginBottom:"10px"},children:"Error details"}),m.jsxs("pre",{style:{backgroundColor:"#0d1117",padding:"10px",borderRadius:"6px",overflow:"auto"},children:[this.state.error.toString(),this.state.errorInfo&&` + */var bE;function rZ(){if(bE)return Eg;bE=1;var e=Fo();function t(c,f){return c===f&&(c!==0||1/c===1/f)||c!==c&&f!==f}var n=typeof Object.is=="function"?Object.is:t,r=e.useSyncExternalStore,i=e.useRef,a=e.useEffect,l=e.useMemo,u=e.useDebugValue;return Eg.useSyncExternalStoreWithSelector=function(c,f,d,p,g){var y=i(null);if(y.current===null){var x={hasValue:!1,value:null};y.current=x}else x=y.current;y=l(function(){function w(I){if(!P){if(P=!0,C=I,I=p(I),g!==void 0&&x.hasValue){var E=x.value;if(g(E,I))return O=E}return O=I}if(E=O,n(C,I))return E;var L=p(I);return g!==void 0&&g(E,L)?(C=I,E):(C=I,O=L)}var P=!1,C,O,A=d===void 0?null:d;return[function(){return w(f())},A===null?void 0:function(){return w(A())}]},[f,d,p,g]);var S=r(c,y[0],y[1]);return a(function(){x.hasValue=!0,x.value=S},[S]),u(S),S},Eg}var wE;function iZ(){return wE||(wE=1,Pg.exports=rZ()),Pg.exports}iZ();function aZ(e){e()}function oZ(){let e=null,t=null;return{clear(){e=null,t=null},notify(){aZ(()=>{let n=e;for(;n;)n.callback(),n=n.next})},get(){const n=[];let r=e;for(;r;)n.push(r),r=r.next;return n},subscribe(n){let r=!0;const i=t={callback:n,next:null,prev:t};return i.prev?i.prev.next=i:e=i,function(){!r||e===null||(r=!1,i.next?i.next.prev=i.prev:t=i.prev,i.prev?i.prev.next=i.next:e=i.next)}}}}var kE={notify(){},get:()=>[]};function lZ(e,t){let n,r=kE,i=0,a=!1;function l(S){d();const w=r.subscribe(S);let P=!1;return()=>{P||(P=!0,w(),p())}}function u(){r.notify()}function c(){x.onStateChange&&x.onStateChange()}function f(){return a}function d(){i++,n||(n=e.subscribe(c),r=oZ())}function p(){i--,n&&i===0&&(n(),n=void 0,r.clear(),r=kE)}function g(){a||(a=!0,d())}function y(){a&&(a=!1,p())}const x={addNestedSub:l,notifyNestedSubs:u,handleChangeWrapper:c,isSubscribed:f,trySubscribe:g,tryUnsubscribe:y,getListeners:()=>r};return x}var sZ=()=>typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",uZ=sZ(),cZ=()=>typeof navigator<"u"&&navigator.product==="ReactNative",fZ=cZ(),dZ=()=>uZ||fZ?k.useLayoutEffect:k.useEffect,hZ=dZ();function SE(e,t){return e===t?e!==0||t!==0||1/e===1/t:e!==e&&t!==t}function pZ(e,t){if(SE(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;const n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let i=0;i{const c=lZ(i);return{store:i,subscription:c,getServerState:r?()=>r:void 0}},[i,r]),l=k.useMemo(()=>i.getState(),[i]);hZ(()=>{const{subscription:c}=a;return c.onStateChange=c.notifyNestedSubs,c.trySubscribe(),l!==i.getState()&&c.notifyNestedSubs(),()=>{c.tryUnsubscribe(),c.onStateChange=void 0}},[a,l]);const u=n||gZ;return k.createElement(u.Provider,{value:a},t)}var yZ=vZ,xZ=new Set(["axisLine","tickLine","activeBar","activeDot","activeLabel","activeShape","allowEscapeViewBox","background","cursor","dot","label","line","margin","padding","position","shape","style","tick","wrapperStyle","radius"]);function bZ(e,t){return e==null&&t==null?!0:typeof e=="number"&&typeof t=="number"?e===t||e!==e&&t!==t:e===t}function Md(e,t){var n=new Set([...Object.keys(e),...Object.keys(t)]);for(var r of n)if(xZ.has(r)){if(e[r]==null&&t[r]==null)continue;if(!pZ(e[r],t[r]))return!1}else if(!bZ(e[r],t[r]))return!1;return!0}function Fr(e,t){var n,r;return(n=(r=e.graphicalItems.cartesianItems.find(i=>i.id===t))===null||r===void 0?void 0:r.xAxisId)!==null&&n!==void 0?n:rT}function Br(e,t){var n,r;return(n=(r=e.graphicalItems.cartesianItems.find(i=>i.id===t))===null||r===void 0?void 0:r.yAxisId)!==null&&n!==void 0?n:rT}var fT=(e,t,n)=>Zi(e,"xAxis",Fr(e,t),n),dT=(e,t,n)=>Qi(e,"xAxis",Fr(e,t),n),hT=(e,t,n)=>Zi(e,"yAxis",Br(e,t),n),pT=(e,t,n)=>Qi(e,"yAxis",Br(e,t),n),wZ=G([He,fT,hT,dT,pT],(e,t,n,r,i)=>$r(e,"xAxis")?Do(t,r,!1):Do(n,i,!1)),kZ=(e,t)=>t,mT=G([Nd,kZ],(e,t)=>e.filter(n=>n.type==="area").find(n=>n.id===t)),gT=e=>{var t=He(e),n=$r(t,"xAxis");return n?"yAxis":"xAxis"},SZ=(e,t)=>{var n=gT(e);return n==="yAxis"?Br(e,t):Fr(e,t)},jZ=(e,t,n)=>Pf(e,gT(e),SZ(e,t),n),PZ=G([mT,jZ],(e,t)=>{var n;if(!(e==null||t==null)){var{stackId:r}=e,i=Pd(e);if(!(r==null||i==null)){var a=(n=t[r])===null||n===void 0?void 0:n.stackedData,l=a==null?void 0:a.find(u=>u.key===i);if(l!=null)return l.map(u=>[u[0],u[1]])}}}),EZ=G([He,fT,hT,dT,pT,PZ,KA,wZ,mT,lV],(e,t,n,r,i,a,l,u,c,f)=>{var{chartData:d,dataStartIndex:p,dataEndIndex:g}=l;if(!(c==null||e!=="horizontal"&&e!=="vertical"||t==null||n==null||r==null||i==null||r.length===0||i.length===0||u==null)){var{data:y}=c,x;if(y&&y.length>0?x=y:x=d==null?void 0:d.slice(p,g+1),x!=null)return HZ({layout:e,xAxis:t,yAxis:n,xAxisTicks:r,yAxisTicks:i,dataStartIndex:p,areaSettings:c,stackedData:a,displayedData:x,chartBaseValue:f,bandSize:u})}}),CZ=["id"],OZ=["activeDot","animationBegin","animationDuration","animationEasing","connectNulls","dot","fill","fillOpacity","hide","isAnimationActive","legendType","stroke","xAxisId","yAxisId"];function Oa(){return Oa=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{dataKey:t,name:n,stroke:r,fill:i,legendType:a,hide:l}=e;return[{inactive:l,dataKey:t,type:a,color:Tf(r,i),value:rd(n,t),payload:e}]},MZ=k.memo(e=>{var{dataKey:t,data:n,stroke:r,strokeWidth:i,fill:a,name:l,hide:u,unit:c,tooltipType:f,id:d}=e,p={dataDefinedOnItem:n,getPosition:Fa,settings:{stroke:r,strokeWidth:i,fill:a,dataKey:t,nameKey:void 0,name:rd(l,t),hide:u,type:f,color:Tf(r,a),unit:c,graphicalItemId:d}};return k.createElement(ZI,{tooltipEntrySettings:p})});function DZ(e){var{clipPathId:t,points:n,props:r}=e,{needClip:i,dot:a,dataKey:l}=r,u=Jn(r);return k.createElement(PX,{points:n,dot:a,className:"recharts-area-dots",dotClassName:"recharts-area-dot",dataKey:l,baseProps:u,needClip:i,clipPathId:t})}function LZ(e){var{showLabels:t,children:n,points:r}=e,i=r.map(a=>{var l,u,c={x:(l=a.x)!==null&&l!==void 0?l:0,y:(u=a.y)!==null&&u!==void 0?u:0,width:0,lowerWidth:0,upperWidth:0,height:0};return Po(Po({},c),{},{value:a.value,payload:a.payload,parentViewBox:void 0,viewBox:c,fill:void 0})});return k.createElement(UI,{value:t?i:void 0},n)}function PE(e){var{points:t,baseLine:n,needClip:r,clipPathId:i,props:a}=e,{layout:l,type:u,stroke:c,connectNulls:f,isRange:d}=a,{id:p}=a,g=vT(a,CZ),y=Jn(g),x=dn(g);return k.createElement(k.Fragment,null,(t==null?void 0:t.length)>1&&k.createElement(hn,{clipPath:r?"url(#clipPath-".concat(i,")"):void 0},k.createElement(os,Oa({},x,{id:p,points:t,connectNulls:f,type:u,baseLine:n,layout:l,stroke:"none",className:"recharts-area-area"})),c!=="none"&&k.createElement(os,Oa({},y,{className:"recharts-area-curve",layout:l,type:u,connectNulls:f,fill:"none",points:t})),c!=="none"&&d&&k.createElement(os,Oa({},y,{className:"recharts-area-curve",layout:l,type:u,connectNulls:f,fill:"none",points:n}))),k.createElement(DZ,{points:t,props:g,clipPathId:i}))}function RZ(e){var t,n,{alpha:r,baseLine:i,points:a,strokeWidth:l}=e,u=(t=a[0])===null||t===void 0?void 0:t.y,c=(n=a[a.length-1])===null||n===void 0?void 0:n.y;if(!Me(u)||!Me(c))return null;var f=r*Math.abs(u-c),d=Math.max(...a.map(p=>p.x||0));return ge(i)?d=Math.max(i,d):i&&Array.isArray(i)&&i.length&&(d=Math.max(...i.map(p=>p.x||0),d)),ge(d)?k.createElement("rect",{x:0,y:up.y||0));return ge(i)?d=Math.max(i,d):i&&Array.isArray(i)&&i.length&&(d=Math.max(...i.map(p=>p.y||0),d)),ge(d)?k.createElement("rect",{x:u({points:l,baseLine:u}),[l,u]),S=hd(x,"recharts-area-"),w=Dy(),[P,C]=k.useState(!1),O=!P,A=k.useCallback(()=>{typeof y=="function"&&y(),C(!1)},[y]),I=k.useCallback(()=>{typeof g=="function"&&g(),C(!0)},[g]);if(w==null)return null;var E=i.current,L=a.current;return k.createElement(LZ,{showLabels:O,points:l},r.children,k.createElement(dd,{animationId:S,begin:f,duration:d,isActive:c,easing:p,onAnimationEnd:A,onAnimationStart:I,key:S},F=>{if(E){var H=E.length/l.length,R=F===1?l:l.map((M,Z)=>{var Y=Math.floor(Z*H);if(E[Y]){var Q=E[Y];return Po(Po({},M),{},{x:ut(Q.x,M.x,F),y:ut(Q.y,M.y,F)})}return M}),W;return ge(u)?W=ut(L,u,F):mt(u)||gr(u)?W=ut(L,0,F):W=u.map((M,Z)=>{var Y=Math.floor(Z*H);if(Array.isArray(L)&&L[Y]){var Q=L[Y];return Po(Po({},M),{},{x:ut(Q.x,M.x,F),y:ut(Q.y,M.y,F)})}return M}),F>0&&(i.current=R,a.current=W),k.createElement(PE,{points:R,baseLine:W,needClip:t,clipPathId:n,props:r})}return F>0&&(i.current=l,a.current=u),k.createElement(hn,null,c&&k.createElement("defs",null,k.createElement("clipPath",{id:"animationClipPath-".concat(n)},k.createElement($Z,{alpha:F,points:l,baseLine:u,layout:w,strokeWidth:r.strokeWidth}))),k.createElement(hn,{clipPath:"url(#animationClipPath-".concat(n,")")},k.createElement(PE,{points:l,baseLine:u,needClip:t,clipPathId:n,props:r})))}),k.createElement(qI,{label:r.label}))}function BZ(e){var{needClip:t,clipPathId:n,props:r}=e,i=k.useRef(null),a=k.useRef();return k.createElement(FZ,{needClip:t,clipPathId:n,props:r,previousPointsRef:i,previousBaselineRef:a})}class UZ extends k.PureComponent{render(){var{hide:t,dot:n,points:r,className:i,top:a,left:l,needClip:u,xAxisId:c,yAxisId:f,width:d,height:p,id:g,baseLine:y,zIndex:x}=this.props;if(t)return null;var S=Ge("recharts-area",i),w=g,{r:P,strokeWidth:C}=nZ(n),O=GI(n),A=P*2+C,I=u?"url(#clipPath-".concat(O?"":"dots-").concat(w,")"):void 0;return k.createElement(rr,{zIndex:x},k.createElement(hn,{className:S},u&&k.createElement("defs",null,k.createElement(cT,{clipPathId:w,xAxisId:c,yAxisId:f}),!O&&k.createElement("clipPath",{id:"clipPath-dots-".concat(w)},k.createElement("rect",{x:l-A/2,y:a-A/2,width:d+A,height:p+A}))),k.createElement(BZ,{needClip:u,clipPathId:w,props:this.props})),k.createElement(hE,{points:r,mainColor:Tf(this.props.stroke,this.props.fill),itemDataKey:this.props.dataKey,activeDot:this.props.activeDot,clipPath:I}),this.props.isRange&&Array.isArray(y)&&k.createElement(hE,{points:y,mainColor:Tf(this.props.stroke,this.props.fill),itemDataKey:this.props.dataKey,activeDot:this.props.activeDot,clipPath:I}))}}var yT={activeDot:!0,animationBegin:0,animationDuration:1500,animationEasing:"ease",connectNulls:!1,dot:!1,fill:"#3182bd",fillOpacity:.6,hide:!1,isAnimationActive:"auto",legendType:"line",stroke:"#3182bd",strokeWidth:1,type:"linear",label:!1,xAxisId:0,yAxisId:0,zIndex:Rt.area};function WZ(e){var t,n=mn(e,yT),{activeDot:r,animationBegin:i,animationDuration:a,animationEasing:l,connectNulls:u,dot:c,fill:f,fillOpacity:d,hide:p,isAnimationActive:g,legendType:y,stroke:x,xAxisId:S,yAxisId:w}=n,P=vT(n,OZ),C=Ba(),O=bI(),{needClip:A}=Fx(S,w),I=on(),{points:E,isRange:L,baseLine:F}=(t=Pe(Y=>EZ(Y,e.id,I)))!==null&&t!==void 0?t:{},H=Lx();if(C!=="horizontal"&&C!=="vertical"||H==null||O!=="AreaChart"&&O!=="ComposedChart")return null;var{height:R,width:W,x:M,y:Z}=H;return!E||!E.length?null:k.createElement(UZ,Oa({},P,{activeDot:r,animationBegin:i,animationDuration:a,animationEasing:l,baseLine:F,connectNulls:u,dot:c,fill:f,fillOpacity:d,height:R,hide:p,layout:C,isAnimationActive:g==="auto"?!Rs.isSsr:g,isRange:L,legendType:y,needClip:A,points:E,stroke:x,width:W,left:M,top:Z,xAxisId:S,yAxisId:w}))}var qZ=(e,t,n,r,i)=>{var a=n??t;if(ge(a))return a;var l=e==="horizontal"?i:r,u=l.scale.domain();if(l.type==="number"){var c=Math.max(u[0],u[1]),f=Math.min(u[0],u[1]);return a==="dataMin"?f:a==="dataMax"||c<0?c:Math.max(Math.min(u[0],u[1]),0)}return a==="dataMin"?u[0]:a==="dataMax"?u[1]:u[0]};function HZ(e){var{areaSettings:{connectNulls:t,baseValue:n,dataKey:r},stackedData:i,layout:a,chartBaseValue:l,xAxis:u,yAxis:c,displayedData:f,dataStartIndex:d,xAxisTicks:p,yAxisTicks:g,bandSize:y}=e,x=i&&i.length,S=qZ(a,l,n,u,c),w=a==="horizontal",P=!1,C=f.map((A,I)=>{var E,L,F,H;if(x)H=i[d+I];else{var R=St(A,r);Array.isArray(R)?(H=R,P=!0):H=[S,R]}var W=(E=(L=H)===null||L===void 0?void 0:L[1])!==null&&E!==void 0?E:null,M=W==null||x&&!t&&St(A,r)==null;if(w){var Z;return{x:fS({axis:u,ticks:p,bandSize:y,entry:A,index:I}),y:M?null:(Z=c.scale.map(W))!==null&&Z!==void 0?Z:null,value:H,payload:A}}return{x:M?null:(F=u.scale.map(W))!==null&&F!==void 0?F:null,y:fS({axis:c,ticks:g,bandSize:y,entry:A,index:I}),value:H,payload:A}}),O;return x||P?O=C.map(A=>{var I,E=Array.isArray(A.value)?A.value[0]:null;if(w){var L;return{x:A.x,y:E!=null&&A.y!=null&&(L=c.scale.map(E))!==null&&L!==void 0?L:null,payload:A.payload}}return{x:E!=null&&(I=u.scale.map(E))!==null&&I!==void 0?I:null,y:A.y,payload:A.payload}}):O=w?c.scale.map(S):u.scale.map(S),{points:C,baseLine:O??0,isRange:P}}function VZ(e){var t=mn(e,yT),n=on();return k.createElement(eT,{id:t.id,type:"area"},r=>k.createElement(k.Fragment,null,k.createElement(JI,{legendPayload:TZ(t)}),k.createElement(MZ,{dataKey:t.dataKey,data:t.data,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,tooltipType:t.tooltipType,id:r}),k.createElement(nT,{type:"area",id:r,data:t.data,dataKey:t.dataKey,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,stackId:$N(t.stackId),hide:t.hide,barSize:void 0,baseValue:t.baseValue,isPanorama:n,connectNulls:t.connectNulls}),k.createElement(WZ,Oa({},t,{id:r}))))}var Dv=k.memo(VZ,Md);Dv.displayName="Area";var KZ="Invariant failed";function GZ(e,t){throw new Error(KZ)}function Lv(){return Lv=Object.assign?Object.assign.bind():function(e){for(var t=1;t1&&arguments[1]!==void 0?arguments[1]:0;return(r,i)=>{if(ge(t))return t;var a=ge(r)||mt(r);return a?t(r,i):(a||GZ(),n)}},XZ=(e,t,n)=>n,QZ=(e,t)=>t,Gs=G([Nd,QZ],(e,t)=>e.filter(n=>n.type==="bar").find(n=>n.id===t)),ZZ=G([Gs],e=>e==null?void 0:e.maxBarSize),JZ=(e,t,n,r)=>r,eJ=G([He,Nd,Fr,Br,XZ],(e,t,n,r,i)=>t.filter(a=>e==="horizontal"?a.xAxisId===n:a.yAxisId===r).filter(a=>a.isPanorama===i).filter(a=>a.hide===!1).filter(a=>a.type==="bar")),tJ=(e,t,n)=>{var r=He(e),i=Fr(e,t),a=Br(e,t);if(!(i==null||a==null))return r==="horizontal"?Pf(e,"yAxis",a,n):Pf(e,"xAxis",i,n)},nJ=(e,t)=>{var n=He(e),r=Fr(e,t),i=Br(e,t);if(!(r==null||i==null))return n==="horizontal"?fP(e,"xAxis",r):fP(e,"yAxis",i)},rJ=G([eJ,oV,nJ],HX),iJ=(e,t,n)=>{var r,i,a=Gs(e,t);if(a==null)return 0;var l=Fr(e,t),u=Br(e,t);if(l==null||u==null)return 0;var c=He(e),f=a_(e),{maxBarSize:d}=a,p=mt(d)?f:d,g,y;return c==="horizontal"?(g=Zi(e,"xAxis",l,n),y=Qi(e,"xAxis",l,n)):(g=Zi(e,"yAxis",u,n),y=Qi(e,"yAxis",u,n)),(r=(i=Do(g,y,!0))!==null&&i!==void 0?i:p)!==null&&r!==void 0?r:0},xT=(e,t,n)=>{var r=He(e),i=Fr(e,t),a=Br(e,t);if(!(i==null||a==null)){var l,u;return r==="horizontal"?(l=Zi(e,"xAxis",i,n),u=Qi(e,"xAxis",i,n)):(l=Zi(e,"yAxis",a,n),u=Qi(e,"yAxis",a,n)),Do(l,u)}},aJ=G([rJ,a_,aV,o_,iJ,xT,ZZ],XX),oJ=(e,t,n)=>{var r=Fr(e,t);if(r!=null)return Zi(e,"xAxis",r,n)},lJ=(e,t,n)=>{var r=Br(e,t);if(r!=null)return Zi(e,"yAxis",r,n)},sJ=(e,t,n)=>{var r=Fr(e,t);if(r!=null)return Qi(e,"xAxis",r,n)},uJ=(e,t,n)=>{var r=Br(e,t);if(r!=null)return Qi(e,"yAxis",r,n)},cJ=G([aJ,Gs],ZX),fJ=G([tJ,Gs],QX),dJ=G([zt,Iy,oJ,lJ,sJ,uJ,cJ,He,KA,xT,fJ,Gs,JZ],(e,t,n,r,i,a,l,u,c,f,d,p,g)=>{var{chartData:y,dataStartIndex:x,dataEndIndex:S}=c;if(!(p==null||l==null||t==null||u!=="horizontal"&&u!=="vertical"||n==null||r==null||i==null||a==null||f==null)){var{data:w}=p,P;if(w!=null&&w.length>0?P=w:P=y==null?void 0:y.slice(x,S+1),P!=null)return FJ({layout:u,barSettings:p,pos:l,parentViewBox:t,bandSize:f,xAxis:n,yAxis:r,xAxisTicks:i,yAxisTicks:a,stackedData:d,displayedData:P,offset:e,cells:g,dataStartIndex:x})}}),hJ=["index"];function Rv(){return Rv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var t=k.useContext(bT);if(t!=null)return t.stackId;if(e!=null)return $N(e)},vJ=(e,t)=>"recharts-bar-stack-clip-path-".concat(e,"-").concat(t),yJ=e=>{var t=k.useContext(bT);if(t!=null){var{stackId:n}=t;return"url(#".concat(vJ(n,e),")")}},wT=e=>{var{index:t}=e,n=pJ(e,hJ),r=yJ(t);return k.createElement(hn,Rv({className:"recharts-bar-stack-layer",clipPath:r},n))},xJ=["onMouseEnter","onMouseLeave","onClick"],bJ=["value","background","tooltipPosition"],wJ=["id"],kJ=["onMouseEnter","onClick","onMouseLeave"];function ci(){return ci=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{dataKey:t,name:n,fill:r,legendType:i,hide:a}=e;return[{inactive:a,dataKey:t,type:i,color:r,value:rd(n,t),payload:e}]},OJ=k.memo(e=>{var{dataKey:t,stroke:n,strokeWidth:r,fill:i,name:a,hide:l,unit:u,tooltipType:c,id:f}=e,d={dataDefinedOnItem:void 0,getPosition:Fa,settings:{stroke:n,strokeWidth:r,fill:i,dataKey:t,nameKey:void 0,name:rd(a,t),hide:l,type:c,color:i,unit:u,graphicalItemId:f}};return k.createElement(ZI,{tooltipEntrySettings:d})});function NJ(e){var t=Pe(La),{data:n,dataKey:r,background:i,allOtherBarProps:a}=e,{onMouseEnter:l,onMouseLeave:u,onClick:c}=a,f=Df(a,xJ),d=YI(l,r,a.id),p=XI(u),g=QI(c,r,a.id);if(!i||n==null)return null;var y=As(i);return k.createElement(rr,{zIndex:JX(i,Rt.barBackground)},n.map((x,S)=>{var{value:w,background:P,tooltipPosition:C}=x,O=Df(x,bJ);if(!P)return null;var A=d(x,S),I=p(x,S),E=g(x,S),L=un(un(un(un(un({option:i,isActive:String(S)===t},O),{},{fill:"#eee"},P),y),ky(f,x,S)),{},{onMouseEnter:A,onMouseLeave:I,onClick:E,dataKey:r,index:S,className:"recharts-bar-background-rectangle"});return k.createElement(Mf,ci({key:"background-bar-".concat(S)},L))}))}function AJ(e){var{showLabels:t,children:n,rects:r}=e,i=r==null?void 0:r.map(a=>{var l={x:a.x,y:a.y,width:a.width,lowerWidth:a.width,upperWidth:a.width,height:a.height};return un(un({},l),{},{value:a.value,payload:a.payload,parentViewBox:a.parentViewBox,viewBox:l,fill:a.fill})});return k.createElement(UI,{value:t?i:void 0},n)}function _J(e){var{shape:t,activeBar:n,baseProps:r,entry:i,index:a,dataKey:l}=e,u=Pe(La),c=Pe(vI),f=n&&String(a)===u&&(c==null||l===c),d=f?n:t;return f?k.createElement(rr,{zIndex:Rt.activeBar},k.createElement(wT,{index:a},k.createElement(Mf,ci({},r,{name:String(r.name)},i,{isActive:f,option:d,index:a,dataKey:l})))):k.createElement(Mf,ci({},r,{name:String(r.name)},i,{isActive:f,option:d,index:a,dataKey:l}))}function IJ(e){var{shape:t,baseProps:n,entry:r,index:i,dataKey:a}=e;return k.createElement(Mf,ci({},n,{name:String(n.name)},r,{isActive:!1,option:t,index:i,dataKey:a}))}function TJ(e){var t,{data:n,props:r}=e,i=(t=Jn(r))!==null&&t!==void 0?t:{},{id:a}=i,l=Df(i,wJ),{shape:u,dataKey:c,activeBar:f}=r,{onMouseEnter:d,onClick:p,onMouseLeave:g}=r,y=Df(r,kJ),x=YI(d,c,a),S=XI(g),w=QI(p,c,a);return n?k.createElement(k.Fragment,null,n.map((P,C)=>k.createElement(wT,ci({index:C,key:"rectangle-".concat(P==null?void 0:P.x,"-").concat(P==null?void 0:P.y,"-").concat(P==null?void 0:P.value,"-").concat(C),className:"recharts-bar-rectangle"},ky(y,P,C),{onMouseEnter:x(P,C),onMouseLeave:S(P,C),onClick:w(P,C)}),f?k.createElement(_J,{shape:u,activeBar:f,baseProps:l,entry:P,index:C,dataKey:c}):k.createElement(IJ,{shape:u,baseProps:l,entry:P,index:C,dataKey:c})))):null}function MJ(e){var{props:t,previousRectanglesRef:n}=e,{data:r,layout:i,isAnimationActive:a,animationBegin:l,animationDuration:u,animationEasing:c,onAnimationEnd:f,onAnimationStart:d}=t,p=n.current,g=hd(t,"recharts-bar-"),[y,x]=k.useState(!1),S=!y,w=k.useCallback(()=>{typeof f=="function"&&f(),x(!1)},[f]),P=k.useCallback(()=>{typeof d=="function"&&d(),x(!0)},[d]);return k.createElement(AJ,{showLabels:S,rects:r},k.createElement(dd,{animationId:g,begin:l,duration:u,isActive:a,easing:c,onAnimationEnd:w,onAnimationStart:P,key:g},C=>{var O=C===1?r:r==null?void 0:r.map((A,I)=>{var E=p&&p[I];if(E)return un(un({},A),{},{x:ut(E.x,A.x,C),y:ut(E.y,A.y,C),width:ut(E.width,A.width,C),height:ut(E.height,A.height,C)});if(i==="horizontal"){var L=ut(0,A.height,C),F=ut(A.stackedBarStart,A.y,C);return un(un({},A),{},{y:F,height:L})}var H=ut(0,A.width,C),R=ut(A.stackedBarStart,A.x,C);return un(un({},A),{},{width:H,x:R})});return C>0&&(n.current=O??null),O==null?null:k.createElement(hn,null,k.createElement(TJ,{props:t,data:O}))}),k.createElement(qI,{label:t.label}),t.children)}function DJ(e){var t=k.useRef(null);return k.createElement(MJ,{previousRectanglesRef:t,props:e})}var kT=0,LJ=(e,t)=>{var n=Array.isArray(e.value)?e.value[1]:e.value;return{x:e.x,y:e.y,value:n,errorVal:St(e,t)}};class RJ extends k.PureComponent{render(){var{hide:t,data:n,dataKey:r,className:i,xAxisId:a,yAxisId:l,needClip:u,background:c,id:f}=this.props;if(t||n==null)return null;var d=Ge("recharts-bar",i),p=f;return k.createElement(hn,{className:d,id:f},u&&k.createElement("defs",null,k.createElement(cT,{clipPathId:p,xAxisId:a,yAxisId:l})),k.createElement(hn,{className:"recharts-bar-rectangles",clipPath:u?"url(#clipPath-".concat(p,")"):void 0},k.createElement(NJ,{data:n,dataKey:r,background:c,allOtherBarProps:this.props}),k.createElement(DJ,this.props)))}}var zJ={activeBar:!1,animationBegin:0,animationDuration:400,animationEasing:"ease",background:!1,hide:!1,isAnimationActive:"auto",label:!1,legendType:"rect",minPointSize:kT,xAxisId:0,yAxisId:0,zIndex:Rt.bar};function $J(e){var{xAxisId:t,yAxisId:n,hide:r,legendType:i,minPointSize:a,activeBar:l,animationBegin:u,animationDuration:c,animationEasing:f,isAnimationActive:d}=e,{needClip:p}=Fx(t,n),g=Ba(),y=on(),x=BY(e.children,AI),S=Pe(C=>dJ(C,e.id,y,x));if(g!=="vertical"&&g!=="horizontal")return null;var w,P=S==null?void 0:S[0];return P==null||P.height==null||P.width==null?w=0:w=g==="vertical"?P.height/2:P.width/2,k.createElement(tZ,{xAxisId:t,yAxisId:n,data:S,dataPointFormatter:LJ,errorBarOffset:w},k.createElement(RJ,ci({},e,{layout:g,needClip:p,data:S,xAxisId:t,yAxisId:n,hide:r,legendType:i,minPointSize:a,activeBar:l,animationBegin:u,animationDuration:c,animationEasing:f,isAnimationActive:d})))}function FJ(e){var{layout:t,barSettings:{dataKey:n,minPointSize:r},pos:i,bandSize:a,xAxis:l,yAxis:u,xAxisTicks:c,yAxisTicks:f,stackedData:d,displayedData:p,offset:g,cells:y,parentViewBox:x,dataStartIndex:S}=e,w=t==="horizontal"?u:l,P=d?w.scale.domain():null,C=n8({numericAxis:w}),O=w.scale.map(C);return p.map((A,I)=>{var E,L,F,H,R,W;if(d){var M=d[I+S];if(M==null)return null;E=QU(M,P)}else E=St(A,n),Array.isArray(E)||(E=[C,E]);var Z=YZ(r,kT)(E[1],I);if(t==="horizontal"){var Y,Q=u.scale.map(E[0]),he=u.scale.map(E[1]);if(Q==null||he==null)return null;L=dS({axis:l,ticks:c,bandSize:a,offset:i.offset,entry:A,index:I}),F=(Y=he??Q)!==null&&Y!==void 0?Y:void 0,H=i.size;var de=Q-he;if(R=gr(de)?0:de,W={x:L,y:g.top,width:H,height:g.height},Math.abs(Z)>0&&Math.abs(R)0&&Math.abs(H)k.createElement(k.Fragment,null,k.createElement(JI,{legendPayload:CJ(t)}),k.createElement(OJ,{dataKey:t.dataKey,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,tooltipType:t.tooltipType,id:i}),k.createElement(nT,{type:"bar",id:i,data:void 0,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,dataKey:t.dataKey,stackId:n,hide:t.hide,barSize:t.barSize,minPointSize:t.minPointSize,maxBarSize:t.maxBarSize,isPanorama:r}),k.createElement(rr,{zIndex:t.zIndex},k.createElement($J,ci({},t,{id:i})))))}var zv=k.memo(BJ,Md);zv.displayName="Bar";var UJ=["domain","range"],WJ=["domain","range"];function CE(e,t){if(e==null)return{};var n,r,i=qJ(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{if(l!=null)return AE(AE({},a),{},{type:l})},[a,l]);return k.useLayoutEffect(()=>{u!=null&&(n.current===null?t(AX(u)):n.current!==u&&t(_X({prev:n.current,next:u})),n.current=u)},[u,t]),k.useLayoutEffect(()=>()=>{n.current&&(t(IX(n.current)),n.current=null)},[t]),null}var JJ=e=>{var{xAxisId:t,className:n}=e,r=Pe(Iy),i=on(),a="xAxis",l=Pe(P=>X_(P,a,t,i)),u=Pe(P=>V_(P,t)),c=Pe(P=>sK(P,t)),f=Pe(P=>m_(P,t));if(u==null||c==null||f==null)return null;var{dangerouslySetInnerHTML:d,ticks:p,scale:g}=e,y=Fv(e,VJ),{id:x,scale:S}=f,w=Fv(f,KJ);return k.createElement(zx,$v({},y,w,{x:c.x,y:c.y,width:u.width,height:u.height,className:Ge("recharts-".concat(a," ").concat(a),n),viewBox:r,ticks:l,axisType:a}))},eee={allowDataOverflow:Mt.allowDataOverflow,allowDecimals:Mt.allowDecimals,allowDuplicatedCategory:Mt.allowDuplicatedCategory,angle:Mt.angle,axisLine:ri.axisLine,height:Mt.height,hide:!1,includeHidden:Mt.includeHidden,interval:Mt.interval,label:!1,minTickGap:Mt.minTickGap,mirror:Mt.mirror,orientation:Mt.orientation,padding:Mt.padding,reversed:Mt.reversed,scale:Mt.scale,tick:Mt.tick,tickCount:Mt.tickCount,tickLine:ri.tickLine,tickSize:ri.tickSize,type:Mt.type,xAxisId:0},tee=e=>{var t=mn(e,eee);return k.createElement(k.Fragment,null,k.createElement(ZJ,{allowDataOverflow:t.allowDataOverflow,allowDecimals:t.allowDecimals,allowDuplicatedCategory:t.allowDuplicatedCategory,angle:t.angle,dataKey:t.dataKey,domain:t.domain,height:t.height,hide:t.hide,id:t.xAxisId,includeHidden:t.includeHidden,interval:t.interval,minTickGap:t.minTickGap,mirror:t.mirror,name:t.name,orientation:t.orientation,padding:t.padding,reversed:t.reversed,scale:t.scale,tick:t.tick,tickCount:t.tickCount,tickFormatter:t.tickFormatter,ticks:t.ticks,type:t.type,unit:t.unit}),k.createElement(JJ,t))},Bx=k.memo(tee,ST);Bx.displayName="XAxis";var nee=["type"],ree=["dangerouslySetInnerHTML","ticks","scale"],iee=["id","scale"];function Bv(){return Bv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{if(l!=null)return IE(IE({},a),{},{type:l})},[l,a]);return k.useLayoutEffect(()=>{u!=null&&(n.current===null?t(TX(u)):n.current!==u&&t(MX({prev:n.current,next:u})),n.current=u)},[u,t]),k.useLayoutEffect(()=>()=>{n.current&&(t(DX(n.current)),n.current=null)},[t]),null}function cee(e){var{yAxisId:t,className:n,width:r,label:i}=e,a=k.useRef(null),l=k.useRef(null),u=Pe(Iy),c=on(),f=yt(),d="yAxis",p=Pe(E=>K_(E,t)),g=Pe(E=>cK(E,t)),y=Pe(E=>X_(E,d,t,c)),x=Pe(E=>g_(E,t));if(k.useLayoutEffect(()=>{if(!(r!=="auto"||!p||Dx(i)||k.isValidElement(i)||x==null)){var E=a.current;if(E){var L=E.getCalculatedWidth();Math.round(p.width)!==Math.round(L)&&f(LX({id:t,width:L}))}}},[y,p,f,i,t,r,x]),p==null||g==null||x==null)return null;var{dangerouslySetInnerHTML:S,ticks:w,scale:P}=e,C=Uv(e,ree),{id:O,scale:A}=x,I=Uv(x,iee);return k.createElement(zx,Bv({},C,I,{ref:a,labelRef:l,x:g.x,y:g.y,tickTextProps:r==="auto"?{width:void 0}:{width:r},width:p.width,height:p.height,className:Ge("recharts-".concat(d," ").concat(d),n),viewBox:u,ticks:y,axisType:d}))}var fee={allowDataOverflow:Dt.allowDataOverflow,allowDecimals:Dt.allowDecimals,allowDuplicatedCategory:Dt.allowDuplicatedCategory,angle:Dt.angle,axisLine:ri.axisLine,hide:!1,includeHidden:Dt.includeHidden,interval:Dt.interval,label:!1,minTickGap:Dt.minTickGap,mirror:Dt.mirror,orientation:Dt.orientation,padding:Dt.padding,reversed:Dt.reversed,scale:Dt.scale,tick:Dt.tick,tickCount:Dt.tickCount,tickLine:ri.tickLine,tickSize:ri.tickSize,type:Dt.type,width:Dt.width,yAxisId:0},dee=e=>{var t=mn(e,fee);return k.createElement(k.Fragment,null,k.createElement(uee,{interval:t.interval,id:t.yAxisId,scale:t.scale,type:t.type,domain:t.domain,allowDataOverflow:t.allowDataOverflow,dataKey:t.dataKey,allowDuplicatedCategory:t.allowDuplicatedCategory,allowDecimals:t.allowDecimals,tickCount:t.tickCount,padding:t.padding,includeHidden:t.includeHidden,reversed:t.reversed,ticks:t.ticks,width:t.width,orientation:t.orientation,mirror:t.mirror,hide:t.hide,unit:t.unit,name:t.name,angle:t.angle,minTickGap:t.minTickGap,tick:t.tick,tickFormatter:t.tickFormatter}),k.createElement(cee,t))},Es=k.memo(dee,ST);Es.displayName="YAxis";var hee=(e,t)=>t,Ux=G([hee,He,h_,Bt,hI,yi,j7,zt],_7),Wx=e=>{var t=e.currentTarget.getBoundingClientRect(),n=t.width/e.currentTarget.offsetWidth,r=t.height/e.currentTarget.offsetHeight;return{chartX:Math.round((e.clientX-t.left)/n),chartY:Math.round((e.clientY-t.top)/r)}},jT=er("mouseClick"),PT=Ts();PT.startListening({actionCreator:jT,effect:(e,t)=>{var n=e.payload,r=Ux(t.getState(),Wx(n));(r==null?void 0:r.activeIndex)!=null&&t.dispatch(jK({activeIndex:r.activeIndex,activeDataKey:void 0,activeCoordinate:r.activeCoordinate}))}});var Wv=er("mouseMove"),ET=Ts(),Ec=null;ET.startListening({actionCreator:Wv,effect:(e,t)=>{var n=e.payload;Ec!==null&&cancelAnimationFrame(Ec);var r=Wx(n);Ec=requestAnimationFrame(()=>{var i=t.getState(),a=jx(i,i.tooltip.settings.shared);if(a==="axis"){var l=Ux(i,r);(l==null?void 0:l.activeIndex)!=null?t.dispatch(iI({activeIndex:l.activeIndex,activeDataKey:void 0,activeCoordinate:l.activeCoordinate})):t.dispatch(rI())}Ec=null})}});function pee(e,t){return t instanceof HTMLElement?"HTMLElement <".concat(t.tagName,' class="').concat(t.className,'">'):t===window?"global.window":e==="children"&&typeof t=="object"&&t!==null?"<>":t}var TE={accessibilityLayer:!0,barCategoryGap:"10%",barGap:4,barSize:void 0,className:void 0,maxBarSize:void 0,stackOffset:"none",syncId:void 0,syncMethod:"index",baseValue:void 0,reverseStackOrder:!1},CT=On({name:"rootProps",initialState:TE,reducers:{updateOptions:(e,t)=>{var n;e.accessibilityLayer=t.payload.accessibilityLayer,e.barCategoryGap=t.payload.barCategoryGap,e.barGap=(n=t.payload.barGap)!==null&&n!==void 0?n:TE.barGap,e.barSize=t.payload.barSize,e.maxBarSize=t.payload.maxBarSize,e.stackOffset=t.payload.stackOffset,e.syncId=t.payload.syncId,e.syncMethod=t.payload.syncMethod,e.className=t.payload.className,e.baseValue=t.payload.baseValue,e.reverseStackOrder=t.payload.reverseStackOrder}}}),mee=CT.reducer,{updateOptions:gee}=CT.actions,vee=null,yee={updatePolarOptions:(e,t)=>t.payload},OT=On({name:"polarOptions",initialState:vee,reducers:yee}),{updatePolarOptions:tne}=OT.actions,xee=OT.reducer,NT=er("keyDown"),AT=er("focus"),qx=Ts();qx.startListening({actionCreator:NT,effect:(e,t)=>{var n=t.getState(),r=n.rootProps.accessibilityLayer!==!1;if(r){var{keyboardInteraction:i}=n.tooltip,a=e.payload;if(!(a!=="ArrowRight"&&a!=="ArrowLeft"&&a!=="Enter")){var l=Px(i,Qo(n),qs(n),Vs(n)),u=l==null?-1:Number(l);if(!(!Number.isFinite(u)||u<0)){var c=yi(n);if(a==="Enter"){var f=Cf(n,"axis","hover",String(i.index));t.dispatch(Av({active:!i.active,activeIndex:i.index,activeCoordinate:f}));return}var d=pK(n),p=d==="left-to-right"?1:-1,g=a==="ArrowRight"?1:-1,y=u+g*p;if(!(c==null||y>=c.length||y<0)){var x=Cf(n,"axis","hover",String(y));t.dispatch(Av({active:!0,activeIndex:y.toString(),activeCoordinate:x}))}}}}}});qx.startListening({actionCreator:AT,effect:(e,t)=>{var n=t.getState(),r=n.rootProps.accessibilityLayer!==!1;if(r){var{keyboardInteraction:i}=n.tooltip;if(!i.active&&i.index==null){var a="0",l=Cf(n,"axis","hover",String(a));t.dispatch(Av({active:!0,activeIndex:a,activeCoordinate:l}))}}}});var Yn=er("externalEvent"),_T=Ts(),Ng=new Map;_T.startListening({actionCreator:Yn,effect:(e,t)=>{var{handler:n,reactEvent:r}=e.payload;if(n!=null){r.persist();var i=r.type,a=Ng.get(i);a!==void 0&&cancelAnimationFrame(a);var l=requestAnimationFrame(()=>{try{var u=t.getState(),c={activeCoordinate:u7(u),activeDataKey:vI(u),activeIndex:La(u),activeLabel:gI(u),activeTooltipIndex:La(u),isTooltipActive:c7(u)};n(c,r)}finally{Ng.delete(i)}});Ng.set(i,l)}}});var bee=G([Yo],e=>e.tooltipItemPayloads),wee=G([bee,(e,t)=>t,(e,t,n)=>n],(e,t,n)=>{if(t!=null){var r=e.find(a=>a.settings.graphicalItemId===n);if(r!=null){var{getPosition:i}=r;if(i!=null)return i(t)}}}),IT=er("touchMove"),TT=Ts();TT.startListening({actionCreator:IT,effect:(e,t)=>{var n=e.payload;if(!(n.touches==null||n.touches.length===0)){var r=t.getState(),i=jx(r,r.tooltip.settings.shared);if(i==="axis"){var a=n.touches[0];if(a==null)return;var l=Ux(r,Wx({clientX:a.clientX,clientY:a.clientY,currentTarget:n.currentTarget}));(l==null?void 0:l.activeIndex)!=null&&t.dispatch(iI({activeIndex:l.activeIndex,activeDataKey:void 0,activeCoordinate:l.activeCoordinate}))}else if(i==="item"){var u,c=n.touches[0];if(document.elementFromPoint==null||c==null)return;var f=document.elementFromPoint(c.clientX,c.clientY);if(!f||!f.getAttribute)return;var d=f.getAttribute(u8),p=(u=f.getAttribute(c8))!==null&&u!==void 0?u:void 0,g=Xo(r).find(S=>S.id===p);if(d==null||g==null||p==null)return;var{dataKey:y}=g,x=wee(r,d,p);t.dispatch(nI({activeDataKey:y,activeIndex:d,activeCoordinate:x,activeGraphicalItemId:p}))}}}});var kee=sN({brush:tQ,cartesianAxis:RX,chartData:sG,errorBars:YQ,graphicalItems:mX,layout:VU,legend:tW,options:rG,polarAxis:LY,polarOptions:xee,referenceElements:aQ,rootProps:mee,tooltip:PK,zIndex:H7}),See=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"Chart";return vU({reducer:kee,preloadedState:t,middleware:r=>{var i;return r({serializableCheck:!1,immutableCheck:!["commonjs","es6","production"].includes((i="es6")!==null&&i!==void 0?i:"")}).concat([PT.middleware,ET.middleware,qx.middleware,_T.middleware,TT.middleware])},enhancers:r=>{var i=r;return typeof r=="function"&&(i=r()),i.concat(SN({type:"raf"}))},devTools:{serialize:{replacer:pee},name:"recharts-".concat(n)}})};function jee(e){var{preloadedState:t,children:n,reduxStoreName:r}=e,i=on(),a=k.useRef(null);if(i)return n;a.current==null&&(a.current=See(t,r));var l=Py;return k.createElement(yZ,{context:l,store:a.current},n)}function Pee(e){var{layout:t,margin:n}=e,r=yt(),i=on();return k.useEffect(()=>{i||(r(WU(t)),r(UU(n)))},[r,i,t,n]),null}var Eee=k.memo(Pee,Md);function Cee(e){var t=yt();return k.useEffect(()=>{t(gee(e))},[t,e]),null}function ME(e){var{zIndex:t,isPanorama:n}=e,r=k.useRef(null),i=yt();return k.useLayoutEffect(()=>(r.current&&i(W7({zIndex:t,element:r.current,isPanorama:n})),()=>{i(q7({zIndex:t,isPanorama:n}))}),[i,t,n]),k.createElement("g",{tabIndex:-1,ref:r})}function DE(e){var{children:t,isPanorama:n}=e,r=Pe(T7);if(!r||r.length===0)return t;var i=r.filter(l=>l<0),a=r.filter(l=>l>0);return k.createElement(k.Fragment,null,i.map(l=>k.createElement(ME,{key:l,zIndex:l,isPanorama:n})),t,a.map(l=>k.createElement(ME,{key:l,zIndex:l,isPanorama:n})))}var Oee=["children"];function Nee(e,t){if(e==null)return{};var n,r,i=Aee(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{var n=VN(),r=KN(),i=nA();if(!Lr(n)||!Lr(r))return null;var{children:a,otherAttributes:l,title:u,desc:c}=e,f,d;return l!=null&&(typeof l.tabIndex=="number"?f=l.tabIndex:f=i?0:void 0,typeof l.role=="string"?d=l.role:d=i?"application":void 0),k.createElement(PO,Lf({},l,{title:u,desc:c,role:d,tabIndex:f,width:n,height:r,style:_ee,ref:t}),a)}),Tee=e=>{var{children:t}=e,n=Pe(ld);if(!n)return null;var{width:r,height:i,y:a,x:l}=n;return k.createElement(PO,{width:r,height:i,x:l,y:a},t)},LE=k.forwardRef((e,t)=>{var{children:n}=e,r=Nee(e,Oee),i=on();return i?k.createElement(Tee,null,k.createElement(DE,{isPanorama:!0},n)):k.createElement(Iee,Lf({ref:t},r),k.createElement(DE,{isPanorama:!1},n))});function Mee(){var e=yt(),[t,n]=k.useState(null),r=Pe(s8);return k.useEffect(()=>{if(t!=null){var i=t.getBoundingClientRect(),a=i.width/t.offsetWidth;Me(a)&&a!==r&&e(HU(a))}},[t,e,r]),n}function RE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Dee(e){for(var t=1;t(vG(),null);function Rf(e){if(typeof e=="number")return e;if(typeof e=="string"){var t=parseFloat(e);if(!Number.isNaN(t))return t}return 0}var Fee=k.forwardRef((e,t)=>{var n,r,i=k.useRef(null),[a,l]=k.useState({containerWidth:Rf((n=e.style)===null||n===void 0?void 0:n.width),containerHeight:Rf((r=e.style)===null||r===void 0?void 0:r.height)}),u=k.useCallback((f,d)=>{l(p=>{var g=Math.round(f),y=Math.round(d);return p.containerWidth===g&&p.containerHeight===y?p:{containerWidth:g,containerHeight:y}})},[]),c=k.useCallback(f=>{if(typeof t=="function"&&t(f),f!=null&&typeof ResizeObserver<"u"){var{width:d,height:p}=f.getBoundingClientRect();u(d,p);var g=x=>{var S=x[0];if(S!=null){var{width:w,height:P}=S.contentRect;u(w,P)}},y=new ResizeObserver(g);y.observe(f),i.current=y}},[t,u]);return k.useEffect(()=>()=>{var f=i.current;f!=null&&f.disconnect()},[u]),k.createElement(k.Fragment,null,k.createElement(Ds,{width:a.containerWidth,height:a.containerHeight}),k.createElement("div",Yi({ref:c},e)))}),Bee=k.forwardRef((e,t)=>{var{width:n,height:r}=e,[i,a]=k.useState({containerWidth:Rf(n),containerHeight:Rf(r)}),l=k.useCallback((c,f)=>{a(d=>{var p=Math.round(c),g=Math.round(f);return d.containerWidth===p&&d.containerHeight===g?d:{containerWidth:p,containerHeight:g}})},[]),u=k.useCallback(c=>{if(typeof t=="function"&&t(c),c!=null){var{width:f,height:d}=c.getBoundingClientRect();l(f,d)}},[t,l]);return k.createElement(k.Fragment,null,k.createElement(Ds,{width:i.containerWidth,height:i.containerHeight}),k.createElement("div",Yi({ref:u},e)))}),Uee=k.forwardRef((e,t)=>{var{width:n,height:r}=e;return k.createElement(k.Fragment,null,k.createElement(Ds,{width:n,height:r}),k.createElement("div",Yi({ref:t},e)))}),Wee=k.forwardRef((e,t)=>{var{width:n,height:r}=e;return typeof n=="string"||typeof r=="string"?k.createElement(Bee,Yi({},e,{ref:t})):typeof n=="number"&&typeof r=="number"?k.createElement(Uee,Yi({},e,{width:n,height:r,ref:t})):k.createElement(k.Fragment,null,k.createElement(Ds,{width:n,height:r}),k.createElement("div",Yi({ref:t},e)))});function qee(e){return e?Fee:Wee}var Hee=k.forwardRef((e,t)=>{var{children:n,className:r,height:i,onClick:a,onContextMenu:l,onDoubleClick:u,onMouseDown:c,onMouseEnter:f,onMouseLeave:d,onMouseMove:p,onMouseUp:g,onTouchEnd:y,onTouchMove:x,onTouchStart:S,style:w,width:P,responsive:C,dispatchTouchEvents:O=!0}=e,A=k.useRef(null),I=yt(),[E,L]=k.useState(null),[F,H]=k.useState(null),R=Mee(),W=Ty(),M=(W==null?void 0:W.width)>0?W.width:P,Z=(W==null?void 0:W.height)>0?W.height:i,Y=k.useCallback(X=>{R(X),typeof t=="function"&&t(X),L(X),H(X),X!=null&&(A.current=X)},[R,t,L,H]),Q=k.useCallback(X=>{I(jT(X)),I(Yn({handler:a,reactEvent:X}))},[I,a]),he=k.useCallback(X=>{I(Wv(X)),I(Yn({handler:f,reactEvent:X}))},[I,f]),de=k.useCallback(X=>{I(rI()),I(Yn({handler:d,reactEvent:X}))},[I,d]),J=k.useCallback(X=>{I(Wv(X)),I(Yn({handler:p,reactEvent:X}))},[I,p]),ae=k.useCallback(()=>{I(AT())},[I]),T=k.useCallback(X=>{I(NT(X.key))},[I]),$=k.useCallback(X=>{I(Yn({handler:l,reactEvent:X}))},[I,l]),U=k.useCallback(X=>{I(Yn({handler:u,reactEvent:X}))},[I,u]),_=k.useCallback(X=>{I(Yn({handler:c,reactEvent:X}))},[I,c]),te=k.useCallback(X=>{I(Yn({handler:g,reactEvent:X}))},[I,g]),fe=k.useCallback(X=>{I(Yn({handler:S,reactEvent:X}))},[I,S]),ce=k.useCallback(X=>{O&&I(IT(X)),I(Yn({handler:x,reactEvent:X}))},[I,O,x]),Se=k.useCallback(X=>{I(Yn({handler:y,reactEvent:X}))},[I,y]),je=qee(C);return k.createElement(PI.Provider,{value:E},k.createElement(QB.Provider,{value:F},k.createElement(je,{width:M??(w==null?void 0:w.width),height:Z??(w==null?void 0:w.height),className:Ge("recharts-wrapper",r),style:Dee({position:"relative",cursor:"default",width:M,height:Z},w),onClick:Q,onContextMenu:$,onDoubleClick:U,onFocus:ae,onKeyDown:T,onMouseDown:_,onMouseEnter:he,onMouseLeave:de,onMouseMove:J,onMouseUp:te,onTouchEnd:Se,onTouchMove:ce,onTouchStart:fe,ref:Y},k.createElement($ee,null),n)))}),Vee=["width","height","responsive","children","className","style","compact","title","desc"];function Kee(e,t){if(e==null)return{};var n,r,i=Gee(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{var{width:n,height:r,responsive:i,children:a,className:l,style:u,compact:c,title:f,desc:d}=e,p=Kee(e,Vee),g=Jn(p);return c?k.createElement(k.Fragment,null,k.createElement(Ds,{width:n,height:r}),k.createElement(LE,{otherAttributes:g,title:f,desc:d},a)):k.createElement(Hee,{className:l,style:u,width:n,height:r,responsive:i??!1,onClick:e.onClick,onMouseLeave:e.onMouseLeave,onMouseEnter:e.onMouseEnter,onMouseMove:e.onMouseMove,onMouseDown:e.onMouseDown,onMouseUp:e.onMouseUp,onContextMenu:e.onContextMenu,onDoubleClick:e.onDoubleClick,onTouchStart:e.onTouchStart,onTouchMove:e.onTouchMove,onTouchEnd:e.onTouchEnd},k.createElement(LE,{otherAttributes:g,title:f,desc:d,ref:t},k.createElement(lQ,null,a)))});function qv(){return qv=Object.assign?Object.assign.bind():function(e){for(var t=1;tk.createElement(MT,{chartName:"BarChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:Zee,tooltipPayloadSearcher:EI,categoricalChartProps:e,ref:t})),ete=["axis"],tte=k.forwardRef((e,t)=>k.createElement(MT,{chartName:"AreaChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:ete,tooltipPayloadSearcher:EI,categoricalChartProps:e,ref:t}));function DT({active:e,payload:t,label:n,labelFormatter:r,valueFormatter:i}){if(!e||!t||t.length===0)return null;const a=r?r(n||""):n;return m.jsxs("div",{className:"bg-base-200 border border-base-300 rounded-lg px-3 py-2 shadow-lg text-sm",children:[a&&m.jsx("p",{className:"text-base-content font-medium mb-1",children:a}),t.map((l,u)=>{const[c,f]=i?i(l.value,l.name):[l.value,l.name];return m.jsxs("p",{className:"text-base-content/80",children:[m.jsxs("span",{className:"font-medium",children:[f,":"]})," ",c]},u)})]})}function nte({daily:e}){if(!e||e.length===0)return m.jsx("div",{className:"flex items-center justify-center h-48 text-base-content/50",children:"No data available"});const t=e.map(n=>({...n,displayDate:n.date.includes("-")?`${n.date.slice(5,7)}/${n.date.slice(8,10)}`:`${n.date.slice(4,6)}/${n.date.slice(6,8)}`}));return m.jsx("div",{className:"h-64 w-full",children:m.jsx(qN,{width:"100%",height:"100%",debounce:50,children:m.jsxs(tte,{data:t,margin:{top:5,right:20,left:10,bottom:5},children:[m.jsxs("defs",{children:[m.jsxs("linearGradient",{id:"dailyCostGradient",x1:"0",y1:"0",x2:"0",y2:"1",children:[m.jsx("stop",{offset:"5%",stopColor:"#3b82f6",stopOpacity:.6}),m.jsx("stop",{offset:"95%",stopColor:"#3b82f6",stopOpacity:0})]}),m.jsxs("linearGradient",{id:"dailyTokenGradient",x1:"0",y1:"0",x2:"0",y2:"1",children:[m.jsx("stop",{offset:"5%",stopColor:"#8b5cf6",stopOpacity:.3}),m.jsx("stop",{offset:"95%",stopColor:"#8b5cf6",stopOpacity:0})]})]}),m.jsx($x,{strokeDasharray:"3 3",className:"stroke-base-content/10"}),m.jsx(Bx,{dataKey:"displayDate",tick:{fontSize:12},className:"text-base-content/60",tickLine:!1,axisLine:!1}),m.jsx(Es,{yAxisId:"cost",tick:{fontSize:12},className:"text-base-content/60",tickLine:!1,axisLine:!1,tickFormatter:n=>`${n.toFixed(0)}$`}),m.jsx(Es,{yAxisId:"tokens",orientation:"right",tick:{fontSize:12},className:"text-base-content/60",tickLine:!1,axisLine:!1,tickFormatter:n=>Io(n)}),m.jsx(NI,{content:m.jsx(DT,{labelFormatter:n=>`Date: ${n}`,valueFormatter:(n,r)=>r==="totalCost"?[`${Number(n).toFixed(2)}$`,"Cost"]:r==="totalTokens"?[Io(Number(n)),"Tokens"]:[n,r]})}),m.jsx(Dv,{yAxisId:"tokens",type:"monotone",dataKey:"totalTokens",stroke:"#8b5cf6",strokeWidth:1.5,fill:"url(#dailyTokenGradient)"}),m.jsx(Dv,{yAxisId:"cost",type:"monotone",dataKey:"totalCost",stroke:"#3b82f6",strokeWidth:2,fill:"url(#dailyCostGradient)"})]})})})}function rte({monthly:e}){return!e||e.length===0?m.jsx("div",{className:"flex items-center justify-center h-48 text-base-content/50",children:"No data available"}):m.jsx("div",{className:"h-64 w-full",children:m.jsx(qN,{width:"100%",height:"100%",debounce:50,children:m.jsxs(Jee,{data:e,margin:{top:5,right:20,left:10,bottom:5},children:[m.jsx($x,{strokeDasharray:"3 3",className:"stroke-base-content/10"}),m.jsx(Bx,{dataKey:"month",tick:{fontSize:12},className:"text-base-content/60",tickLine:!1,axisLine:!1}),m.jsx(Es,{yAxisId:"cost",tick:{fontSize:12},className:"text-base-content/60",tickLine:!1,axisLine:!1,tickFormatter:t=>`${t.toFixed(0)}$`}),m.jsx(Es,{yAxisId:"tokens",orientation:"right",tick:{fontSize:12},className:"text-base-content/60",tickLine:!1,axisLine:!1,tickFormatter:t=>Io(t)}),m.jsx(NI,{content:m.jsx(DT,{labelFormatter:t=>`Month: ${t}`,valueFormatter:(t,n)=>n==="totalCost"?[`${Number(t).toFixed(2)}$`,"Cost"]:n==="totalTokens"?[Io(Number(t)),"Tokens"]:[t,n]})}),m.jsx(zv,{yAxisId:"tokens",dataKey:"totalTokens",fill:"#8b5cf6",opacity:.4,radius:[4,4,0,0]}),m.jsx(zv,{yAxisId:"cost",dataKey:"totalCost",fill:"#6366f1",opacity:.8,radius:[4,4,0,0]})]})})})}function ite(){var d,p,g,y,x;const{settings:e,isLoading:t}=gC(),n=t?Xn:e,r=S=>mC[S]??S,i=r(((d=n.commands)==null?void 0:d["spec-plan"])??Xn.commands["spec-plan"]),a=r(((p=n.commands)==null?void 0:p["spec-implement"])??Xn.commands["spec-implement"]),l=r(((g=n.commands)==null?void 0:g["spec-verify"])??Xn.commands["spec-verify"]),u=r(((y=n.agents)==null?void 0:y["spec-reviewer-quality"])??Xn.agents["spec-reviewer-quality"]),c=r(((x=n.agents)==null?void 0:x["spec-reviewer-compliance"])??Xn.agents["spec-reviewer-compliance"]),f=r(n.model??Xn.model);return m.jsx("div",{className:"card bg-base-200",children:m.jsxs("div",{className:"card-body",children:[m.jsxs("div",{className:"flex items-baseline justify-between mb-2",children:[m.jsx("h2",{className:"text-lg font-bold",children:"Model Routing"}),m.jsx("a",{href:"#/settings",className:"text-xs text-primary hover:underline",children:"Configure in Settings →"})]}),m.jsxs("div",{className:"space-y-6",children:[m.jsxs("div",{children:[m.jsx("h3",{className:"text-xs font-semibold uppercase tracking-wide text-base-content/50 mb-2",children:"/spec Routing Strategy"}),m.jsx("div",{className:"overflow-x-auto",children:m.jsxs("table",{className:"table table-sm",children:[m.jsx("thead",{children:m.jsxs("tr",{children:[m.jsx("th",{children:"/spec Phase"}),m.jsx("th",{children:"Orchestrator"}),m.jsx("th",{children:"Review Agents"})]})}),m.jsxs("tbody",{children:[m.jsxs("tr",{children:[m.jsx("td",{children:"Planning"}),m.jsx("td",{className:"font-mono text-primary",children:i}),m.jsx("td",{className:"font-mono text-secondary",children:c})]}),m.jsxs("tr",{children:[m.jsx("td",{children:"Implementation"}),m.jsx("td",{className:"font-mono text-secondary",children:a}),m.jsx("td",{className:"text-base-content/40",children:"—"})]}),m.jsxs("tr",{children:[m.jsx("td",{children:"Verification"}),m.jsx("td",{className:"font-mono text-primary",children:l}),m.jsxs("td",{className:"font-mono text-secondary",children:[c," + ",m.jsx("span",{className:"text-primary",children:u})]})]})]})]})}),m.jsxs("p",{className:"text-sm text-base-content/70 mt-2",children:["Quick Mode uses ",m.jsx("span",{className:"font-mono",children:f}),". Routing defaults use Opus for planning and verification orchestration, Sonnet for implementation."]})]}),m.jsxs("div",{className:"alert alert-info",children:[m.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",className:"stroke-current shrink-0 w-5 h-5",children:m.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",d:"M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})}),m.jsxs("span",{className:"text-sm",children:["In quick mode, use ",m.jsx("code",{className:"bg-base-300 px-1 rounded",children:"/model"})," in Claude Code to temporarily switch models. Permanent changes can be configured in ",m.jsx("a",{href:"#/settings",className:"underline",children:"Settings"}),"."]})]}),m.jsxs("div",{children:[m.jsx("h3",{className:"text-xs font-semibold uppercase tracking-wide text-base-content/50 mb-2",children:"Subscription Recommendations"}),m.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-4",children:[m.jsx("a",{href:"https://support.claude.com/en/articles/11049741-what-is-the-max-plan",target:"_blank",rel:"noopener noreferrer",className:"card bg-base-100 shadow hover:shadow-lg transition-shadow cursor-pointer",children:m.jsxs("div",{className:"card-body p-4",children:[m.jsx("h4",{className:"card-title text-base",children:"Max 5x"}),m.jsx("p",{className:"text-sm text-base-content/70",children:"Moderate solo usage"})]})}),m.jsx("a",{href:"https://support.claude.com/en/articles/11049741-what-is-the-max-plan",target:"_blank",rel:"noopener noreferrer",className:"card bg-base-100 shadow hover:shadow-lg transition-shadow cursor-pointer",children:m.jsxs("div",{className:"card-body p-4",children:[m.jsx("h4",{className:"card-title text-base",children:"Max 20x"}),m.jsx("p",{className:"text-sm text-base-content/70",children:"Heavy solo usage"})]})}),m.jsx("a",{href:"https://support.claude.com/en/articles/9266767-what-is-the-team-plan",target:"_blank",rel:"noopener noreferrer",className:"card bg-base-100 shadow hover:shadow-lg transition-shadow cursor-pointer",children:m.jsxs("div",{className:"card-body p-4",children:[m.jsx("h4",{className:"card-title text-base",children:"Team Premium"}),m.jsx("p",{className:"text-sm text-base-content/70",children:"6.25x/member + SSO/admin"})]})})]})]})]})]})})}function ate(){const{daily:e,monthly:t,isLoading:n,error:r,available:i,dataExists:a}=$B();if(n)return m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{className:"flex items-baseline gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Usage"}),m.jsxs("span",{className:"text-xs text-base-content/40 flex items-center gap-2",children:[m.jsx("span",{className:"loading loading-spinner loading-xs"}),"Loading usage data..."]})]}),m.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4",children:[...Array(4)].map((c,f)=>m.jsx("div",{className:"stats shadow bg-base-200 animate-pulse",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"h-3 bg-base-300 rounded w-20 mb-2"}),m.jsx("div",{className:"h-8 bg-base-300 rounded w-24 mb-1"}),m.jsx("div",{className:"h-3 bg-base-300 rounded w-16"})]})},f))}),m.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-3 gap-4",children:[m.jsx("div",{className:"card bg-base-200 lg:col-span-2 animate-pulse",children:m.jsxs("div",{className:"card-body",children:[m.jsx("div",{className:"h-4 bg-base-300 rounded w-48 mb-4"}),m.jsx("div",{className:"h-48 bg-base-300 rounded"})]})}),m.jsx("div",{className:"card bg-base-200 animate-pulse",children:m.jsxs("div",{className:"card-body",children:[m.jsx("div",{className:"h-4 bg-base-300 rounded w-40 mb-4"}),m.jsx("div",{className:"h-48 bg-base-300 rounded"})]})})]})]});if(!i)return m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Usage"}),m.jsx("p",{className:"text-base-content/60",children:"Token usage and API cost tracking"})]}),m.jsxs("div",{className:"alert alert-warning",children:[m.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:"stroke-current shrink-0 h-6 w-6",fill:"none",viewBox:"0 0 24 24",children:m.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",d:"M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"})}),m.jsxs("div",{children:[m.jsx("h3",{className:"font-bold",children:"Usage tracking requires ccusage"}),m.jsxs("div",{className:"text-xs",children:["Install with: ",m.jsx("code",{className:"bg-base-300 px-1 rounded",children:"npm install -g ccusage@latest"})]})]})]})]});if(r)return m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Usage"}),m.jsx("p",{className:"text-base-content/60",children:"Token usage and API cost tracking"})]}),m.jsx("div",{className:"alert alert-error",children:m.jsxs("span",{children:["Failed to load usage data: ",r]})})]});if(!a)return m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Usage"}),m.jsx("p",{className:"text-base-content/60",children:"Token usage and API cost tracking"})]}),m.jsxs("div",{className:"alert alert-info",children:[m.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",className:"stroke-current shrink-0 w-6 h-6",children:m.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",d:"M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})}),m.jsx("span",{children:"No usage data yet. Statistics will appear here after you use Claude Code."})]})]});const l=e.slice(-14),u=t.length<=2;return m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{className:"flex items-baseline gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Usage"}),m.jsx("span",{className:"text-xs text-base-content/40",children:"All projects"})]}),m.jsx(FB,{daily:e}),m.jsxs("div",{className:u?"grid grid-cols-1 lg:grid-cols-3 gap-4":"space-y-4",children:[m.jsx("div",{className:`card bg-base-200 ${u?"lg:col-span-2":""}`,children:m.jsxs("div",{className:"card-body",children:[m.jsx("h2",{className:"card-title text-sm",children:"Daily Cost & Tokens (Last 14 Days)"}),m.jsx(nte,{daily:l})]})}),m.jsx("div",{className:"card bg-base-200",children:m.jsxs("div",{className:"card-body",children:[m.jsx("h2",{className:"card-title text-sm",children:"Monthly Cost & Tokens"}),m.jsx(rte,{monthly:t})]})})]}),m.jsx(ite,{})]})}const ote=2e3,lte=30;function zE(e){if(!e)return NaN;const t=e.replace(/^v/i,"");return parseInt(t,10)}function $E(e,t){const n=new Map;for(const r of t)n.set(r.name,r);return e.map(r=>{const i=n.get(r.name),a=(i==null?void 0:i.version)??null,l=zE(r.latestVersion),u=zE(a),c=i!=null&&!isNaN(l)&&!isNaN(u)&&u{try{const A=await fetch("/api/vault/status");if(!A.ok)throw new Error(`Status fetch failed: ${A.status}`);const I=await A.json();if(!w.current)return;t(I),r($E(I.catalog,I.assets)),u(null)}catch(A){if(!w.current)return;u(A.message)}finally{w.current&&a(!1)}},[]),C=k.useCallback(async A=>{if(!(c.current.has(A)||f.current.has(A))){f.current.add(A),d.current.delete(A),p(I=>I+1);try{const I=await fetch(`/api/vault/detail/${encodeURIComponent(A)}`);if(!I.ok)throw new Error(`Detail fetch failed: ${I.status}`);const E=await I.json();w.current&&c.current.set(A,E)}catch(I){w.current&&(d.current.set(A,I.message),console.error("Failed to fetch vault detail:",A,I))}finally{f.current.delete(A),w.current&&p(I=>I+1)}}},[]),O=k.useCallback(async()=>{y(!0),S(null);try{const A=await fetch("/api/vault/install",{method:"POST"});if(!A.ok){const E=await A.json().catch(()=>({error:"Install failed"}));throw new Error(E.error||"Install failed")}let I=0;for(;IsetTimeout(F,ote)),!w.current)return;I++;const E=await fetch("/api/vault/status");if(!E.ok)continue;const L=await E.json();if(!L.isInstalling){c.current.clear(),d.current.clear(),w.current&&(t(L),r($E(L.catalog,L.assets)),y(!1));return}}w.current&&(S("Install taking longer than expected"),y(!1),await P())}catch(A){w.current&&(S(A.message),y(!1))}},[P]);return k.useEffect(()=>(w.current=!0,P(),()=>{w.current=!1}),[P]),{vaultStatus:e,mergedAssets:n,isLoading:i,error:l,fetchDetail:C,detailCache:c.current,loadingDetails:f.current,detailErrors:d.current,installAll:O,isInstalling:g,installError:x,refresh:P}}function ute({assets:e}){const t=e.length,n=e.reduce((u,c)=>(u[c.type]=(u[c.type]||0)+1,u),{}),r=n.skill||0,i=n.rule||0,a=n.command||0,l=t-r-i-a;return m.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4",children:[m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Total Assets"}),m.jsx("div",{className:"stat-value text-primary",children:t}),m.jsx("div",{className:"stat-desc",children:"In vault catalog"})]})}),m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Skills"}),m.jsx("div",{className:"stat-value",children:r}),m.jsx("div",{className:"stat-desc",children:"Reusable workflows"})]})}),m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Rules"}),m.jsx("div",{className:"stat-value",children:i}),m.jsx("div",{className:"stat-desc",children:"Coding standards"})]})}),m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:l>0?"Commands & Other":"Commands"}),m.jsx("div",{className:"stat-value",children:a+l}),m.jsx("div",{className:"stat-desc",children:"Slash commands"})]})})]})}function cte({detail:e,isLoading:t,onRetry:n}){return t?m.jsxs("div",{className:"p-4 bg-base-200 rounded-b-lg flex items-center gap-2",children:[m.jsx("span",{className:"loading loading-spinner loading-sm"}),m.jsx("span",{className:"text-sm text-base-content/60",children:"Loading details..."})]}):e?m.jsxs("div",{className:"p-4 bg-base-200 rounded-b-lg space-y-3",children:[e.metadata.description&&m.jsx("p",{className:"text-sm text-base-content/70",children:e.metadata.description}),e.versions.length>0&&m.jsxs("div",{children:[m.jsx("h4",{className:"text-xs font-semibold text-base-content/50 uppercase mb-2",children:"Version History"}),m.jsxs("table",{className:"table table-xs w-full",children:[m.jsx("thead",{children:m.jsxs("tr",{children:[m.jsx("th",{children:"Version"}),m.jsx("th",{children:"Date"}),m.jsx("th",{children:"Files"})]})}),m.jsx("tbody",{children:e.versions.map(r=>m.jsxs("tr",{children:[m.jsxs("td",{className:"font-mono",children:["v",r.version]}),m.jsx("td",{className:"text-base-content/60",children:r.createdAt??"—"}),m.jsx("td",{children:r.filesCount})]},r.version))})]})]}),e.metadata.authors.length>0&&m.jsxs("div",{className:"text-xs text-base-content/50",children:["Authors: ",e.metadata.authors.join(", ")]})]}):m.jsxs("div",{className:"p-4 bg-base-200 rounded-b-lg text-sm text-base-content/60",children:[m.jsx("span",{children:"Failed to load details."}),n&&m.jsx("button",{className:"btn btn-ghost btn-xs ml-2",onClick:n,children:"Retry"})]})}const fte={skill:"lucide:wand-2",rule:"lucide:scale",command:"lucide:terminal"},dte={skill:"primary",rule:"info",command:"accent"},hte=[{id:"all",label:"All"},{id:"skill",label:"Skills"},{id:"rule",label:"Rules"},{id:"command",label:"Commands"}];function pte({assets:e,searchQuery:t,activeTab:n,onTabChange:r,onSearchChange:i,expandedAsset:a,onAssetClick:l,fetchDetail:u,detailCache:c,loadingDetails:f}){const d=e.filter(p=>{const g=n==="all"||p.type===n,y=!t||p.name.toLowerCase().includes(t.toLowerCase());return g&&y});return m.jsxs("div",{className:"space-y-4",children:[m.jsxs("div",{className:"flex items-center justify-between gap-4 flex-wrap",children:[m.jsx(JM,{tabs:hte,activeTab:n,onTabChange:r}),m.jsx("input",{type:"text",placeholder:"Search assets...",className:"input input-bordered input-sm w-60",value:t,onChange:p=>i(p.target.value)})]}),d.length===0?m.jsx("div",{className:"text-center py-8 text-base-content/50",children:t?`No assets matching "${t}"`:"No assets in this category"}):m.jsx("div",{className:"overflow-x-auto",children:m.jsxs("table",{className:"table w-full",children:[m.jsx("thead",{children:m.jsxs("tr",{children:[m.jsx("th",{children:"Name"}),m.jsx("th",{children:"Type"}),m.jsx("th",{children:"Installed"}),m.jsx("th",{children:"Latest"}),m.jsx("th",{children:"Scope"})]})}),m.jsx("tbody",{children:d.map(p=>m.jsx(mte,{asset:p,isExpanded:a===p.name,onClick:()=>l(p.name),fetchDetail:u,detail:c.get(p.name)??null,isLoadingDetail:f.has(p.name)},p.name))})]})})]})}function mte({asset:e,isExpanded:t,onClick:n,fetchDetail:r,detail:i,isLoadingDetail:a}){const l=fte[e.type]??"lucide:package",u=dte[e.type]??"ghost",c=()=>{n(),!t&&!i&&!a&&r(e.name)};return m.jsxs(m.Fragment,{children:[m.jsxs("tr",{className:"cursor-pointer hover:bg-base-200 transition-colors",onClick:c,children:[m.jsx("td",{children:m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(se,{icon:l,size:16,className:"text-base-content/50"}),m.jsx("span",{className:"font-medium",children:e.name}),e.hasUpdate&&m.jsx(Te,{variant:"warning",size:"sm",children:"update"})]})}),m.jsx("td",{children:m.jsx(Te,{variant:u,size:"sm",children:e.type})}),m.jsx("td",{className:"font-mono text-sm",children:e.installedVersion??"—"}),m.jsxs("td",{className:"font-mono text-sm",children:["v",e.latestVersion]}),m.jsx("td",{className:"text-sm text-base-content/60",children:e.scope??"—"})]}),t&&m.jsx("tr",{children:m.jsx("td",{colSpan:5,className:"p-0",children:m.jsx(cte,{detail:i,isLoading:a,onRetry:()=>r(e.name)})})})]})}function gte(e){try{const t=new URL(e);return(t.host+t.pathname).replace(/\.git$/,"")}catch{return e}}function vte(){const{vaultStatus:e,mergedAssets:t,isLoading:n,error:r,fetchDetail:i,detailCache:a,loadingDetails:l,installAll:u,isInstalling:c,installError:f}=ste(),d=uC(),p=k.useRef(c),[g,y]=k.useState(""),[x,S]=k.useState("all"),[w,P]=k.useState(null),C=k.useCallback(()=>{u()},[u]),O=k.useCallback(A=>{P(I=>I===A?null:A)},[]);return k.useEffect(()=>{p.current&&!c&&(f?f.includes("longer than expected")?d.warning(f,"Install Timeout"):d.error(f,"Install Failed"):d.success("Vault synced successfully","Sync Complete")),p.current=c},[c,f,d]),n?m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{className:"flex items-baseline gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Vault"}),m.jsxs("span",{className:"text-xs text-base-content/40 flex items-center gap-2",children:[m.jsx("span",{className:"loading loading-spinner loading-xs"}),"Loading vault data..."]})]}),m.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4",children:[...Array(4)].map((A,I)=>m.jsx("div",{className:"stats shadow bg-base-200 animate-pulse",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"h-3 bg-base-300 rounded w-20 mb-2"}),m.jsx("div",{className:"h-8 bg-base-300 rounded w-24 mb-1"}),m.jsx("div",{className:"h-3 bg-base-300 rounded w-16"})]})},I))}),m.jsx("div",{className:"card bg-base-200 animate-pulse",children:m.jsxs("div",{className:"card-body",children:[m.jsx("div",{className:"h-4 bg-base-300 rounded w-48 mb-4"}),m.jsx("div",{className:"h-48 bg-base-300 rounded"})]})})]}):r?m.jsxs("div",{className:"space-y-8",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Vault"}),m.jsx("div",{className:"alert alert-error",children:m.jsxs("span",{children:["Failed to load vault data: ",r]})})]}):e!=null&&e.installed?e.configured?m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{className:"flex items-center justify-between flex-wrap gap-4",children:[m.jsxs("div",{className:"flex items-center gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Vault"}),m.jsx(Te,{variant:"success",size:"sm",children:"Connected"}),f&&m.jsx("span",{className:"text-xs text-warning",children:f})]}),m.jsx(yte,{isInstalling:c,onInstall:C})]}),m.jsxs("div",{className:"flex items-center gap-2 text-sm text-base-content/60",children:[e.vaultUrl&&m.jsxs(m.Fragment,{children:[m.jsx(se,{icon:"lucide:git-branch",size:16}),m.jsx("span",{className:"font-mono text-xs",children:gte(e.vaultUrl)})]}),e.version&&m.jsxs(Te,{variant:"ghost",size:"sm",children:["sx v",e.version]}),m.jsxs("span",{children:["Run ",m.jsx("code",{className:"font-mono text-xs bg-base-300 px-1 rounded",children:"/vault"})," in Claude Code to push or pull skills, rules, and commands."]})]}),m.jsx(ute,{assets:t}),t.length===0?m.jsx(Eo,{icon:"lucide:package",title:"No assets in vault",description:"Push skills, rules, or commands to your vault using /vault in Claude Code."}):m.jsx(pte,{assets:t,searchQuery:g,activeTab:x,onTabChange:S,onSearchChange:y,expandedAsset:w,onAssetClick:O,fetchDetail:i,detailCache:a,loadingDetails:l})]}):m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{className:"flex items-center gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Vault"}),e.version&&m.jsxs(Te,{variant:"ghost",size:"sm",children:["sx v",e.version]})]}),m.jsx(Eo,{icon:"lucide:archive",title:"Vault not configured",description:"Run /vault in Claude Code to configure your vault and push or pull skills, rules, and commands."})]}):m.jsxs("div",{className:"space-y-8",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Vault"}),m.jsx(Eo,{icon:"lucide:archive",title:"sx is not installed",description:"Run /vault in Claude Code to push or pull skills, rules, and commands."})]})}function yte({isInstalling:e,onInstall:t}){return m.jsx("button",{className:"btn btn-primary btn-sm",disabled:e,onClick:t,children:e?m.jsxs(m.Fragment,{children:[m.jsx("span",{className:"loading loading-spinner loading-xs"}),"Syncing..."]}):m.jsxs(m.Fragment,{children:[m.jsx(se,{icon:"lucide:refresh-cw",size:14}),"Sync All"]})})}const Ql=[{key:"DEBUG",label:"Debug",icon:"🔍",color:"text-gray-400"},{key:"INFO",label:"Info",icon:"ℹ️",color:"text-info"},{key:"WARN",label:"Warn",icon:"⚠️",color:"text-warning"},{key:"ERROR",label:"Error",icon:"❌",color:"text-error"}],Zl=[{key:"HOOK",label:"Hook",icon:"🪝",color:"text-purple-400"},{key:"WORKER",label:"Worker",icon:"⚙️",color:"text-info"},{key:"SDK",label:"SDK",icon:"📦",color:"text-success"},{key:"PARSER",label:"Parser",icon:"📄",color:"text-sky-400"},{key:"DB",label:"DB",icon:"🗄️",color:"text-orange-400"},{key:"SYSTEM",label:"System",icon:"💻",color:"text-gray-400"},{key:"HTTP",label:"HTTP",icon:"🌐",color:"text-green-400"},{key:"SESSION",label:"Session",icon:"📋",color:"text-pink-400"},{key:"CHROMA",label:"Chroma",icon:"🔮",color:"text-violet-400"}];function xte(e){const t=/^\[([^\]]+)\]\s+\[(\w+)\s*\]\s+\[(\w+)\s*\]\s+(?:\[([^\]]+)\]\s+)?(.*)$/,n=e.match(t);if(!n)return{raw:e};const[,r,i,a,l,u]=n;let c;return u.startsWith("→")?c="dataIn":u.startsWith("←")?c="dataOut":u.startsWith("✓")?c="success":u.startsWith("✗")?c="failure":u.startsWith("⏱")?c="timing":u.includes("[HAPPY-PATH]")&&(c="happyPath"),{raw:e,timestamp:r,level:i==null?void 0:i.trim(),component:a==null?void 0:a.trim(),correlationId:l||void 0,message:u,isSpecial:c}}function bte({isOpen:e,onClose:t}){const[n,r]=k.useState(""),[i,a]=k.useState(!1),[l,u]=k.useState(null),[c,f]=k.useState(!1),[d,p]=k.useState(350),[g,y]=k.useState(!1),x=k.useRef(0),S=k.useRef(0),w=k.useRef(null),P=k.useRef(!0),[C,O]=k.useState(new Set(["DEBUG","INFO","WARN","ERROR"])),[A,I]=k.useState(new Set(["HOOK","WORKER","SDK","PARSER","DB","SYSTEM","HTTP","SESSION","CHROMA"])),[E,L]=k.useState(!1),F=k.useMemo(()=>n?n.split(` +`).map(xte):[],[n]),H=k.useMemo(()=>F.filter(_=>E?_.raw.includes("[ALIGNMENT]"):!_.level||!_.component?!0:C.has(_.level)&&A.has(_.component)),[F,C,A,E]),R=k.useCallback(()=>{if(!w.current)return!0;const{scrollTop:_,scrollHeight:te,clientHeight:fe}=w.current;return te-_-fe<50},[]),W=k.useCallback(()=>{w.current&&P.current&&(w.current.scrollTop=w.current.scrollHeight)},[]),M=k.useCallback(async()=>{P.current=R(),a(!0),u(null);try{const _=await fetch("/api/logs");if(!_.ok)throw new Error(`Failed to fetch logs: ${_.statusText}`);const te=await _.json();r(te.logs||"")}catch(_){u(_ instanceof Error?_.message:"Unknown error")}finally{a(!1)}},[R]);k.useEffect(()=>{W()},[n,W]);const Z=k.useCallback(async()=>{if(confirm("Are you sure you want to clear all logs?")){a(!0),u(null);try{const _=await fetch("/api/logs/clear",{method:"POST"});if(!_.ok)throw new Error(`Failed to clear logs: ${_.statusText}`);r("")}catch(_){u(_ instanceof Error?_.message:"Unknown error")}finally{a(!1)}}},[]),Y=k.useCallback(_=>{_.preventDefault(),y(!0),x.current=_.clientY,S.current=d},[d]);k.useEffect(()=>{if(!g)return;const _=fe=>{const ce=x.current-fe.clientY,Se=Math.min(Math.max(150,S.current+ce),window.innerHeight-100);p(Se)},te=()=>{y(!1)};return document.addEventListener("mousemove",_),document.addEventListener("mouseup",te),()=>{document.removeEventListener("mousemove",_),document.removeEventListener("mouseup",te)}},[g]),k.useEffect(()=>{e&&(P.current=!0,M())},[e,M]),k.useEffect(()=>{if(!e||!c)return;const _=setInterval(M,2e3);return()=>clearInterval(_)},[e,c,M]);const Q=k.useCallback(_=>{O(te=>{const fe=new Set(te);return fe.has(_)?fe.delete(_):fe.add(_),fe})},[]),he=k.useCallback(_=>{I(te=>{const fe=new Set(te);return fe.has(_)?fe.delete(_):fe.add(_),fe})},[]),de=k.useCallback(_=>{O(_?new Set(["DEBUG","INFO","WARN","ERROR"]):new Set)},[]),J=k.useCallback(_=>{I(_?new Set(["HOOK","WORKER","SDK","PARSER","DB","SYSTEM","HTTP","SESSION","CHROMA"]):new Set)},[]);if(!e)return null;const ae=_=>{const te=Ql.find(fe=>fe.key===_);return(te==null?void 0:te.color)||"text-base-content"},T=_=>{const te=Zl.find(fe=>fe.key===_);return(te==null?void 0:te.color)||"text-base-content"},$=_=>_.level==="ERROR"?"bg-error/10":_.level==="WARN"?"bg-warning/5":"",U=(_,te)=>{var Se,je;if(!_.timestamp)return m.jsx("div",{className:"whitespace-pre-wrap break-all text-base-content/60",children:_.raw},te);const fe=Ql.find(X=>X.key===_.level),ce=Zl.find(X=>X.key===_.component);return m.jsxs("div",{className:`whitespace-pre-wrap break-all py-0.5 px-1 rounded ${$(_)}`,children:[m.jsxs("span",{className:"text-base-content/40",children:["[",_.timestamp,"]"]})," ",m.jsxs("span",{className:`font-medium ${ae(_.level)}`,title:_.level,children:["[",(fe==null?void 0:fe.icon)||""," ",(Se=_.level)==null?void 0:Se.padEnd(5),"]"]})," ",m.jsxs("span",{className:`font-medium ${T(_.component)}`,title:_.component,children:["[",(ce==null?void 0:ce.icon)||""," ",(je=_.component)==null?void 0:je.padEnd(7),"]"]})," ",_.correlationId&&m.jsxs(m.Fragment,{children:[m.jsxs("span",{className:"text-base-content/50",children:["[",_.correlationId,"]"]})," "]}),m.jsx("span",{className:_.isSpecial==="success"?"text-success":_.isSpecial==="failure"?"text-error":"text-base-content",children:_.message})]},te)};return m.jsxs("div",{className:"fixed bottom-0 left-0 right-0 bg-base-100 border-t border-base-300 flex flex-col z-50 shadow-2xl",style:{height:`${d}px`},children:[m.jsx("div",{className:"h-1.5 cursor-ns-resize flex items-center justify-center bg-base-200 hover:bg-base-300 transition-colors",onMouseDown:Y,children:m.jsx("div",{className:"w-12 h-1 bg-base-300 rounded-full"})}),m.jsxs("div",{className:"flex justify-between items-center px-3 h-9 bg-base-200 border-b border-base-300",children:[m.jsx("div",{className:"flex gap-1",children:m.jsx("div",{className:"px-3 py-1 text-xs font-medium bg-base-100 text-base-content rounded",children:"Console"})}),m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsxs("label",{className:"flex items-center gap-1.5 text-xs text-base-content/60 cursor-pointer",children:[m.jsx("input",{type:"checkbox",className:"checkbox checkbox-xs",checked:c,onChange:_=>f(_.target.checked)}),"Auto-refresh"]}),m.jsx("button",{className:"btn btn-ghost btn-xs btn-square",onClick:M,disabled:i,title:"Refresh logs",children:m.jsx(se,{icon:"lucide:refresh-cw",size:14,className:i?"animate-spin":""})}),m.jsx("button",{className:"btn btn-ghost btn-xs btn-square",onClick:()=>{P.current=!0,W()},title:"Scroll to bottom",children:m.jsx(se,{icon:"lucide:arrow-down",size:14})}),m.jsx("button",{className:"btn btn-ghost btn-xs btn-square hover:text-error",onClick:Z,disabled:i,title:"Clear logs",children:m.jsx(se,{icon:"lucide:trash-2",size:14})}),m.jsx("button",{className:"btn btn-ghost btn-xs btn-square",onClick:t,title:"Close console",children:m.jsx(se,{icon:"lucide:x",size:14})})]})]}),m.jsxs("div",{className:"flex flex-wrap gap-3 px-3 py-2 bg-base-200/50 border-b border-base-300 text-xs",children:[m.jsxs("div",{className:"flex items-center gap-1.5",children:[m.jsx("span",{className:"font-medium text-base-content/50 uppercase text-[10px]",children:"Quick:"}),m.jsx("button",{className:`badge badge-sm cursor-pointer ${E?"badge-warning":"badge-ghost opacity-50"}`,onClick:()=>L(!E),title:"Show only session alignment logs",children:"🔗 Alignment"})]}),m.jsxs("div",{className:"flex items-center gap-1.5",children:[m.jsx("span",{className:"font-medium text-base-content/50 uppercase text-[10px]",children:"Levels:"}),m.jsxs("div",{className:"flex flex-wrap gap-1",children:[Ql.map(_=>m.jsxs("button",{className:`badge badge-sm cursor-pointer ${C.has(_.key)?"badge-primary":"badge-ghost opacity-40"}`,onClick:()=>Q(_.key),title:_.label,children:[_.icon," ",_.label]},_.key)),m.jsx("button",{className:"badge badge-sm badge-ghost cursor-pointer",onClick:()=>de(C.size===0),title:C.size===Ql.length?"Select none":"Select all",children:C.size===Ql.length?"○":"●"})]})]}),m.jsxs("div",{className:"flex items-center gap-1.5",children:[m.jsx("span",{className:"font-medium text-base-content/50 uppercase text-[10px]",children:"Components:"}),m.jsxs("div",{className:"flex flex-wrap gap-1",children:[Zl.map(_=>m.jsxs("button",{className:`badge badge-sm cursor-pointer ${A.has(_.key)?"badge-secondary":"badge-ghost opacity-40"}`,onClick:()=>he(_.key),title:_.label,children:[_.icon," ",_.label]},_.key)),m.jsx("button",{className:"badge badge-sm badge-ghost cursor-pointer",onClick:()=>J(A.size===0),title:A.size===Zl.length?"Select none":"Select all",children:A.size===Zl.length?"○":"●"})]})]})]}),l&&m.jsxs("div",{className:"px-3 py-2 bg-error/10 text-error text-xs",children:["⚠ ",l]}),m.jsx("div",{className:"flex-1 overflow-y-auto px-3 py-2",ref:w,children:m.jsx("div",{className:"font-mono text-xs leading-relaxed",children:H.length===0?m.jsx("div",{className:"text-base-content/40 italic",children:"No logs available"}):H.map((_,te)=>U(_,te))})})]})}const Hv={COMMAND_PALETTE:{key:"k",modifiers:["ctrl","meta"],description:"Open command palette",action:"openCommandPalette"},SEARCH:{key:"/",modifiers:["ctrl","meta"],description:"Focus search",action:"focusSearch"},ESCAPE:{key:"Escape",description:"Close modal/palette",action:"escape"},TOGGLE_THEME:{key:"t",modifiers:["ctrl","meta"],description:"Toggle theme",action:"toggleTheme"},TOGGLE_SIDEBAR:{key:"b",modifiers:["ctrl","meta"],description:"Toggle sidebar",action:"toggleSidebar"}},wte=[{sequence:["g","d"],description:"Go to Dashboard",action:"navigate:/"},{sequence:["g","m"],description:"Go to Memories",action:"navigate:/memories"},{sequence:["g","v"],description:"Go to Vault",action:"navigate:/vault"}];function FE(e){var r,i,a,l;const t=typeof navigator<"u"&&navigator.platform.includes("Mac"),n=[];return((r=e.modifiers)!=null&&r.includes("ctrl")||(i=e.modifiers)!=null&&i.includes("meta"))&&n.push(t?"⌘":"Ctrl"),(a=e.modifiers)!=null&&a.includes("shift")&&n.push(t?"⇧":"Shift"),(l=e.modifiers)!=null&&l.includes("alt")&&n.push(t?"⌥":"Alt"),n.push(e.key.toUpperCase()),n.join(t?"":"+")}function kte({open:e,onClose:t,onNavigate:n,onToggleTheme:r,onToggleSidebar:i}){const[a,l]=k.useState(""),[u,c]=k.useState(0),f=k.useRef(null),d=k.useRef(null),p=k.useMemo(()=>[{id:"nav-dashboard",label:"Go to Dashboard",shortcut:"G D",category:"navigation",icon:"lucide:layout-dashboard",action:()=>n("/")},{id:"nav-memories",label:"Go to Memories",shortcut:"G M",category:"navigation",icon:"lucide:brain",action:()=>n("/memories")},{id:"nav-usage",label:"Go to Usage",shortcut:"G U",category:"navigation",icon:"lucide:bar-chart-3",action:()=>n("/usage")},{id:"nav-vault",label:"Go to Vault",shortcut:"G V",category:"navigation",icon:"lucide:archive",action:()=>n("/vault")},{id:"action-theme",label:"Toggle Theme",shortcut:FE(Hv.TOGGLE_THEME),category:"action",icon:"lucide:sun-moon",action:r},{id:"action-sidebar",label:"Toggle Sidebar",shortcut:FE(Hv.TOGGLE_SIDEBAR),category:"action",icon:"lucide:panel-left",action:i}],[n,r,i]),g=k.useMemo(()=>{if(!a)return p;const C=a.toLowerCase();return p.filter(O=>O.label.toLowerCase().includes(C)||O.category.toLowerCase().includes(C))},[p,a]);k.useEffect(()=>{c(0)},[a]),k.useEffect(()=>{e&&(l(""),c(0),setTimeout(()=>{var C;return(C=f.current)==null?void 0:C.focus()},50))},[e]),k.useEffect(()=>{if(!d.current)return;const C=d.current.querySelector('[data-selected="true"]');C==null||C.scrollIntoView({block:"nearest"})},[u]);const y=C=>{C.action(),t()},x=C=>{switch(C.key){case"ArrowDown":C.preventDefault(),c(O=>(O+1)%g.length);break;case"ArrowUp":C.preventDefault(),c(O=>(O-1+g.length)%g.length);break;case"Enter":C.preventDefault(),g[u]&&y(g[u]);break;case"Escape":C.preventDefault(),t();break}};if(!e)return null;const S=g.reduce((C,O)=>(C[O.category]||(C[O.category]=[]),C[O.category].push(O),C),{}),w={navigation:"Navigation",action:"Actions",theme:"Theme"};let P=0;return m.jsxs("dialog",{className:"modal modal-open",children:[m.jsxs("div",{className:"modal-box max-w-xl p-0 overflow-hidden",children:[m.jsxs("div",{className:"flex items-center gap-2 p-3 border-b border-base-300",children:[m.jsx(se,{icon:"lucide:search",size:18,className:"text-base-content/50"}),m.jsx("input",{ref:f,type:"text",placeholder:"Type a command or search...",value:a,onChange:C=>l(C.target.value),onKeyDown:x,className:"flex-1 bg-transparent outline-none text-base"}),m.jsx("kbd",{className:"kbd kbd-sm",children:"ESC"})]}),m.jsx("div",{ref:d,className:"max-h-80 overflow-y-auto p-2",children:g.length===0?m.jsx("div",{className:"text-center py-8 text-base-content/50",children:"No commands found"}):Object.entries(S).map(([C,O])=>m.jsxs("div",{children:[m.jsx("div",{className:"text-xs font-medium text-base-content/50 px-2 py-1 mt-2 first:mt-0",children:w[C]||C}),O.map(A=>{const I=P===u,E=P;return P++,m.jsxs("button",{"data-selected":I,className:`w-full flex items-center gap-3 px-3 py-2 rounded-lg text-left transition-colors ${I?"bg-primary text-primary-content":"hover:bg-base-200"}`,onClick:()=>y(A),onMouseEnter:()=>c(E),children:[m.jsx(se,{icon:A.icon,size:16,className:I?"text-primary-content":"text-base-content/60"}),m.jsx("span",{className:"flex-1",children:A.label}),A.shortcut&&m.jsx("kbd",{className:`kbd kbd-sm ${I?"bg-primary-content/20 text-primary-content":""}`,children:A.shortcut})]},A.id)})]},C))}),m.jsxs("div",{className:"border-t border-base-300 px-3 py-2 text-xs text-base-content/50 flex gap-4",children:[m.jsxs("span",{children:[m.jsx("kbd",{className:"kbd kbd-xs",children:"↑↓"})," Navigate"]}),m.jsxs("span",{children:[m.jsx("kbd",{className:"kbd kbd-xs",children:"↵"})," Select"]}),m.jsxs("span",{children:[m.jsx("kbd",{className:"kbd kbd-xs",children:"ESC"})," Close"]})]})]}),m.jsx("form",{method:"dialog",className:"modal-backdrop bg-black/50",children:m.jsx("button",{onClick:t,children:"close"})})]})}function Ste({license:e,onActivated:t}){const[n,r]=k.useState(""),[i,a]=k.useState(null),[l,u]=k.useState(!1),c=k.useCallback(async()=>{const y=n.trim();if(y){a(null),u(!0);try{const S=await(await fetch("/api/license/activate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:y})})).json();S.success?(r(""),a(null),t()):a(S.error??"Activation failed")}catch{a("Connection failed. Is the Pilot worker running?")}finally{u(!1)}}},[n,t]),f=k.useCallback(y=>{y.key==="Enter"&&!l&&c()},[c,l]),d=(e==null?void 0:e.isExpired)===!0,p=d?"License Expired":"License Required",g=d?"Your Claude Pilot license has expired. Please activate a new license to continue using the Console.":"Claude Pilot Console requires an active license or trial. Activate your license key below to get started.";return m.jsx("div",{className:"min-h-screen flex items-center justify-center bg-base-200 p-4",children:m.jsx("div",{className:"card bg-base-100 shadow-xl w-full max-w-md",children:m.jsxs("div",{className:"card-body items-center text-center gap-4",children:[m.jsx("div",{className:"text-5xl mb-2",children:d?"🚫":"🔒"}),m.jsx("h1",{className:"card-title text-2xl",children:p}),m.jsx("p",{className:"text-base-content/60 text-sm",children:g}),m.jsxs("div",{className:"w-full space-y-3 mt-2",children:[m.jsx("input",{type:"text",className:"input input-bordered w-full",placeholder:"Enter your license key",value:n,onChange:y=>{r(y.target.value),a(null)},onKeyDown:f,disabled:l,autoFocus:!0}),i&&m.jsx("p",{className:"text-error text-sm text-left",children:i}),m.jsx("button",{className:"btn btn-primary w-full",onClick:c,disabled:l||!n.trim(),children:l?"Activating...":"Activate License"})]}),m.jsx("div",{className:"divider text-base-content/40 text-xs my-1",children:"or"}),m.jsx("a",{href:"https://claude-pilot.com/#pricing",target:"_blank",rel:"noopener noreferrer",className:"btn btn-outline btn-sm w-full",children:"Get a License"}),m.jsxs("p",{className:"text-base-content/40 text-xs mt-2",children:["Visit"," ",m.jsx("a",{href:"https://claude-pilot.com",target:"_blank",rel:"noopener noreferrer",className:"text-primary hover:underline",children:"claude-pilot.com"})," ","to learn more about Claude Pilot."]})]})})})}const LT="pilot-memory-theme";function jte(){return typeof window>"u"||window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}function BE(){try{const e=localStorage.getItem(LT);if(e==="system"||e==="light"||e==="dark")return e}catch(e){console.warn("Failed to read theme preference from localStorage:",e)}return"system"}function UE(e){return e==="system"?jte():e}function WE(e){return e==="dark"?"claude-pilot":"claude-pilot-light"}function Pte(){const[e,t]=k.useState(BE),[n,r]=k.useState(()=>UE(BE()));return k.useEffect(()=>{const a=UE(e);r(a),document.documentElement.setAttribute("data-theme",WE(a))},[e]),k.useEffect(()=>{if(e!=="system")return;const a=window.matchMedia("(prefers-color-scheme: dark)"),l=u=>{const c=u.matches?"dark":"light";r(c),document.documentElement.setAttribute("data-theme",WE(c))};return a.addEventListener("change",l),()=>a.removeEventListener("change",l)},[e]),{preference:e,resolvedTheme:n,setThemePreference:a=>{try{localStorage.setItem(LT,a),t(a)}catch(l){console.warn("Failed to save theme preference to localStorage:",l),t(a)}}}}function Ete(e,t={}){const{enabled:n=!0}=t,r=k.useRef([]),i=k.useRef(null),a=k.useCallback(()=>{r.current=[],i.current&&(clearTimeout(i.current),i.current=null)},[]);k.useEffect(()=>{if(!n)return;const l=u=>{const c=u.target;if(c.tagName==="INPUT"||c.tagName==="TEXTAREA"||c.isContentEditable){u.key==="Escape"&&e("escape");return}navigator.platform.includes("Mac");const f=u.ctrlKey||u.metaKey;for(const d of Object.values(Hv)){const p=!d.modifiers||d.modifiers.some(x=>x==="ctrl"?u.ctrlKey:x==="meta"?u.metaKey:x==="shift"?u.shiftKey:x==="alt"?u.altKey:!1),g=u.key.toLowerCase()===d.key.toLowerCase(),y=d.modifiers&&d.modifiers.length>0;if(g&&p&&(y?f:!f)){u.preventDefault(),e(d.action),a();return}}if(!f&&!u.shiftKey&&!u.altKey){i.current&&clearTimeout(i.current),r.current.push(u.key.toLowerCase()),i.current=setTimeout(a,1e3);for(const d of wte){const p=r.current,g=d.sequence;if(g.slice(0,p.length).every((x,S)=>x===p[S])){if(p.length===g.length){u.preventDefault(),e(d.action),a();return}return}}a()}};return document.addEventListener("keydown",l),()=>{document.removeEventListener("keydown",l),a()}},[n,e,a])}const Cte=[{path:"/",component:RL},{path:"/spec",component:RB},{path:"/memories",component:Zw},{path:"/memories/:type",component:Zw},{path:"/sessions",component:rR},{path:"/usage",component:ate},{path:"/vault",component:vte},{path:"/settings",component:lR}],qE="pilot-memory-sidebar-collapsed";function Ote(){const{path:e,navigate:t}=hC(),{resolvedTheme:n,setThemePreference:r}=Pte(),{workerStatus:i}=pC(),{license:a,isLoading:l,refetch:u}=dC(),[c,f]=k.useState(()=>{if(typeof window<"u"&&window.innerWidth<1024)return!0;try{return localStorage.getItem(qE)==="true"}catch{return!1}}),[d,p]=k.useState(!1),[g,y]=k.useState(!1),x=k.useCallback(()=>{r(n==="light"?"dark":"light")},[n,r]),S=k.useCallback(()=>{f(O=>{const A=!O;try{localStorage.setItem(qE,String(A))}catch{}return A})},[]),w=k.useCallback(()=>{p(O=>!O)},[]),P=k.useCallback(O=>{if(O==="openCommandPalette")y(!0);else if(O==="escape")y(!1),p(!1);else if(O==="toggleTheme")r(n==="light"?"dark":"light");else if(O==="toggleSidebar")S();else if(O==="focusSearch"){const A=document.querySelector('input[type="search"]');A==null||A.focus()}else O.startsWith("navigate:")&&t(O.replace("navigate:",""))},[n,r,t,S]);Ete(P);const C=!l&&(a==null?void 0:a.valid)===!0&&!a.isExpired;return l?m.jsx("div",{className:"min-h-screen flex items-center justify-center bg-base-200","data-theme":n==="dark"?"claude-pilot":"claude-pilot-light",children:m.jsx("span",{className:"loading loading-spinner loading-lg text-primary"})}):C?m.jsx(gL,{children:m.jsxs(pL,{children:[m.jsx(SL,{currentPath:`#${e}`,workerStatus:i.status,version:i.version,queueDepth:i.queueDepth,theme:n,onToggleTheme:x,onToggleLogs:w,sidebarCollapsed:c,onToggleSidebar:S,children:m.jsx(jL,{routes:Cte})}),m.jsx(bte,{isOpen:d,onClose:()=>p(!1)}),m.jsx(kte,{open:g,onClose:()=>y(!1),onNavigate:t,onToggleTheme:x,onToggleSidebar:S})]})}):m.jsx("div",{"data-theme":n==="dark"?"claude-pilot":"claude-pilot-light",children:m.jsx(Ste,{license:a,onActivated:u})})}class Nte extends k.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?m.jsxs("div",{style:{padding:"20px",color:"#ff6b6b",backgroundColor:"#1a1a1a",minHeight:"100vh"},children:[m.jsx("h1",{style:{fontSize:"24px",marginBottom:"10px"},children:"Something went wrong"}),m.jsx("p",{style:{marginBottom:"10px",color:"#8b949e"},children:"The application encountered an error. Please refresh the page to try again."}),this.state.error&&m.jsxs("details",{style:{marginTop:"20px",color:"#8b949e"},children:[m.jsx("summary",{style:{cursor:"pointer",marginBottom:"10px"},children:"Error details"}),m.jsxs("pre",{style:{backgroundColor:"#0d1117",padding:"10px",borderRadius:"6px",overflow:"auto"},children:[this.state.error.toString(),this.state.errorInfo&&` -`+this.state.errorInfo.componentStack]})]})]}):this.props.children}}const IT=document.getElementById("root");if(!IT)throw new Error("Root element not found");const wte=RD.createRoot(IT);wte.render(m.jsx(bte,{children:m.jsx(xte,{})})); +`+this.state.errorInfo.componentStack]})]})]}):this.props.children}}const RT=document.getElementById("root");if(!RT)throw new Error("Root element not found");const Ate=UM.createRoot(RT);Ate.render(m.jsx(Nte,{children:m.jsx(Ote,{})})); diff --git a/pilot/ui/viewer.css b/pilot/ui/viewer.css index aeb903cf..743b0076 100644 --- a/pilot/ui/viewer.css +++ b/pilot/ui/viewer.css @@ -1 +1 @@ -/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-orange-400:oklch(75% .183 55.934);--color-green-400:oklch(79.2% .209 151.711);--color-sky-400:oklch(74.6% .16 232.661);--color-violet-400:oklch(70.2% .183 293.541);--color-purple-400:oklch(71.4% .203 305.504);--color-pink-400:oklch(71.8% .202 349.761);--color-gray-400:oklch(70.7% .022 261.325);--color-black:#000;--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--container-xl:36rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-5xl:3rem;--text-5xl--line-height:1;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--tracking-wider:.05em;--leading-relaxed:1.625;--radius-md:.375rem;--radius-lg:.5rem;--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}:where(:root),:root:has(input.theme-controller[value=light]:checked),[data-theme=light]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(98% 0 0);--color-base-300:oklch(95% 0 0);--color-base-content:oklch(21% .006 285.885);--color-primary:oklch(45% .24 277.023);--color-primary-content:oklch(93% .034 272.788);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}@media(prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--color-base-100:oklch(25.33% .016 252.42);--color-base-200:oklch(23.26% .014 253.1);--color-base-300:oklch(21.15% .012 254.09);--color-base-content:oklch(97.807% .029 256.847);--color-primary:oklch(58% .233 277.117);--color-primary-content:oklch(96% .018 272.314);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}}:root:has(input.theme-controller[value=light]:checked),[data-theme=light]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(98% 0 0);--color-base-300:oklch(95% 0 0);--color-base-content:oklch(21% .006 285.885);--color-primary:oklch(45% .24 277.023);--color-primary-content:oklch(93% .034 272.788);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}:root:has(input.theme-controller[value=dark]:checked),[data-theme=dark]{color-scheme:dark;--color-base-100:oklch(25.33% .016 252.42);--color-base-200:oklch(23.26% .014 253.1);--color-base-300:oklch(21.15% .012 254.09);--color-base-content:oklch(97.807% .029 256.847);--color-primary:oklch(58% .233 277.117);--color-primary-content:oklch(96% .018 272.314);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}:root{--fx-noise:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.34' numOctaves='4' stitchTiles='stitch'%3E%3C/feTurbulence%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23a)' opacity='0.2'%3E%3C/rect%3E%3C/svg%3E");scrollbar-color:currentColor #0000}@supports (color:color-mix(in lab,red,red)){:root{scrollbar-color:color-mix(in oklch,currentColor 35%,#0000)#0000}}:root:not(span){overflow:var(--page-overflow)}:root,[data-theme]{background:var(--page-scroll-bg,var(--root-bg));color:var(--color-base-content)}:where(:root,[data-theme]){--root-bg:var(--color-base-100)}@media(prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--root-bg:#121212;--layout-sidebar-background:#1a1a1a;--layout-topbar-background:#1a1a1a;--color-base-100:#1a1a1a;--color-base-200:#262626;--color-base-300:#333;--color-base-content:#fafafa;--color-primary:#5b9ed9;--color-primary-content:#fff;--color-secondary:#a855f7;--color-secondary-content:#fff;--color-accent:#5b9ed9;--color-accent-content:#fff;--color-neutral:#d1d5db;--color-neutral-content:#1e2832;--color-info:#0ea5e9;--color-info-content:#fff;--color-success:#22c55e;--color-success-content:#fff;--color-warning:#f59e0b;--color-warning-content:#150a00;--color-error:#ef4444;--color-error-content:#fff;--radius-field:.375rem;--radius-box:.5rem;--rounded-box:.5rem;--radius-selector:.375rem;--border:1px}}:where(:root),:root:has(input.theme-controller[value=claude-pilot]:checked),[data-theme=claude-pilot]{color-scheme:dark;--root-bg:#121212;--layout-sidebar-background:#1a1a1a;--layout-topbar-background:#1a1a1a;--color-base-100:#1a1a1a;--color-base-200:#262626;--color-base-300:#333;--color-base-content:#fafafa;--color-primary:#5b9ed9;--color-primary-content:#fff;--color-secondary:#a855f7;--color-secondary-content:#fff;--color-accent:#5b9ed9;--color-accent-content:#fff;--color-neutral:#d1d5db;--color-neutral-content:#1e2832;--color-info:#0ea5e9;--color-info-content:#fff;--color-success:#22c55e;--color-success-content:#fff;--color-warning:#f59e0b;--color-warning-content:#150a00;--color-error:#ef4444;--color-error-content:#fff;--radius-field:.375rem;--radius-box:.5rem;--rounded-box:.5rem;--radius-selector:.375rem;--border:1px}:root:has(input.theme-controller[value=claude-pilot-light]:checked),[data-theme=claude-pilot-light]{color-scheme:light;--root-bg:#f5f5f5;--layout-sidebar-background:#fff;--layout-topbar-background:#fff;--color-base-100:#fff;--color-base-200:#f5f5f5;--color-base-300:#e5e5e5;--color-base-content:#171717;--color-primary:#4a90c7;--color-primary-content:#fff;--color-secondary:#9333ea;--color-secondary-content:#fff;--color-accent:#4a90c7;--color-accent-content:#fff;--color-neutral:#1f2937;--color-neutral-content:#fafcff;--color-info:#0284c7;--color-info-content:#fff;--color-success:#16a34a;--color-success-content:#fff;--color-warning:#d97706;--color-warning-content:#150a00;--color-error:#dc2626;--color-error-content:#fff;--radius-field:.375rem;--radius-box:.5rem;--rounded-box:.5rem;--radius-selector:.375rem;--border:1px}}@layer components;@layer utilities{@layer daisyui.l1.l2.l3{.diff{webkit-user-select:none;-webkit-user-select:none;user-select:none;direction:ltr;grid-template-rows:1fr 1.8rem 1fr;grid-template-columns:auto 1fr;width:100%;display:grid;position:relative;overflow:hidden;container-type:inline-size}.diff:focus-visible,.diff:has(.diff-item-1:focus-visible){outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px;outline-color:var(--color-base-content)}.diff:focus-visible .diff-resizer{min-width:95cqi;max-width:95cqi}.diff:has(.diff-item-1:focus-visible){outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px}.diff:has(.diff-item-1:focus-visible) .diff-resizer{min-width:5cqi;max-width:5cqi}@supports (-webkit-overflow-scrolling:touch) and (overflow:-webkit-paged-x){.diff:focus .diff-resizer{min-width:5cqi;max-width:5cqi}.diff:has(.diff-item-1:focus) .diff-resizer{min-width:95cqi;max-width:95cqi}}.modal{pointer-events:none;visibility:hidden;width:100%;max-width:none;height:100%;max-height:none;color:inherit;transition:visibility .3s allow-discrete,background-color .3s ease-out,opacity .1s ease-out;overscroll-behavior:contain;z-index:999;scrollbar-gutter:auto;background-color:#0000;place-items:center;margin:0;padding:0;display:grid;position:fixed;top:0;right:0;bottom:0;left:0;overflow:clip}.modal::backdrop{display:none}.tooltip{--tt-bg:var(--color-neutral);--tt-off: calc(100% + .5rem) ;--tt-tail: calc(100% + 1px + .25rem) ;display:inline-block;position:relative}.tooltip>.tooltip-content,.tooltip[data-tip]:before{border-radius:var(--radius-field);text-align:center;white-space:normal;max-width:20rem;color:var(--color-neutral-content);opacity:0;background-color:var(--tt-bg);pointer-events:none;z-index:2;--tw-content:attr(data-tip);content:var(--tw-content);width:max-content;padding-block:.25rem;padding-inline:.5rem;font-size:.875rem;line-height:1.25;position:absolute}.tooltip:after{opacity:0;background-color:var(--tt-bg);content:"";pointer-events:none;--mask-tooltip:url("data:image/svg+xml,%3Csvg width='10' height='4' viewBox='0 0 8 4' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.500009 1C3.5 1 3.00001 4 5.00001 4C7 4 6.5 1 9.5 1C10 1 10 0.499897 10 0H0C-1.99338e-08 0.5 0 1 0.500009 1Z' fill='black'/%3E%3C/svg%3E%0A");width:.625rem;height:.25rem;-webkit-mask-position:-1px 0;mask-position:-1px 0;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-image:var(--mask-tooltip);mask-image:var(--mask-tooltip);display:block;position:absolute}@media(prefers-reduced-motion:no-preference){.tooltip>.tooltip-content,.tooltip[data-tip]:before,.tooltip:after{transition:opacity .2s cubic-bezier(.4,0,.2,1) 75ms,transform .2s cubic-bezier(.4,0,.2,1) 75ms}}:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))>.tooltip-content,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))[data-tip]:before,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible)):after{opacity:1;--tt-pos:0rem}@media(prefers-reduced-motion:no-preference){:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))>.tooltip-content,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))[data-tip]:before,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible)):after{transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1)}}.tab{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:center;webkit-user-select:none;-webkit-user-select:none;user-select:none;flex-wrap:wrap;justify-content:center;align-items:center;display:inline-flex;position:relative}@media(hover:hover){.tab:hover{color:var(--color-base-content)}}.tab{--tab-p:.75rem;--tab-bg:var(--color-base-100);--tab-border-color:var(--color-base-300);--tab-radius-ss:0;--tab-radius-se:0;--tab-radius-es:0;--tab-radius-ee:0;--tab-order:0;--tab-radius-min:calc(.75rem - var(--border));--tab-radius-limit:min(var(--radius-field),var(--tab-radius-min));--tab-radius-grad:#0000 calc(69% - var(--border)),var(--tab-border-color)calc(69% - var(--border) + .25px),var(--tab-border-color)69%,var(--tab-bg) calc(69% + .25px) ;order:var(--tab-order);height:var(--tab-height);padding-inline:var(--tab-p);border-color:#0000;font-size:.875rem}.tab:is(input[type=radio]){min-width:fit-content}.tab:is(input[type=radio]):after{--tw-content:attr(aria-label);content:var(--tw-content)}.tab:is(label){position:relative}.tab:is(label) input{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;opacity:0;position:absolute;top:0;right:0;bottom:0;left:0}:is(.tab:checked,.tab:is(label:has(:checked)),.tab:is(.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]))+.tab-content{display:block}.tab:not(:checked,label:has(:checked),:hover,.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]){color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.tab:not(:checked,label:has(:checked),:hover,.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]){color:color-mix(in oklab,var(--color-base-content)50%,transparent)}}.tab:not(input):empty{cursor:default;flex-grow:1}.tab:focus{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.tab:focus{outline-offset:2px;outline:2px solid #0000}}.tab:focus-visible,.tab:is(label:has(:checked:focus-visible)){outline-offset:-5px;outline:2px solid}.tab[disabled]{pointer-events:none;opacity:.4}.menu{--menu-active-fg:var(--color-neutral-content);--menu-active-bg:var(--color-neutral);flex-flow:column wrap;width:fit-content;padding:.5rem;font-size:.875rem;display:flex}.menu :where(li ul){white-space:nowrap;margin-inline-start:1rem;padding-inline-start:.5rem;position:relative}.menu :where(li ul):before{background-color:var(--color-base-content);opacity:.1;width:var(--border);content:"";inset-inline-start:0;position:absolute;top:.75rem;bottom:.75rem}.menu :where(li>.menu-dropdown:not(.menu-dropdown-show)){display:none}.menu :where(li:not(.menu-title)>:not(ul,details,.menu-title,.btn)),.menu :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);text-align:start;text-wrap:balance;-webkit-user-select:none;user-select:none;grid-auto-columns:minmax(auto,max-content) auto max-content;grid-auto-flow:column;align-content:flex-start;align-items:center;gap:.5rem;padding-block:.375rem;padding-inline:.75rem;transition-property:color,background-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:grid}.menu :where(li>details>summary){--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.menu :where(li>details>summary){outline-offset:2px;outline:2px solid #0000}}.menu :where(li>details>summary)::-webkit-details-marker{display:none}:is(.menu :where(li>details>summary),.menu :where(li>.menu-dropdown-toggle)):after{content:"";transform-origin:50%;pointer-events:none;justify-self:flex-end;width:.375rem;height:.375rem;transition-property:rotate,translate;transition-duration:.2s;display:block;translate:0 -1px;rotate:-135deg;box-shadow:inset 2px 2px}.menu details{interpolate-size:allow-keywords;overflow:hidden}.menu details::details-content{block-size:0}@media(prefers-reduced-motion:no-preference){.menu details::details-content{transition-behavior:allow-discrete;transition-property:block-size,content-visibility;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1)}}.menu details[open]::details-content{block-size:auto}.menu :where(li>details[open]>summary):after,.menu :where(li>.menu-dropdown-toggle.menu-dropdown-show):after{translate:0 1px;rotate:45deg}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{cursor:pointer;background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{background-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{color:var(--color-base-content);--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{outline-offset:2px;outline:2px solid #0000}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){cursor:pointer;background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){background-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){outline-offset:2px;outline:2px solid #0000}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){box-shadow:inset 0 1px #00000003,inset 0 -1px #ffffff03}.menu :where(li:empty){background-color:var(--color-base-content);opacity:.1;height:1px;margin:.5rem 1rem}.menu :where(li){flex-flow:column wrap;flex-shrink:0;align-items:stretch;display:flex;position:relative}.menu :where(li) .badge{justify-self:flex-end}.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active{outline-offset:2px;outline:2px solid #0000}}.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active{color:var(--menu-active-fg);background-color:var(--menu-active-bg);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise)}:is(.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active):not(:is(.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active):active){box-shadow:0 2px calc(var(--depth)*3px) -2px var(--menu-active-bg)}.menu :where(li).menu-disabled{pointer-events:none;color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.menu :where(li).menu-disabled{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}.menu .dropdown:focus-within .menu-dropdown-toggle:after{translate:0 1px;rotate:45deg}.menu .dropdown-content{margin-top:.5rem;padding:.5rem}.menu .dropdown-content:before{display:none}.dropdown{position-area:var(--anchor-v,bottom)var(--anchor-h,span-right);display:inline-block;position:relative}.dropdown>:not(:has(~[class*=dropdown-content])):focus{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.dropdown>:not(:has(~[class*=dropdown-content])):focus{outline-offset:2px;outline:2px solid #0000}}.dropdown .dropdown-content{position:absolute}.dropdown.dropdown-close .dropdown-content,.dropdown:not(details,.dropdown-open,.dropdown-hover:hover,:focus-within) .dropdown-content,.dropdown.dropdown-hover:not(:hover) [tabindex]:first-child:focus:not(:focus-visible)~.dropdown-content{transform-origin:top;opacity:0;display:none;scale:95%}.dropdown[popover],.dropdown .dropdown-content{z-index:999}@media(prefers-reduced-motion:no-preference){.dropdown[popover],.dropdown .dropdown-content{transition-behavior:allow-discrete;transition-property:opacity,scale,display;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);animation:.2s dropdown}}@starting-style{.dropdown[popover],.dropdown .dropdown-content{opacity:0;scale:95%}}:is(.dropdown:not(.dropdown-close).dropdown-open,.dropdown:not(.dropdown-close):not(.dropdown-hover):focus,.dropdown:not(.dropdown-close):focus-within)>[tabindex]:first-child{pointer-events:none}:is(.dropdown:not(.dropdown-close).dropdown-open,.dropdown:not(.dropdown-close):not(.dropdown-hover):focus,.dropdown:not(.dropdown-close):focus-within) .dropdown-content,.dropdown:not(.dropdown-close).dropdown-hover:hover .dropdown-content{opacity:1;scale:100%}.dropdown:is(details) summary::-webkit-details-marker{display:none}.dropdown:where([popover]){background:0 0}.dropdown[popover]{color:inherit;position:fixed}@supports not (position-area:bottom){.dropdown[popover]{margin:auto}.dropdown[popover].dropdown-close{transform-origin:top;opacity:0;display:none;scale:95%}.dropdown[popover].dropdown-open:not(:popover-open){transform-origin:top;opacity:0;display:none;scale:95%}.dropdown[popover]::backdrop{background-color:oklab(0% none none/.3)}}:is(.dropdown[popover].dropdown-close,.dropdown[popover]:not(.dropdown-open,:popover-open)){transform-origin:top;opacity:0;display:none;scale:95%}:where(.btn){width:unset}.btn{cursor:pointer;text-align:center;vertical-align:middle;outline-offset:2px;webkit-user-select:none;-webkit-user-select:none;user-select:none;padding-inline:var(--btn-p);color:var(--btn-fg);--tw-prose-links:var(--btn-fg);height:var(--size);font-size:var(--fontsize,.875rem);outline-color:var(--btn-color,var(--color-base-content));background-color:var(--btn-bg);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--btn-noise);border-width:var(--border);border-style:solid;border-color:var(--btn-border);text-shadow:0 .5px oklch(100% 0 0/calc(var(--depth)*.15));touch-action:manipulation;box-shadow:0 .5px 0 .5px oklch(100% 0 0/calc(var(--depth)*6%)) inset,var(--btn-shadow);--size:calc(var(--size-field,.25rem)*10);--btn-bg:var(--btn-color,var(--color-base-200));--btn-fg:var(--color-base-content);--btn-p:1rem;--btn-border:var(--btn-bg);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-wrap:nowrap;flex-shrink:0;justify-content:center;align-items:center;gap:.375rem;font-weight:600;transition-property:color,background-color,border-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:inline-flex}@supports (color:color-mix(in lab,red,red)){.btn{--btn-border:color-mix(in oklab,var(--btn-bg),#000 calc(var(--depth)*5%))}}.btn{--btn-shadow:0 3px 2px -2px var(--btn-bg),0 4px 3px -2px var(--btn-bg)}@supports (color:color-mix(in lab,red,red)){.btn{--btn-shadow:0 3px 2px -2px color-mix(in oklab,var(--btn-bg)calc(var(--depth)*30%),#0000),0 4px 3px -2px color-mix(in oklab,var(--btn-bg)calc(var(--depth)*30%),#0000)}}.btn{--btn-noise:var(--fx-noise)}@media(hover:hover){.btn:hover{--btn-bg:var(--btn-color,var(--color-base-200))}@supports (color:color-mix(in lab,red,red)){.btn:hover{--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%)}}}.btn:focus-visible,.btn:has(:focus-visible){isolation:isolate;outline-width:2px;outline-style:solid}.btn:active:not(.btn-active){--btn-bg:var(--btn-color,var(--color-base-200));translate:0 .5px}@supports (color:color-mix(in lab,red,red)){.btn:active:not(.btn-active){--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 5%)}}.btn:active:not(.btn-active){--btn-border:var(--btn-color,var(--color-base-200))}@supports (color:color-mix(in lab,red,red)){.btn:active:not(.btn-active){--btn-border:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%)}}.btn:active:not(.btn-active){--btn-shadow:0 0 0 0 oklch(0% 0 0/0),0 0 0 0 oklch(0% 0 0/0)}.btn:is(input[type=checkbox],input[type=radio]){-webkit-appearance:none;-moz-appearance:none;appearance:none}.btn:is(input[type=checkbox],input[type=radio])[aria-label]:after{--tw-content:attr(aria-label);content:var(--tw-content)}.btn:where(input:checked:not(.filter .btn)){--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content);isolation:isolate}.loading{pointer-events:none;aspect-ratio:1;vertical-align:middle;width:calc(var(--size-selector,.25rem)*6);background-color:currentColor;display:inline-block;-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:100%;mask-size:100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.collapse{border-radius:var(--radius-box,1rem);isolation:isolate;grid-template-rows:max-content 0fr;grid-template-columns:minmax(0,1fr);width:100%;display:grid;position:relative;overflow:hidden}@media(prefers-reduced-motion:no-preference){.collapse{transition:grid-template-rows .2s}}.collapse>input:is([type=checkbox],[type=radio]){-webkit-appearance:none;-moz-appearance:none;appearance:none;opacity:0;z-index:1;grid-row-start:1;grid-column-start:1;width:100%;min-height:1lh;padding:1rem;padding-inline-end:3rem;transition:background-color .2s ease-out}.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close)),.collapse:not(.collapse-close):has(>input:is([type=checkbox],[type=radio]):checked){grid-template-rows:max-content 1fr}.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close))>.collapse-content,.collapse:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){content-visibility:visible;min-height:fit-content}@supports not (content-visibility:visible){.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close))>.collapse-content,.collapse:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){visibility:visible}}.collapse:focus-visible,.collapse:has(>input:is([type=checkbox],[type=radio]):focus-visible),.collapse:has(summary:focus-visible){outline-color:var(--color-base-content);outline-offset:2px;outline-width:2px;outline-style:solid}.collapse:not(.collapse-close)>input[type=checkbox],.collapse:not(.collapse-close)>input[type=radio]:not(:checked),.collapse:not(.collapse-close)>.collapse-title{cursor:pointer}:is(.collapse[tabindex]:focus:not(.collapse-close,.collapse[open]),.collapse[tabindex]:focus-within:not(.collapse-close,.collapse[open]))>.collapse-title{cursor:unset}.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close))>:where(.collapse-content),.collapse:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){padding-bottom:1rem}.collapse:is(details){width:100%}@media(prefers-reduced-motion:no-preference){.collapse:is(details)::details-content{transition:content-visibility .2s allow-discrete,visibility .2s allow-discrete,min-height .2s ease-out allow-discrete,padding .1s ease-out 20ms,background-color .2s ease-out,height .2s;interpolate-size:allow-keywords;height:0}.collapse:is(details):where([open])::details-content{height:auto}}.collapse:is(details) summary{display:block;position:relative}.collapse:is(details) summary::-webkit-details-marker{display:none}.collapse:is(details)>.collapse-content{content-visibility:visible}.collapse:is(details) summary{outline:none}.list{flex-direction:column;font-size:.875rem;display:flex}.list .list-row{--list-grid-cols:minmax(0,auto)1fr;border-radius:var(--radius-box);word-break:break-word;grid-auto-flow:column;grid-template-columns:var(--list-grid-cols);gap:1rem;padding:1rem;display:grid;position:relative}:is(.list>:not(:last-child).list-row,.list>:not(:last-child) .list-row):after{content:"";border-bottom:var(--border)solid;inset-inline:var(--radius-box);border-color:var(--color-base-content);position:absolute;bottom:0}@supports (color:color-mix(in lab,red,red)){:is(.list>:not(:last-child).list-row,.list>:not(:last-child) .list-row):after{border-color:color-mix(in oklab,var(--color-base-content)5%,transparent)}}.toast{translate:var(--toast-x,0)var(--toast-y,0);inset-inline:auto 1rem;background-color:#0000;flex-direction:column;gap:.5rem;width:max-content;max-width:calc(100vw - 2rem);display:flex;position:fixed;top:auto;bottom:1rem}@media(prefers-reduced-motion:no-preference){.toast>*{animation:.25s ease-out toast}}.toggle{border:var(--border)solid currentColor;color:var(--input-color);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;vertical-align:middle;webkit-user-select:none;-webkit-user-select:none;user-select:none;--radius-selector-max:calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));border-radius:calc(var(--radius-selector) + min(var(--toggle-p),var(--radius-selector-max)) + min(var(--border),var(--radius-selector-max)));padding:var(--toggle-p);flex-shrink:0;grid-template-columns:0fr 1fr 1fr;place-content:center;display:inline-grid;position:relative;box-shadow:inset 0 1px}@supports (color:color-mix(in lab,red,red)){.toggle{box-shadow:0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000) inset}}.toggle{--input-color:var(--color-base-content);transition:color .3s,grid-template-columns .2s}@supports (color:color-mix(in lab,red,red)){.toggle{--input-color:color-mix(in oklab,var(--color-base-content)50%,#0000)}}.toggle{--toggle-p:calc(var(--size)*.125);--size:calc(var(--size-selector,.25rem)*6);width:calc((var(--size)*2) - (var(--border) + var(--toggle-p))*2);height:var(--size)}.toggle>*{z-index:1;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#0000;border:none;grid-column:2/span 1;grid-row-start:1;height:100%;padding:.125rem;transition:opacity .2s,rotate .4s}.toggle>:focus{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.toggle>:focus{outline-offset:2px;outline:2px solid #0000}}.toggle>:nth-child(2){color:var(--color-base-100);rotate:none}.toggle>:nth-child(3){color:var(--color-base-100);opacity:0;rotate:-15deg}.toggle:has(:checked)>:nth-child(2){opacity:0;rotate:15deg}.toggle:has(:checked)>:nth-child(3){opacity:1;rotate:none}.toggle:before{aspect-ratio:1;border-radius:var(--radius-selector);--tw-content:"";content:var(--tw-content);width:100%;height:100%;box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1)) inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1)) inset,0 1px currentColor;background-color:currentColor;grid-row-start:1;grid-column-start:2;transition:background-color .1s,translate .2s,inset-inline-start .2s;position:relative;inset-inline-start:0;translate:0}@supports (color:color-mix(in lab,red,red)){.toggle:before{box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1)) inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1)) inset,0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000)}}.toggle:before{background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise)}@media(forced-colors:active){.toggle:before{outline-style:var(--tw-outline-style);outline-offset:-1px;outline-width:1px}}@media print{.toggle:before{outline-offset:-1rem;outline:.25rem solid}}.toggle:focus-visible,.toggle:has(:focus-visible){outline-offset:2px;outline:2px solid}.toggle:checked,.toggle[aria-checked=true],.toggle:has(>input:checked){background-color:var(--color-base-100);--input-color:var(--color-base-content);grid-template-columns:1fr 1fr 0fr}:is(.toggle:checked,.toggle[aria-checked=true],.toggle:has(>input:checked)):before{background-color:currentColor}@starting-style{:is(.toggle:checked,.toggle[aria-checked=true],.toggle:has(>input:checked)):before{opacity:0}}.toggle:indeterminate{grid-template-columns:.5fr 1fr .5fr}.toggle:disabled{cursor:not-allowed;opacity:.3}.toggle:disabled:before{border:var(--border)solid currentColor;background-color:#0000}.input{cursor:text;border:var(--border)solid #0000;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--color-base-100);vertical-align:middle;white-space:nowrap;width:clamp(3rem,20rem,100%);height:var(--size);font-size:max(var(--font-size,.875rem),.875rem);touch-action:manipulation;border-color:var(--input-color);box-shadow:0 1px var(--input-color) inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1)) inset;border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.5rem;padding-inline:.75rem;display:inline-flex;position:relative}@supports (color:color-mix(in lab,red,red)){.input{box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000) inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1)) inset}}.input{--size:calc(var(--size-field,.25rem)*10);--input-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.input{--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000)}}.input:where(input){display:inline-flex}.input :where(input){-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#0000;border:none;width:100%;height:100%;display:inline-flex}.input :where(input):focus,.input :where(input):focus-within{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.input :where(input):focus,.input :where(input):focus-within{outline-offset:2px;outline:2px solid #0000}}.input :where(input[type=url]),.input :where(input[type=email]){direction:ltr}.input :where(input[type=date]){display:inline-flex}.input:focus,.input:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px var(--input-color)}@supports (color:color-mix(in lab,red,red)){.input:focus,.input:focus-within{box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)}}.input:focus,.input:focus-within{outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}@media(pointer:coarse){@supports (-webkit-touch-callout:none){.input:focus,.input:focus-within{--font-size:1rem}}}.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input{cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input{color:color-mix(in oklab,var(--color-base-content)40%,transparent)}}:is(.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input)::placeholder{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){:is(.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input)::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input{box-shadow:none}.input:has(>input[disabled])>input[disabled]{cursor:not-allowed}.input::-webkit-date-and-time-value{text-align:inherit}.input[type=number]::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}.input::-webkit-calendar-picker-indicator{position:absolute;inset-inline-end:.75em}.input:has(>input[type=date]) :where(input[type=date]){webkit-appearance:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex}.input:has(>input[type=date]) input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;width:1em;height:1em;position:absolute;inset-inline-end:.75em}.indicator{width:max-content;display:inline-flex;position:relative}.indicator :where(.indicator-item){z-index:1;white-space:nowrap;top:var(--indicator-t,0);bottom:var(--indicator-b,auto);left:var(--indicator-s,auto);right:var(--indicator-e,0);translate:var(--indicator-x,50%)var(--indicator-y,-50%);position:absolute}.table{border-collapse:separate;--tw-border-spacing-x: 0rem ;--tw-border-spacing-y: 0rem ;width:100%;border-spacing:var(--tw-border-spacing-x)var(--tw-border-spacing-y);border-radius:var(--radius-box);text-align:left;font-size:.875rem;position:relative}.table:where(:dir(rtl),[dir=rtl],[dir=rtl] *){text-align:right}@media(hover:hover){:is(.table tr.row-hover,.table tr.row-hover:nth-child(2n)):hover{background-color:var(--color-base-200)}}.table :where(th,td){vertical-align:middle;padding-block:.75rem;padding-inline:1rem}.table :where(thead,tfoot){white-space:nowrap;color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.table :where(thead,tfoot){color:color-mix(in oklab,var(--color-base-content)60%,transparent)}}.table :where(thead,tfoot){font-size:.875rem;font-weight:600}.table :where(tfoot tr:first-child :is(td,th)){border-top:var(--border)solid var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.table :where(tfoot tr:first-child :is(td,th)){border-top:var(--border)solid color-mix(in oklch,var(--color-base-content)5%,#0000)}}.table :where(.table-pin-rows thead tr){z-index:1;background-color:var(--color-base-100);position:sticky;top:0}.table :where(.table-pin-rows tfoot tr){z-index:1;background-color:var(--color-base-100);position:sticky;bottom:0}.table :where(.table-pin-cols tr th){background-color:var(--color-base-100);position:sticky;left:0;right:0}.table :where(thead tr :is(td,th),tbody tr:not(:last-child) :is(td,th)){border-bottom:var(--border)solid var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.table :where(thead tr :is(td,th),tbody tr:not(:last-child) :is(td,th)){border-bottom:var(--border)solid color-mix(in oklch,var(--color-base-content)5%,#0000)}}.select{border:var(--border)solid #0000;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--color-base-100);vertical-align:middle;width:clamp(3rem,20rem,100%);height:var(--size);touch-action:manipulation;white-space:nowrap;text-overflow:ellipsis;box-shadow:0 1px var(--input-color) inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1)) inset;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 20px) calc(1px + 50%),calc(100% - 16.1px) calc(1px + 50%);background-repeat:no-repeat;background-size:4px 4px,4px 4px;border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.375rem;padding-inline:.75rem 1.75rem;font-size:.875rem;display:inline-flex;position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.select{box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000) inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1)) inset}}.select{border-color:var(--input-color);--input-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.select{--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000)}}.select{--size:calc(var(--size-field,.25rem)*10)}[dir=rtl] .select{background-position:12px calc(1px + 50%),16px calc(1px + 50%)}[dir=rtl] .select::picker(select){translate:.5rem}[dir=rtl] .select select::picker(select){translate:.5rem}.select[multiple]{background-image:none;height:auto;padding-block:.75rem;padding-inline-end:.75rem;overflow:auto}.select select{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:calc(100% + 2.75rem);height:calc(100% - calc(var(--border)*2));background:inherit;border-radius:inherit;border-style:none;align-items:center;margin-inline:-.75rem -1.75rem;padding-inline:.75rem 1.75rem}.select select:focus,.select select:focus-within{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.select select:focus,.select select:focus-within{outline-offset:2px;outline:2px solid #0000}}.select select:not(:last-child){background-image:none;margin-inline-end:-1.375rem}.select:focus,.select:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px var(--input-color)}@supports (color:color-mix(in lab,red,red)){.select:focus,.select:focus-within{box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)}}.select:focus,.select:focus-within{outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select{cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select{color:color-mix(in oklab,var(--color-base-content)40%,transparent)}}:is(.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select)::placeholder{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){:is(.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select)::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}.select:has(>select[disabled])>select[disabled]{cursor:not-allowed}@supports (appearance:base-select){.select,.select select{-webkit-appearance:base-select;-moz-appearance:base-select;appearance:base-select}:is(.select,.select select)::picker(select){-webkit-appearance:base-select;-moz-appearance:base-select;appearance:base-select}}:is(.select,.select select)::picker(select){color:inherit;border:var(--border)solid var(--color-base-200);border-radius:var(--radius-box);background-color:inherit;max-height:min(24rem,70dvh);box-shadow:0 2px calc(var(--depth)*3px) -2px #0003;box-shadow:0 20px 25px -5px rgb(0 0 0/calc(var(--depth)*.1)),0 8px 10px -6px rgb(0 0 0/calc(var(--depth)*.1));margin-block:.5rem;margin-inline:.5rem;padding:.5rem;translate:-.5rem}:is(.select,.select select)::picker-icon{display:none}:is(.select,.select select) optgroup{padding-top:.5em}:is(.select,.select select) optgroup option:first-child{margin-top:.5em}:is(.select,.select select) option{border-radius:var(--radius-field);white-space:normal;padding-block:.375rem;padding-inline:.75rem;transition-property:color,background-color;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1)}:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{cursor:pointer;background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{background-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{outline-offset:2px;outline:2px solid #0000}}:is(.select,.select select) option:not(:disabled):active{background-color:var(--color-neutral);color:var(--color-neutral-content);box-shadow:0 2px calc(var(--depth)*3px) -2px var(--color-neutral)}.timeline{display:flex;position:relative}.timeline>li{grid-template-rows:var(--timeline-row-start,minmax(0,1fr))auto var(--timeline-row-end,minmax(0,1fr));grid-template-columns:var(--timeline-col-start,minmax(0,1fr))auto var(--timeline-col-end,minmax(0,1fr));flex-shrink:0;align-items:center;display:grid;position:relative}.timeline>li>hr{border:none;width:100%}.timeline>li>hr:first-child{grid-row-start:2;grid-column-start:1}.timeline>li>hr:last-child{grid-area:2/3/auto/none}@media print{.timeline>li>hr{border:.1px solid var(--color-base-300)}}.timeline :where(hr){background-color:var(--color-base-300);height:.25rem}.timeline:has(.timeline-middle hr):first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}.timeline:has(.timeline-middle hr):last-child,.timeline:not(:has(.timeline-middle)) :first-child hr:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}.timeline:not(:has(.timeline-middle)) :last-child hr:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}.checkbox{border:var(--border)solid var(--input-color,var(--color-base-content))}@supports (color:color-mix(in lab,red,red)){.checkbox{border:var(--border)solid var(--input-color,color-mix(in oklab,var(--color-base-content)20%,#0000))}}.checkbox{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--radius-selector);vertical-align:middle;color:var(--color-base-content);box-shadow:0 1px oklch(0% 0 0/calc(var(--depth)*.1)) inset,0 0 #0000 inset,0 0 #0000;--size:calc(var(--size-selector,.25rem)*6);width:var(--size);height:var(--size);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);flex-shrink:0;padding:.25rem;transition:background-color .2s,box-shadow .2s;display:inline-block;position:relative}.checkbox:before{--tw-content:"";content:var(--tw-content);opacity:0;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,70% 80%,70% 100%);width:100%;height:100%;box-shadow:0 3px oklch(100% 0 0/calc(var(--depth)*.1)) inset;background-color:currentColor;font-size:1rem;line-height:.75;transition:clip-path .3s .1s,opacity .1s .1s,rotate .3s .1s,translate .3s .1s;display:block;rotate:45deg}.checkbox:focus-visible{outline:2px solid var(--input-color,currentColor);outline-offset:2px}.checkbox:checked,.checkbox[aria-checked=true]{background-color:var(--input-color,#0000);box-shadow:0 0 #0000 inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1)) inset,0 1px oklch(0% 0 0/calc(var(--depth)*.1))}:is(.checkbox:checked,.checkbox[aria-checked=true]):before{clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 0%,70% 0%,70% 100%);opacity:1}@media(forced-colors:active){:is(.checkbox:checked,.checkbox[aria-checked=true]):before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:none}}@media print{:is(.checkbox:checked,.checkbox[aria-checked=true]):before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:none}}.checkbox:indeterminate{background-color:var(--input-color,var(--color-base-content))}@supports (color:color-mix(in lab,red,red)){.checkbox:indeterminate{background-color:var(--input-color,color-mix(in oklab,var(--color-base-content)20%,#0000))}}.checkbox:indeterminate:before{opacity:1;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,80% 80%,80% 100%);translate:0 -35%;rotate:none}.card{border-radius:var(--radius-box);outline-offset:2px;outline:0 solid #0000;flex-direction:column;transition:outline .2s ease-in-out;display:flex;position:relative}.card:focus{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.card:focus{outline-offset:2px;outline:2px solid #0000}}.card:focus-visible{outline-color:currentColor}.card :where(figure:first-child){border-start-start-radius:inherit;border-start-end-radius:inherit;border-end-end-radius:unset;border-end-start-radius:unset;overflow:hidden}.card :where(figure:last-child){border-start-start-radius:unset;border-start-end-radius:unset;border-end-end-radius:inherit;border-end-start-radius:inherit;overflow:hidden}.card figure{justify-content:center;align-items:center;display:flex}.card:has(>input:is(input[type=checkbox],input[type=radio])){cursor:pointer;-webkit-user-select:none;user-select:none}.card:has(>:checked){outline:2px solid}.stats{border-radius:var(--radius-box);grid-auto-flow:column;display:inline-grid;position:relative;overflow-x:auto}.progress{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--radius-box);background-color:currentColor;width:100%;height:.5rem;position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.progress{background-color:color-mix(in oklab,currentcolor 20%,transparent)}}.progress{color:var(--color-base-content)}.progress:indeterminate{background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%}@media(prefers-reduced-motion:no-preference){.progress:indeterminate{animation:5s ease-in-out infinite progress}}@supports ((-moz-appearance:none)){.progress:indeterminate::-moz-progress-bar{background-color:#0000}@media(prefers-reduced-motion:no-preference){.progress:indeterminate::-moz-progress-bar{background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%;animation:5s ease-in-out infinite progress}}.progress::-moz-progress-bar{border-radius:var(--radius-box);background-color:currentColor}}@supports ((-webkit-appearance:none)){.progress::-webkit-progress-bar{border-radius:var(--radius-box);background-color:#0000}.progress::-webkit-progress-value{border-radius:var(--radius-box);background-color:currentColor}}.modal-backdrop{color:#0000;z-index:-1;grid-row-start:1;grid-column-start:1;place-self:stretch stretch;display:grid}.modal-backdrop button{cursor:pointer}.modal-box{background-color:var(--color-base-100);border-top-left-radius:var(--modal-tl,var(--radius-box));border-top-right-radius:var(--modal-tr,var(--radius-box));border-bottom-left-radius:var(--modal-bl,var(--radius-box));border-bottom-right-radius:var(--modal-br,var(--radius-box));opacity:0;overscroll-behavior:contain;grid-row-start:1;grid-column-start:1;width:91.6667%;max-width:32rem;max-height:100vh;padding:1.5rem;transition:translate .3s ease-out,scale .3s ease-out,opacity .2s ease-out 50ms,box-shadow .3s ease-out;overflow-y:auto;scale:95%;box-shadow:0 25px 50px -12px #00000040}.stat-value{white-space:nowrap;grid-column-start:1;font-size:2rem;font-weight:800}.stat-desc{white-space:nowrap;color:var(--color-base-content);grid-column-start:1}@supports (color:color-mix(in lab,red,red)){.stat-desc{color:color-mix(in oklab,var(--color-base-content)60%,transparent)}}.stat-desc{font-size:.75rem}.stat-title{white-space:nowrap;color:var(--color-base-content);grid-column-start:1}@supports (color:color-mix(in lab,red,red)){.stat-title{color:color-mix(in oklab,var(--color-base-content)60%,transparent)}}.stat-title{font-size:.75rem}.divider{white-space:nowrap;height:1rem;margin:var(--divider-m,1rem 0);--divider-color:var(--color-base-content);flex-direction:row;align-self:stretch;align-items:center;display:flex}@supports (color:color-mix(in lab,red,red)){.divider{--divider-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.divider:before,.divider:after{content:"";background-color:var(--divider-color);flex-grow:1;width:100%;height:.125rem}@media print{.divider:before,.divider:after{border:.5px solid}}.divider:not(:empty){gap:1rem}.filter{flex-wrap:wrap;display:flex}.filter input[type=radio]{width:auto}.filter input{opacity:1;transition:margin .1s,opacity .3s,padding .3s,border-width .1s;overflow:hidden;scale:1}.filter input:not(:last-child){margin-inline-end:.25rem}.filter input.filter-reset{aspect-ratio:1}.filter input.filter-reset:after{--tw-content:"×";content:var(--tw-content)}.filter:not(:has(input:checked:not(.filter-reset))) .filter-reset,.filter:not(:has(input:checked:not(.filter-reset))) input[type=reset],.filter:has(input:checked:not(.filter-reset)) input:not(:checked,.filter-reset,input[type=reset]){opacity:0;border-width:0;width:0;margin-inline:0;padding-inline:0;scale:0}.label{white-space:nowrap;color:currentColor;align-items:center;gap:.375rem;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.label{color:color-mix(in oklab,currentcolor 60%,transparent)}}.label:has(input){cursor:pointer}.label:is(.input>*,.select>*){white-space:nowrap;height:calc(100% - .5rem);font-size:inherit;align-items:center;padding-inline:.75rem;display:flex}.label:is(.input>*,.select>*):first-child{border-inline-end:var(--border)solid currentColor;margin-inline:-.75rem .75rem}@supports (color:color-mix(in lab,red,red)){.label:is(.input>*,.select>*):first-child{border-inline-end:var(--border)solid color-mix(in oklab,currentColor 10%,#0000)}}.label:is(.input>*,.select>*):last-child{border-inline-start:var(--border)solid currentColor;margin-inline:.75rem -.75rem}@supports (color:color-mix(in lab,red,red)){.label:is(.input>*,.select>*):last-child{border-inline-start:var(--border)solid color-mix(in oklab,currentColor 10%,#0000)}}.modal-action{justify-content:flex-end;gap:.5rem;margin-top:1.5rem;display:flex}.status{aspect-ratio:1;border-radius:var(--radius-selector);background-color:var(--color-base-content);width:.5rem;height:.5rem;display:inline-block}@supports (color:color-mix(in lab,red,red)){.status{background-color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}.status{vertical-align:middle;color:#0000004d;background-position:50%;background-repeat:no-repeat}@supports (color:color-mix(in lab,red,red)){.status{color:color-mix(in oklab,var(--color-black)30%,transparent)}}.status{background-image:radial-gradient(circle at 35% 30%,oklch(1 0 0/calc(var(--depth)*.5)),#0000);box-shadow:0 2px 3px -1px}@supports (color:color-mix(in lab,red,red)){.status{box-shadow:0 2px 3px -1px color-mix(in oklab,currentColor calc(var(--depth)*100%),#0000)}}.badge{border-radius:var(--radius-selector);vertical-align:middle;color:var(--badge-fg);border:var(--border)solid var(--badge-color,var(--color-base-200));background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);background-color:var(--badge-bg);--badge-bg:var(--badge-color,var(--color-base-100));--badge-fg:var(--color-base-content);--size:calc(var(--size-selector,.25rem)*6);width:fit-content;height:var(--size);padding-inline:calc(var(--size)/2 - var(--border));justify-content:center;align-items:center;gap:.5rem;font-size:.875rem;display:inline-flex}.kbd{border-radius:var(--radius-field);background-color:var(--color-base-200);vertical-align:middle;border:var(--border)solid var(--color-base-content);justify-content:center;align-items:center;padding-inline:.5em;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.kbd{border:var(--border)solid color-mix(in srgb,var(--color-base-content)20%,#0000)}}.kbd{border-bottom:calc(var(--border) + 1px)solid var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.kbd{border-bottom:calc(var(--border) + 1px)solid color-mix(in srgb,var(--color-base-content)20%,#0000)}}.kbd{--size:calc(var(--size-selector,.25rem)*6);height:var(--size);min-width:var(--size);font-size:.875rem}.tabs{--tabs-height:auto;--tabs-direction:row;--tab-height:calc(var(--size-field,.25rem)*10);height:var(--tabs-height);flex-wrap:wrap;flex-direction:var(--tabs-direction);display:flex}.footer{grid-auto-flow:row;place-items:start;gap:2.5rem 1rem;width:100%;font-size:.875rem;line-height:1.25rem;display:grid}.footer>*{place-items:start;gap:.5rem;display:grid}.footer.footer-center{text-align:center;grid-auto-flow:column dense;place-items:center}.footer.footer-center>*{place-items:center}.stat{grid-template-columns:repeat(1,1fr);column-gap:1rem;width:100%;padding-block:1rem;padding-inline:1.5rem;display:inline-grid}.stat:not(:last-child){border-inline-end:var(--border)dashed currentColor}@supports (color:color-mix(in lab,red,red)){.stat:not(:last-child){border-inline-end:var(--border)dashed color-mix(in oklab,currentColor 10%,#0000)}}.stat:not(:last-child){border-block-end:none}.card-body{padding:var(--card-p,1.5rem);font-size:var(--card-fs,.875rem);flex-direction:column;flex:auto;gap:.5rem;display:flex}.card-body :where(p){flex-grow:1}.alert{--alert-border-color:var(--color-base-200);border-radius:var(--radius-box);color:var(--color-base-content);background-color:var(--alert-color,var(--color-base-200));text-align:start;background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);box-shadow:0 3px 0 -2px oklch(100% 0 0/calc(var(--depth)*.08)) inset,0 1px #000,0 4px 3px -2px oklch(0% 0 0/calc(var(--depth)*.08));border-style:solid;grid-template-columns:auto;grid-auto-flow:column;justify-content:start;place-items:center start;gap:1rem;padding-block:.75rem;padding-inline:1rem;font-size:.875rem;line-height:1.25rem;display:grid}@supports (color:color-mix(in lab,red,red)){.alert{box-shadow:0 3px 0 -2px oklch(100% 0 0/calc(var(--depth)*.08)) inset,0 1px color-mix(in oklab,color-mix(in oklab,#000 20%,var(--alert-color,var(--color-base-200)))calc(var(--depth)*20%),#0000),0 4px 3px -2px oklch(0% 0 0/calc(var(--depth)*.08))}}.alert:has(:nth-child(2)){grid-template-columns:auto minmax(auto,1fr)}.card-actions{flex-wrap:wrap;align-items:flex-start;gap:.5rem;display:flex}.card-title{font-size:var(--cardtitle-fs,1.125rem);align-items:center;gap:.5rem;font-weight:600;display:flex}.btn-error{--btn-color:var(--color-error);--btn-fg:var(--color-error-content)}.btn-primary{--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content)}.btn-secondary{--btn-color:var(--color-secondary);--btn-fg:var(--color-secondary-content)}}@layer daisyui.l1.l2{.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal{pointer-events:auto;visibility:visible;opacity:1;transition:visibility 0s allow-discrete,background-color .3s ease-out,opacity .1s ease-out;background-color:#0006}:is(.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal) .modal-box{opacity:1;translate:0;scale:1}:root:has(:is(.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal)){--page-has-backdrop:1;--page-overflow:hidden;--page-scroll-bg:var(--page-scroll-bg-on);--page-scroll-gutter:stable;--page-scroll-transition:var(--page-scroll-transition-on);animation:forwards set-page-has-scroll;animation-timeline:scroll()}@starting-style{.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal{opacity:0}}.tooltip>.tooltip-content,.tooltip[data-tip]:before{transform:translate(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-off)50%}.tooltip:after{transform:translate(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-tail)50%}.btn:disabled:not(.btn-link,.btn-ghost){background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.btn:disabled:not(.btn-link,.btn-ghost){background-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.btn:disabled:not(.btn-link,.btn-ghost){box-shadow:none}.btn:disabled{pointer-events:none;--btn-border:#0000;--btn-noise:none;--btn-fg:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.btn:disabled{--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000)}}.btn[disabled]:not(.btn-link,.btn-ghost){background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.btn[disabled]:not(.btn-link,.btn-ghost){background-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.btn[disabled]:not(.btn-link,.btn-ghost){box-shadow:none}.btn[disabled]{pointer-events:none;--btn-border:#0000;--btn-noise:none;--btn-fg:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.btn[disabled]{--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000)}}@media(prefers-reduced-motion:no-preference){.collapse[open].collapse-arrow>.collapse-title:after,.collapse.collapse-open.collapse-arrow>.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}.collapse.collapse-open.collapse-plus>.collapse-title:after{--tw-content:"−";content:var(--tw-content)}:is(.collapse[tabindex].collapse-arrow:focus:not(.collapse-close),.collapse.collapse-arrow[tabindex]:focus-within:not(.collapse-close))>.collapse-title:after,.collapse.collapse-arrow:not(.collapse-close)>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{transform:translateY(-50%)rotate(225deg)}.collapse[open].collapse-plus>.collapse-title:after,.collapse[tabindex].collapse-plus:focus:not(.collapse-close)>.collapse-title:after,.collapse.collapse-plus:not(.collapse-close)>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{--tw-content:"−";content:var(--tw-content)}.list .list-row:has(.list-col-grow:first-child){--list-grid-cols:1fr}.list .list-row:has(.list-col-grow:nth-child(2)){--list-grid-cols:minmax(0,auto)1fr}.list .list-row:has(.list-col-grow:nth-child(3)){--list-grid-cols:minmax(0,auto)minmax(0,auto)1fr}.list .list-row:has(.list-col-grow:nth-child(4)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}.list .list-row:has(.list-col-grow:nth-child(5)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}.list .list-row:has(.list-col-grow:nth-child(6)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}.list .list-row>*{grid-row-start:1}.checkbox:disabled{cursor:not-allowed;opacity:.2}.tooltip-bottom>.tooltip-content,.tooltip-bottom[data-tip]:before{transform:translate(-50%)translateY(var(--tt-pos,-.25rem));inset:var(--tt-off)auto auto 50%}.tooltip-bottom:after{transform:translate(-50%)translateY(var(--tt-pos,-.25rem))rotate(180deg);inset:var(--tt-tail)auto auto 50%}.tooltip-left>.tooltip-content,.tooltip-left[data-tip]:before{transform:translate(calc(var(--tt-pos,.25rem) - .25rem))translateY(-50%);inset:50% var(--tt-off)auto auto}.tooltip-left:after{transform:translate(var(--tt-pos,.25rem))translateY(-50%)rotate(-90deg);inset:50% calc(var(--tt-tail) + 1px)auto auto}.tooltip-right>.tooltip-content,.tooltip-right[data-tip]:before{transform:translate(calc(var(--tt-pos,-.25rem) + .25rem))translateY(-50%);inset:50% auto auto var(--tt-off)}.tooltip-right:after{transform:translate(var(--tt-pos,-.25rem))translateY(-50%)rotate(90deg);inset:50% auto auto calc(var(--tt-tail) + 1px)}.tooltip-top>.tooltip-content,.tooltip-top[data-tip]:before{transform:translate(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-off)50%}.tooltip-top:after{transform:translate(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-tail)50%}.toast-end{--toast-x:0;inset-inline:auto 1rem}.dropdown-end{--anchor-h:span-left}.dropdown-end :where(.dropdown-content){inset-inline-end:0;translate:0}[dir=rtl] :is(.dropdown-end :where(.dropdown-content)){translate:0}.dropdown-end.dropdown-left{--anchor-h:left;--anchor-v:span-top}.dropdown-end.dropdown-left .dropdown-content{top:auto;bottom:0}.dropdown-end.dropdown-right{--anchor-h:right;--anchor-v:span-top}.dropdown-end.dropdown-right .dropdown-content{top:auto;bottom:0}.toast-bottom{--toast-y:0;top:auto;bottom:1rem}.input-lg{--size:calc(var(--size-field,.25rem)*12);font-size:max(var(--font-size,1.125rem),1.125rem)}.input-lg[type=number]::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}.input-sm{--size:calc(var(--size-field,.25rem)*8);font-size:max(var(--font-size,.75rem),.75rem)}.input-sm[type=number]::-webkit-inner-spin-button{margin-block:-.5rem;margin-inline-end:-.75rem}.input-xs{--size:calc(var(--size-field,.25rem)*6);font-size:max(var(--font-size,.6875rem),.6875rem)}.input-xs[type=number]::-webkit-inner-spin-button{margin-block:-.25rem;margin-inline-end:-.75rem}.btn-circle{width:var(--size);height:var(--size);border-radius:3.40282e38px;padding-inline:0}.btn-square{width:var(--size);height:var(--size);padding-inline:0}.loading-lg{width:calc(var(--size-selector,.25rem)*7)}.loading-md{width:calc(var(--size-selector,.25rem)*6)}.loading-sm{width:calc(var(--size-selector,.25rem)*5)}.loading-xs{width:calc(var(--size-selector,.25rem)*4)}.badge-ghost{border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content);background-image:none}.badge-outline{color:var(--badge-color);--badge-bg:#0000;background-image:none;border-color:currentColor}.loading-spinner{-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E")}.checkbox-xs{--size:calc(var(--size-selector,.25rem)*4);padding:.125rem}.select-lg{--size:calc(var(--size-field,.25rem)*12);font-size:1.125rem}.select-lg option{padding-block:.375rem;padding-inline:1rem}.select-sm{--size:calc(var(--size-field,.25rem)*8);font-size:.75rem}.select-sm option{padding-block:.25rem;padding-inline:.625rem}.select-xs{--size:calc(var(--size-field,.25rem)*6);font-size:.6875rem}.select-xs option{padding-block:.25rem;padding-inline:.5rem}.table-sm :not(thead,tfoot) tr{font-size:.75rem}.table-sm :where(th,td){padding-block:.5rem;padding-inline:.75rem}.table-xs :not(thead,tfoot) tr{font-size:.6875rem}.table-xs :where(th,td){padding-block:.25rem;padding-inline:.5rem}.badge-lg{--size:calc(var(--size-selector,.25rem)*7);font-size:1rem}.badge-sm{--size:calc(var(--size-selector,.25rem)*5);font-size:.75rem}.badge-xs{--size:calc(var(--size-selector,.25rem)*4);font-size:.625rem}.kbd-sm{--size:calc(var(--size-selector,.25rem)*5);font-size:.75rem}.kbd-xs{--size:calc(var(--size-selector,.25rem)*4);font-size:.625rem}.alert-error{color:var(--color-error-content);--alert-border-color:var(--color-error);--alert-color:var(--color-error)}.alert-info{color:var(--color-info-content);--alert-border-color:var(--color-info);--alert-color:var(--color-info)}.alert-success{color:var(--color-success-content);--alert-border-color:var(--color-success);--alert-color:var(--color-success)}.alert-warning{color:var(--color-warning-content);--alert-border-color:var(--color-warning);--alert-color:var(--color-warning)}.checkbox-primary{color:var(--color-primary-content);--input-color:var(--color-primary)}.progress-accent{color:var(--color-accent)}.progress-error{color:var(--color-error)}.progress-info{color:var(--color-info)}.progress-primary{color:var(--color-primary)}.progress-secondary{color:var(--color-secondary)}.progress-success{color:var(--color-success)}.progress-warning{color:var(--color-warning)}.btn-lg{--fontsize:1.125rem;--btn-p:1.25rem;--size:calc(var(--size-field,.25rem)*12)}.btn-sm{--fontsize:.75rem;--btn-p:.75rem;--size:calc(var(--size-field,.25rem)*8)}.btn-xs{--fontsize:.6875rem;--btn-p:.5rem;--size:calc(var(--size-field,.25rem)*6)}.badge-accent{--badge-color:var(--color-accent);--badge-fg:var(--color-accent-content)}.badge-error{--badge-color:var(--color-error);--badge-fg:var(--color-error-content)}.badge-info{--badge-color:var(--color-info);--badge-fg:var(--color-info-content)}.badge-primary{--badge-color:var(--color-primary);--badge-fg:var(--color-primary-content)}.badge-secondary{--badge-color:var(--color-secondary);--badge-fg:var(--color-secondary-content)}.badge-success{--badge-color:var(--color-success);--badge-fg:var(--color-success-content)}.badge-warning{--badge-color:var(--color-warning);--badge-fg:var(--color-warning-content)}.input-error,.input-error:focus,.input-error:focus-within,.select-error,.select-error:focus,.select-error:focus-within{--input-color:var(--color-error)}.toggle-info:checked,.toggle-info[aria-checked=true]{--input-color:var(--color-info)}.toggle-lg[type=checkbox],.toggle-lg:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*7)}.toggle-primary:checked,.toggle-primary[aria-checked=true]{--input-color:var(--color-primary)}.toggle-sm[type=checkbox],.toggle-sm:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*5)}.toggle-xs[type=checkbox],.toggle-xs:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*4)}}.prose :where(a.btn:not(.btn-link)):not(:where([class~=not-prose],[class~=not-prose] *)){text-decoration-line:none}.collapse:not(td,tr,colgroup){visibility:revert-layer}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.top-0{top:calc(var(--spacing)*0)}.top-1\/2{top:50%}.top-3{top:calc(var(--spacing)*3)}.right-0{right:calc(var(--spacing)*0)}.bottom-0{bottom:calc(var(--spacing)*0)}.-left-9{left:calc(var(--spacing)*-9)}.left-0{left:calc(var(--spacing)*0)}.left-3{left:calc(var(--spacing)*3)}.left-4{left:calc(var(--spacing)*4)}.z-10{z-index:10}.z-50{z-index:50}.col-span-2{grid-column:span 2/span 2}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.my-1{margin-block:calc(var(--spacing)*1)}.my-3{margin-block:calc(var(--spacing)*3)}.my-6{margin-block:calc(var(--spacing)*6)}.mt-0\.5{margin-top:calc(var(--spacing)*.5)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-1\.5{margin-top:calc(var(--spacing)*1.5)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-3{margin-top:calc(var(--spacing)*3)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-6{margin-top:calc(var(--spacing)*6)}.mr-1{margin-right:calc(var(--spacing)*1)}.mr-1\.5{margin-right:calc(var(--spacing)*1.5)}.mr-auto{margin-right:auto}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-1\.5{margin-bottom:calc(var(--spacing)*1.5)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-8{margin-left:calc(var(--spacing)*8)}.ml-auto{margin-left:auto}.kbd{box-shadow:none}.alert{border-width:var(--border);border-color:var(--alert-border-color,var(--color-base-200))}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-1{height:calc(var(--spacing)*1)}.h-1\.5{height:calc(var(--spacing)*1.5)}.h-2{height:calc(var(--spacing)*2)}.h-3{height:calc(var(--spacing)*3)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-8{height:calc(var(--spacing)*8)}.h-9{height:calc(var(--spacing)*9)}.h-14{height:calc(var(--spacing)*14)}.h-48{height:calc(var(--spacing)*48)}.h-64{height:calc(var(--spacing)*64)}.h-full{height:100%}.h-screen{height:100vh}.max-h-40{max-height:calc(var(--spacing)*40)}.max-h-80{max-height:calc(var(--spacing)*80)}.max-h-96{max-height:calc(var(--spacing)*96)}.min-h-screen{min-height:100vh}.w-1\/2{width:50%}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-8{width:calc(var(--spacing)*8)}.w-12{width:calc(var(--spacing)*12)}.w-16{width:calc(var(--spacing)*16)}.w-20{width:calc(var(--spacing)*20)}.w-24{width:calc(var(--spacing)*24)}.w-40{width:calc(var(--spacing)*40)}.w-48{width:calc(var(--spacing)*48)}.w-52{width:calc(var(--spacing)*52)}.w-60{width:calc(var(--spacing)*60)}.w-64{width:calc(var(--spacing)*64)}.w-\[72px\]{width:72px}.w-full{width:100%}.max-w-24{max-width:calc(var(--spacing)*24)}.max-w-32{max-width:calc(var(--spacing)*32)}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.min-w-0{min-width:calc(var(--spacing)*0)}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.translate-x-0{--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-4{--tw-translate-x:calc(var(--spacing)*4);translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-ns-resize{cursor:ns-resize}.cursor-pointer{cursor:pointer}.resize{resize:both}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*8)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*8)*calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-box{border-radius:var(--radius-box)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-b-lg{border-bottom-right-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-base-100{border-color:var(--color-base-100)}.border-base-200{border-color:var(--color-base-200)}.border-base-300,.border-base-300\/50{border-color:var(--color-base-300)}@supports (color:color-mix(in lab,red,red)){.border-base-300\/50{border-color:color-mix(in oklab,var(--color-base-300)50%,transparent)}}.border-base-content\/10{border-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.border-base-content\/10{border-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.border-primary\/30{border-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.border-primary\/30{border-color:color-mix(in oklab,var(--color-primary)30%,transparent)}}.border-primary\/50{border-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.border-primary\/50{border-color:color-mix(in oklab,var(--color-primary)50%,transparent)}}.border-warning\/30{border-color:var(--color-warning)}@supports (color:color-mix(in lab,red,red)){.border-warning\/30{border-color:color-mix(in oklab,var(--color-warning)30%,transparent)}}.border-l-accent{border-left-color:var(--color-accent)}.border-l-info{border-left-color:var(--color-info)}.border-l-warning{border-left-color:var(--color-warning)}.bg-base-100{background-color:var(--color-base-100)}.bg-base-200,.bg-base-200\/50{background-color:var(--color-base-200)}@supports (color:color-mix(in lab,red,red)){.bg-base-200\/50{background-color:color-mix(in oklab,var(--color-base-200)50%,transparent)}}.bg-base-200\/60{background-color:var(--color-base-200)}@supports (color:color-mix(in lab,red,red)){.bg-base-200\/60{background-color:color-mix(in oklab,var(--color-base-200)60%,transparent)}}.bg-base-300,.bg-base-300\/50{background-color:var(--color-base-300)}@supports (color:color-mix(in lab,red,red)){.bg-base-300\/50{background-color:color-mix(in oklab,var(--color-base-300)50%,transparent)}}.bg-base-content\/30{background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.bg-base-content\/30{background-color:color-mix(in oklab,var(--color-base-content)30%,transparent)}}.bg-base-content\/50{background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.bg-base-content\/50{background-color:color-mix(in oklab,var(--color-base-content)50%,transparent)}}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black)50%,transparent)}}.bg-error,.bg-error\/10{background-color:var(--color-error)}@supports (color:color-mix(in lab,red,red)){.bg-error\/10{background-color:color-mix(in oklab,var(--color-error)10%,transparent)}}.bg-info{background-color:var(--color-info)}.bg-primary{background-color:var(--color-primary)}.bg-primary-content\/20{background-color:var(--color-primary-content)}@supports (color:color-mix(in lab,red,red)){.bg-primary-content\/20{background-color:color-mix(in oklab,var(--color-primary-content)20%,transparent)}}.bg-primary\/10{background-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/10{background-color:color-mix(in oklab,var(--color-primary)10%,transparent)}}.bg-secondary{background-color:var(--color-secondary)}.bg-success,.bg-success\/10{background-color:var(--color-success)}@supports (color:color-mix(in lab,red,red)){.bg-success\/10{background-color:color-mix(in oklab,var(--color-success)10%,transparent)}}.bg-transparent{background-color:#0000}.bg-warning,.bg-warning\/5{background-color:var(--color-warning)}@supports (color:color-mix(in lab,red,red)){.bg-warning\/5{background-color:color-mix(in oklab,var(--color-warning)5%,transparent)}}.bg-warning\/10{background-color:var(--color-warning)}@supports (color:color-mix(in lab,red,red)){.bg-warning\/10{background-color:color-mix(in oklab,var(--color-warning)10%,transparent)}}.stroke-base-content\/10{stroke:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.stroke-base-content\/10{stroke:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.stroke-current{stroke:currentColor}.p-0{padding:calc(var(--spacing)*0)}.p-1\.5{padding:calc(var(--spacing)*1.5)}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-5{padding:calc(var(--spacing)*5)}.p-6{padding:calc(var(--spacing)*6)}.px-1{padding-inline:calc(var(--spacing)*1)}.px-1\.5{padding-inline:calc(var(--spacing)*1.5)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-2\.5{padding-inline:calc(var(--spacing)*2.5)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-0\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-2\.5{padding-block:calc(var(--spacing)*2.5)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-8{padding-block:calc(var(--spacing)*8)}.py-12{padding-block:calc(var(--spacing)*12)}.pt-3{padding-top:calc(var(--spacing)*3)}.pt-4{padding-top:calc(var(--spacing)*4)}.pr-4{padding-right:calc(var(--spacing)*4)}.pb-2{padding-bottom:calc(var(--spacing)*2)}.pl-3{padding-left:calc(var(--spacing)*3)}.pl-4{padding-left:calc(var(--spacing)*4)}.pl-6{padding-left:calc(var(--spacing)*6)}.pl-10{padding-left:calc(var(--spacing)*10)}.pl-12{padding-left:calc(var(--spacing)*12)}.text-center{text-align:center}.text-left{text-align:left}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-accent{color:var(--color-accent)}.text-base-content,.text-base-content\/20{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/20{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}.text-base-content\/30{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/30{color:color-mix(in oklab,var(--color-base-content)30%,transparent)}}.text-base-content\/40{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/40{color:color-mix(in oklab,var(--color-base-content)40%,transparent)}}.text-base-content\/50{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/50{color:color-mix(in oklab,var(--color-base-content)50%,transparent)}}.text-base-content\/60{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/60{color:color-mix(in oklab,var(--color-base-content)60%,transparent)}}.text-base-content\/70{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/70{color:color-mix(in oklab,var(--color-base-content)70%,transparent)}}.text-base-content\/80{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/80{color:color-mix(in oklab,var(--color-base-content)80%,transparent)}}.text-base-content\/90{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/90{color:color-mix(in oklab,var(--color-base-content)90%,transparent)}}.text-error{color:var(--color-error)}.text-error-content{color:var(--color-error-content)}.text-gray-400{color:var(--color-gray-400)}.text-green-400{color:var(--color-green-400)}.text-info{color:var(--color-info)}.text-info-content{color:var(--color-info-content)}.text-orange-400{color:var(--color-orange-400)}.text-pink-400{color:var(--color-pink-400)}.text-primary{color:var(--color-primary)}.text-primary-content{color:var(--color-primary-content)}.text-primary\/60{color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.text-primary\/60{color:color-mix(in oklab,var(--color-primary)60%,transparent)}}.text-primary\/70{color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.text-primary\/70{color:color-mix(in oklab,var(--color-primary)70%,transparent)}}.text-purple-400{color:var(--color-purple-400)}.text-secondary{color:var(--color-secondary)}.text-sky-400{color:var(--color-sky-400)}.text-success{color:var(--color-success)}.text-success-content{color:var(--color-success-content)}.text-violet-400{color:var(--color-violet-400)}.text-warning{color:var(--color-warning)}.text-warning-content{color:var(--color-warning-content)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.opacity-0{opacity:0}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-primary{--tw-ring-color:var(--color-primary)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}@layer daisyui.l1{.btn-ghost:not(.btn-active,:hover,:active:focus,:focus-visible,input:checked:not(.filter .btn)){--btn-shadow:"";--btn-bg:#0000;--btn-border:#0000;--btn-noise:none}.btn-ghost:not(.btn-active,:hover,:active:focus,:focus-visible,input:checked:not(.filter .btn)):not(:disabled,[disabled],.btn-disabled){--btn-fg:var(--btn-color,currentColor);outline-color:currentColor}@media(hover:none){.btn-ghost:not(.btn-active,:active,:focus-visible,input:checked:not(.filter .btn)):hover{--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color,currentColor);--btn-border:#0000;--btn-noise:none;outline-color:currentColor}}.btn-outline:not(.btn-active,:hover,:active:focus,:focus-visible,input:checked:not(.filter .btn),:disabled,[disabled],.btn-disabled){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}@media(hover:none){.btn-outline:not(.btn-active,:active,:focus-visible,input:checked:not(.filter .btn)):hover{--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}}}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.first\:mt-0:first-child{margin-top:calc(var(--spacing)*0)}@media(hover:hover){.hover\:scale-\[1\.02\]:hover{scale:1.02}.hover\:bg-base-200:hover{background-color:var(--color-base-200)}.hover\:bg-base-300:hover{background-color:var(--color-base-300)}.hover\:text-error:hover{color:var(--color-error)}.hover\:text-primary:hover{color:var(--color-primary)}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-sm:hover{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}@media(min-width:40rem){.sm\:block{display:block}}@media(min-width:48rem){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:64rem){.lg\:col-span-2{grid-column:span 2/span 2}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.\[\&\>\*\]\:h-full>*{height:100%}}:root{--layout-sidebar-width:256px}.dashboard-layout{background:var(--root-bg)}.dashboard-sidebar{background:var(--layout-sidebar-background);border-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.dashboard-sidebar{border-color:color-mix(in srgb,var(--color-base-content)8%,transparent)}}.dashboard-topbar{background:var(--layout-topbar-background);border-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.dashboard-topbar{border-color:color-mix(in srgb,var(--color-base-content)8%,transparent)}}.sidebar-header{border-bottom-style:var(--tw-border-style);padding-inline:calc(var(--spacing)*4);padding-block:calc(var(--spacing)*3);border-bottom-width:1px;border-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.sidebar-header{border-color:color-mix(in srgb,var(--color-base-content)6%,transparent)}}.sidebar-header-title{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.sidebar-header-title{color:color-mix(in srgb,var(--color-base-content)50%,transparent)}}.sidebar-section{padding-inline:calc(var(--spacing)*3);padding-block:calc(var(--spacing)*2)}.sidebar-section-title{margin-bottom:calc(var(--spacing)*2);padding-inline:calc(var(--spacing)*1);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.sidebar-section-title{color:color-mix(in srgb,var(--color-base-content)45%,transparent)}}.nav-item{cursor:pointer;align-items:center;gap:calc(var(--spacing)*2);border-radius:var(--radius-lg);padding-inline:calc(var(--spacing)*2.5);padding-block:calc(var(--spacing)*2);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;transition-duration:.15s;display:flex}.nav-item:hover:not(.active){background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.nav-item:hover:not(.active){background:color-mix(in srgb,var(--color-base-content)5%,transparent)}}.nav-item.active{background:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.nav-item.active{background:color-mix(in srgb,var(--color-primary)15%,transparent)}}.nav-item.active{box-shadow:inset 0 0 0 1px var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.nav-item.active{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-primary)30%,transparent)}}.memory-card{border-radius:var(--radius-lg);padding:calc(var(--spacing)*3);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;background:var(--color-base-content);transition-duration:.15s}@supports (color:color-mix(in lab,red,red)){.memory-card{background:color-mix(in srgb,var(--color-base-content)4%,transparent)}}.memory-card:hover{background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.memory-card:hover{background:color-mix(in srgb,var(--color-base-content)6%,transparent)}}.stats-card{border-radius:var(--radius-lg);padding:calc(var(--spacing)*4);background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.stats-card{background:color-mix(in srgb,var(--color-base-content)4%,transparent)}}.property-card{border-radius:var(--radius-lg);padding:calc(var(--spacing)*3);background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.property-card{background:color-mix(in srgb,var(--color-base-content)4%,transparent)}}.property-label{margin-bottom:calc(var(--spacing)*1);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--color-base-content);display:block}@supports (color:color-mix(in lab,red,red)){.property-label{color:color-mix(in srgb,var(--color-base-content)55%,transparent)}}.settings-collapse{border-radius:var(--radius-lg);background:var(--color-base-content);overflow:hidden}@supports (color:color-mix(in lab,red,red)){.settings-collapse{background:color-mix(in srgb,var(--color-base-content)3%,transparent)}}.settings-collapse .collapse-title{min-height:calc(var(--spacing)*0);padding-block:calc(var(--spacing)*2.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.status-indicator{align-items:center;gap:calc(var(--spacing)*1.5);padding-inline:calc(var(--spacing)*2);padding-block:calc(var(--spacing)*.5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);border-radius:3.40282e38px;display:inline-flex}.status-indicator.online{background:var(--color-success)}@supports (color:color-mix(in lab,red,red)){.status-indicator.online{background:color-mix(in srgb,var(--color-success)15%,transparent)}}.status-indicator.online{color:var(--color-success)}.status-indicator.offline{background:var(--color-error)}@supports (color:color-mix(in lab,red,red)){.status-indicator.offline{background:color-mix(in srgb,var(--color-error)15%,transparent)}}.status-indicator.offline{color:var(--color-error)}.status-indicator.processing{background:var(--color-warning)}@supports (color:color-mix(in lab,red,red)){.status-indicator.processing{background:color-mix(in srgb,var(--color-warning)15%,transparent)}}.status-indicator.processing{color:var(--color-warning)}@layer daisyui.l1.l2.l3{.search-input{cursor:text;border:var(--border)solid #0000;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--color-base-100);vertical-align:middle;white-space:nowrap;width:clamp(3rem,20rem,100%);height:var(--size);font-size:max(var(--font-size,.875rem),.875rem);touch-action:manipulation;border-color:var(--input-color);box-shadow:0 1px var(--input-color) inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1)) inset;border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.5rem;padding-inline:.75rem;display:inline-flex;position:relative}@supports (color:color-mix(in lab,red,red)){.search-input{box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000) inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1)) inset}}.search-input{--size:calc(var(--size-field,.25rem)*10);--input-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.search-input{--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000)}}.search-input:where(input){display:inline-flex}.search-input :where(input){-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#0000;border:none;width:100%;height:100%;display:inline-flex}.search-input :where(input):focus,.search-input :where(input):focus-within{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.search-input :where(input):focus,.search-input :where(input):focus-within{outline-offset:2px;outline:2px solid #0000}}.search-input :where(input[type=url]),.search-input :where(input[type=email]){direction:ltr}.search-input :where(input[type=date]){display:inline-flex}.search-input:focus,.search-input:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px var(--input-color)}@supports (color:color-mix(in lab,red,red)){.search-input:focus,.search-input:focus-within{box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)}}.search-input:focus,.search-input:focus-within{outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}@media(pointer:coarse){@supports (-webkit-touch-callout:none){.search-input:focus,.search-input:focus-within{--font-size:1rem}}}.search-input:has(>input[disabled]),.search-input:is(:disabled,[disabled]),fieldset:disabled .search-input{cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.search-input:has(>input[disabled]),.search-input:is(:disabled,[disabled]),fieldset:disabled .search-input{color:color-mix(in oklab,var(--color-base-content)40%,transparent)}}:is(.search-input:has(>input[disabled]),.search-input:is(:disabled,[disabled]),fieldset:disabled .search-input)::placeholder{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){:is(.search-input:has(>input[disabled]),.search-input:is(:disabled,[disabled]),fieldset:disabled .search-input)::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}.search-input:has(>input[disabled]),.search-input:is(:disabled,[disabled]),fieldset:disabled .search-input{box-shadow:none}.search-input:has(>input[disabled])>input[disabled]{cursor:not-allowed}.search-input::-webkit-date-and-time-value{text-align:inherit}.search-input[type=number]::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}.search-input::-webkit-calendar-picker-indicator{position:absolute;inset-inline-end:.75em}.search-input:has(>input[type=date]) :where(input[type=date]){webkit-appearance:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex}.search-input:has(>input[type=date]) input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;width:1em;height:1em;position:absolute;inset-inline-end:.75em}}@layer daisyui.l1.l2{.search-input{--size:calc(var(--size-field,.25rem)*8);font-size:max(var(--font-size,.75rem),.75rem)}.search-input[type=number]::-webkit-inner-spin-button{margin-block:-.5rem;margin-inline-end:-.75rem}.badge-observation{--badge-color:var(--color-info);--badge-fg:var(--color-info-content)}.badge-summary{--badge-color:var(--color-warning);--badge-fg:var(--color-warning-content)}.badge-prompt{--badge-color:var(--color-secondary);--badge-fg:var(--color-secondary-content)}.badge-bugfix{--badge-color:var(--color-error);--badge-fg:var(--color-error-content)}.badge-feature{--badge-color:var(--color-success);--badge-fg:var(--color-success-content)}.badge-refactor{--badge-color:var(--color-accent);--badge-fg:var(--color-accent-content)}.badge-discovery{--badge-color:var(--color-info);--badge-fg:var(--color-info-content)}.badge-decision{--badge-color:var(--color-warning);--badge-fg:var(--color-warning-content)}.badge-change{--badge-color:var(--color-secondary);--badge-fg:var(--color-secondary-content)}}.search-input{border-style:var(--tw-border-style);background:var(--color-base-content);border-width:1px;width:100%}@supports (color:color-mix(in lab,red,red)){.search-input{background:color-mix(in srgb,var(--color-base-content)4%,transparent)}}.search-input{border-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.search-input{border-color:color-mix(in srgb,var(--color-base-content)10%,transparent)}}.search-input:focus{border-color:var(--color-primary);background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.search-input:focus{background:color-mix(in srgb,var(--color-base-content)6%,transparent)}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--color-base-content)15%,transparent)}}::-webkit-scrollbar-thumb{border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--color-base-content)25%,transparent)}}@keyframes rating{0%,40%{filter:brightness(1.05)contrast(1.05);scale:1.1}}@keyframes dropdown{0%{opacity:0}}@keyframes radio{0%{padding:5px}50%{padding:3px}}@keyframes toast{0%{opacity:0;scale:.9}to{opacity:1;scale:1}}@keyframes rotator{89.9999%,to{--first-item-position:0 0%}90%,99.9999%{--first-item-position:0 calc(var(--items)*100%)}to{translate:0 -100%}}@keyframes skeleton{0%{background-position:150%}to{background-position:-50%}}@keyframes menu{0%{opacity:0}}@keyframes progress{50%{background-position-x:-115%}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}} +/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-orange-400:oklch(75% .183 55.934);--color-green-400:oklch(79.2% .209 151.711);--color-sky-400:oklch(74.6% .16 232.661);--color-violet-400:oklch(70.2% .183 293.541);--color-purple-400:oklch(71.4% .203 305.504);--color-pink-400:oklch(71.8% .202 349.761);--color-gray-400:oklch(70.7% .022 261.325);--color-black:#000;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-xl:36rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-5xl:3rem;--text-5xl--line-height:1;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--tracking-wider:.05em;--leading-relaxed:1.625;--radius-md:.375rem;--radius-lg:.5rem;--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}:where(:root),:root:has(input.theme-controller[value=light]:checked),[data-theme=light]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(98% 0 0);--color-base-300:oklch(95% 0 0);--color-base-content:oklch(21% .006 285.885);--color-primary:oklch(45% .24 277.023);--color-primary-content:oklch(93% .034 272.788);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}@media(prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--color-base-100:oklch(25.33% .016 252.42);--color-base-200:oklch(23.26% .014 253.1);--color-base-300:oklch(21.15% .012 254.09);--color-base-content:oklch(97.807% .029 256.847);--color-primary:oklch(58% .233 277.117);--color-primary-content:oklch(96% .018 272.314);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}}:root:has(input.theme-controller[value=light]:checked),[data-theme=light]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(98% 0 0);--color-base-300:oklch(95% 0 0);--color-base-content:oklch(21% .006 285.885);--color-primary:oklch(45% .24 277.023);--color-primary-content:oklch(93% .034 272.788);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}:root:has(input.theme-controller[value=dark]:checked),[data-theme=dark]{color-scheme:dark;--color-base-100:oklch(25.33% .016 252.42);--color-base-200:oklch(23.26% .014 253.1);--color-base-300:oklch(21.15% .012 254.09);--color-base-content:oklch(97.807% .029 256.847);--color-primary:oklch(58% .233 277.117);--color-primary-content:oklch(96% .018 272.314);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}:root{--fx-noise:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.34' numOctaves='4' stitchTiles='stitch'%3E%3C/feTurbulence%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23a)' opacity='0.2'%3E%3C/rect%3E%3C/svg%3E");scrollbar-color:currentColor #0000}@supports (color:color-mix(in lab,red,red)){:root{scrollbar-color:color-mix(in oklch,currentColor 35%,#0000)#0000}}:root:not(span){overflow:var(--page-overflow)}:root,[data-theme]{background:var(--page-scroll-bg,var(--root-bg));color:var(--color-base-content)}:where(:root,[data-theme]){--root-bg:var(--color-base-100)}@media(prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--root-bg:#121212;--layout-sidebar-background:#1a1a1a;--layout-topbar-background:#1a1a1a;--color-base-100:#1a1a1a;--color-base-200:#262626;--color-base-300:#333;--color-base-content:#fafafa;--color-primary:#5b9ed9;--color-primary-content:#fff;--color-secondary:#a855f7;--color-secondary-content:#fff;--color-accent:#5b9ed9;--color-accent-content:#fff;--color-neutral:#d1d5db;--color-neutral-content:#1e2832;--color-info:#0ea5e9;--color-info-content:#fff;--color-success:#22c55e;--color-success-content:#fff;--color-warning:#f59e0b;--color-warning-content:#150a00;--color-error:#ef4444;--color-error-content:#fff;--radius-field:.375rem;--radius-box:.5rem;--rounded-box:.5rem;--radius-selector:.375rem;--border:1px}}:where(:root),:root:has(input.theme-controller[value=claude-pilot]:checked),[data-theme=claude-pilot]{color-scheme:dark;--root-bg:#121212;--layout-sidebar-background:#1a1a1a;--layout-topbar-background:#1a1a1a;--color-base-100:#1a1a1a;--color-base-200:#262626;--color-base-300:#333;--color-base-content:#fafafa;--color-primary:#5b9ed9;--color-primary-content:#fff;--color-secondary:#a855f7;--color-secondary-content:#fff;--color-accent:#5b9ed9;--color-accent-content:#fff;--color-neutral:#d1d5db;--color-neutral-content:#1e2832;--color-info:#0ea5e9;--color-info-content:#fff;--color-success:#22c55e;--color-success-content:#fff;--color-warning:#f59e0b;--color-warning-content:#150a00;--color-error:#ef4444;--color-error-content:#fff;--radius-field:.375rem;--radius-box:.5rem;--rounded-box:.5rem;--radius-selector:.375rem;--border:1px}:root:has(input.theme-controller[value=claude-pilot-light]:checked),[data-theme=claude-pilot-light]{color-scheme:light;--root-bg:#f5f5f5;--layout-sidebar-background:#fff;--layout-topbar-background:#fff;--color-base-100:#fff;--color-base-200:#f5f5f5;--color-base-300:#e5e5e5;--color-base-content:#171717;--color-primary:#4a90c7;--color-primary-content:#fff;--color-secondary:#9333ea;--color-secondary-content:#fff;--color-accent:#4a90c7;--color-accent-content:#fff;--color-neutral:#1f2937;--color-neutral-content:#fafcff;--color-info:#0284c7;--color-info-content:#fff;--color-success:#16a34a;--color-success-content:#fff;--color-warning:#d97706;--color-warning-content:#150a00;--color-error:#dc2626;--color-error-content:#fff;--radius-field:.375rem;--radius-box:.5rem;--rounded-box:.5rem;--radius-selector:.375rem;--border:1px}}@layer components;@layer utilities{@layer daisyui.l1.l2.l3{.diff{webkit-user-select:none;-webkit-user-select:none;user-select:none;direction:ltr;grid-template-rows:1fr 1.8rem 1fr;grid-template-columns:auto 1fr;width:100%;display:grid;position:relative;overflow:hidden;container-type:inline-size}.diff:focus-visible,.diff:has(.diff-item-1:focus-visible){outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px;outline-color:var(--color-base-content)}.diff:focus-visible .diff-resizer{min-width:95cqi;max-width:95cqi}.diff:has(.diff-item-1:focus-visible){outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px}.diff:has(.diff-item-1:focus-visible) .diff-resizer{min-width:5cqi;max-width:5cqi}@supports (-webkit-overflow-scrolling:touch) and (overflow:-webkit-paged-x){.diff:focus .diff-resizer{min-width:5cqi;max-width:5cqi}.diff:has(.diff-item-1:focus) .diff-resizer{min-width:95cqi;max-width:95cqi}}.modal{pointer-events:none;visibility:hidden;width:100%;max-width:none;height:100%;max-height:none;color:inherit;transition:visibility .3s allow-discrete,background-color .3s ease-out,opacity .1s ease-out;overscroll-behavior:contain;z-index:999;scrollbar-gutter:auto;background-color:#0000;place-items:center;margin:0;padding:0;display:grid;position:fixed;top:0;right:0;bottom:0;left:0;overflow:clip}.modal::backdrop{display:none}.tooltip{--tt-bg:var(--color-neutral);--tt-off: calc(100% + .5rem) ;--tt-tail: calc(100% + 1px + .25rem) ;display:inline-block;position:relative}.tooltip>.tooltip-content,.tooltip[data-tip]:before{border-radius:var(--radius-field);text-align:center;white-space:normal;max-width:20rem;color:var(--color-neutral-content);opacity:0;background-color:var(--tt-bg);pointer-events:none;z-index:2;--tw-content:attr(data-tip);content:var(--tw-content);width:max-content;padding-block:.25rem;padding-inline:.5rem;font-size:.875rem;line-height:1.25;position:absolute}.tooltip:after{opacity:0;background-color:var(--tt-bg);content:"";pointer-events:none;--mask-tooltip:url("data:image/svg+xml,%3Csvg width='10' height='4' viewBox='0 0 8 4' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.500009 1C3.5 1 3.00001 4 5.00001 4C7 4 6.5 1 9.5 1C10 1 10 0.499897 10 0H0C-1.99338e-08 0.5 0 1 0.500009 1Z' fill='black'/%3E%3C/svg%3E%0A");width:.625rem;height:.25rem;-webkit-mask-position:-1px 0;mask-position:-1px 0;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-image:var(--mask-tooltip);mask-image:var(--mask-tooltip);display:block;position:absolute}@media(prefers-reduced-motion:no-preference){.tooltip>.tooltip-content,.tooltip[data-tip]:before,.tooltip:after{transition:opacity .2s cubic-bezier(.4,0,.2,1) 75ms,transform .2s cubic-bezier(.4,0,.2,1) 75ms}}:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))>.tooltip-content,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))[data-tip]:before,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible)):after{opacity:1;--tt-pos:0rem}@media(prefers-reduced-motion:no-preference){:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))>.tooltip-content,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))[data-tip]:before,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible)):after{transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1)}}.tab{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:center;webkit-user-select:none;-webkit-user-select:none;user-select:none;flex-wrap:wrap;justify-content:center;align-items:center;display:inline-flex;position:relative}@media(hover:hover){.tab:hover{color:var(--color-base-content)}}.tab{--tab-p:.75rem;--tab-bg:var(--color-base-100);--tab-border-color:var(--color-base-300);--tab-radius-ss:0;--tab-radius-se:0;--tab-radius-es:0;--tab-radius-ee:0;--tab-order:0;--tab-radius-min:calc(.75rem - var(--border));--tab-radius-limit:min(var(--radius-field),var(--tab-radius-min));--tab-radius-grad:#0000 calc(69% - var(--border)),var(--tab-border-color)calc(69% - var(--border) + .25px),var(--tab-border-color)69%,var(--tab-bg) calc(69% + .25px) ;order:var(--tab-order);height:var(--tab-height);padding-inline:var(--tab-p);border-color:#0000;font-size:.875rem}.tab:is(input[type=radio]){min-width:fit-content}.tab:is(input[type=radio]):after{--tw-content:attr(aria-label);content:var(--tw-content)}.tab:is(label){position:relative}.tab:is(label) input{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;opacity:0;position:absolute;top:0;right:0;bottom:0;left:0}:is(.tab:checked,.tab:is(label:has(:checked)),.tab:is(.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]))+.tab-content{display:block}.tab:not(:checked,label:has(:checked),:hover,.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]){color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.tab:not(:checked,label:has(:checked),:hover,.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]){color:color-mix(in oklab,var(--color-base-content)50%,transparent)}}.tab:not(input):empty{cursor:default;flex-grow:1}.tab:focus{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.tab:focus{outline-offset:2px;outline:2px solid #0000}}.tab:focus-visible,.tab:is(label:has(:checked:focus-visible)){outline-offset:-5px;outline:2px solid}.tab[disabled]{pointer-events:none;opacity:.4}.menu{--menu-active-fg:var(--color-neutral-content);--menu-active-bg:var(--color-neutral);flex-flow:column wrap;width:fit-content;padding:.5rem;font-size:.875rem;display:flex}.menu :where(li ul){white-space:nowrap;margin-inline-start:1rem;padding-inline-start:.5rem;position:relative}.menu :where(li ul):before{background-color:var(--color-base-content);opacity:.1;width:var(--border);content:"";inset-inline-start:0;position:absolute;top:.75rem;bottom:.75rem}.menu :where(li>.menu-dropdown:not(.menu-dropdown-show)){display:none}.menu :where(li:not(.menu-title)>:not(ul,details,.menu-title,.btn)),.menu :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);text-align:start;text-wrap:balance;-webkit-user-select:none;user-select:none;grid-auto-columns:minmax(auto,max-content) auto max-content;grid-auto-flow:column;align-content:flex-start;align-items:center;gap:.5rem;padding-block:.375rem;padding-inline:.75rem;transition-property:color,background-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:grid}.menu :where(li>details>summary){--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.menu :where(li>details>summary){outline-offset:2px;outline:2px solid #0000}}.menu :where(li>details>summary)::-webkit-details-marker{display:none}:is(.menu :where(li>details>summary),.menu :where(li>.menu-dropdown-toggle)):after{content:"";transform-origin:50%;pointer-events:none;justify-self:flex-end;width:.375rem;height:.375rem;transition-property:rotate,translate;transition-duration:.2s;display:block;translate:0 -1px;rotate:-135deg;box-shadow:inset 2px 2px}.menu details{interpolate-size:allow-keywords;overflow:hidden}.menu details::details-content{block-size:0}@media(prefers-reduced-motion:no-preference){.menu details::details-content{transition-behavior:allow-discrete;transition-property:block-size,content-visibility;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1)}}.menu details[open]::details-content{block-size:auto}.menu :where(li>details[open]>summary):after,.menu :where(li>.menu-dropdown-toggle.menu-dropdown-show):after{translate:0 1px;rotate:45deg}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{cursor:pointer;background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{background-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{color:var(--color-base-content);--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{outline-offset:2px;outline:2px solid #0000}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){cursor:pointer;background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){background-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){outline-offset:2px;outline:2px solid #0000}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){box-shadow:inset 0 1px #00000003,inset 0 -1px #ffffff03}.menu :where(li:empty){background-color:var(--color-base-content);opacity:.1;height:1px;margin:.5rem 1rem}.menu :where(li){flex-flow:column wrap;flex-shrink:0;align-items:stretch;display:flex;position:relative}.menu :where(li) .badge{justify-self:flex-end}.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active{outline-offset:2px;outline:2px solid #0000}}.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active{color:var(--menu-active-fg);background-color:var(--menu-active-bg);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise)}:is(.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active):not(:is(.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active):active){box-shadow:0 2px calc(var(--depth)*3px) -2px var(--menu-active-bg)}.menu :where(li).menu-disabled{pointer-events:none;color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.menu :where(li).menu-disabled{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}.menu .dropdown:focus-within .menu-dropdown-toggle:after{translate:0 1px;rotate:45deg}.menu .dropdown-content{margin-top:.5rem;padding:.5rem}.menu .dropdown-content:before{display:none}.dropdown{position-area:var(--anchor-v,bottom)var(--anchor-h,span-right);display:inline-block;position:relative}.dropdown>:not(:has(~[class*=dropdown-content])):focus{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.dropdown>:not(:has(~[class*=dropdown-content])):focus{outline-offset:2px;outline:2px solid #0000}}.dropdown .dropdown-content{position:absolute}.dropdown.dropdown-close .dropdown-content,.dropdown:not(details,.dropdown-open,.dropdown-hover:hover,:focus-within) .dropdown-content,.dropdown.dropdown-hover:not(:hover) [tabindex]:first-child:focus:not(:focus-visible)~.dropdown-content{transform-origin:top;opacity:0;display:none;scale:95%}.dropdown[popover],.dropdown .dropdown-content{z-index:999}@media(prefers-reduced-motion:no-preference){.dropdown[popover],.dropdown .dropdown-content{transition-behavior:allow-discrete;transition-property:opacity,scale,display;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);animation:.2s dropdown}}@starting-style{.dropdown[popover],.dropdown .dropdown-content{opacity:0;scale:95%}}:is(.dropdown:not(.dropdown-close).dropdown-open,.dropdown:not(.dropdown-close):not(.dropdown-hover):focus,.dropdown:not(.dropdown-close):focus-within)>[tabindex]:first-child{pointer-events:none}:is(.dropdown:not(.dropdown-close).dropdown-open,.dropdown:not(.dropdown-close):not(.dropdown-hover):focus,.dropdown:not(.dropdown-close):focus-within) .dropdown-content,.dropdown:not(.dropdown-close).dropdown-hover:hover .dropdown-content{opacity:1;scale:100%}.dropdown:is(details) summary::-webkit-details-marker{display:none}.dropdown:where([popover]){background:0 0}.dropdown[popover]{color:inherit;position:fixed}@supports not (position-area:bottom){.dropdown[popover]{margin:auto}.dropdown[popover].dropdown-close{transform-origin:top;opacity:0;display:none;scale:95%}.dropdown[popover].dropdown-open:not(:popover-open){transform-origin:top;opacity:0;display:none;scale:95%}.dropdown[popover]::backdrop{background-color:oklab(0% none none/.3)}}:is(.dropdown[popover].dropdown-close,.dropdown[popover]:not(.dropdown-open,:popover-open)){transform-origin:top;opacity:0;display:none;scale:95%}:where(.btn){width:unset}.btn{cursor:pointer;text-align:center;vertical-align:middle;outline-offset:2px;webkit-user-select:none;-webkit-user-select:none;user-select:none;padding-inline:var(--btn-p);color:var(--btn-fg);--tw-prose-links:var(--btn-fg);height:var(--size);font-size:var(--fontsize,.875rem);outline-color:var(--btn-color,var(--color-base-content));background-color:var(--btn-bg);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--btn-noise);border-width:var(--border);border-style:solid;border-color:var(--btn-border);text-shadow:0 .5px oklch(100% 0 0/calc(var(--depth)*.15));touch-action:manipulation;box-shadow:0 .5px 0 .5px oklch(100% 0 0/calc(var(--depth)*6%)) inset,var(--btn-shadow);--size:calc(var(--size-field,.25rem)*10);--btn-bg:var(--btn-color,var(--color-base-200));--btn-fg:var(--color-base-content);--btn-p:1rem;--btn-border:var(--btn-bg);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-wrap:nowrap;flex-shrink:0;justify-content:center;align-items:center;gap:.375rem;font-weight:600;transition-property:color,background-color,border-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:inline-flex}@supports (color:color-mix(in lab,red,red)){.btn{--btn-border:color-mix(in oklab,var(--btn-bg),#000 calc(var(--depth)*5%))}}.btn{--btn-shadow:0 3px 2px -2px var(--btn-bg),0 4px 3px -2px var(--btn-bg)}@supports (color:color-mix(in lab,red,red)){.btn{--btn-shadow:0 3px 2px -2px color-mix(in oklab,var(--btn-bg)calc(var(--depth)*30%),#0000),0 4px 3px -2px color-mix(in oklab,var(--btn-bg)calc(var(--depth)*30%),#0000)}}.btn{--btn-noise:var(--fx-noise)}@media(hover:hover){.btn:hover{--btn-bg:var(--btn-color,var(--color-base-200))}@supports (color:color-mix(in lab,red,red)){.btn:hover{--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%)}}}.btn:focus-visible,.btn:has(:focus-visible){isolation:isolate;outline-width:2px;outline-style:solid}.btn:active:not(.btn-active){--btn-bg:var(--btn-color,var(--color-base-200));translate:0 .5px}@supports (color:color-mix(in lab,red,red)){.btn:active:not(.btn-active){--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 5%)}}.btn:active:not(.btn-active){--btn-border:var(--btn-color,var(--color-base-200))}@supports (color:color-mix(in lab,red,red)){.btn:active:not(.btn-active){--btn-border:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%)}}.btn:active:not(.btn-active){--btn-shadow:0 0 0 0 oklch(0% 0 0/0),0 0 0 0 oklch(0% 0 0/0)}.btn:is(input[type=checkbox],input[type=radio]){-webkit-appearance:none;-moz-appearance:none;appearance:none}.btn:is(input[type=checkbox],input[type=radio])[aria-label]:after{--tw-content:attr(aria-label);content:var(--tw-content)}.btn:where(input:checked:not(.filter .btn)){--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content);isolation:isolate}.loading{pointer-events:none;aspect-ratio:1;vertical-align:middle;width:calc(var(--size-selector,.25rem)*6);background-color:currentColor;display:inline-block;-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:100%;mask-size:100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.collapse{border-radius:var(--radius-box,1rem);isolation:isolate;grid-template-rows:max-content 0fr;grid-template-columns:minmax(0,1fr);width:100%;display:grid;position:relative;overflow:hidden}@media(prefers-reduced-motion:no-preference){.collapse{transition:grid-template-rows .2s}}.collapse>input:is([type=checkbox],[type=radio]){-webkit-appearance:none;-moz-appearance:none;appearance:none;opacity:0;z-index:1;grid-row-start:1;grid-column-start:1;width:100%;min-height:1lh;padding:1rem;padding-inline-end:3rem;transition:background-color .2s ease-out}.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close)),.collapse:not(.collapse-close):has(>input:is([type=checkbox],[type=radio]):checked){grid-template-rows:max-content 1fr}.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close))>.collapse-content,.collapse:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){content-visibility:visible;min-height:fit-content}@supports not (content-visibility:visible){.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close))>.collapse-content,.collapse:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){visibility:visible}}.collapse:focus-visible,.collapse:has(>input:is([type=checkbox],[type=radio]):focus-visible),.collapse:has(summary:focus-visible){outline-color:var(--color-base-content);outline-offset:2px;outline-width:2px;outline-style:solid}.collapse:not(.collapse-close)>input[type=checkbox],.collapse:not(.collapse-close)>input[type=radio]:not(:checked),.collapse:not(.collapse-close)>.collapse-title{cursor:pointer}:is(.collapse[tabindex]:focus:not(.collapse-close,.collapse[open]),.collapse[tabindex]:focus-within:not(.collapse-close,.collapse[open]))>.collapse-title{cursor:unset}.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close))>:where(.collapse-content),.collapse:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){padding-bottom:1rem}.collapse:is(details){width:100%}@media(prefers-reduced-motion:no-preference){.collapse:is(details)::details-content{transition:content-visibility .2s allow-discrete,visibility .2s allow-discrete,min-height .2s ease-out allow-discrete,padding .1s ease-out 20ms,background-color .2s ease-out,height .2s;interpolate-size:allow-keywords;height:0}.collapse:is(details):where([open])::details-content{height:auto}}.collapse:is(details) summary{display:block;position:relative}.collapse:is(details) summary::-webkit-details-marker{display:none}.collapse:is(details)>.collapse-content{content-visibility:visible}.collapse:is(details) summary{outline:none}.list{flex-direction:column;font-size:.875rem;display:flex}.list .list-row{--list-grid-cols:minmax(0,auto)1fr;border-radius:var(--radius-box);word-break:break-word;grid-auto-flow:column;grid-template-columns:var(--list-grid-cols);gap:1rem;padding:1rem;display:grid;position:relative}:is(.list>:not(:last-child).list-row,.list>:not(:last-child) .list-row):after{content:"";border-bottom:var(--border)solid;inset-inline:var(--radius-box);border-color:var(--color-base-content);position:absolute;bottom:0}@supports (color:color-mix(in lab,red,red)){:is(.list>:not(:last-child).list-row,.list>:not(:last-child) .list-row):after{border-color:color-mix(in oklab,var(--color-base-content)5%,transparent)}}.toast{translate:var(--toast-x,0)var(--toast-y,0);inset-inline:auto 1rem;background-color:#0000;flex-direction:column;gap:.5rem;width:max-content;max-width:calc(100vw - 2rem);display:flex;position:fixed;top:auto;bottom:1rem}@media(prefers-reduced-motion:no-preference){.toast>*{animation:.25s ease-out toast}}.toggle{border:var(--border)solid currentColor;color:var(--input-color);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;vertical-align:middle;webkit-user-select:none;-webkit-user-select:none;user-select:none;--radius-selector-max:calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));border-radius:calc(var(--radius-selector) + min(var(--toggle-p),var(--radius-selector-max)) + min(var(--border),var(--radius-selector-max)));padding:var(--toggle-p);flex-shrink:0;grid-template-columns:0fr 1fr 1fr;place-content:center;display:inline-grid;position:relative;box-shadow:inset 0 1px}@supports (color:color-mix(in lab,red,red)){.toggle{box-shadow:0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000) inset}}.toggle{--input-color:var(--color-base-content);transition:color .3s,grid-template-columns .2s}@supports (color:color-mix(in lab,red,red)){.toggle{--input-color:color-mix(in oklab,var(--color-base-content)50%,#0000)}}.toggle{--toggle-p:calc(var(--size)*.125);--size:calc(var(--size-selector,.25rem)*6);width:calc((var(--size)*2) - (var(--border) + var(--toggle-p))*2);height:var(--size)}.toggle>*{z-index:1;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#0000;border:none;grid-column:2/span 1;grid-row-start:1;height:100%;padding:.125rem;transition:opacity .2s,rotate .4s}.toggle>:focus{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.toggle>:focus{outline-offset:2px;outline:2px solid #0000}}.toggle>:nth-child(2){color:var(--color-base-100);rotate:none}.toggle>:nth-child(3){color:var(--color-base-100);opacity:0;rotate:-15deg}.toggle:has(:checked)>:nth-child(2){opacity:0;rotate:15deg}.toggle:has(:checked)>:nth-child(3){opacity:1;rotate:none}.toggle:before{aspect-ratio:1;border-radius:var(--radius-selector);--tw-content:"";content:var(--tw-content);width:100%;height:100%;box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1)) inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1)) inset,0 1px currentColor;background-color:currentColor;grid-row-start:1;grid-column-start:2;transition:background-color .1s,translate .2s,inset-inline-start .2s;position:relative;inset-inline-start:0;translate:0}@supports (color:color-mix(in lab,red,red)){.toggle:before{box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1)) inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1)) inset,0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000)}}.toggle:before{background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise)}@media(forced-colors:active){.toggle:before{outline-style:var(--tw-outline-style);outline-offset:-1px;outline-width:1px}}@media print{.toggle:before{outline-offset:-1rem;outline:.25rem solid}}.toggle:focus-visible,.toggle:has(:focus-visible){outline-offset:2px;outline:2px solid}.toggle:checked,.toggle[aria-checked=true],.toggle:has(>input:checked){background-color:var(--color-base-100);--input-color:var(--color-base-content);grid-template-columns:1fr 1fr 0fr}:is(.toggle:checked,.toggle[aria-checked=true],.toggle:has(>input:checked)):before{background-color:currentColor}@starting-style{:is(.toggle:checked,.toggle[aria-checked=true],.toggle:has(>input:checked)):before{opacity:0}}.toggle:indeterminate{grid-template-columns:.5fr 1fr .5fr}.toggle:disabled{cursor:not-allowed;opacity:.3}.toggle:disabled:before{border:var(--border)solid currentColor;background-color:#0000}.input{cursor:text;border:var(--border)solid #0000;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--color-base-100);vertical-align:middle;white-space:nowrap;width:clamp(3rem,20rem,100%);height:var(--size);font-size:max(var(--font-size,.875rem),.875rem);touch-action:manipulation;border-color:var(--input-color);box-shadow:0 1px var(--input-color) inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1)) inset;border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.5rem;padding-inline:.75rem;display:inline-flex;position:relative}@supports (color:color-mix(in lab,red,red)){.input{box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000) inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1)) inset}}.input{--size:calc(var(--size-field,.25rem)*10);--input-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.input{--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000)}}.input:where(input){display:inline-flex}.input :where(input){-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#0000;border:none;width:100%;height:100%;display:inline-flex}.input :where(input):focus,.input :where(input):focus-within{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.input :where(input):focus,.input :where(input):focus-within{outline-offset:2px;outline:2px solid #0000}}.input :where(input[type=url]),.input :where(input[type=email]){direction:ltr}.input :where(input[type=date]){display:inline-flex}.input:focus,.input:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px var(--input-color)}@supports (color:color-mix(in lab,red,red)){.input:focus,.input:focus-within{box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)}}.input:focus,.input:focus-within{outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}@media(pointer:coarse){@supports (-webkit-touch-callout:none){.input:focus,.input:focus-within{--font-size:1rem}}}.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input{cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input{color:color-mix(in oklab,var(--color-base-content)40%,transparent)}}:is(.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input)::placeholder{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){:is(.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input)::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input{box-shadow:none}.input:has(>input[disabled])>input[disabled]{cursor:not-allowed}.input::-webkit-date-and-time-value{text-align:inherit}.input[type=number]::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}.input::-webkit-calendar-picker-indicator{position:absolute;inset-inline-end:.75em}.input:has(>input[type=date]) :where(input[type=date]){webkit-appearance:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex}.input:has(>input[type=date]) input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;width:1em;height:1em;position:absolute;inset-inline-end:.75em}.indicator{width:max-content;display:inline-flex;position:relative}.indicator :where(.indicator-item){z-index:1;white-space:nowrap;top:var(--indicator-t,0);bottom:var(--indicator-b,auto);left:var(--indicator-s,auto);right:var(--indicator-e,0);translate:var(--indicator-x,50%)var(--indicator-y,-50%);position:absolute}.table{border-collapse:separate;--tw-border-spacing-x: 0rem ;--tw-border-spacing-y: 0rem ;width:100%;border-spacing:var(--tw-border-spacing-x)var(--tw-border-spacing-y);border-radius:var(--radius-box);text-align:left;font-size:.875rem;position:relative}.table:where(:dir(rtl),[dir=rtl],[dir=rtl] *){text-align:right}@media(hover:hover){:is(.table tr.row-hover,.table tr.row-hover:nth-child(2n)):hover{background-color:var(--color-base-200)}}.table :where(th,td){vertical-align:middle;padding-block:.75rem;padding-inline:1rem}.table :where(thead,tfoot){white-space:nowrap;color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.table :where(thead,tfoot){color:color-mix(in oklab,var(--color-base-content)60%,transparent)}}.table :where(thead,tfoot){font-size:.875rem;font-weight:600}.table :where(tfoot tr:first-child :is(td,th)){border-top:var(--border)solid var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.table :where(tfoot tr:first-child :is(td,th)){border-top:var(--border)solid color-mix(in oklch,var(--color-base-content)5%,#0000)}}.table :where(.table-pin-rows thead tr){z-index:1;background-color:var(--color-base-100);position:sticky;top:0}.table :where(.table-pin-rows tfoot tr){z-index:1;background-color:var(--color-base-100);position:sticky;bottom:0}.table :where(.table-pin-cols tr th){background-color:var(--color-base-100);position:sticky;left:0;right:0}.table :where(thead tr :is(td,th),tbody tr:not(:last-child) :is(td,th)){border-bottom:var(--border)solid var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.table :where(thead tr :is(td,th),tbody tr:not(:last-child) :is(td,th)){border-bottom:var(--border)solid color-mix(in oklch,var(--color-base-content)5%,#0000)}}.select{border:var(--border)solid #0000;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--color-base-100);vertical-align:middle;width:clamp(3rem,20rem,100%);height:var(--size);touch-action:manipulation;white-space:nowrap;text-overflow:ellipsis;box-shadow:0 1px var(--input-color) inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1)) inset;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 20px) calc(1px + 50%),calc(100% - 16.1px) calc(1px + 50%);background-repeat:no-repeat;background-size:4px 4px,4px 4px;border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.375rem;padding-inline:.75rem 1.75rem;font-size:.875rem;display:inline-flex;position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.select{box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000) inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1)) inset}}.select{border-color:var(--input-color);--input-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.select{--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000)}}.select{--size:calc(var(--size-field,.25rem)*10)}[dir=rtl] .select{background-position:12px calc(1px + 50%),16px calc(1px + 50%)}[dir=rtl] .select::picker(select){translate:.5rem}[dir=rtl] .select select::picker(select){translate:.5rem}.select[multiple]{background-image:none;height:auto;padding-block:.75rem;padding-inline-end:.75rem;overflow:auto}.select select{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:calc(100% + 2.75rem);height:calc(100% - calc(var(--border)*2));background:inherit;border-radius:inherit;border-style:none;align-items:center;margin-inline:-.75rem -1.75rem;padding-inline:.75rem 1.75rem}.select select:focus,.select select:focus-within{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.select select:focus,.select select:focus-within{outline-offset:2px;outline:2px solid #0000}}.select select:not(:last-child){background-image:none;margin-inline-end:-1.375rem}.select:focus,.select:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px var(--input-color)}@supports (color:color-mix(in lab,red,red)){.select:focus,.select:focus-within{box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)}}.select:focus,.select:focus-within{outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select{cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select{color:color-mix(in oklab,var(--color-base-content)40%,transparent)}}:is(.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select)::placeholder{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){:is(.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select)::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}.select:has(>select[disabled])>select[disabled]{cursor:not-allowed}@supports (appearance:base-select){.select,.select select{-webkit-appearance:base-select;-moz-appearance:base-select;appearance:base-select}:is(.select,.select select)::picker(select){-webkit-appearance:base-select;-moz-appearance:base-select;appearance:base-select}}:is(.select,.select select)::picker(select){color:inherit;border:var(--border)solid var(--color-base-200);border-radius:var(--radius-box);background-color:inherit;max-height:min(24rem,70dvh);box-shadow:0 2px calc(var(--depth)*3px) -2px #0003;box-shadow:0 20px 25px -5px rgb(0 0 0/calc(var(--depth)*.1)),0 8px 10px -6px rgb(0 0 0/calc(var(--depth)*.1));margin-block:.5rem;margin-inline:.5rem;padding:.5rem;translate:-.5rem}:is(.select,.select select)::picker-icon{display:none}:is(.select,.select select) optgroup{padding-top:.5em}:is(.select,.select select) optgroup option:first-child{margin-top:.5em}:is(.select,.select select) option{border-radius:var(--radius-field);white-space:normal;padding-block:.375rem;padding-inline:.75rem;transition-property:color,background-color;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1)}:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{cursor:pointer;background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{background-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{outline-offset:2px;outline:2px solid #0000}}:is(.select,.select select) option:not(:disabled):active{background-color:var(--color-neutral);color:var(--color-neutral-content);box-shadow:0 2px calc(var(--depth)*3px) -2px var(--color-neutral)}.timeline{display:flex;position:relative}.timeline>li{grid-template-rows:var(--timeline-row-start,minmax(0,1fr))auto var(--timeline-row-end,minmax(0,1fr));grid-template-columns:var(--timeline-col-start,minmax(0,1fr))auto var(--timeline-col-end,minmax(0,1fr));flex-shrink:0;align-items:center;display:grid;position:relative}.timeline>li>hr{border:none;width:100%}.timeline>li>hr:first-child{grid-row-start:2;grid-column-start:1}.timeline>li>hr:last-child{grid-area:2/3/auto/none}@media print{.timeline>li>hr{border:.1px solid var(--color-base-300)}}.timeline :where(hr){background-color:var(--color-base-300);height:.25rem}.timeline:has(.timeline-middle hr):first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}.timeline:has(.timeline-middle hr):last-child,.timeline:not(:has(.timeline-middle)) :first-child hr:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}.timeline:not(:has(.timeline-middle)) :last-child hr:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}.checkbox{border:var(--border)solid var(--input-color,var(--color-base-content))}@supports (color:color-mix(in lab,red,red)){.checkbox{border:var(--border)solid var(--input-color,color-mix(in oklab,var(--color-base-content)20%,#0000))}}.checkbox{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--radius-selector);vertical-align:middle;color:var(--color-base-content);box-shadow:0 1px oklch(0% 0 0/calc(var(--depth)*.1)) inset,0 0 #0000 inset,0 0 #0000;--size:calc(var(--size-selector,.25rem)*6);width:var(--size);height:var(--size);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);flex-shrink:0;padding:.25rem;transition:background-color .2s,box-shadow .2s;display:inline-block;position:relative}.checkbox:before{--tw-content:"";content:var(--tw-content);opacity:0;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,70% 80%,70% 100%);width:100%;height:100%;box-shadow:0 3px oklch(100% 0 0/calc(var(--depth)*.1)) inset;background-color:currentColor;font-size:1rem;line-height:.75;transition:clip-path .3s .1s,opacity .1s .1s,rotate .3s .1s,translate .3s .1s;display:block;rotate:45deg}.checkbox:focus-visible{outline:2px solid var(--input-color,currentColor);outline-offset:2px}.checkbox:checked,.checkbox[aria-checked=true]{background-color:var(--input-color,#0000);box-shadow:0 0 #0000 inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1)) inset,0 1px oklch(0% 0 0/calc(var(--depth)*.1))}:is(.checkbox:checked,.checkbox[aria-checked=true]):before{clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 0%,70% 0%,70% 100%);opacity:1}@media(forced-colors:active){:is(.checkbox:checked,.checkbox[aria-checked=true]):before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:none}}@media print{:is(.checkbox:checked,.checkbox[aria-checked=true]):before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:none}}.checkbox:indeterminate{background-color:var(--input-color,var(--color-base-content))}@supports (color:color-mix(in lab,red,red)){.checkbox:indeterminate{background-color:var(--input-color,color-mix(in oklab,var(--color-base-content)20%,#0000))}}.checkbox:indeterminate:before{opacity:1;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,80% 80%,80% 100%);translate:0 -35%;rotate:none}.card{border-radius:var(--radius-box);outline-offset:2px;outline:0 solid #0000;flex-direction:column;transition:outline .2s ease-in-out;display:flex;position:relative}.card:focus{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.card:focus{outline-offset:2px;outline:2px solid #0000}}.card:focus-visible{outline-color:currentColor}.card :where(figure:first-child){border-start-start-radius:inherit;border-start-end-radius:inherit;border-end-end-radius:unset;border-end-start-radius:unset;overflow:hidden}.card :where(figure:last-child){border-start-start-radius:unset;border-start-end-radius:unset;border-end-end-radius:inherit;border-end-start-radius:inherit;overflow:hidden}.card figure{justify-content:center;align-items:center;display:flex}.card:has(>input:is(input[type=checkbox],input[type=radio])){cursor:pointer;-webkit-user-select:none;user-select:none}.card:has(>:checked){outline:2px solid}.stats{border-radius:var(--radius-box);grid-auto-flow:column;display:inline-grid;position:relative;overflow-x:auto}.progress{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--radius-box);background-color:currentColor;width:100%;height:.5rem;position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.progress{background-color:color-mix(in oklab,currentcolor 20%,transparent)}}.progress{color:var(--color-base-content)}.progress:indeterminate{background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%}@media(prefers-reduced-motion:no-preference){.progress:indeterminate{animation:5s ease-in-out infinite progress}}@supports ((-moz-appearance:none)){.progress:indeterminate::-moz-progress-bar{background-color:#0000}@media(prefers-reduced-motion:no-preference){.progress:indeterminate::-moz-progress-bar{background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%;animation:5s ease-in-out infinite progress}}.progress::-moz-progress-bar{border-radius:var(--radius-box);background-color:currentColor}}@supports ((-webkit-appearance:none)){.progress::-webkit-progress-bar{border-radius:var(--radius-box);background-color:#0000}.progress::-webkit-progress-value{border-radius:var(--radius-box);background-color:currentColor}}.modal-backdrop{color:#0000;z-index:-1;grid-row-start:1;grid-column-start:1;place-self:stretch stretch;display:grid}.modal-backdrop button{cursor:pointer}.modal-box{background-color:var(--color-base-100);border-top-left-radius:var(--modal-tl,var(--radius-box));border-top-right-radius:var(--modal-tr,var(--radius-box));border-bottom-left-radius:var(--modal-bl,var(--radius-box));border-bottom-right-radius:var(--modal-br,var(--radius-box));opacity:0;overscroll-behavior:contain;grid-row-start:1;grid-column-start:1;width:91.6667%;max-width:32rem;max-height:100vh;padding:1.5rem;transition:translate .3s ease-out,scale .3s ease-out,opacity .2s ease-out 50ms,box-shadow .3s ease-out;overflow-y:auto;scale:95%;box-shadow:0 25px 50px -12px #00000040}.stat-value{white-space:nowrap;grid-column-start:1;font-size:2rem;font-weight:800}.stat-desc{white-space:nowrap;color:var(--color-base-content);grid-column-start:1}@supports (color:color-mix(in lab,red,red)){.stat-desc{color:color-mix(in oklab,var(--color-base-content)60%,transparent)}}.stat-desc{font-size:.75rem}.stat-title{white-space:nowrap;color:var(--color-base-content);grid-column-start:1}@supports (color:color-mix(in lab,red,red)){.stat-title{color:color-mix(in oklab,var(--color-base-content)60%,transparent)}}.stat-title{font-size:.75rem}.divider{white-space:nowrap;height:1rem;margin:var(--divider-m,1rem 0);--divider-color:var(--color-base-content);flex-direction:row;align-self:stretch;align-items:center;display:flex}@supports (color:color-mix(in lab,red,red)){.divider{--divider-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.divider:before,.divider:after{content:"";background-color:var(--divider-color);flex-grow:1;width:100%;height:.125rem}@media print{.divider:before,.divider:after{border:.5px solid}}.divider:not(:empty){gap:1rem}.filter{flex-wrap:wrap;display:flex}.filter input[type=radio]{width:auto}.filter input{opacity:1;transition:margin .1s,opacity .3s,padding .3s,border-width .1s;overflow:hidden;scale:1}.filter input:not(:last-child){margin-inline-end:.25rem}.filter input.filter-reset{aspect-ratio:1}.filter input.filter-reset:after{--tw-content:"×";content:var(--tw-content)}.filter:not(:has(input:checked:not(.filter-reset))) .filter-reset,.filter:not(:has(input:checked:not(.filter-reset))) input[type=reset],.filter:has(input:checked:not(.filter-reset)) input:not(:checked,.filter-reset,input[type=reset]){opacity:0;border-width:0;width:0;margin-inline:0;padding-inline:0;scale:0}.label{white-space:nowrap;color:currentColor;align-items:center;gap:.375rem;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.label{color:color-mix(in oklab,currentcolor 60%,transparent)}}.label:has(input){cursor:pointer}.label:is(.input>*,.select>*){white-space:nowrap;height:calc(100% - .5rem);font-size:inherit;align-items:center;padding-inline:.75rem;display:flex}.label:is(.input>*,.select>*):first-child{border-inline-end:var(--border)solid currentColor;margin-inline:-.75rem .75rem}@supports (color:color-mix(in lab,red,red)){.label:is(.input>*,.select>*):first-child{border-inline-end:var(--border)solid color-mix(in oklab,currentColor 10%,#0000)}}.label:is(.input>*,.select>*):last-child{border-inline-start:var(--border)solid currentColor;margin-inline:.75rem -.75rem}@supports (color:color-mix(in lab,red,red)){.label:is(.input>*,.select>*):last-child{border-inline-start:var(--border)solid color-mix(in oklab,currentColor 10%,#0000)}}.modal-action{justify-content:flex-end;gap:.5rem;margin-top:1.5rem;display:flex}.status{aspect-ratio:1;border-radius:var(--radius-selector);background-color:var(--color-base-content);width:.5rem;height:.5rem;display:inline-block}@supports (color:color-mix(in lab,red,red)){.status{background-color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}.status{vertical-align:middle;color:#0000004d;background-position:50%;background-repeat:no-repeat}@supports (color:color-mix(in lab,red,red)){.status{color:color-mix(in oklab,var(--color-black)30%,transparent)}}.status{background-image:radial-gradient(circle at 35% 30%,oklch(1 0 0/calc(var(--depth)*.5)),#0000);box-shadow:0 2px 3px -1px}@supports (color:color-mix(in lab,red,red)){.status{box-shadow:0 2px 3px -1px color-mix(in oklab,currentColor calc(var(--depth)*100%),#0000)}}.badge{border-radius:var(--radius-selector);vertical-align:middle;color:var(--badge-fg);border:var(--border)solid var(--badge-color,var(--color-base-200));background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);background-color:var(--badge-bg);--badge-bg:var(--badge-color,var(--color-base-100));--badge-fg:var(--color-base-content);--size:calc(var(--size-selector,.25rem)*6);width:fit-content;height:var(--size);padding-inline:calc(var(--size)/2 - var(--border));justify-content:center;align-items:center;gap:.5rem;font-size:.875rem;display:inline-flex}.kbd{border-radius:var(--radius-field);background-color:var(--color-base-200);vertical-align:middle;border:var(--border)solid var(--color-base-content);justify-content:center;align-items:center;padding-inline:.5em;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.kbd{border:var(--border)solid color-mix(in srgb,var(--color-base-content)20%,#0000)}}.kbd{border-bottom:calc(var(--border) + 1px)solid var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.kbd{border-bottom:calc(var(--border) + 1px)solid color-mix(in srgb,var(--color-base-content)20%,#0000)}}.kbd{--size:calc(var(--size-selector,.25rem)*6);height:var(--size);min-width:var(--size);font-size:.875rem}.tabs{--tabs-height:auto;--tabs-direction:row;--tab-height:calc(var(--size-field,.25rem)*10);height:var(--tabs-height);flex-wrap:wrap;flex-direction:var(--tabs-direction);display:flex}.footer{grid-auto-flow:row;place-items:start;gap:2.5rem 1rem;width:100%;font-size:.875rem;line-height:1.25rem;display:grid}.footer>*{place-items:start;gap:.5rem;display:grid}.footer.footer-center{text-align:center;grid-auto-flow:column dense;place-items:center}.footer.footer-center>*{place-items:center}.stat{grid-template-columns:repeat(1,1fr);column-gap:1rem;width:100%;padding-block:1rem;padding-inline:1.5rem;display:inline-grid}.stat:not(:last-child){border-inline-end:var(--border)dashed currentColor}@supports (color:color-mix(in lab,red,red)){.stat:not(:last-child){border-inline-end:var(--border)dashed color-mix(in oklab,currentColor 10%,#0000)}}.stat:not(:last-child){border-block-end:none}.card-body{padding:var(--card-p,1.5rem);font-size:var(--card-fs,.875rem);flex-direction:column;flex:auto;gap:.5rem;display:flex}.card-body :where(p){flex-grow:1}.alert{--alert-border-color:var(--color-base-200);border-radius:var(--radius-box);color:var(--color-base-content);background-color:var(--alert-color,var(--color-base-200));text-align:start;background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);box-shadow:0 3px 0 -2px oklch(100% 0 0/calc(var(--depth)*.08)) inset,0 1px #000,0 4px 3px -2px oklch(0% 0 0/calc(var(--depth)*.08));border-style:solid;grid-template-columns:auto;grid-auto-flow:column;justify-content:start;place-items:center start;gap:1rem;padding-block:.75rem;padding-inline:1rem;font-size:.875rem;line-height:1.25rem;display:grid}@supports (color:color-mix(in lab,red,red)){.alert{box-shadow:0 3px 0 -2px oklch(100% 0 0/calc(var(--depth)*.08)) inset,0 1px color-mix(in oklab,color-mix(in oklab,#000 20%,var(--alert-color,var(--color-base-200)))calc(var(--depth)*20%),#0000),0 4px 3px -2px oklch(0% 0 0/calc(var(--depth)*.08))}}.alert:has(:nth-child(2)){grid-template-columns:auto minmax(auto,1fr)}.card-actions{flex-wrap:wrap;align-items:flex-start;gap:.5rem;display:flex}.card-title{font-size:var(--cardtitle-fs,1.125rem);align-items:center;gap:.5rem;font-weight:600;display:flex}.btn-error{--btn-color:var(--color-error);--btn-fg:var(--color-error-content)}.btn-primary{--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content)}.btn-secondary{--btn-color:var(--color-secondary);--btn-fg:var(--color-secondary-content)}}@layer daisyui.l1.l2{.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal{pointer-events:auto;visibility:visible;opacity:1;transition:visibility 0s allow-discrete,background-color .3s ease-out,opacity .1s ease-out;background-color:#0006}:is(.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal) .modal-box{opacity:1;translate:0;scale:1}:root:has(:is(.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal)){--page-has-backdrop:1;--page-overflow:hidden;--page-scroll-bg:var(--page-scroll-bg-on);--page-scroll-gutter:stable;--page-scroll-transition:var(--page-scroll-transition-on);animation:forwards set-page-has-scroll;animation-timeline:scroll()}@starting-style{.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal{opacity:0}}.tooltip>.tooltip-content,.tooltip[data-tip]:before{transform:translate(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-off)50%}.tooltip:after{transform:translate(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-tail)50%}.btn:disabled:not(.btn-link,.btn-ghost){background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.btn:disabled:not(.btn-link,.btn-ghost){background-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.btn:disabled:not(.btn-link,.btn-ghost){box-shadow:none}.btn:disabled{pointer-events:none;--btn-border:#0000;--btn-noise:none;--btn-fg:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.btn:disabled{--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000)}}.btn[disabled]:not(.btn-link,.btn-ghost){background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.btn[disabled]:not(.btn-link,.btn-ghost){background-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.btn[disabled]:not(.btn-link,.btn-ghost){box-shadow:none}.btn[disabled]{pointer-events:none;--btn-border:#0000;--btn-noise:none;--btn-fg:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.btn[disabled]{--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000)}}@media(prefers-reduced-motion:no-preference){.collapse[open].collapse-arrow>.collapse-title:after,.collapse.collapse-open.collapse-arrow>.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}.collapse.collapse-open.collapse-plus>.collapse-title:after{--tw-content:"−";content:var(--tw-content)}:is(.collapse[tabindex].collapse-arrow:focus:not(.collapse-close),.collapse.collapse-arrow[tabindex]:focus-within:not(.collapse-close))>.collapse-title:after,.collapse.collapse-arrow:not(.collapse-close)>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{transform:translateY(-50%)rotate(225deg)}.collapse[open].collapse-plus>.collapse-title:after,.collapse[tabindex].collapse-plus:focus:not(.collapse-close)>.collapse-title:after,.collapse.collapse-plus:not(.collapse-close)>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{--tw-content:"−";content:var(--tw-content)}.list .list-row:has(.list-col-grow:first-child){--list-grid-cols:1fr}.list .list-row:has(.list-col-grow:nth-child(2)){--list-grid-cols:minmax(0,auto)1fr}.list .list-row:has(.list-col-grow:nth-child(3)){--list-grid-cols:minmax(0,auto)minmax(0,auto)1fr}.list .list-row:has(.list-col-grow:nth-child(4)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}.list .list-row:has(.list-col-grow:nth-child(5)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}.list .list-row:has(.list-col-grow:nth-child(6)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}.list .list-row>*{grid-row-start:1}.checkbox:disabled{cursor:not-allowed;opacity:.2}.tooltip-bottom>.tooltip-content,.tooltip-bottom[data-tip]:before{transform:translate(-50%)translateY(var(--tt-pos,-.25rem));inset:var(--tt-off)auto auto 50%}.tooltip-bottom:after{transform:translate(-50%)translateY(var(--tt-pos,-.25rem))rotate(180deg);inset:var(--tt-tail)auto auto 50%}.tooltip-left>.tooltip-content,.tooltip-left[data-tip]:before{transform:translate(calc(var(--tt-pos,.25rem) - .25rem))translateY(-50%);inset:50% var(--tt-off)auto auto}.tooltip-left:after{transform:translate(var(--tt-pos,.25rem))translateY(-50%)rotate(-90deg);inset:50% calc(var(--tt-tail) + 1px)auto auto}.tooltip-right>.tooltip-content,.tooltip-right[data-tip]:before{transform:translate(calc(var(--tt-pos,-.25rem) + .25rem))translateY(-50%);inset:50% auto auto var(--tt-off)}.tooltip-right:after{transform:translate(var(--tt-pos,-.25rem))translateY(-50%)rotate(90deg);inset:50% auto auto calc(var(--tt-tail) + 1px)}.tooltip-top>.tooltip-content,.tooltip-top[data-tip]:before{transform:translate(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-off)50%}.tooltip-top:after{transform:translate(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-tail)50%}.toast-end{--toast-x:0;inset-inline:auto 1rem}.dropdown-end{--anchor-h:span-left}.dropdown-end :where(.dropdown-content){inset-inline-end:0;translate:0}[dir=rtl] :is(.dropdown-end :where(.dropdown-content)){translate:0}.dropdown-end.dropdown-left{--anchor-h:left;--anchor-v:span-top}.dropdown-end.dropdown-left .dropdown-content{top:auto;bottom:0}.dropdown-end.dropdown-right{--anchor-h:right;--anchor-v:span-top}.dropdown-end.dropdown-right .dropdown-content{top:auto;bottom:0}.toast-bottom{--toast-y:0;top:auto;bottom:1rem}.input-lg{--size:calc(var(--size-field,.25rem)*12);font-size:max(var(--font-size,1.125rem),1.125rem)}.input-lg[type=number]::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}.input-sm{--size:calc(var(--size-field,.25rem)*8);font-size:max(var(--font-size,.75rem),.75rem)}.input-sm[type=number]::-webkit-inner-spin-button{margin-block:-.5rem;margin-inline-end:-.75rem}.input-xs{--size:calc(var(--size-field,.25rem)*6);font-size:max(var(--font-size,.6875rem),.6875rem)}.input-xs[type=number]::-webkit-inner-spin-button{margin-block:-.25rem;margin-inline-end:-.75rem}.btn-circle{width:var(--size);height:var(--size);border-radius:3.40282e38px;padding-inline:0}.btn-square{width:var(--size);height:var(--size);padding-inline:0}.loading-lg{width:calc(var(--size-selector,.25rem)*7)}.loading-md{width:calc(var(--size-selector,.25rem)*6)}.loading-sm{width:calc(var(--size-selector,.25rem)*5)}.loading-xs{width:calc(var(--size-selector,.25rem)*4)}.badge-ghost{border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content);background-image:none}.badge-outline{color:var(--badge-color);--badge-bg:#0000;background-image:none;border-color:currentColor}.loading-spinner{-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E")}.checkbox-xs{--size:calc(var(--size-selector,.25rem)*4);padding:.125rem}.select-lg{--size:calc(var(--size-field,.25rem)*12);font-size:1.125rem}.select-lg option{padding-block:.375rem;padding-inline:1rem}.select-sm{--size:calc(var(--size-field,.25rem)*8);font-size:.75rem}.select-sm option{padding-block:.25rem;padding-inline:.625rem}.select-xs{--size:calc(var(--size-field,.25rem)*6);font-size:.6875rem}.select-xs option{padding-block:.25rem;padding-inline:.5rem}.table-sm :not(thead,tfoot) tr{font-size:.75rem}.table-sm :where(th,td){padding-block:.5rem;padding-inline:.75rem}.table-xs :not(thead,tfoot) tr{font-size:.6875rem}.table-xs :where(th,td){padding-block:.25rem;padding-inline:.5rem}.badge-lg{--size:calc(var(--size-selector,.25rem)*7);font-size:1rem}.badge-sm{--size:calc(var(--size-selector,.25rem)*5);font-size:.75rem}.badge-xs{--size:calc(var(--size-selector,.25rem)*4);font-size:.625rem}.kbd-sm{--size:calc(var(--size-selector,.25rem)*5);font-size:.75rem}.kbd-xs{--size:calc(var(--size-selector,.25rem)*4);font-size:.625rem}.alert-error{color:var(--color-error-content);--alert-border-color:var(--color-error);--alert-color:var(--color-error)}.alert-info{color:var(--color-info-content);--alert-border-color:var(--color-info);--alert-color:var(--color-info)}.alert-success{color:var(--color-success-content);--alert-border-color:var(--color-success);--alert-color:var(--color-success)}.alert-warning{color:var(--color-warning-content);--alert-border-color:var(--color-warning);--alert-color:var(--color-warning)}.checkbox-primary{color:var(--color-primary-content);--input-color:var(--color-primary)}.progress-accent{color:var(--color-accent)}.progress-error{color:var(--color-error)}.progress-info{color:var(--color-info)}.progress-primary{color:var(--color-primary)}.progress-secondary{color:var(--color-secondary)}.progress-success{color:var(--color-success)}.progress-warning{color:var(--color-warning)}.btn-lg{--fontsize:1.125rem;--btn-p:1.25rem;--size:calc(var(--size-field,.25rem)*12)}.btn-sm{--fontsize:.75rem;--btn-p:.75rem;--size:calc(var(--size-field,.25rem)*8)}.btn-xs{--fontsize:.6875rem;--btn-p:.5rem;--size:calc(var(--size-field,.25rem)*6)}.badge-accent{--badge-color:var(--color-accent);--badge-fg:var(--color-accent-content)}.badge-error{--badge-color:var(--color-error);--badge-fg:var(--color-error-content)}.badge-info{--badge-color:var(--color-info);--badge-fg:var(--color-info-content)}.badge-primary{--badge-color:var(--color-primary);--badge-fg:var(--color-primary-content)}.badge-secondary{--badge-color:var(--color-secondary);--badge-fg:var(--color-secondary-content)}.badge-success{--badge-color:var(--color-success);--badge-fg:var(--color-success-content)}.badge-warning{--badge-color:var(--color-warning);--badge-fg:var(--color-warning-content)}.input-error,.input-error:focus,.input-error:focus-within,.select-error,.select-error:focus,.select-error:focus-within{--input-color:var(--color-error)}.toggle-info:checked,.toggle-info[aria-checked=true]{--input-color:var(--color-info)}.toggle-lg[type=checkbox],.toggle-lg:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*7)}.toggle-primary:checked,.toggle-primary[aria-checked=true]{--input-color:var(--color-primary)}.toggle-sm[type=checkbox],.toggle-sm:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*5)}.toggle-xs[type=checkbox],.toggle-xs:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*4)}}.prose :where(a.btn:not(.btn-link)):not(:where([class~=not-prose],[class~=not-prose] *)){text-decoration-line:none}.collapse:not(td,tr,colgroup){visibility:revert-layer}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.top-0{top:calc(var(--spacing)*0)}.top-1\/2{top:50%}.top-3{top:calc(var(--spacing)*3)}.right-0{right:calc(var(--spacing)*0)}.bottom-0{bottom:calc(var(--spacing)*0)}.-left-9{left:calc(var(--spacing)*-9)}.left-0{left:calc(var(--spacing)*0)}.left-3{left:calc(var(--spacing)*3)}.left-4{left:calc(var(--spacing)*4)}.z-10{z-index:10}.z-50{z-index:50}.col-span-2{grid-column:span 2/span 2}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.my-1{margin-block:calc(var(--spacing)*1)}.my-3{margin-block:calc(var(--spacing)*3)}.my-6{margin-block:calc(var(--spacing)*6)}.mt-0\.5{margin-top:calc(var(--spacing)*.5)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-1\.5{margin-top:calc(var(--spacing)*1.5)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-3{margin-top:calc(var(--spacing)*3)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-6{margin-top:calc(var(--spacing)*6)}.mr-1{margin-right:calc(var(--spacing)*1)}.mr-1\.5{margin-right:calc(var(--spacing)*1.5)}.mr-auto{margin-right:auto}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-1\.5{margin-bottom:calc(var(--spacing)*1.5)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-8{margin-left:calc(var(--spacing)*8)}.ml-auto{margin-left:auto}.kbd{box-shadow:none}.alert{border-width:var(--border);border-color:var(--alert-border-color,var(--color-base-200))}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-1{height:calc(var(--spacing)*1)}.h-1\.5{height:calc(var(--spacing)*1.5)}.h-2{height:calc(var(--spacing)*2)}.h-3{height:calc(var(--spacing)*3)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-8{height:calc(var(--spacing)*8)}.h-9{height:calc(var(--spacing)*9)}.h-14{height:calc(var(--spacing)*14)}.h-48{height:calc(var(--spacing)*48)}.h-64{height:calc(var(--spacing)*64)}.h-full{height:100%}.h-screen{height:100vh}.max-h-40{max-height:calc(var(--spacing)*40)}.max-h-80{max-height:calc(var(--spacing)*80)}.max-h-96{max-height:calc(var(--spacing)*96)}.min-h-screen{min-height:100vh}.w-1\/2{width:50%}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-8{width:calc(var(--spacing)*8)}.w-12{width:calc(var(--spacing)*12)}.w-16{width:calc(var(--spacing)*16)}.w-20{width:calc(var(--spacing)*20)}.w-24{width:calc(var(--spacing)*24)}.w-32{width:calc(var(--spacing)*32)}.w-40{width:calc(var(--spacing)*40)}.w-48{width:calc(var(--spacing)*48)}.w-52{width:calc(var(--spacing)*52)}.w-60{width:calc(var(--spacing)*60)}.w-64{width:calc(var(--spacing)*64)}.w-\[72px\]{width:72px}.w-full{width:100%}.max-w-24{max-width:calc(var(--spacing)*24)}.max-w-32{max-width:calc(var(--spacing)*32)}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:calc(var(--spacing)*0)}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.translate-x-0{--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-4{--tw-translate-x:calc(var(--spacing)*4);translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-ns-resize{cursor:ns-resize}.cursor-pointer{cursor:pointer}.resize{resize:both}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*8)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*8)*calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-box{border-radius:var(--radius-box)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-b-lg{border-bottom-right-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-base-100{border-color:var(--color-base-100)}.border-base-200{border-color:var(--color-base-200)}.border-base-300,.border-base-300\/50{border-color:var(--color-base-300)}@supports (color:color-mix(in lab,red,red)){.border-base-300\/50{border-color:color-mix(in oklab,var(--color-base-300)50%,transparent)}}.border-base-content\/10{border-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.border-base-content\/10{border-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.border-primary\/30{border-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.border-primary\/30{border-color:color-mix(in oklab,var(--color-primary)30%,transparent)}}.border-primary\/50{border-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.border-primary\/50{border-color:color-mix(in oklab,var(--color-primary)50%,transparent)}}.border-warning\/30{border-color:var(--color-warning)}@supports (color:color-mix(in lab,red,red)){.border-warning\/30{border-color:color-mix(in oklab,var(--color-warning)30%,transparent)}}.border-l-accent{border-left-color:var(--color-accent)}.border-l-info{border-left-color:var(--color-info)}.border-l-warning{border-left-color:var(--color-warning)}.bg-base-100{background-color:var(--color-base-100)}.bg-base-200,.bg-base-200\/50{background-color:var(--color-base-200)}@supports (color:color-mix(in lab,red,red)){.bg-base-200\/50{background-color:color-mix(in oklab,var(--color-base-200)50%,transparent)}}.bg-base-200\/60{background-color:var(--color-base-200)}@supports (color:color-mix(in lab,red,red)){.bg-base-200\/60{background-color:color-mix(in oklab,var(--color-base-200)60%,transparent)}}.bg-base-300,.bg-base-300\/50{background-color:var(--color-base-300)}@supports (color:color-mix(in lab,red,red)){.bg-base-300\/50{background-color:color-mix(in oklab,var(--color-base-300)50%,transparent)}}.bg-base-content\/30{background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.bg-base-content\/30{background-color:color-mix(in oklab,var(--color-base-content)30%,transparent)}}.bg-base-content\/50{background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.bg-base-content\/50{background-color:color-mix(in oklab,var(--color-base-content)50%,transparent)}}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black)50%,transparent)}}.bg-error,.bg-error\/10{background-color:var(--color-error)}@supports (color:color-mix(in lab,red,red)){.bg-error\/10{background-color:color-mix(in oklab,var(--color-error)10%,transparent)}}.bg-info{background-color:var(--color-info)}.bg-primary{background-color:var(--color-primary)}.bg-primary-content\/20{background-color:var(--color-primary-content)}@supports (color:color-mix(in lab,red,red)){.bg-primary-content\/20{background-color:color-mix(in oklab,var(--color-primary-content)20%,transparent)}}.bg-primary\/10{background-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/10{background-color:color-mix(in oklab,var(--color-primary)10%,transparent)}}.bg-secondary{background-color:var(--color-secondary)}.bg-success,.bg-success\/10{background-color:var(--color-success)}@supports (color:color-mix(in lab,red,red)){.bg-success\/10{background-color:color-mix(in oklab,var(--color-success)10%,transparent)}}.bg-transparent{background-color:#0000}.bg-warning,.bg-warning\/5{background-color:var(--color-warning)}@supports (color:color-mix(in lab,red,red)){.bg-warning\/5{background-color:color-mix(in oklab,var(--color-warning)5%,transparent)}}.bg-warning\/10{background-color:var(--color-warning)}@supports (color:color-mix(in lab,red,red)){.bg-warning\/10{background-color:color-mix(in oklab,var(--color-warning)10%,transparent)}}.stroke-base-content\/10{stroke:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.stroke-base-content\/10{stroke:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.stroke-current{stroke:currentColor}.p-0{padding:calc(var(--spacing)*0)}.p-1\.5{padding:calc(var(--spacing)*1.5)}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-5{padding:calc(var(--spacing)*5)}.p-6{padding:calc(var(--spacing)*6)}.px-1{padding-inline:calc(var(--spacing)*1)}.px-1\.5{padding-inline:calc(var(--spacing)*1.5)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-2\.5{padding-inline:calc(var(--spacing)*2.5)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-0\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-2\.5{padding-block:calc(var(--spacing)*2.5)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-8{padding-block:calc(var(--spacing)*8)}.py-12{padding-block:calc(var(--spacing)*12)}.pt-3{padding-top:calc(var(--spacing)*3)}.pt-4{padding-top:calc(var(--spacing)*4)}.pr-4{padding-right:calc(var(--spacing)*4)}.pb-2{padding-bottom:calc(var(--spacing)*2)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.pl-3{padding-left:calc(var(--spacing)*3)}.pl-4{padding-left:calc(var(--spacing)*4)}.pl-6{padding-left:calc(var(--spacing)*6)}.pl-10{padding-left:calc(var(--spacing)*10)}.pl-12{padding-left:calc(var(--spacing)*12)}.text-center{text-align:center}.text-left{text-align:left}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-accent{color:var(--color-accent)}.text-base-content,.text-base-content\/20{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/20{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}.text-base-content\/30{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/30{color:color-mix(in oklab,var(--color-base-content)30%,transparent)}}.text-base-content\/40{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/40{color:color-mix(in oklab,var(--color-base-content)40%,transparent)}}.text-base-content\/50{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/50{color:color-mix(in oklab,var(--color-base-content)50%,transparent)}}.text-base-content\/60{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/60{color:color-mix(in oklab,var(--color-base-content)60%,transparent)}}.text-base-content\/70{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/70{color:color-mix(in oklab,var(--color-base-content)70%,transparent)}}.text-base-content\/80{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/80{color:color-mix(in oklab,var(--color-base-content)80%,transparent)}}.text-base-content\/90{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/90{color:color-mix(in oklab,var(--color-base-content)90%,transparent)}}.text-error{color:var(--color-error)}.text-error-content{color:var(--color-error-content)}.text-gray-400{color:var(--color-gray-400)}.text-green-400{color:var(--color-green-400)}.text-info{color:var(--color-info)}.text-info-content{color:var(--color-info-content)}.text-orange-400{color:var(--color-orange-400)}.text-pink-400{color:var(--color-pink-400)}.text-primary{color:var(--color-primary)}.text-primary-content{color:var(--color-primary-content)}.text-primary\/60{color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.text-primary\/60{color:color-mix(in oklab,var(--color-primary)60%,transparent)}}.text-primary\/70{color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.text-primary\/70{color:color-mix(in oklab,var(--color-primary)70%,transparent)}}.text-purple-400{color:var(--color-purple-400)}.text-secondary{color:var(--color-secondary)}.text-sky-400{color:var(--color-sky-400)}.text-success{color:var(--color-success)}.text-success-content{color:var(--color-success-content)}.text-violet-400{color:var(--color-violet-400)}.text-warning{color:var(--color-warning)}.text-warning-content{color:var(--color-warning-content)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-primary{--tw-ring-color:var(--color-primary)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}@layer daisyui.l1{.btn-ghost:not(.btn-active,:hover,:active:focus,:focus-visible,input:checked:not(.filter .btn)){--btn-shadow:"";--btn-bg:#0000;--btn-border:#0000;--btn-noise:none}.btn-ghost:not(.btn-active,:hover,:active:focus,:focus-visible,input:checked:not(.filter .btn)):not(:disabled,[disabled],.btn-disabled){--btn-fg:var(--btn-color,currentColor);outline-color:currentColor}@media(hover:none){.btn-ghost:not(.btn-active,:active,:focus-visible,input:checked:not(.filter .btn)):hover{--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color,currentColor);--btn-border:#0000;--btn-noise:none;outline-color:currentColor}}.btn-outline:not(.btn-active,:hover,:active:focus,:focus-visible,input:checked:not(.filter .btn),:disabled,[disabled],.btn-disabled){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}@media(hover:none){.btn-outline:not(.btn-active,:active,:focus-visible,input:checked:not(.filter .btn)):hover{--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}}}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.first\:mt-0:first-child{margin-top:calc(var(--spacing)*0)}@media(hover:hover){.hover\:scale-\[1\.02\]:hover{scale:1.02}.hover\:bg-base-200:hover{background-color:var(--color-base-200)}.hover\:bg-base-300:hover{background-color:var(--color-base-300)}.hover\:text-error:hover{color:var(--color-error)}.hover\:text-primary:hover{color:var(--color-primary)}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-sm:hover{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}@media(min-width:40rem){.sm\:block{display:block}}@media(min-width:48rem){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:64rem){.lg\:col-span-2{grid-column:span 2/span 2}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.\[\&\>\*\]\:h-full>*{height:100%}}:root{--layout-sidebar-width:256px}.dashboard-layout{background:var(--root-bg)}.dashboard-sidebar{background:var(--layout-sidebar-background);border-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.dashboard-sidebar{border-color:color-mix(in srgb,var(--color-base-content)8%,transparent)}}.dashboard-topbar{background:var(--layout-topbar-background);border-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.dashboard-topbar{border-color:color-mix(in srgb,var(--color-base-content)8%,transparent)}}.sidebar-header{border-bottom-style:var(--tw-border-style);padding-inline:calc(var(--spacing)*4);padding-block:calc(var(--spacing)*3);border-bottom-width:1px;border-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.sidebar-header{border-color:color-mix(in srgb,var(--color-base-content)6%,transparent)}}.sidebar-header-title{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.sidebar-header-title{color:color-mix(in srgb,var(--color-base-content)50%,transparent)}}.sidebar-section{padding-inline:calc(var(--spacing)*3);padding-block:calc(var(--spacing)*2)}.sidebar-section-title{margin-bottom:calc(var(--spacing)*2);padding-inline:calc(var(--spacing)*1);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.sidebar-section-title{color:color-mix(in srgb,var(--color-base-content)45%,transparent)}}.nav-item{cursor:pointer;align-items:center;gap:calc(var(--spacing)*2);border-radius:var(--radius-lg);padding-inline:calc(var(--spacing)*2.5);padding-block:calc(var(--spacing)*2);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;transition-duration:.15s;display:flex}.nav-item:hover:not(.active){background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.nav-item:hover:not(.active){background:color-mix(in srgb,var(--color-base-content)5%,transparent)}}.nav-item.active{background:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.nav-item.active{background:color-mix(in srgb,var(--color-primary)15%,transparent)}}.nav-item.active{box-shadow:inset 0 0 0 1px var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.nav-item.active{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-primary)30%,transparent)}}.memory-card{border-radius:var(--radius-lg);padding:calc(var(--spacing)*3);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;background:var(--color-base-content);transition-duration:.15s}@supports (color:color-mix(in lab,red,red)){.memory-card{background:color-mix(in srgb,var(--color-base-content)4%,transparent)}}.memory-card:hover{background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.memory-card:hover{background:color-mix(in srgb,var(--color-base-content)6%,transparent)}}.stats-card{border-radius:var(--radius-lg);padding:calc(var(--spacing)*4);background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.stats-card{background:color-mix(in srgb,var(--color-base-content)4%,transparent)}}.property-card{border-radius:var(--radius-lg);padding:calc(var(--spacing)*3);background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.property-card{background:color-mix(in srgb,var(--color-base-content)4%,transparent)}}.property-label{margin-bottom:calc(var(--spacing)*1);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--color-base-content);display:block}@supports (color:color-mix(in lab,red,red)){.property-label{color:color-mix(in srgb,var(--color-base-content)55%,transparent)}}.settings-collapse{border-radius:var(--radius-lg);background:var(--color-base-content);overflow:hidden}@supports (color:color-mix(in lab,red,red)){.settings-collapse{background:color-mix(in srgb,var(--color-base-content)3%,transparent)}}.settings-collapse .collapse-title{min-height:calc(var(--spacing)*0);padding-block:calc(var(--spacing)*2.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.status-indicator{align-items:center;gap:calc(var(--spacing)*1.5);padding-inline:calc(var(--spacing)*2);padding-block:calc(var(--spacing)*.5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);border-radius:3.40282e38px;display:inline-flex}.status-indicator.online{background:var(--color-success)}@supports (color:color-mix(in lab,red,red)){.status-indicator.online{background:color-mix(in srgb,var(--color-success)15%,transparent)}}.status-indicator.online{color:var(--color-success)}.status-indicator.offline{background:var(--color-error)}@supports (color:color-mix(in lab,red,red)){.status-indicator.offline{background:color-mix(in srgb,var(--color-error)15%,transparent)}}.status-indicator.offline{color:var(--color-error)}.status-indicator.processing{background:var(--color-warning)}@supports (color:color-mix(in lab,red,red)){.status-indicator.processing{background:color-mix(in srgb,var(--color-warning)15%,transparent)}}.status-indicator.processing{color:var(--color-warning)}@layer daisyui.l1.l2.l3{.search-input{cursor:text;border:var(--border)solid #0000;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--color-base-100);vertical-align:middle;white-space:nowrap;width:clamp(3rem,20rem,100%);height:var(--size);font-size:max(var(--font-size,.875rem),.875rem);touch-action:manipulation;border-color:var(--input-color);box-shadow:0 1px var(--input-color) inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1)) inset;border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.5rem;padding-inline:.75rem;display:inline-flex;position:relative}@supports (color:color-mix(in lab,red,red)){.search-input{box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000) inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1)) inset}}.search-input{--size:calc(var(--size-field,.25rem)*10);--input-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.search-input{--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000)}}.search-input:where(input){display:inline-flex}.search-input :where(input){-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#0000;border:none;width:100%;height:100%;display:inline-flex}.search-input :where(input):focus,.search-input :where(input):focus-within{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.search-input :where(input):focus,.search-input :where(input):focus-within{outline-offset:2px;outline:2px solid #0000}}.search-input :where(input[type=url]),.search-input :where(input[type=email]){direction:ltr}.search-input :where(input[type=date]){display:inline-flex}.search-input:focus,.search-input:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px var(--input-color)}@supports (color:color-mix(in lab,red,red)){.search-input:focus,.search-input:focus-within{box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)}}.search-input:focus,.search-input:focus-within{outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}@media(pointer:coarse){@supports (-webkit-touch-callout:none){.search-input:focus,.search-input:focus-within{--font-size:1rem}}}.search-input:has(>input[disabled]),.search-input:is(:disabled,[disabled]),fieldset:disabled .search-input{cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.search-input:has(>input[disabled]),.search-input:is(:disabled,[disabled]),fieldset:disabled .search-input{color:color-mix(in oklab,var(--color-base-content)40%,transparent)}}:is(.search-input:has(>input[disabled]),.search-input:is(:disabled,[disabled]),fieldset:disabled .search-input)::placeholder{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){:is(.search-input:has(>input[disabled]),.search-input:is(:disabled,[disabled]),fieldset:disabled .search-input)::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}.search-input:has(>input[disabled]),.search-input:is(:disabled,[disabled]),fieldset:disabled .search-input{box-shadow:none}.search-input:has(>input[disabled])>input[disabled]{cursor:not-allowed}.search-input::-webkit-date-and-time-value{text-align:inherit}.search-input[type=number]::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}.search-input::-webkit-calendar-picker-indicator{position:absolute;inset-inline-end:.75em}.search-input:has(>input[type=date]) :where(input[type=date]){webkit-appearance:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex}.search-input:has(>input[type=date]) input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;width:1em;height:1em;position:absolute;inset-inline-end:.75em}}@layer daisyui.l1.l2{.search-input{--size:calc(var(--size-field,.25rem)*8);font-size:max(var(--font-size,.75rem),.75rem)}.search-input[type=number]::-webkit-inner-spin-button{margin-block:-.5rem;margin-inline-end:-.75rem}.badge-observation{--badge-color:var(--color-info);--badge-fg:var(--color-info-content)}.badge-summary{--badge-color:var(--color-warning);--badge-fg:var(--color-warning-content)}.badge-prompt{--badge-color:var(--color-secondary);--badge-fg:var(--color-secondary-content)}.badge-bugfix{--badge-color:var(--color-error);--badge-fg:var(--color-error-content)}.badge-feature{--badge-color:var(--color-success);--badge-fg:var(--color-success-content)}.badge-refactor{--badge-color:var(--color-accent);--badge-fg:var(--color-accent-content)}.badge-discovery{--badge-color:var(--color-info);--badge-fg:var(--color-info-content)}.badge-decision{--badge-color:var(--color-warning);--badge-fg:var(--color-warning-content)}.badge-change{--badge-color:var(--color-secondary);--badge-fg:var(--color-secondary-content)}}.search-input{border-style:var(--tw-border-style);background:var(--color-base-content);border-width:1px;width:100%}@supports (color:color-mix(in lab,red,red)){.search-input{background:color-mix(in srgb,var(--color-base-content)4%,transparent)}}.search-input{border-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.search-input{border-color:color-mix(in srgb,var(--color-base-content)10%,transparent)}}.search-input:focus{border-color:var(--color-primary);background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.search-input:focus{background:color-mix(in srgb,var(--color-base-content)6%,transparent)}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--color-base-content)15%,transparent)}}::-webkit-scrollbar-thumb{border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--color-base-content)25%,transparent)}}@keyframes rating{0%,40%{filter:brightness(1.05)contrast(1.05);scale:1.1}}@keyframes dropdown{0%{opacity:0}}@keyframes radio{0%{padding:5px}50%{padding:3px}}@keyframes toast{0%{opacity:0;scale:.9}to{opacity:1;scale:1}}@keyframes rotator{89.9999%,to{--first-item-position:0 0%}90%,99.9999%{--first-item-position:0 calc(var(--items)*100%)}to{translate:0 -100%}}@keyframes skeleton{0%{background-position:150%}to{background-position:-50%}}@keyframes menu{0%{opacity:0}}@keyframes progress{50%{background-position-x:-115%}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}} From 64ffada8f6c425824d01114a853a5cf375fdc9a1 Mon Sep 17 00:00:00 2001 From: Max Ritter Date: Wed, 18 Feb 2026 08:52:54 +0100 Subject: [PATCH 3/7] feat: implement spec/model-selection-settings --- installer/steps/settings_merge.py | 5 +- .../tests/unit/steps/test_claude_files.py | 39 ++++++++++ launcher/build.py | Bin 11424 -> 11398 bytes launcher/statusline/formatter.py | Bin 17912 -> 17692 bytes launcher/statusline/tips.py | Bin 5532 -> 0 bytes .../tests/unit/statusline/test_formatter.py | Bin 41901 -> 41901 bytes launcher/tests/unit/statusline/test_tips.py | Bin 3189 -> 0 bytes launcher/tests/unit/test_build.py | Bin 2709 -> 2017 bytes pilot/commands/learn.md | 2 +- pilot/commands/spec-implement.md | 2 +- pilot/commands/spec-plan.md | 2 +- pilot/commands/spec-verify.md | 23 +++--- pilot/commands/spec.md | 2 +- pilot/commands/sync.md | 2 +- pilot/commands/vault.md | 30 ++++---- pilot/hooks/tool_redirect.py | 8 ++ pilot/settings.json | 70 +++++++++++++++++- 17 files changed, 155 insertions(+), 30 deletions(-) delete mode 100644 launcher/statusline/tips.py delete mode 100644 launcher/tests/unit/statusline/test_tips.py diff --git a/installer/steps/settings_merge.py b/installer/steps/settings_merge.py index 73527c8a..0ca4c8b1 100644 --- a/installer/steps/settings_merge.py +++ b/installer/steps/settings_merge.py @@ -37,7 +37,10 @@ def merge_settings( in_baseline = baseline is not None and key in baseline if not in_incoming: - result[key] = current[key] + if baseline is not None and in_baseline and current[key] == baseline[key]: + pass + else: + result[key] = current[key] elif not in_current: result[key] = incoming[key] elif key == "permissions": diff --git a/installer/tests/unit/steps/test_claude_files.py b/installer/tests/unit/steps/test_claude_files.py index aede6351..457695b1 100644 --- a/installer/tests/unit/steps/test_claude_files.py +++ b/installer/tests/unit/steps/test_claude_files.py @@ -882,6 +882,45 @@ def test_preserves_user_added_env_vars(self): assert result["env"]["MY_CUSTOM_VAR"] == "yes" + def test_pilot_removed_key_dropped_when_user_unchanged(self): + """Key Pilot previously managed and user didn't change is removed when Pilot drops it.""" + from installer.steps.settings_merge import merge_settings + + baseline = {"spinnerTipsEnabled": False, "model": "sonnet"} + current = {"spinnerTipsEnabled": False, "model": "sonnet"} + incoming = {"spinnerTipsOverride": {"tips": ["tip1"], "excludeDefault": True}, "model": "sonnet"} + + result = merge_settings(baseline, current, incoming) + + assert "spinnerTipsEnabled" not in result + assert result["spinnerTipsOverride"] == {"tips": ["tip1"], "excludeDefault": True} + + def test_pilot_removed_key_preserved_when_user_changed(self): + """Key Pilot managed but user changed is preserved even when Pilot removes it.""" + from installer.steps.settings_merge import merge_settings + + baseline = {"spinnerTipsEnabled": False} + current = {"spinnerTipsEnabled": True} + incoming = {"spinnerTipsOverride": {"tips": ["tip1"], "excludeDefault": True}} + + result = merge_settings(baseline, current, incoming) + + assert result["spinnerTipsEnabled"] is True + assert result["spinnerTipsOverride"] == {"tips": ["tip1"], "excludeDefault": True} + + def test_user_added_key_not_in_baseline_preserved_when_not_in_incoming(self): + """User-added keys (never in Pilot baseline) are always preserved.""" + from installer.steps.settings_merge import merge_settings + + baseline = {"model": "sonnet"} + current = {"model": "sonnet", "myCustomKey": "hello"} + incoming = {"model": "opus"} + + result = merge_settings(baseline, current, incoming) + + assert result["myCustomKey"] == "hello" + assert result["model"] == "opus" + class TestMergeAppConfigWithBaseline: """Tests for merge_app_config with baseline parameter.""" diff --git a/launcher/build.py b/launcher/build.py index 533b521f02a564fc2557f0a0b76b7692a4b2f17c..3494ab87b234f3c179975a505165071b62c71993 100644 GIT binary patch literal 11398 zcmV;1EP2xaM@dveQdv+`0N0BFuxBQy*XBSB-f82XTJi?Cnw22@tx^ir1k71=-Aqne zr3%vhKkpUh`_lDnT-Xs*Mp*dGL*Bia6?OS77`-%vYPBq?%$!lWD@!y4KEOLWPN~p>4bfw6T>(9Hrfwb)sk*z~ z85BoXg7Tn)#myVQ74QAkC|Kw37@)B`{`B&*&YOW2P8LfjBYb|*6NFZhT3b~Zh#mup z=51(DspzVW9)%H1V_QI-J#0A$Wsu|~!Zn9}vkg|g@32@mV=UKR*0*9J^AW-MZdD9Z z&24a}1!FA)+f@ouyys+YHlO7uQhw`ZJ(gBeQ&SizR$9x1U)M*pHTZXjBmo?Ko|7_C zg1`EzusXDcs~yd8{3q3BX>8cN8Mi%Lm;MJ$gA7KE(oE}jPCi5bjJG2W$6ylk8JJWJ zY)^zN$7E$sJGBTQ-ROufH0XK=2h9N7Eu2fVaa}LU$j;=-=~#rqXK^KE zb;ShR+zUal4bG@-bdrP+R`C+11Fcu``l5pt;M~q&b4vU6X(;%?I}w6 z+XXPfv=H2&|04qYtv?v>9JRnm5XzDW%<`>&E^9JZ(YJzRRR8PoI}qicIvDwn zwzaq|C_x^gy?wR8c>+L$s)=edFM{MTiIG95bu4$v@cE<4HVUs^U}#gKrbkad;)XJn z|A)A;_f2~PJNo4DEP`0$_BouSddq-e~i$lpP#4TgT5r>B-1023Rx)@>i!+ zDcYx-ev{tX$DI_r@DG9KKI34l=npVoH=&*;=(jbiBGpA>bJ#1Xa9dwo)3w88ejq&7|hvBh`Z$UABk)Rbs}dS0?`B$DY%dQo2b z2vv?>lotW5>eTe8TubUJeWcdUPp}ps?Dekz9)}^)Tgfg@XS~9K#G;GI?KRLgqnH33 zDg3{#bS452vIXs=cZ1K#Zr~I*i~r4$hl@Et17@of@X_x%_z9|yPPhpz_6HE|+>ew7 zk4{d$_awjt{F5Y`Dski37|{MNEuzH~zV2D18Xfd83!!qaL4qO7By#1 zz_5~qOQGDg`TQQ{%qFsgZY_7}RrR=h1XCnA(hgSng5gc1%`sHy&8ryf)@JIl;0Ge_ zdZX$g2j~&-XZ?#6x@jH|XO>dnH>$}O*REAcesCl)1?P(g4WXPQ0uPLh*j8Z2Y{3={ zllE201$_(;0lYR1qev{_HIpOIRNmL>x_Nj|zFN7IhCzBi#~?v4F2rUst8XAKl*Wv& za@;y+hSP@vgiql(&^dCh+RCMo;L4)xOx#zQi4v|+CdU-yr5~6&zsnR!bdCX%uAiS) zz2QnE;Rcn6RP>aUSAsi%Y&m9fQ`hU#q<+sZ6vq;C?Z}w2Cl?=fN)(5IS=_c52w|;p zyiz0~!)S`PtbF8q@jVB`LBKbWV!t|glA+ix$+-5JGrUgIgnmkwT-~2H+c@StjMMZV<^nWFap|bH;6My>pJ{dWaV9_@Hky+ai3-i zJra0TCZ;3jIAHf7U@jJ6SX^1E>QdrY-=H{_O?W0`SElWsQa3H`I8!>GYMC(?bL5 zs{OGn+u(dkMo03`vZ5`)4ol?vDqDk49OVThyxEXjtA%*m2|O3DQr7sp|B>A* zN3VlhHZ`PAg{pLM@Hd0DQ@cg31yGI~bmWF~DHQ^J$1+nD*Ye9)EnG%*xs=EfQwH=_ zsrbM+U6$pw7^E-rV+x9}z>mKl`F626a2bO7bGd2*62uzfFPc zNq7Z2aZG?fbV_6u4N0f^e}!>m5xIJ5hKgeSF%EXTjnSBA?(2AIcoas>Q7d zVLVY{h0K~4Er`D@-o2-h&X?J4tv@_2$<44Uf9U!TwM9nHCWH4~2gM^ah@kN|UZ3(V zRTsI|DZza2_cLWnux1u;ZGJ?zZploq%`ht6KVT2~-wdG#DyNarmmq~kXq9RAVT#&m zvG})0>)Q^BRUeIUlS&a6zRK==pg$1GtMgU14ZqQ;IaGN({3NGH}+<6jGXZkxwf1(?@f>e8QQSj(-1j-rW})KukT` zhYKb$K!IY86JG;9OK(aai^<7phfC(O{*)j9N*t_QD(w-?BSenZxhmYFT&Xb zKkD`#W9|M;^t}uNR{m>I&GX~@m4H-fMyz6@t0jivp{_H)hihgSK|T%p6WO@b%Rv5q zFHcT_6b!uc3#M0hLXSzr!}>8a?uGYy5j(F}-BkE@$A}v7+ks;)JpkDGf!fL+JYlHZ z0@*bQ`0gsXKImmLJ&){cQ&>z18~)Q)gf&UNU(wTb%{!@UM_tuDd#3Qsq+zBA61nxG zNmB;TVDi5^;axz0d_kshxZ%JZrOj$zwonpoG(lFgM7%gZB?wH;mk#`ALx4G3KuVn{ zI*KI;c}!1kjj_m_tnvp*_zhFjIfp{v9d(Lz{DXyDC5@b!%VqU_yVl8Zyax&J)gb z{0jewcW(H4DI^&tYxPID5|SUW(m3Q`n43B|uQ6%3#h+#91xJ&&6ByaE)-2r8t5~7BH)h*x;&yUgWaRiN%nY_aF@pVaL&f;dr-7 zI>%B<T`IA=IAWz%3~A4R5bSF0D+0K1K7Gp#?{TS6xDaj|hP`gGCwbE8XDg3E21n>#Ko9xl1V29UJtK|%<6JCJgGJO5d6mXp5tWpPi)7n1!cdt%?F z`~9*!SNtHKVKT)Dp1K_El~|f`KNMHg-j6Iq^~LRAago9=I0^(zX%v^6u+?#sAn3ue zOSqU{gRtdJ=;U6^)YS<99c?N&B`}ZR9*=yed1j!V=Rh8G%lc*T87jDXOD$+*`dX3A zgPl)~n+!n$*aYoHUtEdH_QdiK)Bixev)bBB^tl6np-5r4d8#7{ z@Lm!BKI)cJQ+~V`2#tGxmOAc!oMl-bU7vPQuQ_bQ44B5*j&rd!*Q0{cmph+CMU(&Y zt{NMb@?Pi)vtrUsI-2rDyHdgTaoo4PzABPx|KRTDU;@7cYQZRq=iBIm$+RU-Tg@&_ zx#a{fd6QLt^D^CkF*yGL4ZOO6boJw^wcmbR(6b58`%`&-D&_fR4fYa=3`=mn%P-;0O%oETX)5k3}m2diNY9~ z&F<)21?bLq)5t*7Za#O1DI37BJ#QA#I?=yu3ZGN`n|pddKDyT9-+!zlx|9)o3WPI= z#{BL2kZmIWG0Exw53?M8)>d`|${CD%>gxg;@Ed%oe-&6l_oK)(0oRrEaE@BAh9Dg% zu!bTBbCV5}kyq6Q`77qHZ+<`fM_~Us04e#=y9XO}dmvY%-?pHzAd=w;rnAVux6M^2 zk)Q~YS=&UqLPsM>!kqJw&|BvzSYmp;70r^4qyP2u7`}+3PDVQ@iX>PE7gT|7;VNef z=O=S8+Z;@_j_$H;A z2yh3n17zFO6|hmn0$BeJA2Q<$`mn0IgKV);hBJT61cGx#b`ltj@yGK1_*ug%ZEO^- z!DweTy5JX=Kfny7et0_-#FYewef>14P3e?5`e`01zs~={=Q9s=;esjOly*H9$Rl=U z6+hh#I`Yt1r5T2nyzcYM7CVT$^}{Zt&(D?I*tl3jViagVZRM0rrDBn0SYeipi_?Vn?u_aGia0}3mM>!e(T#B!()_W6eZW3sQY)r9=09JAQC`u_wsYdpLvb+0$^(JSzDC6gGYAGf>y9X{2GoFk z#$>CJW+g*sJ#;9k6WE#Yli4ZVcx}&J`G)_WLSI@b*Fw5I;`*u zRe)(2@V3^MTej}{=urSlMhB?BpIVGke!w^O6tpC{mJ#B^UOqMR^&cyEDbeM@`nL%~ zKDcl@+eCxUFNsdgnQi71zi94!{yR#uaJxfdSN8cr(1rc$!OO4h*+LP7Vz z9pQpKqnwKio4_d2D1`JPsqAy~1j<})9Vauk-4HYR!Z-1nKko|*)sv1JwM}wGO9xUc zxBP$U2CzImkWZD_;O8>N8RRD^X4~V`gAMeXOL=X)!m7>NdI`1}0E@262yFUrtH>5O z-Ww!j4QK?&qH|rajV|L9Z-B$h@W6kKxUfsOqJ8x+-wo~%AFga@FcOtV(j(Dav0*C1 zo$6$MracT{orOU6Bnu`~yO)SMOVVY?4zJqe(o0QIn7;=|lV9*>Q+(C0Y zV8ORyFZBqC;@0zF=2L|mw1-|gAoMU1bG*Y7EzZy$--c-JG3a_u*7 zo71ibuQA1Xy!IVg>INDrT?Xng?t(VJ#48SJb5!Uiz?Q+2_&O_R-s|4-E6mU$?I^Ik zg@JEqrR!5SzgHYw4b6jM^;f;#%G5|PqH}`(C&>#4v?NlDU zs+t@A#4cou{6+jJAxA{^_jDq3eKG~#2)?2!i7fzvn_-$|FgJJbQY^7s8aCOV;1@U3 zq()%5iN#ELJTiw17Ma($BoK{Cu$vkLsRc;^irGu>&FZNXCMLA&bY7xSiObPYkz+o2 z%OzY-vYrI<6;V6${8N#20qQOCemJEA>N@O^c~AtX+L=xt9}q`eFDXB=i1ezaZnK4o zvygF9Mdn0+5xp+2S@t!J=u3>pKc?9^4t(Synt9I`o?(y*W0a2(^w$L!Qpy1Y=&a^%6ZRG8S#XWA7ZkyWPVSodND))ewjh!l`h9%&vzPldHUK zFathQc$wG9e(8aN&jZ66mC@+kJ(YE}TFYNj=X6tjcB1WkNS7QJ!FgJkQKz6xIkza> zsIkf0k`qGOWkA>*psn_MatXVQBoO=^Wb!|eW4GJdeulE?%i1-UJo5vKk?BfJs|OUk zF09SOyKMK>Q!AU+Scq&DHxf*IN8>UmIYGcrTVX_5&U@RCOMXnpW;nXd5{ky&s+0X%yy8+f2bx)W~G2 zh(53>1JYdMe>X4)CD&B1{mjlFX0f4xkdXR z+1{f@>=8#oTD~+CR1)OQNR!H&yqIE=I(~8oR-E9gYoB(Ui6&zvg6?%g8(K(v{3YW+nXGP zqvzP?oU}MO+m)OuzeisirEx#G_$dy5llPL9yk1v(fofs2F3gD&*PUDBlwelyo@@U; z;#g-`?g^h`0rr#M+CrvLCQ=kUcXy z+s?NQ51dVDL0({T{5NDQcw_0Dl(Mes=c_;Tua%b$FCH%4ug6zJV%q6p+z6iJnhCq< zx{)F`by~6eRZ%ih%Kk#wmZ$obI{jTbdj{>xzssRboW1LQqvSuXgnc z+EzvIrBRI^ieT@JKmMBTL?87y;Zj|6+)fNbQiv2pOm#bG!cw(PmSt8^7WW3PN9A*- zo(|s3*PT<=j(Rrg`rDD!9zVALzfNY;h@`&QA(H_1tsg!1)C|Jy( z;BHlS`bHa-l5BK{cCxd0E+5J{^dnfT8V35-jag0lJDdqd7TVnFppQj&_54W4XJ1}Ky+kRU&erWz1XoND%SfcM1fQLyu1cN>o zJ*4=q#oP3my2BDv4U=L0>Ix!Qkyn?J_zLXNMvXI$Z?q(7o@Cyb1g8t8%@ig#Df| zJYS<2I}Y02dsZsTf2e}bluDc4w-LG9He@2v>n+K=qIZ$@g>+LrCPJd1hzn{nk43`}@m}@beBt z%419aS2XWi=yuE(SZ|sQeL9psTpYfG^Cxp|zyGT22W3oBu@8P~_lY>?O_~Vb1@?iS z5UL36{_`}OT9`F9UmBa^1Wi)yux#)l8d`Bd?+ds6Uv!0=pv&4f_}#81)Bf3Y(3?tG zTfUQ^?-tbqjRL-yUPT%t5VecIxF?pP+RugC z_9)M!l)eZUrV!43}mPgB>Os@c%s;6>c=^=ocS#0-BpTNs!uY|b0S-R^t4 z8Be!oeL1lu4p?(4?=XOJx2=T8GPA5;rr=kP4c+_H((AyaG@aIPQtv(iRnpdPPEfL% z7B$O1+47xhof_;HyAfWi4)#AE@gZysrW2(<9h3}&3<-LFfYr1sQ;jm9-HA49Z$PW? zNHXTlPN3CXs6uax#bY6S^)b^*Z?ZRRWUj-p)q=y%Oap23=-pIkvU*204CpqyyM=-y zy3&~vncW;XfBW1>pMHppoKt4{FI2H-H*_T%+%jrj;8nS^ z=H=s7nW@8j!YS@dsFFZzi}vkaA%(AF_AIStU5ZIp08G5yXm?3)I1ppUWCq|$LNTkt zab8!iCkE$(=Kv5lJjzDJ+|rcK4mGA8g~J5LA#)E$Ae>!#yo+4HwC`)lh>*XzFHdig zQL)G9)dJkRGIfv;>5$p=(M3v4CTO7S(nmhp>8FW$ajT6Ll*fy$C?1jC1b{15JQw&6 z?jK=bZ8P^~7Cz$G+G(Qm*qlqa_JGXVYu|4My1}#3nC{g1mq**mb!gyhgK$;1+cn|G z0FsT%Q`DxTcZJl2yv-!trXe1kM>@|IfIM3{d9vN#w_+jj@nx3)#Yd;kuL3oRX(s97 z8feHlCMMD()+Ee#9OCx>Ixb4+PB|7FMT2a7qp*eXO+MJ!0P+g2x+1E6`GuSy*#*bN zH8)ljAvmTDO5RM87rmkl+V~=%RO_!tE6qF`x^L~(W;GC62MH{StxQD9G{|u1mLiC` zhc_RRZTkj~JF?VBJ%lH^Pif^AB@pvF5)yVoL(AaP=J*1(0Is;s$#0ST(3s8zn-Xl- z)Z0pqx{IM{hTvvL=qEJv%3x2NSuP1LmOs`#qu*0Mr&MA2Shs2vYsmJZcS!lN71I;y9e6LuG2x`>6Q6#R!8D}}8iAf3rfDL{ z^rK7l0}bPgxQ_<0hWgerddZ={CeOHawuYvXO&BC7rHGlHnp8xe8B62lzrhhP@4+CxIp5! z_ASZ_HXhUF=jNQ&G((OC_5vekEWO?=E+B(_RL1FeS(#sf0UhB?pvNEy?}oc7l|M@K zPyrevD>0|(uu?wd7$)KRoD;zzJHQ0r5{~MRsa98!|kTyFES+Ib5N?(+(lp3-cdD^j!{9y-a{Ym7^*% zeQp=;lFM}wWj`Cnw@Zb};NBHME{=_OH#Dyw4Z1E_aRK4$ONy{RPUj8ZcY|1~Okq7( zxYO@%3Af>2r#}RDc$paev3q&U68fb={XVHn3M%7()CHrh>_TcV1asLKF-Hb@E~lYE zXwatj`tq2T&_-VH7=}MD6&Y6|iH^QZ$Qx*9nbuU6oy`&Jwvn75m@fDLsiq#=vth+0 z0Mne(^lCY&u>1hNTcrtBbNy%B-my5*t1|nr%m>%!(4PRC^>39*cF0;=;R#Umfil~hT&bz zERIiIt|R@34n^0rkXVr93Z}y7gnA2o%40EXcdX1~VV)fUTqGU~eXo~+z`20bL|B8b z+zEVnye;kPh8%`clnPX9Y0p{E@xtS-r^ugwcKmKdRfl`9cWx>E1^4DLbd7NNIyPx{ z*!IhT;QD7Antd9dVlpZsKVu0zAjhzVoruBJ7inI?k|Tx;76l5L&~mDWM@W112K@V= z@F%^0>kj6KPD^p1q#kh+Adn)c&~rG_zkfw67eIgk5?tUt2c88%`&?~W$PpyM2=6|O zj`C1*t-)G~SJ$(X)VCGZ$bQ|}A~jSK9WuNGDI_2No3F{SD?r+pFaC?Z^aMSAy|H}Hl0Um7-SfT(xA(0l3J&r3zBrQUo)$a9 z<8Ccp3Q-q(t$bV^t~U9RLBh5ISUEkFEih_Y_Il#+_1r76tc*HKbYf*p$*HU6Nm{+5 z)9mvKW61U*Na&U}An!UC0Rr~B)g}t2+R_{fz#BA7=Dh3>p&_2`0|MNK96C_7Ylr+u zqr||)eFeTKlt$CzVrQy_5A0C7(;x&>+5rjkudr?&NS}OYh>Z-kXr-}UQQS!XYM0`w z(r=mHKv-ouAKGPeCqKGBS8=K?^3qywgW(QT*?1^MU6Zy~{@CZAfyTCF4Oh^jRaW#r zVgtA{HgvG%9W)~Xz~FGcC>#cI5}ef%95{gzHd7LMZgC0*6(mM|vRlfR>6#vL=QB{JnIFCe%Pk}anlR^CKo z8r5=I1^SL*%1#IB)E_tF$MK!jM5+}Vq1&_Eo?iC>mJ8!i6W5%IyITXpKZzs$60Km69_~&{t;G-jo9Z{4V$n{|&u&waB zW|S#k4g8o3R_E255 zIC2>GWBXSsB)!m?37{mRH*}ZHjOsbyJUr-zk%m@mKQd1XOS&iF9jggmUTTTewe+xe zaobChS*GrN*}&2g$1@E%a7eY5tqKQA!6(&Yk^s;N%fh3T3ziGqCbd|GkpG6q-^z^4 zz!1-(PJa0A5nXr*Cz;#{E&5+m*bSVA=W*5kwK9i1Trrze})n*bzjxRM$H(}^4 zeq=eelP6)zhxmXO))5)MCixmdMcp_x9*7tnZ+tNm(38Mok8O zH;Yr=lNr$o`RT-*+QHDU3hJ1G?a`jST*a?hhu>>g@oq&$H}@jQ|JQ@a;$pRW0;z5e z+NDc6fHcE`3@&xrOB&czOCMnWr4nK*t6!9?CvyB7`xq6O2-KR6FvR zmOYYNP)eMXlgBx@;s0KC6vYVFV3y&{EKum-sb{DWZ-Cft5edoUf56agNDLu*&irXn zGY}WTp6~Iv4Qth|rrz95$5jri0?ow_4rCkzE%xeGn1FhRui4R8dzmq!`OvY|pqp40 zuIm0BIBa%q^sw@hVLi>5h;oL#9fOHwr!b=OAvVAbC7RfQdb=h(LUu5NuU2*81}m@rhX+iO z-~d*r2@PcqpJr82JV9t~o{Bd^7Cxu9TSj4&e{}T-q0rCH?0%CC`RNOjhJ*15JCvD% z9t=Mn1k^$S6_Oc)lGyOM4l5z;Bq#NLh+nLCc9Jz%z< z1Pw`+WF@aGuHZmBE;vHFc-d0fN$x4nG=fy%blc3RT@_d_NA{#WXTN0(>KnQmX)>cp zc=HtSK&cDUzgvg}nf_r~Rl6%crzXq6!7`uRw!zvc?rI)u>M<2x5ff-_bVc&FP77!_ z`VrL8P?h{~4tB!E69^d|*m+gzZ-tsxz7ElwXI<>Ea4u!u8c0rF^L_TI;zb*sgv9&UORM13Ll?NG6K!!atJt12bIKF~-4y%pzUsqJ$P{?ve{<`}WJFQ$ z7RpVoHVKb{AUEXN5wEWAIKQXj|LgkcZMK3$hcDoi*QX1;mM`Zd6|)bJ?5gH3kTO>o z;1$5ksva#$IETfJFNC>6rcpTZL{2=y1Iu+6UNAF~eIDY@0oQYQlBNOT=xAHH)^wP* zh5S91!T~VHdgpJI1|MR-!H_p}(-H-dyQdAvf3?oHd8( zjWHz4?W_MHwxG}SKvvBbnU4Y4E*tRi1l%LO!fY`RG>abP_k(V!W~1HgMsa5j=mtjX zG6L UyE=)tKP0vF+omyrTnc?C^ZrI1#sB~S literal 11424 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 diff --git a/launcher/statusline/formatter.py b/launcher/statusline/formatter.py index 9eb3583a015e38e0b2535e6bc436dffb3453754a..272d0af7e52b8de518f4927186f1932abfd2581b 100644 GIT binary patch literal 17692 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 J-I4pYL!w4VhwT6W literal 41901 zcmV(hK={7^M@dveQdv+`0NE!9>lI%#X!VS`G%l&xtMwLh0hV{Z*YWfks!rw9CHN=Z zGv98|-*3jwQJ>^`B2r&{7wIPiK&SX8_04fPGrCHS!q?@Zyqb*;oxol^4^;d@MCB5 zuUj)euj*X0bSNjr2H^|9_z>^yo~1g()p_C0vdw?zE@`U)Tr#^2WF`?9c|q3d#*(fs zkaUR?Z~CC9Hw7_idNI*R5r6ApfzuEV%zYJ*@(N5{|Htw;U{#u3Hz)4hvDbQshI$n# zBjWa@aZO``)sIZ!Z*B7gU!Ov|Oy)};{_0Rhax&K%nOov)!JW6^yy{ z%6HlAd@=}A5qok~nuHgV=aMmt@WJCUt(pZ(k+5@j(Tya2q>St_s0JMNWap(9hldaD zdm_7BICrp0P*uE5Tb`%cNn-(As#S49%2W4j#4$kv}c2U zqd^3?ba5H^c$SP|xCL$31wwqw0lMdwDz7Zy@X50)Ur~_B@BSoW@ufgdi!_w2*w1#r zNJZ}OcX&r;i?uX$purT)9iWLKsKUG~(q$WyE$ZwX3GY4zHO1mAqY8Kc&KYv0ZD5Rh zQ`+*ltt|k#q$Fr{NxM5G;e}1A5d^4nHj-p>p4_7#G0nY;M$Kujwm0~Upn4Au59T2>7V#3|ulr|INr$}isY)cH3ua-q z)n85iBFp>#wgFF)Ayy5-Zg-y}alD!j_O?o{)GlqU>!Ek;xMGwipgIe0l}2?36jBu+ zU`R=y72>3XF-(dm3IGq02)S?F76f7@hKOY`%2@l)5hZ1b`~pFHD+BL-yK#-Z6KM|- z+>WD@ApN(!qUP$630iKGr5|P_uGx5Xygyuu4jG^EY%Cm~Vnq(7s~@Dd29Rz>t6df= zly1L_xB9TB80QmsHk)O>)Zlc<>_zT_^G)wwO)<_Ia68tJpvAy#hWth9m7`#x0f*aX zKQ_k&v>A*Jx6um@3DmU-wS}??;shVP&buzqAxk?~HGx=$OJy&~@*9}_S~p;cx~Tq= zrP0GLIh#U#HCvAmNW&n9Q4rLKf`(>|GKn6e>HOC_jXiQ|<%_j_A2^fu<%u!3KYu2*oNms}mi{G_qj~{$dB)6cADT!zzR4_0ds>{InP(70q1{GpngBw^5JZI3q+=hP zwMPB&eQbC}-0oE-NC-CVnUrIqvK4$#IW!2+5#-02%3X`ZBYt4(;S&qAn(p%fp))P; zaOO%8g;p4GeO}bQapl!;H__RD$-#e9{ga}&mReA@U2w53 z4I6d;ODoGuUa<8B6xOD9ElBZu(%goTT3Za^chh-Ocl0uRTr+%=^|Bh)ry29k-nfX*Q$)22?|1%dMa;iNmRS_%o>Q0ZP18SpCqK zWudxy*7>6JO2puD)2)m%BW079TLs+GW@D}B@Wp2ofcI~&^H+D{ecjF(OM9bEK5Hg( zb8&n8$tfU(b`B8rQq=^==x(XE^V^TD_D1}0W-x>A5V}xtVYfE! zIUtw8R4t%`bqz|d%sb~&aYHC{6-J*W?a}cfdxfzxHsP&NapUVoA9RA9^z0;m>wQxL!h}mPNyAQ z*WQs&@=|RQndyETh&l$78ET_ZQk{k8jJPDUi!$Ye3Zft>s~1R+=lK%qBz#TdMD6MQ zm!J##hh>N4uZQUxS^Bnhge9y_l;BQ!9Dbioa)M5(KnJKxlwh!Lc7=FsKH3;-IAnYn zSUXq+%qcuFsunQP$ikLrnqoCK_rlN#8pXOpL1gh3Ax8PS^Tp^7O1i8`%hk#mHPolB zQ`bpfA;C0loEBC zp(<{*<)q~oZI3RUI>jE!-zeuvUplT98(*)lZ8AmP*C^|F!pE*chj8>4V(a3{c}{$d z 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

Z1u_83fv`+SZ`RCI9y;yI#95ZYg+cJDjw}_j@ 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 diff --git a/launcher/tests/unit/test_build.py b/launcher/tests/unit/test_build.py index 6d24747842bbfea9c7bc3f2a839082f2e6c89fa7..6322243213b6255cd4ba53ed3740519f622e19f2 100644 GIT binary patch literal 2017 zcmV<72OjtUM@dveQdv+`0QGE*HxKO=p|Osp*V(&@#~^G&-=7F+5kvxJ%k61*=cbII z&($5iuV8Bf@ICHdapt6eHxB`U*y!uKT4p8?%og#=%Bh(PDE(@-;9t0AB3E~9Maseus zHU}sEVh$RbwIq~XfJI#lC?3(pgH&q4>t(eHo<8z>uCCn|Sp~i6g*%{KT z{!^^74ns8V#Eb(W9_2!q7O^3ek!4Iiq#h6&JNf?7J9hFVL%O*eR~Mn$BO+5X+K z?fg{j3p?X1RJ_%QvTg&M>2e|57d|`9%LGjKi@jIqeOoDe#9n(D7#Q7Mq@ECL0>rw}Tvy(_v8k z2pz*Qszo4wc zMgj_a8IT?2=62`lt{&K ze;1~T+g-l{wIVPvV5KVk8gwF)WQQ0@u=Q&c>AjxtYSBGVB@ZhW7uRA}mnjym0RH1O zQoH_vRc|h>#=sXa1Hb|YQ%8xy5A`S@0hCogzZHG|`+{V|aR3O4exZ)EfW;$*amaOa zvt}PfNPS`U`aG@c)0|Kt{Kc|wYQW%T{OUw_=_sPQnc4XaOdW{8DO>Mzl(HbPT4Qy3 zPI%hVb&X$Dk1-!{-Y>xj>~kMUc~xN;RPc>AZUPwh-)g5xnXxi+(wvq<=_n>sFYdb2 zOJ*E|U=C{URWLO&m~7RsHD%&H%UN&@5Wt4%qK1#nlj9$XlNq`z(#>Yg_V#>Hu{i@Tz=mVQ=PkPiMek|0+nE3{YEsHtm6C;Bb z>xp}XVC2-;O(MNfbsZtoA1Y045D>>2Q7Ki*e2GI-$w+#L&$@@y7a_85 zGBKCAliStcmMeSKT<$$W078+&|DR3`s-LT8RCA1{x}O@9EKD6D9MHH2f7gYS{Oy_O{g0HjBuTy&;bLz6xeShi4%}fEL)jjh6l;FCIb9o;! z>wVCfsv98?nH=8kPxvz+;0VX2A9*S0OWN3q%q+=Tvjsq1h~MZX&QL2qK`1NBxe;5# zFp$5pY~xf+VngrQ#r7wIFEH4&%5dmd0hk;mMkBggB?L3BC51r{1ml^vc-Eai{wYf; z_CJ<&Te^s30NML$qRVI_d@Ol*-WOlaOc`4pmeT$3|QceOw3Ax^U%qxb@cHpZ%wzvIW&wxhIR2A`pJzdBH_ zI|5R9XilK;oEX-+cU2*y)2XH7OFX%E0DV7EP8p<*zzJSObm&KlVqOJub08DWc#Nl0 zO^fxs8yWA(2!yRznLErXJiRpk&`tO1G!i{R{*U|ni<|H zN}%c8MkUXqBcZ1z?(x3@lg-zY!6IRwPad-9R?Wx}QKU?sQ3^OIvcL2#<6s=hDW>C}a;Ub@B(i?3v5aG)RbYoh%fjN*eghXg*o*n>^evZOm4V&NLJL^Oja(be|9gS}6YI1XLP(=?@qif&(d*(@6PwPqyssmnbm2O^cvaOE8LSWPHZ{Oa_ literal 2709 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 PCG?W^6K8L;#ADd&{" user-invocable: false -model: sonnet +model: sonnet[1m] --- # /spec-implement - Implementation Phase diff --git a/pilot/commands/spec-plan.md b/pilot/commands/spec-plan.md index ff5bd533..2e2d8dba 100644 --- a/pilot/commands/spec-plan.md +++ b/pilot/commands/spec-plan.md @@ -2,7 +2,7 @@ description: "Spec planning phase - explore codebase, design plan, get approval" argument-hint: " or " user-invocable: false -model: opus +model: opus[1m] hooks: Stop: - command: uv run python "${CLAUDE_PLUGIN_ROOT}/hooks/spec_plan_validator.py" diff --git a/pilot/commands/spec-verify.md b/pilot/commands/spec-verify.md index 595a8273..69b4e135 100644 --- a/pilot/commands/spec-verify.md +++ b/pilot/commands/spec-verify.md @@ -2,7 +2,7 @@ description: "Spec verification phase - tests, execution, rules audit, code review" argument-hint: "" user-invocable: false -model: opus +model: opus[1m] hooks: Stop: - command: uv run python "${CLAUDE_PLUGIN_ROOT}/hooks/spec_verify_validator.py" @@ -21,15 +21,15 @@ hooks: ## ⛔ KEY CONSTRAINTS (Rules Summary) -| # | Rule | -| --- | ----------------------------------------------------------------------------------------------------- | +| # | Rule | +| --- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | 1 | **NEVER SKIP verification** - Code review (Step 3.0/3.5) launches `spec-reviewer-compliance` + `spec-reviewer-quality` via the **Task tool** (`subagent_type="pilot:spec-reviewer-compliance"` and `"pilot:spec-reviewer-quality"`). Mandatory. No exceptions. | -| 2 | **NO stopping** - Everything is automatic. Never ask "Should I fix these?" | -| 3 | **Fix ALL findings automatically** - must_fix AND should_fix. No permission needed. | -| 4 | **Quality over speed** - Never rush due to context pressure | -| 5 | **Plan file is source of truth** - Survives across auto-compaction cycles | -| 6 | **Code changes finish BEFORE runtime testing** - Code review and fixes happen before build/deploy/E2E | -| 7 | **Re-verification after fixes is MANDATORY** - Fixes can introduce new bugs. Always re-verify. | +| 2 | **NO stopping** - Everything is automatic. Never ask "Should I fix these?" | +| 3 | **Fix ALL findings automatically** - must_fix AND should_fix. No permission needed. | +| 4 | **Quality over speed** - Never rush due to context pressure | +| 5 | **Plan file is source of truth** - Survives across auto-compaction cycles | +| 6 | **Code changes finish BEFORE runtime testing** - Code review and fixes happen before build/deploy/E2E | +| 7 | **Re-verification after fixes is MANDATORY** - Fixes can introduce new bugs. Always re-verify. | --- @@ -91,6 +91,7 @@ echo $PILOT_SESSION_ID **⚠️ Validate the session ID is set.** If `$PILOT_SESSION_ID` is empty, fall back to `"default"` to avoid writing to `~/.pilot/sessions//`. Define output paths (replace `` with the resolved value): + - **Compliance findings:** `~/.pilot/sessions//findings-compliance.json` - **Quality findings:** `~/.pilot/sessions//findings-quality.json` @@ -99,6 +100,7 @@ Define output paths (replace `` with the resolved value): Spawn 2 agents in parallel using TWO Task tool calls in a SINGLE message. Set `run_in_background=true` on both. **Agent 1: spec-reviewer-compliance** (plan alignment, DoD, risk mitigations) + ``` Task( subagent_type="pilot:spec-reviewer-compliance", @@ -122,6 +124,7 @@ Task( ``` **Agent 2: spec-reviewer-quality** (code quality, security, testing, performance) + ``` Task( subagent_type="pilot:spec-reviewer-quality", @@ -275,10 +278,12 @@ The two review agents (launched in Step 3.0) should be done or nearly done by no 6. **If both files are ready simultaneously**, deduplicate first (keep higher severity for duplicates on same file + line), then fix all **If a findings file is still missing after 30 retries** (agent failed to write): + 1. Re-launch that specific agent synchronously (without `run_in_background`) with the same prompt 2. If the synchronous re-launch also fails, log the failure and continue with findings from the other agent only **Expected timeline:** + - Agents were launched before Step 3.1 (tests, lint, feature parity, call chain) - Steps 3.1-3.4 typically take 2-5 minutes - Agents typically complete in 3-7 minutes diff --git a/pilot/commands/spec.md b/pilot/commands/spec.md index c4491032..bdc59a5f 100644 --- a/pilot/commands/spec.md +++ b/pilot/commands/spec.md @@ -2,7 +2,7 @@ description: Spec-driven development - plan, implement, verify workflow argument-hint: "" or "" user-invocable: true -model: sonnet +model: sonnet[1m] --- # /spec - Unified Spec-Driven Development diff --git a/pilot/commands/sync.md b/pilot/commands/sync.md index 21c30810..13b29054 100644 --- a/pilot/commands/sync.md +++ b/pilot/commands/sync.md @@ -1,7 +1,7 @@ --- description: Sync project rules and skills with codebase - reads existing rules/skills, explores code, updates documentation, creates new skills user-invocable: true -model: sonnet +model: sonnet[1m] --- # /sync - Sync Project Rules & Skills diff --git a/pilot/commands/vault.md b/pilot/commands/vault.md index 6a4d8e65..eda2300d 100644 --- a/pilot/commands/vault.md +++ b/pilot/commands/vault.md @@ -1,7 +1,7 @@ --- description: Manage Team Vault - share and install rules, commands, skills across your team via sx user-invocable: true -model: sonnet +model: sonnet[1m] --- # /vault - Team Vault Management @@ -214,6 +214,7 @@ sx add .claude/skills/ --yes --type skill --name "" --scope-global **Warning:** Do NOT use `--no-install` — it skips updating the vault lockfile, making assets invisible to `sx install` for teammates. **Note:** sx installs to all detected clients (Claude Code + Cursor). If `.cursor/` is not in `.gitignore`, add it: + ```bash echo '.cursor/' >> .gitignore 2>/dev/null ``` @@ -368,13 +369,14 @@ sx uninstall --all --yes Assets can be installed at different levels: -| Scope | Installs to | Use When | -| ----- | ----------- | -------- | -| Project (`--scope-repo`) | `project/.claude/` | **Default.** Assets stay with the project. | -| Global (`--scope-global`) | `~/.claude/` | Personal tools needed everywhere. | -| Path (`--scope-repo "url#path"`) | `project/path/.claude/` | Monorepo — different assets per service. | +| Scope | Installs to | Use When | +| -------------------------------- | ----------------------- | ------------------------------------------ | +| Project (`--scope-repo`) | `project/.claude/` | **Default.** Assets stay with the project. | +| Global (`--scope-global`) | `~/.claude/` | Personal tools needed everywhere. | +| Path (`--scope-repo "url#path"`) | `project/path/.claude/` | Monorepo — different assets per service. | **Project-scoped is recommended** because: + - Each project explicitly tracks which vault assets it uses - No global pollution from multiple projects - New team members get exactly the right assets when they clone the repo @@ -391,14 +393,14 @@ To change an existing asset's scope, run `sx add ` again (without a path) ## Error Handling -| Error | Action | -| ------------------------- | ------------------------------------------------------- | -| "configuration not found" | Run setup flow | -| "authentication failed" / "could not read Username" | Run the **Git Authentication Fix** below | -| "repository not found" | Verify URL is correct and user has access | -| "asset already exists" | sx will auto-increment version — this is expected | -| "failed to install" | Run `sx install --repair` to fix discrepancies | -| Network errors | Check internet connection, retry | +| Error | Action | +| --------------------------------------------------- | ------------------------------------------------- | +| "configuration not found" | Run setup flow | +| "authentication failed" / "could not read Username" | Run the **Git Authentication Fix** below | +| "repository not found" | Verify URL is correct and user has access | +| "asset already exists" | sx will auto-increment version — this is expected | +| "failed to install" | Run `sx install --repair` to fix discrepancies | +| Network errors | Check internet connection, retry | ### Git Authentication Fix diff --git a/pilot/hooks/tool_redirect.py b/pilot/hooks/tool_redirect.py index 78c4f714..ef8e3f6e 100755 --- a/pilot/hooks/tool_redirect.py +++ b/pilot/hooks/tool_redirect.py @@ -127,6 +127,14 @@ def is_semantic_pattern(pattern: str) -> bool: "alternative": "Use AskUserQuestion for plan approval, then Skill(skill='spec-implement', args='plan-path')", "example": "AskUserQuestion to confirm plan, then Skill(skill='spec-implement', args='plan-path')", }, + "Task": { + "message": "Task(subagent_type='Plan') is blocked (project uses /spec workflow)", + "alternative": "Do planning work directly with Read, Grep, Glob tools. Use /spec for structured planning.", + "example": "Read files directly, use AskUserQuestion for decisions, write plan to file", + "condition": lambda data: ( + isinstance(data.get("tool_input"), dict) and data["tool_input"].get("subagent_type") == "Plan" + ), + }, } diff --git a/pilot/settings.json b/pilot/settings.json index 6a10c3cd..e8ec3bab 100644 --- a/pilot/settings.json +++ b/pilot/settings.json @@ -1,4 +1,5 @@ { + "model": "sonnet[1m]", "env": { "CLAUDE_CODE_ENABLE_TASKS": "true", "CLAUDE_CODE_HIDE_ACCOUNT_INFO": "true", @@ -71,7 +72,74 @@ }, "terminalProgressBarEnabled": true, "enableAllProjectMcpServers": true, - "spinnerTipsEnabled": false, + "spinnerTipsOverride": { + "tips": [ + "[PILOT] Run /sync after installation to sync rules and skills with your codebase", + "[PILOT] Use /spec for complex features — creates a plan you can review before implementation", + "[PILOT] Quick Mode: Just chat for bug fixes and small changes (all quality hooks still apply)", + "[PILOT] Press Ctrl+R to search command history | Ctrl+C to cancel current operation", + "[PILOT] Press Escape twice to cancel a running operation", + "[PILOT] Check /help for all available commands and shortcuts", + "[PILOT] Use /clear to start fresh while keeping project context loaded", + "[PILOT] Run /ide to enable real-time diagnostics from your IDE", + "[PILOT] Use @file.py to reference files directly in your prompts", + "[PILOT] Pilot Memory: Claude remembers your past sessions and relevant context automatically", + "[PILOT] Auto-compaction preserves state seamlessly — no context is ever lost between compaction cycles", + "[PILOT] Context Monitor tracks usage — auto-compaction fires automatically, no context is ever lost", + "[PILOT] Pilot Console: Browse your memory, sessions, and specs at localhost:41777", + "[PILOT] Vexor: Semantic search that finds code by meaning, not just text matching", + "[PILOT] Context7: Claude fetches up-to-date library docs when you use unfamiliar packages", + "[PILOT] grep-mcp: Search 1M+ public GitHub repos for real-world code patterns and examples", + "[PILOT] TDD Enforcer: Warns when modifying code without failing tests first", + "[PILOT] Quality hooks auto-run on every edit: Python, TypeScript, Go, and more", + "[PILOT] 15 hooks fire across 6 lifecycle events — quality enforcement is automatic and comprehensive", + "[PILOT] Coding standards activate conditionally by file type — Python rules only load for .py files", + "[PILOT] LSP: Language servers provide real-time diagnostics, go-to-definition, and hover info", + "[PILOT] LSP servers (Python, TypeScript, Go) are installed automatically with Pilot", + "[PILOT] Add custom rules in .claude/rules/ to guide Claude's behavior", + "[PILOT] MCP servers extend capabilities: web search, memory, docs, IDE integration", + "[PILOT] Add custom MCP servers to .mcp.json or mcp_servers.json, then run /sync", + "[PILOT] playwright-cli enables headless browser automation, testing, and tracing", + "[PILOT] Quality hooks validate your code changes automatically before completion", + "[PILOT] Spec-Driven: /spec → Plan → Approve → Implement → Verify (with feedback loop)", + "[PILOT] Plans live in docs/plans/ as markdown — you can edit them before approval", + "[PILOT] Smart Model Routing: Opus for planning and verification, Sonnet for fast implementation", + "[PILOT] Plan-verifier catches gaps, missing edge cases, and requirement mismatches before coding", + "[PILOT] Verifier sub-agents perform independent code review against the plan before completion", + "[PILOT] Spec stop guard blocks the session from ending until verification is complete", + "[PILOT] Worktree Isolation: /spec can run in isolated git worktrees — main branch stays clean", + "[PILOT] Per-task commits in worktree mode enable git bisect to isolate regressions", + "[PILOT] Rules: Always loaded | Commands: On-demand via /cmd | Skills: Auto-loaded when relevant", + "[PILOT] Add your own rules, commands, and skills — they survive Pilot updates", + "[PILOT] Standard rules in ~/.claude/rules/ are updated on install — don't edit them", + "[PILOT] Custom rules in .claude/rules/ are yours — Pilot never touches them", + "[PILOT] Skills are auto-loaded when relevant — no need to manually invoke them", + "[PILOT] Skills provide coding standards for Python, TypeScript, Go, testing, and more", + "[PILOT] Create your own skills in .claude/skills/ (avoid standards-* prefix)", + "[PILOT] Run /sync after adding MCP servers or changing project structure", + "[PILOT] /sync discovers undocumented patterns in your codebase and generates rules automatically", + "[PILOT] /vault → Share rules, commands, and skills with your team via a private Git repository", + "[PILOT] /learn extracts reusable knowledge from debugging sessions and workarounds into skills", + "[PILOT] Both /spec and Quick Mode benefit from auto-compaction and persistent memory", + "[PILOT] Multi-Session: Run multiple pilot sessions in the same project — each is fully isolated", + "[PILOT] Verification loops back automatically if tests fail or issues are found", + "[PILOT] Work is verified before marked complete — no more 'hope it works'", + "[PILOT] /spec explores your codebase and asks clarifying questions before writing the plan", + "[PILOT] Code is auto-formatted, linted, and type-checked on every edit", + "[PILOT] Pilot auto-updates to the latest version when launched via the pilot command", + "[PILOT] Shell integration: pilot and ccp commands work in bash, fish, and zsh automatically", + "[PILOT] Zero API keys needed — web search and scraping work out of the box", + "[PILOT] All Pilot CLI commands support --json for structured, machine-readable output", + "[PILOT] Privacy: No code, files, or project data ever leaves your machine through Pilot", + "[PILOT] Pilot works with any existing project — no scaffolding, no restructuring required", + "[PILOT] Install a specific version: export VERSION=x.y.z before running the install script", + "[PILOT] Platforms: macOS, Linux, and Windows (WSL2) are all supported", + "[PILOT] Dev Container recommended — isolated environment, no system conflicts", + "[PILOT] Please star the repository: github.com/maxritter/claude-pilot", + "[PILOT] Fun fact: Pilot is built with Pilot — a self-improving development loop" + ], + "excludeDefault": true + }, "prefersReducedMotion": true, "showTurnDuration": false, "alwaysThinkingEnabled": true, From f3b75e7e0af7b9e8d6fe9de1af71a24b00aeaa85 Mon Sep 17 00:00:00 2001 From: Max Ritter Date: Wed, 18 Feb 2026 09:02:12 +0100 Subject: [PATCH 4/7] fix: remove auto-stash from worktree sync, fix CWD shell issue, require clean working tree --- launcher/tests/unit/test_worktree.py | Bin 46375 -> 38498 bytes launcher/worktree.py | Bin 16050 -> 14725 bytes pilot/commands/spec-verify.md | 54 ++++++++++++++++++--------- 3 files changed, 37 insertions(+), 17 deletions(-) diff --git a/launcher/tests/unit/test_worktree.py b/launcher/tests/unit/test_worktree.py index 544a83938d8e968b20631894f9160376df182848..9849fd2842a425ca5b8583b7209cf3951cb73e3d 100644 GIT binary patch literal 38498 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 literal 46375 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%0Aew}MpY9raJkGnvF?PMRF*gapWV5@Q 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 LMGn2w6OF-F>t#4n diff --git a/launcher/worktree.py b/launcher/worktree.py index 3f217b6e222186e158ce7ff8301f0329ceabee49..f0e803aff0ea461bc02e2c98d9acea836f17fe2a 100644 GIT binary patch literal 14725 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 TB}D9k{^E`;BEw@s!JU8Tn#G#d literal 16050 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 sE>6r%|H&?N" user-invocable: false -model: opus[1m] +model: opus hooks: Stop: - command: uv run python "${CLAUDE_PLUGIN_ROOT}/hooks/spec_verify_validator.py" @@ -494,14 +494,39 @@ This is the THIRD user interaction point in the `/spec` workflow (first is workt 3. **If no worktree is active** (`"found": false`): Skip to Step 3.12 (this is a non-worktree spec run or worktree was already synced). -4. **Show diff summary:** +4. **Pre-sync: Check working tree is clean (MANDATORY)** + + The sync requires a clean working tree on the base branch. Check now and stop if dirty: + + ```bash + git -C status --porcelain + ``` + + **If output is non-empty (dirty working tree):** + - Report to user: "Cannot sync: the main branch has uncommitted changes. Please commit or `git stash` them first, then re-run `/spec ` to resume verification." + - Do NOT proceed with sync. Step 3.12 will loop back to implementation. + +5. **Save plan file to project root (MANDATORY)** + + Plan files are gitignored and live only in the worktree. Copy the plan to the project root before deleting the worktree so it persists locally for reference. + + ```bash + # plan_path is the worktree-relative path, e.g. .worktrees/spec-slug-hash/docs/plans/2026-02-09-slug.md + # Compute the destination in the project root: + mkdir -p /docs/plans + cp /docs/plans/ + ``` + + This file is gitignored and will NOT be committed. It stays on disk for local reference only. + +6. **Show diff summary:** ```bash ~/.pilot/bin/pilot worktree diff --json # Returns JSON with changed files list ``` -5. **Ask user for sync decision:** +7. **Ask user for sync decision:** ``` AskUserQuestion: @@ -512,43 +537,38 @@ This is the THIRD user interaction point in the `/spec` workflow (first is workt - "Discard all changes" — Remove worktree and branch without merging ``` -6. **Handle user choice:** +8. **Handle user choice:** **If "Yes, squash merge":** ```bash ~/.pilot/bin/pilot worktree sync --json - # Returns: {"success": true, "files_changed": N, "commit_hash": "...", "stash_warning": null|"..."} or {"success": false, "error": "..."} + # Returns: {"success": true, "files_changed": N, "commit_hash": "..."} or {"success": false, "error": "..."} ``` - **Check `stash_warning` in the response.** If non-null, the user had uncommitted changes that couldn't be cleanly restored after the merge. Report the warning so the user can run `git stash pop` manually. + If sync fails (e.g. merge conflict), report the error and ask user to resolve manually. - If sync succeeds, clean up the worktree (use `--force` since changes are already merged): + If sync succeeds, clean up **and immediately cd back** in the SAME bash invocation. The shell CWD will be invalid after the worktree is deleted — combining them prevents the broken-shell issue: ```bash - ~/.pilot/bin/pilot worktree cleanup --force --json + PROJECT_ROOT=$(~/.pilot/bin/pilot worktree cleanup --force --json | python3 -c "import sys,json; print(json.load(sys.stdin)['project_root'])") && cd "$PROJECT_ROOT" ``` - **⚠️ CRITICAL: After cleanup, `cd` to the `project_root` from the JSON response.** The shell CWD may have been inside the now-deleted worktree directory, which breaks all subsequent commands. - - ```bash - cd - ``` + **⛔ NEVER call cleanup and cd in separate Bash tool calls.** Deleting the worktree invalidates the shell's CWD. Every subsequent Bash call will fail with exit code 1 until the session restarts. Report: "Changes synced to `` — N files changed, commit ``" - If `stash_warning` was set: also report "⚠ Your previously uncommitted changes need manual restore: `git stash pop`" **If "No, keep worktree":** Report: "Worktree preserved at ``. You can sync later via `pilot worktree sync ` or discard via `pilot worktree cleanup `." **If "Discard all changes":** + Combine cleanup + cd in a SINGLE bash call (same reason as above): + ```bash - ~/.pilot/bin/pilot worktree cleanup --force --json + PROJECT_ROOT=$(~/.pilot/bin/pilot worktree cleanup --force --json | python3 -c "import sys,json; print(json.load(sys.stdin)['project_root'])") && cd "$PROJECT_ROOT" ``` - **⚠️ After cleanup, `cd` to the `project_root` from the JSON response** (same CWD issue as above). - Report: "Worktree and branch discarded." ### Step 3.12: Update Plan Status From 72bb23018c6b0c427226aff1d14b7990ea22b10e Mon Sep 17 00:00:00 2001 From: Max Ritter Date: Wed, 18 Feb 2026 09:04:18 +0100 Subject: [PATCH 5/7] chore: untrack plan file (gitignored) --- .../2026-02-18-model-selection-settings.md | 488 ------------------ 1 file changed, 488 deletions(-) delete mode 100644 docs/plans/2026-02-18-model-selection-settings.md diff --git a/docs/plans/2026-02-18-model-selection-settings.md b/docs/plans/2026-02-18-model-selection-settings.md deleted file mode 100644 index e1a1c4d1..00000000 --- a/docs/plans/2026-02-18-model-selection-settings.md +++ /dev/null @@ -1,488 +0,0 @@ -# Model Selection Settings Implementation Plan - -Created: 2026-02-18 -Status: COMPLETE -Approved: Yes -Iterations: 0 -Worktree: Yes - -> **Status Lifecycle:** PENDING → COMPLETE → VERIFIED -> **Iterations:** Tracks implement→verify cycles (incremented by verify phase) -> -> - PENDING: Initial state, awaiting implementation -> - COMPLETE: All tasks implemented -> - VERIFIED: All checks passed -> -> **Approval Gate:** Implementation CANNOT proceed until `Approved: Yes` -> **Worktree:** Set at plan creation (from dispatcher). `Yes` uses git worktree isolation; `No` works directly on current branch (default) - -## Summary - -**Goal:** Add granular, per-component model selection to Claude Pilot — users can configure the model for the main session, each command, and each agent via a Console Settings page. Preferences persist in `~/.pilot/config.json` and the launcher injects them into installed files before Claude launches. - -**Architecture:** Config file (`~/.pilot/config.json`) → Console Settings UI (read/write via API) → Launcher injection on startup (modifies `~/.claude/pilot/settings.json`, commands, agents in-place) → Claude Code reads modified files. - -**Tech Stack:** Python (launcher), TypeScript/Bun (Console API), React/DaisyUI (Console UI) - -## Scope - -### In Scope - -- Model preference storage in `~/.pilot/config.json` -- Console Settings page with per-component model dropdowns -- Console API endpoints (GET/PUT) for reading/writing config -- Launcher startup injection into installed plugin files -- Fix hardcoded 200K context window assumptions -- Update ModelRoutingInfo in Usage view to show dynamic config -- Restart notification in Console UI after settings change -- 1M context availability warning - -### Out of Scope - -- Auto-detection of user's Claude subscription tier -- Live model switching without restart -- Changes to the installer — it installs defaults; launcher handles user overrides - -## Prerequisites - -- Console worker running (`localhost:41777`) -- Pilot installed with plugin at `~/.claude/pilot/` - -## Context for Implementer - -- **Patterns to follow:** - - Route handler pattern: extend `BaseRouteHandler` (see `console/src/services/worker/http/BaseRouteHandler.ts`) - - View pattern: see any view in `console/src/ui/viewer/views/` (e.g., `Usage/index.tsx`) - - Route registration: `worker-service.ts` imports and registers route handlers - - Sidebar nav: add entry to `navItems` array in `SidebarNav.tsx` - - Config reading: `~/.pilot/config.json` is already read by the launcher (`launcher/config.py`, `launcher/updater.py`) -- **Conventions:** - - Python: `from __future__ import annotations`, type hints, pytest markers - - TypeScript: ESM imports, `.js` extensions in imports - - React: functional components, DaisyUI classes -- **Key files:** - - `~/.pilot/config.json` — user preferences (existing, add model fields) - - `pilot/settings.json` → installed to `~/.claude/pilot/settings.json` — Claude Code reads `"model"` field - - `pilot/commands/*.md` — YAML front matter has `model:` field - - `pilot/agents/*.md` — YAML front matter has `model:` field - - `launcher/wrapper.py` — startup flow, `start()` method - - `launcher/config.py` — `MAX_CONTEXT_TOKENS = 200_000` (hardcoded) - - `pilot/hooks/context_monitor.py` — hardcoded `200000` for context calculations - - `launcher/helper.py` — `MAX_CONTEXT_TOKENS` fallback for context percentage -- **Gotchas:** - - Command YAML headers use `---` delimiters — must preserve all other fields when updating `model:` - - Agent model field only accepts `sonnet` or `opus` (no `[1m]` variants) - - `context_window_size` is provided by Claude Code via statusline JSON — the hardcoded values are only fallbacks - - The `~/.claude/pilot/` directory is the installed plugin copy, not the source `pilot/` directory - -## Runtime Environment - -- **Console start:** Managed by Pilot launcher (auto-started) -- **Port:** 41777 -- **Health check:** `curl http://localhost:41777/api/health` - -## Model Options - -| Context | Main Session / Commands | Agents (subagents) | -|---------|------------------------|-------------------| -| **Standard** | `sonnet`, `opus` | `sonnet`, `opus` | -| **1M** | `sonnet[1m]`, `opus[1m]` | ❌ Not available | - -Display names: "Sonnet 4.6", "Sonnet 4.6 1M", "Opus 4.6", "Opus 4.6 1M" - -## Default Config (matches current routing, without 1M) - -```json -{ - "model": "sonnet", - "commands": { - "spec": "sonnet", - "spec-plan": "opus", - "spec-implement": "sonnet", - "spec-verify": "opus", - "vault": "sonnet", - "sync": "sonnet", - "learn": "sonnet" - }, - "agents": { - "plan-challenger": "sonnet", - "plan-verifier": "sonnet", - "spec-reviewer-compliance": "sonnet", - "spec-reviewer-quality": "opus" - } -} -``` - -## Progress Tracking - -**MANDATORY: Update this checklist as tasks complete. Change `[ ]` to `[x]`.** - -- [x] Task 1: Config schema and Python utilities -- [x] Task 2: Console API endpoints for settings -- [x] Task 3: Launcher settings injection on startup -- [x] Task 4: Fix hardcoded 200K context window -- [x] Task 5: Console Settings view (React UI) -- [x] Task 6: Update ModelRoutingInfo in Usage view -- [x] Task 7: Update README and website model routing docs -- [x] Task 8: Integration testing and verification - -**Total Tasks:** 8 | **Completed:** 8 | **Remaining:** 0 - -## Implementation Tasks - -### Task 1: Config Schema and Python Utilities - -**Objective:** Define the model config schema, defaults, and read/write utilities in the launcher package. - -**Dependencies:** None - -**Files:** - -- Create: `launcher/model_config.py` -- Modify: `launcher/config.py` (add model-related constants) -- Test: `launcher/tests/unit/test_model_config.py` - -**Key Decisions / Notes:** - -- Config path: `~/.pilot/config.json` (already exists, add `model`, `commands`, `agents` keys) -- Read existing config, merge with defaults for any missing keys (forward-compatible) -- Validate model values: main/commands accept `sonnet`, `sonnet[1m]`, `opus`, `opus[1m]`; agents accept only `sonnet`, `opus` -- Function: `read_model_config() -> ModelConfig` — returns dataclass with all model settings -- Function: `write_model_config(config: ModelConfig) -> None` — writes to config.json preserving other keys -- Function: `get_context_tokens_for_model(model: str) -> int` — returns 200_000 or 1_000_000 -- Constants: `MODEL_CHOICES_FULL = ["sonnet", "sonnet[1m]", "opus", "opus[1m]"]`, `MODEL_CHOICES_AGENT = ["sonnet", "opus"]` -- Constants: `DEFAULT_MODEL_CONFIG` dict with defaults shown above -- Constants: `MODEL_DISPLAY_NAMES` mapping model IDs to display names - -**Definition of Done:** - -- [ ] `read_model_config()` reads `~/.pilot/config.json` and returns defaults for missing keys -- [ ] `write_model_config()` preserves existing non-model keys in config.json -- [ ] `write_model_config()` writes atomically (write to temp file then `os.rename`) to prevent partial reads -- [ ] `get_context_tokens_for_model()` returns correct token count for all 4 model IDs -- [ ] Invalid model values raise `ValueError` with descriptive message -- [ ] All tests pass - -**Verify:** - -- `uv run pytest launcher/tests/unit/test_model_config.py -q` - ---- - -### Task 2: Console API Endpoints for Settings - -**Objective:** Add REST API endpoints so the Console UI can read and write model preferences. - -**Dependencies:** Task 1 (uses same config.json schema) - -**Files:** - -- Create: `console/src/services/worker/http/routes/SettingsRoutes.ts` -- Modify: `console/src/services/worker-service.ts` (register new route handler) -- Test: `console/tests/settings-routes.test.ts` - -**Key Decisions / Notes:** - -- Follow `BaseRouteHandler` pattern from `console/src/services/worker/http/BaseRouteHandler.ts` -- `GET /api/settings` — reads `~/.pilot/config.json`, returns model/commands/agents with defaults merged -- `PUT /api/settings` — accepts partial body; missing keys are left unchanged in config.json (merge, not replace). E.g., `PUT {"model": "opus"}` only updates the main model, leaving commands/agents untouched -- Validation: reject invalid model values (not in allowed list) -- Config file path: `path.join(homedir(), '.pilot', 'config.json')` -- Use atomic write (write to temp file, then rename) to prevent partial reads -- Import and register in `worker-service.ts` following existing pattern (e.g., `VaultRoutes`) - -**Definition of Done:** - -- [ ] `GET /api/settings` returns model config with defaults for missing keys -- [ ] `PUT /api/settings` validates model values and merges into config.json (partial update supported) -- [ ] `PUT` with only `{"model": "opus"}` does not overwrite existing commands/agents keys -- [ ] Invalid model values return 400 with descriptive error -- [ ] Non-model keys in config.json are preserved on write -- [ ] PUT uses atomic write (temp file + rename) when persisting config.json -- [ ] Route handler registered in worker-service.ts - -**Verify:** - -- `curl http://localhost:41777/api/settings` returns JSON with model, commands, agents -- `curl -X PUT http://localhost:41777/api/settings -H 'Content-Type: application/json' -d '{"model":"opus"}'` updates config - ---- - -### Task 3: Launcher Settings Injection on Startup - -**Objective:** On startup, the launcher reads `~/.pilot/config.json` and injects model preferences into the installed plugin files before launching Claude. - -**Dependencies:** Task 1 - -**Files:** - -- Create: `launcher/settings_injector.py` -- Modify: `launcher/wrapper.py` (call injector in `start()` before launching Claude) -- Test: `launcher/tests/unit/test_settings_injector.py` - -**Key Decisions / Notes:** - -- Injection happens in `wrapper.py:start()`, after license check but before `_start_claude()` -- Inject into `~/.claude/pilot/settings.json`: update `"model"` field to config's main model -- Inject into `~/.claude/pilot/commands/*.md`: update `model:` in YAML front matter for each command -- Inject into `~/.claude/pilot/agents/*.md`: update `model:` in YAML front matter for each agent -- YAML front matter parsing: extract content between first pair of `---` delimiters (true front matter scope), then replace `model:` line within that scope only. Don't use a YAML library — the files have markdown after the front matter -- Pattern within front matter: `re.sub(r'^(model:\s*).+$', r'\1' + new_model, front_matter, count=1, flags=re.MULTILINE)`. If no `model:` line found in front matter, insert `model: ` after the first `---` line and log a warning -- For command/agent files with no corresponding key in config, apply the global `model` default (not the source file's model value). This ensures new commands added in future Pilot versions inherit the user's global preference -- Use atomic writes for plugin files (write to temp file, then `os.rename`) to prevent corruption on interrupted writes or concurrent sessions -- Injection runs on every `pilot` startup, so after a Pilot upgrade (which reinstalls source files), the next `pilot` launch re-applies the user's model preferences. No gap for users who always launch via `pilot` -- Per-component injection: if `model` key present → inject settings.json; if `commands` key present → inject command files; if `agents` key present → inject agent files. Missing component keys → that component's files stay unchanged (don't suppress all injection globally) -- For partial `commands`/`agents` dicts: only inject files whose names appear as keys. Missing per-command/per-agent keys → that file stays unchanged -- If `~/.claude/pilot/commands/` or `~/.claude/pilot/agents/` directories are missing, or a specific file doesn't exist, log debug warning and continue — never crash -- On first run, injection replaces any `[1m]` models currently in source files with the non-1M defaults. This is intentional — users must explicitly select 1M models via the Settings UI -- Log injection actions at debug level - -**Definition of Done:** - -- [ ] `inject_model_settings()` updates settings.json model field when `model` key present -- [ ] `inject_model_settings()` updates each command's YAML model field when that command key is in `commands` -- [ ] `inject_model_settings()` updates each agent's YAML model field when that agent key is in `agents` -- [ ] Missing `model` key → settings.json not updated; missing `commands` key → command files not updated; missing per-command key → that command file not updated (per-component granularity) -- [ ] Missing installed plugin files → injection skipped for those files, no exception raised -- [ ] Command/agent files with no config key → global `model` default applied -- [ ] Front matter without `model:` line → line inserted after first `---`, warning logged -- [ ] Injection uses atomic writes (temp file + rename) for all plugin files -- [ ] Injection preserves all non-model content in files -- [ ] Called in wrapper.py start() before Claude launches - -**Verify:** - -- `uv run pytest launcher/tests/unit/test_settings_injector.py -q` -- Manual: change model in `~/.pilot/config.json`, run `pilot`, check `~/.claude/pilot/settings.json` has updated model - ---- - -### Task 4: Fix Hardcoded 200K Context Window - -**Objective:** Replace hardcoded 200K context window assumptions with dynamic values based on the user's model selection. - -**Dependencies:** Task 1 - -**Files:** - -- Modify: `launcher/config.py` (make `MAX_CONTEXT_TOKENS` a function or remove constant) -- Modify: `launcher/helper.py` (use dynamic context tokens) -- Modify: `pilot/hooks/context_monitor.py` (replace hardcoded 200000) -- Modify: `launcher/tests/unit/test_context_monitor.py` (update test expectations) -- Modify: `launcher/tests/unit/statusline/test_formatter.py` (update test values if affected) - -**Key Decisions / Notes:** - -- `launcher/config.py`: Add `get_max_context_tokens() -> int` that reads model from config and returns 200_000 or 1_000_000. Keep `MAX_CONTEXT_TOKENS = 200_000` as default/fallback constant. -- `launcher/config.py`: Make `COMPACTION_THRESHOLD_PCT` dynamic. Currently hardcoded at 83.5% (calibrated for 200K: (200K - 33K buffer) / 200K = 83.5%). With 1M context, the same 33K buffer means compaction fires at 96.7%. Formula: `(window_size - 33000) / window_size * 100`. Add `get_compaction_threshold_pct() -> float` that computes this based on current model's context window. -- Update all consumers of `COMPACTION_THRESHOLD_PCT`: `pilot/hooks/_util.py`, `context_monitor.py` (via `_util.py`), and the statusline widget that renders the grayed-out buffer section -- `launcher/helper.py:123`: Change `actual_tokens / MAX_CONTEXT_TOKENS` to `actual_tokens / get_max_context_tokens()` -- `pilot/hooks/context_monitor.py:134`: Change `tokens / 200000` to use `_get_max_context_tokens()` from `_util.py` -- `pilot/hooks/context_monitor.py:153`: Change `statusline_pct / 100 * 200000` similarly -- **Critical:** Hooks run as standalone scripts and CANNOT import from `launcher`. Add `_read_model_from_config() -> str` and `_get_max_context_tokens() -> int` to `pilot/hooks/_util.py`. These read `~/.pilot/config.json` directly (intentional duplication from `launcher/model_config.py` to avoid import dependencies). Map model ID → token count: `[1m]` suffix → 1_000_000, else → 200_000 -- Add a test that verifies `context_monitor.py` can be executed as a standalone script without ImportError -- Note: The statusline receives `context_window_size` from Claude Code itself — the hardcoded values are only used in fallback paths when the statusline cache isn't available. So this is a correctness fix for edge cases. - -**Definition of Done:** - -- [ ] No hardcoded `200000` or `200_000` in context calculation paths -- [ ] `COMPACTION_THRESHOLD_PCT` is dynamic: 83.5% for 200K, 96.7% for 1M (formula: `(window - 33K) / window * 100`) -- [ ] Statusline buffer visualization (grayed-out section) uses dynamic threshold -- [ ] `_util.py` has `_read_model_from_config()`, `_get_max_context_tokens()`, and `_get_compaction_threshold_pct()` functions (no launcher imports) -- [ ] 1M model users see correct context percentages in fallback path -- [ ] Existing 200K behavior unchanged for users without 1M -- [ ] `context_monitor.py` executable as standalone script without ImportError -- [ ] All affected tests updated and passing - -**Verify:** - -- `uv run pytest launcher/tests/unit/test_context_monitor.py -q` -- `uv run pytest launcher/tests/ -q` - ---- - -### Task 5: Console Settings View (React UI) - -**Objective:** Create a Settings page in the Console with model selection dropdowns for main session, each command, and each agent. - -**Dependencies:** Task 2 - -**Files:** - -- Create: `console/src/ui/viewer/views/Settings/index.tsx` -- Create: `console/src/ui/viewer/views/Settings/ModelSelect.tsx` -- Modify: `console/src/ui/viewer/views/index.ts` (export SettingsView) -- Modify: `console/src/ui/viewer/App.tsx` (add route) -- Modify: `console/src/ui/viewer/layouts/Sidebar/SidebarNav.tsx` (add nav item) -- Create: `console/src/ui/viewer/hooks/useSettings.ts` - -**Key Decisions / Notes:** - -- Add nav item: `{ icon: 'lucide:settings', label: 'Settings', href: '#/settings' }` — place it at the bottom of the nav list (after Vault) -- Route: `{ path: '/settings', component: SettingsView }` -- Settings page layout: - - **Section 1: Main Model** — single dropdown for quick mode model (4 choices) - - **Section 2: Commands** — table with command name + dropdown per row (4 choices each) - - **Section 3: Agents** — table with agent name + dropdown per row (2 choices each: sonnet, opus) - - **Info alert** at top: "1M context models (Sonnet 4.6 1M, Opus 4.6 1M) require a compatible Anthropic subscription. Not all users have access." - - **Restart notice** (shown after saving): "Settings saved. Restart Pilot to apply changes." -- `useSettings` hook: fetches `GET /api/settings`, provides `save()` function that calls `PUT /api/settings` -- `ModelSelect` component: reusable dropdown with model display names, accepts `choices` prop to restrict options -- Use DaisyUI `select` component for dropdowns, `alert` for notices, `card` for sections -- Save button at bottom of page (not auto-save — explicit action) - -**Definition of Done:** - -- [ ] Settings page accessible at `#/settings` via sidebar navigation -- [ ] Main model dropdown shows 4 choices with correct display names -- [ ] Each command has a dropdown with 4 model choices -- [ ] Each agent has a dropdown with 2 model choices (sonnet, opus only) -- [ ] 1M context warning displayed -- [ ] Save button writes to API, shows restart notice on success -- [ ] Page loads current settings from API on mount -- [ ] Dropdowns are disabled or show a loading skeleton while settings are being fetched -- [ ] If the API call fails on mount, the page shows an error message rather than silently using empty defaults - -**Verify:** - -- Open `http://localhost:41777/#/settings` — page renders with all dropdowns -- Change a model, click Save — verify `~/.pilot/config.json` updated -- Verify restart notice appears after saving - ---- - -### Task 6: Update ModelRoutingInfo in Usage View - -**Objective:** Replace the hardcoded model routing table in the Usage view with dynamic content reflecting the user's actual model configuration. - -**Dependencies:** Task 2, Task 5 - -**Files:** - -- Modify: `console/src/ui/viewer/views/Usage/ModelRoutingInfo.tsx` - -**Key Decisions / Notes:** - -- Fetch current settings from `GET /api/settings` (reuse `useSettings` hook from Task 5) -- Replace hardcoded "Opus 4.6" / "Sonnet 4.5" with actual model display names from config -- Update the routing table to show: Planning → config.commands["spec-plan"], Implementation → config.commands["spec-implement"], Verification → config.commands["spec-verify"] -- Update the review agents column to show actual agent models from config -- Keep the subscription tier links (Max 5x, Max 20x, Team) — those are still relevant -- Update the Quick Mode tip to reference the user's actual main model instead of hardcoded values -- Add a link to the Settings page: "Configure models in Settings" - -**Definition of Done:** - -- [ ] Routing table shows actual configured models, not hardcoded values -- [ ] Agent models displayed correctly per config -- [ ] Link to Settings page present -- [ ] When GET /api/settings fails, ModelRoutingInfo renders with static default model values and does not crash or show blank - -**Verify:** - -- Open `http://localhost:41777/#/usage` — ModelRoutingInfo shows current config values -- Change model in Settings, reload Usage — routing info reflects new values - ---- - -### Task 7: Update README and Website Model Routing Docs - -**Objective:** Update the model routing documentation in the README and the website blog post to reflect that models are now user-configurable via the Console Settings page. - -**Dependencies:** Task 5 (Settings page must exist to reference) - -**Files:** - -- Modify: `README.md` (Smart Model Routing section, ~line 209) -- Modify: `docs/site/src/content/blog/model-selection.md` (Model Configuration section) - -**Key Decisions / Notes:** - -- README: Update the "Smart Model Routing" section to mention that models are now configurable via Console Settings (`localhost:41777/#/settings`). Keep the explanation of the routing strategy (Opus for planning, Sonnet for implementation) but note these are configurable defaults -- README: Add a note about 1M context models requiring a compatible subscription -- Website blog `model-selection.md`: Update the Model Configuration section to reference the Console Settings page as the primary way to configure models. Update any hardcoded model names to reflect that they're defaults -- Don't rewrite entire sections — add brief notes about configurability and link to the Settings page - -**Definition of Done:** - -- [ ] README "Smart Model Routing" section mentions Console Settings page for model configuration -- [ ] README includes note about 1M context availability -- [ ] Website model-selection.md references Console Settings for model configuration -- [ ] No broken links or formatting issues - -**Verify:** - -- Read updated sections and verify accuracy -- `cd docs/site && npm run build` — site builds without errors (if applicable) - ---- - -### Task 8: Integration Testing and Verification - -**Objective:** End-to-end verification that the full flow works: config → API → UI → injection → Claude launch. - -**Dependencies:** Tasks 1-7 - -**Files:** - -- No new files — this is verification of existing work - -**Key Decisions / Notes:** - -- Run all Python tests: `uv run pytest -q` -- Run all Console tests: `cd console && bun test` -- Manual verification flow: - 1. Start with clean config (no model keys in `~/.pilot/config.json`) - 2. Open Console Settings — verify defaults populated - 3. Change main model to `opus[1m]`, save - 4. Verify `~/.pilot/config.json` has `"model": "opus[1m]"` - 5. Restart Pilot - 6. Verify `~/.claude/pilot/settings.json` has `"model": "opus[1m]"` - 7. Verify command files updated (e.g., `~/.claude/pilot/commands/spec-plan.md` has `model: opus[1m]`) - 8. Open Usage page — verify ModelRoutingInfo shows updated models -- Verify that missing config keys don't break anything (resilience test) - -**Definition of Done:** - -- [ ] All Python tests pass (`uv run pytest -q`) -- [ ] All Console tests pass (`cd console && bun test`) -- [ ] After saving `model=opus[1m]` in Settings UI: `~/.pilot/config.json` contains `"model": "opus[1m]"` -- [ ] After restarting Pilot: `~/.claude/pilot/settings.json` has `"model": "opus[1m]"` -- [ ] After restart: `~/.claude/pilot/commands/spec-plan.md` YAML front matter has `model: opus[1m]` -- [ ] After restart: `~/.claude/pilot/agents/plan-verifier.md` YAML front matter still has `model: sonnet` (agents don't get 1M) -- [ ] Usage page ModelRoutingInfo shows updated model display names -- [ ] With `model=opus[1m]` in config, context percentage calculation uses 1M denominator (verified via unit test or manual check) -- [ ] No regressions in statusline or context monitoring - -**Verify:** - -- `uv run pytest -q` — 0 failures -- `cd console && bun test` — 0 failures -- Manual walkthrough of the complete flow - -## Testing Strategy - -- **Unit tests:** Config read/write utilities (Python), settings injection logic (Python), API endpoint validation (TypeScript) -- **Integration tests:** Full config → injection → file verification flow -- **Manual verification:** Console UI interaction, model dropdowns, save/restart flow, Usage page dynamic routing - -## Risks and Mitigations - -| Risk | Likelihood | Impact | Mitigation | -|------|-----------|--------|------------| -| Injection corrupts command/agent YAML | Low | High | Scope regex to front matter only; atomic writes (temp file + rename) for all files; verify content preserved in tests | -| Config.json doesn't exist on first run | Med | Low | `read_model_config()` returns defaults when file missing or keys absent | -| 1M user sees wrong context percentage in fallback | Low | Med | Dynamic `_get_max_context_tokens()` reads model from config; falls back to 200K constant | -| Race condition: console writes config while launcher reads | Low | Low | Atomic write (temp file + rename) in both Python and TypeScript | -| Installer upgrade overwrites injected files | Med | Low | Injection runs on every `pilot` startup, re-applying config after upgrade. Users who always launch via `pilot` are unaffected | -| Concurrent sessions writing plugin files | Low | Low | Atomic writes prevent corruption; all sessions inject the same config values (single config.json) | - -## Open Questions - -- None — all design decisions confirmed with user. - -### Deferred Ideas - -- Auto-detect user's Anthropic subscription tier to filter available models -- Live model switching without requiring Pilot restart -- Blog/website content updates about model selection From eb69d4773f12a54e7532b31c4f9fdeec15a4c4b5 Mon Sep 17 00:00:00 2001 From: Max Ritter Date: Wed, 18 Feb 2026 09:08:27 +0100 Subject: [PATCH 6/7] feat: set default models to Sonnet 4.6, add prettier and golangci-lint installer support --- installer/steps/dependencies.py | 30 +++++ .../tests/unit/steps/test_dependencies.py | 111 ++++++++++++++++++ pilot/commands/learn.md | 2 +- pilot/commands/spec-implement.md | 2 +- pilot/commands/spec-plan.md | 2 +- pilot/commands/spec.md | 2 +- pilot/commands/sync.md | 2 +- pilot/commands/vault.md | 2 +- pilot/settings.json | 2 +- 9 files changed, 148 insertions(+), 7 deletions(-) diff --git a/installer/steps/dependencies.py b/installer/steps/dependencies.py index d0494941..aee77263 100644 --- a/installer/steps/dependencies.py +++ b/installer/steps/dependencies.py @@ -467,6 +467,30 @@ def install_typescript_lsp() -> bool: return _run_bash_with_retry(npm_global_cmd("npm install -g @vtsls/language-server typescript")) +def install_prettier() -> bool: + """Install prettier code formatter globally for TypeScript/JavaScript files.""" + if command_exists("prettier"): + return True + return _run_bash_with_retry(npm_global_cmd("npm install -g prettier")) + + +def install_golangci_lint() -> bool: + """Install golangci-lint for comprehensive Go code linting. + + Skips if Go is not installed, since golangci-lint requires it. + Uses the official install script to place the binary in $(go env GOPATH)/bin. + """ + if command_exists("golangci-lint"): + return True + if not command_exists("go"): + return False + install_cmd = ( + "curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh" + " | sh -s -- -b $(go env GOPATH)/bin" + ) + return _run_bash_with_retry(install_cmd, timeout=120) + + def _is_ccusage_installed() -> bool: """Check if ccusage is installed globally.""" try: @@ -818,6 +842,12 @@ def run(self, ctx: InstallContext) -> None: if _install_with_spinner(ui, "vtsls (TypeScript LSP server)", install_typescript_lsp): installed.append("typescript_lsp") + if _install_with_spinner(ui, "prettier (TypeScript formatter)", install_prettier): + installed.append("prettier") + + if _install_with_spinner(ui, "golangci-lint (Go linter)", install_golangci_lint): + installed.append("golangci_lint") + if _install_with_spinner(ui, "ccusage (usage tracking)", install_ccusage): installed.append("ccusage") diff --git a/installer/tests/unit/steps/test_dependencies.py b/installer/tests/unit/steps/test_dependencies.py index c5a28f47..de04a63e 100644 --- a/installer/tests/unit/steps/test_dependencies.py +++ b/installer/tests/unit/steps/test_dependencies.py @@ -31,6 +31,8 @@ def test_dependencies_check_returns_false(self): ) assert step.check(ctx) is False + @patch("installer.steps.dependencies.install_golangci_lint", return_value=True) + @patch("installer.steps.dependencies.install_prettier", return_value=True) @patch("installer.steps.dependencies._precache_npx_mcp_servers", return_value=True) @patch("installer.steps.dependencies.install_vexor") @patch("installer.steps.dependencies._install_plugin_dependencies") @@ -49,6 +51,8 @@ def test_dependencies_run_installs_core( mock_plugin_deps, mock_vexor, _mock_precache, + _mock_prettier, + _mock_golangci_lint, ): """DependenciesStep installs all dependencies including Python tools.""" from installer.context import InstallContext @@ -769,3 +773,110 @@ def test_install_vexor_routes_to_mlx_on_macos_arm64(self, _mock_platform, mock_m assert result is True mock_mlx.assert_called_once() + + +class TestInstallPrettier: + """Test prettier global installation.""" + + def test_install_prettier_exists(self): + """install_prettier function exists.""" + from installer.steps.dependencies import install_prettier + + assert callable(install_prettier) + + @patch("installer.steps.dependencies.command_exists", return_value=True) + def test_install_prettier_skips_if_already_installed(self, _mock_cmd): + """install_prettier returns True without installing when prettier is in PATH.""" + from installer.steps.dependencies import install_prettier + + with patch("installer.steps.dependencies._run_bash_with_retry") as mock_run: + result = install_prettier() + + assert result is True + mock_run.assert_not_called() + + @patch("installer.steps.dependencies._run_bash_with_retry", return_value=True) + @patch("installer.steps.dependencies.command_exists", return_value=False) + def test_install_prettier_installs_via_npm(self, _mock_cmd, mock_run): + """install_prettier uses npm install -g prettier when not in PATH.""" + from installer.steps.dependencies import install_prettier + + result = install_prettier() + + assert result is True + mock_run.assert_called_once() + assert "prettier" in mock_run.call_args[0][0] + assert "npm install -g" in mock_run.call_args[0][0] + + @patch("installer.steps.dependencies._run_bash_with_retry", return_value=False) + @patch("installer.steps.dependencies.command_exists", return_value=False) + def test_install_prettier_returns_false_on_failure(self, _mock_cmd, mock_run): + """install_prettier returns False when npm install fails.""" + from installer.steps.dependencies import install_prettier + + result = install_prettier() + + assert result is False + + +class TestInstallGolangciLint: + """Test golangci-lint installation.""" + + def test_install_golangci_lint_exists(self): + """install_golangci_lint function exists.""" + from installer.steps.dependencies import install_golangci_lint + + assert callable(install_golangci_lint) + + @patch("installer.steps.dependencies.command_exists", return_value=True) + def test_install_golangci_lint_skips_if_already_installed(self, mock_cmd): + """install_golangci_lint returns True without installing when already in PATH.""" + from installer.steps.dependencies import install_golangci_lint + + with patch("installer.steps.dependencies._run_bash_with_retry") as mock_run: + result = install_golangci_lint() + + assert result is True + mock_run.assert_not_called() + + @patch("installer.steps.dependencies.command_exists") + def test_install_golangci_lint_skips_without_go(self, mock_cmd): + """install_golangci_lint returns False when go is not installed.""" + from installer.steps.dependencies import install_golangci_lint + + mock_cmd.side_effect = lambda cmd: cmd != "golangci-lint" and False + + with patch("installer.steps.dependencies._run_bash_with_retry") as mock_run: + result = install_golangci_lint() + + assert result is False + mock_run.assert_not_called() + + @patch("installer.steps.dependencies._run_bash_with_retry", return_value=True) + @patch("installer.steps.dependencies.command_exists") + def test_install_golangci_lint_uses_official_script(self, mock_cmd, mock_run): + """install_golangci_lint uses the official install.sh script.""" + from installer.steps.dependencies import install_golangci_lint + + mock_cmd.side_effect = lambda cmd: cmd == "go" + + result = install_golangci_lint() + + assert result is True + mock_run.assert_called_once() + call_args = mock_run.call_args[0][0] + assert "golangci-lint" in call_args + assert "install.sh" in call_args + assert "go env GOPATH" in call_args + + @patch("installer.steps.dependencies._run_bash_with_retry", return_value=False) + @patch("installer.steps.dependencies.command_exists") + def test_install_golangci_lint_returns_false_on_failure(self, mock_cmd, mock_run): + """install_golangci_lint returns False when install script fails.""" + from installer.steps.dependencies import install_golangci_lint + + mock_cmd.side_effect = lambda cmd: cmd == "go" + + result = install_golangci_lint() + + assert result is False diff --git a/pilot/commands/learn.md b/pilot/commands/learn.md index ae9be0d0..b4684053 100644 --- a/pilot/commands/learn.md +++ b/pilot/commands/learn.md @@ -1,6 +1,6 @@ --- description: Extract reusable knowledge into skills - online learning system -model: sonnet[1m] +model: sonnet --- # /learn - Online Learning System diff --git a/pilot/commands/spec-implement.md b/pilot/commands/spec-implement.md index 58531da0..e4d40c13 100644 --- a/pilot/commands/spec-implement.md +++ b/pilot/commands/spec-implement.md @@ -2,7 +2,7 @@ description: "Spec implementation phase - TDD loop for each task in the plan" argument-hint: "" user-invocable: false -model: sonnet[1m] +model: sonnet --- # /spec-implement - Implementation Phase diff --git a/pilot/commands/spec-plan.md b/pilot/commands/spec-plan.md index 2e2d8dba..ff5bd533 100644 --- a/pilot/commands/spec-plan.md +++ b/pilot/commands/spec-plan.md @@ -2,7 +2,7 @@ description: "Spec planning phase - explore codebase, design plan, get approval" argument-hint: " or " user-invocable: false -model: opus[1m] +model: opus hooks: Stop: - command: uv run python "${CLAUDE_PLUGIN_ROOT}/hooks/spec_plan_validator.py" diff --git a/pilot/commands/spec.md b/pilot/commands/spec.md index bdc59a5f..c4491032 100644 --- a/pilot/commands/spec.md +++ b/pilot/commands/spec.md @@ -2,7 +2,7 @@ description: Spec-driven development - plan, implement, verify workflow argument-hint: "" or "" user-invocable: true -model: sonnet[1m] +model: sonnet --- # /spec - Unified Spec-Driven Development diff --git a/pilot/commands/sync.md b/pilot/commands/sync.md index 13b29054..21c30810 100644 --- a/pilot/commands/sync.md +++ b/pilot/commands/sync.md @@ -1,7 +1,7 @@ --- description: Sync project rules and skills with codebase - reads existing rules/skills, explores code, updates documentation, creates new skills user-invocable: true -model: sonnet[1m] +model: sonnet --- # /sync - Sync Project Rules & Skills diff --git a/pilot/commands/vault.md b/pilot/commands/vault.md index eda2300d..68777f42 100644 --- a/pilot/commands/vault.md +++ b/pilot/commands/vault.md @@ -1,7 +1,7 @@ --- description: Manage Team Vault - share and install rules, commands, skills across your team via sx user-invocable: true -model: sonnet[1m] +model: sonnet --- # /vault - Team Vault Management diff --git a/pilot/settings.json b/pilot/settings.json index e8ec3bab..cd28f37d 100644 --- a/pilot/settings.json +++ b/pilot/settings.json @@ -1,5 +1,5 @@ { - "model": "sonnet[1m]", + "model": "sonnet", "env": { "CLAUDE_CODE_ENABLE_TASKS": "true", "CLAUDE_CODE_HIDE_ACCOUNT_INFO": "true", From 4e0a8ebe7171baa0c08e24329c781640ccd580d2 Mon Sep 17 00:00:00 2001 From: Max Ritter Date: Wed, 18 Feb 2026 10:20:36 +0100 Subject: [PATCH 7/7] =?UTF-8?q?fix:=20model=20selection=20settings=20?= =?UTF-8?q?=E2=80=94=20injection=20paths,=20UI,=20build,=20and=20test=20is?= =?UTF-8?q?olation?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Fix command injection writing to wrong path (~/.claude/pilot/commands/ instead of ~/.claude/commands/) - Inject model into global ~/.claude/settings.json so Console settings always override installer three-way merge - Add model_config.py, settings_injector.py, tips.py to Cython MODULE_ORDER - Fix multi-line import strip regex eating next line's indentation - Restore accidentally deleted statusline/tips.py - Fix TS2556 spread argument error in settings-routes test - Default model changed to Opus 4.6 - Reorganize Settings UI: General + Spec Flow sections, default column, sticky save bar, collapsible pricing, 1M subscription note - Remove ModelRoutingInfo from Usage page, increase chart height - Add Settings screenshot to website console carousel - Mock get_max_context_tokens in tests for environment isolation - Update research-tools rule for WebFetch/WebSearch blocking --- .../worker/http/routes/SettingsRoutes.ts | 2 +- console/src/ui/viewer/hooks/useSettings.ts | 2 +- .../src/ui/viewer/views/Settings/index.tsx | 275 +++++++++++------- .../ui/viewer/views/Usage/DailyCostChart.tsx | 26 +- .../viewer/views/Usage/MonthlyCostChart.tsx | 24 +- console/src/ui/viewer/views/Usage/index.tsx | 80 +++-- console/tests/hooks/useSettings.test.ts | 4 +- console/tests/settings-routes.test.ts | 11 +- docs/site/public/console/settings.png | Bin 0 -> 377604 bytes docs/site/src/components/WhatsInside.tsx | 105 +++++-- docs/site/src/content/blog/model-selection.md | 2 +- launcher/build.py | Bin 11398 -> 11481 bytes launcher/model_config.py | Bin 4612 -> 4610 bytes launcher/settings_injector.py | Bin 7957 -> 8857 bytes launcher/statusline/tips.py | Bin 0 -> 5532 bytes .../tests/unit/statusline/test_formatter.py | Bin 41901 -> 42178 bytes .../tests/unit/statusline/test_widgets.py | Bin 22257 -> 22519 bytes launcher/tests/unit/test_context_monitor.py | Bin 14692 -> 14788 bytes launcher/tests/unit/test_helper.py | Bin 6056 -> 6139 bytes launcher/tests/unit/test_model_config.py | Bin 11263 -> 11259 bytes launcher/tests/unit/test_settings_injector.py | Bin 10308 -> 12821 bytes pilot/rules/research-tools.md | 6 +- pilot/scripts/worker-service.cjs | 2 +- pilot/settings.json | 2 - pilot/ui/viewer-bundle.js | 92 +++--- pilot/ui/viewer.css | 2 +- 26 files changed, 402 insertions(+), 233 deletions(-) create mode 100644 docs/site/public/console/settings.png create mode 100644 launcher/statusline/tips.py diff --git a/console/src/services/worker/http/routes/SettingsRoutes.ts b/console/src/services/worker/http/routes/SettingsRoutes.ts index f466cc2f..86372a77 100644 --- a/console/src/services/worker/http/routes/SettingsRoutes.ts +++ b/console/src/services/worker/http/routes/SettingsRoutes.ts @@ -24,7 +24,7 @@ export interface ModelSettings { } export const DEFAULT_SETTINGS: ModelSettings = { - model: "sonnet", + model: "opus", commands: { spec: "sonnet", "spec-plan": "opus", diff --git a/console/src/ui/viewer/hooks/useSettings.ts b/console/src/ui/viewer/hooks/useSettings.ts index 1b9237a8..ae873c22 100644 --- a/console/src/ui/viewer/hooks/useSettings.ts +++ b/console/src/ui/viewer/hooks/useSettings.ts @@ -20,7 +20,7 @@ export interface ModelSettings { } export const DEFAULT_SETTINGS: ModelSettings = { - model: 'sonnet', + model: 'opus', commands: { spec: 'sonnet', 'spec-plan': 'opus', diff --git a/console/src/ui/viewer/views/Settings/index.tsx b/console/src/ui/viewer/views/Settings/index.tsx index 08cd3566..35a6dacb 100644 --- a/console/src/ui/viewer/views/Settings/index.tsx +++ b/console/src/ui/viewer/views/Settings/index.tsx @@ -1,34 +1,55 @@ -import React, { useState } from 'react'; +import { useState } from "react"; import { MODEL_CHOICES_FULL, MODEL_CHOICES_AGENT, DEFAULT_SETTINGS, + MODEL_DISPLAY_NAMES, useSettings, -} from '../../hooks/useSettings.js'; -import { ModelSelect } from './ModelSelect.js'; +} from "../../hooks/useSettings.js"; +import { ModelSelect } from "./ModelSelect.js"; -// Source: https://www.anthropic.com/pricing +// Source: https://platform.claude.com/docs/en/about-claude/pricing + +const SPEC_COMMANDS = ["spec", "spec-plan", "spec-implement", "spec-verify"]; +const GENERAL_COMMANDS = ["vault", "sync", "learn"]; const COMMAND_LABELS: Record = { - spec: '/spec (dispatcher)', - 'spec-plan': '/spec planning phase', - 'spec-implement': '/spec implementation phase', - 'spec-verify': '/spec verification phase', - vault: '/vault', - sync: '/sync', - learn: '/learn', + spec: "/spec (dispatcher)", + "spec-plan": "/spec planning", + "spec-implement": "/spec implement", + "spec-verify": "/spec verify", + vault: "/vault", + sync: "/sync", + learn: "/learn", }; const AGENT_LABELS: Record = { - 'plan-challenger': 'plan-challenger (adversarial reviewer)', - 'plan-verifier': 'plan-verifier (alignment checker)', - 'spec-reviewer-compliance': 'spec-reviewer-compliance (code vs plan)', - 'spec-reviewer-quality': 'spec-reviewer-quality (code review)', + "plan-challenger": "plan-challenger", + "plan-verifier": "plan-verifier", + "spec-reviewer-compliance": "spec-reviewer-compliance", + "spec-reviewer-quality": "spec-reviewer-quality", }; +function DefaultLabel({ model }: { model: string }) { + return ( + + {MODEL_DISPLAY_NAMES[model] ?? model} + + ); +} + export function SettingsView() { - const { settings, isLoading, error, isDirty, saved, updateModel, updateCommand, updateAgent, save } = - useSettings(); + const { + settings, + isLoading, + error, + isDirty, + saved, + updateModel, + updateCommand, + updateAgent, + save, + } = useSettings(); const [saveError, setSaveError] = useState(null); const [isSaving, setIsSaving] = useState(false); @@ -38,7 +59,7 @@ export function SettingsView() { try { await save(); } catch (err) { - setSaveError(err instanceof Error ? err.message : 'Failed to save'); + setSaveError(err instanceof Error ? err.message : "Failed to save"); } finally { setIsSaving(false); } @@ -49,7 +70,7 @@ export function SettingsView() {

Settings

- {[...Array(3)].map((_, i) => ( + {[...Array(2)].map((_, i) => (
@@ -74,128 +95,136 @@ export function SettingsView() { } return ( -
+

Settings

-

Configure model selection for Claude Pilot

-
- - {/* 1M context warning */} -
- - - -
- Sonnet 4.6 1M and Opus 4.6 1M require a compatible Anthropic subscription with 1M context access. - Not all users have access. These variants are only available for the main session and commands — never for sub-agents. -
+

+ Model selection for Claude Pilot. Restart Pilot after saving to apply. +

+

+ 1M context models require an Enterprise or Max (20×) subscription. + Only select them if you already have access. +

- {/* Restart notice */} - {saved && ( -
- - - - Settings saved. Restart Pilot to apply changes. -
- )} - {saveError && (
{saveError}
)} - {/* Section 1: Main Model (Quick Mode) */} + {/* Section 1: General — Main model + utility commands */}
-

Main Model

-

- Used for Quick Mode (direct chat). Changing this also sets the baseline for new commands without explicit config. -

-
- -
- {settings.model.includes('[1m]') ? '1M context' : '200K context'} - {settings.model.startsWith('opus') ? ' · ~1.67× cost of Sonnet' : ''} -
-
- - {/* Cost/performance context */} -
-

Model comparison

-
-
- Sonnet 4.6 -
$3/$15 per MTok · Fast, near Opus quality
-
Best for implementation & most tasks
-
-
- Opus 4.6 -
$5/$25 per MTok · Deepest reasoning
-
Best for planning & complex analysis
-
-
-

- Sonnet 4.6 often matches Opus quality. Default routing uses Opus only for planning & verification. -

+

General

+
+ + + + + + + + + + + + + + + {GENERAL_COMMANDS.map((cmd) => ( + + + + + + ))} + +
SettingModelDefault
+ Main session +
+ Quick Mode / direct chat +
+
+ + + +
+ + {COMMAND_LABELS[cmd] ?? cmd} + + + updateCommand(cmd, model)} + id={`cmd-${cmd}`} + /> + + +
- {/* Section 2: Commands */} + {/* Section 2: Spec Flow — spec commands + sub-agents */}
-

Commands

-

- Model used when each slash command is invoked. Defaults use Opus for planning/verification, Sonnet for execution. +

Spec Flow

+

+ Defaults use Opus for planning/verification, Sonnet for execution.

+ + {/* Spec commands */}
- + - {Object.keys(DEFAULT_SETTINGS.commands).map((cmd) => ( + {SPEC_COMMANDS.map((cmd) => ( - ))}
Command ModelContextDefault
- {COMMAND_LABELS[cmd] ?? cmd} + + {COMMAND_LABELS[cmd] ?? cmd} + updateCommand(cmd, model)} id={`cmd-${cmd}`} /> - {(settings.commands[cmd] ?? '').includes('[1m]') ? '1M' : '200K'} + +
-
-
- {/* Section 3: Sub-Agents */} -
-
-

Sub-Agents

-

- Models used by verification sub-agents spawned during /spec. Limited to Sonnet or Opus — 1M context is not available for sub-agents. + {/* Sub-agents */} +

Sub-Agents

+

+ 1M context not available for sub-agents.

@@ -203,22 +232,31 @@ export function SettingsView() { + {Object.keys(DEFAULT_SETTINGS.agents).map((agent) => ( + ))} @@ -227,18 +265,51 @@ export function SettingsView() { - {/* Save button */} -
+ {/* Pricing reference — collapsible */} +
+ + Pricing reference + +
+
+ + Sonnet 4.6 — $3 / $15 per MTok + + + Opus 4.6 — $5 / $25 per MTok + + + Sonnet 4.6 1M — $3‑6 / + $15‑22.50 + + + Opus 4.6 1M — $5‑10 / $25‑37.50 + +
+

+ 1M variants use standard rates up to 200K tokens, then 2× input / + 1.5× output above. Requires Max or Enterprise subscription. +

+
+
+ + {/* Sticky save bar */} +
{isDirty && !saved && ( Unsaved changes )} + {saved && ( + + Saved — restart Pilot to apply + + )}
); diff --git a/console/src/ui/viewer/views/Usage/DailyCostChart.tsx b/console/src/ui/viewer/views/Usage/DailyCostChart.tsx index f41e6389..87ae8f03 100644 --- a/console/src/ui/viewer/views/Usage/DailyCostChart.tsx +++ b/console/src/ui/viewer/views/Usage/DailyCostChart.tsx @@ -6,9 +6,9 @@ import { CartesianGrid, Tooltip, ResponsiveContainer, -} from 'recharts'; -import { ChartTooltip } from '../Dashboard/charts/ChartTooltip'; -import { formatStarCount } from '../../utils/formatNumber'; +} from "recharts"; +import { ChartTooltip } from "../Dashboard/charts/ChartTooltip"; +import { formatStarCount } from "../../utils/formatNumber"; interface DailyUsageData { date: string; @@ -31,15 +31,18 @@ export function DailyCostChart({ daily }: DailyCostChartProps) { const formattedData = daily.map((item) => ({ ...item, - displayDate: item.date.includes('-') + displayDate: item.date.includes("-") ? `${item.date.slice(5, 7)}/${item.date.slice(8, 10)}` : `${item.date.slice(4, 6)}/${item.date.slice(6, 8)}`, })); return ( -
+
- + @@ -50,7 +53,10 @@ export function DailyCostChart({ daily }: DailyCostChartProps) { - + `Date: ${label}`} valueFormatter={(value, name) => { - if (name === 'totalCost') return [`${Number(value).toFixed(2)}$`, 'Cost']; - if (name === 'totalTokens') return [formatStarCount(Number(value)), 'Tokens']; + if (name === "totalCost") + return [`${Number(value).toFixed(2)}$`, "Cost"]; + if (name === "totalTokens") + return [formatStarCount(Number(value)), "Tokens"]; return [value, name]; }} /> diff --git a/console/src/ui/viewer/views/Usage/MonthlyCostChart.tsx b/console/src/ui/viewer/views/Usage/MonthlyCostChart.tsx index 177ff65b..deb7ac06 100644 --- a/console/src/ui/viewer/views/Usage/MonthlyCostChart.tsx +++ b/console/src/ui/viewer/views/Usage/MonthlyCostChart.tsx @@ -6,9 +6,9 @@ import { CartesianGrid, Tooltip, ResponsiveContainer, -} from 'recharts'; -import { ChartTooltip } from '../Dashboard/charts/ChartTooltip'; -import { formatStarCount } from '../../utils/formatNumber'; +} from "recharts"; +import { ChartTooltip } from "../Dashboard/charts/ChartTooltip"; +import { formatStarCount } from "../../utils/formatNumber"; interface MonthlyUsageData { month: string; @@ -30,10 +30,16 @@ export function MonthlyCostChart({ monthly }: MonthlyCostChartProps) { } return ( -
+
- - + + `Month: ${label}`} valueFormatter={(value, name) => { - if (name === 'totalCost') return [`${Number(value).toFixed(2)}$`, 'Cost']; - if (name === 'totalTokens') return [formatStarCount(Number(value)), 'Tokens']; + if (name === "totalCost") + return [`${Number(value).toFixed(2)}$`, "Cost"]; + if (name === "totalTokens") + return [formatStarCount(Number(value)), "Tokens"]; return [value, name]; }} /> diff --git a/console/src/ui/viewer/views/Usage/index.tsx b/console/src/ui/viewer/views/Usage/index.tsx index f07175a3..4b32eafc 100644 --- a/console/src/ui/viewer/views/Usage/index.tsx +++ b/console/src/ui/viewer/views/Usage/index.tsx @@ -1,11 +1,11 @@ -import { useUsage } from '../../hooks/useUsage'; -import { UsageSummaryCards } from './UsageSummaryCards'; -import { DailyCostChart } from './DailyCostChart'; -import { MonthlyCostChart } from './MonthlyCostChart'; -import { ModelRoutingInfo } from './ModelRoutingInfo'; +import { useUsage } from "../../hooks/useUsage"; +import { UsageSummaryCards } from "./UsageSummaryCards"; +import { DailyCostChart } from "./DailyCostChart"; +import { MonthlyCostChart } from "./MonthlyCostChart"; export function UsageView() { - const { daily, monthly, isLoading, error, available, dataExists } = useUsage(); + const { daily, monthly, isLoading, error, available, dataExists } = + useUsage(); if (isLoading) { return ( @@ -55,15 +55,32 @@ export function UsageView() {

Usage

-

Token usage and API cost tracking

+

+ Token usage and API cost tracking +

- - + +

Usage tracking requires ccusage

-
Install with: npm install -g ccusage@latest
+
+ Install with:{" "} + + npm install -g ccusage@latest + +
@@ -75,7 +92,9 @@ export function UsageView() {

Usage

-

Token usage and API cost tracking

+

+ Token usage and API cost tracking +

Failed to load usage data: {error} @@ -89,13 +108,28 @@ export function UsageView() {

Usage

-

Token usage and API cost tracking

+

+ Token usage and API cost tracking +

- - + + - No usage data yet. Statistics will appear here after you use Claude Code. + + No usage data yet. Statistics will appear here after you use Claude + Code. +
); @@ -113,10 +147,18 @@ export function UsageView() { -
-
+
+
-

Daily Cost & Tokens (Last 14 Days)

+

+ Daily Cost & Tokens (Last 14 Days) +

@@ -128,8 +170,6 @@ export function UsageView() {
- -
); } diff --git a/console/tests/hooks/useSettings.test.ts b/console/tests/hooks/useSettings.test.ts index b5e69101..3e43d777 100644 --- a/console/tests/hooks/useSettings.test.ts +++ b/console/tests/hooks/useSettings.test.ts @@ -38,9 +38,9 @@ describe('useSettings', () => { expect(MODEL_DISPLAY_NAMES['opus[1m]']).toContain('1M'); }); - it('DEFAULT_SETTINGS has sonnet as main model (no 1M)', async () => { + it('DEFAULT_SETTINGS has opus as main model (no 1M)', async () => { const { DEFAULT_SETTINGS } = await import('../../src/ui/viewer/hooks/useSettings.js'); - expect(DEFAULT_SETTINGS.model).toBe('sonnet'); + expect(DEFAULT_SETTINGS.model).toBe('opus'); expect(DEFAULT_SETTINGS.model).not.toContain('[1m]'); }); diff --git a/console/tests/settings-routes.test.ts b/console/tests/settings-routes.test.ts index 6c9029af..7247c4d2 100644 --- a/console/tests/settings-routes.test.ts +++ b/console/tests/settings-routes.test.ts @@ -90,8 +90,8 @@ describe('SettingsRoutes', () => { }); describe('DEFAULT_SETTINGS', () => { - it('should have sonnet as default main model', () => { - expect(DEFAULT_SETTINGS.model).toBe('sonnet'); + it('should have opus as default main model', () => { + expect(DEFAULT_SETTINGS.model).toBe('opus'); }); it('should have no 1M models in defaults', () => { @@ -245,10 +245,10 @@ describe('SettingsRoutes', () => { it('should write atomically using temp file', async () => { const writtenPaths: string[] = []; - const origWriteFileSync = fs.writeFileSync.bind(fs); + const origWriteFileSync = fs.writeFileSync as Function; const spy = spyOn(fs, 'writeFileSync').mockImplementation((p: fs.PathOrFileDescriptor, ...args: any[]) => { writtenPaths.push(String(p)); - return origWriteFileSync(p, ...args); + return origWriteFileSync.call(fs, p, ...args); }); const m = makeMockRes(); @@ -257,8 +257,7 @@ describe('SettingsRoutes', () => { spy.mockRestore(); - const hasTmp = writtenPaths.some(p => p.includes('.tmp') || p !== configPath); - expect(hasTmp).toBe(true); + expect(writtenPaths.some(p => p.includes('.tmp'))).toBe(true); expect(fs.existsSync(configPath)).toBe(true); }); diff --git a/docs/site/public/console/settings.png b/docs/site/public/console/settings.png new file mode 100644 index 0000000000000000000000000000000000000000..c06210d47c82371809d0bd28cfe385563521064e GIT binary patch literal 377604 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%0D%OdroJN!r4;Cfe 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"F+aN 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 zsazN_30--੭`ilrwGt24|$^zOSysNt&_ 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�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%0D?I>&R`nEu=N?vo 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

4(OZRyQgBL?HZ)C_!3$q*ayC7ia5BM3yb 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

c?z|Hc<7L+Z5dcaa6=7yEF7*kuOI$MoI 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 S_x>mFbMB1J>8w-c0sjMH&W(}) literal 0 HcmV?d00001 diff --git a/docs/site/src/components/WhatsInside.tsx b/docs/site/src/components/WhatsInside.tsx index d2bb78c4..5b44053d 100644 --- a/docs/site/src/components/WhatsInside.tsx +++ b/docs/site/src/components/WhatsInside.tsx @@ -24,59 +24,96 @@ const insideItems: InsideItem[] = [ icon: Workflow, title: "Spec-Driven Development", description: "Plan → Approve → Implement → Verify", - summary: "A structured workflow with human review gates, sequential TDD, mandatory verification, and independent code review. Loops back automatically if any check fails.", + summary: + "A structured workflow with human review gates, sequential TDD, mandatory verification, and independent code review. Loops back automatically if any check fails.", }, { icon: ShieldCheck, title: "Quality Automation", description: "Hooks on every file edit", - summary: "Auto-formatting, linting, and type checking for Python, TypeScript, and Go. TDD enforcer warns when code changes lack tests. Status line shows live session info.", + summary: + "Auto-formatting, linting, and type checking for Python, TypeScript, and Go. TDD enforcer warns when code changes lack tests. Status line shows live session info.", }, { icon: FileCode2, title: "Rules, Commands & Standards", description: "Rules · Commands · Standards", - summary: "Production-tested best practices loaded every session. Coding standards activate by file type. Structured workflows via /spec, /sync, /vault, /learn. Custom rules survive updates.", + summary: + "Production-tested best practices loaded every session. Coding standards activate by file type. Structured workflows via /spec, /sync, /vault, /learn. Custom rules survive updates.", }, { icon: InfinityIcon, title: "Persistent Memory", description: "Context carries across sessions", - summary: "Every decision, discovery, and debugging insight is captured to Pilot Console. Pick up any project after days or weeks — Claude already knows your architecture, patterns, and past work.", + summary: + "Every decision, discovery, and debugging insight is captured to Pilot Console. Pick up any project after days or weeks — Claude already knows your architecture, patterns, and past work.", }, { icon: Plug2, title: "Enhanced Context", description: "MCP servers + language servers", - summary: "Library docs, persistent memory, web search, GitHub code search, and real-time LSP diagnostics — all pre-configured and always available.", + summary: + "Library docs, persistent memory, web search, GitHub code search, and real-time LSP diagnostics — all pre-configured and always available.", }, { icon: Container, title: "One-Command Installer", description: "Ready in minutes, auto-updates", - summary: "Step-based installer with progress tracking, rollback on failure, and idempotent re-runs. Shell integration, Dev Container support, and automated updates.", + summary: + "Step-based installer with progress tracking, rollback on failure, and idempotent re-runs. Shell integration, Dev Container support, and automated updates.", }, { icon: Users, title: "Team Vault", description: "Share knowledge across your team", - summary: "Push and pull rules, commands, and skills via a private Git repo. Automatic versioning. Works with GitHub, GitLab, and Bitbucket.", + summary: + "Push and pull rules, commands, and skills via a private Git repo. Automatic versioning. Works with GitHub, GitLab, and Bitbucket.", }, { icon: GitBranch, title: "Isolated Workspaces", description: "Safe experimentation, clean git history", - summary: "Spec implementation runs in isolated git worktrees. Review changes, squash merge when verified, or discard without touching your main branch. Worktree state survives across auto-compaction cycles.", + summary: + "Spec implementation runs in isolated git worktrees. Review changes, squash merge when verified, or discard without touching your main branch. Worktree state survives across auto-compaction cycles.", }, ]; const consoleSlides = [ - { label: "Dashboard", src: "/console/dashboard.png", alt: "Console Dashboard — stats, workspace status, and spec progress" }, - { label: "Specifications", src: "/console/specification.png", alt: "Specification view — plan details, task progress, and implementation notes" }, - { label: "Memories", src: "/console/memories.png", alt: "Memories view — browsable observation cards with type filters" }, - { label: "Sessions", src: "/console/sessions.png", alt: "Sessions view — active sessions with observation and prompt counts" }, - { label: "Usage", src: "/console/usage.png", alt: "Usage view — daily costs, token charts, and model routing strategy" }, - { label: "Vault", src: "/console/vault.png", alt: "Vault view — shared team assets with version tracking" }, + { + label: "Dashboard", + src: "/console/dashboard.png", + alt: "Console Dashboard — stats, workspace status, and spec progress", + }, + { + label: "Settings", + src: "/console/settings.png", + alt: "Settings view — model selection per command, sub-agent, and session with defaults", + }, + { + label: "Specifications", + src: "/console/specification.png", + alt: "Specification view — plan details, task progress, and implementation notes", + }, + { + label: "Memories", + src: "/console/memories.png", + alt: "Memories view — browsable observation cards with type filters", + }, + { + label: "Sessions", + src: "/console/sessions.png", + alt: "Sessions view — active sessions with observation and prompt counts", + }, + { + label: "Usage", + src: "/console/usage.png", + alt: "Usage view — daily costs, token charts, and model routing strategy", + }, + { + label: "Vault", + src: "/console/vault.png", + alt: "Vault view — shared team assets with version tracking", + }, ]; const ConsoleShowcase = ({ visible }: { visible: boolean }) => { @@ -84,13 +121,16 @@ const ConsoleShowcase = ({ visible }: { visible: boolean }) => { const slide = consoleSlides[index]; return ( -
+

Pilot Console

- Real-time observations, session management, usage analytics, and semantic search + Real-time observations, session management, usage analytics, and + semantic search

@@ -105,23 +145,27 @@ const ConsoleShowcase = ({ visible }: { visible: boolean }) => {
{/* Thumbnail strip */} -
+
{consoleSlides.map((s, i) => ( @@ -161,8 +205,9 @@ const WhatsInside = () => { What's Inside

- A production-grade system — not a prompt template. Installs into any existing codebase, - learns your conventions, and enforces quality across your entire development workflow. + A production-grade system — not a prompt template. Installs into any + existing codebase, learns your conventions, and enforces quality + across your entire development workflow.

@@ -183,8 +228,10 @@ const WhatsInside = () => { > {/* Icon and Title */}
-
+
diff --git a/docs/site/src/content/blog/model-selection.md b/docs/site/src/content/blog/model-selection.md index 128aaf73..e6e47193 100644 --- a/docs/site/src/content/blog/model-selection.md +++ b/docs/site/src/content/blog/model-selection.md @@ -172,7 +172,7 @@ This approach can reduce costs by 60-80% compared to using Opus for everything. ## [Model Configuration](#model-configuration) -**If you use Claude Pilot:** The easiest way to configure models is through the [Pilot Console](http://localhost:41777/#/settings) (`localhost:41777/#/settings`). You can set a different model for each `/spec` phase, slash command, and sub-agent, then restart Pilot to apply. Pilot injects your preferences into all the right places automatically — no manual file editing needed. +**If you use Claude Pilot:** The easiest way to configure models is through the [Pilot Console](http://localhost:41777/#/settings). You can set a different model for each `/spec` phase, slash command, and sub-agent, then restart Pilot to apply. Pilot injects your preferences into all the right places automatically — no manual file editing needed. For users without Pilot, or for temporary changes, Claude Code gives you multiple ways to set your model, with a clear priority chain. Higher-priority settings override lower ones: diff --git a/launcher/build.py b/launcher/build.py index 3494ab87b234f3c179975a505165071b62c71993..5f575a47d6bb98230bd11b3e2723f701336ce95d 100644 GIT binary patch literal 11481 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 J-I4pYL!w4VhwT6W diff --git a/launcher/tests/unit/statusline/test_widgets.py b/launcher/tests/unit/statusline/test_widgets.py index 652ed1f85a6755f8455a1339ecae2397d7bd63af..9d868b3b0f2b49689714f1b4a531468cd641cd63 100644 GIT binary patch literal 22519 zcmV(bK>oh~M@dveQdv+`0E&@EK+mq%?i>yzMt*p9Y89<0VbZ*APoEqPcQJ*BIW11|r27L1bC7ZVS>zP<& zCvAR9ht5IrD*>Gfa`Iw-$P8QaDkEzPuRHe(u*XD|_CEP*Qjv`Pc^vRC##KfBnVui# zy&>9%#)b25S^9~uL5C#E<|n5n!!OjCyYqMtuz(alDd>ovjn!5dqyl`Q!&Wt^(NXm> zU@A4i9eEMzj>t4&;>t`%HT6S^+&7!!UHY5)6))}x2X7t73x=v zZsJJEwoWwhsHOkAZ~ufp>eriQXfEMV^HrMJ>v?e-4JZMLk=W(zvKMO|o!m+>6Ngm} z&00slGPCNUR+|4OUw+acn76q0m}z2J6K#dF)4W!$0HwNE ziXN%l04Ktux0TK|1_pre6-U;NY%L?q z!;l7i36GkIC~y=haH2YhYJA<(`7iQaEBzBOmw%DG#8RLSAUJ zFF);A7!O=U@Ct7^ey@&hLiS7*rXz!S2Z70r_(;Cbll>CABx0}kS3w$aKX&%d8dQat3&NG!+i(qrG zJ=9ZWcGNWHK_Z1mg1TLw0nI`bso7Q+*hpX`6@9FQvp zZ>(^RB!T$H4W3t@2pr`m+7T+Z2)y`u>0BwZ8dha86o!{`&cqLlx`oNO%=Zg6abmD5ryBbbpbdbsNtUh?ydwylr>xqF<1nHv~nXQ5{MjWv0x9v$g zl^bc^^tzPJcQ)5&B|Cvl!S~;nq`2V1L$uM|Bi!WaRDYMm&n+BIx>7B!9rWK2D)}Dv zpe`0sV$mAjucEHdPJuB)PQD@Rhn8mTlzkSwECSrC>N89xI;6Ztp1m;6Qq%2z{l{h1 zC6ZweS+8&T!Q6g*8i@qb8|&@J&CnEiMOY+#$aS8v7EhrddsGC|_T$3wbELi3xh9M& zYs9q7M_}lWSGz30;@S70a#f=fc4`d!j{g+}!@FmPC={;4)Dy@qEU3m-$wfd6h>dj} z^dDIuvAeqmxDza{As@sjfLpTg@`_svVEdZbP%~$a9 <=y_zly~y?;{SqsqJeffX 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 QZf|&Gwl-zdV3MrI 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 literal 14692 zcmV-qIh)1+M@dveQdv+`0GjntQQN11;2tLsS{r-DxJQi5j;RC{ez_0wXKyAsW##$` z$X+J|BF1YPo2hBM z5!plM-h11QsThb52GhnV?@kHli-E(O0NIHQWvvlbO`c6KVJpFd>FDtF+pz52t5b%_ z)iLfNXu00>od_$Y7QMp$Z_qE(0wDDfCiJCQn$74r^`*;((xid`n%F_wLDzeKed;~C) z;xGMq6W0bBLUBl|YjiB3g`vVJ#2)0bdonrdL{~RF?^<@P^9(iqMU)|0#@e<{1OHyB zmqnN!1<~ssDdRxufk5Ggk^9^naMMBpeVfS?$wr3FXD|$YAUDFfZsKz$7 zc}<7EOjb@lg(Cie|CTrBA*-*y;%mMnK$C$xqdM;#F)-)2vm2 zKtE)Mn-GzSX~h~w+k3jJuw>X_(0o;@WW5zS+}KX72hIelXPocUv-ZCQrts4 z6ZVn*Mt`(qZZj@sE_kDM+~D@2T)z?C;hQen61HEi*dH$FvNvk&vml2cz!?~?=MuFT ze!K;UHzs^}T-I5MA1xY+faT@F8Tx<+p!HdtU&R1?w@ZzUNRFSaGNcE?N=l3zW?r^# z>&bWXIfJ~YXxIiqidl4SV_Cs2o^;r(N8hR8ESN91qkWDRUCb3hTgf>tw!QY9NK%rt zzV+xlgzf9D{jmV9*FJxXAhJYit?-xt25Xp}dXgN+>H>H=7?}6gFI9@a1u)1uE~mnF zEB^0;$N9itj-VS%qN76jy+r$zo=8$L;S}CEM7F=SlkpgElxW65u{7y)@onrjc2yx+%99itVW(ohqwaa zH{{r~a7Lswob$2{@I5Fm5?FYK&UW2%>;Z>*posBqoXB&nm+<* zT>k(hWbz=cuOjNM_T%c?u9GdK-vUdGwg1EiQ1N#@aA}G=Sh+uORPp&Z0r;&jG5sx+ z@Lyzmu@u9`IY(1E=SOl%>#V@-60G2to_kAAG)!<+Eqe?lHcG{;Au?FtSf|eREy4mvy(Q`HdkzLD@-DF)G<*%+`G)y|^MErnn$ZmV> z4^W!1=ImaEwGURB*zD2>wl6*EkdCw&@?=&n!^yh?Pa*ylMDbRf?A}?h zL38BIikwws)x*xc9HcSSBkjqOWOXXpteVR_F=>vr0iaGnK)FKh^d@3O5N<6#NR z20b-}!EnSMG9CN)J_8`gHcaDCkUn=m?7ae+@O4z5G?~apK^$k}mL})=LhjhHhvye( z`C^!;6Vt{gbAQk4*p^^=7xqMaziGKuvI=w~1Y|=RJV3C}0ryG|U@-dJYeWdzpQ2W* zIhfpFtvX3Z_qC`&8F~gUi%0)kq+g)O>MtfW1`b0`=7QjJf6TF$L)ha~jLB#_ zr&rh-vW89q#9yuHHqvXD)tch5fmqHVt03o@8&6~{*Rg!QFCd((3;(Mf<)`nLaCq|- zf;`XUB*IyW6c?qRwQNAAPlD^DhcIF;Z>l(obN6bwz`GiQL>|Ox7RC~<5{(zO(30)P zC7Q>RLI#obpjCt#J<3Uf#0Pz6T`}%faaa&(2Bm7g_3JG=b7mwyo;zgx>t!SN-NN-F zJ`#rTc9x~WWIzx{M*RIYH1TP}w?(zlC`_2V_~L!0gP&(hQ~R?1^~ugUmC>Bl2;gdW z8^i@`g>b&i!EQso-3}KQ?$3!%aOfLPwZ3~@^{OSQBa@${i%Sb7YEed#(u;#_5>(FV z>jbxwYLnsE5jEY2-UVjrDg4a3w-aBl+PUtn5m8g%Gc~KOD2Ml?j0HkNc?jxKa1Dnp<55t<@(J``i8krzboD zfY$Yd9QkOVJ&y=j+q~VC<_uKRaK%_0skHLHOWJ~X+O*2WD0(^|45|MYb60o-nAOG zEy;vwOgrH{!!erbc+)yJKRcmdQC5x=Ip58@)BoxF{9~Yo;u2l>Tth!4zc`Po2><^b z)kJ^B1(kuQjV!wpQ(goiDz*WIlv>bKJsD5CznkbbRBA{wsj10C=qI~>wK^lsjnkRVFcLNy=6-ylzp(eS4fRurkE}PJw>+6<=Q@K&sw6D;g`|~h=j?`%Bb~q{4}l(&U$zlAQcjs(1Wk^`s|z(ueW#Rw)905Ws*x z5La*aDSqlp>Um%IN*DfJtWRsgsX2TGmsB^@}38*cC3fcC=V_G8I-a&_m-)(57Y+-2wv+8oEcbe={cv ztI}L9jnHXcY03)M@C65ZK|ADR*#VQ6$ zVPn4*A+@>aC)L4S94GPPJF;3b%V0*j(D%;TiqmHhQG)|#+R(o@$sV@!B1^~LEHQ)& zW&kL`9@f~IV**@_XJ&i@OSfg9S&PXh5UJ%_zzv_4{IsV#<$VKRUMfOMf#F7NUWzvP z%*dZR)2ReH9Y6RUIpATkJ$f`kYR-t=INspOC=(vFH+nn~Xh&egqOD-EZYJRl&%X!KhiFwuuLbOV<@ydoC^OuZ$jB0O#sK(TWopjTTBkO!KCteQ9Tp>2jZSWE6j) zm|_?sk!WuPfC`S7xY!NCUQlaZ$N6aTxV1pKr&Npf0bRdYgS6i5Ff>MXShg92JZ z-Of=WbJpp_g+5#z5c}AA7s@@rY1{fAykX);vSE@#So8e|n2%U4g72c~_Vz9M3+we`TgN2V9ikEq|2sfIU`FF8 zm!$)IBtqdPOp8V?O{KS-W!c}Wslkd9hJrK?038&oWmz+bs@+G+!iCu&EBa&-9e@Bltv4 z?A^mF!%XaOSGq{wG8kO6Wl((suV{nI%$KWjXHcTi68+Z|uu-P}EvUb@XNPw@R4$B# z50VJg=mHw@O1u}7HJ#iF?a;#g3VJWv;U(ECwE6SVnQg&#%J3m)Gu27WbG6KfhgL3l zaq`c~iH=TaZ_5Z7N2u$&@RQd@J!;{o$LCPzJw|h57?w|aj~t2xO}k&C&Y{kmC2#eE2TS56_Hr(z-`_;ETn;p}3m)rFkxvBqAZ zKI9c2fxTInN50@ZH2q!Iy!Br8g$_jYqUKyVS}8)$*_DFWwfiNw-_+}`;n=D@Sa?C| zxtr#>V ztv=AI!OH;Jx1F7_?+?|_1Mrcx`S#a02?mW+nOdMw7CP?Z zALZ*~MY324t*26&#juj(py$PvF7QVOXlI%3D<0r5_Vj@zh$N*VDf0VdTh3|oeN>Dl z{rl9FT#RO)6?4`jO3COmJE-CKrnfX~|UD?fT-#m(UKR)4h5Pm5F>QKz@ZJs@Zd*IB*~kUa-a2l2_Z?0_#_3@4!e(Xs}5P zEbtAY?f7hT#v7{2YmIAArHM@iAjhKLj-{dJDF(m#*St4mR|=nolgfenVe}Mw3lBnS zs}|jN+j?rutBv8G%J%(@F_I*=;Yb36!249pTWh^39j<=@=%%=#iTF9?o zEVNn#R4@Kj;dpE)LS}8Oj&qKnyNZo?I4VtPyu@7Av6$B|A%>~2F1V~JT{c^%#HW3c z$*M@dH?Og3Rv$#1$Ey|6rWtx1I{hXCHuT_N-*p1oOVd?)oiHu{?r^YsAy1c#&l*mh z!w8*C_3H{0SL@}Hp(K^P(7YH?*|$rTv73yT1Rpt6Q=}`@dY@9JBo%A52Dng;X2VF) zmHp6J2ilmTcB!FT0xVvIHBrMR#62XWW|)f>Z)W<#W+TzpGd#O#UzDNx-k3zA>QuGO z!Kzw8**FGx7;#%V=1Y9#_K0`gns9P-!^txFVW~ocn;l@OfA3Hx@$guV`5e~X4gta8 z(~m561@ZbfVBEEet+Bs~^b?HV(O4 zHt7-qzPc@n)==YzpsSyEyI(PfmC*)n-x9sfHls^xgXptZ7OGy#q zQ6$_?5!YUtl!qEVHIisYddUP981t%{Y$-g?xDrB2Ia00kZ7k*5q`NnTpw92Jf z;^3V)B&5P_3{cBZM?3?XyeyQf#9OwUc3BPsu|>?Q|ywSyJG^_7%L8 zrJyfvA4?YVO!bNgFY=>s zBj+MU1jcYNsV>8>!g=O%UO{zsrkSK*tv-+c~ z2)#sD+1R&va+7A;F)$ZKM`{vkH`GxJf=;ovQnOVku-gZ(Q$yrq5h_7-c=f5{{qjl+ zEUk46?vXBHk97?U15qI$_EaoFx$9Wmp5FR2rK6lh1%vr%Zu9d+Ru!fZ~I+{zCuu2Lrtx30cOENZ>pPH7NPQ*AB&F@~|) zC9n1Og+oAK>Ae3Nl2c*CNvUSx(IoJgFIN;I*SbXgCHxtwJ9@O zhHLO092 z=}Lg{{(QgsxmNHv1OEBm|G9OvLnmE8I6^D9!DI4_8q@KghQl^lfUr^ zn}4^&NW)tjUCo)yA)bqdwb3rw1ee`{b|;(e+TW3Yjra$>V#qX0 z0MxE}w*ZxJ$U&bfoeuSKYqQ4c%vrR(0plT+6e0Ov?u#@As}lkX1u|Z{?qH86c9qgc zAO~`nxHxd_a@kU$6hLCRGXOpHGNQrbrDj>A2l|$_Gmo%@)6cIhYmIS;$-YH!yTRYZ zDPcMW?oVaId+zlHs8R{e(BFxAF;FVlEi9BxG=5O(!m@x59}(JWM1gxGhIXVKnex`n z>xn3S=Z=Y12>ipnXO444i8SS;arA7e31En3F1?RlRH|U4IaDqh&UVNpE@}N2k^QSd zDo?q-&XZ(t0un-H`D=_nNA}}u`+|fA(JhQ?irQONHDDv%5tB2E5I-`gxO~6;@jqY% zF)-u^i$8MkrB6&GJ@${kQe~d*;Z3gcHDx*jve0lI0Rh4OH{ZzjS&HM zp3nz?Qqo)~dNQlAzv>FLrL<16mIY+w#NKP@+{fEGXy$giXql$k8w^sddY3}@a|Q-7 z=#JS@-3wpuH#bTma3)Rho13qAKC9JDe8`=WlJ0r-8{r6oj9}ZaXV?N0j$w?Dd8(|3 z%X!x|2Ehx1}}urA05#6KNu;Ry7*~@yVTb*b$e! z+p_%`-FauCx&v+39frRlk~hjxV9hBICs3Ns(x13#kxKW=;Z!^eKFH1Ik|w zp0yQ67PJ+gs)XN%FJ{{a;ap&v&mnH1MMP^7X-466H$-7z5uS zOA)lxZ!Fg^n=H31bkLBvL$EzITs_VSM?{p3t+ic{0iBxl`UL}KJ<{pj;Ud0viv_RSjdhv@Hp18sQd8X(?F_; zcB49n9X_ny-M+X4Czt%b0No)m?^1Xrb`-qkkeQSAZM7O(g~Jx0O;vgVLyOqY29ir+ zPLwmvjYGs-ntKej7L;P+G>FSGx&24NvL=-f44d>?C26RumSr=Cl_4bC$x`%aPzQQj zK3c-5W5mC|nTp9QrL^PUiV*CLPR0u#0)qt{Rjv(0+2uK*qDc}cs*a{H8CF9JQ!;9n z&p9)6=ZW0M_$)}l49TVw$y5tQ$smZw*eP3r|(5)fFCBp(tN z>MIvrnrgE%IMSg2G#70&+6+sdfV|b7z@Dhwabu_SEH11Ul;v|LE_RG}v#N4-a~RxT z_1gD{P`I9>i}F2mGJWwmEKXOsJw8%sbzum!PSWV)NY4)u4(i4S5Uk+QzC-@*`7yUe zGJ>*szo-w0`kgrazjCdv#i9}Xr{car*S!AmQv1)b$$>1w2%+C(M;2{S=%s8RKD^re zAIaJsDrvA*0Q{IDJNnUDQ^ZChYvQoy9-S`;5g^eRau-a|ZcxR1&F`NyZ2O^urHZ+!O?*C`03eDqDCm4( z@caHsB_#ocBk3w{b6m$=D=Ov6-}k|z?qbAC|9NK6j3o4b4Uc&}Hp?VC!l%YJ4gyF% zPwKxZM{6(v^f6GQ?X9FM5>$>~sK(E0Sr>^}aJWJeD(12FGu%k9<6tcUc8l~${;oC# zJOtm=i}5A@N~$2?4lJvrJf?jrEbeicL>`qioy0GtEUL3Y3d)xBOHzVlO8+|51&whm z!$a9FgIrnO{M&Pb2hi4dXX>bjhRs9=vL}L)1&_iv+k9MoDqC7_8%uSlnk6bDgx%{l zQ|~sJ!_g#zMJ04BIQs54JJb$up*;QnmQBoGgYgE>#e#cng%eM2j(bL|Zd^FlrtSKp?@Hye#cNYO3S?6VR+kpBKJuu0dnoV) zONu&UHw0vR6K{;dC*&&!uDidIsK0egrVf6qzqY*Mu4p}mj46K4rX|m6T2{g?ua7be zqW}5#a!qldjuvkR{L1%hUAwqQG*UeI2SIEc|Ddkk?hRw=YNjP6f7wLSR#W6FR}xhV z*8%hscn{_XNoc_U78xtoGt)N~o-y+PjM18bb$V+86orBQs}(#5j&e3XQ7!?rEYpcU zp8dti!ogZDx2q+H5#2>;kY-rhw(no}2cf(Xf9lQVs(B%}CdFw&c=?;>{&~5`6dBgy zLaxr7G*k}ij^d`7N>-=fHRm7*Ke&8rz#MKmE6CLsp^fo{(a+1Bk6}dDx>zWTK9#iw zezHDDQVI>U4G$kumk(-=Q+&jq5{xyFUel~HcC*Cms%GiZL1mBkHS*%#syI;E; z?DR9ooX-C$-+D}VJ|0k^`X4RpF#(aaQQ)7XKwypjP>Sld8w1W->JvSqDQ~_k z$4>;h{lAp`ummb>^(EX2&ObFuK*NK12cr0%C&&{b;$r$CCmeuyl67_G>sA@Li3p<~ zXcb{hlQkVduRGRaYs@_a_6Gc z3o}SqPxu@n*u&cn>PA!*3T-`R6&gzE0{=9{7bvULuBo1Oc6G20)!dPj=m2Ztt=|$% zBBEiFl@RETut_PUwmpqRWN>Cx==g?*HMaFSL2XS}FD8_f->?wTq<-poYORSe?fFQB zs-){53gfPhXMGs`t371o2c|00`}3SJN0-ARz4G zOD9C0D%m*xXf|24Yt}S?L@C-DNaLv`)SAnpO&_Gu;%aVW3_b4_+B4@`8HJ(A>1%ki zQ@7wPh&_6KtshOYS1d>`(mj(ONPzg;h&815fi0dWKDlw!=yzb|{Mg{keHs5s(d5|# zvGlE@&N84kiI^w}8&(K)N%QyqdP!Q`@xjnPWW}mPY6lZynSCl7sDJDNU!9)Hmb_uKF*6A7kHwggC#rkqHEfFJHX9|I=&u(a_#Z>Puut&zwYoe-)S6_@)6|JRV_ zjZISHu_SB#Z`oV?vihNK>5k|1U08%PMTgK|8lLN<(9T`7v^QT?H9fiC{jFrK9dZ4_ zKabOV(@jp+-f=cWxLep1Qcoq*Ms+7xC%I2YLkLvH$nHk7MZhW97T_{Q{$pt^HC#oT zCt?s{^$7p4KyV72rhn1tofZjLIxI8LN#tfCVusRAb|{3tTrRR|tGMDeg!-%x|8o zkyYHhjf&rDE!wsYP{I@X|Mt$lCD8#%*T2ZM9d1iRU`TlXf>%HdGFmY<{x`pE&*;Ch z3KUpkJA7;zibj*+us`Q&Cla#JdX*V!ai-Hz`kB#lfDrfbjeX&v;-gW=vLR{(VqjFd zQexwd8zVL4Ct7anvWRQ>C(`ckjF<7LY#(NeY~<9FBn~)!TpZ_JV|=A8*0`m((#vAj zoqi~rDmyXd)(LpP@1b8>LFhmq?Csdv1mAwfo)8GaRt7#L%O>V;RVFEDrsaH7=S@>WtVcdaE`?APA>=?e@4BaRB zZ4xY{_A5v8b(Bc^*Vb;7yz;}?EN;vGw}!j`(?ZTU-i;G(AKF?dxSvWl{Lfl`j#d}= z95Gom<}9O|Jh4P@6L^_!_H;8(cF{~~escsxr^~D_U>&PAyV0Wau!%E}S5U9)?SkOM z_n9>GVxoZO_a89LXr487QXoBW8z?bMe>;wuslIq1mb#YdIss*>tukTRAm=+>)zUBH z`^Sf#L58fniofDDo%A;&rvU2}CKbBvmTuY}InO2@I)4$O=P+~7uRaZRlfQW3zCV@Y zw}M_n8g#OM<_j?#{3((Y<~8=6L4y*-Xc#t5v`P?}GtB{Wj;9n zm6Ju~JCd=lv7h?#7JC?6T{I7Mx$q0gIue+0m|C48y>qD>sI(->P*_ zk9kgs6a0BX18YJX+4ZMLeXXBa5!hW~%=K`tJm2L+R?hmr# zmch*QZOJ4FpFmJc@O6|^?(G+)WR$+(&X_g)Ys4^UI_V&_!y3;nxoe8?4X(%n`q>7%kJ2y&#cly2f}Cn(*P5}Yd^#5*C@{pS*#Q})Yy)2#WkJ$f z2L4WUvG(QiUA^p@koE?OS^M%|YYkjOJ4Ecg*T+V-9Yt(nP}Pl`_-KT#SuJy4d|~$pLmmeoJZ5^Qq0B zZ%R$r@pzus#pwlj|Zs(;)==GQ+Mb9eN~9zr9Vcfu6GLx9_QRf2Dgug%|QazNZM zR=%G~J+Urx>YOki&y4O zOcO)O1#B{Fnzp3}v9>+SgZkLxbD-8dLzb~wDZP7iX*D!4j2)GI3+-mwo{VSw4=x=M zQ}C?$PLmmRbL!G-+(hKa+RkR}NtS=>srmBb%w+9qpe)g&K=T@NZQqM}gsDumvyKtQ zmJF`i+Ku$I=!2yJ_XT&@FlII56nX7>`v>E(41AN)sbgSRx=vISf2=&Z6X*8-EmqDm z(02?ZfGqMsFf)k49mf*K<$dRyh2x7u4`5@c5&-R*{CVG`jPie8WFm~9Wx3Nb!=VN7 zH^BOtSm~FiP4c?jf4U}hG4!Jrs-7S$g=y2rxYiuLD^Dcqf`hf4i)DzkXXhtW{&b#X zuDqQQIo94w#F&H7`wudFyubVZnv-~0S>G7>kt6608heK!9vNXG&}vA~fw-7D0&2l? zU10NAqvB)4nhU~lk5N6DK`YX*XDwRZX~#?7xS$;OAY&mILKAe^RUl#jB%E8j zz~LV?Dng@zS;wd*o-kKCHlUeMI~Vdpj!kss(J{-ak_arl_%ct&e#_PRQmgjA^6SU@ z0pr&}l-;{yJRmXX!>kM02^5CtpyPdWq^i%~EuPSj} zAgrg^1Md=_pf)^IgFGuzD`mN+8)89l8g%TOKZmVD*qgTq;F%xtkDvY;XAq=g!dyp~ zNSEzHN)~?V-{ki<=pRjV)mn8+qZF7tWjw^e&6t2~YV-1v_XBQ8>K=7hy){W>;Skud z1>%668Xa#L_mF2RDVP}n^{^OijE^h^%k9I+&AUA1H`3ze$rUmE#?tUL!8?W?Fao7vsF&9aWr9GXJRZh|9YKD#~O z@5at}DvjZ3Smh@`2Ik~MA&dfb4Fk5|3Z`_SA9-sqlV`KYTI-V6%I}}zqPU;}Q_8GA zn_f|>W+WncLU$!NDi%m3T=Sp42*+VO`KUQUFnDmZ`PeHPH6h||bilkbZoO#x zx;TJ0e~=W*OBXKxiU~RBiJK0P>qL%%lnZri8BK4C=nf5b_Bb35i1%T}@wn6&uzAdL zG_Jj&qqK5RgYTz{a5VDl7t=pfqD~5;+xfs+7kpf6^Nm^c5@b0px5}!5uj2OSGe&DGhps82DoQ?3*JR(kLqL+pP1wn^nB*uA96b6VZc`%`0=A@MTG z4AfkzqvjLcz)NU#FVk)GmOVOKLk{8T*K~aY!-E0-P_QEn(4Tg)(JAC$P(Ym5Cjv11 zx~WvDAX&NQWsVIL_-uB-;mT4ao~@Jj{KCl6C*30D?=-d6jw}u@+W#>^8RLHM${MzbSb0rwVh;lXCp z+s!;7v++lC$So6Oy!Eab@g@=o+Dz#Yza82NudcHpS|FBSASenA7Wazsgk5VHZ}#|6#~_5e2&j+TmyQ_s+;`GWgF6J+Z112 zinG1_I+yWHH^h>^9JJ|9X(38fYw{-rD_rbQEaG6PZQXv|w+~RIaE#7oe{(w-6q3Gq zr`>E0y0I}BMM$1Suvy(uV8>MwrpIq)A?)tZF_0YM&NUund&IQN>Z}pg5UH|BD zEWV>^v8VDMqMG<(2{TrOI`tj;C*hS=%He)>JR_7(&f#} zr08YVtzKqVQsF0l9Ic8J+#6m9D+_}q4n_liXAlNNJP3fx2V=w$IiOZ~pwE z-vZz~?C z%7|#VK3$ySb#|eDJvW%B-`(Mh!M~t+^Eo>n17ymb|8nM(=i2qAqOUnhElk+{L^YtZF_=l*I| zf;R)3F#H(tix%0(rE`kKcAU7JPV=A4yCLY2i!uadx}L=_IwmBu>_l&kzgvP?k<%X> z0K+o4wfoI42~jk}LxB*HmAG-nvCmTdqr)TQ_C1dCDf!N=*a^Kn)fQ+)o?sG$Yrzwql>DV zt03C;Gh;GWvO?t3><}Y8R{RXc`mQ?T{3frY1^XvvLp5TsnI!LVUE_%_tw0*q6MZJl zJFKp*mn%`zlqVYU?_(BQ7UFgueUWuAi5BVp-eRYZcOOdDwL01{t~C?u1ADJayq)BZ%O~e@29`PdGNjQteSuv|#7KNNOEerp$v_-o8m3;4EO1>f zru_K?=i7nZ)CJA?3&z85BhIn>9u9te%w59Kg^R|P?ElvNqc@xPsBn%yhD_hhCW+-r z_$nI1p3Xl?Z4ZLP;l&k?N&io^Sk>^GQ{&{mL5s^UwconU#|RcaecuX+fd)x@S|fFS zrR}|`V7c^7gFGg>i~kLQ;>+QPt3P{^nneCSv3)k;-hk0if*cqXHza|xaQ7=&9Jjcr z)w}Ea91s3gl0+d|b zrY<=$HU0Q&@Sg9aV7-!&w7_WBg5souB&_AIq$O!uur6jZdPH^Z;NjU`zP|Jsa1^ZR z{D3o(d24B0V6#W{)%ZqM!JsWw(#>aL_$jV?@l^gqc_Z%o)pOO1t@$j85AFT^^V6k_ zX5B)G>BWV9YileD0t0#17W*R+bPHX|AX!8UUt0~Yptj_b-?{wM7LJuMF7NlwJq^Nxkr z1)^=tJK6Mp*)k@F5tB1qeRr+v-6DeWkQ2>mrnk~kV^2~}SQLU72uNf!4_E5w@83j* zShpb9XtPfWPhhq_E*W1gESW(FU&$@Ny|R+%_T(~j5>YFsKF7`~Y-3l^3)JeQS%}#z zQm=s*pnExc)8VB>z1*Ct)5epN3{P+62CB~@hI^0B`E7L3C#PguYw=6l z#tp{oIGdf;CP{>B`xh^Pg{Imxb?l`9GCmI|BdU1#XqsQ5CCGq`(=bJo+Nczr1;Fjf m7yF^dajC1Qi}u@B@)B1cf;&(-;1b?qnEqd?+ke2L@qs+ZXpzML diff --git a/launcher/tests/unit/test_helper.py b/launcher/tests/unit/test_helper.py index ad96fe2e783fe0da22bc0b381e0a0c45eba979c7..769bab2f73dad3075e07b7db55b871eec788cf34 100644 GIT binary patch literal 6139 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 NS&j$~7ECI!NOITl^tJ#1 literal 6056 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 literal 11263 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 literal 10308 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 WMn%8arDDGvcs*K@ToGs~<3@Na5biMm diff --git a/pilot/rules/research-tools.md b/pilot/rules/research-tools.md index d8e55f13..4e454ea1 100644 --- a/pilot/rules/research-tools.md +++ b/pilot/rules/research-tools.md @@ -38,9 +38,9 @@ searchGitHub(query="getServerSession", repo="vercel/next-auth") Parameters: `query`, `language`, `repo`, `path`, `useRegexp`, `matchCase` -### Web Search / Fetch (MCP) +### Web Search / Fetch -**Use MCP tools for web access. Built-in WebSearch/WebFetch are blocked by hook.** +**⛔ NEVER use built-in `WebFetch` or `WebSearch` — they are blocked by hook and will fail.** Always use MCP alternatives via `ToolSearch("web-fetch")` or `ToolSearch("web-search")` first. | Need | Tool | |------|------| @@ -49,8 +49,6 @@ Parameters: `query`, `language`, `repo`, `path`, `useRegexp`, `matchCase` | Fetch full page | `web-fetch/fetch_url` (Playwright, no truncation) | | Fetch multiple | `web-fetch/fetch_urls` | -Built-in `WebFetch` truncates at ~8KB — MCP tools provide full content. - ### GitHub CLI (gh) **Use `gh` for all GitHub operations.** Authenticated, handles pagination, structured data with `--json` + `--jq`. diff --git a/pilot/scripts/worker-service.cjs b/pilot/scripts/worker-service.cjs index 3d971a8d..aa5c2bd9 100755 --- a/pilot/scripts/worker-service.cjs +++ b/pilot/scripts/worker-service.cjs @@ -1819,7 +1819,7 @@ Tips: `)){if(!i.trim())continue;let a=i.split(" ");a.length>=3&&n.set(a[2],{additions:parseInt(a[0],10)||0,deletions:parseInt(a[1],10)||0})}let s=[];for(let i of e.split(` `)){if(!i.trim())continue;let a=i.split(" ");if(a.length>=2){let o=a[0].charAt(0),c=a[a.length-1],l=n.get(c)||{additions:0,deletions:0};s.push({path:c,status:o,additions:l.additions,deletions:l.deletions})}}return s}getMainRepoRoot(e){try{let r=Jf.default.join(e,".git");if((0,Xf.existsSync)(r))try{let n=(0,Xf.readFileSync)(r,"utf-8").trim();if(n.startsWith("gitdir:")){let s=n.replace("gitdir:","").trim(),i=Jf.default.resolve(e,s,"..","..");return Jf.default.dirname(i)}}catch{return e}return e}catch{return null}}countFilesFromStat(e){let r=e.trim().split(` `);if(r.length===0)return 0;let s=r[r.length-1].match(/(\d+) files? changed/);return s?parseInt(s[1],10):0}};var dL=/^\d{8}$/,Tpe=300*1e3,eh=class extends Ae{cache=new Map;ccusagePath;pendingExecutions=new Map;constructor(){super(),this.ccusagePath=this.resolveCcusage()}setupRoutes(e){e.get("/api/usage/daily",this.wrapHandler(this.handleDaily.bind(this))),e.get("/api/usage/monthly",this.wrapHandler(this.handleMonthly.bind(this))),e.get("/api/usage/models",this.wrapHandler(this.handleModels.bind(this)))}async handleDaily(e,r){if(!this.ccusagePath){r.json({available:!1,error:"ccusage not installed"});return}let n=e.query.since,s=e.query.until;if(n&&!dL.test(n)){this.badRequest(r,"Invalid since parameter. Expected YYYYMMDD format.");return}if(s&&!dL.test(s)){this.badRequest(r,"Invalid until parameter. Expected YYYYMMDD format.");return}let i=n||this.defaultSince(),a=`daily-${i}-${s||""}`,o=await this.getCachedOrExecute(a,()=>{let c=["daily","--json","--since",i];return s&&c.push("--until",s),this.runCcusage(c)});r.json({available:!0,...o})}async handleMonthly(e,r){if(!this.ccusagePath){r.json({available:!1,error:"ccusage not installed"});return}let s=await this.getCachedOrExecute("monthly",()=>this.runCcusage(["monthly","--json"]));r.json({available:!0,...s})}async handleModels(e,r){if(!this.ccusagePath){r.json({available:!1,error:"ccusage not installed"});return}let s=await this.getCachedOrExecute("monthly",()=>this.runCcusage(["monthly","--json"])),i=new Map;for(let o of s.monthly||[])for(let c of o.modelBreakdowns||[]){let l=(c.inputTokens||0)+(c.outputTokens||0)+(c.cacheCreationTokens||0)+(c.cacheReadTokens||0),u=i.get(c.modelName);u?(u.totalCost+=c.cost||0,u.inputTokens+=c.inputTokens||0,u.outputTokens+=c.outputTokens||0,u.totalTokens+=l):i.set(c.modelName,{model:c.modelName,totalCost:c.cost||0,inputTokens:c.inputTokens||0,outputTokens:c.outputTokens||0,totalTokens:l})}let a=Array.from(i.values()).sort((o,c)=>c.totalCost-o.totalCost);r.json({available:!0,models:a})}async getCachedOrExecute(e,r){let n=this.cache.get(e);if(n&&Date.now()-n.timestamp(this.cache.set(e,{data:a,timestamp:Date.now()}),a)).finally(()=>{this.pendingExecutions.delete(e)});return this.pendingExecutions.set(e,i),i}async runCcusage(e){let r=Bun.spawn(["ccusage",...e],{stdout:"pipe",stderr:"pipe"}),n=setTimeout(()=>{try{r.kill("SIGTERM")}catch{}},3e4);try{let[s,i]=await Promise.all([new Response(r.stdout).text(),new Response(r.stderr).text()]);if(await r.exited!==0)throw new Error(`ccusage command failed: ${i.slice(0,200)}`);return JSON.parse(s)}finally{clearTimeout(n)}}resolveCcusage(){return Bun.which("ccusage")||null}defaultSince(){let e=new Date;e.setDate(e.getDate()-30);let r=e.getFullYear(),n=String(e.getMonth()+1).padStart(2,"0"),s=String(e.getDate()).padStart(2,"0");return`${r}${n}${s}`}};var F0=require("child_process"),U0=require("fs"),H0=require("os");var th={valid:!1,tier:null,email:null,daysRemaining:null,isExpired:!1},Rpe=300*1e3,rh=class extends Ae{cache=null;setupRoutes(e){e.get("/api/license",this.handleGetLicense.bind(this)),e.post("/api/license/activate",this.handleActivate.bind(this))}handleGetLicense=this.wrapHandler((e,r)=>{let n=e.query.refresh==="1";r.json(this.getLicenseInfo(n))});getLicenseInfo(e=!1){if(!e&&this.cache&&Date.now(){let{key:n}=e.body;if(!n||typeof n!="string"){this.badRequest(r,"License key is required");return}let s=this.activateLicense(n.trim());r.json(s)});activateLicense(e){let r=`${(0,H0.homedir)()}/.pilot/bin/pilot`;if(!(0,U0.existsSync)(r))return{success:!1,tier:null,email:null,error:"Pilot binary not found"};try{let s=(0,F0.spawnSync)(r,["activate",e,"--json"],{stdio:"pipe",timeout:1e4}).stdout?.toString().trim();if(!s)return{success:!1,tier:null,email:null,error:"No response from pilot"};let i=JSON.parse(s);return i.success?(this.cache=null,{success:!0,tier:i.tier??null,email:i.email??null,error:null}):{success:!1,tier:null,email:null,error:i.error??"Activation failed"}}catch{return{success:!1,tier:null,email:null,error:"Activation request failed"}}}fetchLicenseFromCLI(){let e=`${(0,H0.homedir)()}/.pilot/bin/pilot`;if(!(0,U0.existsSync)(e))return{...th};try{let n=(0,F0.spawnSync)(e,["status","--json"],{stdio:"pipe",timeout:5e3}).stdout?.toString().trim();if(!n)return{...th};let s=JSON.parse(n);return s.success?{valid:!0,tier:s.tier??null,email:s.email??null,daysRemaining:s.days_remaining??null,isExpired:!1}:s.error==="No license found"?{...th}:{valid:!1,tier:s.tier??null,email:s.email??null,daysRemaining:s.days_remaining??null,isExpired:!0}}catch{return{...th}}}};re();var B0=15e3,$pe=6e4,Ope=3e4,Ppe=6e4,nh=class extends Ae{statusCache=null;detailCache=new Map;_isInstalling=!1;setupRoutes(e){e.get("/api/vault/status",this.handleStatus.bind(this)),e.post("/api/vault/install",this.handleInstall.bind(this)),e.get("/api/vault/detail/:name",this.handleDetail.bind(this))}handleStatus=this.wrapHandler(async(e,r)=>{if(this.statusCache&&Date.now()-this.statusCache.timestamp"[]")]),a=JSON.parse(s),o=JSON.parse(i).map(u=>({name:u.name,type:u.type,latestVersion:u.latestVersion,versionsCount:u.versionsCount,updatedAt:u.updatedAt})),c=[];for(let u of a.assets||[]){let p=u.scope||"Global";for(let d of u.assets||[])c.push({name:d.name,version:d.version,type:d.type,clients:d.clients||[],status:d.status||"unknown",scope:p})}let l={installed:!0,version:a.version?.version||null,configured:!!a.config?.repositoryUrl,vaultUrl:a.config?.repositoryUrl||null,profile:a.config?.profile||null,assets:c,catalog:o,isInstalling:this._isInstalling};this.statusCache={data:l,timestamp:Date.now()},r.json(l)}catch(s){_.error("HTTP","Vault status failed",{},s),r.json(this.emptyStatus())}});handleInstall=this.wrapHandler(async(e,r)=>{if(this._isInstalling){r.status(409).json({error:"Installation already in progress"});return}let n=this.resolveSxBinary();if(!n){r.status(500).json({error:"sx CLI not found"});return}let s=process.env.CLAUDE_PROJECT_ROOT||process.cwd();this._isInstalling=!0,this.statusCache=null,r.json({started:!0});try{await this.runSxCommand([n,"install","--repair","--target",s],$pe),_.info("HTTP","Vault install --repair completed")}catch(i){_.error("HTTP","Vault install failed",{},i)}finally{this._isInstalling=!1,this.statusCache=null,this.detailCache.clear()}});handleDetail=this.wrapHandler(async(e,r)=>{let n=e.params.name;if(!n||!/^[a-zA-Z0-9-]+$/.test(n)){r.status(400).json({error:"Invalid asset name: only alphanumeric characters and hyphens allowed"});return}let s=this.detailCache.get(n);if(s&&Date.now()-s.timestamp({version:l.version,createdAt:l.createdAt??null,filesCount:l.filesCount??0}))};this.detailCache.set(n,{data:c,timestamp:Date.now()}),r.json(c)}catch(a){(a.message||"").includes("exited with code")?r.status(404).json({error:`Asset '${n}' not found`}):(_.error("HTTP","Vault detail failed",{name:n},a),r.status(502).json({error:"Unexpected sx response format"}))}});emptyStatus(){return{installed:!1,version:null,configured:!1,vaultUrl:null,profile:null,assets:[],catalog:[],isInstalling:this._isInstalling}}resolveSxBinary(){return Bun.which("sx")||null}async runSxCommand(e,r){let n=Bun.spawn(e,{stdout:"pipe",stderr:"pipe"}),s=setTimeout(()=>{try{n.kill("SIGTERM"),setTimeout(()=>{try{n.kill("SIGKILL")}catch{}},1e3)}catch{}},r);try{let[i,a]=await Promise.all([new Response(n.stdout).text(),new Response(n.stderr).text()]),o=await n.exited;if(o!==0)throw new Error(`sx exited with code ${o}: ${a.slice(0,200)}`);return i}finally{clearTimeout(s)}}};re();var Cpe=3,Ipe=12e4,mL=6e5,Ape=3e4,Npe=6e4;function jpe(t){let e={isIndexed:!1,files:0,mode:"",model:"",generatedAt:null,embeddingDim:0,version:0};if(!t||!t.includes("Files:"))return e;let r=s=>{let i=t.match(new RegExp(`^${s}:\\s*(.+)$`,"m"));return i?i[1].trim():""},n=parseInt(r("Files"),10)||0;return{isIndexed:n>0,files:n,mode:r("Mode"),model:r("Model"),generatedAt:r("Generated at")||null,embeddingDim:parseInt(r("Embedding dimension"),10)||0,version:parseInt(r("Version"),10)||0}}function Dpe(t){if(!t.trim())return[];let e=[];for(let r of t.trim().split(` -`)){let n=r.split(" ");if(n.length<7)continue;let s=parseInt(n[0],10),i=parseFloat(n[1]);isNaN(s)||isNaN(i)||e.push({rank:s,score:i,filePath:n[2],chunkIndex:parseInt(n[3],10)||0,startLine:n[4]==="-"?null:parseInt(n[4],10)||null,endLine:n[5]==="-"?null:parseInt(n[5],10)||null,snippet:n.slice(6).join(" ")})}return e}var sh=class extends Ae{dbManager;activeProcesses=new Set;statusCache=new Map;_isReindexing=!1;constructor(e){super(),this.dbManager=e??null}setupRoutes(e){e.get("/api/vexor/status",this.handleStatus.bind(this)),e.get("/api/vexor/search",this.handleSearch.bind(this)),e.post("/api/vexor/reindex",this.handleReindex.bind(this))}dispose(){for(let e of this.activeProcesses)try{e.kill()}catch{}this.activeProcesses.clear(),_.debug("HTTP","VexorRoutes disposed, killed active processes")}handleStatus=this.wrapHandler(async(e,r)=>{let n=e.query.project,s=An(this.dbManager,n),i=this.statusCache.get(s);if(i&&Date.now()-i.timestamp{let n=e.query.query;if(!n){this.badRequest(r,"query parameter is required");return}if(this.activeProcesses.size>=Cpe){r.status(429).json({error:"Too many concurrent searches. Try again shortly."});return}let s=this.resolveVexorBinary();if(!s){r.json({results:[],error:"Vexor CLI not found"});return}let i=e.query.project,a=An(this.dbManager,i),o=parseInt(e.query.top,10)||20,c=e.query.mode||"auto",l=[s,"search",n,"--top",String(o),"--mode",c,"--format","porcelain","--path",a],u=e.query.ext;u&&l.push("--ext",u);try{let p=await this.runVexorCommand(l,Ipe),d=Dpe(p);r.json({results:d,query:n})}catch(p){_.error("HTTP","Vexor search failed",{query:n},p),r.status(500).json({error:p.message})}});handleReindex=this.wrapHandler(async(e,r)=>{if(this._isReindexing){r.status(409).json({error:"Reindexing already in progress"});return}let n=this.resolveVexorBinary();if(!n){r.status(500).json({error:"Vexor CLI not found"});return}let s=e.query.project,i=An(this.dbManager,s);this._isReindexing=!0,this.statusCache.clear(),r.json({started:!0});try{await this.runVexorCommand([n,"index","--clear","--path",i],mL),await this.runVexorCommand([n,"index","--path",i],mL),_.info("HTTP","Vexor reindex completed")}catch(a){_.error("HTTP","Vexor reindex failed",{},a)}finally{this._isReindexing=!1,this.statusCache.clear()}});emptyStatus(){return{isIndexed:!1,files:0,mode:"",model:"",generatedAt:null,embeddingDim:0,version:0,isReindexing:this._isReindexing}}resolveVexorBinary(){return process.env.VEXOR_PATH?process.env.VEXOR_PATH:Bun.which("vexor")||null}async runVexorCommand(e,r){let n=Bun.spawn(e,{stdout:"pipe",stderr:"pipe"});this.activeProcesses.add(n);let s=setTimeout(()=>{try{n.kill()}catch{}},r);try{let[i,a]=await Promise.all([new Response(n.stdout).text(),new Response(n.stderr).text()]),o=await n.exited;if(o!==0)throw new Error(`Vexor exited with code ${o}: ${a.slice(0,200)}`);return i}finally{clearTimeout(s),this.activeProcesses.delete(n)}}};var ei=ie(require("fs"),1),fL=ie(require("os"),1),ah=ie(require("path"),1);re();var Fo=["sonnet","sonnet[1m]","opus","opus[1m]"],W0=["sonnet","opus"],Z0={model:"sonnet",commands:{spec:"sonnet","spec-plan":"opus","spec-implement":"sonnet","spec-verify":"opus",vault:"sonnet",sync:"sonnet",learn:"sonnet"},agents:{"plan-challenger":"sonnet","plan-verifier":"sonnet","spec-reviewer-compliance":"sonnet","spec-reviewer-quality":"opus"}},ih=class extends Ae{configPath;constructor(e){super(),this.configPath=e??ah.join(fL.homedir(),".pilot","config.json")}setupRoutes(e){e.get("/api/settings",this.wrapHandler(this.handleGet.bind(this))),e.put("/api/settings",this.wrapHandler(this.handlePut.bind(this)))}readConfig(){try{let e=ei.readFileSync(this.configPath,"utf-8");return JSON.parse(e)}catch{return{}}}mergeWithDefaults(e){let r=typeof e.model=="string"&&Fo.includes(e.model)?e.model:Z0.model,n=e.commands,s={...Z0.commands};if(n&&typeof n=="object"&&!Array.isArray(n))for(let[o,c]of Object.entries(n))typeof c=="string"&&Fo.includes(c)&&(s[o]=c);let i=e.agents,a={...Z0.agents};if(i&&typeof i=="object"&&!Array.isArray(i))for(let[o,c]of Object.entries(i))typeof c=="string"&&W0.includes(c)&&(a[o]=c);return{model:r,commands:s,agents:a}}validateSettings(e){if(e.model!==void 0&&(typeof e.model!="string"||!Fo.includes(e.model)))return`Invalid model '${e.model}'; must be one of: ${Fo.join(", ")}`;if(e.commands!==void 0){if(typeof e.commands!="object"||Array.isArray(e.commands))return"commands must be an object";for(let[r,n]of Object.entries(e.commands))if(typeof n!="string"||!Fo.includes(n))return`Invalid model '${n}' for command '${r}'; must be one of: ${Fo.join(", ")}`}if(e.agents!==void 0){if(typeof e.agents!="object"||Array.isArray(e.agents))return"agents must be an object";for(let[r,n]of Object.entries(e.agents))if(typeof n!="string"||!W0.includes(n))return`Invalid model '${n}' for agent '${r}'; agents can only use: ${W0.join(", ")} (no 1M context)`}return null}writeConfigAtomic(e){let r=ah.dirname(this.configPath);ei.mkdirSync(r,{recursive:!0});let n=this.configPath+".tmp";ei.writeFileSync(n,JSON.stringify(e,null,2),"utf-8"),ei.renameSync(n,this.configPath)}async handleGet(e,r){let n=this.readConfig(),s=this.mergeWithDefaults(n);r.json(s)}async handlePut(e,r){let n=e.body,s=this.validateSettings(n);if(s){this.badRequest(r,s);return}let i=this.readConfig();if(n.model!==void 0&&(i.model=n.model),n.commands!==void 0){let o=i.commands??{};i.commands={...o,...n.commands}}if(n.agents!==void 0){let o=i.agents??{};i.agents={...o,...n.agents}}try{this.writeConfigAtomic(i)}catch(o){_.error("HTTP","Failed to write settings config",{},o),r.status(500).json({error:"Failed to save settings"});return}let a=this.mergeWithDefaults(i);r.json(a)}};var oh=class{dbManager;sessionManager;startTime;requestMetrics=[];providerRequests=0;providerTokens=0;providerErrors=0;providerName="unknown";METRICS_WINDOW_MS=300*1e3;constructor(e,r,n){this.dbManager=e,this.sessionManager=r,this.startTime=n,setInterval(()=>this.cleanupOldMetrics(),6e4)}recordRequest(e,r,n=!1){this.requestMetrics.push({endpoint:e,responseTimeMs:r,timestamp:Date.now(),error:n})}recordProviderUsage(e,r,n=!1){this.providerName=e,this.providerRequests++,this.providerTokens+=r,n&&this.providerErrors++}cleanupOldMetrics(){let e=Date.now()-this.METRICS_WINDOW_MS;this.requestMetrics=this.requestMetrics.filter(r=>r.timestamp>e)}async getMetrics(){let r=this.dbManager.getSessionStore().db,n=$=>{try{return r.prepare(`SELECT COUNT(*) as count FROM ${$}`).get().count}catch{return 0}},s=n("observations"),i=n("sdk_sessions"),a=n("session_summaries"),o=n("prompts"),{DATA_DIR:c}=await Promise.resolve().then(()=>(yr(),OD)),l=await import("fs"),p=(await import("path")).join(c,"pilot-memory.db"),d=0;try{d=l.statSync(p).size}catch{}let m=process.memoryUsage(),f=this.requestMetrics.filter($=>$.timestamp>Date.now()-this.METRICS_WINDOW_MS),v=f.length,g=f.filter($=>$.error).length,h=v>0?f.reduce(($,j)=>$+j.responseTimeMs,0)/v:0,y={};for(let $ of f)y[$.endpoint]=(y[$.endpoint]||0)+1;let b=Date.now()-6e4,x=0;try{x=r.prepare("SELECT COUNT(*) as count FROM observations WHERE created_at_epoch > ?").get(b).count}catch{}let w=f.filter($=>$.timestamp>b).length,S=this.sessionManager.isAnySessionProcessing(),E=this.sessionManager.getTotalActiveWork(),k=this.sessionManager.getActiveSessionCount();return{uptime:Math.floor((Date.now()-this.startTime)/1e3),memoryUsage:{heapUsed:m.heapUsed,heapTotal:m.heapTotal,rss:m.rss,external:m.external},database:{observations:s,sessions:i,summaries:a,prompts:o,sizeBytes:d},processing:{activeSessions:k,queueDepth:E,isProcessing:S},requests:{total:v,byEndpoint:y,errors:g,avgResponseTimeMs:Math.round(h)},provider:{name:this.providerName,requestsTotal:this.providerRequests,tokensTotal:this.providerTokens,errorsTotal:this.providerErrors},rates:{observationsPerMinute:x,requestsPerMinute:w}}}async toPrometheus(){let e=await this.getMetrics(),r=[],n=(s,i,a,o="gauge",c={})=>{r.push(`# HELP claude_pilot_${s} ${a}`),r.push(`# TYPE claude_pilot_${s} ${o}`);let l=Object.entries(c).map(([p,d])=>`${p}="${d}"`).join(","),u=l?`{${l}}`:"";r.push(`claude_pilot_${s}${u} ${i}`)};return n("uptime_seconds",e.uptime,"Worker uptime in seconds"),n("memory_heap_used_bytes",e.memoryUsage.heapUsed,"Heap memory used"),n("memory_heap_total_bytes",e.memoryUsage.heapTotal,"Total heap memory"),n("memory_rss_bytes",e.memoryUsage.rss,"Resident set size"),n("database_observations_total",e.database.observations,"Total observations"),n("database_sessions_total",e.database.sessions,"Total sessions"),n("database_summaries_total",e.database.summaries,"Total summaries"),n("database_prompts_total",e.database.prompts,"Total prompts"),n("database_size_bytes",e.database.sizeBytes,"Database file size"),n("processing_active_sessions",e.processing.activeSessions,"Active processing sessions"),n("processing_queue_depth",e.processing.queueDepth,"Queue depth"),n("processing_is_active",e.processing.isProcessing?1:0,"Is processing active"),n("requests_total",e.requests.total,"Total requests in window","counter"),n("requests_errors_total",e.requests.errors,"Total request errors","counter"),n("requests_response_time_avg_ms",e.requests.avgResponseTimeMs,"Average response time"),n("provider_requests_total",e.provider.requestsTotal,"Provider requests","counter",{provider:e.provider.name}),n("provider_tokens_total",e.provider.tokensTotal,"Provider tokens used","counter",{provider:e.provider.name}),n("provider_errors_total",e.provider.errorsTotal,"Provider errors","counter",{provider:e.provider.name}),n("observations_per_minute",e.rates.observationsPerMinute,"Observations created per minute"),n("requests_per_minute",e.rates.requestsPerMinute,"Requests per minute"),r.join(` +`)){let n=r.split(" ");if(n.length<7)continue;let s=parseInt(n[0],10),i=parseFloat(n[1]);isNaN(s)||isNaN(i)||e.push({rank:s,score:i,filePath:n[2],chunkIndex:parseInt(n[3],10)||0,startLine:n[4]==="-"?null:parseInt(n[4],10)||null,endLine:n[5]==="-"?null:parseInt(n[5],10)||null,snippet:n.slice(6).join(" ")})}return e}var sh=class extends Ae{dbManager;activeProcesses=new Set;statusCache=new Map;_isReindexing=!1;constructor(e){super(),this.dbManager=e??null}setupRoutes(e){e.get("/api/vexor/status",this.handleStatus.bind(this)),e.get("/api/vexor/search",this.handleSearch.bind(this)),e.post("/api/vexor/reindex",this.handleReindex.bind(this))}dispose(){for(let e of this.activeProcesses)try{e.kill()}catch{}this.activeProcesses.clear(),_.debug("HTTP","VexorRoutes disposed, killed active processes")}handleStatus=this.wrapHandler(async(e,r)=>{let n=e.query.project,s=An(this.dbManager,n),i=this.statusCache.get(s);if(i&&Date.now()-i.timestamp{let n=e.query.query;if(!n){this.badRequest(r,"query parameter is required");return}if(this.activeProcesses.size>=Cpe){r.status(429).json({error:"Too many concurrent searches. Try again shortly."});return}let s=this.resolveVexorBinary();if(!s){r.json({results:[],error:"Vexor CLI not found"});return}let i=e.query.project,a=An(this.dbManager,i),o=parseInt(e.query.top,10)||20,c=e.query.mode||"auto",l=[s,"search",n,"--top",String(o),"--mode",c,"--format","porcelain","--path",a],u=e.query.ext;u&&l.push("--ext",u);try{let p=await this.runVexorCommand(l,Ipe),d=Dpe(p);r.json({results:d,query:n})}catch(p){_.error("HTTP","Vexor search failed",{query:n},p),r.status(500).json({error:p.message})}});handleReindex=this.wrapHandler(async(e,r)=>{if(this._isReindexing){r.status(409).json({error:"Reindexing already in progress"});return}let n=this.resolveVexorBinary();if(!n){r.status(500).json({error:"Vexor CLI not found"});return}let s=e.query.project,i=An(this.dbManager,s);this._isReindexing=!0,this.statusCache.clear(),r.json({started:!0});try{await this.runVexorCommand([n,"index","--clear","--path",i],mL),await this.runVexorCommand([n,"index","--path",i],mL),_.info("HTTP","Vexor reindex completed")}catch(a){_.error("HTTP","Vexor reindex failed",{},a)}finally{this._isReindexing=!1,this.statusCache.clear()}});emptyStatus(){return{isIndexed:!1,files:0,mode:"",model:"",generatedAt:null,embeddingDim:0,version:0,isReindexing:this._isReindexing}}resolveVexorBinary(){return process.env.VEXOR_PATH?process.env.VEXOR_PATH:Bun.which("vexor")||null}async runVexorCommand(e,r){let n=Bun.spawn(e,{stdout:"pipe",stderr:"pipe"});this.activeProcesses.add(n);let s=setTimeout(()=>{try{n.kill()}catch{}},r);try{let[i,a]=await Promise.all([new Response(n.stdout).text(),new Response(n.stderr).text()]),o=await n.exited;if(o!==0)throw new Error(`Vexor exited with code ${o}: ${a.slice(0,200)}`);return i}finally{clearTimeout(s),this.activeProcesses.delete(n)}}};var ei=ie(require("fs"),1),fL=ie(require("os"),1),ah=ie(require("path"),1);re();var Fo=["sonnet","sonnet[1m]","opus","opus[1m]"],W0=["sonnet","opus"],Z0={model:"opus",commands:{spec:"sonnet","spec-plan":"opus","spec-implement":"sonnet","spec-verify":"opus",vault:"sonnet",sync:"sonnet",learn:"sonnet"},agents:{"plan-challenger":"sonnet","plan-verifier":"sonnet","spec-reviewer-compliance":"sonnet","spec-reviewer-quality":"opus"}},ih=class extends Ae{configPath;constructor(e){super(),this.configPath=e??ah.join(fL.homedir(),".pilot","config.json")}setupRoutes(e){e.get("/api/settings",this.wrapHandler(this.handleGet.bind(this))),e.put("/api/settings",this.wrapHandler(this.handlePut.bind(this)))}readConfig(){try{let e=ei.readFileSync(this.configPath,"utf-8");return JSON.parse(e)}catch{return{}}}mergeWithDefaults(e){let r=typeof e.model=="string"&&Fo.includes(e.model)?e.model:Z0.model,n=e.commands,s={...Z0.commands};if(n&&typeof n=="object"&&!Array.isArray(n))for(let[o,c]of Object.entries(n))typeof c=="string"&&Fo.includes(c)&&(s[o]=c);let i=e.agents,a={...Z0.agents};if(i&&typeof i=="object"&&!Array.isArray(i))for(let[o,c]of Object.entries(i))typeof c=="string"&&W0.includes(c)&&(a[o]=c);return{model:r,commands:s,agents:a}}validateSettings(e){if(e.model!==void 0&&(typeof e.model!="string"||!Fo.includes(e.model)))return`Invalid model '${e.model}'; must be one of: ${Fo.join(", ")}`;if(e.commands!==void 0){if(typeof e.commands!="object"||Array.isArray(e.commands))return"commands must be an object";for(let[r,n]of Object.entries(e.commands))if(typeof n!="string"||!Fo.includes(n))return`Invalid model '${n}' for command '${r}'; must be one of: ${Fo.join(", ")}`}if(e.agents!==void 0){if(typeof e.agents!="object"||Array.isArray(e.agents))return"agents must be an object";for(let[r,n]of Object.entries(e.agents))if(typeof n!="string"||!W0.includes(n))return`Invalid model '${n}' for agent '${r}'; agents can only use: ${W0.join(", ")} (no 1M context)`}return null}writeConfigAtomic(e){let r=ah.dirname(this.configPath);ei.mkdirSync(r,{recursive:!0});let n=this.configPath+".tmp";ei.writeFileSync(n,JSON.stringify(e,null,2),"utf-8"),ei.renameSync(n,this.configPath)}async handleGet(e,r){let n=this.readConfig(),s=this.mergeWithDefaults(n);r.json(s)}async handlePut(e,r){let n=e.body,s=this.validateSettings(n);if(s){this.badRequest(r,s);return}let i=this.readConfig();if(n.model!==void 0&&(i.model=n.model),n.commands!==void 0){let o=i.commands??{};i.commands={...o,...n.commands}}if(n.agents!==void 0){let o=i.agents??{};i.agents={...o,...n.agents}}try{this.writeConfigAtomic(i)}catch(o){_.error("HTTP","Failed to write settings config",{},o),r.status(500).json({error:"Failed to save settings"});return}let a=this.mergeWithDefaults(i);r.json(a)}};var oh=class{dbManager;sessionManager;startTime;requestMetrics=[];providerRequests=0;providerTokens=0;providerErrors=0;providerName="unknown";METRICS_WINDOW_MS=300*1e3;constructor(e,r,n){this.dbManager=e,this.sessionManager=r,this.startTime=n,setInterval(()=>this.cleanupOldMetrics(),6e4)}recordRequest(e,r,n=!1){this.requestMetrics.push({endpoint:e,responseTimeMs:r,timestamp:Date.now(),error:n})}recordProviderUsage(e,r,n=!1){this.providerName=e,this.providerRequests++,this.providerTokens+=r,n&&this.providerErrors++}cleanupOldMetrics(){let e=Date.now()-this.METRICS_WINDOW_MS;this.requestMetrics=this.requestMetrics.filter(r=>r.timestamp>e)}async getMetrics(){let r=this.dbManager.getSessionStore().db,n=$=>{try{return r.prepare(`SELECT COUNT(*) as count FROM ${$}`).get().count}catch{return 0}},s=n("observations"),i=n("sdk_sessions"),a=n("session_summaries"),o=n("prompts"),{DATA_DIR:c}=await Promise.resolve().then(()=>(yr(),OD)),l=await import("fs"),p=(await import("path")).join(c,"pilot-memory.db"),d=0;try{d=l.statSync(p).size}catch{}let m=process.memoryUsage(),f=this.requestMetrics.filter($=>$.timestamp>Date.now()-this.METRICS_WINDOW_MS),v=f.length,g=f.filter($=>$.error).length,h=v>0?f.reduce(($,j)=>$+j.responseTimeMs,0)/v:0,y={};for(let $ of f)y[$.endpoint]=(y[$.endpoint]||0)+1;let b=Date.now()-6e4,x=0;try{x=r.prepare("SELECT COUNT(*) as count FROM observations WHERE created_at_epoch > ?").get(b).count}catch{}let w=f.filter($=>$.timestamp>b).length,S=this.sessionManager.isAnySessionProcessing(),E=this.sessionManager.getTotalActiveWork(),k=this.sessionManager.getActiveSessionCount();return{uptime:Math.floor((Date.now()-this.startTime)/1e3),memoryUsage:{heapUsed:m.heapUsed,heapTotal:m.heapTotal,rss:m.rss,external:m.external},database:{observations:s,sessions:i,summaries:a,prompts:o,sizeBytes:d},processing:{activeSessions:k,queueDepth:E,isProcessing:S},requests:{total:v,byEndpoint:y,errors:g,avgResponseTimeMs:Math.round(h)},provider:{name:this.providerName,requestsTotal:this.providerRequests,tokensTotal:this.providerTokens,errorsTotal:this.providerErrors},rates:{observationsPerMinute:x,requestsPerMinute:w}}}async toPrometheus(){let e=await this.getMetrics(),r=[],n=(s,i,a,o="gauge",c={})=>{r.push(`# HELP claude_pilot_${s} ${a}`),r.push(`# TYPE claude_pilot_${s} ${o}`);let l=Object.entries(c).map(([p,d])=>`${p}="${d}"`).join(","),u=l?`{${l}}`:"";r.push(`claude_pilot_${s}${u} ${i}`)};return n("uptime_seconds",e.uptime,"Worker uptime in seconds"),n("memory_heap_used_bytes",e.memoryUsage.heapUsed,"Heap memory used"),n("memory_heap_total_bytes",e.memoryUsage.heapTotal,"Total heap memory"),n("memory_rss_bytes",e.memoryUsage.rss,"Resident set size"),n("database_observations_total",e.database.observations,"Total observations"),n("database_sessions_total",e.database.sessions,"Total sessions"),n("database_summaries_total",e.database.summaries,"Total summaries"),n("database_prompts_total",e.database.prompts,"Total prompts"),n("database_size_bytes",e.database.sizeBytes,"Database file size"),n("processing_active_sessions",e.processing.activeSessions,"Active processing sessions"),n("processing_queue_depth",e.processing.queueDepth,"Queue depth"),n("processing_is_active",e.processing.isProcessing?1:0,"Is processing active"),n("requests_total",e.requests.total,"Total requests in window","counter"),n("requests_errors_total",e.requests.errors,"Total request errors","counter"),n("requests_response_time_avg_ms",e.requests.avgResponseTimeMs,"Average response time"),n("provider_requests_total",e.provider.requestsTotal,"Provider requests","counter",{provider:e.provider.name}),n("provider_tokens_total",e.provider.tokensTotal,"Provider tokens used","counter",{provider:e.provider.name}),n("provider_errors_total",e.provider.errorsTotal,"Provider errors","counter",{provider:e.provider.name}),n("observations_per_minute",e.rates.observationsPerMinute,"Observations created per minute"),n("requests_per_minute",e.rates.requestsPerMinute,"Requests per minute"),r.join(` `)}};re();var Mpe=1440*60*1e3,zpe=3e4,ch=null,lh=null;async function hL(t){let e=t.getVectorSyncOrNull(),r=new Lo(t,e),n=r.getPolicy();if(!n.enabled){_.debug("RETENTION","Auto-cleanup skipped: retention policy is disabled");return}_.info("RETENTION","Running scheduled auto-cleanup",{maxAgeDays:n.maxAgeDays,maxCount:n.maxCount});let s=await r.run();_.info("RETENTION","Auto-cleanup complete",{deleted:s.deleted,archived:s.archived,errors:s.errors.length,duration:s.duration})}function gL(t){V0(),lh=setTimeout(async()=>{try{await hL(t)}catch(e){_.error("RETENTION","Scheduled retention failed",{},e)}ch=setInterval(async()=>{try{await hL(t)}catch(e){_.error("RETENTION","Scheduled retention failed",{},e)}},Mpe),_.info("RETENTION","Scheduled daily auto-cleanup")},zpe),_.info("RETENTION","Retention scheduler initialized (first run in 30s)")}function V0(){lh&&(clearTimeout(lh),lh=null),ch&&(clearInterval(ch),ch=null),_.debug("RETENTION","Retention scheduler stopped")}var tde={},Jpe="6.7.7";function QL(t,e){return{continue:!0,suppressOutput:!0,status:t,...e&&{message:e}}}function XL(){let t=`${(0,JL.homedir)()}/.pilot/bin/pilot`;if(!(0,ow.existsSync)(t))return _.warn("SYSTEM","Pilot binary not found, skipping license check"),!0;try{return(0,KL.execSync)(`"${t}" verify`,{stdio:"pipe",timeout:5e3}),!0}catch{return!1}}var gh=class{server;startTime=Date.now();mcpClient;coreReady=!1;mcpReady=!1;initializationCompleteFlag=!1;isShuttingDown=!1;dbManager;sessionManager;sseBroadcaster;sdkAgent;paginationHelper;sessionEventBroadcaster;searchRoutes=null;metricsService=null;vexorRoutes=null;initializationComplete;resolveInitialization;cleanupInterval=null;constructor(){this.initializationComplete=new Promise(e=>{this.resolveInitialization=e}),this.dbManager=new Dm,this.sessionManager=new Mm(this.dbManager),this.sseBroadcaster=new zm,this.sdkAgent=new _f(this.dbManager,this.sessionManager),this.paginationHelper=new wf(this.dbManager),this.sessionEventBroadcaster=new Tf(this.sseBroadcaster,this),this.sessionManager.setOnSessionDeleted(()=>{this.broadcastProcessingStatus()}),this.mcpClient=new ya({name:"worker-search-proxy",version:Jpe},{capabilities:{}}),this.server=new Pm({getInitializationComplete:()=>this.initializationCompleteFlag,getCoreReady:()=>this.coreReady,getMcpReady:()=>this.mcpReady,onShutdown:()=>this.shutdown(),onRestart:()=>this.shutdown()}),this.registerRoutes(),this.registerSignalHandlers()}registerSignalHandlers(){let e={value:this.isShuttingDown},r=Gy(()=>this.shutdown(),e);process.on("SIGTERM",()=>{this.isShuttingDown=e.value,r("SIGTERM")}),process.on("SIGINT",()=>{this.isShuttingDown=e.value,r("SIGINT")}),process.platform!=="win32"&&process.on("SIGHUP",()=>{process.argv.includes("--daemon")?_.info("SYSTEM","Received SIGHUP in daemon mode, ignoring",{}):(this.isShuttingDown=e.value,r("SIGHUP"))})}registerRoutes(){this.server.app.get("/api/context/inject",async(e,r,n)=>{try{let i=new Promise((a,o)=>setTimeout(()=>o(new Error("Initialization timeout")),3e5));if(await Promise.race([this.initializationComplete,i]),!this.searchRoutes){r.status(503).json({error:"Search routes not initialized"});return}n()}catch{r.status(503).json({error:"Service initialization timed out"})}}),this.server.registerRoutes(new Zf),this.server.registerRoutes(new Of(this.sseBroadcaster,this.dbManager,this.sessionManager)),this.server.registerRoutes(new Cf(this.sessionManager,this.dbManager,this.sdkAgent,this.sessionEventBroadcaster,this)),this.server.registerRoutes(new Af(this.paginationHelper,this.dbManager,this.sessionManager,this.sseBroadcaster,this,this.startTime)),this.server.registerRoutes(new qf),this.server.registerRoutes(new Ff(this.dbManager,"pilot-memory")),this.server.registerRoutes(new Uf(this.dbManager)),this.server.registerRoutes(new Bf(this.dbManager)),this.server.registerRoutes(new Kf(this.dbManager,this.sseBroadcaster)),this.server.registerRoutes(new Qf),this.metricsService=new oh(this.dbManager,this.sessionManager,this.startTime),this.server.registerRoutes(new Wf(this.metricsService)),this.vexorRoutes=new sh(this.dbManager),this.server.registerRoutes(this.vexorRoutes),this.server.registerRoutes(new eh),this.server.registerRoutes(new rh),this.server.registerRoutes(new nh),this.server.registerRoutes(new ih),gL(this.dbManager)}async start(){let e=Cr(),r=ld(),n=xn();await this.server.listen(e,r),_.info("SYSTEM","Worker started",{bind:r,host:n,port:e,pid:process.pid}),this.initializeBackground().catch(s=>{_.error("SYSTEM","Background initialization failed",{},s)})}async initializeBackground(){try{await dd(),await pd();let{ModeManager:e}=await Promise.resolve().then(()=>(sn(),QD));e.getInstance().loadMode(),_.info("SYSTEM","Mode loaded: Code Development"),await this.dbManager.initialize();let r=process.env.CLAUDE_PROJECT_ROOT||process.cwd(),n=Lu.default.basename(r);this.dbManager.getSessionStore().upsertProjectRoot(n,r);let{PendingMessageStore:s}=await Promise.resolve().then(()=>(Zs(),Di)),i=new s(this.dbManager.getSessionStore().db,3),a=300*1e3,o=i.resetStuckMessages(a);o>0&&_.info("SYSTEM",`Recovered ${o} stuck messages from previous session`,{thresholdMinutes:5});let c=new Ef,l=new kf,u=new Sf(this.dbManager.getSessionSearch(),this.dbManager.getSessionStore(),this.dbManager.getVectorSync(),c,l);this.searchRoutes=new zf(u),this.server.registerRoutes(this.searchRoutes),_.info("WORKER","SearchManager initialized and search routes registered"),this.coreReady=!0,_.info("SYSTEM","Core services ready (hooks can proceed)");let p=[Lu.default.join(__dirname,"mcp-server.cjs"),Lu.default.join(__dirname,"..","servers","mcp-server.ts"),Lu.default.join(__dirname,"..","..","servers","mcp-server.ts")],d=p.find(x=>(0,ow.existsSync)(x))||p[0],m=d.endsWith(".ts"),f=new _a({command:m?"bun":"node",args:[d],env:process.env}),v=3e5,g=this.mcpClient.connect(f),h=new Promise((x,w)=>setTimeout(()=>w(new Error("MCP connection timeout after 5 minutes")),v));await Promise.race([g,h]),this.mcpReady=!0,_.success("WORKER","Connected to MCP server"),this.initializationCompleteFlag=!0,this.resolveInitialization(),_.info("SYSTEM","Background initialization complete"),this.processPendingQueues(50).then(x=>{x.sessionsStarted>0&&_.info("SYSTEM",`Auto-recovered ${x.sessionsStarted} sessions with pending work`,{totalPending:x.totalPendingSessions,started:x.sessionsStarted,sessionIds:x.startedSessionIds})}).catch(x=>{_.error("SYSTEM","Auto-recovery of pending queues failed",{},x)});let y=300*1e3,b=3600*1e3;this.cleanupInterval=setInterval(async()=>{try{let x=await this.sessionManager.cleanupStaleSessions(b);x>0&&_.info("SYSTEM",`Periodic cleanup: removed ${x} stale sessions`),await dd(),await pd(),_.debug("SYSTEM","Periodic cleanup completed")}catch(x){_.error("SYSTEM","Periodic cleanup failed",{},x)}},y),_.info("SYSTEM","Started periodic cleanup (every 5 minutes)")}catch(e){throw _.error("SYSTEM","Background initialization failed",{},e),e}}getActiveAgent(){return this.sdkAgent}startSessionProcessor(e,r){if(!e)return;e.abortController.signal.aborted&&(e.abortController=new AbortController,_.debug("SYSTEM","Reset AbortController for session restart",{sessionId:e.sessionDbId}));let n=e.sessionDbId,s=this.getActiveAgent(),i=s.constructor.name;_.info("SYSTEM",`Starting generator (${r}) using ${i}`,{sessionId:n}),e.generatorPromise=s.startSession(e,this).catch(a=>{_.error("SDK","Session generator failed",{sessionId:e.sessionDbId,project:e.project,provider:i},a)}).finally(()=>{e.generatorPromise=null,this.broadcastProcessingStatus()})}async processPendingQueues(e=10){let{PendingMessageStore:r}=await Promise.resolve().then(()=>(Zs(),Di)),n=new r(this.dbManager.getSessionStore().db,3),s=this.dbManager.getSessionStore(),i=1800*1e3,a=Date.now()-i;try{let l=s.db.prepare(` SELECT s.id FROM sdk_sessions s WHERE s.status = 'active' diff --git a/pilot/settings.json b/pilot/settings.json index cd28f37d..7499327a 100644 --- a/pilot/settings.json +++ b/pilot/settings.json @@ -1,10 +1,8 @@ { - "model": "sonnet", "env": { "CLAUDE_CODE_ENABLE_TASKS": "true", "CLAUDE_CODE_HIDE_ACCOUNT_INFO": "true", "CLAUDE_CODE_DISABLE_AUTO_MEMORY": "true", - "CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "false", "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "true", "ENABLE_TOOL_SEARCH": "true", "ENABLE_LSP_TOOL": "true", diff --git a/pilot/ui/viewer-bundle.js b/pilot/ui/viewer-bundle.js index d59b2f4b..9de1cdf9 100644 --- a/pilot/ui/viewer-bundle.js +++ b/pilot/ui/viewer-bundle.js @@ -1,4 +1,4 @@ -var IM=Object.defineProperty;var TM=(e,t,n)=>t in e?IM(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var bp=(e,t,n)=>TM(e,typeof t!="symbol"?t+"":t,n);function MM(e,t){for(var n=0;nr[i]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))r(i);new MutationObserver(i=>{for(const a of i)if(a.type==="childList")for(const l of a.addedNodes)l.tagName==="LINK"&&l.rel==="modulepreload"&&r(l)}).observe(document,{childList:!0,subtree:!0});function n(i){const a={};return i.integrity&&(a.integrity=i.integrity),i.referrerPolicy&&(a.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?a.credentials="include":i.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function r(i){if(i.ep)return;i.ep=!0;const a=n(i);fetch(i.href,a)}})();function xr(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var wp={exports:{}},Dl={},kp={exports:{}},Le={};/** +var TD=Object.defineProperty;var DD=(e,t,n)=>t in e?TD(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var kh=(e,t,n)=>DD(e,typeof t!="symbol"?t+"":t,n);function MD(e,t){for(var n=0;nr[i]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))r(i);new MutationObserver(i=>{for(const a of i)if(a.type==="childList")for(const l of a.addedNodes)l.tagName==="LINK"&&l.rel==="modulepreload"&&r(l)}).observe(document,{childList:!0,subtree:!0});function n(i){const a={};return i.integrity&&(a.integrity=i.integrity),i.referrerPolicy&&(a.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?a.credentials="include":i.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function r(i){if(i.ep)return;i.ep=!0;const a=n(i);fetch(i.href,a)}})();function yr(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Sh={exports:{}},Ml={},jh={exports:{}},Le={};/** * @license React * react.production.min.js * @@ -6,7 +6,7 @@ var IM=Object.defineProperty;var TM=(e,t,n)=>t in e?IM(e,t,{enumerable:!0,config * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var Ow;function DM(){if(Ow)return Le;Ow=1;var e=Symbol.for("react.element"),t=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),i=Symbol.for("react.profiler"),a=Symbol.for("react.provider"),l=Symbol.for("react.context"),u=Symbol.for("react.forward_ref"),c=Symbol.for("react.suspense"),f=Symbol.for("react.memo"),d=Symbol.for("react.lazy"),p=Symbol.iterator;function g($){return $===null||typeof $!="object"?null:($=p&&$[p]||$["@@iterator"],typeof $=="function"?$:null)}var y={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},x=Object.assign,S={};function w($,U,_){this.props=$,this.context=U,this.refs=S,this.updater=_||y}w.prototype.isReactComponent={},w.prototype.setState=function($,U){if(typeof $!="object"&&typeof $!="function"&&$!=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,$,U,"setState")},w.prototype.forceUpdate=function($){this.updater.enqueueForceUpdate(this,$,"forceUpdate")};function P(){}P.prototype=w.prototype;function C($,U,_){this.props=$,this.context=U,this.refs=S,this.updater=_||y}var O=C.prototype=new P;O.constructor=C,x(O,w.prototype),O.isPureReactComponent=!0;var A=Array.isArray,I=Object.prototype.hasOwnProperty,E={current:null},L={key:!0,ref:!0,__self:!0,__source:!0};function F($,U,_){var te,fe={},ce=null,Se=null;if(U!=null)for(te in U.ref!==void 0&&(Se=U.ref),U.key!==void 0&&(ce=""+U.key),U)I.call(U,te)&&!L.hasOwnProperty(te)&&(fe[te]=U[te]);var je=arguments.length-2;if(je===1)fe.children=_;else if(1t in e?IM(e,t,{enumerable:!0,config * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var Aw;function LM(){if(Aw)return Dl;Aw=1;var e=Fo(),t=Symbol.for("react.element"),n=Symbol.for("react.fragment"),r=Object.prototype.hasOwnProperty,i=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,a={key:!0,ref:!0,__self:!0,__source:!0};function l(u,c,f){var d,p={},g=null,y=null;f!==void 0&&(g=""+f),c.key!==void 0&&(g=""+c.key),c.ref!==void 0&&(y=c.ref);for(d in c)r.call(c,d)&&!a.hasOwnProperty(d)&&(p[d]=c[d]);if(u&&u.defaultProps)for(d in c=u.defaultProps,c)p[d]===void 0&&(p[d]=c[d]);return{$$typeof:t,type:u,key:g,ref:y,props:p,_owner:i.current}}return Dl.Fragment=n,Dl.jsx=l,Dl.jsxs=l,Dl}var _w;function RM(){return _w||(_w=1,wp.exports=LM()),wp.exports}var m=RM(),ac={},Sp={exports:{}},kn={},jp={exports:{}},Pp={};/** + */var Iw;function RD(){if(Iw)return Ml;Iw=1;var e=Fo(),t=Symbol.for("react.element"),n=Symbol.for("react.fragment"),r=Object.prototype.hasOwnProperty,i=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,a={key:!0,ref:!0,__self:!0,__source:!0};function l(u,c,f){var d,h={},g=null,y=null;f!==void 0&&(g=""+f),c.key!==void 0&&(g=""+c.key),c.ref!==void 0&&(y=c.ref);for(d in c)r.call(c,d)&&!a.hasOwnProperty(d)&&(h[d]=c[d]);if(u&&u.defaultProps)for(d in c=u.defaultProps,c)h[d]===void 0&&(h[d]=c[d]);return{$$typeof:t,type:u,key:g,ref:y,props:h,_owner:i.current}}return Ml.Fragment=n,Ml.jsx=l,Ml.jsxs=l,Ml}var Tw;function zD(){return Tw||(Tw=1,Sh.exports=RD()),Sh.exports}var m=zD(),ac={},Ph={exports:{}},kn={},Eh={exports:{}},Ch={};/** * @license React * scheduler.production.min.js * @@ -22,7 +22,7 @@ var IM=Object.defineProperty;var TM=(e,t,n)=>t in e?IM(e,t,{enumerable:!0,config * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var Iw;function zM(){return Iw||(Iw=1,(function(e){function t(J,ae){var T=J.length;J.push(ae);e:for(;0>>1,U=J[$];if(0>>1;$<_;){var te=2*($+1)-1,fe=J[te],ce=te+1,Se=J[ce];if(0>i(fe,T))cei(Se,fe)?(J[$]=Se,J[ce]=T,$=ce):(J[$]=fe,J[te]=T,$=te);else if(cei(Se,T))J[$]=Se,J[ce]=T,$=ce;else break e}}return ae}function i(J,ae){var T=J.sortIndex-ae.sortIndex;return T!==0?T:J.id-ae.id}if(typeof performance=="object"&&typeof performance.now=="function"){var a=performance;e.unstable_now=function(){return a.now()}}else{var l=Date,u=l.now();e.unstable_now=function(){return l.now()-u}}var c=[],f=[],d=1,p=null,g=3,y=!1,x=!1,S=!1,w=typeof setTimeout=="function"?setTimeout:null,P=typeof clearTimeout=="function"?clearTimeout:null,C=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function O(J){for(var ae=n(f);ae!==null;){if(ae.callback===null)r(f);else if(ae.startTime<=J)r(f),ae.sortIndex=ae.expirationTime,t(c,ae);else break;ae=n(f)}}function A(J){if(S=!1,O(J),!x)if(n(c)!==null)x=!0,he(I);else{var ae=n(f);ae!==null&&de(A,ae.startTime-J)}}function I(J,ae){x=!1,S&&(S=!1,P(F),F=-1),y=!0;var T=g;try{for(O(ae),p=n(c);p!==null&&(!(p.expirationTime>ae)||J&&!W());){var $=p.callback;if(typeof $=="function"){p.callback=null,g=p.priorityLevel;var U=$(p.expirationTime<=ae);ae=e.unstable_now(),typeof U=="function"?p.callback=U:p===n(c)&&r(c),O(ae)}else r(c);p=n(c)}if(p!==null)var _=!0;else{var te=n(f);te!==null&&de(A,te.startTime-ae),_=!1}return _}finally{p=null,g=T,y=!1}}var E=!1,L=null,F=-1,H=5,R=-1;function W(){return!(e.unstable_now()-RJ||125$?(J.sortIndex=T,t(f,J),n(c)===null&&J===n(f)&&(S?(P(F),F=-1):S=!0,de(A,T-$))):(J.sortIndex=U,t(c,J),x||y||(x=!0,he(I))),J},e.unstable_shouldYield=W,e.unstable_wrapCallback=function(J){var ae=g;return function(){var T=g;g=ae;try{return J.apply(this,arguments)}finally{g=T}}}})(Pp)),Pp}var Tw;function $M(){return Tw||(Tw=1,jp.exports=zM()),jp.exports}/** + */var Dw;function $D(){return Dw||(Dw=1,(function(e){function t(J,ae){var T=J.length;J.push(ae);e:for(;0>>1,U=J[$];if(0>>1;$<_;){var te=2*($+1)-1,fe=J[te],ce=te+1,Se=J[ce];if(0>i(fe,T))cei(Se,fe)?(J[$]=Se,J[ce]=T,$=ce):(J[$]=fe,J[te]=T,$=te);else if(cei(Se,T))J[$]=Se,J[ce]=T,$=ce;else break e}}return ae}function i(J,ae){var T=J.sortIndex-ae.sortIndex;return T!==0?T:J.id-ae.id}if(typeof performance=="object"&&typeof performance.now=="function"){var a=performance;e.unstable_now=function(){return a.now()}}else{var l=Date,u=l.now();e.unstable_now=function(){return l.now()-u}}var c=[],f=[],d=1,h=null,g=3,y=!1,x=!1,S=!1,w=typeof setTimeout=="function"?setTimeout:null,P=typeof clearTimeout=="function"?clearTimeout:null,C=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function O(J){for(var ae=n(f);ae!==null;){if(ae.callback===null)r(f);else if(ae.startTime<=J)r(f),ae.sortIndex=ae.expirationTime,t(c,ae);else break;ae=n(f)}}function A(J){if(S=!1,O(J),!x)if(n(c)!==null)x=!0,pe(I);else{var ae=n(f);ae!==null&&de(A,ae.startTime-J)}}function I(J,ae){x=!1,S&&(S=!1,P(F),F=-1),y=!0;var T=g;try{for(O(ae),h=n(c);h!==null&&(!(h.expirationTime>ae)||J&&!W());){var $=h.callback;if(typeof $=="function"){h.callback=null,g=h.priorityLevel;var U=$(h.expirationTime<=ae);ae=e.unstable_now(),typeof U=="function"?h.callback=U:h===n(c)&&r(c),O(ae)}else r(c);h=n(c)}if(h!==null)var _=!0;else{var te=n(f);te!==null&&de(A,te.startTime-ae),_=!1}return _}finally{h=null,g=T,y=!1}}var E=!1,L=null,F=-1,H=5,R=-1;function W(){return!(e.unstable_now()-RJ||125$?(J.sortIndex=T,t(f,J),n(c)===null&&J===n(f)&&(S?(P(F),F=-1):S=!0,de(A,T-$))):(J.sortIndex=U,t(c,J),x||y||(x=!0,pe(I))),J},e.unstable_shouldYield=W,e.unstable_wrapCallback=function(J){var ae=g;return function(){var T=g;g=ae;try{return J.apply(this,arguments)}finally{g=T}}}})(Ch)),Ch}var Mw;function FD(){return Mw||(Mw=1,Eh.exports=$D()),Eh.exports}/** * @license React * react-dom.production.min.js * @@ -30,42 +30,42 @@ var IM=Object.defineProperty;var TM=(e,t,n)=>t in e?IM(e,t,{enumerable:!0,config * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var Mw;function FM(){if(Mw)return kn;Mw=1;var e=Fo(),t=$M();function n(o){for(var s="https://reactjs.org/docs/error-decoder.html?invariant="+o,h=1;h"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),c=Object.prototype.hasOwnProperty,f=/^[: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]*$/,d={},p={};function g(o){return c.call(p,o)?!0:c.call(d,o)?!1:f.test(o)?p[o]=!0:(d[o]=!0,!1)}function y(o,s,h,v){if(h!==null&&h.type===0)return!1;switch(typeof s){case"function":case"symbol":return!0;case"boolean":return v?!1:h!==null?!h.acceptsBooleans:(o=o.toLowerCase().slice(0,5),o!=="data-"&&o!=="aria-");default:return!1}}function x(o,s,h,v){if(s===null||typeof s>"u"||y(o,s,h,v))return!0;if(v)return!1;if(h!==null)switch(h.type){case 3:return!s;case 4:return s===!1;case 5:return isNaN(s);case 6:return isNaN(s)||1>s}return!1}function S(o,s,h,v,b,j,N){this.acceptsBooleans=s===2||s===3||s===4,this.attributeName=v,this.attributeNamespace=b,this.mustUseProperty=h,this.propertyName=o,this.type=s,this.sanitizeURL=j,this.removeEmptyString=N}var w={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(o){w[o]=new S(o,0,!1,o,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(o){var s=o[0];w[s]=new S(s,1,!1,o[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(o){w[o]=new S(o,2,!1,o.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(o){w[o]=new S(o,2,!1,o,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(o){w[o]=new S(o,3,!1,o.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(o){w[o]=new S(o,3,!0,o,null,!1,!1)}),["capture","download"].forEach(function(o){w[o]=new S(o,4,!1,o,null,!1,!1)}),["cols","rows","size","span"].forEach(function(o){w[o]=new S(o,6,!1,o,null,!1,!1)}),["rowSpan","start"].forEach(function(o){w[o]=new S(o,5,!1,o.toLowerCase(),null,!1,!1)});var P=/[\-:]([a-z])/g;function C(o){return o[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(o){var s=o.replace(P,C);w[s]=new S(s,1,!1,o,null,!1,!1)}),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(o){var s=o.replace(P,C);w[s]=new S(s,1,!1,o,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(o){var s=o.replace(P,C);w[s]=new S(s,1,!1,o,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(o){w[o]=new S(o,1,!1,o.toLowerCase(),null,!1,!1)}),w.xlinkHref=new S("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(o){w[o]=new S(o,1,!1,o.toLowerCase(),null,!0,!0)});function O(o,s,h,v){var b=w.hasOwnProperty(s)?w[s]:null;(b!==null?b.type!==0:v||!(2"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),c=Object.prototype.hasOwnProperty,f=/^[: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]*$/,d={},h={};function g(o){return c.call(h,o)?!0:c.call(d,o)?!1:f.test(o)?h[o]=!0:(d[o]=!0,!1)}function y(o,s,p,v){if(p!==null&&p.type===0)return!1;switch(typeof s){case"function":case"symbol":return!0;case"boolean":return v?!1:p!==null?!p.acceptsBooleans:(o=o.toLowerCase().slice(0,5),o!=="data-"&&o!=="aria-");default:return!1}}function x(o,s,p,v){if(s===null||typeof s>"u"||y(o,s,p,v))return!0;if(v)return!1;if(p!==null)switch(p.type){case 3:return!s;case 4:return s===!1;case 5:return isNaN(s);case 6:return isNaN(s)||1>s}return!1}function S(o,s,p,v,b,j,N){this.acceptsBooleans=s===2||s===3||s===4,this.attributeName=v,this.attributeNamespace=b,this.mustUseProperty=p,this.propertyName=o,this.type=s,this.sanitizeURL=j,this.removeEmptyString=N}var w={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(o){w[o]=new S(o,0,!1,o,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(o){var s=o[0];w[s]=new S(s,1,!1,o[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(o){w[o]=new S(o,2,!1,o.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(o){w[o]=new S(o,2,!1,o,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(o){w[o]=new S(o,3,!1,o.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(o){w[o]=new S(o,3,!0,o,null,!1,!1)}),["capture","download"].forEach(function(o){w[o]=new S(o,4,!1,o,null,!1,!1)}),["cols","rows","size","span"].forEach(function(o){w[o]=new S(o,6,!1,o,null,!1,!1)}),["rowSpan","start"].forEach(function(o){w[o]=new S(o,5,!1,o.toLowerCase(),null,!1,!1)});var P=/[\-:]([a-z])/g;function C(o){return o[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(o){var s=o.replace(P,C);w[s]=new S(s,1,!1,o,null,!1,!1)}),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(o){var s=o.replace(P,C);w[s]=new S(s,1,!1,o,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(o){var s=o.replace(P,C);w[s]=new S(s,1,!1,o,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(o){w[o]=new S(o,1,!1,o.toLowerCase(),null,!1,!1)}),w.xlinkHref=new S("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(o){w[o]=new S(o,1,!1,o.toLowerCase(),null,!0,!0)});function O(o,s,p,v){var b=w.hasOwnProperty(s)?w[s]:null;(b!==null?b.type!==0:v||!(2D||b[N]!==j[D]){var z=` -`+b[N].replace(" at new "," at ");return o.displayName&&z.includes("")&&(z=z.replace("",o.displayName)),z}while(1<=N&&0<=D);break}}}finally{_=!1,Error.prepareStackTrace=h}return(o=o?o.displayName||o.name:"")?U(o):""}function fe(o){switch(o.tag){case 5:return U(o.type);case 16:return U("Lazy");case 13:return U("Suspense");case 19:return U("SuspenseList");case 0:case 2:case 15:return o=te(o.type,!1),o;case 11:return o=te(o.type.render,!1),o;case 1:return o=te(o.type,!0),o;default:return""}}function ce(o){if(o==null)return null;if(typeof o=="function")return o.displayName||o.name||null;if(typeof o=="string")return o;switch(o){case L:return"Fragment";case E:return"Portal";case H:return"Profiler";case F:return"StrictMode";case Z:return"Suspense";case Y:return"SuspenseList"}if(typeof o=="object")switch(o.$$typeof){case W:return(o.displayName||"Context")+".Consumer";case R:return(o._context.displayName||"Context")+".Provider";case M:var s=o.render;return o=o.displayName,o||(o=s.displayName||s.name||"",o=o!==""?"ForwardRef("+o+")":"ForwardRef"),o;case Q:return s=o.displayName||null,s!==null?s:ce(o.type)||"Memo";case he:s=o._payload,o=o._init;try{return ce(o(s))}catch{}}return null}function Se(o){var s=o.type;switch(o.tag){case 24:return"Cache";case 9:return(s.displayName||"Context")+".Consumer";case 10:return(s._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return o=s.render,o=o.displayName||o.name||"",s.displayName||(o!==""?"ForwardRef("+o+")":"ForwardRef");case 7:return"Fragment";case 5:return s;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return ce(s);case 8:return s===F?"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 s=="function")return s.displayName||s.name||null;if(typeof s=="string")return s}return null}function je(o){switch(typeof o){case"boolean":case"number":case"string":case"undefined":return o;case"object":return o;default:return""}}function X(o){var s=o.type;return(o=o.nodeName)&&o.toLowerCase()==="input"&&(s==="checkbox"||s==="radio")}function we(o){var s=X(o)?"checked":"value",h=Object.getOwnPropertyDescriptor(o.constructor.prototype,s),v=""+o[s];if(!o.hasOwnProperty(s)&&typeof h<"u"&&typeof h.get=="function"&&typeof h.set=="function"){var b=h.get,j=h.set;return Object.defineProperty(o,s,{configurable:!0,get:function(){return b.call(this)},set:function(N){v=""+N,j.call(this,N)}}),Object.defineProperty(o,s,{enumerable:h.enumerable}),{getValue:function(){return v},setValue:function(N){v=""+N},stopTracking:function(){o._valueTracker=null,delete o[s]}}}}function Ae(o){o._valueTracker||(o._valueTracker=we(o))}function ie(o){if(!o)return!1;var s=o._valueTracker;if(!s)return!0;var h=s.getValue(),v="";return o&&(v=X(o)?o.checked?"true":"false":o.value),o=v,o!==h?(s.setValue(o),!0):!1}function rt(o){if(o=o||(typeof document<"u"?document:void 0),typeof o>"u")return null;try{return o.activeElement||o.body}catch{return o.body}}function ze(o,s){var h=s.checked;return T({},s,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:h??o._wrapperState.initialChecked})}function ct(o,s){var h=s.defaultValue==null?"":s.defaultValue,v=s.checked!=null?s.checked:s.defaultChecked;h=je(s.value!=null?s.value:h),o._wrapperState={initialChecked:v,initialValue:h,controlled:s.type==="checkbox"||s.type==="radio"?s.checked!=null:s.value!=null}}function ft(o,s){s=s.checked,s!=null&&O(o,"checked",s,!1)}function Ut(o,s){ft(o,s);var h=je(s.value),v=s.type;if(h!=null)v==="number"?(h===0&&o.value===""||o.value!=h)&&(o.value=""+h):o.value!==""+h&&(o.value=""+h);else if(v==="submit"||v==="reset"){o.removeAttribute("value");return}s.hasOwnProperty("value")?Ur(o,s.type,h):s.hasOwnProperty("defaultValue")&&Ur(o,s.type,je(s.defaultValue)),s.checked==null&&s.defaultChecked!=null&&(o.defaultChecked=!!s.defaultChecked)}function Pt(o,s,h){if(s.hasOwnProperty("value")||s.hasOwnProperty("defaultValue")){var v=s.type;if(!(v!=="submit"&&v!=="reset"||s.value!==void 0&&s.value!==null))return;s=""+o._wrapperState.initialValue,h||s===o.value||(o.value=s),o.defaultValue=s}h=o.name,h!==""&&(o.name=""),o.defaultChecked=!!o._wrapperState.initialChecked,h!==""&&(o.name=h)}function Ur(o,s,h){(s!=="number"||rt(o.ownerDocument)!==o)&&(h==null?o.defaultValue=""+o._wrapperState.initialValue:o.defaultValue!==""+h&&(o.defaultValue=""+h))}var xi=Array.isArray;function bi(o,s,h,v){if(o=o.options,s){s={};for(var b=0;b"+s.valueOf().toString()+"",s=Ne.firstChild;o.firstChild;)o.removeChild(o.firstChild);for(;s.firstChild;)o.appendChild(s.firstChild)}});function Fe(o,s){if(s){var h=o.firstChild;if(h&&h===o.lastChild&&h.nodeType===3){h.nodeValue=s;return}}o.textContent=s}var Wt={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},Wr=["Webkit","ms","Moz","O"];Object.keys(Wt).forEach(function(o){Wr.forEach(function(s){s=s+o.charAt(0).toUpperCase()+o.substring(1),Wt[s]=Wt[o]})});function Fn(o,s,h){return s==null||typeof s=="boolean"||s===""?"":h||typeof s!="number"||s===0||Wt.hasOwnProperty(o)&&Wt[o]?(""+s).trim():s+"px"}function wi(o,s){o=o.style;for(var h in s)if(s.hasOwnProperty(h)){var v=h.indexOf("--")===0,b=Fn(h,s[h],v);h==="float"&&(h="cssFloat"),v?o.setProperty(h,b):o[h]=b}}var na=T({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 qt(o,s){if(s){if(na[o]&&(s.children!=null||s.dangerouslySetInnerHTML!=null))throw Error(n(137,o));if(s.dangerouslySetInnerHTML!=null){if(s.children!=null)throw Error(n(60));if(typeof s.dangerouslySetInnerHTML!="object"||!("__html"in s.dangerouslySetInnerHTML))throw Error(n(61))}if(s.style!=null&&typeof s.style!="object")throw Error(n(62))}}function wr(o,s){if(o.indexOf("-")===-1)return typeof s.is=="string";switch(o){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 Nn=null;function Dd(o){return o=o.target||o.srcElement||window,o.correspondingUseElement&&(o=o.correspondingUseElement),o.nodeType===3?o.parentNode:o}var Ld=null,qa=null,Ha=null;function Hx(o){if(o=bl(o)){if(typeof Ld!="function")throw Error(n(280));var s=o.stateNode;s&&(s=bu(s),Ld(o.stateNode,o.type,s))}}function Vx(o){qa?Ha?Ha.push(o):Ha=[o]:qa=o}function Kx(){if(qa){var o=qa,s=Ha;if(Ha=qa=null,Hx(o),s)for(o=0;o>>=0,o===0?32:31-(GT(o)/YT|0)|0}var nu=64,ru=4194304;function nl(o){switch(o&-o){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 o&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return o&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return o}}function iu(o,s){var h=o.pendingLanes;if(h===0)return 0;var v=0,b=o.suspendedLanes,j=o.pingedLanes,N=h&268435455;if(N!==0){var D=N&~b;D!==0?v=nl(D):(j&=N,j!==0&&(v=nl(j)))}else N=h&~b,N!==0?v=nl(N):j!==0&&(v=nl(j));if(v===0)return 0;if(s!==0&&s!==v&&(s&b)===0&&(b=v&-v,j=s&-s,b>=j||b===16&&(j&4194240)!==0))return s;if((v&4)!==0&&(v|=h&16),s=o.entangledLanes,s!==0)for(o=o.entanglements,s&=v;0h;h++)s.push(o);return s}function rl(o,s,h){o.pendingLanes|=s,s!==536870912&&(o.suspendedLanes=0,o.pingedLanes=0),o=o.eventTimes,s=31-ir(s),o[s]=h}function JT(o,s){var h=o.pendingLanes&~s;o.pendingLanes=s,o.suspendedLanes=0,o.pingedLanes=0,o.expiredLanes&=s,o.mutableReadLanes&=s,o.entangledLanes&=s,s=o.entanglements;var v=o.eventTimes;for(o=o.expirationTimes;0=fl),w0=" ",k0=!1;function S0(o,s){switch(o){case"keyup":return C2.indexOf(s.keyCode)!==-1;case"keydown":return s.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function j0(o){return o=o.detail,typeof o=="object"&&"data"in o?o.data:null}var Ga=!1;function N2(o,s){switch(o){case"compositionend":return j0(s);case"keypress":return s.which!==32?null:(k0=!0,w0);case"textInput":return o=s.data,o===w0&&k0?null:o;default:return null}}function A2(o,s){if(Ga)return o==="compositionend"||!eh&&S0(o,s)?(o=m0(),uu=Gd=Ei=null,Ga=!1,o):null;switch(o){case"paste":return null;case"keypress":if(!(s.ctrlKey||s.altKey||s.metaKey)||s.ctrlKey&&s.altKey){if(s.char&&1=s)return{node:h,offset:s-o};o=v}e:{for(;h;){if(h.nextSibling){h=h.nextSibling;break e}h=h.parentNode}h=void 0}h=_0(h)}}function T0(o,s){return o&&s?o===s?!0:o&&o.nodeType===3?!1:s&&s.nodeType===3?T0(o,s.parentNode):"contains"in o?o.contains(s):o.compareDocumentPosition?!!(o.compareDocumentPosition(s)&16):!1:!1}function M0(){for(var o=window,s=rt();s instanceof o.HTMLIFrameElement;){try{var h=typeof s.contentWindow.location.href=="string"}catch{h=!1}if(h)o=s.contentWindow;else break;s=rt(o.document)}return s}function rh(o){var s=o&&o.nodeName&&o.nodeName.toLowerCase();return s&&(s==="input"&&(o.type==="text"||o.type==="search"||o.type==="tel"||o.type==="url"||o.type==="password")||s==="textarea"||o.contentEditable==="true")}function $2(o){var s=M0(),h=o.focusedElem,v=o.selectionRange;if(s!==h&&h&&h.ownerDocument&&T0(h.ownerDocument.documentElement,h)){if(v!==null&&rh(h)){if(s=v.start,o=v.end,o===void 0&&(o=s),"selectionStart"in h)h.selectionStart=s,h.selectionEnd=Math.min(o,h.value.length);else if(o=(s=h.ownerDocument||document)&&s.defaultView||window,o.getSelection){o=o.getSelection();var b=h.textContent.length,j=Math.min(v.start,b);v=v.end===void 0?j:Math.min(v.end,b),!o.extend&&j>v&&(b=v,v=j,j=b),b=I0(h,j);var N=I0(h,v);b&&N&&(o.rangeCount!==1||o.anchorNode!==b.node||o.anchorOffset!==b.offset||o.focusNode!==N.node||o.focusOffset!==N.offset)&&(s=s.createRange(),s.setStart(b.node,b.offset),o.removeAllRanges(),j>v?(o.addRange(s),o.extend(N.node,N.offset)):(s.setEnd(N.node,N.offset),o.addRange(s)))}}for(s=[],o=h;o=o.parentNode;)o.nodeType===1&&s.push({element:o,left:o.scrollLeft,top:o.scrollTop});for(typeof h.focus=="function"&&h.focus(),h=0;h=document.documentMode,Ya=null,ih=null,ml=null,ah=!1;function D0(o,s,h){var v=h.window===h?h.document:h.nodeType===9?h:h.ownerDocument;ah||Ya==null||Ya!==rt(v)||(v=Ya,"selectionStart"in v&&rh(v)?v={start:v.selectionStart,end:v.selectionEnd}:(v=(v.ownerDocument&&v.ownerDocument.defaultView||window).getSelection(),v={anchorNode:v.anchorNode,anchorOffset:v.anchorOffset,focusNode:v.focusNode,focusOffset:v.focusOffset}),ml&&pl(ml,v)||(ml=v,v=vu(ih,"onSelect"),0eo||(o.current=vh[eo],vh[eo]=null,eo--)}function Qe(o,s){eo++,vh[eo]=o.current,o.current=s}var Ai={},Qt=Ni(Ai),vn=Ni(!1),aa=Ai;function to(o,s){var h=o.type.contextTypes;if(!h)return Ai;var v=o.stateNode;if(v&&v.__reactInternalMemoizedUnmaskedChildContext===s)return v.__reactInternalMemoizedMaskedChildContext;var b={},j;for(j in h)b[j]=s[j];return v&&(o=o.stateNode,o.__reactInternalMemoizedUnmaskedChildContext=s,o.__reactInternalMemoizedMaskedChildContext=b),b}function yn(o){return o=o.childContextTypes,o!=null}function wu(){tt(vn),tt(Qt)}function X0(o,s,h){if(Qt.current!==Ai)throw Error(n(168));Qe(Qt,s),Qe(vn,h)}function Q0(o,s,h){var v=o.stateNode;if(s=s.childContextTypes,typeof v.getChildContext!="function")return h;v=v.getChildContext();for(var b in v)if(!(b in s))throw Error(n(108,Se(o)||"Unknown",b));return T({},h,v)}function ku(o){return o=(o=o.stateNode)&&o.__reactInternalMemoizedMergedChildContext||Ai,aa=Qt.current,Qe(Qt,o),Qe(vn,vn.current),!0}function Z0(o,s,h){var v=o.stateNode;if(!v)throw Error(n(169));h?(o=Q0(o,s,aa),v.__reactInternalMemoizedMergedChildContext=o,tt(vn),tt(Qt),Qe(Qt,o)):tt(vn),Qe(vn,h)}var Hr=null,Su=!1,yh=!1;function J0(o){Hr===null?Hr=[o]:Hr.push(o)}function Q2(o){Su=!0,J0(o)}function _i(){if(!yh&&Hr!==null){yh=!0;var o=0,s=Ve;try{var h=Hr;for(Ve=1;o>=N,b-=N,Vr=1<<32-ir(s)+b|h<_e?(Tt=Ce,Ce=null):Tt=Ce.sibling;var Ue=ne(q,Ce,V[_e],ue);if(Ue===null){Ce===null&&(Ce=Tt);break}o&&Ce&&Ue.alternate===null&&s(q,Ce),B=j(Ue,B,_e),Ee===null?ke=Ue:Ee.sibling=Ue,Ee=Ue,Ce=Tt}if(_e===V.length)return h(q,Ce),it&&la(q,_e),ke;if(Ce===null){for(;_e_e?(Tt=Ce,Ce=null):Tt=Ce.sibling;var Fi=ne(q,Ce,Ue.value,ue);if(Fi===null){Ce===null&&(Ce=Tt);break}o&&Ce&&Fi.alternate===null&&s(q,Ce),B=j(Fi,B,_e),Ee===null?ke=Fi:Ee.sibling=Fi,Ee=Fi,Ce=Tt}if(Ue.done)return h(q,Ce),it&&la(q,_e),ke;if(Ce===null){for(;!Ue.done;_e++,Ue=V.next())Ue=oe(q,Ue.value,ue),Ue!==null&&(B=j(Ue,B,_e),Ee===null?ke=Ue:Ee.sibling=Ue,Ee=Ue);return it&&la(q,_e),ke}for(Ce=v(q,Ce);!Ue.done;_e++,Ue=V.next())Ue=me(Ce,q,_e,Ue.value,ue),Ue!==null&&(o&&Ue.alternate!==null&&Ce.delete(Ue.key===null?_e:Ue.key),B=j(Ue,B,_e),Ee===null?ke=Ue:Ee.sibling=Ue,Ee=Ue);return o&&Ce.forEach(function(_M){return s(q,_M)}),it&&la(q,_e),ke}function vt(q,B,V,ue){if(typeof V=="object"&&V!==null&&V.type===L&&V.key===null&&(V=V.props.children),typeof V=="object"&&V!==null){switch(V.$$typeof){case I:e:{for(var ke=V.key,Ee=B;Ee!==null;){if(Ee.key===ke){if(ke=V.type,ke===L){if(Ee.tag===7){h(q,Ee.sibling),B=b(Ee,V.props.children),B.return=q,q=B;break e}}else if(Ee.elementType===ke||typeof ke=="object"&&ke!==null&&ke.$$typeof===he&&ab(ke)===Ee.type){h(q,Ee.sibling),B=b(Ee,V.props),B.ref=wl(q,Ee,V),B.return=q,q=B;break e}h(q,Ee);break}else s(q,Ee);Ee=Ee.sibling}V.type===L?(B=ma(V.props.children,q.mode,ue,V.key),B.return=q,q=B):(ue=Qu(V.type,V.key,V.props,null,q.mode,ue),ue.ref=wl(q,B,V),ue.return=q,q=ue)}return N(q);case E:e:{for(Ee=V.key;B!==null;){if(B.key===Ee)if(B.tag===4&&B.stateNode.containerInfo===V.containerInfo&&B.stateNode.implementation===V.implementation){h(q,B.sibling),B=b(B,V.children||[]),B.return=q,q=B;break e}else{h(q,B);break}else s(q,B);B=B.sibling}B=mp(V,q.mode,ue),B.return=q,q=B}return N(q);case he:return Ee=V._init,vt(q,B,Ee(V._payload),ue)}if(xi(V))return xe(q,B,V,ue);if(ae(V))return be(q,B,V,ue);Cu(q,V)}return typeof V=="string"&&V!==""||typeof V=="number"?(V=""+V,B!==null&&B.tag===6?(h(q,B.sibling),B=b(B,V),B.return=q,q=B):(h(q,B),B=pp(V,q.mode,ue),B.return=q,q=B),N(q)):h(q,B)}return vt}var ao=ob(!0),lb=ob(!1),Ou=Ni(null),Nu=null,oo=null,jh=null;function Ph(){jh=oo=Nu=null}function Eh(o){var s=Ou.current;tt(Ou),o._currentValue=s}function Ch(o,s,h){for(;o!==null;){var v=o.alternate;if((o.childLanes&s)!==s?(o.childLanes|=s,v!==null&&(v.childLanes|=s)):v!==null&&(v.childLanes&s)!==s&&(v.childLanes|=s),o===h)break;o=o.return}}function lo(o,s){Nu=o,jh=oo=null,o=o.dependencies,o!==null&&o.firstContext!==null&&((o.lanes&s)!==0&&(xn=!0),o.firstContext=null)}function Wn(o){var s=o._currentValue;if(jh!==o)if(o={context:o,memoizedValue:s,next:null},oo===null){if(Nu===null)throw Error(n(308));oo=o,Nu.dependencies={lanes:0,firstContext:o}}else oo=oo.next=o;return s}var sa=null;function Oh(o){sa===null?sa=[o]:sa.push(o)}function sb(o,s,h,v){var b=s.interleaved;return b===null?(h.next=h,Oh(s)):(h.next=b.next,b.next=h),s.interleaved=h,Gr(o,v)}function Gr(o,s){o.lanes|=s;var h=o.alternate;for(h!==null&&(h.lanes|=s),h=o,o=o.return;o!==null;)o.childLanes|=s,h=o.alternate,h!==null&&(h.childLanes|=s),h=o,o=o.return;return h.tag===3?h.stateNode:null}var Ii=!1;function Nh(o){o.updateQueue={baseState:o.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function ub(o,s){o=o.updateQueue,s.updateQueue===o&&(s.updateQueue={baseState:o.baseState,firstBaseUpdate:o.firstBaseUpdate,lastBaseUpdate:o.lastBaseUpdate,shared:o.shared,effects:o.effects})}function Yr(o,s){return{eventTime:o,lane:s,tag:0,payload:null,callback:null,next:null}}function Ti(o,s,h){var v=o.updateQueue;if(v===null)return null;if(v=v.shared,(Be&2)!==0){var b=v.pending;return b===null?s.next=s:(s.next=b.next,b.next=s),v.pending=s,Gr(o,h)}return b=v.interleaved,b===null?(s.next=s,Oh(v)):(s.next=b.next,b.next=s),v.interleaved=s,Gr(o,h)}function Au(o,s,h){if(s=s.updateQueue,s!==null&&(s=s.shared,(h&4194240)!==0)){var v=s.lanes;v&=o.pendingLanes,h|=v,s.lanes=h,Wd(o,h)}}function cb(o,s){var h=o.updateQueue,v=o.alternate;if(v!==null&&(v=v.updateQueue,h===v)){var b=null,j=null;if(h=h.firstBaseUpdate,h!==null){do{var N={eventTime:h.eventTime,lane:h.lane,tag:h.tag,payload:h.payload,callback:h.callback,next:null};j===null?b=j=N:j=j.next=N,h=h.next}while(h!==null);j===null?b=j=s:j=j.next=s}else b=j=s;h={baseState:v.baseState,firstBaseUpdate:b,lastBaseUpdate:j,shared:v.shared,effects:v.effects},o.updateQueue=h;return}o=h.lastBaseUpdate,o===null?h.firstBaseUpdate=s:o.next=s,h.lastBaseUpdate=s}function _u(o,s,h,v){var b=o.updateQueue;Ii=!1;var j=b.firstBaseUpdate,N=b.lastBaseUpdate,D=b.shared.pending;if(D!==null){b.shared.pending=null;var z=D,K=z.next;z.next=null,N===null?j=K:N.next=K,N=z;var re=o.alternate;re!==null&&(re=re.updateQueue,D=re.lastBaseUpdate,D!==N&&(D===null?re.firstBaseUpdate=K:D.next=K,re.lastBaseUpdate=z))}if(j!==null){var oe=b.baseState;N=0,re=K=z=null,D=j;do{var ne=D.lane,me=D.eventTime;if((v&ne)===ne){re!==null&&(re=re.next={eventTime:me,lane:0,tag:D.tag,payload:D.payload,callback:D.callback,next:null});e:{var xe=o,be=D;switch(ne=s,me=h,be.tag){case 1:if(xe=be.payload,typeof xe=="function"){oe=xe.call(me,oe,ne);break e}oe=xe;break e;case 3:xe.flags=xe.flags&-65537|128;case 0:if(xe=be.payload,ne=typeof xe=="function"?xe.call(me,oe,ne):xe,ne==null)break e;oe=T({},oe,ne);break e;case 2:Ii=!0}}D.callback!==null&&D.lane!==0&&(o.flags|=64,ne=b.effects,ne===null?b.effects=[D]:ne.push(D))}else me={eventTime:me,lane:ne,tag:D.tag,payload:D.payload,callback:D.callback,next:null},re===null?(K=re=me,z=oe):re=re.next=me,N|=ne;if(D=D.next,D===null){if(D=b.shared.pending,D===null)break;ne=D,D=ne.next,ne.next=null,b.lastBaseUpdate=ne,b.shared.pending=null}}while(!0);if(re===null&&(z=oe),b.baseState=z,b.firstBaseUpdate=K,b.lastBaseUpdate=re,s=b.shared.interleaved,s!==null){b=s;do N|=b.lane,b=b.next;while(b!==s)}else j===null&&(b.shared.lanes=0);fa|=N,o.lanes=N,o.memoizedState=oe}}function fb(o,s,h){if(o=s.effects,s.effects=null,o!==null)for(s=0;sh?h:4,o(!0);var v=Mh.transition;Mh.transition={};try{o(!1),s()}finally{Ve=h,Mh.transition=v}}function Ab(){return qn().memoizedState}function tM(o,s,h){var v=Ri(o);if(h={lane:v,action:h,hasEagerState:!1,eagerState:null,next:null},_b(o))Ib(s,h);else if(h=sb(o,s,h,v),h!==null){var b=sn();cr(h,o,v,b),Tb(h,s,v)}}function nM(o,s,h){var v=Ri(o),b={lane:v,action:h,hasEagerState:!1,eagerState:null,next:null};if(_b(o))Ib(s,b);else{var j=o.alternate;if(o.lanes===0&&(j===null||j.lanes===0)&&(j=s.lastRenderedReducer,j!==null))try{var N=s.lastRenderedState,D=j(N,h);if(b.hasEagerState=!0,b.eagerState=D,ar(D,N)){var z=s.interleaved;z===null?(b.next=b,Oh(s)):(b.next=z.next,z.next=b),s.interleaved=b;return}}catch{}finally{}h=sb(o,s,b,v),h!==null&&(b=sn(),cr(h,o,v,b),Tb(h,s,v))}}function _b(o){var s=o.alternate;return o===st||s!==null&&s===st}function Ib(o,s){Pl=Mu=!0;var h=o.pending;h===null?s.next=s:(s.next=h.next,h.next=s),o.pending=s}function Tb(o,s,h){if((h&4194240)!==0){var v=s.lanes;v&=o.pendingLanes,h|=v,s.lanes=h,Wd(o,h)}}var Ru={readContext:Wn,useCallback:Zt,useContext:Zt,useEffect:Zt,useImperativeHandle:Zt,useInsertionEffect:Zt,useLayoutEffect:Zt,useMemo:Zt,useReducer:Zt,useRef:Zt,useState:Zt,useDebugValue:Zt,useDeferredValue:Zt,useTransition:Zt,useMutableSource:Zt,useSyncExternalStore:Zt,useId:Zt,unstable_isNewReconciler:!1},rM={readContext:Wn,useCallback:function(o,s){return Pr().memoizedState=[o,s===void 0?null:s],o},useContext:Wn,useEffect:kb,useImperativeHandle:function(o,s,h){return h=h!=null?h.concat([o]):null,Du(4194308,4,Pb.bind(null,s,o),h)},useLayoutEffect:function(o,s){return Du(4194308,4,o,s)},useInsertionEffect:function(o,s){return Du(4,2,o,s)},useMemo:function(o,s){var h=Pr();return s=s===void 0?null:s,o=o(),h.memoizedState=[o,s],o},useReducer:function(o,s,h){var v=Pr();return s=h!==void 0?h(s):s,v.memoizedState=v.baseState=s,o={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:o,lastRenderedState:s},v.queue=o,o=o.dispatch=tM.bind(null,st,o),[v.memoizedState,o]},useRef:function(o){var s=Pr();return o={current:o},s.memoizedState=o},useState:bb,useDebugValue:Bh,useDeferredValue:function(o){return Pr().memoizedState=o},useTransition:function(){var o=bb(!1),s=o[0];return o=eM.bind(null,o[1]),Pr().memoizedState=o,[s,o]},useMutableSource:function(){},useSyncExternalStore:function(o,s,h){var v=st,b=Pr();if(it){if(h===void 0)throw Error(n(407));h=h()}else{if(h=s(),It===null)throw Error(n(349));(ca&30)!==0||mb(v,s,h)}b.memoizedState=h;var j={value:h,getSnapshot:s};return b.queue=j,kb(vb.bind(null,v,j,o),[o]),v.flags|=2048,Ol(9,gb.bind(null,v,j,h,s),void 0,null),h},useId:function(){var o=Pr(),s=It.identifierPrefix;if(it){var h=Kr,v=Vr;h=(v&~(1<<32-ir(v)-1)).toString(32)+h,s=":"+s+"R"+h,h=El++,0M||b[N]!==j[M]){var z=` +`+b[N].replace(" at new "," at ");return o.displayName&&z.includes("")&&(z=z.replace("",o.displayName)),z}while(1<=N&&0<=M);break}}}finally{_=!1,Error.prepareStackTrace=p}return(o=o?o.displayName||o.name:"")?U(o):""}function fe(o){switch(o.tag){case 5:return U(o.type);case 16:return U("Lazy");case 13:return U("Suspense");case 19:return U("SuspenseList");case 0:case 2:case 15:return o=te(o.type,!1),o;case 11:return o=te(o.type.render,!1),o;case 1:return o=te(o.type,!0),o;default:return""}}function ce(o){if(o==null)return null;if(typeof o=="function")return o.displayName||o.name||null;if(typeof o=="string")return o;switch(o){case L:return"Fragment";case E:return"Portal";case H:return"Profiler";case F:return"StrictMode";case Z:return"Suspense";case Y:return"SuspenseList"}if(typeof o=="object")switch(o.$$typeof){case W:return(o.displayName||"Context")+".Consumer";case R:return(o._context.displayName||"Context")+".Provider";case D:var s=o.render;return o=o.displayName,o||(o=s.displayName||s.name||"",o=o!==""?"ForwardRef("+o+")":"ForwardRef"),o;case Q:return s=o.displayName||null,s!==null?s:ce(o.type)||"Memo";case pe:s=o._payload,o=o._init;try{return ce(o(s))}catch{}}return null}function Se(o){var s=o.type;switch(o.tag){case 24:return"Cache";case 9:return(s.displayName||"Context")+".Consumer";case 10:return(s._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return o=s.render,o=o.displayName||o.name||"",s.displayName||(o!==""?"ForwardRef("+o+")":"ForwardRef");case 7:return"Fragment";case 5:return s;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return ce(s);case 8:return s===F?"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 s=="function")return s.displayName||s.name||null;if(typeof s=="string")return s}return null}function je(o){switch(typeof o){case"boolean":case"number":case"string":case"undefined":return o;case"object":return o;default:return""}}function X(o){var s=o.type;return(o=o.nodeName)&&o.toLowerCase()==="input"&&(s==="checkbox"||s==="radio")}function we(o){var s=X(o)?"checked":"value",p=Object.getOwnPropertyDescriptor(o.constructor.prototype,s),v=""+o[s];if(!o.hasOwnProperty(s)&&typeof p<"u"&&typeof p.get=="function"&&typeof p.set=="function"){var b=p.get,j=p.set;return Object.defineProperty(o,s,{configurable:!0,get:function(){return b.call(this)},set:function(N){v=""+N,j.call(this,N)}}),Object.defineProperty(o,s,{enumerable:p.enumerable}),{getValue:function(){return v},setValue:function(N){v=""+N},stopTracking:function(){o._valueTracker=null,delete o[s]}}}}function Ae(o){o._valueTracker||(o._valueTracker=we(o))}function ie(o){if(!o)return!1;var s=o._valueTracker;if(!s)return!0;var p=s.getValue(),v="";return o&&(v=X(o)?o.checked?"true":"false":o.value),o=v,o!==p?(s.setValue(o),!0):!1}function rt(o){if(o=o||(typeof document<"u"?document:void 0),typeof o>"u")return null;try{return o.activeElement||o.body}catch{return o.body}}function ze(o,s){var p=s.checked;return T({},s,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:p??o._wrapperState.initialChecked})}function ct(o,s){var p=s.defaultValue==null?"":s.defaultValue,v=s.checked!=null?s.checked:s.defaultChecked;p=je(s.value!=null?s.value:p),o._wrapperState={initialChecked:v,initialValue:p,controlled:s.type==="checkbox"||s.type==="radio"?s.checked!=null:s.value!=null}}function ft(o,s){s=s.checked,s!=null&&O(o,"checked",s,!1)}function Ut(o,s){ft(o,s);var p=je(s.value),v=s.type;if(p!=null)v==="number"?(p===0&&o.value===""||o.value!=p)&&(o.value=""+p):o.value!==""+p&&(o.value=""+p);else if(v==="submit"||v==="reset"){o.removeAttribute("value");return}s.hasOwnProperty("value")?Br(o,s.type,p):s.hasOwnProperty("defaultValue")&&Br(o,s.type,je(s.defaultValue)),s.checked==null&&s.defaultChecked!=null&&(o.defaultChecked=!!s.defaultChecked)}function Pt(o,s,p){if(s.hasOwnProperty("value")||s.hasOwnProperty("defaultValue")){var v=s.type;if(!(v!=="submit"&&v!=="reset"||s.value!==void 0&&s.value!==null))return;s=""+o._wrapperState.initialValue,p||s===o.value||(o.value=s),o.defaultValue=s}p=o.name,p!==""&&(o.name=""),o.defaultChecked=!!o._wrapperState.initialChecked,p!==""&&(o.name=p)}function Br(o,s,p){(s!=="number"||rt(o.ownerDocument)!==o)&&(p==null?o.defaultValue=""+o._wrapperState.initialValue:o.defaultValue!==""+p&&(o.defaultValue=""+p))}var xi=Array.isArray;function bi(o,s,p,v){if(o=o.options,s){s={};for(var b=0;b"+s.valueOf().toString()+"",s=Ne.firstChild;o.firstChild;)o.removeChild(o.firstChild);for(;s.firstChild;)o.appendChild(s.firstChild)}});function Fe(o,s){if(s){var p=o.firstChild;if(p&&p===o.lastChild&&p.nodeType===3){p.nodeValue=s;return}}o.textContent=s}var Wt={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},Ur=["Webkit","ms","Moz","O"];Object.keys(Wt).forEach(function(o){Ur.forEach(function(s){s=s+o.charAt(0).toUpperCase()+o.substring(1),Wt[s]=Wt[o]})});function Fn(o,s,p){return s==null||typeof s=="boolean"||s===""?"":p||typeof s!="number"||s===0||Wt.hasOwnProperty(o)&&Wt[o]?(""+s).trim():s+"px"}function wi(o,s){o=o.style;for(var p in s)if(s.hasOwnProperty(p)){var v=p.indexOf("--")===0,b=Fn(p,s[p],v);p==="float"&&(p="cssFloat"),v?o.setProperty(p,b):o[p]=b}}var na=T({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 qt(o,s){if(s){if(na[o]&&(s.children!=null||s.dangerouslySetInnerHTML!=null))throw Error(n(137,o));if(s.dangerouslySetInnerHTML!=null){if(s.children!=null)throw Error(n(60));if(typeof s.dangerouslySetInnerHTML!="object"||!("__html"in s.dangerouslySetInnerHTML))throw Error(n(61))}if(s.style!=null&&typeof s.style!="object")throw Error(n(62))}}function br(o,s){if(o.indexOf("-")===-1)return typeof s.is=="string";switch(o){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 Nn=null;function Rd(o){return o=o.target||o.srcElement||window,o.correspondingUseElement&&(o=o.correspondingUseElement),o.nodeType===3?o.parentNode:o}var zd=null,qa=null,Ha=null;function Kx(o){if(o=bl(o)){if(typeof zd!="function")throw Error(n(280));var s=o.stateNode;s&&(s=bu(s),zd(o.stateNode,o.type,s))}}function Gx(o){qa?Ha?Ha.push(o):Ha=[o]:qa=o}function Yx(){if(qa){var o=qa,s=Ha;if(Ha=qa=null,Kx(o),s)for(o=0;o>>=0,o===0?32:31-(YT(o)/XT|0)|0}var nu=64,ru=4194304;function nl(o){switch(o&-o){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 o&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return o&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return o}}function iu(o,s){var p=o.pendingLanes;if(p===0)return 0;var v=0,b=o.suspendedLanes,j=o.pingedLanes,N=p&268435455;if(N!==0){var M=N&~b;M!==0?v=nl(M):(j&=N,j!==0&&(v=nl(j)))}else N=p&~b,N!==0?v=nl(N):j!==0&&(v=nl(j));if(v===0)return 0;if(s!==0&&s!==v&&(s&b)===0&&(b=v&-v,j=s&-s,b>=j||b===16&&(j&4194240)!==0))return s;if((v&4)!==0&&(v|=p&16),s=o.entangledLanes,s!==0)for(o=o.entanglements,s&=v;0p;p++)s.push(o);return s}function rl(o,s,p){o.pendingLanes|=s,s!==536870912&&(o.suspendedLanes=0,o.pingedLanes=0),o=o.eventTimes,s=31-rr(s),o[s]=p}function e2(o,s){var p=o.pendingLanes&~s;o.pendingLanes=s,o.suspendedLanes=0,o.pingedLanes=0,o.expiredLanes&=s,o.mutableReadLanes&=s,o.entangledLanes&=s,s=o.entanglements;var v=o.eventTimes;for(o=o.expirationTimes;0=fl),S0=" ",j0=!1;function P0(o,s){switch(o){case"keyup":return O2.indexOf(s.keyCode)!==-1;case"keydown":return s.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function E0(o){return o=o.detail,typeof o=="object"&&"data"in o?o.data:null}var Ga=!1;function A2(o,s){switch(o){case"compositionend":return E0(s);case"keypress":return s.which!==32?null:(j0=!0,S0);case"textInput":return o=s.data,o===S0&&j0?null:o;default:return null}}function _2(o,s){if(Ga)return o==="compositionend"||!np&&P0(o,s)?(o=v0(),uu=Xd=Ei=null,Ga=!1,o):null;switch(o){case"paste":return null;case"keypress":if(!(s.ctrlKey||s.altKey||s.metaKey)||s.ctrlKey&&s.altKey){if(s.char&&1=s)return{node:p,offset:s-o};o=v}e:{for(;p;){if(p.nextSibling){p=p.nextSibling;break e}p=p.parentNode}p=void 0}p=T0(p)}}function M0(o,s){return o&&s?o===s?!0:o&&o.nodeType===3?!1:s&&s.nodeType===3?M0(o,s.parentNode):"contains"in o?o.contains(s):o.compareDocumentPosition?!!(o.compareDocumentPosition(s)&16):!1:!1}function L0(){for(var o=window,s=rt();s instanceof o.HTMLIFrameElement;){try{var p=typeof s.contentWindow.location.href=="string"}catch{p=!1}if(p)o=s.contentWindow;else break;s=rt(o.document)}return s}function ap(o){var s=o&&o.nodeName&&o.nodeName.toLowerCase();return s&&(s==="input"&&(o.type==="text"||o.type==="search"||o.type==="tel"||o.type==="url"||o.type==="password")||s==="textarea"||o.contentEditable==="true")}function F2(o){var s=L0(),p=o.focusedElem,v=o.selectionRange;if(s!==p&&p&&p.ownerDocument&&M0(p.ownerDocument.documentElement,p)){if(v!==null&&ap(p)){if(s=v.start,o=v.end,o===void 0&&(o=s),"selectionStart"in p)p.selectionStart=s,p.selectionEnd=Math.min(o,p.value.length);else if(o=(s=p.ownerDocument||document)&&s.defaultView||window,o.getSelection){o=o.getSelection();var b=p.textContent.length,j=Math.min(v.start,b);v=v.end===void 0?j:Math.min(v.end,b),!o.extend&&j>v&&(b=v,v=j,j=b),b=D0(p,j);var N=D0(p,v);b&&N&&(o.rangeCount!==1||o.anchorNode!==b.node||o.anchorOffset!==b.offset||o.focusNode!==N.node||o.focusOffset!==N.offset)&&(s=s.createRange(),s.setStart(b.node,b.offset),o.removeAllRanges(),j>v?(o.addRange(s),o.extend(N.node,N.offset)):(s.setEnd(N.node,N.offset),o.addRange(s)))}}for(s=[],o=p;o=o.parentNode;)o.nodeType===1&&s.push({element:o,left:o.scrollLeft,top:o.scrollTop});for(typeof p.focus=="function"&&p.focus(),p=0;p=document.documentMode,Ya=null,op=null,ml=null,lp=!1;function R0(o,s,p){var v=p.window===p?p.document:p.nodeType===9?p:p.ownerDocument;lp||Ya==null||Ya!==rt(v)||(v=Ya,"selectionStart"in v&&ap(v)?v={start:v.selectionStart,end:v.selectionEnd}:(v=(v.ownerDocument&&v.ownerDocument.defaultView||window).getSelection(),v={anchorNode:v.anchorNode,anchorOffset:v.anchorOffset,focusNode:v.focusNode,focusOffset:v.focusOffset}),ml&&hl(ml,v)||(ml=v,v=vu(op,"onSelect"),0eo||(o.current=xp[eo],xp[eo]=null,eo--)}function Qe(o,s){eo++,xp[eo]=o.current,o.current=s}var Ai={},Qt=Ni(Ai),vn=Ni(!1),aa=Ai;function to(o,s){var p=o.type.contextTypes;if(!p)return Ai;var v=o.stateNode;if(v&&v.__reactInternalMemoizedUnmaskedChildContext===s)return v.__reactInternalMemoizedMaskedChildContext;var b={},j;for(j in p)b[j]=s[j];return v&&(o=o.stateNode,o.__reactInternalMemoizedUnmaskedChildContext=s,o.__reactInternalMemoizedMaskedChildContext=b),b}function yn(o){return o=o.childContextTypes,o!=null}function wu(){tt(vn),tt(Qt)}function Z0(o,s,p){if(Qt.current!==Ai)throw Error(n(168));Qe(Qt,s),Qe(vn,p)}function J0(o,s,p){var v=o.stateNode;if(s=s.childContextTypes,typeof v.getChildContext!="function")return p;v=v.getChildContext();for(var b in v)if(!(b in s))throw Error(n(108,Se(o)||"Unknown",b));return T({},p,v)}function ku(o){return o=(o=o.stateNode)&&o.__reactInternalMemoizedMergedChildContext||Ai,aa=Qt.current,Qe(Qt,o),Qe(vn,vn.current),!0}function eb(o,s,p){var v=o.stateNode;if(!v)throw Error(n(169));p?(o=J0(o,s,aa),v.__reactInternalMemoizedMergedChildContext=o,tt(vn),tt(Qt),Qe(Qt,o)):tt(vn),Qe(vn,p)}var qr=null,Su=!1,bp=!1;function tb(o){qr===null?qr=[o]:qr.push(o)}function Z2(o){Su=!0,tb(o)}function _i(){if(!bp&&qr!==null){bp=!0;var o=0,s=Ve;try{var p=qr;for(Ve=1;o>=N,b-=N,Hr=1<<32-rr(s)+b|p<_e?(Tt=Ce,Ce=null):Tt=Ce.sibling;var Ue=ne(q,Ce,V[_e],ue);if(Ue===null){Ce===null&&(Ce=Tt);break}o&&Ce&&Ue.alternate===null&&s(q,Ce),B=j(Ue,B,_e),Ee===null?ke=Ue:Ee.sibling=Ue,Ee=Ue,Ce=Tt}if(_e===V.length)return p(q,Ce),it&&la(q,_e),ke;if(Ce===null){for(;_e_e?(Tt=Ce,Ce=null):Tt=Ce.sibling;var Fi=ne(q,Ce,Ue.value,ue);if(Fi===null){Ce===null&&(Ce=Tt);break}o&&Ce&&Fi.alternate===null&&s(q,Ce),B=j(Fi,B,_e),Ee===null?ke=Fi:Ee.sibling=Fi,Ee=Fi,Ce=Tt}if(Ue.done)return p(q,Ce),it&&la(q,_e),ke;if(Ce===null){for(;!Ue.done;_e++,Ue=V.next())Ue=oe(q,Ue.value,ue),Ue!==null&&(B=j(Ue,B,_e),Ee===null?ke=Ue:Ee.sibling=Ue,Ee=Ue);return it&&la(q,_e),ke}for(Ce=v(q,Ce);!Ue.done;_e++,Ue=V.next())Ue=me(Ce,q,_e,Ue.value,ue),Ue!==null&&(o&&Ue.alternate!==null&&Ce.delete(Ue.key===null?_e:Ue.key),B=j(Ue,B,_e),Ee===null?ke=Ue:Ee.sibling=Ue,Ee=Ue);return o&&Ce.forEach(function(ID){return s(q,ID)}),it&&la(q,_e),ke}function vt(q,B,V,ue){if(typeof V=="object"&&V!==null&&V.type===L&&V.key===null&&(V=V.props.children),typeof V=="object"&&V!==null){switch(V.$$typeof){case I:e:{for(var ke=V.key,Ee=B;Ee!==null;){if(Ee.key===ke){if(ke=V.type,ke===L){if(Ee.tag===7){p(q,Ee.sibling),B=b(Ee,V.props.children),B.return=q,q=B;break e}}else if(Ee.elementType===ke||typeof ke=="object"&&ke!==null&&ke.$$typeof===pe&&lb(ke)===Ee.type){p(q,Ee.sibling),B=b(Ee,V.props),B.ref=wl(q,Ee,V),B.return=q,q=B;break e}p(q,Ee);break}else s(q,Ee);Ee=Ee.sibling}V.type===L?(B=ma(V.props.children,q.mode,ue,V.key),B.return=q,q=B):(ue=Qu(V.type,V.key,V.props,null,q.mode,ue),ue.ref=wl(q,B,V),ue.return=q,q=ue)}return N(q);case E:e:{for(Ee=V.key;B!==null;){if(B.key===Ee)if(B.tag===4&&B.stateNode.containerInfo===V.containerInfo&&B.stateNode.implementation===V.implementation){p(q,B.sibling),B=b(B,V.children||[]),B.return=q,q=B;break e}else{p(q,B);break}else s(q,B);B=B.sibling}B=vh(V,q.mode,ue),B.return=q,q=B}return N(q);case pe:return Ee=V._init,vt(q,B,Ee(V._payload),ue)}if(xi(V))return xe(q,B,V,ue);if(ae(V))return be(q,B,V,ue);Cu(q,V)}return typeof V=="string"&&V!==""||typeof V=="number"?(V=""+V,B!==null&&B.tag===6?(p(q,B.sibling),B=b(B,V),B.return=q,q=B):(p(q,B),B=gh(V,q.mode,ue),B.return=q,q=B),N(q)):p(q,B)}return vt}var ao=sb(!0),ub=sb(!1),Ou=Ni(null),Nu=null,oo=null,Ep=null;function Cp(){Ep=oo=Nu=null}function Op(o){var s=Ou.current;tt(Ou),o._currentValue=s}function Np(o,s,p){for(;o!==null;){var v=o.alternate;if((o.childLanes&s)!==s?(o.childLanes|=s,v!==null&&(v.childLanes|=s)):v!==null&&(v.childLanes&s)!==s&&(v.childLanes|=s),o===p)break;o=o.return}}function lo(o,s){Nu=o,Ep=oo=null,o=o.dependencies,o!==null&&o.firstContext!==null&&((o.lanes&s)!==0&&(xn=!0),o.firstContext=null)}function Wn(o){var s=o._currentValue;if(Ep!==o)if(o={context:o,memoizedValue:s,next:null},oo===null){if(Nu===null)throw Error(n(308));oo=o,Nu.dependencies={lanes:0,firstContext:o}}else oo=oo.next=o;return s}var sa=null;function Ap(o){sa===null?sa=[o]:sa.push(o)}function cb(o,s,p,v){var b=s.interleaved;return b===null?(p.next=p,Ap(s)):(p.next=b.next,b.next=p),s.interleaved=p,Kr(o,v)}function Kr(o,s){o.lanes|=s;var p=o.alternate;for(p!==null&&(p.lanes|=s),p=o,o=o.return;o!==null;)o.childLanes|=s,p=o.alternate,p!==null&&(p.childLanes|=s),p=o,o=o.return;return p.tag===3?p.stateNode:null}var Ii=!1;function _p(o){o.updateQueue={baseState:o.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function fb(o,s){o=o.updateQueue,s.updateQueue===o&&(s.updateQueue={baseState:o.baseState,firstBaseUpdate:o.firstBaseUpdate,lastBaseUpdate:o.lastBaseUpdate,shared:o.shared,effects:o.effects})}function Gr(o,s){return{eventTime:o,lane:s,tag:0,payload:null,callback:null,next:null}}function Ti(o,s,p){var v=o.updateQueue;if(v===null)return null;if(v=v.shared,(Be&2)!==0){var b=v.pending;return b===null?s.next=s:(s.next=b.next,b.next=s),v.pending=s,Kr(o,p)}return b=v.interleaved,b===null?(s.next=s,Ap(v)):(s.next=b.next,b.next=s),v.interleaved=s,Kr(o,p)}function Au(o,s,p){if(s=s.updateQueue,s!==null&&(s=s.shared,(p&4194240)!==0)){var v=s.lanes;v&=o.pendingLanes,p|=v,s.lanes=p,Hd(o,p)}}function db(o,s){var p=o.updateQueue,v=o.alternate;if(v!==null&&(v=v.updateQueue,p===v)){var b=null,j=null;if(p=p.firstBaseUpdate,p!==null){do{var N={eventTime:p.eventTime,lane:p.lane,tag:p.tag,payload:p.payload,callback:p.callback,next:null};j===null?b=j=N:j=j.next=N,p=p.next}while(p!==null);j===null?b=j=s:j=j.next=s}else b=j=s;p={baseState:v.baseState,firstBaseUpdate:b,lastBaseUpdate:j,shared:v.shared,effects:v.effects},o.updateQueue=p;return}o=p.lastBaseUpdate,o===null?p.firstBaseUpdate=s:o.next=s,p.lastBaseUpdate=s}function _u(o,s,p,v){var b=o.updateQueue;Ii=!1;var j=b.firstBaseUpdate,N=b.lastBaseUpdate,M=b.shared.pending;if(M!==null){b.shared.pending=null;var z=M,K=z.next;z.next=null,N===null?j=K:N.next=K,N=z;var re=o.alternate;re!==null&&(re=re.updateQueue,M=re.lastBaseUpdate,M!==N&&(M===null?re.firstBaseUpdate=K:M.next=K,re.lastBaseUpdate=z))}if(j!==null){var oe=b.baseState;N=0,re=K=z=null,M=j;do{var ne=M.lane,me=M.eventTime;if((v&ne)===ne){re!==null&&(re=re.next={eventTime:me,lane:0,tag:M.tag,payload:M.payload,callback:M.callback,next:null});e:{var xe=o,be=M;switch(ne=s,me=p,be.tag){case 1:if(xe=be.payload,typeof xe=="function"){oe=xe.call(me,oe,ne);break e}oe=xe;break e;case 3:xe.flags=xe.flags&-65537|128;case 0:if(xe=be.payload,ne=typeof xe=="function"?xe.call(me,oe,ne):xe,ne==null)break e;oe=T({},oe,ne);break e;case 2:Ii=!0}}M.callback!==null&&M.lane!==0&&(o.flags|=64,ne=b.effects,ne===null?b.effects=[M]:ne.push(M))}else me={eventTime:me,lane:ne,tag:M.tag,payload:M.payload,callback:M.callback,next:null},re===null?(K=re=me,z=oe):re=re.next=me,N|=ne;if(M=M.next,M===null){if(M=b.shared.pending,M===null)break;ne=M,M=ne.next,ne.next=null,b.lastBaseUpdate=ne,b.shared.pending=null}}while(!0);if(re===null&&(z=oe),b.baseState=z,b.firstBaseUpdate=K,b.lastBaseUpdate=re,s=b.shared.interleaved,s!==null){b=s;do N|=b.lane,b=b.next;while(b!==s)}else j===null&&(b.shared.lanes=0);fa|=N,o.lanes=N,o.memoizedState=oe}}function pb(o,s,p){if(o=s.effects,s.effects=null,o!==null)for(s=0;sp?p:4,o(!0);var v=Lp.transition;Lp.transition={};try{o(!1),s()}finally{Ve=p,Lp.transition=v}}function Ib(){return qn().memoizedState}function nD(o,s,p){var v=Ri(o);if(p={lane:v,action:p,hasEagerState:!1,eagerState:null,next:null},Tb(o))Db(s,p);else if(p=cb(o,s,p,v),p!==null){var b=sn();ur(p,o,v,b),Mb(p,s,v)}}function rD(o,s,p){var v=Ri(o),b={lane:v,action:p,hasEagerState:!1,eagerState:null,next:null};if(Tb(o))Db(s,b);else{var j=o.alternate;if(o.lanes===0&&(j===null||j.lanes===0)&&(j=s.lastRenderedReducer,j!==null))try{var N=s.lastRenderedState,M=j(N,p);if(b.hasEagerState=!0,b.eagerState=M,ir(M,N)){var z=s.interleaved;z===null?(b.next=b,Ap(s)):(b.next=z.next,z.next=b),s.interleaved=b;return}}catch{}finally{}p=cb(o,s,b,v),p!==null&&(b=sn(),ur(p,o,v,b),Mb(p,s,v))}}function Tb(o){var s=o.alternate;return o===st||s!==null&&s===st}function Db(o,s){Pl=Du=!0;var p=o.pending;p===null?s.next=s:(s.next=p.next,p.next=s),o.pending=s}function Mb(o,s,p){if((p&4194240)!==0){var v=s.lanes;v&=o.pendingLanes,p|=v,s.lanes=p,Hd(o,p)}}var Ru={readContext:Wn,useCallback:Zt,useContext:Zt,useEffect:Zt,useImperativeHandle:Zt,useInsertionEffect:Zt,useLayoutEffect:Zt,useMemo:Zt,useReducer:Zt,useRef:Zt,useState:Zt,useDebugValue:Zt,useDeferredValue:Zt,useTransition:Zt,useMutableSource:Zt,useSyncExternalStore:Zt,useId:Zt,unstable_isNewReconciler:!1},iD={readContext:Wn,useCallback:function(o,s){return jr().memoizedState=[o,s===void 0?null:s],o},useContext:Wn,useEffect:jb,useImperativeHandle:function(o,s,p){return p=p!=null?p.concat([o]):null,Mu(4194308,4,Cb.bind(null,s,o),p)},useLayoutEffect:function(o,s){return Mu(4194308,4,o,s)},useInsertionEffect:function(o,s){return Mu(4,2,o,s)},useMemo:function(o,s){var p=jr();return s=s===void 0?null:s,o=o(),p.memoizedState=[o,s],o},useReducer:function(o,s,p){var v=jr();return s=p!==void 0?p(s):s,v.memoizedState=v.baseState=s,o={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:o,lastRenderedState:s},v.queue=o,o=o.dispatch=nD.bind(null,st,o),[v.memoizedState,o]},useRef:function(o){var s=jr();return o={current:o},s.memoizedState=o},useState:kb,useDebugValue:Wp,useDeferredValue:function(o){return jr().memoizedState=o},useTransition:function(){var o=kb(!1),s=o[0];return o=tD.bind(null,o[1]),jr().memoizedState=o,[s,o]},useMutableSource:function(){},useSyncExternalStore:function(o,s,p){var v=st,b=jr();if(it){if(p===void 0)throw Error(n(407));p=p()}else{if(p=s(),It===null)throw Error(n(349));(ca&30)!==0||vb(v,s,p)}b.memoizedState=p;var j={value:p,getSnapshot:s};return b.queue=j,jb(xb.bind(null,v,j,o),[o]),v.flags|=2048,Ol(9,yb.bind(null,v,j,p,s),void 0,null),p},useId:function(){var o=jr(),s=It.identifierPrefix;if(it){var p=Vr,v=Hr;p=(v&~(1<<32-rr(v)-1)).toString(32)+p,s=":"+s+"R"+p,p=El++,0<\/script>",o=o.removeChild(o.firstChild)):typeof v.is=="string"?o=N.createElement(h,{is:v.is}):(o=N.createElement(h),h==="select"&&(N=o,v.multiple?N.multiple=!0:v.size&&(N.size=v.size))):o=N.createElementNS(o,h),o[Sr]=s,o[xl]=v,Jb(o,s,!1,!1),s.stateNode=o;e:{switch(N=wr(h,v),h){case"dialog":et("cancel",o),et("close",o),b=v;break;case"iframe":case"object":case"embed":et("load",o),b=v;break;case"video":case"audio":for(b=0;bho&&(s.flags|=128,v=!0,Nl(j,!1),s.lanes=4194304)}else{if(!v)if(o=Iu(N),o!==null){if(s.flags|=128,v=!0,h=o.updateQueue,h!==null&&(s.updateQueue=h,s.flags|=4),Nl(j,!0),j.tail===null&&j.tailMode==="hidden"&&!N.alternate&&!it)return Jt(s),null}else 2*gt()-j.renderingStartTime>ho&&h!==1073741824&&(s.flags|=128,v=!0,Nl(j,!1),s.lanes=4194304);j.isBackwards?(N.sibling=s.child,s.child=N):(h=j.last,h!==null?h.sibling=N:s.child=N,j.last=N)}return j.tail!==null?(s=j.tail,j.rendering=s,j.tail=s.sibling,j.renderingStartTime=gt(),s.sibling=null,h=lt.current,Qe(lt,v?h&1|2:h&1),s):(Jt(s),null);case 22:case 23:return fp(),v=s.memoizedState!==null,o!==null&&o.memoizedState!==null!==v&&(s.flags|=8192),v&&(s.mode&1)!==0?(Tn&1073741824)!==0&&(Jt(s),s.subtreeFlags&6&&(s.flags|=8192)):Jt(s),null;case 24:return null;case 25:return null}throw Error(n(156,s.tag))}function fM(o,s){switch(bh(s),s.tag){case 1:return yn(s.type)&&wu(),o=s.flags,o&65536?(s.flags=o&-65537|128,s):null;case 3:return so(),tt(vn),tt(Qt),Th(),o=s.flags,(o&65536)!==0&&(o&128)===0?(s.flags=o&-65537|128,s):null;case 5:return _h(s),null;case 13:if(tt(lt),o=s.memoizedState,o!==null&&o.dehydrated!==null){if(s.alternate===null)throw Error(n(340));io()}return o=s.flags,o&65536?(s.flags=o&-65537|128,s):null;case 19:return tt(lt),null;case 4:return so(),null;case 10:return Eh(s.type._context),null;case 22:case 23:return fp(),null;case 24:return null;default:return null}}var Bu=!1,en=!1,dM=typeof WeakSet=="function"?WeakSet:Set,ve=null;function co(o,s){var h=o.ref;if(h!==null)if(typeof h=="function")try{h(null)}catch(v){dt(o,s,v)}else h.current=null}function Jh(o,s,h){try{h()}catch(v){dt(o,s,v)}}var nw=!1;function hM(o,s){if(fh=lu,o=M0(),rh(o)){if("selectionStart"in o)var h={start:o.selectionStart,end:o.selectionEnd};else e:{h=(h=o.ownerDocument)&&h.defaultView||window;var v=h.getSelection&&h.getSelection();if(v&&v.rangeCount!==0){h=v.anchorNode;var b=v.anchorOffset,j=v.focusNode;v=v.focusOffset;try{h.nodeType,j.nodeType}catch{h=null;break e}var N=0,D=-1,z=-1,K=0,re=0,oe=o,ne=null;t:for(;;){for(var me;oe!==h||b!==0&&oe.nodeType!==3||(D=N+b),oe!==j||v!==0&&oe.nodeType!==3||(z=N+v),oe.nodeType===3&&(N+=oe.nodeValue.length),(me=oe.firstChild)!==null;)ne=oe,oe=me;for(;;){if(oe===o)break t;if(ne===h&&++K===b&&(D=N),ne===j&&++re===v&&(z=N),(me=oe.nextSibling)!==null)break;oe=ne,ne=oe.parentNode}oe=me}h=D===-1||z===-1?null:{start:D,end:z}}else h=null}h=h||{start:0,end:0}}else h=null;for(dh={focusedElem:o,selectionRange:h},lu=!1,ve=s;ve!==null;)if(s=ve,o=s.child,(s.subtreeFlags&1028)!==0&&o!==null)o.return=s,ve=o;else for(;ve!==null;){s=ve;try{var xe=s.alternate;if((s.flags&1024)!==0)switch(s.tag){case 0:case 11:case 15:break;case 1:if(xe!==null){var be=xe.memoizedProps,vt=xe.memoizedState,q=s.stateNode,B=q.getSnapshotBeforeUpdate(s.elementType===s.type?be:lr(s.type,be),vt);q.__reactInternalSnapshotBeforeUpdate=B}break;case 3:var V=s.stateNode.containerInfo;V.nodeType===1?V.textContent="":V.nodeType===9&&V.documentElement&&V.removeChild(V.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(n(163))}}catch(ue){dt(s,s.return,ue)}if(o=s.sibling,o!==null){o.return=s.return,ve=o;break}ve=s.return}return xe=nw,nw=!1,xe}function Al(o,s,h){var v=s.updateQueue;if(v=v!==null?v.lastEffect:null,v!==null){var b=v=v.next;do{if((b.tag&o)===o){var j=b.destroy;b.destroy=void 0,j!==void 0&&Jh(s,h,j)}b=b.next}while(b!==v)}}function Uu(o,s){if(s=s.updateQueue,s=s!==null?s.lastEffect:null,s!==null){var h=s=s.next;do{if((h.tag&o)===o){var v=h.create;h.destroy=v()}h=h.next}while(h!==s)}}function ep(o){var s=o.ref;if(s!==null){var h=o.stateNode;switch(o.tag){case 5:o=h;break;default:o=h}typeof s=="function"?s(o):s.current=o}}function rw(o){var s=o.alternate;s!==null&&(o.alternate=null,rw(s)),o.child=null,o.deletions=null,o.sibling=null,o.tag===5&&(s=o.stateNode,s!==null&&(delete s[Sr],delete s[xl],delete s[gh],delete s[Y2],delete s[X2])),o.stateNode=null,o.return=null,o.dependencies=null,o.memoizedProps=null,o.memoizedState=null,o.pendingProps=null,o.stateNode=null,o.updateQueue=null}function iw(o){return o.tag===5||o.tag===3||o.tag===4}function aw(o){e:for(;;){for(;o.sibling===null;){if(o.return===null||iw(o.return))return null;o=o.return}for(o.sibling.return=o.return,o=o.sibling;o.tag!==5&&o.tag!==6&&o.tag!==18;){if(o.flags&2||o.child===null||o.tag===4)continue e;o.child.return=o,o=o.child}if(!(o.flags&2))return o.stateNode}}function tp(o,s,h){var v=o.tag;if(v===5||v===6)o=o.stateNode,s?h.nodeType===8?h.parentNode.insertBefore(o,s):h.insertBefore(o,s):(h.nodeType===8?(s=h.parentNode,s.insertBefore(o,h)):(s=h,s.appendChild(o)),h=h._reactRootContainer,h!=null||s.onclick!==null||(s.onclick=xu));else if(v!==4&&(o=o.child,o!==null))for(tp(o,s,h),o=o.sibling;o!==null;)tp(o,s,h),o=o.sibling}function np(o,s,h){var v=o.tag;if(v===5||v===6)o=o.stateNode,s?h.insertBefore(o,s):h.appendChild(o);else if(v!==4&&(o=o.child,o!==null))for(np(o,s,h),o=o.sibling;o!==null;)np(o,s,h),o=o.sibling}var Ht=null,sr=!1;function Mi(o,s,h){for(h=h.child;h!==null;)ow(o,s,h),h=h.sibling}function ow(o,s,h){if(kr&&typeof kr.onCommitFiberUnmount=="function")try{kr.onCommitFiberUnmount(tu,h)}catch{}switch(h.tag){case 5:en||co(h,s);case 6:var v=Ht,b=sr;Ht=null,Mi(o,s,h),Ht=v,sr=b,Ht!==null&&(sr?(o=Ht,h=h.stateNode,o.nodeType===8?o.parentNode.removeChild(h):o.removeChild(h)):Ht.removeChild(h.stateNode));break;case 18:Ht!==null&&(sr?(o=Ht,h=h.stateNode,o.nodeType===8?mh(o.parentNode,h):o.nodeType===1&&mh(o,h),sl(o)):mh(Ht,h.stateNode));break;case 4:v=Ht,b=sr,Ht=h.stateNode.containerInfo,sr=!0,Mi(o,s,h),Ht=v,sr=b;break;case 0:case 11:case 14:case 15:if(!en&&(v=h.updateQueue,v!==null&&(v=v.lastEffect,v!==null))){b=v=v.next;do{var j=b,N=j.destroy;j=j.tag,N!==void 0&&((j&2)!==0||(j&4)!==0)&&Jh(h,s,N),b=b.next}while(b!==v)}Mi(o,s,h);break;case 1:if(!en&&(co(h,s),v=h.stateNode,typeof v.componentWillUnmount=="function"))try{v.props=h.memoizedProps,v.state=h.memoizedState,v.componentWillUnmount()}catch(D){dt(h,s,D)}Mi(o,s,h);break;case 21:Mi(o,s,h);break;case 22:h.mode&1?(en=(v=en)||h.memoizedState!==null,Mi(o,s,h),en=v):Mi(o,s,h);break;default:Mi(o,s,h)}}function lw(o){var s=o.updateQueue;if(s!==null){o.updateQueue=null;var h=o.stateNode;h===null&&(h=o.stateNode=new dM),s.forEach(function(v){var b=kM.bind(null,o,v);h.has(v)||(h.add(v),v.then(b,b))})}}function ur(o,s){var h=s.deletions;if(h!==null)for(var v=0;vb&&(b=N),v&=~j}if(v=b,v=gt()-v,v=(120>v?120:480>v?480:1080>v?1080:1920>v?1920:3e3>v?3e3:4320>v?4320:1960*mM(v/1960))-v,10o?16:o,Li===null)var v=!1;else{if(o=Li,Li=null,Ku=0,(Be&6)!==0)throw Error(n(331));var b=Be;for(Be|=4,ve=o.current;ve!==null;){var j=ve,N=j.child;if((ve.flags&16)!==0){var D=j.deletions;if(D!==null){for(var z=0;zgt()-ap?ha(o,0):ip|=h),wn(o,s)}function bw(o,s){s===0&&((o.mode&1)===0?s=1:(s=ru,ru<<=1,(ru&130023424)===0&&(ru=4194304)));var h=sn();o=Gr(o,s),o!==null&&(rl(o,s,h),wn(o,h))}function wM(o){var s=o.memoizedState,h=0;s!==null&&(h=s.retryLane),bw(o,h)}function kM(o,s){var h=0;switch(o.tag){case 13:var v=o.stateNode,b=o.memoizedState;b!==null&&(h=b.retryLane);break;case 19:v=o.stateNode;break;default:throw Error(n(314))}v!==null&&v.delete(s),bw(o,h)}var ww;ww=function(o,s,h){if(o!==null)if(o.memoizedProps!==s.pendingProps||vn.current)xn=!0;else{if((o.lanes&h)===0&&(s.flags&128)===0)return xn=!1,uM(o,s,h);xn=(o.flags&131072)!==0}else xn=!1,it&&(s.flags&1048576)!==0&&eb(s,Pu,s.index);switch(s.lanes=0,s.tag){case 2:var v=s.type;Fu(o,s),o=s.pendingProps;var b=to(s,Qt.current);lo(s,h),b=Lh(null,s,v,o,b,h);var j=Rh();return s.flags|=1,typeof b=="object"&&b!==null&&typeof b.render=="function"&&b.$$typeof===void 0?(s.tag=1,s.memoizedState=null,s.updateQueue=null,yn(v)?(j=!0,ku(s)):j=!1,s.memoizedState=b.state!==null&&b.state!==void 0?b.state:null,Nh(s),b.updater=zu,s.stateNode=b,b._reactInternals=s,Wh(s,v,o,h),s=Kh(null,s,v,!0,j,h)):(s.tag=0,it&&j&&xh(s),ln(null,s,b,h),s=s.child),s;case 16:v=s.elementType;e:{switch(Fu(o,s),o=s.pendingProps,b=v._init,v=b(v._payload),s.type=v,b=s.tag=jM(v),o=lr(v,o),b){case 0:s=Vh(null,s,v,o,h);break e;case 1:s=Kb(null,s,v,o,h);break e;case 11:s=Ub(null,s,v,o,h);break e;case 14:s=Wb(null,s,v,lr(v.type,o),h);break e}throw Error(n(306,v,""))}return s;case 0:return v=s.type,b=s.pendingProps,b=s.elementType===v?b:lr(v,b),Vh(o,s,v,b,h);case 1:return v=s.type,b=s.pendingProps,b=s.elementType===v?b:lr(v,b),Kb(o,s,v,b,h);case 3:e:{if(Gb(s),o===null)throw Error(n(387));v=s.pendingProps,j=s.memoizedState,b=j.element,ub(o,s),_u(s,v,null,h);var N=s.memoizedState;if(v=N.element,j.isDehydrated)if(j={element:v,isDehydrated:!1,cache:N.cache,pendingSuspenseBoundaries:N.pendingSuspenseBoundaries,transitions:N.transitions},s.updateQueue.baseState=j,s.memoizedState=j,s.flags&256){b=uo(Error(n(423)),s),s=Yb(o,s,v,h,b);break e}else if(v!==b){b=uo(Error(n(424)),s),s=Yb(o,s,v,h,b);break e}else for(In=Oi(s.stateNode.containerInfo.firstChild),_n=s,it=!0,or=null,h=lb(s,null,v,h),s.child=h;h;)h.flags=h.flags&-3|4096,h=h.sibling;else{if(io(),v===b){s=Xr(o,s,h);break e}ln(o,s,v,h)}s=s.child}return s;case 5:return db(s),o===null&&kh(s),v=s.type,b=s.pendingProps,j=o!==null?o.memoizedProps:null,N=b.children,hh(v,b)?N=null:j!==null&&hh(v,j)&&(s.flags|=32),Vb(o,s),ln(o,s,N,h),s.child;case 6:return o===null&&kh(s),null;case 13:return Xb(o,s,h);case 4:return Ah(s,s.stateNode.containerInfo),v=s.pendingProps,o===null?s.child=ao(s,null,v,h):ln(o,s,v,h),s.child;case 11:return v=s.type,b=s.pendingProps,b=s.elementType===v?b:lr(v,b),Ub(o,s,v,b,h);case 7:return ln(o,s,s.pendingProps,h),s.child;case 8:return ln(o,s,s.pendingProps.children,h),s.child;case 12:return ln(o,s,s.pendingProps.children,h),s.child;case 10:e:{if(v=s.type._context,b=s.pendingProps,j=s.memoizedProps,N=b.value,Qe(Ou,v._currentValue),v._currentValue=N,j!==null)if(ar(j.value,N)){if(j.children===b.children&&!vn.current){s=Xr(o,s,h);break e}}else for(j=s.child,j!==null&&(j.return=s);j!==null;){var D=j.dependencies;if(D!==null){N=j.child;for(var z=D.firstContext;z!==null;){if(z.context===v){if(j.tag===1){z=Yr(-1,h&-h),z.tag=2;var K=j.updateQueue;if(K!==null){K=K.shared;var re=K.pending;re===null?z.next=z:(z.next=re.next,re.next=z),K.pending=z}}j.lanes|=h,z=j.alternate,z!==null&&(z.lanes|=h),Ch(j.return,h,s),D.lanes|=h;break}z=z.next}}else if(j.tag===10)N=j.type===s.type?null:j.child;else if(j.tag===18){if(N=j.return,N===null)throw Error(n(341));N.lanes|=h,D=N.alternate,D!==null&&(D.lanes|=h),Ch(N,h,s),N=j.sibling}else N=j.child;if(N!==null)N.return=j;else for(N=j;N!==null;){if(N===s){N=null;break}if(j=N.sibling,j!==null){j.return=N.return,N=j;break}N=N.return}j=N}ln(o,s,b.children,h),s=s.child}return s;case 9:return b=s.type,v=s.pendingProps.children,lo(s,h),b=Wn(b),v=v(b),s.flags|=1,ln(o,s,v,h),s.child;case 14:return v=s.type,b=lr(v,s.pendingProps),b=lr(v.type,b),Wb(o,s,v,b,h);case 15:return qb(o,s,s.type,s.pendingProps,h);case 17:return v=s.type,b=s.pendingProps,b=s.elementType===v?b:lr(v,b),Fu(o,s),s.tag=1,yn(v)?(o=!0,ku(s)):o=!1,lo(s,h),Db(s,v,b),Wh(s,v,b,h),Kh(null,s,v,!0,o,h);case 19:return Zb(o,s,h);case 22:return Hb(o,s,h)}throw Error(n(156,s.tag))};function kw(o,s){return t0(o,s)}function SM(o,s,h,v){this.tag=o,this.key=h,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=s,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=v,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Vn(o,s,h,v){return new SM(o,s,h,v)}function hp(o){return o=o.prototype,!(!o||!o.isReactComponent)}function jM(o){if(typeof o=="function")return hp(o)?1:0;if(o!=null){if(o=o.$$typeof,o===M)return 11;if(o===Q)return 14}return 2}function $i(o,s){var h=o.alternate;return h===null?(h=Vn(o.tag,s,o.key,o.mode),h.elementType=o.elementType,h.type=o.type,h.stateNode=o.stateNode,h.alternate=o,o.alternate=h):(h.pendingProps=s,h.type=o.type,h.flags=0,h.subtreeFlags=0,h.deletions=null),h.flags=o.flags&14680064,h.childLanes=o.childLanes,h.lanes=o.lanes,h.child=o.child,h.memoizedProps=o.memoizedProps,h.memoizedState=o.memoizedState,h.updateQueue=o.updateQueue,s=o.dependencies,h.dependencies=s===null?null:{lanes:s.lanes,firstContext:s.firstContext},h.sibling=o.sibling,h.index=o.index,h.ref=o.ref,h}function Qu(o,s,h,v,b,j){var N=2;if(v=o,typeof o=="function")hp(o)&&(N=1);else if(typeof o=="string")N=5;else e:switch(o){case L:return ma(h.children,b,j,s);case F:N=8,b|=8;break;case H:return o=Vn(12,h,s,b|2),o.elementType=H,o.lanes=j,o;case Z:return o=Vn(13,h,s,b),o.elementType=Z,o.lanes=j,o;case Y:return o=Vn(19,h,s,b),o.elementType=Y,o.lanes=j,o;case de:return Zu(h,b,j,s);default:if(typeof o=="object"&&o!==null)switch(o.$$typeof){case R:N=10;break e;case W:N=9;break e;case M:N=11;break e;case Q:N=14;break e;case he:N=16,v=null;break e}throw Error(n(130,o==null?o:typeof o,""))}return s=Vn(N,h,s,b),s.elementType=o,s.type=v,s.lanes=j,s}function ma(o,s,h,v){return o=Vn(7,o,v,s),o.lanes=h,o}function Zu(o,s,h,v){return o=Vn(22,o,v,s),o.elementType=de,o.lanes=h,o.stateNode={isHidden:!1},o}function pp(o,s,h){return o=Vn(6,o,null,s),o.lanes=h,o}function mp(o,s,h){return s=Vn(4,o.children!==null?o.children:[],o.key,s),s.lanes=h,s.stateNode={containerInfo:o.containerInfo,pendingChildren:null,implementation:o.implementation},s}function PM(o,s,h,v,b){this.tag=s,this.containerInfo=o,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Ud(0),this.expirationTimes=Ud(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Ud(0),this.identifierPrefix=v,this.onRecoverableError=b,this.mutableSourceEagerHydrationData=null}function gp(o,s,h,v,b,j,N,D,z){return o=new PM(o,s,h,D,z),s===1?(s=1,j===!0&&(s|=8)):s=0,j=Vn(3,null,null,s),o.current=j,j.stateNode=o,j.memoizedState={element:v,isDehydrated:h,cache:null,transitions:null,pendingSuspenseBoundaries:null},Nh(j),o}function EM(o,s,h){var v=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}return e(),Sp.exports=FM(),Sp.exports}var Lw;function BM(){if(Lw)return ac;Lw=1;var e=HE();return ac.createRoot=e.createRoot,ac.hydrateRoot=e.hydrateRoot,ac}var UM=BM(),k=Fo();const WM=xr(k),qM=MM({__proto__:null,default:WM},[k]);function HM(){return m.jsx("a",{href:"#/",className:"flex items-center",children:m.jsx("span",{className:"font-bold text-lg",children:"Claude Pilot Console"})})}const VM={primary:"btn-primary",secondary:"btn-secondary",ghost:"btn-ghost",outline:"btn-outline",error:"btn-error"},KM={xs:"btn-xs",sm:"btn-sm",md:"",lg:"btn-lg"};function Yt({variant:e="primary",size:t="md",loading:n=!1,className:r="",children:i,disabled:a,...l}){return m.jsxs("button",{className:`btn ${VM[e]} ${KM[t]} ${r}`,disabled:a||n,...l,children:[n&&m.jsx("span",{className:"loading loading-spinner loading-sm"}),i]})}function wt({children:e,className:t="",compact:n=!1,onClick:r}){return m.jsx("div",{className:`card bg-base-100 shadow-sm border border-base-200 ${n?"card-compact":""} ${t}`,onClick:r,children:e})}function kt({children:e,className:t=""}){return m.jsx("div",{className:`card-body ${t}`,children:e})}function Vi({children:e,className:t=""}){return m.jsx("h2",{className:`card-title ${t}`,children:e})}const GM={primary:"badge-primary",secondary:"badge-secondary",accent:"badge-accent",ghost:"badge-ghost",info:"badge-info",success:"badge-success",warning:"badge-warning",error:"badge-error"},YM={xs:"badge-xs",sm:"badge-sm",md:"",lg:"badge-lg"};function Te({children:e,variant:t="ghost",size:n="md",outline:r=!1,className:i=""}){return m.jsx("span",{className:`badge ${GM[t]} ${YM[n]} ${r?"badge-outline":""} ${i}`,children:e})}const XM={xs:"select-xs",sm:"select-sm",md:"",lg:"select-lg"};function QM({label:e,options:t,selectSize:n="md",error:r,className:i="",...a}){return m.jsxs("div",{className:"form-control w-full",children:[e&&m.jsx("label",{className:"label",children:m.jsx("span",{className:"label-text",children:e})}),m.jsx("select",{className:`select select-bordered w-full ${XM[n]} ${r?"select-error":""} ${i}`,...a,children:t.map(l=>m.jsx("option",{value:l.value,children:l.label},l.value))}),r&&m.jsx("label",{className:"label",children:m.jsx("span",{className:"label-text-alt text-error",children:r})})]})}function VE({open:e,onClose:t,title:n,children:r,actions:i}){return m.jsxs("dialog",{className:`modal ${e?"modal-open":""}`,children:[m.jsxs("div",{className:"modal-box",children:[n&&m.jsx("h3",{className:"font-bold text-lg",children:n}),m.jsx("div",{className:"py-4",children:r}),i&&m.jsx("div",{className:"modal-action",children:i})]}),m.jsx("form",{method:"dialog",className:"modal-backdrop",children:m.jsx("button",{onClick:t,children:"close"})})]})}function KE({trigger:e,items:t,align:n="end"}){return m.jsxs("div",{className:`dropdown ${n==="end"?"dropdown-end":""}`,children:[m.jsx("div",{tabIndex:0,role:"button",children:e}),m.jsx("ul",{tabIndex:0,className:"dropdown-content menu bg-base-100 rounded-box z-10 w-52 p-2 shadow-lg border border-base-200",children:t.map((r,i)=>m.jsx("li",{children:m.jsxs("button",{onClick:r.onClick,disabled:r.disabled,className:"flex items-center gap-2",children:[r.icon,r.label]})},i))})]})}const ZM={bordered:"tabs-bordered",lifted:"tabs-lifted",boxed:"tabs-boxed"};function JM({tabs:e,activeTab:t,onTabChange:n,variant:r="bordered"}){return m.jsx("div",{role:"tablist",className:`tabs ${ZM[r]}`,children:e.map(i=>m.jsxs("button",{role:"tab",className:`tab gap-2 ${t===i.id?"tab-active":""}`,onClick:()=>n(i.id),children:[i.icon,i.label]},i.id))})}const eD={primary:"progress-primary",secondary:"progress-secondary",accent:"progress-accent",info:"progress-info",success:"progress-success",warning:"progress-warning",error:"progress-error"};function tD({value:e,max:t=100,variant:n="primary",className:r=""}){return m.jsx("progress",{className:`progress ${eD[n]} ${r}`,value:e,max:t})}const nD={xs:"loading-xs",sm:"loading-sm",md:"loading-md",lg:"loading-lg"};function Xi({size:e="md",className:t=""}){return m.jsx("span",{className:`loading loading-spinner ${nD[e]} ${t}`})}function rD(e,t){const n=e.icons,r=e.aliases||Object.create(null),i=Object.create(null);function a(l){if(n[l])return i[l]=[];if(!(l in i)){i[l]=null;const u=r[l]&&r[l].parent,c=u&&a(u);c&&(i[l]=[u].concat(c))}return i[l]}return Object.keys(n).concat(Object.keys(r)).forEach(a),i}const GE=Object.freeze({left:0,top:0,width:16,height:16}),Lc=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),Vv=Object.freeze({...GE,...Lc}),Ag=Object.freeze({...Vv,body:"",hidden:!1});function iD(e,t){const n={};!e.hFlip!=!t.hFlip&&(n.hFlip=!0),!e.vFlip!=!t.vFlip&&(n.vFlip=!0);const r=((e.rotate||0)+(t.rotate||0))%4;return r&&(n.rotate=r),n}function Rw(e,t){const n=iD(e,t);for(const r in Ag)r in Lc?r in e&&!(r in n)&&(n[r]=Lc[r]):r in t?n[r]=t[r]:r in e&&(n[r]=e[r]);return n}function aD(e,t,n){const r=e.icons,i=e.aliases||Object.create(null);let a={};function l(u){a=Rw(r[u]||i[u],a)}return l(t),n.forEach(l),Rw(e,a)}function YE(e,t){const n=[];if(typeof e!="object"||typeof e.icons!="object")return n;e.not_found instanceof Array&&e.not_found.forEach(i=>{t(i,null),n.push(i)});const r=rD(e);for(const i in r){const a=r[i];a&&(t(i,aD(e,i,a)),n.push(i))}return n}const oD={provider:"",aliases:{},not_found:{},...GE};function Ep(e,t){for(const n in t)if(n in e&&typeof e[n]!=typeof t[n])return!1;return!0}function XE(e){if(typeof e!="object"||e===null)return null;const t=e;if(typeof t.prefix!="string"||!e.icons||typeof e.icons!="object"||!Ep(e,oD))return null;const n=t.icons;for(const i in n){const a=n[i];if(!i||typeof a.body!="string"||!Ep(a,Ag))return null}const r=t.aliases||Object.create(null);for(const i in r){const a=r[i],l=a.parent;if(!i||typeof l!="string"||!n[l]&&!r[l]||!Ep(a,Ag))return null}return t}const zw=Object.create(null);function lD(e,t){return{provider:e,prefix:t,icons:Object.create(null),missing:new Set}}function Ao(e,t){const n=zw[e]||(zw[e]=Object.create(null));return n[t]||(n[t]=lD(e,t))}function QE(e,t){return XE(t)?YE(t,(n,r)=>{r?e.icons[n]=r:e.missing.add(n)}):[]}function sD(e,t,n){try{if(typeof n.body=="string")return e.icons[t]={...n},!0}catch{}return!1}const ZE=/^[a-z0-9]+(-[a-z0-9]+)*$/,zf=(e,t,n,r="")=>{const i=e.split(":");if(e.slice(0,1)==="@"){if(i.length<2||i.length>3)return null;r=i.shift().slice(1)}if(i.length>3||!i.length)return null;if(i.length>1){const u=i.pop(),c=i.pop(),f={provider:i.length>0?i[0]:r,prefix:c,name:u};return t&&!Cc(f)?null:f}const a=i[0],l=a.split("-");if(l.length>1){const u={provider:r,prefix:l.shift(),name:l.join("-")};return t&&!Cc(u)?null:u}if(n&&r===""){const u={provider:r,prefix:"",name:a};return t&&!Cc(u,n)?null:u}return null},Cc=(e,t)=>e?!!((t&&e.prefix===""||e.prefix)&&e.name):!1;let ss=!1;function JE(e){return typeof e=="boolean"&&(ss=e),ss}function $w(e){const t=typeof e=="string"?zf(e,!0,ss):e;if(t){const n=Ao(t.provider,t.prefix),r=t.name;return n.icons[r]||(n.missing.has(r)?null:void 0)}}function uD(e,t){const n=zf(e,!0,ss);if(!n)return!1;const r=Ao(n.provider,n.prefix);return t?sD(r,n.name,t):(r.missing.add(n.name),!0)}function cD(e,t){if(typeof e!="object")return!1;if(typeof t!="string"&&(t=e.provider||""),ss&&!t&&!e.prefix){let i=!1;return XE(e)&&(e.prefix="",YE(e,(a,l)=>{uD(a,l)&&(i=!0)})),i}const n=e.prefix;if(!Cc({prefix:n,name:"a"}))return!1;const r=Ao(t,n);return!!QE(r,e)}const eC=Object.freeze({width:null,height:null}),tC=Object.freeze({...eC,...Lc}),fD=/(-?[0-9.]*[0-9]+[0-9.]*)/g,dD=/^-?[0-9.]*[0-9]+[0-9.]*$/g;function Fw(e,t,n){if(t===1)return e;if(n=n||100,typeof e=="number")return Math.ceil(e*t*n)/n;if(typeof e!="string")return e;const r=e.split(fD);if(r===null||!r.length)return e;const i=[];let a=r.shift(),l=dD.test(a);for(;;){if(l){const u=parseFloat(a);isNaN(u)?i.push(a):i.push(Math.ceil(u*t*n)/n)}else i.push(a);if(a=r.shift(),a===void 0)return i.join("");l=!l}}function hD(e,t="defs"){let n="";const r=e.indexOf("<"+t);for(;r>=0;){const i=e.indexOf(">",r),a=e.indexOf("",a);if(l===-1)break;n+=e.slice(i+1,a).trim(),e=e.slice(0,r).trim()+e.slice(l+1)}return{defs:n,content:e}}function pD(e,t){return e?""+e+""+t:t}function mD(e,t,n){const r=hD(e);return pD(r.defs,t+r.content+n)}const gD=e=>e==="unset"||e==="undefined"||e==="none";function vD(e,t){const n={...Vv,...e},r={...tC,...t},i={left:n.left,top:n.top,width:n.width,height:n.height};let a=n.body;[n,r].forEach(S=>{const w=[],P=S.hFlip,C=S.vFlip;let O=S.rotate;P?C?O+=2:(w.push("translate("+(i.width+i.left).toString()+" "+(0-i.top).toString()+")"),w.push("scale(-1 1)"),i.top=i.left=0):C&&(w.push("translate("+(0-i.left).toString()+" "+(i.height+i.top).toString()+")"),w.push("scale(1 -1)"),i.top=i.left=0);let A;switch(O<0&&(O-=Math.floor(O/4)*4),O=O%4,O){case 1:A=i.height/2+i.top,w.unshift("rotate(90 "+A.toString()+" "+A.toString()+")");break;case 2:w.unshift("rotate(180 "+(i.width/2+i.left).toString()+" "+(i.height/2+i.top).toString()+")");break;case 3:A=i.width/2+i.left,w.unshift("rotate(-90 "+A.toString()+" "+A.toString()+")");break}O%2===1&&(i.left!==i.top&&(A=i.left,i.left=i.top,i.top=A),i.width!==i.height&&(A=i.width,i.width=i.height,i.height=A)),w.length&&(a=mD(a,'',""))});const l=r.width,u=r.height,c=i.width,f=i.height;let d,p;l===null?(p=u===null?"1em":u==="auto"?f:u,d=Fw(p,c/f)):(d=l==="auto"?c:l,p=u===null?Fw(d,f/c):u==="auto"?f:u);const g={},y=(S,w)=>{gD(w)||(g[S]=w.toString())};y("width",d),y("height",p);const x=[i.left,i.top,c,f];return g.viewBox=x.join(" "),{attributes:g,viewBox:x,body:a}}const yD=/\sid="(\S+)"/g,xD="IconifyId"+Date.now().toString(16)+(Math.random()*16777216|0).toString(16);let bD=0;function wD(e,t=xD){const n=[];let r;for(;r=yD.exec(e);)n.push(r[1]);if(!n.length)return e;const i="suffix"+(Math.random()*16777216|Date.now()).toString(16);return n.forEach(a=>{const l=typeof t=="function"?t(a):t+(bD++).toString(),u=a.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");e=e.replace(new RegExp('([#;"])('+u+')([")]|\\.[a-z])',"g"),"$1"+l+i+"$3")}),e=e.replace(new RegExp(i,"g"),""),e}const _g=Object.create(null);function kD(e,t){_g[e]=t}function Ig(e){return _g[e]||_g[""]}function Kv(e){let t;if(typeof e.resources=="string")t=[e.resources];else if(t=e.resources,!(t instanceof Array)||!t.length)return null;return{resources:t,path:e.path||"/",maxURL:e.maxURL||500,rotate:e.rotate||750,timeout:e.timeout||5e3,random:e.random===!0,index:e.index||0,dataAfterTimeout:e.dataAfterTimeout!==!1}}const Gv=Object.create(null),Ll=["https://api.simplesvg.com","https://api.unisvg.com"],Oc=[];for(;Ll.length>0;)Ll.length===1||Math.random()>.5?Oc.push(Ll.shift()):Oc.push(Ll.pop());Gv[""]=Kv({resources:["https://api.iconify.design"].concat(Oc)});function SD(e,t){const n=Kv(t);return n===null?!1:(Gv[e]=n,!0)}function Yv(e){return Gv[e]}const jD=()=>{let e;try{if(e=fetch,typeof e=="function")return e}catch{}};let Bw=jD();function PD(e,t){const n=Yv(e);if(!n)return 0;let r;if(!n.maxURL)r=0;else{let i=0;n.resources.forEach(l=>{i=Math.max(i,l.length)});const a=t+".json?icons=";r=n.maxURL-i-n.path.length-a.length}return r}function ED(e){return e===404}const CD=(e,t,n)=>{const r=[],i=PD(e,t),a="icons";let l={type:a,provider:e,prefix:t,icons:[]},u=0;return n.forEach((c,f)=>{u+=c.length+1,u>=i&&f>0&&(r.push(l),l={type:a,provider:e,prefix:t,icons:[]},u=c.length),l.icons.push(c)}),r.push(l),r};function OD(e){if(typeof e=="string"){const t=Yv(e);if(t)return t.path}return"/"}const ND=(e,t,n)=>{if(!Bw){n("abort",424);return}let r=OD(t.provider);switch(t.type){case"icons":{const a=t.prefix,u=t.icons.join(","),c=new URLSearchParams({icons:u});r+=a+".json?"+c.toString();break}case"custom":{const a=t.uri;r+=a.slice(0,1)==="/"?a.slice(1):a;break}default:n("abort",400);return}let i=503;Bw(e+r).then(a=>{const l=a.status;if(l!==200){setTimeout(()=>{n(ED(l)?"abort":"next",l)});return}return i=501,a.json()}).then(a=>{if(typeof a!="object"||a===null){setTimeout(()=>{a===404?n("abort",a):n("next",i)});return}setTimeout(()=>{n("success",a)})}).catch(()=>{n("next",i)})},AD={prepare:CD,send:ND};function nC(e,t){e.forEach(n=>{const r=n.loaderCallbacks;r&&(n.loaderCallbacks=r.filter(i=>i.id!==t))})}function _D(e){e.pendingCallbacksFlag||(e.pendingCallbacksFlag=!0,setTimeout(()=>{e.pendingCallbacksFlag=!1;const t=e.loaderCallbacks?e.loaderCallbacks.slice(0):[];if(!t.length)return;let n=!1;const r=e.provider,i=e.prefix;t.forEach(a=>{const l=a.icons,u=l.pending.length;l.pending=l.pending.filter(c=>{if(c.prefix!==i)return!0;const f=c.name;if(e.icons[f])l.loaded.push({provider:r,prefix:i,name:f});else if(e.missing.has(f))l.missing.push({provider:r,prefix:i,name:f});else return n=!0,!0;return!1}),l.pending.length!==u&&(n||nC([e],a.id),a.callback(l.loaded.slice(0),l.missing.slice(0),l.pending.slice(0),a.abort))})}))}let ID=0;function TD(e,t,n){const r=ID++,i=nC.bind(null,n,r);if(!t.pending.length)return i;const a={id:r,icons:t,callback:e,abort:i};return n.forEach(l=>{(l.loaderCallbacks||(l.loaderCallbacks=[])).push(a)}),i}function MD(e){const t={loaded:[],missing:[],pending:[]},n=Object.create(null);e.sort((i,a)=>i.provider!==a.provider?i.provider.localeCompare(a.provider):i.prefix!==a.prefix?i.prefix.localeCompare(a.prefix):i.name.localeCompare(a.name));let r={provider:"",prefix:"",name:""};return e.forEach(i=>{if(r.name===i.name&&r.prefix===i.prefix&&r.provider===i.provider)return;r=i;const a=i.provider,l=i.prefix,u=i.name,c=n[a]||(n[a]=Object.create(null)),f=c[l]||(c[l]=Ao(a,l));let d;u in f.icons?d=t.loaded:l===""||f.missing.has(u)?d=t.missing:d=t.pending;const p={provider:a,prefix:l,name:u};d.push(p)}),t}function DD(e,t=!0,n=!1){const r=[];return e.forEach(i=>{const a=typeof i=="string"?zf(i,t,n):i;a&&r.push(a)}),r}const LD={resources:[],index:0,timeout:2e3,rotate:750,random:!1,dataAfterTimeout:!1};function RD(e,t,n,r){const i=e.resources.length,a=e.random?Math.floor(Math.random()*i):e.index;let l;if(e.random){let E=e.resources.slice(0);for(l=[];E.length>1;){const L=Math.floor(Math.random()*E.length);l.push(E[L]),E=E.slice(0,L).concat(E.slice(L+1))}l=l.concat(E)}else l=e.resources.slice(a).concat(e.resources.slice(0,a));const u=Date.now();let c="pending",f=0,d,p=null,g=[],y=[];typeof r=="function"&&y.push(r);function x(){p&&(clearTimeout(p),p=null)}function S(){c==="pending"&&(c="aborted"),x(),g.forEach(E=>{E.status==="pending"&&(E.status="aborted")}),g=[]}function w(E,L){L&&(y=[]),typeof E=="function"&&y.push(E)}function P(){return{startTime:u,payload:t,status:c,queriesSent:f,queriesPending:g.length,subscribe:w,abort:S}}function C(){c="failed",y.forEach(E=>{E(void 0,d)})}function O(){g.forEach(E=>{E.status==="pending"&&(E.status="aborted")}),g=[]}function A(E,L,F){const H=L!=="success";switch(g=g.filter(R=>R!==E),c){case"pending":break;case"failed":if(H||!e.dataAfterTimeout)return;break;default:return}if(L==="abort"){d=F,C();return}if(H){d=F,g.length||(l.length?I():C());return}if(x(),O(),!e.random){const R=e.resources.indexOf(E.resource);R!==-1&&R!==e.index&&(e.index=R)}c="completed",y.forEach(R=>{R(F)})}function I(){if(c!=="pending")return;x();const E=l.shift();if(E===void 0){if(g.length){p=setTimeout(()=>{x(),c==="pending"&&(O(),C())},e.timeout);return}C();return}const L={status:"pending",resource:E,callback:(F,H)=>{A(L,F,H)}};g.push(L),f++,p=setTimeout(I,e.rotate),n(E,t,L.callback)}return setTimeout(I),P}function rC(e){const t={...LD,...e};let n=[];function r(){n=n.filter(u=>u().status==="pending")}function i(u,c,f){const d=RD(t,u,c,(p,g)=>{r(),f&&f(p,g)});return n.push(d),d}function a(u){return n.find(c=>u(c))||null}return{query:i,find:a,setIndex:u=>{t.index=u},getIndex:()=>t.index,cleanup:r}}function Uw(){}const Cp=Object.create(null);function zD(e){if(!Cp[e]){const t=Yv(e);if(!t)return;const n=rC(t),r={config:t,redundancy:n};Cp[e]=r}return Cp[e]}function $D(e,t,n){let r,i;if(typeof e=="string"){const a=Ig(e);if(!a)return n(void 0,424),Uw;i=a.send;const l=zD(e);l&&(r=l.redundancy)}else{const a=Kv(e);if(a){r=rC(a);const l=e.resources?e.resources[0]:"",u=Ig(l);u&&(i=u.send)}}return!r||!i?(n(void 0,424),Uw):r.query(t,i,n)().abort}function Ww(){}function FD(e){e.iconsLoaderFlag||(e.iconsLoaderFlag=!0,setTimeout(()=>{e.iconsLoaderFlag=!1,_D(e)}))}function BD(e){const t=[],n=[];return e.forEach(r=>{(r.match(ZE)?t:n).push(r)}),{valid:t,invalid:n}}function Rl(e,t,n){function r(){const i=e.pendingIcons;t.forEach(a=>{i&&i.delete(a),e.icons[a]||e.missing.add(a)})}if(n&&typeof n=="object")try{if(!QE(e,n).length){r();return}}catch(i){console.error(i)}r(),FD(e)}function qw(e,t){e instanceof Promise?e.then(n=>{t(n)}).catch(()=>{t(null)}):t(e)}function UD(e,t){e.iconsToLoad?e.iconsToLoad=e.iconsToLoad.concat(t).sort():e.iconsToLoad=t,e.iconsQueueFlag||(e.iconsQueueFlag=!0,setTimeout(()=>{e.iconsQueueFlag=!1;const{provider:n,prefix:r}=e,i=e.iconsToLoad;if(delete e.iconsToLoad,!i||!i.length)return;const a=e.loadIcon;if(e.loadIcons&&(i.length>1||!a)){qw(e.loadIcons(i,r,n),d=>{Rl(e,i,d)});return}if(a){i.forEach(d=>{const p=a(d,r,n);qw(p,g=>{const y=g?{prefix:r,icons:{[d]:g}}:null;Rl(e,[d],y)})});return}const{valid:l,invalid:u}=BD(i);if(u.length&&Rl(e,u,null),!l.length)return;const c=r.match(ZE)?Ig(n):null;if(!c){Rl(e,l,null);return}c.prepare(n,r,l).forEach(d=>{$D(n,d,p=>{Rl(e,d.icons,p)})})}))}const WD=(e,t)=>{const n=DD(e,!0,JE()),r=MD(n);if(!r.pending.length){let c=!0;return t&&setTimeout(()=>{c&&t(r.loaded,r.missing,r.pending,Ww)}),()=>{c=!1}}const i=Object.create(null),a=[];let l,u;return r.pending.forEach(c=>{const{provider:f,prefix:d}=c;if(d===u&&f===l)return;l=f,u=d,a.push(Ao(f,d));const p=i[f]||(i[f]=Object.create(null));p[d]||(p[d]=[])}),r.pending.forEach(c=>{const{provider:f,prefix:d,name:p}=c,g=Ao(f,d),y=g.pendingIcons||(g.pendingIcons=new Set);y.has(p)||(y.add(p),i[f][d].push(p))}),a.forEach(c=>{const f=i[c.provider][c.prefix];f.length&&UD(c,f)}),t?TD(t,r,a):Ww};function qD(e,t){const n={...e};for(const r in t){const i=t[r],a=typeof i;r in eC?(i===null||i&&(a==="string"||a==="number"))&&(n[r]=i):a===typeof n[r]&&(n[r]=r==="rotate"?i%4:i)}return n}const HD=/[\s,]+/;function VD(e,t){t.split(HD).forEach(n=>{switch(n.trim()){case"horizontal":e.hFlip=!0;break;case"vertical":e.vFlip=!0;break}})}function KD(e,t=0){const n=e.replace(/^-?[0-9.]*/,"");function r(i){for(;i<0;)i+=4;return i%4}if(n===""){const i=parseInt(e);return isNaN(i)?0:r(i)}else if(n!==e){let i=0;switch(n){case"%":i=25;break;case"deg":i=90}if(i){let a=parseFloat(e.slice(0,e.length-n.length));return isNaN(a)?0:(a=a/i,a%1===0?r(a):0)}}return t}function GD(e,t){let n=e.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(const r in t)n+=" "+r+'="'+t[r]+'"';return'"+e+""}function YD(e){return e.replace(/"/g,"'").replace(/%/g,"%25").replace(/#/g,"%23").replace(//g,"%3E").replace(/\s+/g," ")}function XD(e){return"data:image/svg+xml,"+YD(e)}function QD(e){return'url("'+XD(e)+'")'}let ns;function ZD(){try{ns=window.trustedTypes.createPolicy("iconify",{createHTML:e=>e})}catch{ns=null}}function JD(e){return ns===void 0&&ZD(),ns?ns.createHTML(e):e}const iC={...tC,inline:!1},eL={xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink","aria-hidden":!0,role:"img"},tL={display:"inline-block"},Tg={backgroundColor:"currentColor"},aC={backgroundColor:"transparent"},Hw={Image:"var(--svg)",Repeat:"no-repeat",Size:"100% 100%"},Vw={WebkitMask:Tg,mask:Tg,background:aC};for(const e in Vw){const t=Vw[e];for(const n in Hw)t[e+n]=Hw[n]}const nL={...iC,inline:!0};function Kw(e){return e+(e.match(/^[-0-9.]+$/)?"px":"")}const rL=(e,t,n)=>{const r=t.inline?nL:iC,i=qD(r,t),a=t.mode||"svg",l={},u=t.style||{},c={...a==="svg"?eL:{}};if(n){const w=zf(n,!1,!0);if(w){const P=["iconify"],C=["provider","prefix"];for(const O of C)w[O]&&P.push("iconify--"+w[O]);c.className=P.join(" ")}}for(let w in t){const P=t[w];if(P!==void 0)switch(w){case"icon":case"style":case"children":case"onLoad":case"mode":case"ssr":case"fallback":break;case"_ref":c.ref=P;break;case"className":c[w]=(c[w]?c[w]+" ":"")+P;break;case"inline":case"hFlip":case"vFlip":i[w]=P===!0||P==="true"||P===1;break;case"flip":typeof P=="string"&&VD(i,P);break;case"color":l.color=P;break;case"rotate":typeof P=="string"?i[w]=KD(P):typeof P=="number"&&(i[w]=P);break;case"ariaHidden":case"aria-hidden":P!==!0&&P!=="true"&&delete c["aria-hidden"];break;default:r[w]===void 0&&(c[w]=P)}}const f=vD(e,i),d=f.attributes;if(i.inline&&(l.verticalAlign="-0.125em"),a==="svg"){c.style={...l,...u},Object.assign(c,d);let w=0,P=t.id;return typeof P=="string"&&(P=P.replace(/-/g,"_")),c.dangerouslySetInnerHTML={__html:JD(wD(f.body,P?()=>P+"ID"+w++:"iconifyReact"))},k.createElement("svg",c)}const{body:p,width:g,height:y}=e,x=a==="mask"||(a==="bg"?!1:p.indexOf("currentColor")!==-1),S=GD(p,{...d,width:g+"",height:y+""});return c.style={...l,"--svg":QD(S),width:Kw(d.width),height:Kw(d.height),...tL,...x?Tg:aC,...u},k.createElement("span",c)};JE(!0);kD("",AD);if(typeof document<"u"&&typeof window<"u"){const e=window;if(e.IconifyPreload!==void 0){const t=e.IconifyPreload,n="Invalid IconifyPreload syntax.";typeof t=="object"&&t!==null&&(t instanceof Array?t:[t]).forEach(r=>{try{(typeof r!="object"||r===null||r instanceof Array||typeof r.icons!="object"||typeof r.prefix!="string"||!cD(r))&&console.error(n)}catch{console.error(n)}})}if(e.IconifyProviders!==void 0){const t=e.IconifyProviders;if(typeof t=="object"&&t!==null)for(let n in t){const r="IconifyProviders["+n+"] is invalid.";try{const i=t[n];if(typeof i!="object"||!i||i.resources===void 0)continue;SD(n,i)||console.error(r)}catch{console.error(r)}}}}function oC(e){const[t,n]=k.useState(!!e.ssr),[r,i]=k.useState({});function a(y){if(y){const x=e.icon;if(typeof x=="object")return{name:"",data:x};const S=$w(x);if(S)return{name:x,data:S}}return{name:""}}const[l,u]=k.useState(a(!!e.ssr));function c(){const y=r.callback;y&&(y(),i({}))}function f(y){if(JSON.stringify(l)!==JSON.stringify(y))return c(),u(y),!0}function d(){var y;const x=e.icon;if(typeof x=="object"){f({name:"",data:x});return}const S=$w(x);if(f({name:x,data:S}))if(S===void 0){const w=WD([x],d);i({callback:w})}else S&&((y=e.onLoad)===null||y===void 0||y.call(e,x))}k.useEffect(()=>(n(!0),c),[]),k.useEffect(()=>{t&&d()},[e.icon,t]);const{name:p,data:g}=l;return g?rL({...Vv,...g},e,p):e.children?e.children:e.fallback?e.fallback:k.createElement("span",{})}const iL=k.forwardRef((e,t)=>oC({...e,_ref:t}));k.forwardRef((e,t)=>oC({inline:!0,...e,_ref:t}));function se({icon:e,size:t=20,className:n="",style:r}){return m.jsx(iL,{icon:e,width:t,height:t,className:n,style:r})}function Eo({icon:e="lucide:inbox",title:t,description:n,action:r}){return m.jsxs("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[m.jsx(se,{icon:e,size:48,className:"text-base-content/30 mb-4"}),m.jsx("h3",{className:"font-semibold text-lg text-base-content/70",children:t}),n&&m.jsx("p",{className:"text-base-content/50 mt-1 max-w-sm",children:n}),r&&m.jsx("div",{className:"mt-4",children:r})]})}const aL={top:"tooltip-top",bottom:"tooltip-bottom",left:"tooltip-left",right:"tooltip-right"};function _r({text:e,children:t,position:n="top"}){return m.jsx("div",{className:`tooltip ${aL[n]}`,"data-tip":e,children:t})}const oL={success:{bg:"alert-success",icon:"lucide:check-circle",iconColor:"text-success-content"},error:{bg:"alert-error",icon:"lucide:x-circle",iconColor:"text-error-content"},info:{bg:"alert-info",icon:"lucide:info",iconColor:"text-info-content"},warning:{bg:"alert-warning",icon:"lucide:alert-triangle",iconColor:"text-warning-content"}};function lL({id:e,type:t,message:n,title:r,duration:i=5e3,dismissible:a=!0,onClick:l,onDismiss:u}){const[c,f]=k.useState(!1),{bg:d,icon:p,iconColor:g}=oL[t];k.useEffect(()=>{if(i>0){const x=setTimeout(()=>{f(!0),setTimeout(()=>u(e),300)},i);return()=>clearTimeout(x)}},[i,e,u]);const y=()=>{f(!0),setTimeout(()=>u(e),300)};return m.jsxs("div",{role:"alert",className:`alert ${d} shadow-lg transition-all duration-300 ${c?"opacity-0 translate-x-4":"opacity-100 translate-x-0"} ${l?"cursor-pointer hover:scale-[1.02]":""}`,onClick:l,children:[m.jsx(se,{icon:p,size:20,className:g}),m.jsxs("div",{className:"flex-1",children:[r&&m.jsx("h3",{className:"font-bold text-sm",children:r}),m.jsx("span",{className:"text-sm",children:n})]}),a&&m.jsx("button",{onClick:x=>{x.stopPropagation(),y()},className:"btn btn-ghost btn-sm btn-circle","aria-label":"Dismiss",children:m.jsx(se,{icon:"lucide:x",size:16})})]})}function sL({toasts:e,onDismiss:t}){return e.length===0?null:m.jsx("div",{className:"toast toast-end toast-bottom z-50",children:e.map(n=>m.jsx(lL,{...n,onDismiss:t},n.id))})}function lC({project:e,workspace:t=!1}){return t?m.jsxs("span",{className:"inline-flex items-center gap-1 text-xs bg-base-200 text-base-content/50 rounded-full px-2.5 py-0.5",children:[m.jsx(se,{icon:"lucide:globe",size:12}),"Workspace"]}):e?m.jsxs("span",{className:"inline-flex items-center gap-1 text-xs bg-primary/10 text-primary rounded-full px-2.5 py-0.5",children:[m.jsx(se,{icon:"lucide:folder",size:12}),e]}):null}function uL({icon:e,label:t,href:n,active:r=!1,badge:i,collapsed:a=!1}){const l=m.jsxs("a",{href:n,className:`nav-item flex items-center gap-3 px-3 py-2.5 rounded-lg transition-all ${r?"active":""} ${a?"justify-center":""}`,children:[m.jsx(se,{icon:e,size:20}),!a&&m.jsxs(m.Fragment,{children:[m.jsx("span",{className:"flex-1",children:t}),i!==void 0&&m.jsx("span",{className:`badge badge-sm ${r?"badge-primary-content":"badge-ghost"}`,children:i})]})]});return a?m.jsx(_r,{text:t,children:l}):l}const cL=[{icon:"lucide:layout-dashboard",label:"Dashboard",href:"#/"},{icon:"lucide:scroll",label:"Specification",href:"#/spec"},{icon:"lucide:brain",label:"Memories",href:"#/memories"},{icon:"lucide:history",label:"Sessions",href:"#/sessions"},{icon:"lucide:bar-chart-3",label:"Usage",href:"#/usage"},{icon:"lucide:archive",label:"Vault",href:"#/vault"},{icon:"lucide:settings",label:"Settings",href:"#/settings"}];function fL({currentPath:e,collapsed:t=!1}){return m.jsx("nav",{className:"py-4 space-y-1 px-2",children:cL.map(n=>m.jsx(uL,{icon:n.icon,label:n.label,href:n.href,active:e===n.href||e.startsWith(n.href+"/"),collapsed:t},n.href))})}function dL({workerStatus:e,version:t,queueDepth:n=0,collapsed:r=!1}){const l={online:{color:"success",label:"Online",icon:"lucide:circle-check"},offline:{color:"error",label:"Offline",icon:"lucide:circle-x"}}[e!=="offline"?"online":"offline"],u=t?`v${t}`:null;return r?m.jsx("div",{className:"p-3 border-t border-base-300/50",children:m.jsx(_r,{text:`Claude Pilot ${u??""} · Worker ${l.label}`,children:m.jsx("div",{className:"flex justify-center",children:m.jsx(se,{icon:l.icon,size:20,className:`text-${l.color}`})})})}):m.jsxs("div",{className:"p-4 border-t border-base-300/50 space-y-2",children:[m.jsxs("div",{className:"flex items-center justify-between text-sm",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(se,{icon:l.icon,size:16,className:`text-${l.color}`}),m.jsx("span",{className:"text-base-content/70",children:"Worker"})]}),m.jsx(Te,{variant:l.color,size:"sm",children:l.label})]}),u&&m.jsxs("div",{className:"text-xs text-base-content/40 text-center",children:["Claude Pilot ",u]})]})}const sC=k.createContext(null);let hL=0;function pL({children:e}){const[t,n]=k.useState([]),r=k.useCallback(d=>{const p=`toast-${++hL}`;return n(g=>[...g,{...d,id:p}]),p},[]),i=k.useCallback(d=>{n(p=>p.filter(g=>g.id!==d))},[]),a=k.useCallback(()=>{n([])},[]),l=k.useCallback((d,p)=>r({type:"success",message:d,title:p}),[r]),u=k.useCallback((d,p)=>r({type:"error",message:d,title:p,duration:8e3}),[r]),c=k.useCallback((d,p)=>r({type:"info",message:d,title:p}),[r]),f=k.useCallback((d,p)=>r({type:"warning",message:d,title:p,duration:7e3}),[r]);return m.jsxs(sC.Provider,{value:{addToast:r,removeToast:i,clearAll:a,success:l,error:u,info:c,warning:f},children:[e,m.jsx(sL,{toasts:t,onDismiss:i})]})}function uC(){const e=k.useContext(sC);if(!e)throw new Error("useToast must be used within a ToastProvider");return e}const Op="pilot-memory-selected-project",mL={selectedProject:null,projects:[],setSelectedProject:()=>{},setProjects:()=>{}},cC=k.createContext(mL);function gL({children:e}){const[t,n]=k.useState(()=>{try{return localStorage.getItem(Op)||null}catch{return null}}),[r,i]=k.useState([]),a=k.useCallback(u=>{n(u);try{u?localStorage.setItem(Op,u):localStorage.removeItem(Op)}catch{}},[]),l=k.useCallback(u=>{i(u)},[]);return k.useEffect(()=>{fetch("/api/projects").then(u=>u.json()).then(u=>{const c=u.projects||[];c.length>0&&i(c)}).catch(()=>{})},[]),k.useEffect(()=>{t&&r.length>0&&!r.includes(t)&&a(null)},[r,t,a]),m.jsx(cC.Provider,{value:{selectedProject:t,projects:r,setSelectedProject:a,setProjects:l},children:e})}function za(){return k.useContext(cC)}function vL({collapsed:e=!1}){const{selectedProject:t,projects:n,setSelectedProject:r}=za();return e?m.jsx("div",{className:"flex-shrink-0 px-3 py-3 border-b border-base-300/50",children:m.jsx(_r,{text:t??"All Projects",children:m.jsx("button",{className:`btn btn-ghost btn-sm btn-square w-full ${t?"text-primary":"text-base-content/50"}`,onClick:()=>r(null),children:m.jsx(se,{icon:"lucide:folder-open",size:20})})})}):m.jsxs("div",{className:"flex-shrink-0 px-3 py-3 border-b border-base-300/50 relative z-10",children:[m.jsx("label",{className:"text-[10px] font-semibold uppercase tracking-wider text-base-content/40 px-1 mb-1.5 block",children:"Project"}),m.jsxs("select",{className:"select select-bordered select-sm w-full text-sm bg-base-100",value:t??"",onChange:i=>r(i.target.value||null),children:[m.jsx("option",{value:"",children:"All Projects"}),n.map(i=>m.jsx("option",{value:i,children:i},i))]})]})}function yL({currentPath:e,workerStatus:t,version:n,queueDepth:r,collapsed:i,onToggleCollapse:a}){return m.jsxs("aside",{className:`dashboard-sidebar flex flex-col border-r border-base-300 transition-all duration-300 h-screen sticky top-0 ${i?"w-[72px]":"w-64"}`,children:[m.jsxs("div",{className:"flex-shrink-0 flex items-center justify-between p-4 border-b border-base-300/50",children:[!i&&m.jsx(HM,{}),m.jsx("button",{onClick:a,className:"btn btn-ghost btn-sm btn-square",title:i?"Expand sidebar":"Collapse sidebar",children:m.jsx(se,{icon:i?"lucide:panel-left-open":"lucide:panel-left-close",size:18})})]}),m.jsx(vL,{collapsed:i}),m.jsx("div",{className:"flex-1",children:m.jsx(fL,{currentPath:e,collapsed:i})}),m.jsx("div",{className:"flex-shrink-0",children:m.jsx(dL,{workerStatus:t,version:n,queueDepth:r,collapsed:i})})]})}const fC={solo:{label:"Solo",variant:"primary"},team:{label:"Team",variant:"accent"},trial:{label:"Trial",variant:"warning"},standard:{label:"Solo",variant:"primary"},enterprise:{label:"Team",variant:"accent"}};function Gw(e){const t=fC[e.tier??""],n=[(t==null?void 0:t.label)??e.tier??"Unknown"];return e.email&&n.push(e.email),e.tier==="trial"&&e.daysRemaining!=null&&n.push(`${e.daysRemaining} days remaining`),n.join(" · ")}function Yw(e){return e.isExpired||e.tier==="trial"}function xL({license:e,isLoading:t,onClick:n}){if(t||!e||!e.tier)return null;const i=Yw(e)&&!!n?{onClick:n,role:"button",className:"cursor-pointer"}:{};if(e.isExpired)return m.jsx(_r,{text:Gw(e),position:"bottom",children:m.jsx("span",{...i,children:m.jsx(Te,{variant:"error",size:"xs",children:"Expired"})})});const a=fC[e.tier];if(!a)return null;let l=a.label;e.tier==="trial"&&e.daysRemaining!=null&&(l=`${a.label} · ${e.daysRemaining}d left`);const u=!Yw(e)&&e.email;return m.jsx(_r,{text:Gw(e),position:"bottom",children:m.jsxs("span",{...i,className:`${i.className??""} inline-flex items-center gap-1.5`,children:[m.jsx(Te,{variant:a.variant,size:"xs",children:l}),u&&m.jsx("span",{className:"text-base-content/50",children:e.email})]})})}function bL({open:e,onClose:t,onActivated:n}){const[r,i]=k.useState(""),[a,l]=k.useState(null),[u,c]=k.useState(!1),f=k.useCallback(async()=>{const p=r.trim();if(p){l(null),c(!0);try{const y=await(await fetch("/api/license/activate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:p})})).json();y.success?(i(""),n(),t()):l(y.error??"Activation failed")}catch{l("Connection failed")}finally{c(!1)}}},[r,n,t]),d=k.useCallback(p=>{p.key==="Enter"&&!u&&f()},[f,u]);return m.jsxs(VE,{open:e,onClose:t,title:"Activate License",children:[m.jsxs("div",{className:"flex flex-col gap-3",children:[m.jsx("input",{id:"license-key-input",type:"text",className:"input input-bordered w-full",placeholder:"Enter your license key",value:r,onChange:p=>{i(p.target.value),l(null)},onKeyDown:d,disabled:u,autoFocus:!0}),a&&m.jsx("p",{className:"text-error text-sm",children:a}),m.jsx("div",{className:"bg-base-200/50 rounded-lg p-3 space-y-1.5",children:m.jsxs("p",{className:"text-xs text-base-content/60",children:["Don't have a key? Get one at"," ",m.jsx("a",{href:"https://claude-pilot.com/#pricing",target:"_blank",rel:"noopener noreferrer",className:"text-primary hover:underline font-medium",children:"claude-pilot.com"})]})})]}),m.jsxs("div",{className:"modal-action",children:[m.jsx("button",{className:"btn btn-ghost btn-sm",onClick:t,disabled:u,children:"Cancel"}),m.jsx("button",{className:"btn btn-primary btn-sm",onClick:f,disabled:u||!r.trim(),children:u?"Activating...":"Activate"})]})]})}function dC(){const[e,t]=k.useState(null),[n,r]=k.useState(!0),i=k.useCallback((l=!1)=>{fetch(l?"/api/license?refresh=1":"/api/license").then(c=>c.json()).then(c=>{t(c),r(!1)}).catch(()=>{r(!1)})},[]);k.useEffect(()=>{i();const l=setInterval(()=>i(!0),6e4);return()=>clearInterval(l)},[i]);const a=k.useCallback(()=>i(!0),[i]);return{license:e,isLoading:n,refetch:a}}function wL({theme:e,onToggleTheme:t,onToggleLogs:n}){const[r,i]=k.useState(!1),[a,l]=k.useState(!1);k.useEffect(()=>{fetch("/api/auth/status").then(c=>c.json()).then(c=>{i(c.authRequired)}).catch(()=>{i(!1)})},[]);const u=async()=>{l(!0);try{await fetch("/api/auth/logout",{method:"POST"}),window.location.href="/login"}catch{l(!1)}};return m.jsxs("div",{className:"flex items-center gap-2",children:[n&&m.jsx(_r,{text:"Toggle console logs",position:"bottom",children:m.jsx(Yt,{variant:"ghost",size:"sm",onClick:n,children:m.jsx(se,{icon:"lucide:terminal",size:18})})}),m.jsx(_r,{text:`Switch to ${e==="light"?"dark":"light"} mode`,position:"bottom",children:m.jsx(Yt,{variant:"ghost",size:"sm",onClick:t,children:m.jsx(se,{icon:e==="light"?"lucide:moon":"lucide:sun",size:18})})}),m.jsx(_r,{text:"Repository",position:"bottom",children:m.jsx("a",{href:"https://github.com/maxritter/claude-pilot",target:"_blank",rel:"noopener noreferrer",className:"btn btn-ghost btn-sm",children:m.jsx(se,{icon:"lucide:git-branch",size:18})})}),r&&m.jsx(_r,{text:"Logout",position:"bottom",children:m.jsx(Yt,{variant:"ghost",size:"sm",onClick:u,disabled:a,children:m.jsx(se,{icon:"lucide:log-out",size:18})})})]})}function kL({theme:e,onToggleTheme:t,onToggleLogs:n}){const{license:r,isLoading:i,refetch:a}=dC(),[l,u]=k.useState(!1);return m.jsxs("header",{className:"h-14 bg-base-100 border-b border-base-300/50 flex items-center justify-between px-6 gap-4",children:[m.jsxs("div",{className:"flex items-center gap-2 text-xs text-base-content/40",children:[m.jsx(se,{icon:"lucide:plane",size:14,className:"text-primary/60"}),m.jsxs("span",{children:["© ",new Date().getFullYear()," ",m.jsx("a",{href:"https://claude-pilot.com",target:"_blank",rel:"noopener noreferrer",className:"text-primary/70 hover:text-primary transition-colors",children:"Claude Pilot"})]}),m.jsx("span",{className:"text-base-content/20",children:"|"}),m.jsxs("span",{children:["Created by"," ",m.jsx("a",{href:"https://maxritter.net",target:"_blank",rel:"noopener noreferrer",className:"text-primary/70 hover:text-primary transition-colors",children:"Max Ritter"})]}),!i&&(r==null?void 0:r.tier)&&m.jsx("span",{className:"text-base-content/20",children:"|"}),m.jsx(xL,{license:r,isLoading:i,onClick:()=>u(!0)}),!i&&(!r||!r.tier||r.tier==="trial"||r.isExpired)&&m.jsxs(m.Fragment,{children:[m.jsx("span",{className:"text-base-content/20",children:"|"}),m.jsx("a",{href:"https://claude-pilot.com/#pricing",target:"_blank",rel:"noopener noreferrer",className:"text-primary/70 hover:text-primary transition-colors",children:"Get a license"}),m.jsxs("button",{onClick:()=>u(!0),className:"btn btn-primary btn-xs gap-1",children:[m.jsx(se,{icon:"lucide:key",size:12}),"Activate"]})]})]}),m.jsx(wL,{theme:e,onToggleTheme:t,onToggleLogs:n}),m.jsx(bL,{open:l,onClose:()=>u(!1),onActivated:a})]})}function SL({children:e,currentPath:t,workerStatus:n,version:r,queueDepth:i,theme:a,onToggleTheme:l,onToggleLogs:u,sidebarCollapsed:c,onToggleSidebar:f}){const d=a==="dark"?"claude-pilot":"claude-pilot-light";return m.jsxs("div",{className:"dashboard-layout flex min-h-screen","data-theme":d,children:[m.jsx(yL,{currentPath:t,workerStatus:n,version:r,queueDepth:i,collapsed:c,onToggleCollapse:f}),m.jsxs("div",{className:"flex-1 flex flex-col min-w-0",children:[m.jsx(kL,{theme:a,onToggleTheme:l,onToggleLogs:u}),m.jsx("main",{className:"flex-1 p-6 overflow-y-auto",children:e})]})]})}function hC(){const[e,t]=k.useState(()=>Xw(window.location.hash));k.useEffect(()=>{const r=()=>{t(Xw(window.location.hash))};return window.addEventListener("hashchange",r),()=>window.removeEventListener("hashchange",r)},[]);const n=k.useCallback(r=>{window.location.hash=r},[]);return{path:e.path,params:e.params,navigate:n}}function Xw(e){const t=e.replace(/^#/,"")||"/",n={},[r,i]=t.split("?");return i&&new URLSearchParams(i).forEach((l,u)=>{n[u]=l}),{path:r,params:n}}function jL({routes:e,fallback:t}){const{path:n}=hC();for(const r of e){const i=PL(r.path,n);if(i){const a=r.component;return m.jsx(a,{...i.params})}}return t?m.jsx(m.Fragment,{children:t}):null}function PL(e,t){if(e===t)return{params:{}};const n=e.split("/"),r=t.split("/");if(n.length!==r.length)return null;const i={};for(let a=0;a=0?"text-success":"text-error"}`,children:[m.jsx(se,{icon:i.value>=0?"lucide:trending-up":"lucide:trending-down",size:16}),m.jsxs("span",{className:"ml-1",children:[Math.abs(i.value),"% ",i.label]})]})]})})}function EL({stats:e,specStats:t}){const n=t&&t.totalSpecs>0?`${Math.round(t.verified/t.totalSpecs*100)}% success`:void 0;return m.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4",children:[m.jsx(Bi,{icon:"lucide:brain",label:"Observations",value:e.observations.toLocaleString()}),m.jsx(Bi,{icon:"lucide:scroll",label:"Total Specs",value:((t==null?void 0:t.totalSpecs)??0).toLocaleString()}),m.jsx(Bi,{icon:"lucide:shield-check",label:"Verified",value:((t==null?void 0:t.verified)??0).toLocaleString(),subtext:n}),m.jsx(Bi,{icon:"lucide:loader",label:"In Progress",value:((t==null?void 0:t.inProgress)??0).toLocaleString()}),m.jsx(Bi,{icon:"lucide:history",label:"Sessions",value:e.sessions.toLocaleString()}),m.jsx(Bi,{icon:"lucide:clock",label:"Last Observation",value:e.lastObservationAt||"None yet"}),m.jsx(Bi,{icon:"lucide:file-text",label:"Summaries",value:e.summaries.toLocaleString()}),m.jsx(Bi,{icon:"lucide:check-square",label:"Tasks Completed",value:((t==null?void 0:t.totalTasksCompleted)??0).toLocaleString(),subtext:t&&t.totalTasks>0?`of ${t.totalTasks} total`:void 0})]})}function CL({status:e,version:t,uptime:n,queueDepth:r=0}){const i=e==="processing",a=e!=="offline";return m.jsx(wt,{children:m.jsxs(kt,{children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(Vi,{children:"Worker Status"}),m.jsx(Te,{variant:"ghost",size:"sm",children:"Workspace"})]}),m.jsx(Te,{variant:a?"success":"error",children:a?"Online":"Offline"})]}),m.jsxs("div",{className:"space-y-3",children:[t&&m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:tag",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"Version:"}),m.jsx("span",{className:"font-mono",children:t})]}),n&&m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:clock",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"Uptime:"}),m.jsx("span",{children:n})]}),m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:i?"lucide:loader-2":"lucide:layers",size:16,className:`${i?"text-warning animate-spin":"text-base-content/50"}`}),m.jsx("span",{className:"text-base-content/70",children:"Queue:"}),m.jsxs("span",{className:i?"text-warning font-medium":"",children:[r," items"]}),i&&m.jsx(Te,{variant:"warning",size:"xs",children:"Processing"})]})]})]})})}function OL(e){if(!e)return"Never";try{const t=new Date(e),r=new Date().getTime()-t.getTime();return r<6e4?"just now":r<36e5?`${Math.floor(r/6e4)}m ago`:r<864e5?`${Math.floor(r/36e5)}h ago`:`${Math.floor(r/864e5)}d ago`}catch{return"Unknown"}}function NL({isIndexed:e,files:t,generatedAt:n,isReindexing:r}){return m.jsx(wt,{children:m.jsxs(kt,{className:"flex flex-col",children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(Vi,{children:"Codebase Indexing"}),m.jsx(Te,{variant:"ghost",size:"sm",children:"Workspace"})]}),r?m.jsxs(Te,{variant:"warning",children:[m.jsx(se,{icon:"lucide:refresh-cw",size:12,className:"mr-1 animate-spin"}),"Indexing..."]}):m.jsx(Te,{variant:e?"success":"warning",children:e?"Indexed":"Not Indexed"})]}),m.jsxs("div",{className:"space-y-3 flex-1",children:[m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:file-search",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"Files:"}),m.jsx("span",{className:"font-semibold",children:t.toLocaleString()})]}),m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:clock",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"Last indexed:"}),m.jsx("span",{children:OL(n)})]})]}),!r&&m.jsx("p",{className:"text-xs text-base-content/50 mt-3",children:t===0?m.jsxs(m.Fragment,{children:["Run ",m.jsx("code",{className:"bg-base-300/50 px-1 rounded",children:"/sync"})," in Claude Code to index your codebase."]}):m.jsxs(m.Fragment,{children:["Re-index with ",m.jsx("code",{className:"bg-base-300/50 px-1 rounded",children:"/sync"})," or ",m.jsx("code",{className:"bg-base-300/50 px-1 rounded",children:"vexor index --clear"})]})})]})})}function AL(e){try{const t=new URL(e);return(t.host+t.pathname).replace(/\.git$/,"")}catch{return e}}function _L(e){const{installed:t,version:n,configured:r,vaultUrl:i,assets:a,catalog:l,isLoading:u}=e;if(u)return m.jsx(wt,{children:m.jsxs(kt,{children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsx(Vi,{children:"Vault"}),m.jsx(Te,{variant:"ghost",children:"Loading..."})]}),m.jsxs("div",{className:"space-y-3 animate-pulse",children:[m.jsx("div",{className:"h-4 bg-base-300 rounded w-3/4"}),m.jsx("div",{className:"h-4 bg-base-300 rounded w-1/2"})]})]})});const c=new Set(a.map(d=>d.name)),f=l.filter(d=>!c.has(d.name)).length;return t?r?m.jsx(wt,{children:m.jsxs(kt,{className:"flex flex-col",children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(Vi,{children:"Vault"}),m.jsx(Te,{variant:"ghost",size:"sm",children:"Workspace"})]}),m.jsx(Te,{variant:"success",children:"Connected"})]}),m.jsxs("div",{className:"space-y-3 flex-1",children:[i&&m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:git-branch",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"Vault:"}),m.jsx("span",{className:"font-mono text-xs truncate",children:AL(i)})]}),m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:package",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"Installed:"}),m.jsx("span",{className:"font-semibold",children:a.length}),f>0&&m.jsxs("span",{className:"text-base-content/40",children:["(",f," available)"]})]}),m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:cloud",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"In vault:"}),m.jsx("span",{className:"font-semibold",children:l.length})]})]})]})}):m.jsx(wt,{children:m.jsxs(kt,{children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(Vi,{children:"Vault"}),n&&m.jsxs(Te,{variant:"ghost",size:"sm",children:["v",n]})]}),m.jsx(Te,{variant:"warning",children:"Not Configured"})]}),m.jsx("div",{className:"text-sm text-base-content/60",children:m.jsxs("p",{children:["sx is installed but no vault is configured. Run ",m.jsx("span",{className:"font-mono text-primary",children:"/vault"})," to set up."]})})]})}):m.jsx(wt,{children:m.jsxs(kt,{children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsx(Vi,{children:"Vault"}),m.jsx(Te,{variant:"ghost",children:"Not Installed"})]}),m.jsx("div",{className:"text-sm text-base-content/60",children:m.jsxs("p",{children:["sx is not installed. Run the Pilot installer or install from ",m.jsx("span",{className:"font-mono text-primary",children:"skills.new"}),"."]})})]})})}const IL={plan:{label:"Planning",color:"info",border:"border-l-info"},implement:{label:"Implementing",color:"warning",border:"border-l-warning"},verify:{label:"Verifying",color:"accent",border:"border-l-accent"}};function TL({plan:e}){const t=IL[e.phase],n=e.total>0?e.completed/e.total*100:0;return m.jsxs("div",{className:`border-l-4 ${t.border} pl-3 py-2`,children:[m.jsxs("div",{className:"flex items-center justify-between gap-2",children:[m.jsx("span",{className:"font-medium text-sm truncate",title:e.name,children:e.name}),m.jsxs("div",{className:"flex items-center gap-2 shrink-0",children:[m.jsx(Te,{variant:t.color,size:"xs",children:t.label}),m.jsxs("span",{className:"text-xs font-mono text-base-content/60",children:[e.completed,"/",e.total]})]})]}),m.jsx("div",{className:"w-full bg-base-300 rounded-full h-1.5 mt-1.5",children:m.jsx("div",{className:`h-1.5 rounded-full transition-all duration-300 ${n===100?"bg-success":"bg-primary"}`,style:{width:`${n}%`}})})]})}function ML({plans:e}){return e.length===0?m.jsx(wt,{children:m.jsxs(kt,{children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(Vi,{children:"Specification Status"}),m.jsx(Te,{variant:"ghost",size:"sm",children:"Workspace"})]}),m.jsx(Te,{variant:"ghost",children:"Quick Mode"})]}),m.jsxs("div",{className:"text-sm text-base-content/60",children:[m.jsx("p",{children:"No active spec-driven plan."}),m.jsxs("p",{className:"mt-2",children:["Use ",m.jsx("code",{className:"text-primary",children:"/spec"})," for complex tasks."]})]})]})}):m.jsx(wt,{children:m.jsxs(kt,{children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(Vi,{children:"Specification Status"}),m.jsx(Te,{variant:"ghost",size:"sm",children:"Workspace"})]}),m.jsxs(Te,{variant:"info",children:[e.length," active"]})]}),m.jsx("div",{className:"space-y-2",children:e.map((t,n)=>m.jsx(TL,{plan:t},t.filePath??`${t.name}-${n}`))})]})})}const DL=6e4;function pC(){const{selectedProject:e,setProjects:t}=za(),[n,r]=k.useState({observations:0,summaries:0,sessions:0,lastObservationAt:null,projects:0}),[i,a]=k.useState({status:"offline"}),[l,u]=k.useState({isIndexed:!1,files:0,mode:"",model:"",generatedAt:null,isReindexing:!1}),[c,f]=k.useState([]),[d,p]=k.useState({active:!1,plans:[]}),[g,y]=k.useState({branch:null,staged:0,unstaged:0,untracked:0}),[x,S]=k.useState({totalSpecs:0,verified:0,inProgress:0,pending:0,avgIterations:0,totalTasksCompleted:0,totalTasks:0,completionTimeline:[],recentlyVerified:[]}),[w,P]=k.useState([]),[C,O]=k.useState({installed:!1,version:null,configured:!1,vaultUrl:null,profile:null,assets:[],catalog:[],isInstalling:!1}),[A,I]=k.useState(!0),E=k.useCallback(async()=>{try{const W=await(await fetch("/api/vault/status")).json();O(W)}catch{}},[]),L=k.useCallback(async()=>{try{const R=e?`?project=${encodeURIComponent(e)}`:"",M=await(await fetch(`/api/vexor/status${R}`)).json();u({isIndexed:M.isIndexed??!1,files:M.files??0,mode:M.mode??"",model:M.model??"",generatedAt:M.generatedAt??null,isReindexing:M.isReindexing??!1})}catch{}},[e]),F=k.useCallback(async()=>{var W,M,Z,Y,Q,he,de;const R=e?`?project=${encodeURIComponent(e)}`:"";try{const[J,ae,T,$,U,_,te,fe]=await Promise.all([fetch(`/api/stats${R}`),fetch("/health"),fetch(`/api/observations?limit=5${e?`&project=${encodeURIComponent(e)}`:""}`),fetch("/api/projects"),fetch(`/api/plan${R}`),fetch(`/api/git${R}`),fetch(`/api/plans/stats${R}`).catch(()=>null),fetch(`/api/analytics/timeline?range=30d${e?`&project=${encodeURIComponent(e)}`:""}`).catch(()=>null)]),ce=await J.json(),Se=await ae.json(),je=await T.json(),X=await $.json(),we=await U.json(),Ae=await _.json();if(te!=null&&te.ok){const Pt=await te.json();S(Pt)}if(fe!=null&&fe.ok){const Pt=await fe.json();P(Pt.data||[])}const ie=je.items||je.observations||je||[],rt=Array.isArray(ie)?ie:[],ze=rt.length>0&&((W=rt[0])==null?void 0:W.created_at)||null,ct=X.projects||[];t(ct),r({observations:((M=ce.database)==null?void 0:M.observations)||0,summaries:((Z=ce.database)==null?void 0:Z.summaries)||0,sessions:((Y=ce.database)==null?void 0:Y.sessions)||0,lastObservationAt:ze?Qw(ze):null,projects:ct.length}),a({status:Se.status==="ok"?Se.isProcessing?"processing":"online":"offline",version:(Q=ce.worker)==null?void 0:Q.version,uptime:(he=ce.worker)!=null&&he.uptime?LL(ce.worker.uptime):void 0,queueDepth:Se.queueDepth||0,workspaceProject:(de=ce.worker)==null?void 0:de.workspaceProject});const ft=je.items||je.observations||je||[];f((Array.isArray(ft)?ft:[]).slice(0,5).map(Pt=>{var Ur;return{id:Pt.id,type:Pt.obs_type||Pt.type||"observation",title:Pt.title||((Ur=Pt.content)==null?void 0:Ur.slice(0,100))||"Untitled",project:Pt.project||"unknown",timestamp:Qw(Pt.created_at)}}));const Ut=we.plans||(we.plan?[we.plan]:[]);p({active:Ut.length>0,plans:Ut}),y({branch:Ae.branch||null,staged:Ae.staged||0,unstaged:Ae.unstaged||0,untracked:Ae.untracked||0})}catch(J){console.error("Failed to load stats:",J),a({status:"offline"})}finally{I(!1)}},[e,t]),H=k.useRef(F);return k.useEffect(()=>{H.current=F},[F]),k.useEffect(()=>{F()},[F]),k.useEffect(()=>{L(),E();const R=setInterval(L,DL),W=new EventSource("/stream");return W.onmessage=M=>{try{const Z=JSON.parse(M.data);Z.type==="processing_status"&&a(Y=>({...Y,status:Z.isProcessing?"processing":"online",queueDepth:Z.queueDepth??Y.queueDepth})),(Z.type==="new_observation"||Z.type==="new_summary"||Z.type==="plan_association_changed")&&H.current()}catch{}},()=>{clearInterval(R),W.close()}},[L,E]),{stats:n,workerStatus:i,vexorStatus:l,vaultStatus:C,recentActivity:c,planStatus:d,gitInfo:g,specStats:x,observationTimeline:w,isLoading:A,refreshStats:F}}function Qw(e){if(!e)return"";const t=new Date(e),r=new Date().getTime()-t.getTime();return r<6e4?"just now":r<36e5?`${Math.floor(r/6e4)}m ago`:r<864e5?`${Math.floor(r/36e5)}h ago`:t.toLocaleDateString()}function LL(e){return e<60?`${e}s`:e<3600?`${Math.floor(e/60)}m`:e<86400?`${Math.floor(e/3600)}h`:`${Math.floor(e/86400)}d`}function RL(){const{stats:e,workerStatus:t,vexorStatus:n,vaultStatus:r,planStatus:i,specStats:a,isLoading:l}=pC(),{selectedProject:u}=za();return l?m.jsx("div",{className:"flex items-center justify-center h-64",children:m.jsx("span",{className:"loading loading-spinner loading-lg"})}):m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Dashboard"}),m.jsx("p",{className:"text-base-content/60",children:u?`Filtered by: ${u}`:"Overview of your Pilot Console"})]}),m.jsx(EL,{stats:e,specStats:a}),(!u||u===t.workspaceProject)&&m.jsxs("div",{className:"space-y-4",children:[m.jsx("h2",{className:"text-sm font-semibold uppercase tracking-wider text-base-content/40",children:"Workspace"}),m.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6 [&>*]:h-full",children:[m.jsx(NL,{isIndexed:n.isIndexed,files:n.files,generatedAt:n.generatedAt,isReindexing:n.isReindexing}),m.jsx(CL,{status:t.status,version:t.version,uptime:t.uptime,queueDepth:t.queueDepth}),m.jsx(ML,{plans:i.plans}),m.jsx(_L,{...r,isLoading:l})]})]})]})}const zL=[{value:"all",label:"All Types"},{value:"observation",label:"Observations"},{value:"summary",label:"Summaries"},{value:"prompt",label:"Prompts"}];function $L({viewMode:e,onViewModeChange:t,filterType:n,onFilterTypeChange:r,totalCount:i,selectionMode:a,onToggleSelectionMode:l,selectedCount:u,onSelectAll:c,onExport:f,onDelete:d,isExporting:p,isDeleting:g,allSelected:y}){const x=[{label:"Export as JSON",onClick:()=>f("json"),icon:m.jsx(se,{icon:"lucide:file-json",size:16})},{label:"Export as CSV",onClick:()=>f("csv"),icon:m.jsx(se,{icon:"lucide:file-spreadsheet",size:16})},{label:"Export as Markdown",onClick:()=>f("markdown"),icon:m.jsx(se,{icon:"lucide:file-text",size:16})}];return m.jsxs("div",{className:"flex items-center justify-between gap-4 flex-wrap",children:[m.jsx("div",{className:"flex items-center gap-2",children:a?m.jsxs(m.Fragment,{children:[m.jsxs(Yt,{variant:"ghost",size:"sm",onClick:c,children:[m.jsx(se,{icon:y?"lucide:check-square":"lucide:square",size:16,className:"mr-1"}),y?"Deselect All":"Select All"]}),m.jsxs("span",{className:"text-sm text-base-content/60",children:[u," of ",i," selected"]})]}):m.jsxs("span",{className:"text-sm text-base-content/60",children:[i," items"]})}),m.jsx("div",{className:"flex items-center gap-2",children:a?m.jsxs(m.Fragment,{children:[m.jsx(KE,{trigger:m.jsxs(Yt,{variant:"primary",size:"sm",loading:p,disabled:u===0,children:[m.jsx(se,{icon:"lucide:download",size:16,className:"mr-1"}),"Export"]}),items:x}),m.jsxs(Yt,{variant:"error",size:"sm",onClick:d,loading:g,disabled:u===0,children:[m.jsx(se,{icon:"lucide:trash-2",size:16,className:"mr-1"}),"Delete"]}),m.jsx(Yt,{variant:"ghost",size:"sm",onClick:l,children:"Cancel"})]}):m.jsxs(m.Fragment,{children:[m.jsxs(Yt,{variant:"ghost",size:"sm",onClick:l,children:[m.jsx(se,{icon:"lucide:check-square",size:16,className:"mr-1"}),"Select"]}),m.jsx(QM,{options:zL,value:n,onChange:S=>r(S.target.value),selectSize:"sm",className:"w-40"}),m.jsxs("div",{className:"btn-group",children:[m.jsx(Yt,{variant:e==="grid"?"primary":"ghost",size:"sm",onClick:()=>t("grid"),children:m.jsx(se,{icon:"lucide:grid-3x3",size:16})}),m.jsx(Yt,{variant:e==="list"?"primary":"ghost",size:"sm",onClick:()=>t("list"),children:m.jsx(se,{icon:"lucide:list",size:16})})]})]})})]})}const FL={observation:{icon:"lucide:brain",variant:"info",color:"text-info"},summary:{icon:"lucide:file-text",variant:"warning",color:"text-warning"},prompt:{icon:"lucide:message-square",variant:"secondary",color:"text-secondary"},bugfix:{icon:"lucide:bug",variant:"error",color:"text-error"},feature:{icon:"lucide:sparkles",variant:"success",color:"text-success"},refactor:{icon:"lucide:refresh-cw",variant:"accent",color:"text-accent"},discovery:{icon:"lucide:search",variant:"info",color:"text-info"},decision:{icon:"lucide:git-branch",variant:"warning",color:"text-warning"},change:{icon:"lucide:pencil",variant:"secondary",color:"text-secondary"}},BL={icon:"lucide:circle",variant:"secondary",color:"text-secondary"};function UL({memory:e,viewMode:t,onDelete:n,onView:r,selectionMode:i,isSelected:a,onToggleSelection:l}){const u=FL[e.type]||BL,c=t==="grid",f=[{label:"View Details",onClick:()=>r==null?void 0:r(e.id),icon:m.jsx(se,{icon:"lucide:eye",size:16})},{label:"Copy ID",onClick:()=>navigator.clipboard.writeText(String(e.id)),icon:m.jsx(se,{icon:"lucide:copy",size:16})},{label:"Delete",onClick:()=>n==null?void 0:n(e.id),icon:m.jsx(se,{icon:"lucide:trash-2",size:16})}],d=()=>{i&&(l==null||l(e.id))};return m.jsx(wt,{className:`hover:shadow-md transition-shadow ${c?"":"flex flex-row"} ${i?"cursor-pointer":""} ${a?"ring-2 ring-primary":""}`,onClick:d,children:m.jsxs(kt,{className:c?"":"flex flex-row items-start gap-4 flex-1",children:[m.jsxs("div",{className:`flex items-start gap-3 ${c?"mb-3":"flex-1"}`,children:[i?m.jsx("div",{className:"flex items-center justify-center w-8 h-8 flex-shrink-0",children:m.jsx("input",{type:"checkbox",className:"checkbox checkbox-primary",checked:a,onChange:()=>l==null?void 0:l(e.id),onClick:p=>p.stopPropagation()})}):m.jsx("div",{className:`p-2 rounded-lg bg-base-200 ${u.color}`,children:m.jsx(se,{icon:u.icon,size:18})}),m.jsxs("div",{className:"flex-1 min-w-0",children:[m.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[m.jsx(Te,{variant:u.variant,size:"xs",children:e.type}),m.jsxs("span",{className:"text-xs text-base-content/50",children:["#",e.id]})]}),m.jsx("h3",{className:"font-medium text-sm line-clamp-2",children:e.title}),c&&e.facts&&e.facts.length>0?m.jsxs("ul",{className:"text-xs text-base-content/60 mt-1 space-y-0.5 list-disc list-inside",children:[e.facts.slice(0,3).map((p,g)=>m.jsx("li",{className:"line-clamp-1",children:p},g)),e.facts.length>3&&m.jsxs("li",{className:"text-base-content/40",children:["+",e.facts.length-3," more"]})]}):c&&e.content?m.jsx("p",{className:"text-xs text-base-content/60 mt-1 line-clamp-3",children:e.content}):null]})]}),m.jsxs("div",{className:`flex items-center gap-2 ${c?"justify-between mt-3 pt-3 border-t border-base-200":""}`,children:[m.jsxs("div",{className:"flex items-center gap-2 text-xs text-base-content/50",children:[m.jsx(se,{icon:"lucide:folder",size:14}),m.jsx("span",{className:"truncate max-w-24",children:e.project})]}),m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx("span",{className:"text-xs text-base-content/50",children:e.timestamp}),m.jsx(KE,{trigger:m.jsx(Yt,{variant:"ghost",size:"xs",className:"btn-square",children:m.jsx(se,{icon:"lucide:more-vertical",size:14})}),items:f})]})]}),c&&e.concepts&&e.concepts.length>0&&m.jsxs("div",{className:"flex flex-wrap gap-1 mt-2",children:[e.concepts.slice(0,3).map(p=>m.jsx(Te,{variant:"ghost",size:"xs",children:p},p)),e.concepts.length>3&&m.jsxs(Te,{variant:"ghost",size:"xs",children:["+",e.concepts.length-3]})]})]})})}const WL={observation:{icon:"lucide:brain",variant:"info"},summary:{icon:"lucide:file-text",variant:"warning"},prompt:{icon:"lucide:message-square",variant:"secondary"},bugfix:{icon:"lucide:bug",variant:"error"},feature:{icon:"lucide:sparkles",variant:"success"},refactor:{icon:"lucide:refresh-cw",variant:"accent"},discovery:{icon:"lucide:search",variant:"info"},decision:{icon:"lucide:git-branch",variant:"warning"},change:{icon:"lucide:pencil",variant:"secondary"}};function qL({memory:e,onClose:t}){const[n,r]=k.useState("content"),i=e?WL[e.type]||{icon:"lucide:circle",variant:"secondary"}:{icon:"lucide:circle",variant:"secondary"};return m.jsx(VE,{open:!!e,onClose:t,title:"Memory Details",children:e&&m.jsxs("div",{className:"space-y-4",children:[m.jsxs("div",{className:"flex items-start gap-3",children:[m.jsx("div",{className:`p-3 rounded-lg bg-base-200 text-${i.variant}`,children:m.jsx(se,{icon:i.icon,size:24})}),m.jsxs("div",{className:"flex-1 min-w-0",children:[m.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[m.jsx(Te,{variant:i.variant,size:"sm",children:e.type}),m.jsxs("span",{className:"text-sm text-base-content/50",children:["#",e.id]})]}),m.jsx("h3",{className:"text-lg font-semibold",children:e.title}),m.jsxs("div",{className:"flex items-center gap-2 mt-1 text-sm text-base-content/60",children:[m.jsx(se,{icon:"lucide:folder",size:14}),m.jsx("span",{children:e.project}),m.jsx("span",{children:"•"}),m.jsx("span",{children:e.timestamp})]})]})]}),m.jsxs("div",{className:"tabs tabs-boxed",children:[m.jsx("button",{className:`tab ${n==="content"?"tab-active":""}`,onClick:()=>r("content"),children:"Content"}),m.jsx("button",{className:`tab ${n==="metadata"?"tab-active":""}`,onClick:()=>r("metadata"),children:"Metadata"})]}),n==="content"&&m.jsx("div",{className:"bg-base-200 rounded-lg p-4 max-h-96 overflow-y-auto",children:e.facts&&e.facts.length>0?m.jsx("ul",{className:"text-sm space-y-2 list-disc list-inside",children:e.facts.map((a,l)=>m.jsx("li",{children:a},l))}):m.jsx("pre",{className:"text-sm whitespace-pre-wrap break-words",children:e.content||"No content available"})}),n==="metadata"&&m.jsxs("div",{className:"space-y-4",children:[e.concepts&&e.concepts.length>0&&m.jsxs("div",{children:[m.jsx("h4",{className:"text-sm font-medium mb-2",children:"Concepts"}),m.jsx("div",{className:"flex flex-wrap gap-1",children:e.concepts.map(a=>m.jsx(Te,{variant:"ghost",size:"sm",children:a},a))})]}),m.jsxs("div",{children:[m.jsx("h4",{className:"text-sm font-medium mb-2",children:"ID"}),m.jsx("code",{className:"text-xs bg-base-200 px-2 py-1 rounded",children:e.id})]})]})]})})}function HL({onSearch:e,isSearching:t,placeholder:n="Search your memories semantically..."}){const[r,i]=k.useState(""),a=l=>{l.preventDefault(),r.trim()&&e(r.trim())};return m.jsxs("form",{onSubmit:a,className:"flex gap-2",children:[m.jsxs("div",{className:"relative flex-1",children:[m.jsx(se,{icon:"lucide:search",size:20,className:"absolute left-4 top-1/2 -translate-y-1/2 text-base-content/50"}),m.jsx("input",{type:"search",placeholder:n,value:r,onChange:l=>i(l.target.value),className:"input input-bordered w-full pl-12 pr-4"})]}),m.jsx(Yt,{type:"submit",loading:t,disabled:!r.trim(),children:"Search"})]})}const VL={observation:{icon:"lucide:brain",variant:"info",label:"Observation"},summary:{icon:"lucide:file-text",variant:"warning",label:"Summary"},prompt:{icon:"lucide:message-square",variant:"secondary",label:"Prompt"},bugfix:{icon:"lucide:bug",variant:"error",label:"Bug Fix"},feature:{icon:"lucide:sparkles",variant:"success",label:"Feature"},refactor:{icon:"lucide:refresh-cw",variant:"accent",label:"Refactor"},discovery:{icon:"lucide:search",variant:"info",label:"Discovery"},decision:{icon:"lucide:git-branch",variant:"warning",label:"Decision"},change:{icon:"lucide:pencil",variant:"secondary",label:"Change"}},KL={icon:"lucide:circle",variant:"secondary",label:"Unknown"};function GL(e){try{return new Date(e).toLocaleDateString("en-US",{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}catch{return e}}function YL({result:e}){const t=e.obsType||e.type,n=VL[t]||KL,r=Math.round(e.score*100),i=a=>a>=.7?"text-success":a>=.4?"text-warning":"text-base-content/50";return m.jsx(wt,{className:"hover:shadow-md transition-shadow",children:m.jsx(kt,{children:m.jsxs("div",{className:"flex items-start gap-3",children:[m.jsx("div",{className:"p-2 rounded-lg bg-base-200 shrink-0",children:m.jsx(se,{icon:n.icon,size:18})}),m.jsxs("div",{className:"flex-1 min-w-0",children:[m.jsxs("div",{className:"flex items-center gap-2 mb-1 flex-wrap",children:[m.jsx(Te,{variant:n.variant,size:"xs",children:n.label}),m.jsxs("span",{className:"text-xs text-base-content/50",children:["#",e.id]}),e.score>0&&m.jsxs("span",{className:`ml-auto text-xs font-mono ${i(e.score)}`,children:[r,"% match"]})]}),m.jsx("h3",{className:"font-medium truncate",children:e.title}),m.jsx("p",{className:"text-sm text-base-content/60 mt-1 line-clamp-2",children:e.content}),m.jsxs("div",{className:"flex items-center gap-4 mt-3 text-xs text-base-content/50",children:[e.project&&m.jsxs("span",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:folder",size:12}),e.project]}),m.jsxs("span",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:clock",size:12}),GL(e.timestamp)]})]})]}),e.score>0&&m.jsxs("div",{className:"w-16 shrink-0 hidden sm:block",children:[m.jsx("div",{className:"h-2 bg-base-200 rounded-full overflow-hidden",children:m.jsx("div",{className:`h-full rounded-full transition-all ${e.score>=.7?"bg-success":e.score>=.4?"bg-warning":"bg-base-content/30"}`,style:{width:`${r}%`}})}),m.jsx("div",{className:"text-[10px] text-center mt-1 text-base-content/50",children:"similarity"})]})]})})})}const XL=12e4;function QL(){const{selectedProject:e}=za(),[t,n]=k.useState(!1),[r,i]=k.useState([]),[a,l]=k.useState(!1),[u,c]=k.useState(null),[f,d]=k.useState(null),p=k.useRef(null),g=k.useRef(!1),y=k.useCallback(async S=>{var C;(C=p.current)==null||C.abort(),g.current=!1;const w=new AbortController;p.current=w;const P=setTimeout(()=>w.abort(),XL);l(!0),n(!0),c(null);try{const O=new URLSearchParams({query:S,limit:"30"});e&&O.set("project",e);const A=await fetch(`/api/search/semantic?${O}`,{signal:w.signal});if(!A.ok)throw new Error(`Search failed with status ${A.status}`);const I=await A.json();i(I.results||[]),d({usedSemantic:I.usedSemantic,vectorDbAvailable:I.vectorDbAvailable})}catch(O){if(g.current)return;O.name==="AbortError"?c("Search timed out. Please try again."):c("Search failed. Please try again."),i([]),d(null)}finally{clearTimeout(P),g.current||l(!1)}},[e]),x=k.useCallback(()=>{var S;g.current=!0,(S=p.current)==null||S.abort(),n(!1),i([]),d(null),c(null),l(!1)},[]);return k.useEffect(()=>()=>{var S;(S=p.current)==null||S.abort()},[]),{isSearchMode:t,searchResults:r,isSearching:a,searchError:u,searchMeta:f,handleSearch:y,handleClearSearch:x}}function Zw(){var $;const[e,t]=k.useState([]),[n,r]=k.useState(!0),[i,a]=k.useState("grid"),[l,u]=k.useState("all"),[c,f]=k.useState(null),[d,p]=k.useState(!1),[g,y]=k.useState(new Set),[x,S]=k.useState(!1),[w,P]=k.useState(!1),C=uC(),{selectedProject:O}=za(),{isSearchMode:A,searchResults:I,isSearching:E,searchError:L,searchMeta:F,handleSearch:H,handleClearSearch:R}=QL(),W=k.useCallback(async U=>{d&&(p(!1),y(new Set)),await H(U)},[d,H]),M=k.useCallback(async()=>{r(!0);try{const U=new URLSearchParams;l!=="all"&&U.set("type",l),O&&U.set("project",O),U.set("limit","50");const te=await(await fetch(`/api/observations?${U}`)).json(),fe=te.items||te.observations||[];t(fe.map(ce=>({id:ce.id,type:ce.type||"observation",title:ce.title||"Untitled",content:ce.narrative||ce.content||"",facts:ce.facts?typeof ce.facts=="string"?JSON.parse(ce.facts):ce.facts:[],project:ce.project||"unknown",timestamp:Z(ce.created_at),concepts:ce.concepts?typeof ce.concepts=="string"?JSON.parse(ce.concepts):ce.concepts:[]})))}catch(U){console.error("Failed to fetch memories:",U)}finally{r(!1)}},[l,O]);function Z(U){if(!U)return"";const _=new Date(U),fe=new Date().getTime()-_.getTime();return fe<6e4?"just now":fe<36e5?`${Math.floor(fe/6e4)}m ago`:fe<864e5?`${Math.floor(fe/36e5)}h ago`:_.toLocaleDateString()}k.useEffect(()=>{M()},[M]);const Y=async U=>{if(confirm("Delete this memory?"))try{await fetch(`/api/observation/${U}`,{method:"DELETE"}),t(_=>_.filter(te=>te.id!==U))}catch(_){console.error("Failed to delete:",_)}},Q=U=>{const _=e.find(te=>te.id===U);_&&f(_)},he=U=>{y(_=>{const te=new Set(_);return te.has(U)?te.delete(U):te.add(U),te})},de=()=>{g.size===e.length?y(new Set):y(new Set(e.map(U=>U.id)))},J=()=>{p(!1),y(new Set)},ae=async U=>{if(g.size===0){C.error("No memories selected");return}S(!0);try{const _=Array.from(g).join(","),te=`/api/export?format=${U}&ids=${_}`,ce=await(await fetch(te)).blob(),Se=window.URL.createObjectURL(ce),je=document.createElement("a");je.href=Se,je.download=`pilot-memory-export-${new Date().toISOString().split("T")[0]}.${U==="markdown"?"md":U}`,document.body.appendChild(je),je.click(),document.body.removeChild(je),window.URL.revokeObjectURL(Se),C.success(`Exported ${g.size} memories`)}catch{C.error("Export failed")}finally{S(!1)}},T=async()=>{if(g.size===0){C.error("No memories selected");return}if(confirm(`Delete ${g.size} memories? This cannot be undone.`)){P(!0);try{const U=await fetch("/api/observations/delete",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({ids:Array.from(g)})});if(U.ok){const _=await U.json();C.success(`Deleted ${_.deletedCount} memories`),t(te=>te.filter(fe=>!g.has(fe.id))),y(new Set),p(!1)}else C.error("Delete failed")}catch{C.error("Delete failed")}finally{P(!1)}}};return m.jsxs("div",{className:"space-y-6",children:[m.jsxs("div",{children:[m.jsxs("div",{className:"flex items-center gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Memories"}),m.jsx(lC,{project:O})]}),m.jsx("p",{className:"text-base-content/60",children:A?"Search results":"Browse and manage your stored memories"})]}),m.jsx(HL,{onSearch:W,isSearching:E,placeholder:"Search memories semantically..."}),A&&m.jsx("div",{className:"flex items-center gap-2",children:m.jsxs(Yt,{variant:"ghost",size:"sm",onClick:R,children:[m.jsx(se,{icon:"lucide:x",size:16,className:"mr-1"}),"Clear search"]})}),A&&F&&m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[F.vectorDbAvailable?F.usedSemantic?m.jsxs(Te,{variant:"success",outline:!0,size:"sm",children:[m.jsx(se,{icon:"lucide:brain",size:14,className:"mr-1"}),"Semantic Search Active"]}):m.jsxs(Te,{variant:"warning",outline:!0,size:"sm",children:[m.jsx(se,{icon:"lucide:filter",size:14,className:"mr-1"}),"Filter-only Mode"]}):m.jsxs(Te,{variant:"error",outline:!0,size:"sm",children:[m.jsx(se,{icon:"lucide:alert-triangle",size:14,className:"mr-1"}),"Vector DB Unavailable"]}),m.jsx("span",{className:"text-base-content/50",children:F.usedSemantic?"Results ranked by semantic similarity":F.vectorDbAvailable?"Enter a query for semantic ranking":"Install Chroma for semantic search"})]}),!A&&m.jsx($L,{viewMode:i,onViewModeChange:a,filterType:l,onFilterTypeChange:u,totalCount:e.length,selectionMode:d,onToggleSelectionMode:()=>d?J():p(!0),selectedCount:g.size,onSelectAll:de,onExport:ae,onDelete:T,isExporting:x,isDeleting:w,allSelected:e.length>0&&g.size===e.length}),L&&!E&&m.jsxs("div",{className:"alert alert-error",children:[m.jsx(se,{icon:"lucide:alert-circle",size:16}),m.jsx("span",{children:L})]}),A?E?m.jsxs("div",{className:"flex flex-col items-center justify-center h-64 gap-3",children:[m.jsx(Xi,{size:"lg"}),m.jsx("span",{className:"text-sm text-base-content/50",children:"Searching memories..."})]}):L?null:I.length===0?m.jsx(Eo,{icon:"lucide:search-x",title:"No results found",description:"Try a different query"}):m.jsxs("div",{className:"space-y-3",children:[m.jsxs("div",{className:"text-sm text-base-content/60",children:[I.length," results",(F==null?void 0:F.usedSemantic)&&(($=I[0])==null?void 0:$.score)>0&&m.jsxs("span",{className:"ml-2",children:["(best match: ",Math.round(I[0].score*100),"% similarity)"]})]}),I.map(U=>m.jsx(YL,{result:U},`${U.type}-${U.id}`))]}):n?m.jsx("div",{className:"flex items-center justify-center h-64",children:m.jsx(Xi,{size:"lg"})}):e.length===0?m.jsx(Eo,{icon:"lucide:brain",title:"No memories found",description:"Memories will appear here as you use Claude Code"}):m.jsx("div",{className:i==="grid"?"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4":"space-y-3",children:e.map(U=>m.jsx(UL,{memory:U,viewMode:i,onDelete:Y,onView:Q,selectionMode:d,isSelected:g.has(U.id),onToggleSelection:he},U.id))}),m.jsx(qL,{memory:c,onClose:()=>f(null)})]})}const Jw={active:{variant:"warning",icon:"lucide:play"},completed:{variant:"success",icon:"lucide:check"},failed:{variant:"error",icon:"lucide:x"}};function ZL(e){return new Date(e).toLocaleDateString("en-US",{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}function JL(e,t){if(!t)return"ongoing";const n=t-e,r=Math.floor(n/6e4);if(r<1)return"< 1 min";if(r<60)return`${r} min`;const i=Math.floor(r/60),a=r%60;return`${i}h ${a}m`}function eR({session:e,isExpanded:t,onToggle:n}){const r=Jw[e.status]||Jw.active;return m.jsx(wt,{className:`cursor-pointer hover:shadow-md transition-shadow ${t?"ring-2 ring-primary":""}`,onClick:n,children:m.jsx(kt,{children:m.jsxs("div",{className:"flex items-start gap-4",children:[m.jsx("div",{className:"p-2 rounded-lg bg-base-200",children:m.jsx(se,{icon:r.icon,size:20,className:`text-${r.variant}`})}),m.jsxs("div",{className:"flex-1 min-w-0",children:[m.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[m.jsx(Te,{variant:r.variant,size:"sm",children:e.status}),m.jsxs("span",{className:"text-xs text-base-content/50",children:["#",e.id]})]}),m.jsx("h3",{className:"font-medium line-clamp-1",children:e.user_prompt||e.project||"Untitled Session"}),m.jsxs("div",{className:"flex items-center gap-4 mt-2 text-sm text-base-content/60",children:[m.jsxs("span",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:folder",size:14}),e.project]}),m.jsxs("span",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:calendar",size:14}),ZL(e.started_at)]}),m.jsxs("span",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:clock",size:14}),JL(e.started_at_epoch,e.completed_at_epoch)]})]})]}),m.jsxs("div",{className:"flex items-center gap-4 text-sm",children:[m.jsxs("div",{className:"text-center",children:[m.jsx("div",{className:"font-semibold",children:e.observation_count}),m.jsx("div",{className:"text-xs text-base-content/50",children:"observations"})]}),m.jsxs("div",{className:"text-center",children:[m.jsx("div",{className:"font-semibold",children:e.prompt_count}),m.jsx("div",{className:"text-xs text-base-content/50",children:"prompts"})]}),m.jsx(se,{icon:t?"lucide:chevron-up":"lucide:chevron-down",size:20,className:"text-base-content/50"})]})]})})})}const Np={prompt:{icon:"lucide:message-square",color:"text-primary"},observation:{icon:"lucide:brain",color:"text-info"},bugfix:{icon:"lucide:bug",color:"text-error"},feature:{icon:"lucide:sparkles",color:"text-success"},refactor:{icon:"lucide:refresh-cw",color:"text-accent"},discovery:{icon:"lucide:search",color:"text-info"},decision:{icon:"lucide:git-branch",color:"text-warning"},change:{icon:"lucide:pencil",color:"text-secondary"}};function tR(e){return new Date(e).toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit"})}function nR({sessionId:e}){const[t,n]=k.useState(null),[r,i]=k.useState(!0),[a,l]=k.useState(new Set);k.useEffect(()=>{async function f(){i(!0);try{const p=await(await fetch(`/api/sessions/${e}/timeline`)).json();n(p)}catch(d){console.error("Failed to fetch timeline:",d)}finally{i(!1)}}f()},[e]);const u=f=>{l(d=>{const p=new Set(d);return p.has(f)?p.delete(f):p.add(f),p})};if(r)return m.jsx("div",{className:"flex items-center justify-center py-8",children:m.jsx(Xi,{size:"md"})});if(!t)return m.jsx("div",{className:"text-center py-8 text-base-content/50",children:"Failed to load timeline"});const c={active:"badge-success",completed:"badge-info",failed:"badge-error"};return m.jsxs("div",{className:"mt-4 space-y-4",children:[m.jsx(wt,{className:"bg-base-200/50",children:m.jsxs(kt,{className:"py-3",children:[m.jsxs("div",{className:"flex flex-wrap items-center gap-3 mb-2",children:[m.jsx(Te,{variant:"ghost",size:"sm",className:c[t.session.status]||"",children:t.session.status}),m.jsx("span",{className:"text-sm text-base-content/60",children:new Date(t.session.started_at).toLocaleString()}),t.session.completed_at&&m.jsxs("span",{className:"text-sm text-base-content/60",children:["→ ",new Date(t.session.completed_at).toLocaleString()]})]}),m.jsxs("div",{className:"flex flex-wrap gap-4 text-sm",children:[m.jsxs("div",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:message-square",size:14,className:"text-primary"}),m.jsx("span",{className:"font-medium",children:t.stats.prompts}),m.jsx("span",{className:"text-base-content/60",children:"prompts"})]}),m.jsxs("div",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:brain",size:14,className:"text-info"}),m.jsx("span",{className:"font-medium",children:t.stats.observations}),m.jsx("span",{className:"text-base-content/60",children:"observations"})]})]})]})}),t.summary&&m.jsx(wt,{className:"bg-warning/10 border-warning/30",children:m.jsxs(kt,{className:"py-3",children:[m.jsxs("div",{className:"flex items-center gap-2 mb-3",children:[m.jsx(se,{icon:"lucide:file-text",size:16,className:"text-warning"}),m.jsx("span",{className:"font-medium text-sm",children:"Session Summary"}),m.jsx("span",{className:"text-xs text-base-content/50",children:new Date(t.summary.created_at).toLocaleTimeString()})]}),m.jsxs("div",{className:"space-y-3 text-sm",children:[t.summary.request&&m.jsxs("div",{children:[m.jsx("div",{className:"font-medium text-warning mb-1",children:"Request"}),m.jsx("div",{className:"text-base-content/80",children:t.summary.request})]}),t.summary.investigated&&m.jsxs("div",{children:[m.jsx("div",{className:"font-medium text-info mb-1",children:"Investigated"}),m.jsx("div",{className:"text-base-content/80",children:t.summary.investigated})]}),t.summary.learned&&m.jsxs("div",{children:[m.jsx("div",{className:"font-medium text-success mb-1",children:"Learned"}),m.jsx("div",{className:"text-base-content/80",children:t.summary.learned})]}),t.summary.completed&&m.jsxs("div",{children:[m.jsx("div",{className:"font-medium text-primary mb-1",children:"Completed"}),m.jsx("div",{className:"text-base-content/80",children:t.summary.completed})]}),t.summary.next_steps&&m.jsxs("div",{children:[m.jsx("div",{className:"font-medium text-accent mb-1",children:"Next Steps"}),m.jsx("div",{className:"text-base-content/80",children:t.summary.next_steps})]})]})]})}),m.jsxs("div",{className:"ml-8 border-l-2 border-base-300 pl-6 space-y-4",children:[[...t.timeline].reverse().map((f,d)=>{var S,w;const p=`${f.type}-${f.id}`,g=a.has(p),y=f.type==="prompt"?Np.prompt:Np[f.data.type]||Np.observation;let x=[];if(f.type==="observation"&&f.data.concepts)try{x=JSON.parse(f.data.concepts)}catch{}return m.jsxs("div",{className:"relative",children:[m.jsx("div",{className:`absolute -left-9 top-3 w-4 h-4 rounded-full border-2 border-base-100 ${f.type==="prompt"?"bg-primary":"bg-info"}`}),m.jsx(wt,{className:"cursor-pointer hover:shadow-sm transition-shadow",onClick:P=>{P.stopPropagation(),u(p)},children:m.jsx(kt,{className:"py-3",children:m.jsxs("div",{className:"flex items-start gap-3",children:[m.jsx("div",{className:`p-1.5 rounded bg-base-200 ${y.color}`,children:m.jsx(se,{icon:y.icon,size:14})}),m.jsxs("div",{className:"flex-1 min-w-0",children:[m.jsxs("div",{className:"flex flex-wrap items-center gap-2 mb-1",children:[m.jsx(Te,{variant:f.type==="prompt"?"primary":"info",size:"xs",children:f.type==="prompt"?`prompt #${f.data.prompt_number||"?"}`:f.data.type||"observation"}),m.jsx("span",{className:"text-xs text-base-content/50",children:tR(f.timestamp)}),m.jsxs("span",{className:"text-xs text-base-content/40",children:["#",f.id]}),x.length>0&&x.map(P=>m.jsx(Te,{variant:"ghost",size:"xs",className:"text-base-content/50",children:P},P))]}),m.jsx("p",{className:"text-sm font-medium",children:f.type==="prompt"?((S=f.data.prompt_text)==null?void 0:S.length)>100?f.data.prompt_text.substring(0,100)+"...":f.data.prompt_text:f.data.title||"Untitled"}),f.type==="observation"&&f.data.narrative&&m.jsx("p",{className:`text-sm text-base-content/70 mt-1 ${g?"":"line-clamp-3"}`,children:f.data.narrative}),f.type==="prompt"&&((w=f.data.prompt_text)==null?void 0:w.length)>100&&m.jsx("p",{className:`text-sm text-base-content/70 mt-1 ${g?"whitespace-pre-wrap":"line-clamp-3"}`,children:g?f.data.prompt_text:f.data.prompt_text.substring(100)}),f.type==="observation"&&(f.data.files_read||f.data.files_modified)&&m.jsxs("div",{className:"flex flex-wrap gap-2 mt-2",children:[f.data.files_read&&(()=>{try{const P=JSON.parse(f.data.files_read);if(P.length>0)return m.jsxs("span",{className:"text-xs text-base-content/50",children:[m.jsx(se,{icon:"lucide:file",size:12,className:"inline mr-1"}),P.length," read"]})}catch{return null}})(),f.data.files_modified&&(()=>{try{const P=JSON.parse(f.data.files_modified);if(P.length>0)return m.jsxs("span",{className:"text-xs text-base-content/50",children:[m.jsx(se,{icon:"lucide:pencil",size:12,className:"inline mr-1"}),P.length," modified"]})}catch{return null}})()]}),g&&f.type==="observation"&&f.data.text&&m.jsxs("div",{className:"mt-3 pt-3 border-t border-base-200",children:[m.jsx("p",{className:"text-sm text-base-content/70 whitespace-pre-wrap",children:f.data.text}),(f.data.files_read||f.data.files_modified)&&m.jsxs("div",{className:"mt-3 space-y-1",children:[f.data.files_read&&(()=>{try{const P=JSON.parse(f.data.files_read);if(P.length>0)return m.jsxs("div",{children:[m.jsx("span",{className:"text-xs font-medium",children:"Files Read:"}),m.jsx("div",{className:"text-xs text-base-content/50 mt-1",children:P.map((C,O)=>m.jsx("div",{className:"truncate",children:C},O))})]})}catch{return null}})(),f.data.files_modified&&(()=>{try{const P=JSON.parse(f.data.files_modified);if(P.length>0)return m.jsxs("div",{children:[m.jsx("span",{className:"text-xs font-medium",children:"Files Modified:"}),m.jsx("div",{className:"text-xs text-base-content/50 mt-1",children:P.map((C,O)=>m.jsx("div",{className:"truncate",children:C},O))})]})}catch{return null}})()]})]})]}),m.jsx(se,{icon:g?"lucide:chevron-up":"lucide:chevron-down",size:16,className:"text-base-content/30"})]})})})]},p)}),t.timeline.length===0&&m.jsx("div",{className:"text-center py-8 text-base-content/50",children:"No activity in this session"})]})]})}function rR(){const[e,t]=k.useState([]),[n,r]=k.useState(!0),[i,a]=k.useState(null),{selectedProject:l}=za(),u=k.useCallback(async()=>{r(!0);try{const f=new URLSearchParams;f.set("limit","50"),l&&f.set("project",l);const p=await(await fetch(`/api/sessions?${f}`)).json();t(p.items||[])}catch(f){console.error("Failed to fetch sessions:",f)}finally{r(!1)}},[l]);k.useEffect(()=>{u()},[u]);const c=f=>{a(i===f?null:f)};return m.jsxs("div",{className:"space-y-6",children:[m.jsxs("div",{className:"flex items-center justify-between",children:[m.jsxs("div",{children:[m.jsxs("div",{className:"flex items-center gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Sessions"}),m.jsx(lC,{project:l})]}),m.jsx("p",{className:"text-base-content/60",children:"Browse sessions and explore their timeline"})]}),m.jsx("div",{className:"flex items-center gap-2",children:m.jsx(Yt,{variant:"ghost",size:"sm",onClick:u,children:m.jsx(se,{icon:"lucide:refresh-cw",size:16})})})]}),n?m.jsx("div",{className:"flex items-center justify-center h-64",children:m.jsx(Xi,{size:"lg"})}):e.length===0?m.jsx(Eo,{icon:"lucide:history",title:"No sessions found",description:"Sessions will appear here as you use Claude Code"}):m.jsx("div",{className:"space-y-4",children:e.map(f=>m.jsxs("div",{children:[m.jsx(eR,{session:f,isExpanded:i===f.id,onToggle:()=>c(f.id)}),i===f.id&&m.jsx(nR,{sessionId:f.id})]},f.id))})]})}const e1=["sonnet","sonnet[1m]","opus","opus[1m]"],iR=["sonnet","opus"],mC={sonnet:"Sonnet 4.6","sonnet[1m]":"Sonnet 4.6 1M",opus:"Opus 4.6","opus[1m]":"Opus 4.6 1M"},Xn={model:"sonnet",commands:{spec:"sonnet","spec-plan":"opus","spec-implement":"sonnet","spec-verify":"opus",vault:"sonnet",sync:"sonnet",learn:"sonnet"},agents:{"plan-challenger":"sonnet","plan-verifier":"sonnet","spec-reviewer-compliance":"sonnet","spec-reviewer-quality":"opus"}};function gC(){const[e,t]=k.useState(Xn),[n,r]=k.useState(!0),[i,a]=k.useState(null),[l,u]=k.useState(!1),[c,f]=k.useState(!1);k.useEffect(()=>{fetch("/api/settings").then(x=>{if(!x.ok)throw new Error(`API error: ${x.status}`);return x.json()}).then(x=>{t(x),r(!1)}).catch(x=>{a(x.message||"Failed to load settings"),r(!1)})},[]);const d=k.useCallback(x=>{t(S=>({...S,model:x})),u(!0),f(!1)},[]),p=k.useCallback((x,S)=>{t(w=>({...w,commands:{...w.commands,[x]:S}})),u(!0),f(!1)},[]),g=k.useCallback((x,S)=>{t(w=>({...w,agents:{...w.agents,[x]:S}})),u(!0),f(!1)},[]),y=k.useCallback(async()=>{await fetch("/api/settings",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)}).then(x=>{if(!x.ok)throw new Error(`Save failed: ${x.status}`);return x.json()}).then(x=>{t(x),u(!1),f(!0)})},[e]);return{settings:e,isLoading:n,error:i,isDirty:l,saved:c,updateModel:d,updateCommand:p,updateAgent:g,save:y}}function Ap({value:e,choices:t,onChange:n,disabled:r=!1,id:i}){return m.jsx("select",{id:i,className:"select select-sm select-bordered w-full max-w-xs",value:e,onChange:a=>n(a.target.value),disabled:r,children:t.map(a=>m.jsx("option",{value:a,children:mC[a]??a},a))})}const aR={spec:"/spec (dispatcher)","spec-plan":"/spec planning phase","spec-implement":"/spec implementation phase","spec-verify":"/spec verification phase",vault:"/vault",sync:"/sync",learn:"/learn"},oR={"plan-challenger":"plan-challenger (adversarial reviewer)","plan-verifier":"plan-verifier (alignment checker)","spec-reviewer-compliance":"spec-reviewer-compliance (code vs plan)","spec-reviewer-quality":"spec-reviewer-quality (code review)"};function lR(){const{settings:e,isLoading:t,error:n,isDirty:r,saved:i,updateModel:a,updateCommand:l,updateAgent:u,save:c}=gC(),[f,d]=k.useState(null),[p,g]=k.useState(!1),y=async()=>{g(!0),d(null);try{await c()}catch(x){d(x instanceof Error?x.message:"Failed to save")}finally{g(!1)}};return t?m.jsxs("div",{className:"space-y-6",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Settings"}),m.jsx("div",{className:"space-y-4",children:[...Array(3)].map((x,S)=>m.jsx("div",{className:"card bg-base-200 animate-pulse",children:m.jsxs("div",{className:"card-body",children:[m.jsx("div",{className:"h-4 bg-base-300 rounded w-32 mb-4"}),m.jsx("div",{className:"h-8 bg-base-300 rounded w-48"})]})},S))})]}):n?m.jsxs("div",{className:"space-y-6",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Settings"}),m.jsx("div",{className:"alert alert-error",children:m.jsxs("span",{children:["Failed to load settings: ",n]})})]}):m.jsxs("div",{className:"space-y-6",children:[m.jsxs("div",{children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Settings"}),m.jsx("p",{className:"text-base-content/60",children:"Configure model selection for Claude Pilot"})]}),m.jsxs("div",{className:"alert alert-info",children:[m.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",className:"stroke-current shrink-0 w-5 h-5",children:m.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",d:"M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})}),m.jsxs("div",{className:"text-sm",children:[m.jsx("span",{className:"font-semibold",children:"Sonnet 4.6 1M and Opus 4.6 1M"})," require a compatible Anthropic subscription with 1M context access. Not all users have access. These variants are only available for the main session and commands — never for sub-agents."]})]}),i&&m.jsxs("div",{className:"alert alert-success",children:[m.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:"stroke-current shrink-0 h-5 w-5",fill:"none",viewBox:"0 0 24 24",children:m.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",d:"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"})}),m.jsxs("span",{children:["Settings saved. ",m.jsx("strong",{children:"Restart Pilot"})," to apply changes."]})]}),f&&m.jsx("div",{className:"alert alert-error",children:m.jsx("span",{children:f})}),m.jsx("div",{className:"card bg-base-200",children:m.jsxs("div",{className:"card-body",children:[m.jsx("h2",{className:"card-title text-base",children:"Main Model"}),m.jsx("p",{className:"text-sm text-base-content/70 mb-4",children:"Used for Quick Mode (direct chat). Changing this also sets the baseline for new commands without explicit config."}),m.jsxs("div",{className:"flex items-center gap-4",children:[m.jsx(Ap,{value:e.model,choices:e1,onChange:a,id:"main-model"}),m.jsxs("div",{className:"text-xs text-base-content/50",children:[e.model.includes("[1m]")?"1M context":"200K context",e.model.startsWith("opus")?" · ~1.67× cost of Sonnet":""]})]}),m.jsxs("div",{className:"mt-4 p-3 bg-base-100 rounded-lg",children:[m.jsx("p",{className:"text-xs font-semibold text-base-content/70 mb-2",children:"Model comparison"}),m.jsxs("div",{className:"grid grid-cols-2 gap-2 text-xs text-base-content/60",children:[m.jsxs("div",{children:[m.jsx("span",{className:"font-mono text-primary",children:"Sonnet 4.6"}),m.jsx("div",{children:"$3/$15 per MTok · Fast, near Opus quality"}),m.jsx("div",{className:"text-base-content/40",children:"Best for implementation & most tasks"})]}),m.jsxs("div",{children:[m.jsx("span",{className:"font-mono text-secondary",children:"Opus 4.6"}),m.jsx("div",{children:"$5/$25 per MTok · Deepest reasoning"}),m.jsx("div",{className:"text-base-content/40",children:"Best for planning & complex analysis"})]})]}),m.jsx("p",{className:"text-xs text-base-content/40 mt-2",children:"Sonnet 4.6 often matches Opus quality. Default routing uses Opus only for planning & verification."})]})]})}),m.jsx("div",{className:"card bg-base-200",children:m.jsxs("div",{className:"card-body",children:[m.jsx("h2",{className:"card-title text-base",children:"Commands"}),m.jsx("p",{className:"text-sm text-base-content/70 mb-4",children:"Model used when each slash command is invoked. Defaults use Opus for planning/verification, Sonnet for execution."}),m.jsx("div",{className:"overflow-x-auto",children:m.jsxs("table",{className:"table table-sm",children:[m.jsx("thead",{children:m.jsxs("tr",{children:[m.jsx("th",{children:"Command"}),m.jsx("th",{children:"Model"}),m.jsx("th",{className:"text-base-content/50",children:"Context"})]})}),m.jsx("tbody",{children:Object.keys(Xn.commands).map(x=>m.jsxs("tr",{children:[m.jsx("td",{children:m.jsx("span",{className:"font-mono text-sm",children:aR[x]??x})}),m.jsx("td",{children:m.jsx(Ap,{value:e.commands[x]??Xn.commands[x],choices:e1,onChange:S=>l(x,S),id:`cmd-${x}`})}),m.jsx("td",{className:"text-xs text-base-content/40",children:(e.commands[x]??"").includes("[1m]")?"1M":"200K"})]},x))})]})})]})}),m.jsx("div",{className:"card bg-base-200",children:m.jsxs("div",{className:"card-body",children:[m.jsx("h2",{className:"card-title text-base",children:"Sub-Agents"}),m.jsxs("p",{className:"text-sm text-base-content/70 mb-4",children:["Models used by verification sub-agents spawned during ",m.jsx("code",{className:"bg-base-300 px-1 rounded",children:"/spec"}),". Limited to Sonnet or Opus — 1M context is not available for sub-agents."]}),m.jsx("div",{className:"overflow-x-auto",children:m.jsxs("table",{className:"table table-sm",children:[m.jsx("thead",{children:m.jsxs("tr",{children:[m.jsx("th",{children:"Agent"}),m.jsx("th",{children:"Model"})]})}),m.jsx("tbody",{children:Object.keys(Xn.agents).map(x=>m.jsxs("tr",{children:[m.jsx("td",{children:m.jsx("span",{className:"font-mono text-sm",children:oR[x]??x})}),m.jsx("td",{children:m.jsx(Ap,{value:e.agents[x]??Xn.agents[x],choices:iR,onChange:S=>u(x,S),id:`agent-${x}`})})]},x))})]})})]})}),m.jsxs("div",{className:"flex items-center gap-4 pb-4",children:[m.jsx("button",{className:`btn btn-primary ${p?"loading":""}`,onClick:y,disabled:p||!r,children:p?"Saving...":"Save Settings"}),r&&!i&&m.jsx("span",{className:"text-sm text-base-content/50",children:"Unsaved changes"})]})]})}function sR(e,t){const n={};return(e[e.length-1]===""?[...e,""]:e).join((n.padRight?" ":"")+","+(n.padLeft===!1?"":" ")).trim()}const uR=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,cR=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,fR={};function t1(e,t){return(fR.jsx?cR:uR).test(e)}const dR=/[ \t\n\f\r]/g;function hR(e){return typeof e=="object"?e.type==="text"?n1(e.value):!1:n1(e)}function n1(e){return e.replace(dR,"")===""}class Cs{constructor(t,n,r){this.normal=n,this.property=t,r&&(this.space=r)}}Cs.prototype.normal={};Cs.prototype.property={};Cs.prototype.space=void 0;function vC(e,t){const n={},r={};for(const i of e)Object.assign(n,i.property),Object.assign(r,i.normal);return new Cs(n,r,t)}function Mg(e){return e.toLowerCase()}class Cn{constructor(t,n){this.attribute=n,this.property=t}}Cn.prototype.attribute="";Cn.prototype.booleanish=!1;Cn.prototype.boolean=!1;Cn.prototype.commaOrSpaceSeparated=!1;Cn.prototype.commaSeparated=!1;Cn.prototype.defined=!1;Cn.prototype.mustUseProperty=!1;Cn.prototype.number=!1;Cn.prototype.overloadedBoolean=!1;Cn.prototype.property="";Cn.prototype.spaceSeparated=!1;Cn.prototype.space=void 0;let pR=0;const Ie=$a(),bt=$a(),Dg=$a(),le=$a(),Ze=$a(),Co=$a(),Mn=$a();function $a(){return 2**++pR}const Lg=Object.freeze(Object.defineProperty({__proto__:null,boolean:Ie,booleanish:bt,commaOrSpaceSeparated:Mn,commaSeparated:Co,number:le,overloadedBoolean:Dg,spaceSeparated:Ze},Symbol.toStringTag,{value:"Module"})),_p=Object.keys(Lg);class Xv extends Cn{constructor(t,n,r,i){let a=-1;if(super(t,n),r1(this,"space",i),typeof r=="number")for(;++a<_p.length;){const l=_p[a];r1(this,_p[a],(r&Lg[l])===Lg[l])}}}Xv.prototype.defined=!0;function r1(e,t,n){n&&(e[t]=n)}function Bo(e){const t={},n={};for(const[r,i]of Object.entries(e.properties)){const a=new Xv(r,e.transform(e.attributes||{},r),i,e.space);e.mustUseProperty&&e.mustUseProperty.includes(r)&&(a.mustUseProperty=!0),t[r]=a,n[Mg(r)]=r,n[Mg(a.attribute)]=r}return new Cs(t,n,e.space)}const yC=Bo({properties:{ariaActiveDescendant:null,ariaAtomic:bt,ariaAutoComplete:null,ariaBusy:bt,ariaChecked:bt,ariaColCount:le,ariaColIndex:le,ariaColSpan:le,ariaControls:Ze,ariaCurrent:null,ariaDescribedBy:Ze,ariaDetails:null,ariaDisabled:bt,ariaDropEffect:Ze,ariaErrorMessage:null,ariaExpanded:bt,ariaFlowTo:Ze,ariaGrabbed:bt,ariaHasPopup:null,ariaHidden:bt,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:Ze,ariaLevel:le,ariaLive:null,ariaModal:bt,ariaMultiLine:bt,ariaMultiSelectable:bt,ariaOrientation:null,ariaOwns:Ze,ariaPlaceholder:null,ariaPosInSet:le,ariaPressed:bt,ariaReadOnly:bt,ariaRelevant:null,ariaRequired:bt,ariaRoleDescription:Ze,ariaRowCount:le,ariaRowIndex:le,ariaRowSpan:le,ariaSelected:bt,ariaSetSize:le,ariaSort:null,ariaValueMax:le,ariaValueMin:le,ariaValueNow:le,ariaValueText:null,role:null},transform(e,t){return t==="role"?t:"aria-"+t.slice(4).toLowerCase()}});function xC(e,t){return t in e?e[t]:t}function bC(e,t){return xC(e,t.toLowerCase())}const mR=Bo({attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:Co,acceptCharset:Ze,accessKey:Ze,action:null,allow:null,allowFullScreen:Ie,allowPaymentRequest:Ie,allowUserMedia:Ie,alt:null,as:null,async:Ie,autoCapitalize:null,autoComplete:Ze,autoFocus:Ie,autoPlay:Ie,blocking:Ze,capture:null,charSet:null,checked:Ie,cite:null,className:Ze,cols:le,colSpan:null,content:null,contentEditable:bt,controls:Ie,controlsList:Ze,coords:le|Co,crossOrigin:null,data:null,dateTime:null,decoding:null,default:Ie,defer:Ie,dir:null,dirName:null,disabled:Ie,download:Dg,draggable:bt,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:Ie,formTarget:null,headers:Ze,height:le,hidden:Dg,high:le,href:null,hrefLang:null,htmlFor:Ze,httpEquiv:Ze,id:null,imageSizes:null,imageSrcSet:null,inert:Ie,inputMode:null,integrity:null,is:null,isMap:Ie,itemId:null,itemProp:Ze,itemRef:Ze,itemScope:Ie,itemType:Ze,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:Ie,low:le,manifest:null,max:null,maxLength:le,media:null,method:null,min:null,minLength:le,multiple:Ie,muted:Ie,name:null,nonce:null,noModule:Ie,noValidate:Ie,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:Ie,optimum:le,pattern:null,ping:Ze,placeholder:null,playsInline:Ie,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:Ie,referrerPolicy:null,rel:Ze,required:Ie,reversed:Ie,rows:le,rowSpan:le,sandbox:Ze,scope:null,scoped:Ie,seamless:Ie,selected:Ie,shadowRootClonable:Ie,shadowRootDelegatesFocus:Ie,shadowRootMode:null,shape:null,size:le,sizes:null,slot:null,span:le,spellCheck:bt,src:null,srcDoc:null,srcLang:null,srcSet:null,start:le,step:null,style:null,tabIndex:le,target:null,title:null,translate:null,type:null,typeMustMatch:Ie,useMap:null,value:bt,width:le,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:Ze,axis:null,background:null,bgColor:null,border:le,borderColor:null,bottomMargin:le,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:Ie,declare:Ie,event:null,face:null,frame:null,frameBorder:null,hSpace:le,leftMargin:le,link:null,longDesc:null,lowSrc:null,marginHeight:le,marginWidth:le,noResize:Ie,noHref:Ie,noShade:Ie,noWrap:Ie,object:null,profile:null,prompt:null,rev:null,rightMargin:le,rules:null,scheme:null,scrolling:bt,standby:null,summary:null,text:null,topMargin:le,valueType:null,version:null,vAlign:null,vLink:null,vSpace:le,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:Ie,disableRemotePlayback:Ie,prefix:null,property:null,results:le,security:null,unselectable:null},space:"html",transform:bC}),gR=Bo({attributes:{accentHeight:"accent-height",alignmentBaseline:"alignment-baseline",arabicForm:"arabic-form",baselineShift:"baseline-shift",capHeight:"cap-height",className:"class",clipPath:"clip-path",clipRule:"clip-rule",colorInterpolation:"color-interpolation",colorInterpolationFilters:"color-interpolation-filters",colorProfile:"color-profile",colorRendering:"color-rendering",crossOrigin:"crossorigin",dataType:"datatype",dominantBaseline:"dominant-baseline",enableBackground:"enable-background",fillOpacity:"fill-opacity",fillRule:"fill-rule",floodColor:"flood-color",floodOpacity:"flood-opacity",fontFamily:"font-family",fontSize:"font-size",fontSizeAdjust:"font-size-adjust",fontStretch:"font-stretch",fontStyle:"font-style",fontVariant:"font-variant",fontWeight:"font-weight",glyphName:"glyph-name",glyphOrientationHorizontal:"glyph-orientation-horizontal",glyphOrientationVertical:"glyph-orientation-vertical",hrefLang:"hreflang",horizAdvX:"horiz-adv-x",horizOriginX:"horiz-origin-x",horizOriginY:"horiz-origin-y",imageRendering:"image-rendering",letterSpacing:"letter-spacing",lightingColor:"lighting-color",markerEnd:"marker-end",markerMid:"marker-mid",markerStart:"marker-start",navDown:"nav-down",navDownLeft:"nav-down-left",navDownRight:"nav-down-right",navLeft:"nav-left",navNext:"nav-next",navPrev:"nav-prev",navRight:"nav-right",navUp:"nav-up",navUpLeft:"nav-up-left",navUpRight:"nav-up-right",onAbort:"onabort",onActivate:"onactivate",onAfterPrint:"onafterprint",onBeforePrint:"onbeforeprint",onBegin:"onbegin",onCancel:"oncancel",onCanPlay:"oncanplay",onCanPlayThrough:"oncanplaythrough",onChange:"onchange",onClick:"onclick",onClose:"onclose",onCopy:"oncopy",onCueChange:"oncuechange",onCut:"oncut",onDblClick:"ondblclick",onDrag:"ondrag",onDragEnd:"ondragend",onDragEnter:"ondragenter",onDragExit:"ondragexit",onDragLeave:"ondragleave",onDragOver:"ondragover",onDragStart:"ondragstart",onDrop:"ondrop",onDurationChange:"ondurationchange",onEmptied:"onemptied",onEnd:"onend",onEnded:"onended",onError:"onerror",onFocus:"onfocus",onFocusIn:"onfocusin",onFocusOut:"onfocusout",onHashChange:"onhashchange",onInput:"oninput",onInvalid:"oninvalid",onKeyDown:"onkeydown",onKeyPress:"onkeypress",onKeyUp:"onkeyup",onLoad:"onload",onLoadedData:"onloadeddata",onLoadedMetadata:"onloadedmetadata",onLoadStart:"onloadstart",onMessage:"onmessage",onMouseDown:"onmousedown",onMouseEnter:"onmouseenter",onMouseLeave:"onmouseleave",onMouseMove:"onmousemove",onMouseOut:"onmouseout",onMouseOver:"onmouseover",onMouseUp:"onmouseup",onMouseWheel:"onmousewheel",onOffline:"onoffline",onOnline:"ononline",onPageHide:"onpagehide",onPageShow:"onpageshow",onPaste:"onpaste",onPause:"onpause",onPlay:"onplay",onPlaying:"onplaying",onPopState:"onpopstate",onProgress:"onprogress",onRateChange:"onratechange",onRepeat:"onrepeat",onReset:"onreset",onResize:"onresize",onScroll:"onscroll",onSeeked:"onseeked",onSeeking:"onseeking",onSelect:"onselect",onShow:"onshow",onStalled:"onstalled",onStorage:"onstorage",onSubmit:"onsubmit",onSuspend:"onsuspend",onTimeUpdate:"ontimeupdate",onToggle:"ontoggle",onUnload:"onunload",onVolumeChange:"onvolumechange",onWaiting:"onwaiting",onZoom:"onzoom",overlinePosition:"overline-position",overlineThickness:"overline-thickness",paintOrder:"paint-order",panose1:"panose-1",pointerEvents:"pointer-events",referrerPolicy:"referrerpolicy",renderingIntent:"rendering-intent",shapeRendering:"shape-rendering",stopColor:"stop-color",stopOpacity:"stop-opacity",strikethroughPosition:"strikethrough-position",strikethroughThickness:"strikethrough-thickness",strokeDashArray:"stroke-dasharray",strokeDashOffset:"stroke-dashoffset",strokeLineCap:"stroke-linecap",strokeLineJoin:"stroke-linejoin",strokeMiterLimit:"stroke-miterlimit",strokeOpacity:"stroke-opacity",strokeWidth:"stroke-width",tabIndex:"tabindex",textAnchor:"text-anchor",textDecoration:"text-decoration",textRendering:"text-rendering",transformOrigin:"transform-origin",typeOf:"typeof",underlinePosition:"underline-position",underlineThickness:"underline-thickness",unicodeBidi:"unicode-bidi",unicodeRange:"unicode-range",unitsPerEm:"units-per-em",vAlphabetic:"v-alphabetic",vHanging:"v-hanging",vIdeographic:"v-ideographic",vMathematical:"v-mathematical",vectorEffect:"vector-effect",vertAdvY:"vert-adv-y",vertOriginX:"vert-origin-x",vertOriginY:"vert-origin-y",wordSpacing:"word-spacing",writingMode:"writing-mode",xHeight:"x-height",playbackOrder:"playbackorder",timelineBegin:"timelinebegin"},properties:{about:Mn,accentHeight:le,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:le,amplitude:le,arabicForm:null,ascent:le,attributeName:null,attributeType:null,azimuth:le,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:le,by:null,calcMode:null,capHeight:le,className:Ze,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:le,diffuseConstant:le,direction:null,display:null,dur:null,divisor:le,dominantBaseline:null,download:Ie,dx:null,dy:null,edgeMode:null,editable:null,elevation:le,enableBackground:null,end:null,event:null,exponent:le,externalResourcesRequired:null,fill:null,fillOpacity:le,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:Co,g2:Co,glyphName:Co,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:le,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:le,horizOriginX:le,horizOriginY:le,id:null,ideographic:le,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:le,k:le,k1:le,k2:le,k3:le,k4:le,kernelMatrix:Mn,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:le,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:le,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:le,overlineThickness:le,paintOrder:null,panose1:null,path:null,pathLength:le,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:Ze,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:le,pointsAtY:le,pointsAtZ:le,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:Mn,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:Mn,rev:Mn,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:Mn,requiredFeatures:Mn,requiredFonts:Mn,requiredFormats:Mn,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:le,specularExponent:le,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:le,strikethroughThickness:le,string:null,stroke:null,strokeDashArray:Mn,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:le,strokeOpacity:le,strokeWidth:null,style:null,surfaceScale:le,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:Mn,tabIndex:le,tableValues:null,target:null,targetX:le,targetY:le,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:Mn,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:le,underlineThickness:le,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:le,values:null,vAlphabetic:le,vMathematical:le,vectorEffect:null,vHanging:le,vIdeographic:le,version:null,vertAdvY:le,vertOriginX:le,vertOriginY:le,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:le,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:"svg",transform:xC}),wC=Bo({properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null},space:"xlink",transform(e,t){return"xlink:"+t.slice(5).toLowerCase()}}),kC=Bo({attributes:{xmlnsxlink:"xmlns:xlink"},properties:{xmlnsXLink:null,xmlns:null},space:"xmlns",transform:bC}),SC=Bo({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:"xml",transform(e,t){return"xml:"+t.slice(3).toLowerCase()}}),vR={classId:"classID",dataType:"datatype",itemId:"itemID",strokeDashArray:"strokeDasharray",strokeDashOffset:"strokeDashoffset",strokeLineCap:"strokeLinecap",strokeLineJoin:"strokeLinejoin",strokeMiterLimit:"strokeMiterlimit",typeOf:"typeof",xLinkActuate:"xlinkActuate",xLinkArcRole:"xlinkArcrole",xLinkHref:"xlinkHref",xLinkRole:"xlinkRole",xLinkShow:"xlinkShow",xLinkTitle:"xlinkTitle",xLinkType:"xlinkType",xmlnsXLink:"xmlnsXlink"},yR=/[A-Z]/g,i1=/-[a-z]/g,xR=/^data[-\w.:]+$/i;function bR(e,t){const n=Mg(t);let r=t,i=Cn;if(n in e.normal)return e.property[e.normal[n]];if(n.length>4&&n.slice(0,4)==="data"&&xR.test(t)){if(t.charAt(4)==="-"){const a=t.slice(5).replace(i1,kR);r="data"+a.charAt(0).toUpperCase()+a.slice(1)}else{const a=t.slice(4);if(!i1.test(a)){let l=a.replace(yR,wR);l.charAt(0)!=="-"&&(l="-"+l),t="data"+l}}i=Xv}return new i(r,t)}function wR(e){return"-"+e.toLowerCase()}function kR(e){return e.charAt(1).toUpperCase()}const SR=vC([yC,mR,wC,kC,SC],"html"),Qv=vC([yC,gR,wC,kC,SC],"svg");function jR(e){return e.join(" ").trim()}var mo={},Ip,a1;function PR(){if(a1)return Ip;a1=1;var e=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,t=/\n/g,n=/^\s*/,r=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,i=/^:\s*/,a=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,l=/^[;\s]*/,u=/^\s+|\s+$/g,c=` -`,f="/",d="*",p="",g="comment",y="declaration";function x(w,P){if(typeof w!="string")throw new TypeError("First argument must be a string");if(!w)return[];P=P||{};var C=1,O=1;function A(Y){var Q=Y.match(t);Q&&(C+=Q.length);var he=Y.lastIndexOf(c);O=~he?Y.length-he:O+Y.length}function I(){var Y={line:C,column:O};return function(Q){return Q.position=new E(Y),H(),Q}}function E(Y){this.start=Y,this.end={line:C,column:O},this.source=P.source}E.prototype.content=w;function L(Y){var Q=new Error(P.source+":"+C+":"+O+": "+Y);if(Q.reason=Y,Q.filename=P.source,Q.line=C,Q.column=O,Q.source=w,!P.silent)throw Q}function F(Y){var Q=Y.exec(w);if(Q){var he=Q[0];return A(he),w=w.slice(he.length),Q}}function H(){F(n)}function R(Y){var Q;for(Y=Y||[];Q=W();)Q!==!1&&Y.push(Q);return Y}function W(){var Y=I();if(!(f!=w.charAt(0)||d!=w.charAt(1))){for(var Q=2;p!=w.charAt(Q)&&(d!=w.charAt(Q)||f!=w.charAt(Q+1));)++Q;if(Q+=2,p===w.charAt(Q-1))return L("End of comment missing");var he=w.slice(2,Q-2);return O+=2,A(he),w=w.slice(Q),O+=2,Y({type:g,comment:he})}}function M(){var Y=I(),Q=F(r);if(Q){if(W(),!F(i))return L("property missing ':'");var he=F(a),de=Y({type:y,property:S(Q[0].replace(e,p)),value:he?S(he[0].replace(e,p)):p});return F(l),de}}function Z(){var Y=[];R(Y);for(var Q;Q=M();)Q!==!1&&(Y.push(Q),R(Y));return Y}return H(),Z()}function S(w){return w?w.replace(u,p):p}return Ip=x,Ip}var o1;function ER(){if(o1)return mo;o1=1;var e=mo&&mo.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(mo,"__esModule",{value:!0}),mo.default=n;const t=e(PR());function n(r,i){let a=null;if(!r||typeof r!="string")return a;const l=(0,t.default)(r),u=typeof i=="function";return l.forEach(c=>{if(c.type!=="declaration")return;const{property:f,value:d}=c;u?i(f,d,c):d&&(a=a||{},a[f]=d)}),a}return mo}var zl={},l1;function CR(){if(l1)return zl;l1=1,Object.defineProperty(zl,"__esModule",{value:!0}),zl.camelCase=void 0;var e=/^--[a-zA-Z0-9_-]+$/,t=/-([a-z])/g,n=/^[^-]+$/,r=/^-(webkit|moz|ms|o|khtml)-/,i=/^-(ms)-/,a=function(f){return!f||n.test(f)||e.test(f)},l=function(f,d){return d.toUpperCase()},u=function(f,d){return"".concat(d,"-")},c=function(f,d){return d===void 0&&(d={}),a(f)?f:(f=f.toLowerCase(),d.reactCompat?f=f.replace(i,u):f=f.replace(r,u),f.replace(t,l))};return zl.camelCase=c,zl}var $l,s1;function OR(){if(s1)return $l;s1=1;var e=$l&&$l.__importDefault||function(i){return i&&i.__esModule?i:{default:i}},t=e(ER()),n=CR();function r(i,a){var l={};return!i||typeof i!="string"||(0,t.default)(i,function(u,c){u&&c&&(l[(0,n.camelCase)(u,a)]=c)}),l}return r.default=r,$l=r,$l}var NR=OR();const AR=xr(NR),jC=PC("end"),Zv=PC("start");function PC(e){return t;function t(n){const r=n&&n.position&&n.position[e]||{};if(typeof r.line=="number"&&r.line>0&&typeof r.column=="number"&&r.column>0)return{line:r.line,column:r.column,offset:typeof r.offset=="number"&&r.offset>-1?r.offset:void 0}}}function _R(e){const t=Zv(e),n=jC(e);if(t&&n)return{start:t,end:n}}function rs(e){return!e||typeof e!="object"?"":"position"in e||"type"in e?u1(e.position):"start"in e||"end"in e?u1(e):"line"in e||"column"in e?Rg(e):""}function Rg(e){return c1(e&&e.line)+":"+c1(e&&e.column)}function u1(e){return Rg(e&&e.start)+"-"+Rg(e&&e.end)}function c1(e){return e&&typeof e=="number"?e:1}class an extends Error{constructor(t,n,r){super(),typeof n=="string"&&(r=n,n=void 0);let i="",a={},l=!1;if(n&&("line"in n&&"column"in n?a={place:n}:"start"in n&&"end"in n?a={place:n}:"type"in n?a={ancestors:[n],place:n.position}:a={...n}),typeof t=="string"?i=t:!a.cause&&t&&(l=!0,i=t.message,a.cause=t),!a.ruleId&&!a.source&&typeof r=="string"){const c=r.indexOf(":");c===-1?a.ruleId=r:(a.source=r.slice(0,c),a.ruleId=r.slice(c+1))}if(!a.place&&a.ancestors&&a.ancestors){const c=a.ancestors[a.ancestors.length-1];c&&(a.place=c.position)}const u=a.place&&"start"in a.place?a.place.start:a.place;this.ancestors=a.ancestors||void 0,this.cause=a.cause||void 0,this.column=u?u.column:void 0,this.fatal=void 0,this.file="",this.message=i,this.line=u?u.line:void 0,this.name=rs(a.place)||"1:1",this.place=a.place||void 0,this.reason=this.message,this.ruleId=a.ruleId||void 0,this.source=a.source||void 0,this.stack=l&&a.cause&&typeof a.cause.stack=="string"?a.cause.stack:"",this.actual=void 0,this.expected=void 0,this.note=void 0,this.url=void 0}}an.prototype.file="";an.prototype.name="";an.prototype.reason="";an.prototype.message="";an.prototype.stack="";an.prototype.column=void 0;an.prototype.line=void 0;an.prototype.ancestors=void 0;an.prototype.cause=void 0;an.prototype.fatal=void 0;an.prototype.place=void 0;an.prototype.ruleId=void 0;an.prototype.source=void 0;const Jv={}.hasOwnProperty,IR=new Map,TR=/[A-Z]/g,MR=new Set(["table","tbody","thead","tfoot","tr"]),DR=new Set(["td","th"]),EC="https://github.com/syntax-tree/hast-util-to-jsx-runtime";function LR(e,t){if(!t||t.Fragment===void 0)throw new TypeError("Expected `Fragment` in options");const n=t.filePath||void 0;let r;if(t.development){if(typeof t.jsxDEV!="function")throw new TypeError("Expected `jsxDEV` in options when `development: true`");r=qR(n,t.jsxDEV)}else{if(typeof t.jsx!="function")throw new TypeError("Expected `jsx` in production options");if(typeof t.jsxs!="function")throw new TypeError("Expected `jsxs` in production options");r=WR(n,t.jsx,t.jsxs)}const i={Fragment:t.Fragment,ancestors:[],components:t.components||{},create:r,elementAttributeNameCase:t.elementAttributeNameCase||"react",evaluater:t.createEvaluater?t.createEvaluater():void 0,filePath:n,ignoreInvalidStyle:t.ignoreInvalidStyle||!1,passKeys:t.passKeys!==!1,passNode:t.passNode||!1,schema:t.space==="svg"?Qv:SR,stylePropertyNameCase:t.stylePropertyNameCase||"dom",tableCellAlignToStyle:t.tableCellAlignToStyle!==!1},a=CC(i,e,void 0);return a&&typeof a!="string"?a:i.create(e,i.Fragment,{children:a||void 0},void 0)}function CC(e,t,n){if(t.type==="element")return RR(e,t,n);if(t.type==="mdxFlowExpression"||t.type==="mdxTextExpression")return zR(e,t);if(t.type==="mdxJsxFlowElement"||t.type==="mdxJsxTextElement")return FR(e,t,n);if(t.type==="mdxjsEsm")return $R(e,t);if(t.type==="root")return BR(e,t,n);if(t.type==="text")return UR(e,t)}function RR(e,t,n){const r=e.schema;let i=r;t.tagName.toLowerCase()==="svg"&&r.space==="html"&&(i=Qv,e.schema=i),e.ancestors.push(t);const a=NC(e,t.tagName,!1),l=HR(e,t);let u=ty(e,t);return MR.has(t.tagName)&&(u=u.filter(function(c){return typeof c=="string"?!hR(c):!0})),OC(e,l,a,t),ey(l,u),e.ancestors.pop(),e.schema=r,e.create(t,a,l,n)}function zR(e,t){if(t.data&&t.data.estree&&e.evaluater){const r=t.data.estree.body[0];return r.type,e.evaluater.evaluateExpression(r.expression)}us(e,t.position)}function $R(e,t){if(t.data&&t.data.estree&&e.evaluater)return e.evaluater.evaluateProgram(t.data.estree);us(e,t.position)}function FR(e,t,n){const r=e.schema;let i=r;t.name==="svg"&&r.space==="html"&&(i=Qv,e.schema=i),e.ancestors.push(t);const a=t.name===null?e.Fragment:NC(e,t.name,!0),l=VR(e,t),u=ty(e,t);return OC(e,l,a,t),ey(l,u),e.ancestors.pop(),e.schema=r,e.create(t,a,l,n)}function BR(e,t,n){const r={};return ey(r,ty(e,t)),e.create(t,e.Fragment,r,n)}function UR(e,t){return t.value}function OC(e,t,n,r){typeof n!="string"&&n!==e.Fragment&&e.passNode&&(t.node=r)}function ey(e,t){if(t.length>0){const n=t.length>1?t:t[0];n&&(e.children=n)}}function WR(e,t,n){return r;function r(i,a,l,u){const f=Array.isArray(l.children)?n:t;return u?f(a,l,u):f(a,l)}}function qR(e,t){return n;function n(r,i,a,l){const u=Array.isArray(a.children),c=Zv(r);return t(i,a,l,u,{columnNumber:c?c.column-1:void 0,fileName:e,lineNumber:c?c.line:void 0},void 0)}}function HR(e,t){const n={};let r,i;for(i in t.properties)if(i!=="children"&&Jv.call(t.properties,i)){const a=KR(e,i,t.properties[i]);if(a){const[l,u]=a;e.tableCellAlignToStyle&&l==="align"&&typeof u=="string"&&DR.has(t.tagName)?r=u:n[l]=u}}if(r){const a=n.style||(n.style={});a[e.stylePropertyNameCase==="css"?"text-align":"textAlign"]=r}return n}function VR(e,t){const n={};for(const r of t.attributes)if(r.type==="mdxJsxExpressionAttribute")if(r.data&&r.data.estree&&e.evaluater){const a=r.data.estree.body[0];a.type;const l=a.expression;l.type;const u=l.properties[0];u.type,Object.assign(n,e.evaluater.evaluateExpression(u.argument))}else us(e,t.position);else{const i=r.name;let a;if(r.value&&typeof r.value=="object")if(r.value.data&&r.value.data.estree&&e.evaluater){const u=r.value.data.estree.body[0];u.type,a=e.evaluater.evaluateExpression(u.expression)}else us(e,t.position);else a=r.value===null?!0:r.value;n[i]=a}return n}function ty(e,t){const n=[];let r=-1;const i=e.passKeys?new Map:IR;for(;++ri?0:i+t:t=t>i?i:t,n=n>0?n:0,r.length<1e4)l=Array.from(r),l.unshift(t,n),e.splice(...l);else for(n&&e.splice(t,n);a0?(Rn(e,e.length,0,t),e):t}const h1={}.hasOwnProperty;function _C(e){const t={};let n=-1;for(;++n13&&n<32||n>126&&n<160||n>55295&&n<57344||n>64975&&n<65008||(n&65535)===65535||(n&65535)===65534||n>1114111?"�":String.fromCodePoint(n)}function pr(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const cn=Ji(/[A-Za-z]/),rn=Ji(/[\dA-Za-z]/),nz=Ji(/[#-'*+\--9=?A-Z^-~]/);function Rc(e){return e!==null&&(e<32||e===127)}const zg=Ji(/\d/),rz=Ji(/[\dA-Fa-f]/),iz=Ji(/[!-/:-@[-`{-~]/);function Oe(e){return e!==null&&e<-2}function Xe(e){return e!==null&&(e<0||e===32)}function Re(e){return e===-2||e===-1||e===32}const $f=Ji(new RegExp("\\p{P}|\\p{S}","u")),Na=Ji(/\s/);function Ji(e){return t;function t(n){return n!==null&&n>-1&&e.test(String.fromCharCode(n))}}function Uo(e){const t=[];let n=-1,r=0,i=0;for(;++n55295&&a<57344){const u=e.charCodeAt(n+1);a<56320&&u>56319&&u<57344?(l=String.fromCharCode(a,u),i=1):l="�"}else l=String.fromCharCode(a);l&&(t.push(e.slice(r,n),encodeURIComponent(l)),r=n+i+1,l=""),i&&(n+=i,i=0)}return t.join("")+e.slice(r)}function $e(e,t,n,r){const i=r?r-1:Number.POSITIVE_INFINITY;let a=0;return l;function l(c){return Re(c)?(e.enter(n),u(c)):t(c)}function u(c){return Re(c)&&a++l))return;const L=t.events.length;let F=L,H,R;for(;F--;)if(t.events[F][0]==="exit"&&t.events[F][1].type==="chunkFlow"){if(H){R=t.events[F][1].end;break}H=!0}for(P(r),E=L;EO;){const I=n[A];t.containerState=I[1],I[0].exit.call(t,e)}n.length=O}function C(){i.write([null]),a=void 0,i=void 0,t.containerState._closeFlow=void 0}}function uz(e,t,n){return $e(e,e.attempt(this.parser.constructs.document,t,n),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function _o(e){if(e===null||Xe(e)||Na(e))return 1;if($f(e))return 2}function Ff(e,t,n){const r=[];let i=-1;for(;++i1&&e[n][1].end.offset-e[n][1].start.offset>1?2:1;const p={...e[r][1].end},g={...e[n][1].start};m1(p,-c),m1(g,c),l={type:c>1?"strongSequence":"emphasisSequence",start:p,end:{...e[r][1].end}},u={type:c>1?"strongSequence":"emphasisSequence",start:{...e[n][1].start},end:g},a={type:c>1?"strongText":"emphasisText",start:{...e[r][1].end},end:{...e[n][1].start}},i={type:c>1?"strong":"emphasis",start:{...l.start},end:{...u.end}},e[r][1].end={...l.start},e[n][1].start={...u.end},f=[],e[r][1].end.offset-e[r][1].start.offset&&(f=Qn(f,[["enter",e[r][1],t],["exit",e[r][1],t]])),f=Qn(f,[["enter",i,t],["enter",l,t],["exit",l,t],["enter",a,t]]),f=Qn(f,Ff(t.parser.constructs.insideSpan.null,e.slice(r+1,n),t)),f=Qn(f,[["exit",a,t],["enter",u,t],["exit",u,t],["exit",i,t]]),e[n][1].end.offset-e[n][1].start.offset?(d=2,f=Qn(f,[["enter",e[n][1],t],["exit",e[n][1],t]])):d=0,Rn(e,r-1,n-r+3,f),n=r+f.length-d-2;break}}for(n=-1;++n0&&Re(E)?$e(e,C,"linePrefix",a+1)(E):C(E)}function C(E){return E===null||Oe(E)?e.check(g1,S,A)(E):(e.enter("codeFlowValue"),O(E))}function O(E){return E===null||Oe(E)?(e.exit("codeFlowValue"),C(E)):(e.consume(E),O)}function A(E){return e.exit("codeFenced"),t(E)}function I(E,L,F){let H=0;return R;function R(Q){return E.enter("lineEnding"),E.consume(Q),E.exit("lineEnding"),W}function W(Q){return E.enter("codeFencedFence"),Re(Q)?$e(E,M,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(Q):M(Q)}function M(Q){return Q===u?(E.enter("codeFencedFenceSequence"),Z(Q)):F(Q)}function Z(Q){return Q===u?(H++,E.consume(Q),Z):H>=l?(E.exit("codeFencedFenceSequence"),Re(Q)?$e(E,Y,"whitespace")(Q):Y(Q)):F(Q)}function Y(Q){return Q===null||Oe(Q)?(E.exit("codeFencedFence"),L(Q)):F(Q)}}}function wz(e,t,n){const r=this;return i;function i(l){return l===null?n(l):(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),a)}function a(l){return r.parser.lazy[r.now().line]?n(l):t(l)}}const Mp={name:"codeIndented",tokenize:Sz},kz={partial:!0,tokenize:jz};function Sz(e,t,n){const r=this;return i;function i(f){return e.enter("codeIndented"),$e(e,a,"linePrefix",5)(f)}function a(f){const d=r.events[r.events.length-1];return d&&d[1].type==="linePrefix"&&d[2].sliceSerialize(d[1],!0).length>=4?l(f):n(f)}function l(f){return f===null?c(f):Oe(f)?e.attempt(kz,l,c)(f):(e.enter("codeFlowValue"),u(f))}function u(f){return f===null||Oe(f)?(e.exit("codeFlowValue"),l(f)):(e.consume(f),u)}function c(f){return e.exit("codeIndented"),t(f)}}function jz(e,t,n){const r=this;return i;function i(l){return r.parser.lazy[r.now().line]?n(l):Oe(l)?(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),i):$e(e,a,"linePrefix",5)(l)}function a(l){const u=r.events[r.events.length-1];return u&&u[1].type==="linePrefix"&&u[2].sliceSerialize(u[1],!0).length>=4?t(l):Oe(l)?i(l):n(l)}}const Pz={name:"codeText",previous:Cz,resolve:Ez,tokenize:Oz};function Ez(e){let t=e.length-4,n=3,r,i;if((e[n][1].type==="lineEnding"||e[n][1].type==="space")&&(e[t][1].type==="lineEnding"||e[t][1].type==="space")){for(r=n;++r=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+t+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return tthis.left.length?this.right.slice(this.right.length-r+this.left.length,this.right.length-t+this.left.length).reverse():this.left.slice(t).concat(this.right.slice(this.right.length-r+this.left.length).reverse())}splice(t,n,r){const i=n||0;this.setCursor(Math.trunc(t));const a=this.right.splice(this.right.length-i,Number.POSITIVE_INFINITY);return r&&Fl(this.left,r),a.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(t){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(t)}pushMany(t){this.setCursor(Number.POSITIVE_INFINITY),Fl(this.left,t)}unshift(t){this.setCursor(0),this.right.push(t)}unshiftMany(t){this.setCursor(0),Fl(this.right,t.reverse())}setCursor(t){if(!(t===this.left.length||t>this.left.length&&this.right.length===0||t<0&&this.left.length===0))if(t=4?t(l):e.interrupt(r.parser.constructs.flow,n,t)(l)}}function RC(e,t,n,r,i,a,l,u,c){const f=c||Number.POSITIVE_INFINITY;let d=0;return p;function p(P){return P===60?(e.enter(r),e.enter(i),e.enter(a),e.consume(P),e.exit(a),g):P===null||P===32||P===41||Rc(P)?n(P):(e.enter(r),e.enter(l),e.enter(u),e.enter("chunkString",{contentType:"string"}),S(P))}function g(P){return P===62?(e.enter(a),e.consume(P),e.exit(a),e.exit(i),e.exit(r),t):(e.enter(u),e.enter("chunkString",{contentType:"string"}),y(P))}function y(P){return P===62?(e.exit("chunkString"),e.exit(u),g(P)):P===null||P===60||Oe(P)?n(P):(e.consume(P),P===92?x:y)}function x(P){return P===60||P===62||P===92?(e.consume(P),y):y(P)}function S(P){return!d&&(P===null||P===41||Xe(P))?(e.exit("chunkString"),e.exit(u),e.exit(l),e.exit(r),t(P)):d999||y===null||y===91||y===93&&!c||y===94&&!u&&"_hiddenFootnoteSupport"in l.parser.constructs?n(y):y===93?(e.exit(a),e.enter(i),e.consume(y),e.exit(i),e.exit(r),t):Oe(y)?(e.enter("lineEnding"),e.consume(y),e.exit("lineEnding"),d):(e.enter("chunkString",{contentType:"string"}),p(y))}function p(y){return y===null||y===91||y===93||Oe(y)||u++>999?(e.exit("chunkString"),d(y)):(e.consume(y),c||(c=!Re(y)),y===92?g:p)}function g(y){return y===91||y===92||y===93?(e.consume(y),u++,p):p(y)}}function $C(e,t,n,r,i,a){let l;return u;function u(g){return g===34||g===39||g===40?(e.enter(r),e.enter(i),e.consume(g),e.exit(i),l=g===40?41:g,c):n(g)}function c(g){return g===l?(e.enter(i),e.consume(g),e.exit(i),e.exit(r),t):(e.enter(a),f(g))}function f(g){return g===l?(e.exit(a),c(l)):g===null?n(g):Oe(g)?(e.enter("lineEnding"),e.consume(g),e.exit("lineEnding"),$e(e,f,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),d(g))}function d(g){return g===l||g===null||Oe(g)?(e.exit("chunkString"),f(g)):(e.consume(g),g===92?p:d)}function p(g){return g===l||g===92?(e.consume(g),d):d(g)}}function is(e,t){let n;return r;function r(i){return Oe(i)?(e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),n=!0,r):Re(i)?$e(e,r,n?"linePrefix":"lineSuffix")(i):t(i)}}const Lz={name:"definition",tokenize:zz},Rz={partial:!0,tokenize:$z};function zz(e,t,n){const r=this;let i;return a;function a(y){return e.enter("definition"),l(y)}function l(y){return zC.call(r,e,u,n,"definitionLabel","definitionLabelMarker","definitionLabelString")(y)}function u(y){return i=pr(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)),y===58?(e.enter("definitionMarker"),e.consume(y),e.exit("definitionMarker"),c):n(y)}function c(y){return Xe(y)?is(e,f)(y):f(y)}function f(y){return RC(e,d,n,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(y)}function d(y){return e.attempt(Rz,p,p)(y)}function p(y){return Re(y)?$e(e,g,"whitespace")(y):g(y)}function g(y){return y===null||Oe(y)?(e.exit("definition"),r.parser.defined.push(i),t(y)):n(y)}}function $z(e,t,n){return r;function r(u){return Xe(u)?is(e,i)(u):n(u)}function i(u){return $C(e,a,n,"definitionTitle","definitionTitleMarker","definitionTitleString")(u)}function a(u){return Re(u)?$e(e,l,"whitespace")(u):l(u)}function l(u){return u===null||Oe(u)?t(u):n(u)}}const Fz={name:"hardBreakEscape",tokenize:Bz};function Bz(e,t,n){return r;function r(a){return e.enter("hardBreakEscape"),e.consume(a),i}function i(a){return Oe(a)?(e.exit("hardBreakEscape"),t(a)):n(a)}}const Uz={name:"headingAtx",resolve:Wz,tokenize:qz};function Wz(e,t){let n=e.length-2,r=3,i,a;return e[r][1].type==="whitespace"&&(r+=2),n-2>r&&e[n][1].type==="whitespace"&&(n-=2),e[n][1].type==="atxHeadingSequence"&&(r===n-1||n-4>r&&e[n-2][1].type==="whitespace")&&(n-=r+1===n?2:4),n>r&&(i={type:"atxHeadingText",start:e[r][1].start,end:e[n][1].end},a={type:"chunkText",start:e[r][1].start,end:e[n][1].end,contentType:"text"},Rn(e,r,n-r+1,[["enter",i,t],["enter",a,t],["exit",a,t],["exit",i,t]])),e}function qz(e,t,n){let r=0;return i;function i(d){return e.enter("atxHeading"),a(d)}function a(d){return e.enter("atxHeadingSequence"),l(d)}function l(d){return d===35&&r++<6?(e.consume(d),l):d===null||Xe(d)?(e.exit("atxHeadingSequence"),u(d)):n(d)}function u(d){return d===35?(e.enter("atxHeadingSequence"),c(d)):d===null||Oe(d)?(e.exit("atxHeading"),t(d)):Re(d)?$e(e,u,"whitespace")(d):(e.enter("atxHeadingText"),f(d))}function c(d){return d===35?(e.consume(d),c):(e.exit("atxHeadingSequence"),u(d))}function f(d){return d===null||d===35||Xe(d)?(e.exit("atxHeadingText"),u(d)):(e.consume(d),f)}}const Hz=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],y1=["pre","script","style","textarea"],Vz={concrete:!0,name:"htmlFlow",resolveTo:Yz,tokenize:Xz},Kz={partial:!0,tokenize:Zz},Gz={partial:!0,tokenize:Qz};function Yz(e){let t=e.length;for(;t--&&!(e[t][0]==="enter"&&e[t][1].type==="htmlFlow"););return t>1&&e[t-2][1].type==="linePrefix"&&(e[t][1].start=e[t-2][1].start,e[t+1][1].start=e[t-2][1].start,e.splice(t-2,2)),e}function Xz(e,t,n){const r=this;let i,a,l,u,c;return f;function f(_){return d(_)}function d(_){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(_),p}function p(_){return _===33?(e.consume(_),g):_===47?(e.consume(_),a=!0,S):_===63?(e.consume(_),i=3,r.interrupt?t:T):cn(_)?(e.consume(_),l=String.fromCharCode(_),w):n(_)}function g(_){return _===45?(e.consume(_),i=2,y):_===91?(e.consume(_),i=5,u=0,x):cn(_)?(e.consume(_),i=4,r.interrupt?t:T):n(_)}function y(_){return _===45?(e.consume(_),r.interrupt?t:T):n(_)}function x(_){const te="CDATA[";return _===te.charCodeAt(u++)?(e.consume(_),u===te.length?r.interrupt?t:M:x):n(_)}function S(_){return cn(_)?(e.consume(_),l=String.fromCharCode(_),w):n(_)}function w(_){if(_===null||_===47||_===62||Xe(_)){const te=_===47,fe=l.toLowerCase();return!te&&!a&&y1.includes(fe)?(i=1,r.interrupt?t(_):M(_)):Hz.includes(l.toLowerCase())?(i=6,te?(e.consume(_),P):r.interrupt?t(_):M(_)):(i=7,r.interrupt&&!r.parser.lazy[r.now().line]?n(_):a?C(_):O(_))}return _===45||rn(_)?(e.consume(_),l+=String.fromCharCode(_),w):n(_)}function P(_){return _===62?(e.consume(_),r.interrupt?t:M):n(_)}function C(_){return Re(_)?(e.consume(_),C):R(_)}function O(_){return _===47?(e.consume(_),R):_===58||_===95||cn(_)?(e.consume(_),A):Re(_)?(e.consume(_),O):R(_)}function A(_){return _===45||_===46||_===58||_===95||rn(_)?(e.consume(_),A):I(_)}function I(_){return _===61?(e.consume(_),E):Re(_)?(e.consume(_),I):O(_)}function E(_){return _===null||_===60||_===61||_===62||_===96?n(_):_===34||_===39?(e.consume(_),c=_,L):Re(_)?(e.consume(_),E):F(_)}function L(_){return _===c?(e.consume(_),c=null,H):_===null||Oe(_)?n(_):(e.consume(_),L)}function F(_){return _===null||_===34||_===39||_===47||_===60||_===61||_===62||_===96||Xe(_)?I(_):(e.consume(_),F)}function H(_){return _===47||_===62||Re(_)?O(_):n(_)}function R(_){return _===62?(e.consume(_),W):n(_)}function W(_){return _===null||Oe(_)?M(_):Re(_)?(e.consume(_),W):n(_)}function M(_){return _===45&&i===2?(e.consume(_),he):_===60&&i===1?(e.consume(_),de):_===62&&i===4?(e.consume(_),$):_===63&&i===3?(e.consume(_),T):_===93&&i===5?(e.consume(_),ae):Oe(_)&&(i===6||i===7)?(e.exit("htmlFlowData"),e.check(Kz,U,Z)(_)):_===null||Oe(_)?(e.exit("htmlFlowData"),Z(_)):(e.consume(_),M)}function Z(_){return e.check(Gz,Y,U)(_)}function Y(_){return e.enter("lineEnding"),e.consume(_),e.exit("lineEnding"),Q}function Q(_){return _===null||Oe(_)?Z(_):(e.enter("htmlFlowData"),M(_))}function he(_){return _===45?(e.consume(_),T):M(_)}function de(_){return _===47?(e.consume(_),l="",J):M(_)}function J(_){if(_===62){const te=l.toLowerCase();return y1.includes(te)?(e.consume(_),$):M(_)}return cn(_)&&l.length<8?(e.consume(_),l+=String.fromCharCode(_),J):M(_)}function ae(_){return _===93?(e.consume(_),T):M(_)}function T(_){return _===62?(e.consume(_),$):_===45&&i===2?(e.consume(_),T):M(_)}function $(_){return _===null||Oe(_)?(e.exit("htmlFlowData"),U(_)):(e.consume(_),$)}function U(_){return e.exit("htmlFlow"),t(_)}}function Qz(e,t,n){const r=this;return i;function i(l){return Oe(l)?(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),a):n(l)}function a(l){return r.parser.lazy[r.now().line]?n(l):t(l)}}function Zz(e,t,n){return r;function r(i){return e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),e.attempt(Os,t,n)}}const Jz={name:"htmlText",tokenize:e3};function e3(e,t,n){const r=this;let i,a,l;return u;function u(T){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(T),c}function c(T){return T===33?(e.consume(T),f):T===47?(e.consume(T),I):T===63?(e.consume(T),O):cn(T)?(e.consume(T),F):n(T)}function f(T){return T===45?(e.consume(T),d):T===91?(e.consume(T),a=0,x):cn(T)?(e.consume(T),C):n(T)}function d(T){return T===45?(e.consume(T),y):n(T)}function p(T){return T===null?n(T):T===45?(e.consume(T),g):Oe(T)?(l=p,de(T)):(e.consume(T),p)}function g(T){return T===45?(e.consume(T),y):p(T)}function y(T){return T===62?he(T):T===45?g(T):p(T)}function x(T){const $="CDATA[";return T===$.charCodeAt(a++)?(e.consume(T),a===$.length?S:x):n(T)}function S(T){return T===null?n(T):T===93?(e.consume(T),w):Oe(T)?(l=S,de(T)):(e.consume(T),S)}function w(T){return T===93?(e.consume(T),P):S(T)}function P(T){return T===62?he(T):T===93?(e.consume(T),P):S(T)}function C(T){return T===null||T===62?he(T):Oe(T)?(l=C,de(T)):(e.consume(T),C)}function O(T){return T===null?n(T):T===63?(e.consume(T),A):Oe(T)?(l=O,de(T)):(e.consume(T),O)}function A(T){return T===62?he(T):O(T)}function I(T){return cn(T)?(e.consume(T),E):n(T)}function E(T){return T===45||rn(T)?(e.consume(T),E):L(T)}function L(T){return Oe(T)?(l=L,de(T)):Re(T)?(e.consume(T),L):he(T)}function F(T){return T===45||rn(T)?(e.consume(T),F):T===47||T===62||Xe(T)?H(T):n(T)}function H(T){return T===47?(e.consume(T),he):T===58||T===95||cn(T)?(e.consume(T),R):Oe(T)?(l=H,de(T)):Re(T)?(e.consume(T),H):he(T)}function R(T){return T===45||T===46||T===58||T===95||rn(T)?(e.consume(T),R):W(T)}function W(T){return T===61?(e.consume(T),M):Oe(T)?(l=W,de(T)):Re(T)?(e.consume(T),W):H(T)}function M(T){return T===null||T===60||T===61||T===62||T===96?n(T):T===34||T===39?(e.consume(T),i=T,Z):Oe(T)?(l=M,de(T)):Re(T)?(e.consume(T),M):(e.consume(T),Y)}function Z(T){return T===i?(e.consume(T),i=void 0,Q):T===null?n(T):Oe(T)?(l=Z,de(T)):(e.consume(T),Z)}function Y(T){return T===null||T===34||T===39||T===60||T===61||T===96?n(T):T===47||T===62||Xe(T)?H(T):(e.consume(T),Y)}function Q(T){return T===47||T===62||Xe(T)?H(T):n(T)}function he(T){return T===62?(e.consume(T),e.exit("htmlTextData"),e.exit("htmlText"),t):n(T)}function de(T){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(T),e.exit("lineEnding"),J}function J(T){return Re(T)?$e(e,ae,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(T):ae(T)}function ae(T){return e.enter("htmlTextData"),l(T)}}const iy={name:"labelEnd",resolveAll:i3,resolveTo:a3,tokenize:o3},t3={tokenize:l3},n3={tokenize:s3},r3={tokenize:u3};function i3(e){let t=-1;const n=[];for(;++t=3&&(f===null||Oe(f))?(e.exit("thematicBreak"),t(f)):n(f)}function c(f){return f===i?(e.consume(f),r++,c):(e.exit("thematicBreakSequence"),Re(f)?$e(e,u,"whitespace")(f):u(f))}}const Sn={continuation:{tokenize:x3},exit:w3,name:"list",tokenize:y3},g3={partial:!0,tokenize:k3},v3={partial:!0,tokenize:b3};function y3(e,t,n){const r=this,i=r.events[r.events.length-1];let a=i&&i[1].type==="linePrefix"?i[2].sliceSerialize(i[1],!0).length:0,l=0;return u;function u(y){const x=r.containerState.type||(y===42||y===43||y===45?"listUnordered":"listOrdered");if(x==="listUnordered"?!r.containerState.marker||y===r.containerState.marker:zg(y)){if(r.containerState.type||(r.containerState.type=x,e.enter(x,{_container:!0})),x==="listUnordered")return e.enter("listItemPrefix"),y===42||y===45?e.check(Nc,n,f)(y):f(y);if(!r.interrupt||y===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),c(y)}return n(y)}function c(y){return zg(y)&&++l<10?(e.consume(y),c):(!r.interrupt||l<2)&&(r.containerState.marker?y===r.containerState.marker:y===41||y===46)?(e.exit("listItemValue"),f(y)):n(y)}function f(y){return e.enter("listItemMarker"),e.consume(y),e.exit("listItemMarker"),r.containerState.marker=r.containerState.marker||y,e.check(Os,r.interrupt?n:d,e.attempt(g3,g,p))}function d(y){return r.containerState.initialBlankLine=!0,a++,g(y)}function p(y){return Re(y)?(e.enter("listItemPrefixWhitespace"),e.consume(y),e.exit("listItemPrefixWhitespace"),g):n(y)}function g(y){return r.containerState.size=a+r.sliceSerialize(e.exit("listItemPrefix"),!0).length,t(y)}}function x3(e,t,n){const r=this;return r.containerState._closeFlow=void 0,e.check(Os,i,a);function i(u){return r.containerState.furtherBlankLines=r.containerState.furtherBlankLines||r.containerState.initialBlankLine,$e(e,t,"listItemIndent",r.containerState.size+1)(u)}function a(u){return r.containerState.furtherBlankLines||!Re(u)?(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,l(u)):(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,e.attempt(v3,t,l)(u))}function l(u){return r.containerState._closeFlow=!0,r.interrupt=void 0,$e(e,e.attempt(Sn,t,n),"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(u)}}function b3(e,t,n){const r=this;return $e(e,i,"listItemIndent",r.containerState.size+1);function i(a){const l=r.events[r.events.length-1];return l&&l[1].type==="listItemIndent"&&l[2].sliceSerialize(l[1],!0).length===r.containerState.size?t(a):n(a)}}function w3(e){e.exit(this.containerState.type)}function k3(e,t,n){const r=this;return $e(e,i,"listItemPrefixWhitespace",r.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function i(a){const l=r.events[r.events.length-1];return!Re(a)&&l&&l[1].type==="listItemPrefixWhitespace"?t(a):n(a)}}const x1={name:"setextUnderline",resolveTo:S3,tokenize:j3};function S3(e,t){let n=e.length,r,i,a;for(;n--;)if(e[n][0]==="enter"){if(e[n][1].type==="content"){r=n;break}e[n][1].type==="paragraph"&&(i=n)}else e[n][1].type==="content"&&e.splice(n,1),!a&&e[n][1].type==="definition"&&(a=n);const l={type:"setextHeading",start:{...e[r][1].start},end:{...e[e.length-1][1].end}};return e[i][1].type="setextHeadingText",a?(e.splice(i,0,["enter",l,t]),e.splice(a+1,0,["exit",e[r][1],t]),e[r][1].end={...e[a][1].end}):e[r][1]=l,e.push(["exit",l,t]),e}function j3(e,t,n){const r=this;let i;return a;function a(f){let d=r.events.length,p;for(;d--;)if(r.events[d][1].type!=="lineEnding"&&r.events[d][1].type!=="linePrefix"&&r.events[d][1].type!=="content"){p=r.events[d][1].type==="paragraph";break}return!r.parser.lazy[r.now().line]&&(r.interrupt||p)?(e.enter("setextHeadingLine"),i=f,l(f)):n(f)}function l(f){return e.enter("setextHeadingLineSequence"),u(f)}function u(f){return f===i?(e.consume(f),u):(e.exit("setextHeadingLineSequence"),Re(f)?$e(e,c,"lineSuffix")(f):c(f))}function c(f){return f===null||Oe(f)?(e.exit("setextHeadingLine"),t(f)):n(f)}}const P3={tokenize:E3};function E3(e){const t=this,n=e.attempt(Os,r,e.attempt(this.parser.constructs.flowInitial,i,$e(e,e.attempt(this.parser.constructs.flow,i,e.attempt(_z,i)),"linePrefix")));return n;function r(a){if(a===null){e.consume(a);return}return e.enter("lineEndingBlank"),e.consume(a),e.exit("lineEndingBlank"),t.currentConstruct=void 0,n}function i(a){if(a===null){e.consume(a);return}return e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),t.currentConstruct=void 0,n}}const C3={resolveAll:BC()},O3=FC("string"),N3=FC("text");function FC(e){return{resolveAll:BC(e==="text"?A3:void 0),tokenize:t};function t(n){const r=this,i=this.parser.constructs[e],a=n.attempt(i,l,u);return l;function l(d){return f(d)?a(d):u(d)}function u(d){if(d===null){n.consume(d);return}return n.enter("data"),n.consume(d),c}function c(d){return f(d)?(n.exit("data"),a(d)):(n.consume(d),c)}function f(d){if(d===null)return!0;const p=i[d];let g=-1;if(p)for(;++g-1){const u=l[0];typeof u=="string"?l[0]=u.slice(r):l.shift()}a>0&&l.push(e[i].slice(0,a))}return l}function W3(e,t){let n=-1;const r=[];let i;for(;++n<\/script>",o=o.removeChild(o.firstChild)):typeof v.is=="string"?o=N.createElement(p,{is:v.is}):(o=N.createElement(p),p==="select"&&(N=o,v.multiple?N.multiple=!0:v.size&&(N.size=v.size))):o=N.createElementNS(o,p),o[kr]=s,o[xl]=v,tw(o,s,!1,!1),s.stateNode=o;e:{switch(N=br(p,v),p){case"dialog":et("cancel",o),et("close",o),b=v;break;case"iframe":case"object":case"embed":et("load",o),b=v;break;case"video":case"audio":for(b=0;bpo&&(s.flags|=128,v=!0,Nl(j,!1),s.lanes=4194304)}else{if(!v)if(o=Iu(N),o!==null){if(s.flags|=128,v=!0,p=o.updateQueue,p!==null&&(s.updateQueue=p,s.flags|=4),Nl(j,!0),j.tail===null&&j.tailMode==="hidden"&&!N.alternate&&!it)return Jt(s),null}else 2*gt()-j.renderingStartTime>po&&p!==1073741824&&(s.flags|=128,v=!0,Nl(j,!1),s.lanes=4194304);j.isBackwards?(N.sibling=s.child,s.child=N):(p=j.last,p!==null?p.sibling=N:s.child=N,j.last=N)}return j.tail!==null?(s=j.tail,j.rendering=s,j.tail=s.sibling,j.renderingStartTime=gt(),s.sibling=null,p=lt.current,Qe(lt,v?p&1|2:p&1),s):(Jt(s),null);case 22:case 23:return ph(),v=s.memoizedState!==null,o!==null&&o.memoizedState!==null!==v&&(s.flags|=8192),v&&(s.mode&1)!==0?(Tn&1073741824)!==0&&(Jt(s),s.subtreeFlags&6&&(s.flags|=8192)):Jt(s),null;case 24:return null;case 25:return null}throw Error(n(156,s.tag))}function dD(o,s){switch(kp(s),s.tag){case 1:return yn(s.type)&&wu(),o=s.flags,o&65536?(s.flags=o&-65537|128,s):null;case 3:return so(),tt(vn),tt(Qt),Mp(),o=s.flags,(o&65536)!==0&&(o&128)===0?(s.flags=o&-65537|128,s):null;case 5:return Tp(s),null;case 13:if(tt(lt),o=s.memoizedState,o!==null&&o.dehydrated!==null){if(s.alternate===null)throw Error(n(340));io()}return o=s.flags,o&65536?(s.flags=o&-65537|128,s):null;case 19:return tt(lt),null;case 4:return so(),null;case 10:return Op(s.type._context),null;case 22:case 23:return ph(),null;case 24:return null;default:return null}}var Bu=!1,en=!1,pD=typeof WeakSet=="function"?WeakSet:Set,ve=null;function co(o,s){var p=o.ref;if(p!==null)if(typeof p=="function")try{p(null)}catch(v){dt(o,s,v)}else p.current=null}function th(o,s,p){try{p()}catch(v){dt(o,s,v)}}var iw=!1;function hD(o,s){if(pp=lu,o=L0(),ap(o)){if("selectionStart"in o)var p={start:o.selectionStart,end:o.selectionEnd};else e:{p=(p=o.ownerDocument)&&p.defaultView||window;var v=p.getSelection&&p.getSelection();if(v&&v.rangeCount!==0){p=v.anchorNode;var b=v.anchorOffset,j=v.focusNode;v=v.focusOffset;try{p.nodeType,j.nodeType}catch{p=null;break e}var N=0,M=-1,z=-1,K=0,re=0,oe=o,ne=null;t:for(;;){for(var me;oe!==p||b!==0&&oe.nodeType!==3||(M=N+b),oe!==j||v!==0&&oe.nodeType!==3||(z=N+v),oe.nodeType===3&&(N+=oe.nodeValue.length),(me=oe.firstChild)!==null;)ne=oe,oe=me;for(;;){if(oe===o)break t;if(ne===p&&++K===b&&(M=N),ne===j&&++re===v&&(z=N),(me=oe.nextSibling)!==null)break;oe=ne,ne=oe.parentNode}oe=me}p=M===-1||z===-1?null:{start:M,end:z}}else p=null}p=p||{start:0,end:0}}else p=null;for(hp={focusedElem:o,selectionRange:p},lu=!1,ve=s;ve!==null;)if(s=ve,o=s.child,(s.subtreeFlags&1028)!==0&&o!==null)o.return=s,ve=o;else for(;ve!==null;){s=ve;try{var xe=s.alternate;if((s.flags&1024)!==0)switch(s.tag){case 0:case 11:case 15:break;case 1:if(xe!==null){var be=xe.memoizedProps,vt=xe.memoizedState,q=s.stateNode,B=q.getSnapshotBeforeUpdate(s.elementType===s.type?be:or(s.type,be),vt);q.__reactInternalSnapshotBeforeUpdate=B}break;case 3:var V=s.stateNode.containerInfo;V.nodeType===1?V.textContent="":V.nodeType===9&&V.documentElement&&V.removeChild(V.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(n(163))}}catch(ue){dt(s,s.return,ue)}if(o=s.sibling,o!==null){o.return=s.return,ve=o;break}ve=s.return}return xe=iw,iw=!1,xe}function Al(o,s,p){var v=s.updateQueue;if(v=v!==null?v.lastEffect:null,v!==null){var b=v=v.next;do{if((b.tag&o)===o){var j=b.destroy;b.destroy=void 0,j!==void 0&&th(s,p,j)}b=b.next}while(b!==v)}}function Uu(o,s){if(s=s.updateQueue,s=s!==null?s.lastEffect:null,s!==null){var p=s=s.next;do{if((p.tag&o)===o){var v=p.create;p.destroy=v()}p=p.next}while(p!==s)}}function nh(o){var s=o.ref;if(s!==null){var p=o.stateNode;switch(o.tag){case 5:o=p;break;default:o=p}typeof s=="function"?s(o):s.current=o}}function aw(o){var s=o.alternate;s!==null&&(o.alternate=null,aw(s)),o.child=null,o.deletions=null,o.sibling=null,o.tag===5&&(s=o.stateNode,s!==null&&(delete s[kr],delete s[xl],delete s[yp],delete s[X2],delete s[Q2])),o.stateNode=null,o.return=null,o.dependencies=null,o.memoizedProps=null,o.memoizedState=null,o.pendingProps=null,o.stateNode=null,o.updateQueue=null}function ow(o){return o.tag===5||o.tag===3||o.tag===4}function lw(o){e:for(;;){for(;o.sibling===null;){if(o.return===null||ow(o.return))return null;o=o.return}for(o.sibling.return=o.return,o=o.sibling;o.tag!==5&&o.tag!==6&&o.tag!==18;){if(o.flags&2||o.child===null||o.tag===4)continue e;o.child.return=o,o=o.child}if(!(o.flags&2))return o.stateNode}}function rh(o,s,p){var v=o.tag;if(v===5||v===6)o=o.stateNode,s?p.nodeType===8?p.parentNode.insertBefore(o,s):p.insertBefore(o,s):(p.nodeType===8?(s=p.parentNode,s.insertBefore(o,p)):(s=p,s.appendChild(o)),p=p._reactRootContainer,p!=null||s.onclick!==null||(s.onclick=xu));else if(v!==4&&(o=o.child,o!==null))for(rh(o,s,p),o=o.sibling;o!==null;)rh(o,s,p),o=o.sibling}function ih(o,s,p){var v=o.tag;if(v===5||v===6)o=o.stateNode,s?p.insertBefore(o,s):p.appendChild(o);else if(v!==4&&(o=o.child,o!==null))for(ih(o,s,p),o=o.sibling;o!==null;)ih(o,s,p),o=o.sibling}var Ht=null,lr=!1;function Di(o,s,p){for(p=p.child;p!==null;)sw(o,s,p),p=p.sibling}function sw(o,s,p){if(wr&&typeof wr.onCommitFiberUnmount=="function")try{wr.onCommitFiberUnmount(tu,p)}catch{}switch(p.tag){case 5:en||co(p,s);case 6:var v=Ht,b=lr;Ht=null,Di(o,s,p),Ht=v,lr=b,Ht!==null&&(lr?(o=Ht,p=p.stateNode,o.nodeType===8?o.parentNode.removeChild(p):o.removeChild(p)):Ht.removeChild(p.stateNode));break;case 18:Ht!==null&&(lr?(o=Ht,p=p.stateNode,o.nodeType===8?vp(o.parentNode,p):o.nodeType===1&&vp(o,p),sl(o)):vp(Ht,p.stateNode));break;case 4:v=Ht,b=lr,Ht=p.stateNode.containerInfo,lr=!0,Di(o,s,p),Ht=v,lr=b;break;case 0:case 11:case 14:case 15:if(!en&&(v=p.updateQueue,v!==null&&(v=v.lastEffect,v!==null))){b=v=v.next;do{var j=b,N=j.destroy;j=j.tag,N!==void 0&&((j&2)!==0||(j&4)!==0)&&th(p,s,N),b=b.next}while(b!==v)}Di(o,s,p);break;case 1:if(!en&&(co(p,s),v=p.stateNode,typeof v.componentWillUnmount=="function"))try{v.props=p.memoizedProps,v.state=p.memoizedState,v.componentWillUnmount()}catch(M){dt(p,s,M)}Di(o,s,p);break;case 21:Di(o,s,p);break;case 22:p.mode&1?(en=(v=en)||p.memoizedState!==null,Di(o,s,p),en=v):Di(o,s,p);break;default:Di(o,s,p)}}function uw(o){var s=o.updateQueue;if(s!==null){o.updateQueue=null;var p=o.stateNode;p===null&&(p=o.stateNode=new pD),s.forEach(function(v){var b=SD.bind(null,o,v);p.has(v)||(p.add(v),v.then(b,b))})}}function sr(o,s){var p=s.deletions;if(p!==null)for(var v=0;vb&&(b=N),v&=~j}if(v=b,v=gt()-v,v=(120>v?120:480>v?480:1080>v?1080:1920>v?1920:3e3>v?3e3:4320>v?4320:1960*gD(v/1960))-v,10o?16:o,Li===null)var v=!1;else{if(o=Li,Li=null,Ku=0,(Be&6)!==0)throw Error(n(331));var b=Be;for(Be|=4,ve=o.current;ve!==null;){var j=ve,N=j.child;if((ve.flags&16)!==0){var M=j.deletions;if(M!==null){for(var z=0;zgt()-lh?pa(o,0):oh|=p),wn(o,s)}function kw(o,s){s===0&&((o.mode&1)===0?s=1:(s=ru,ru<<=1,(ru&130023424)===0&&(ru=4194304)));var p=sn();o=Kr(o,s),o!==null&&(rl(o,s,p),wn(o,p))}function kD(o){var s=o.memoizedState,p=0;s!==null&&(p=s.retryLane),kw(o,p)}function SD(o,s){var p=0;switch(o.tag){case 13:var v=o.stateNode,b=o.memoizedState;b!==null&&(p=b.retryLane);break;case 19:v=o.stateNode;break;default:throw Error(n(314))}v!==null&&v.delete(s),kw(o,p)}var Sw;Sw=function(o,s,p){if(o!==null)if(o.memoizedProps!==s.pendingProps||vn.current)xn=!0;else{if((o.lanes&p)===0&&(s.flags&128)===0)return xn=!1,cD(o,s,p);xn=(o.flags&131072)!==0}else xn=!1,it&&(s.flags&1048576)!==0&&nb(s,Pu,s.index);switch(s.lanes=0,s.tag){case 2:var v=s.type;Fu(o,s),o=s.pendingProps;var b=to(s,Qt.current);lo(s,p),b=zp(null,s,v,o,b,p);var j=$p();return s.flags|=1,typeof b=="object"&&b!==null&&typeof b.render=="function"&&b.$$typeof===void 0?(s.tag=1,s.memoizedState=null,s.updateQueue=null,yn(v)?(j=!0,ku(s)):j=!1,s.memoizedState=b.state!==null&&b.state!==void 0?b.state:null,_p(s),b.updater=zu,s.stateNode=b,b._reactInternals=s,Hp(s,v,o,p),s=Yp(null,s,v,!0,j,p)):(s.tag=0,it&&j&&wp(s),ln(null,s,b,p),s=s.child),s;case 16:v=s.elementType;e:{switch(Fu(o,s),o=s.pendingProps,b=v._init,v=b(v._payload),s.type=v,b=s.tag=PD(v),o=or(v,o),b){case 0:s=Gp(null,s,v,o,p);break e;case 1:s=Yb(null,s,v,o,p);break e;case 11:s=qb(null,s,v,o,p);break e;case 14:s=Hb(null,s,v,or(v.type,o),p);break e}throw Error(n(306,v,""))}return s;case 0:return v=s.type,b=s.pendingProps,b=s.elementType===v?b:or(v,b),Gp(o,s,v,b,p);case 1:return v=s.type,b=s.pendingProps,b=s.elementType===v?b:or(v,b),Yb(o,s,v,b,p);case 3:e:{if(Xb(s),o===null)throw Error(n(387));v=s.pendingProps,j=s.memoizedState,b=j.element,fb(o,s),_u(s,v,null,p);var N=s.memoizedState;if(v=N.element,j.isDehydrated)if(j={element:v,isDehydrated:!1,cache:N.cache,pendingSuspenseBoundaries:N.pendingSuspenseBoundaries,transitions:N.transitions},s.updateQueue.baseState=j,s.memoizedState=j,s.flags&256){b=uo(Error(n(423)),s),s=Qb(o,s,v,p,b);break e}else if(v!==b){b=uo(Error(n(424)),s),s=Qb(o,s,v,p,b);break e}else for(In=Oi(s.stateNode.containerInfo.firstChild),_n=s,it=!0,ar=null,p=ub(s,null,v,p),s.child=p;p;)p.flags=p.flags&-3|4096,p=p.sibling;else{if(io(),v===b){s=Yr(o,s,p);break e}ln(o,s,v,p)}s=s.child}return s;case 5:return hb(s),o===null&&jp(s),v=s.type,b=s.pendingProps,j=o!==null?o.memoizedProps:null,N=b.children,mp(v,b)?N=null:j!==null&&mp(v,j)&&(s.flags|=32),Gb(o,s),ln(o,s,N,p),s.child;case 6:return o===null&&jp(s),null;case 13:return Zb(o,s,p);case 4:return Ip(s,s.stateNode.containerInfo),v=s.pendingProps,o===null?s.child=ao(s,null,v,p):ln(o,s,v,p),s.child;case 11:return v=s.type,b=s.pendingProps,b=s.elementType===v?b:or(v,b),qb(o,s,v,b,p);case 7:return ln(o,s,s.pendingProps,p),s.child;case 8:return ln(o,s,s.pendingProps.children,p),s.child;case 12:return ln(o,s,s.pendingProps.children,p),s.child;case 10:e:{if(v=s.type._context,b=s.pendingProps,j=s.memoizedProps,N=b.value,Qe(Ou,v._currentValue),v._currentValue=N,j!==null)if(ir(j.value,N)){if(j.children===b.children&&!vn.current){s=Yr(o,s,p);break e}}else for(j=s.child,j!==null&&(j.return=s);j!==null;){var M=j.dependencies;if(M!==null){N=j.child;for(var z=M.firstContext;z!==null;){if(z.context===v){if(j.tag===1){z=Gr(-1,p&-p),z.tag=2;var K=j.updateQueue;if(K!==null){K=K.shared;var re=K.pending;re===null?z.next=z:(z.next=re.next,re.next=z),K.pending=z}}j.lanes|=p,z=j.alternate,z!==null&&(z.lanes|=p),Np(j.return,p,s),M.lanes|=p;break}z=z.next}}else if(j.tag===10)N=j.type===s.type?null:j.child;else if(j.tag===18){if(N=j.return,N===null)throw Error(n(341));N.lanes|=p,M=N.alternate,M!==null&&(M.lanes|=p),Np(N,p,s),N=j.sibling}else N=j.child;if(N!==null)N.return=j;else for(N=j;N!==null;){if(N===s){N=null;break}if(j=N.sibling,j!==null){j.return=N.return,N=j;break}N=N.return}j=N}ln(o,s,b.children,p),s=s.child}return s;case 9:return b=s.type,v=s.pendingProps.children,lo(s,p),b=Wn(b),v=v(b),s.flags|=1,ln(o,s,v,p),s.child;case 14:return v=s.type,b=or(v,s.pendingProps),b=or(v.type,b),Hb(o,s,v,b,p);case 15:return Vb(o,s,s.type,s.pendingProps,p);case 17:return v=s.type,b=s.pendingProps,b=s.elementType===v?b:or(v,b),Fu(o,s),s.tag=1,yn(v)?(o=!0,ku(s)):o=!1,lo(s,p),Rb(s,v,b),Hp(s,v,b,p),Yp(null,s,v,!0,o,p);case 19:return ew(o,s,p);case 22:return Kb(o,s,p)}throw Error(n(156,s.tag))};function jw(o,s){return r0(o,s)}function jD(o,s,p,v){this.tag=o,this.key=p,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=s,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=v,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Vn(o,s,p,v){return new jD(o,s,p,v)}function mh(o){return o=o.prototype,!(!o||!o.isReactComponent)}function PD(o){if(typeof o=="function")return mh(o)?1:0;if(o!=null){if(o=o.$$typeof,o===D)return 11;if(o===Q)return 14}return 2}function $i(o,s){var p=o.alternate;return p===null?(p=Vn(o.tag,s,o.key,o.mode),p.elementType=o.elementType,p.type=o.type,p.stateNode=o.stateNode,p.alternate=o,o.alternate=p):(p.pendingProps=s,p.type=o.type,p.flags=0,p.subtreeFlags=0,p.deletions=null),p.flags=o.flags&14680064,p.childLanes=o.childLanes,p.lanes=o.lanes,p.child=o.child,p.memoizedProps=o.memoizedProps,p.memoizedState=o.memoizedState,p.updateQueue=o.updateQueue,s=o.dependencies,p.dependencies=s===null?null:{lanes:s.lanes,firstContext:s.firstContext},p.sibling=o.sibling,p.index=o.index,p.ref=o.ref,p}function Qu(o,s,p,v,b,j){var N=2;if(v=o,typeof o=="function")mh(o)&&(N=1);else if(typeof o=="string")N=5;else e:switch(o){case L:return ma(p.children,b,j,s);case F:N=8,b|=8;break;case H:return o=Vn(12,p,s,b|2),o.elementType=H,o.lanes=j,o;case Z:return o=Vn(13,p,s,b),o.elementType=Z,o.lanes=j,o;case Y:return o=Vn(19,p,s,b),o.elementType=Y,o.lanes=j,o;case de:return Zu(p,b,j,s);default:if(typeof o=="object"&&o!==null)switch(o.$$typeof){case R:N=10;break e;case W:N=9;break e;case D:N=11;break e;case Q:N=14;break e;case pe:N=16,v=null;break e}throw Error(n(130,o==null?o:typeof o,""))}return s=Vn(N,p,s,b),s.elementType=o,s.type=v,s.lanes=j,s}function ma(o,s,p,v){return o=Vn(7,o,v,s),o.lanes=p,o}function Zu(o,s,p,v){return o=Vn(22,o,v,s),o.elementType=de,o.lanes=p,o.stateNode={isHidden:!1},o}function gh(o,s,p){return o=Vn(6,o,null,s),o.lanes=p,o}function vh(o,s,p){return s=Vn(4,o.children!==null?o.children:[],o.key,s),s.lanes=p,s.stateNode={containerInfo:o.containerInfo,pendingChildren:null,implementation:o.implementation},s}function ED(o,s,p,v,b){this.tag=s,this.containerInfo=o,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=qd(0),this.expirationTimes=qd(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=qd(0),this.identifierPrefix=v,this.onRecoverableError=b,this.mutableSourceEagerHydrationData=null}function yh(o,s,p,v,b,j,N,M,z){return o=new ED(o,s,p,M,z),s===1?(s=1,j===!0&&(s|=8)):s=0,j=Vn(3,null,null,s),o.current=j,j.stateNode=o,j.memoizedState={element:v,isDehydrated:p,cache:null,transitions:null,pendingSuspenseBoundaries:null},_p(j),o}function CD(o,s,p){var v=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}return e(),Ph.exports=BD(),Ph.exports}var zw;function UD(){if(zw)return ac;zw=1;var e=KE();return ac.createRoot=e.createRoot,ac.hydrateRoot=e.hydrateRoot,ac}var WD=UD(),k=Fo();const qD=yr(k),HD=MD({__proto__:null,default:qD},[k]);function VD(){return m.jsx("a",{href:"#/",className:"flex items-center",children:m.jsx("span",{className:"font-bold text-lg",children:"Claude Pilot Console"})})}const KD={primary:"btn-primary",secondary:"btn-secondary",ghost:"btn-ghost",outline:"btn-outline",error:"btn-error"},GD={xs:"btn-xs",sm:"btn-sm",md:"",lg:"btn-lg"};function Yt({variant:e="primary",size:t="md",loading:n=!1,className:r="",children:i,disabled:a,...l}){return m.jsxs("button",{className:`btn ${KD[e]} ${GD[t]} ${r}`,disabled:a||n,...l,children:[n&&m.jsx("span",{className:"loading loading-spinner loading-sm"}),i]})}function wt({children:e,className:t="",compact:n=!1,onClick:r}){return m.jsx("div",{className:`card bg-base-100 shadow-sm border border-base-200 ${n?"card-compact":""} ${t}`,onClick:r,children:e})}function kt({children:e,className:t=""}){return m.jsx("div",{className:`card-body ${t}`,children:e})}function Vi({children:e,className:t=""}){return m.jsx("h2",{className:`card-title ${t}`,children:e})}const YD={primary:"badge-primary",secondary:"badge-secondary",accent:"badge-accent",ghost:"badge-ghost",info:"badge-info",success:"badge-success",warning:"badge-warning",error:"badge-error"},XD={xs:"badge-xs",sm:"badge-sm",md:"",lg:"badge-lg"};function Te({children:e,variant:t="ghost",size:n="md",outline:r=!1,className:i=""}){return m.jsx("span",{className:`badge ${YD[t]} ${XD[n]} ${r?"badge-outline":""} ${i}`,children:e})}const QD={xs:"select-xs",sm:"select-sm",md:"",lg:"select-lg"};function ZD({label:e,options:t,selectSize:n="md",error:r,className:i="",...a}){return m.jsxs("div",{className:"form-control w-full",children:[e&&m.jsx("label",{className:"label",children:m.jsx("span",{className:"label-text",children:e})}),m.jsx("select",{className:`select select-bordered w-full ${QD[n]} ${r?"select-error":""} ${i}`,...a,children:t.map(l=>m.jsx("option",{value:l.value,children:l.label},l.value))}),r&&m.jsx("label",{className:"label",children:m.jsx("span",{className:"label-text-alt text-error",children:r})})]})}function GE({open:e,onClose:t,title:n,children:r,actions:i}){return m.jsxs("dialog",{className:`modal ${e?"modal-open":""}`,children:[m.jsxs("div",{className:"modal-box",children:[n&&m.jsx("h3",{className:"font-bold text-lg",children:n}),m.jsx("div",{className:"py-4",children:r}),i&&m.jsx("div",{className:"modal-action",children:i})]}),m.jsx("form",{method:"dialog",className:"modal-backdrop",children:m.jsx("button",{onClick:t,children:"close"})})]})}function YE({trigger:e,items:t,align:n="end"}){return m.jsxs("div",{className:`dropdown ${n==="end"?"dropdown-end":""}`,children:[m.jsx("div",{tabIndex:0,role:"button",children:e}),m.jsx("ul",{tabIndex:0,className:"dropdown-content menu bg-base-100 rounded-box z-10 w-52 p-2 shadow-lg border border-base-200",children:t.map((r,i)=>m.jsx("li",{children:m.jsxs("button",{onClick:r.onClick,disabled:r.disabled,className:"flex items-center gap-2",children:[r.icon,r.label]})},i))})]})}const JD={bordered:"tabs-bordered",lifted:"tabs-lifted",boxed:"tabs-boxed"};function eM({tabs:e,activeTab:t,onTabChange:n,variant:r="bordered"}){return m.jsx("div",{role:"tablist",className:`tabs ${JD[r]}`,children:e.map(i=>m.jsxs("button",{role:"tab",className:`tab gap-2 ${t===i.id?"tab-active":""}`,onClick:()=>n(i.id),children:[i.icon,i.label]},i.id))})}const tM={primary:"progress-primary",secondary:"progress-secondary",accent:"progress-accent",info:"progress-info",success:"progress-success",warning:"progress-warning",error:"progress-error"};function nM({value:e,max:t=100,variant:n="primary",className:r=""}){return m.jsx("progress",{className:`progress ${tM[n]} ${r}`,value:e,max:t})}const rM={xs:"loading-xs",sm:"loading-sm",md:"loading-md",lg:"loading-lg"};function Xi({size:e="md",className:t=""}){return m.jsx("span",{className:`loading loading-spinner ${rM[e]} ${t}`})}function iM(e,t){const n=e.icons,r=e.aliases||Object.create(null),i=Object.create(null);function a(l){if(n[l])return i[l]=[];if(!(l in i)){i[l]=null;const u=r[l]&&r[l].parent,c=u&&a(u);c&&(i[l]=[u].concat(c))}return i[l]}return Object.keys(n).concat(Object.keys(r)).forEach(a),i}const XE=Object.freeze({left:0,top:0,width:16,height:16}),zc=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),Gv=Object.freeze({...XE,...zc}),Ig=Object.freeze({...Gv,body:"",hidden:!1});function aM(e,t){const n={};!e.hFlip!=!t.hFlip&&(n.hFlip=!0),!e.vFlip!=!t.vFlip&&(n.vFlip=!0);const r=((e.rotate||0)+(t.rotate||0))%4;return r&&(n.rotate=r),n}function $w(e,t){const n=aM(e,t);for(const r in Ig)r in zc?r in e&&!(r in n)&&(n[r]=zc[r]):r in t?n[r]=t[r]:r in e&&(n[r]=e[r]);return n}function oM(e,t,n){const r=e.icons,i=e.aliases||Object.create(null);let a={};function l(u){a=$w(r[u]||i[u],a)}return l(t),n.forEach(l),$w(e,a)}function QE(e,t){const n=[];if(typeof e!="object"||typeof e.icons!="object")return n;e.not_found instanceof Array&&e.not_found.forEach(i=>{t(i,null),n.push(i)});const r=iM(e);for(const i in r){const a=r[i];a&&(t(i,oM(e,i,a)),n.push(i))}return n}const lM={provider:"",aliases:{},not_found:{},...XE};function Oh(e,t){for(const n in t)if(n in e&&typeof e[n]!=typeof t[n])return!1;return!0}function ZE(e){if(typeof e!="object"||e===null)return null;const t=e;if(typeof t.prefix!="string"||!e.icons||typeof e.icons!="object"||!Oh(e,lM))return null;const n=t.icons;for(const i in n){const a=n[i];if(!i||typeof a.body!="string"||!Oh(a,Ig))return null}const r=t.aliases||Object.create(null);for(const i in r){const a=r[i],l=a.parent;if(!i||typeof l!="string"||!n[l]&&!r[l]||!Oh(a,Ig))return null}return t}const Fw=Object.create(null);function sM(e,t){return{provider:e,prefix:t,icons:Object.create(null),missing:new Set}}function Ao(e,t){const n=Fw[e]||(Fw[e]=Object.create(null));return n[t]||(n[t]=sM(e,t))}function JE(e,t){return ZE(t)?QE(t,(n,r)=>{r?e.icons[n]=r:e.missing.add(n)}):[]}function uM(e,t,n){try{if(typeof n.body=="string")return e.icons[t]={...n},!0}catch{}return!1}const eC=/^[a-z0-9]+(-[a-z0-9]+)*$/,Ff=(e,t,n,r="")=>{const i=e.split(":");if(e.slice(0,1)==="@"){if(i.length<2||i.length>3)return null;r=i.shift().slice(1)}if(i.length>3||!i.length)return null;if(i.length>1){const u=i.pop(),c=i.pop(),f={provider:i.length>0?i[0]:r,prefix:c,name:u};return t&&!Nc(f)?null:f}const a=i[0],l=a.split("-");if(l.length>1){const u={provider:r,prefix:l.shift(),name:l.join("-")};return t&&!Nc(u)?null:u}if(n&&r===""){const u={provider:r,prefix:"",name:a};return t&&!Nc(u,n)?null:u}return null},Nc=(e,t)=>e?!!((t&&e.prefix===""||e.prefix)&&e.name):!1;let ss=!1;function tC(e){return typeof e=="boolean"&&(ss=e),ss}function Bw(e){const t=typeof e=="string"?Ff(e,!0,ss):e;if(t){const n=Ao(t.provider,t.prefix),r=t.name;return n.icons[r]||(n.missing.has(r)?null:void 0)}}function cM(e,t){const n=Ff(e,!0,ss);if(!n)return!1;const r=Ao(n.provider,n.prefix);return t?uM(r,n.name,t):(r.missing.add(n.name),!0)}function fM(e,t){if(typeof e!="object")return!1;if(typeof t!="string"&&(t=e.provider||""),ss&&!t&&!e.prefix){let i=!1;return ZE(e)&&(e.prefix="",QE(e,(a,l)=>{cM(a,l)&&(i=!0)})),i}const n=e.prefix;if(!Nc({prefix:n,name:"a"}))return!1;const r=Ao(t,n);return!!JE(r,e)}const nC=Object.freeze({width:null,height:null}),rC=Object.freeze({...nC,...zc}),dM=/(-?[0-9.]*[0-9]+[0-9.]*)/g,pM=/^-?[0-9.]*[0-9]+[0-9.]*$/g;function Uw(e,t,n){if(t===1)return e;if(n=n||100,typeof e=="number")return Math.ceil(e*t*n)/n;if(typeof e!="string")return e;const r=e.split(dM);if(r===null||!r.length)return e;const i=[];let a=r.shift(),l=pM.test(a);for(;;){if(l){const u=parseFloat(a);isNaN(u)?i.push(a):i.push(Math.ceil(u*t*n)/n)}else i.push(a);if(a=r.shift(),a===void 0)return i.join("");l=!l}}function hM(e,t="defs"){let n="";const r=e.indexOf("<"+t);for(;r>=0;){const i=e.indexOf(">",r),a=e.indexOf("",a);if(l===-1)break;n+=e.slice(i+1,a).trim(),e=e.slice(0,r).trim()+e.slice(l+1)}return{defs:n,content:e}}function mM(e,t){return e?""+e+""+t:t}function gM(e,t,n){const r=hM(e);return mM(r.defs,t+r.content+n)}const vM=e=>e==="unset"||e==="undefined"||e==="none";function yM(e,t){const n={...Gv,...e},r={...rC,...t},i={left:n.left,top:n.top,width:n.width,height:n.height};let a=n.body;[n,r].forEach(S=>{const w=[],P=S.hFlip,C=S.vFlip;let O=S.rotate;P?C?O+=2:(w.push("translate("+(i.width+i.left).toString()+" "+(0-i.top).toString()+")"),w.push("scale(-1 1)"),i.top=i.left=0):C&&(w.push("translate("+(0-i.left).toString()+" "+(i.height+i.top).toString()+")"),w.push("scale(1 -1)"),i.top=i.left=0);let A;switch(O<0&&(O-=Math.floor(O/4)*4),O=O%4,O){case 1:A=i.height/2+i.top,w.unshift("rotate(90 "+A.toString()+" "+A.toString()+")");break;case 2:w.unshift("rotate(180 "+(i.width/2+i.left).toString()+" "+(i.height/2+i.top).toString()+")");break;case 3:A=i.width/2+i.left,w.unshift("rotate(-90 "+A.toString()+" "+A.toString()+")");break}O%2===1&&(i.left!==i.top&&(A=i.left,i.left=i.top,i.top=A),i.width!==i.height&&(A=i.width,i.width=i.height,i.height=A)),w.length&&(a=gM(a,'',""))});const l=r.width,u=r.height,c=i.width,f=i.height;let d,h;l===null?(h=u===null?"1em":u==="auto"?f:u,d=Uw(h,c/f)):(d=l==="auto"?c:l,h=u===null?Uw(d,f/c):u==="auto"?f:u);const g={},y=(S,w)=>{vM(w)||(g[S]=w.toString())};y("width",d),y("height",h);const x=[i.left,i.top,c,f];return g.viewBox=x.join(" "),{attributes:g,viewBox:x,body:a}}const xM=/\sid="(\S+)"/g,bM="IconifyId"+Date.now().toString(16)+(Math.random()*16777216|0).toString(16);let wM=0;function kM(e,t=bM){const n=[];let r;for(;r=xM.exec(e);)n.push(r[1]);if(!n.length)return e;const i="suffix"+(Math.random()*16777216|Date.now()).toString(16);return n.forEach(a=>{const l=typeof t=="function"?t(a):t+(wM++).toString(),u=a.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");e=e.replace(new RegExp('([#;"])('+u+')([")]|\\.[a-z])',"g"),"$1"+l+i+"$3")}),e=e.replace(new RegExp(i,"g"),""),e}const Tg=Object.create(null);function SM(e,t){Tg[e]=t}function Dg(e){return Tg[e]||Tg[""]}function Yv(e){let t;if(typeof e.resources=="string")t=[e.resources];else if(t=e.resources,!(t instanceof Array)||!t.length)return null;return{resources:t,path:e.path||"/",maxURL:e.maxURL||500,rotate:e.rotate||750,timeout:e.timeout||5e3,random:e.random===!0,index:e.index||0,dataAfterTimeout:e.dataAfterTimeout!==!1}}const Xv=Object.create(null),Ll=["https://api.simplesvg.com","https://api.unisvg.com"],Ac=[];for(;Ll.length>0;)Ll.length===1||Math.random()>.5?Ac.push(Ll.shift()):Ac.push(Ll.pop());Xv[""]=Yv({resources:["https://api.iconify.design"].concat(Ac)});function jM(e,t){const n=Yv(t);return n===null?!1:(Xv[e]=n,!0)}function Qv(e){return Xv[e]}const PM=()=>{let e;try{if(e=fetch,typeof e=="function")return e}catch{}};let Ww=PM();function EM(e,t){const n=Qv(e);if(!n)return 0;let r;if(!n.maxURL)r=0;else{let i=0;n.resources.forEach(l=>{i=Math.max(i,l.length)});const a=t+".json?icons=";r=n.maxURL-i-n.path.length-a.length}return r}function CM(e){return e===404}const OM=(e,t,n)=>{const r=[],i=EM(e,t),a="icons";let l={type:a,provider:e,prefix:t,icons:[]},u=0;return n.forEach((c,f)=>{u+=c.length+1,u>=i&&f>0&&(r.push(l),l={type:a,provider:e,prefix:t,icons:[]},u=c.length),l.icons.push(c)}),r.push(l),r};function NM(e){if(typeof e=="string"){const t=Qv(e);if(t)return t.path}return"/"}const AM=(e,t,n)=>{if(!Ww){n("abort",424);return}let r=NM(t.provider);switch(t.type){case"icons":{const a=t.prefix,u=t.icons.join(","),c=new URLSearchParams({icons:u});r+=a+".json?"+c.toString();break}case"custom":{const a=t.uri;r+=a.slice(0,1)==="/"?a.slice(1):a;break}default:n("abort",400);return}let i=503;Ww(e+r).then(a=>{const l=a.status;if(l!==200){setTimeout(()=>{n(CM(l)?"abort":"next",l)});return}return i=501,a.json()}).then(a=>{if(typeof a!="object"||a===null){setTimeout(()=>{a===404?n("abort",a):n("next",i)});return}setTimeout(()=>{n("success",a)})}).catch(()=>{n("next",i)})},_M={prepare:OM,send:AM};function iC(e,t){e.forEach(n=>{const r=n.loaderCallbacks;r&&(n.loaderCallbacks=r.filter(i=>i.id!==t))})}function IM(e){e.pendingCallbacksFlag||(e.pendingCallbacksFlag=!0,setTimeout(()=>{e.pendingCallbacksFlag=!1;const t=e.loaderCallbacks?e.loaderCallbacks.slice(0):[];if(!t.length)return;let n=!1;const r=e.provider,i=e.prefix;t.forEach(a=>{const l=a.icons,u=l.pending.length;l.pending=l.pending.filter(c=>{if(c.prefix!==i)return!0;const f=c.name;if(e.icons[f])l.loaded.push({provider:r,prefix:i,name:f});else if(e.missing.has(f))l.missing.push({provider:r,prefix:i,name:f});else return n=!0,!0;return!1}),l.pending.length!==u&&(n||iC([e],a.id),a.callback(l.loaded.slice(0),l.missing.slice(0),l.pending.slice(0),a.abort))})}))}let TM=0;function DM(e,t,n){const r=TM++,i=iC.bind(null,n,r);if(!t.pending.length)return i;const a={id:r,icons:t,callback:e,abort:i};return n.forEach(l=>{(l.loaderCallbacks||(l.loaderCallbacks=[])).push(a)}),i}function MM(e){const t={loaded:[],missing:[],pending:[]},n=Object.create(null);e.sort((i,a)=>i.provider!==a.provider?i.provider.localeCompare(a.provider):i.prefix!==a.prefix?i.prefix.localeCompare(a.prefix):i.name.localeCompare(a.name));let r={provider:"",prefix:"",name:""};return e.forEach(i=>{if(r.name===i.name&&r.prefix===i.prefix&&r.provider===i.provider)return;r=i;const a=i.provider,l=i.prefix,u=i.name,c=n[a]||(n[a]=Object.create(null)),f=c[l]||(c[l]=Ao(a,l));let d;u in f.icons?d=t.loaded:l===""||f.missing.has(u)?d=t.missing:d=t.pending;const h={provider:a,prefix:l,name:u};d.push(h)}),t}function LM(e,t=!0,n=!1){const r=[];return e.forEach(i=>{const a=typeof i=="string"?Ff(i,t,n):i;a&&r.push(a)}),r}const RM={resources:[],index:0,timeout:2e3,rotate:750,random:!1,dataAfterTimeout:!1};function zM(e,t,n,r){const i=e.resources.length,a=e.random?Math.floor(Math.random()*i):e.index;let l;if(e.random){let E=e.resources.slice(0);for(l=[];E.length>1;){const L=Math.floor(Math.random()*E.length);l.push(E[L]),E=E.slice(0,L).concat(E.slice(L+1))}l=l.concat(E)}else l=e.resources.slice(a).concat(e.resources.slice(0,a));const u=Date.now();let c="pending",f=0,d,h=null,g=[],y=[];typeof r=="function"&&y.push(r);function x(){h&&(clearTimeout(h),h=null)}function S(){c==="pending"&&(c="aborted"),x(),g.forEach(E=>{E.status==="pending"&&(E.status="aborted")}),g=[]}function w(E,L){L&&(y=[]),typeof E=="function"&&y.push(E)}function P(){return{startTime:u,payload:t,status:c,queriesSent:f,queriesPending:g.length,subscribe:w,abort:S}}function C(){c="failed",y.forEach(E=>{E(void 0,d)})}function O(){g.forEach(E=>{E.status==="pending"&&(E.status="aborted")}),g=[]}function A(E,L,F){const H=L!=="success";switch(g=g.filter(R=>R!==E),c){case"pending":break;case"failed":if(H||!e.dataAfterTimeout)return;break;default:return}if(L==="abort"){d=F,C();return}if(H){d=F,g.length||(l.length?I():C());return}if(x(),O(),!e.random){const R=e.resources.indexOf(E.resource);R!==-1&&R!==e.index&&(e.index=R)}c="completed",y.forEach(R=>{R(F)})}function I(){if(c!=="pending")return;x();const E=l.shift();if(E===void 0){if(g.length){h=setTimeout(()=>{x(),c==="pending"&&(O(),C())},e.timeout);return}C();return}const L={status:"pending",resource:E,callback:(F,H)=>{A(L,F,H)}};g.push(L),f++,h=setTimeout(I,e.rotate),n(E,t,L.callback)}return setTimeout(I),P}function aC(e){const t={...RM,...e};let n=[];function r(){n=n.filter(u=>u().status==="pending")}function i(u,c,f){const d=zM(t,u,c,(h,g)=>{r(),f&&f(h,g)});return n.push(d),d}function a(u){return n.find(c=>u(c))||null}return{query:i,find:a,setIndex:u=>{t.index=u},getIndex:()=>t.index,cleanup:r}}function qw(){}const Nh=Object.create(null);function $M(e){if(!Nh[e]){const t=Qv(e);if(!t)return;const n=aC(t),r={config:t,redundancy:n};Nh[e]=r}return Nh[e]}function FM(e,t,n){let r,i;if(typeof e=="string"){const a=Dg(e);if(!a)return n(void 0,424),qw;i=a.send;const l=$M(e);l&&(r=l.redundancy)}else{const a=Yv(e);if(a){r=aC(a);const l=e.resources?e.resources[0]:"",u=Dg(l);u&&(i=u.send)}}return!r||!i?(n(void 0,424),qw):r.query(t,i,n)().abort}function Hw(){}function BM(e){e.iconsLoaderFlag||(e.iconsLoaderFlag=!0,setTimeout(()=>{e.iconsLoaderFlag=!1,IM(e)}))}function UM(e){const t=[],n=[];return e.forEach(r=>{(r.match(eC)?t:n).push(r)}),{valid:t,invalid:n}}function Rl(e,t,n){function r(){const i=e.pendingIcons;t.forEach(a=>{i&&i.delete(a),e.icons[a]||e.missing.add(a)})}if(n&&typeof n=="object")try{if(!JE(e,n).length){r();return}}catch(i){console.error(i)}r(),BM(e)}function Vw(e,t){e instanceof Promise?e.then(n=>{t(n)}).catch(()=>{t(null)}):t(e)}function WM(e,t){e.iconsToLoad?e.iconsToLoad=e.iconsToLoad.concat(t).sort():e.iconsToLoad=t,e.iconsQueueFlag||(e.iconsQueueFlag=!0,setTimeout(()=>{e.iconsQueueFlag=!1;const{provider:n,prefix:r}=e,i=e.iconsToLoad;if(delete e.iconsToLoad,!i||!i.length)return;const a=e.loadIcon;if(e.loadIcons&&(i.length>1||!a)){Vw(e.loadIcons(i,r,n),d=>{Rl(e,i,d)});return}if(a){i.forEach(d=>{const h=a(d,r,n);Vw(h,g=>{const y=g?{prefix:r,icons:{[d]:g}}:null;Rl(e,[d],y)})});return}const{valid:l,invalid:u}=UM(i);if(u.length&&Rl(e,u,null),!l.length)return;const c=r.match(eC)?Dg(n):null;if(!c){Rl(e,l,null);return}c.prepare(n,r,l).forEach(d=>{FM(n,d,h=>{Rl(e,d.icons,h)})})}))}const qM=(e,t)=>{const n=LM(e,!0,tC()),r=MM(n);if(!r.pending.length){let c=!0;return t&&setTimeout(()=>{c&&t(r.loaded,r.missing,r.pending,Hw)}),()=>{c=!1}}const i=Object.create(null),a=[];let l,u;return r.pending.forEach(c=>{const{provider:f,prefix:d}=c;if(d===u&&f===l)return;l=f,u=d,a.push(Ao(f,d));const h=i[f]||(i[f]=Object.create(null));h[d]||(h[d]=[])}),r.pending.forEach(c=>{const{provider:f,prefix:d,name:h}=c,g=Ao(f,d),y=g.pendingIcons||(g.pendingIcons=new Set);y.has(h)||(y.add(h),i[f][d].push(h))}),a.forEach(c=>{const f=i[c.provider][c.prefix];f.length&&WM(c,f)}),t?DM(t,r,a):Hw};function HM(e,t){const n={...e};for(const r in t){const i=t[r],a=typeof i;r in nC?(i===null||i&&(a==="string"||a==="number"))&&(n[r]=i):a===typeof n[r]&&(n[r]=r==="rotate"?i%4:i)}return n}const VM=/[\s,]+/;function KM(e,t){t.split(VM).forEach(n=>{switch(n.trim()){case"horizontal":e.hFlip=!0;break;case"vertical":e.vFlip=!0;break}})}function GM(e,t=0){const n=e.replace(/^-?[0-9.]*/,"");function r(i){for(;i<0;)i+=4;return i%4}if(n===""){const i=parseInt(e);return isNaN(i)?0:r(i)}else if(n!==e){let i=0;switch(n){case"%":i=25;break;case"deg":i=90}if(i){let a=parseFloat(e.slice(0,e.length-n.length));return isNaN(a)?0:(a=a/i,a%1===0?r(a):0)}}return t}function YM(e,t){let n=e.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(const r in t)n+=" "+r+'="'+t[r]+'"';return'"+e+""}function XM(e){return e.replace(/"/g,"'").replace(/%/g,"%25").replace(/#/g,"%23").replace(//g,"%3E").replace(/\s+/g," ")}function QM(e){return"data:image/svg+xml,"+XM(e)}function ZM(e){return'url("'+QM(e)+'")'}let ns;function JM(){try{ns=window.trustedTypes.createPolicy("iconify",{createHTML:e=>e})}catch{ns=null}}function eL(e){return ns===void 0&&JM(),ns?ns.createHTML(e):e}const oC={...rC,inline:!1},tL={xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink","aria-hidden":!0,role:"img"},nL={display:"inline-block"},Mg={backgroundColor:"currentColor"},lC={backgroundColor:"transparent"},Kw={Image:"var(--svg)",Repeat:"no-repeat",Size:"100% 100%"},Gw={WebkitMask:Mg,mask:Mg,background:lC};for(const e in Gw){const t=Gw[e];for(const n in Kw)t[e+n]=Kw[n]}const rL={...oC,inline:!0};function Yw(e){return e+(e.match(/^[-0-9.]+$/)?"px":"")}const iL=(e,t,n)=>{const r=t.inline?rL:oC,i=HM(r,t),a=t.mode||"svg",l={},u=t.style||{},c={...a==="svg"?tL:{}};if(n){const w=Ff(n,!1,!0);if(w){const P=["iconify"],C=["provider","prefix"];for(const O of C)w[O]&&P.push("iconify--"+w[O]);c.className=P.join(" ")}}for(let w in t){const P=t[w];if(P!==void 0)switch(w){case"icon":case"style":case"children":case"onLoad":case"mode":case"ssr":case"fallback":break;case"_ref":c.ref=P;break;case"className":c[w]=(c[w]?c[w]+" ":"")+P;break;case"inline":case"hFlip":case"vFlip":i[w]=P===!0||P==="true"||P===1;break;case"flip":typeof P=="string"&&KM(i,P);break;case"color":l.color=P;break;case"rotate":typeof P=="string"?i[w]=GM(P):typeof P=="number"&&(i[w]=P);break;case"ariaHidden":case"aria-hidden":P!==!0&&P!=="true"&&delete c["aria-hidden"];break;default:r[w]===void 0&&(c[w]=P)}}const f=yM(e,i),d=f.attributes;if(i.inline&&(l.verticalAlign="-0.125em"),a==="svg"){c.style={...l,...u},Object.assign(c,d);let w=0,P=t.id;return typeof P=="string"&&(P=P.replace(/-/g,"_")),c.dangerouslySetInnerHTML={__html:eL(kM(f.body,P?()=>P+"ID"+w++:"iconifyReact"))},k.createElement("svg",c)}const{body:h,width:g,height:y}=e,x=a==="mask"||(a==="bg"?!1:h.indexOf("currentColor")!==-1),S=YM(h,{...d,width:g+"",height:y+""});return c.style={...l,"--svg":ZM(S),width:Yw(d.width),height:Yw(d.height),...nL,...x?Mg:lC,...u},k.createElement("span",c)};tC(!0);SM("",_M);if(typeof document<"u"&&typeof window<"u"){const e=window;if(e.IconifyPreload!==void 0){const t=e.IconifyPreload,n="Invalid IconifyPreload syntax.";typeof t=="object"&&t!==null&&(t instanceof Array?t:[t]).forEach(r=>{try{(typeof r!="object"||r===null||r instanceof Array||typeof r.icons!="object"||typeof r.prefix!="string"||!fM(r))&&console.error(n)}catch{console.error(n)}})}if(e.IconifyProviders!==void 0){const t=e.IconifyProviders;if(typeof t=="object"&&t!==null)for(let n in t){const r="IconifyProviders["+n+"] is invalid.";try{const i=t[n];if(typeof i!="object"||!i||i.resources===void 0)continue;jM(n,i)||console.error(r)}catch{console.error(r)}}}}function sC(e){const[t,n]=k.useState(!!e.ssr),[r,i]=k.useState({});function a(y){if(y){const x=e.icon;if(typeof x=="object")return{name:"",data:x};const S=Bw(x);if(S)return{name:x,data:S}}return{name:""}}const[l,u]=k.useState(a(!!e.ssr));function c(){const y=r.callback;y&&(y(),i({}))}function f(y){if(JSON.stringify(l)!==JSON.stringify(y))return c(),u(y),!0}function d(){var y;const x=e.icon;if(typeof x=="object"){f({name:"",data:x});return}const S=Bw(x);if(f({name:x,data:S}))if(S===void 0){const w=qM([x],d);i({callback:w})}else S&&((y=e.onLoad)===null||y===void 0||y.call(e,x))}k.useEffect(()=>(n(!0),c),[]),k.useEffect(()=>{t&&d()},[e.icon,t]);const{name:h,data:g}=l;return g?iL({...Gv,...g},e,h):e.children?e.children:e.fallback?e.fallback:k.createElement("span",{})}const aL=k.forwardRef((e,t)=>sC({...e,_ref:t}));k.forwardRef((e,t)=>sC({inline:!0,...e,_ref:t}));function se({icon:e,size:t=20,className:n="",style:r}){return m.jsx(aL,{icon:e,width:t,height:t,className:n,style:r})}function Eo({icon:e="lucide:inbox",title:t,description:n,action:r}){return m.jsxs("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[m.jsx(se,{icon:e,size:48,className:"text-base-content/30 mb-4"}),m.jsx("h3",{className:"font-semibold text-lg text-base-content/70",children:t}),n&&m.jsx("p",{className:"text-base-content/50 mt-1 max-w-sm",children:n}),r&&m.jsx("div",{className:"mt-4",children:r})]})}const oL={top:"tooltip-top",bottom:"tooltip-bottom",left:"tooltip-left",right:"tooltip-right"};function Ar({text:e,children:t,position:n="top"}){return m.jsx("div",{className:`tooltip ${oL[n]}`,"data-tip":e,children:t})}const lL={success:{bg:"alert-success",icon:"lucide:check-circle",iconColor:"text-success-content"},error:{bg:"alert-error",icon:"lucide:x-circle",iconColor:"text-error-content"},info:{bg:"alert-info",icon:"lucide:info",iconColor:"text-info-content"},warning:{bg:"alert-warning",icon:"lucide:alert-triangle",iconColor:"text-warning-content"}};function sL({id:e,type:t,message:n,title:r,duration:i=5e3,dismissible:a=!0,onClick:l,onDismiss:u}){const[c,f]=k.useState(!1),{bg:d,icon:h,iconColor:g}=lL[t];k.useEffect(()=>{if(i>0){const x=setTimeout(()=>{f(!0),setTimeout(()=>u(e),300)},i);return()=>clearTimeout(x)}},[i,e,u]);const y=()=>{f(!0),setTimeout(()=>u(e),300)};return m.jsxs("div",{role:"alert",className:`alert ${d} shadow-lg transition-all duration-300 ${c?"opacity-0 translate-x-4":"opacity-100 translate-x-0"} ${l?"cursor-pointer hover:scale-[1.02]":""}`,onClick:l,children:[m.jsx(se,{icon:h,size:20,className:g}),m.jsxs("div",{className:"flex-1",children:[r&&m.jsx("h3",{className:"font-bold text-sm",children:r}),m.jsx("span",{className:"text-sm",children:n})]}),a&&m.jsx("button",{onClick:x=>{x.stopPropagation(),y()},className:"btn btn-ghost btn-sm btn-circle","aria-label":"Dismiss",children:m.jsx(se,{icon:"lucide:x",size:16})})]})}function uL({toasts:e,onDismiss:t}){return e.length===0?null:m.jsx("div",{className:"toast toast-end toast-bottom z-50",children:e.map(n=>m.jsx(sL,{...n,onDismiss:t},n.id))})}function uC({project:e,workspace:t=!1}){return t?m.jsxs("span",{className:"inline-flex items-center gap-1 text-xs bg-base-200 text-base-content/50 rounded-full px-2.5 py-0.5",children:[m.jsx(se,{icon:"lucide:globe",size:12}),"Workspace"]}):e?m.jsxs("span",{className:"inline-flex items-center gap-1 text-xs bg-primary/10 text-primary rounded-full px-2.5 py-0.5",children:[m.jsx(se,{icon:"lucide:folder",size:12}),e]}):null}function cL({icon:e,label:t,href:n,active:r=!1,badge:i,collapsed:a=!1}){const l=m.jsxs("a",{href:n,className:`nav-item flex items-center gap-3 px-3 py-2.5 rounded-lg transition-all ${r?"active":""} ${a?"justify-center":""}`,children:[m.jsx(se,{icon:e,size:20}),!a&&m.jsxs(m.Fragment,{children:[m.jsx("span",{className:"flex-1",children:t}),i!==void 0&&m.jsx("span",{className:`badge badge-sm ${r?"badge-primary-content":"badge-ghost"}`,children:i})]})]});return a?m.jsx(Ar,{text:t,children:l}):l}const fL=[{icon:"lucide:layout-dashboard",label:"Dashboard",href:"#/"},{icon:"lucide:scroll",label:"Specification",href:"#/spec"},{icon:"lucide:brain",label:"Memories",href:"#/memories"},{icon:"lucide:history",label:"Sessions",href:"#/sessions"},{icon:"lucide:bar-chart-3",label:"Usage",href:"#/usage"},{icon:"lucide:archive",label:"Vault",href:"#/vault"},{icon:"lucide:settings",label:"Settings",href:"#/settings"}];function dL({currentPath:e,collapsed:t=!1}){return m.jsx("nav",{className:"py-4 space-y-1 px-2",children:fL.map(n=>m.jsx(cL,{icon:n.icon,label:n.label,href:n.href,active:e===n.href||e.startsWith(n.href+"/"),collapsed:t},n.href))})}function pL({workerStatus:e,version:t,queueDepth:n=0,collapsed:r=!1}){const l={online:{color:"success",label:"Online",icon:"lucide:circle-check"},offline:{color:"error",label:"Offline",icon:"lucide:circle-x"}}[e!=="offline"?"online":"offline"],u=t?`v${t}`:null;return r?m.jsx("div",{className:"p-3 border-t border-base-300/50",children:m.jsx(Ar,{text:`Claude Pilot ${u??""} · Worker ${l.label}`,children:m.jsx("div",{className:"flex justify-center",children:m.jsx(se,{icon:l.icon,size:20,className:`text-${l.color}`})})})}):m.jsxs("div",{className:"p-4 border-t border-base-300/50 space-y-2",children:[m.jsxs("div",{className:"flex items-center justify-between text-sm",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(se,{icon:l.icon,size:16,className:`text-${l.color}`}),m.jsx("span",{className:"text-base-content/70",children:"Worker"})]}),m.jsx(Te,{variant:l.color,size:"sm",children:l.label})]}),u&&m.jsxs("div",{className:"text-xs text-base-content/40 text-center",children:["Claude Pilot ",u]})]})}const cC=k.createContext(null);let hL=0;function mL({children:e}){const[t,n]=k.useState([]),r=k.useCallback(d=>{const h=`toast-${++hL}`;return n(g=>[...g,{...d,id:h}]),h},[]),i=k.useCallback(d=>{n(h=>h.filter(g=>g.id!==d))},[]),a=k.useCallback(()=>{n([])},[]),l=k.useCallback((d,h)=>r({type:"success",message:d,title:h}),[r]),u=k.useCallback((d,h)=>r({type:"error",message:d,title:h,duration:8e3}),[r]),c=k.useCallback((d,h)=>r({type:"info",message:d,title:h}),[r]),f=k.useCallback((d,h)=>r({type:"warning",message:d,title:h,duration:7e3}),[r]);return m.jsxs(cC.Provider,{value:{addToast:r,removeToast:i,clearAll:a,success:l,error:u,info:c,warning:f},children:[e,m.jsx(uL,{toasts:t,onDismiss:i})]})}function fC(){const e=k.useContext(cC);if(!e)throw new Error("useToast must be used within a ToastProvider");return e}const Ah="pilot-memory-selected-project",gL={selectedProject:null,projects:[],setSelectedProject:()=>{},setProjects:()=>{}},dC=k.createContext(gL);function vL({children:e}){const[t,n]=k.useState(()=>{try{return localStorage.getItem(Ah)||null}catch{return null}}),[r,i]=k.useState([]),a=k.useCallback(u=>{n(u);try{u?localStorage.setItem(Ah,u):localStorage.removeItem(Ah)}catch{}},[]),l=k.useCallback(u=>{i(u)},[]);return k.useEffect(()=>{fetch("/api/projects").then(u=>u.json()).then(u=>{const c=u.projects||[];c.length>0&&i(c)}).catch(()=>{})},[]),k.useEffect(()=>{t&&r.length>0&&!r.includes(t)&&a(null)},[r,t,a]),m.jsx(dC.Provider,{value:{selectedProject:t,projects:r,setSelectedProject:a,setProjects:l},children:e})}function za(){return k.useContext(dC)}function yL({collapsed:e=!1}){const{selectedProject:t,projects:n,setSelectedProject:r}=za();return e?m.jsx("div",{className:"flex-shrink-0 px-3 py-3 border-b border-base-300/50",children:m.jsx(Ar,{text:t??"All Projects",children:m.jsx("button",{className:`btn btn-ghost btn-sm btn-square w-full ${t?"text-primary":"text-base-content/50"}`,onClick:()=>r(null),children:m.jsx(se,{icon:"lucide:folder-open",size:20})})})}):m.jsxs("div",{className:"flex-shrink-0 px-3 py-3 border-b border-base-300/50 relative z-10",children:[m.jsx("label",{className:"text-[10px] font-semibold uppercase tracking-wider text-base-content/40 px-1 mb-1.5 block",children:"Project"}),m.jsxs("select",{className:"select select-bordered select-sm w-full text-sm bg-base-100",value:t??"",onChange:i=>r(i.target.value||null),children:[m.jsx("option",{value:"",children:"All Projects"}),n.map(i=>m.jsx("option",{value:i,children:i},i))]})]})}function xL({currentPath:e,workerStatus:t,version:n,queueDepth:r,collapsed:i,onToggleCollapse:a}){return m.jsxs("aside",{className:`dashboard-sidebar flex flex-col border-r border-base-300 transition-all duration-300 h-screen sticky top-0 ${i?"w-[72px]":"w-64"}`,children:[m.jsxs("div",{className:"flex-shrink-0 flex items-center justify-between p-4 border-b border-base-300/50",children:[!i&&m.jsx(VD,{}),m.jsx("button",{onClick:a,className:"btn btn-ghost btn-sm btn-square",title:i?"Expand sidebar":"Collapse sidebar",children:m.jsx(se,{icon:i?"lucide:panel-left-open":"lucide:panel-left-close",size:18})})]}),m.jsx(yL,{collapsed:i}),m.jsx("div",{className:"flex-1",children:m.jsx(dL,{currentPath:e,collapsed:i})}),m.jsx("div",{className:"flex-shrink-0",children:m.jsx(pL,{workerStatus:t,version:n,queueDepth:r,collapsed:i})})]})}const pC={solo:{label:"Solo",variant:"primary"},team:{label:"Team",variant:"accent"},trial:{label:"Trial",variant:"warning"},standard:{label:"Solo",variant:"primary"},enterprise:{label:"Team",variant:"accent"}};function Xw(e){const t=pC[e.tier??""],n=[(t==null?void 0:t.label)??e.tier??"Unknown"];return e.email&&n.push(e.email),e.tier==="trial"&&e.daysRemaining!=null&&n.push(`${e.daysRemaining} days remaining`),n.join(" · ")}function Qw(e){return e.isExpired||e.tier==="trial"}function bL({license:e,isLoading:t,onClick:n}){if(t||!e||!e.tier)return null;const i=Qw(e)&&!!n?{onClick:n,role:"button",className:"cursor-pointer"}:{};if(e.isExpired)return m.jsx(Ar,{text:Xw(e),position:"bottom",children:m.jsx("span",{...i,children:m.jsx(Te,{variant:"error",size:"xs",children:"Expired"})})});const a=pC[e.tier];if(!a)return null;let l=a.label;e.tier==="trial"&&e.daysRemaining!=null&&(l=`${a.label} · ${e.daysRemaining}d left`);const u=!Qw(e)&&e.email;return m.jsx(Ar,{text:Xw(e),position:"bottom",children:m.jsxs("span",{...i,className:`${i.className??""} inline-flex items-center gap-1.5`,children:[m.jsx(Te,{variant:a.variant,size:"xs",children:l}),u&&m.jsx("span",{className:"text-base-content/50",children:e.email})]})})}function wL({open:e,onClose:t,onActivated:n}){const[r,i]=k.useState(""),[a,l]=k.useState(null),[u,c]=k.useState(!1),f=k.useCallback(async()=>{const h=r.trim();if(h){l(null),c(!0);try{const y=await(await fetch("/api/license/activate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:h})})).json();y.success?(i(""),n(),t()):l(y.error??"Activation failed")}catch{l("Connection failed")}finally{c(!1)}}},[r,n,t]),d=k.useCallback(h=>{h.key==="Enter"&&!u&&f()},[f,u]);return m.jsxs(GE,{open:e,onClose:t,title:"Activate License",children:[m.jsxs("div",{className:"flex flex-col gap-3",children:[m.jsx("input",{id:"license-key-input",type:"text",className:"input input-bordered w-full",placeholder:"Enter your license key",value:r,onChange:h=>{i(h.target.value),l(null)},onKeyDown:d,disabled:u,autoFocus:!0}),a&&m.jsx("p",{className:"text-error text-sm",children:a}),m.jsx("div",{className:"bg-base-200/50 rounded-lg p-3 space-y-1.5",children:m.jsxs("p",{className:"text-xs text-base-content/60",children:["Don't have a key? Get one at"," ",m.jsx("a",{href:"https://claude-pilot.com/#pricing",target:"_blank",rel:"noopener noreferrer",className:"text-primary hover:underline font-medium",children:"claude-pilot.com"})]})})]}),m.jsxs("div",{className:"modal-action",children:[m.jsx("button",{className:"btn btn-ghost btn-sm",onClick:t,disabled:u,children:"Cancel"}),m.jsx("button",{className:"btn btn-primary btn-sm",onClick:f,disabled:u||!r.trim(),children:u?"Activating...":"Activate"})]})]})}function hC(){const[e,t]=k.useState(null),[n,r]=k.useState(!0),i=k.useCallback((l=!1)=>{fetch(l?"/api/license?refresh=1":"/api/license").then(c=>c.json()).then(c=>{t(c),r(!1)}).catch(()=>{r(!1)})},[]);k.useEffect(()=>{i();const l=setInterval(()=>i(!0),6e4);return()=>clearInterval(l)},[i]);const a=k.useCallback(()=>i(!0),[i]);return{license:e,isLoading:n,refetch:a}}function kL({theme:e,onToggleTheme:t,onToggleLogs:n}){const[r,i]=k.useState(!1),[a,l]=k.useState(!1);k.useEffect(()=>{fetch("/api/auth/status").then(c=>c.json()).then(c=>{i(c.authRequired)}).catch(()=>{i(!1)})},[]);const u=async()=>{l(!0);try{await fetch("/api/auth/logout",{method:"POST"}),window.location.href="/login"}catch{l(!1)}};return m.jsxs("div",{className:"flex items-center gap-2",children:[n&&m.jsx(Ar,{text:"Toggle console logs",position:"bottom",children:m.jsx(Yt,{variant:"ghost",size:"sm",onClick:n,children:m.jsx(se,{icon:"lucide:terminal",size:18})})}),m.jsx(Ar,{text:`Switch to ${e==="light"?"dark":"light"} mode`,position:"bottom",children:m.jsx(Yt,{variant:"ghost",size:"sm",onClick:t,children:m.jsx(se,{icon:e==="light"?"lucide:moon":"lucide:sun",size:18})})}),m.jsx(Ar,{text:"Repository",position:"bottom",children:m.jsx("a",{href:"https://github.com/maxritter/claude-pilot",target:"_blank",rel:"noopener noreferrer",className:"btn btn-ghost btn-sm",children:m.jsx(se,{icon:"lucide:git-branch",size:18})})}),r&&m.jsx(Ar,{text:"Logout",position:"bottom",children:m.jsx(Yt,{variant:"ghost",size:"sm",onClick:u,disabled:a,children:m.jsx(se,{icon:"lucide:log-out",size:18})})})]})}function SL({theme:e,onToggleTheme:t,onToggleLogs:n}){const{license:r,isLoading:i,refetch:a}=hC(),[l,u]=k.useState(!1);return m.jsxs("header",{className:"h-14 bg-base-100 border-b border-base-300/50 flex items-center justify-between px-6 gap-4",children:[m.jsxs("div",{className:"flex items-center gap-2 text-xs text-base-content/40",children:[m.jsx(se,{icon:"lucide:plane",size:14,className:"text-primary/60"}),m.jsxs("span",{children:["© ",new Date().getFullYear()," ",m.jsx("a",{href:"https://claude-pilot.com",target:"_blank",rel:"noopener noreferrer",className:"text-primary/70 hover:text-primary transition-colors",children:"Claude Pilot"})]}),m.jsx("span",{className:"text-base-content/20",children:"|"}),m.jsxs("span",{children:["Created by"," ",m.jsx("a",{href:"https://maxritter.net",target:"_blank",rel:"noopener noreferrer",className:"text-primary/70 hover:text-primary transition-colors",children:"Max Ritter"})]}),!i&&(r==null?void 0:r.tier)&&m.jsx("span",{className:"text-base-content/20",children:"|"}),m.jsx(bL,{license:r,isLoading:i,onClick:()=>u(!0)}),!i&&(!r||!r.tier||r.tier==="trial"||r.isExpired)&&m.jsxs(m.Fragment,{children:[m.jsx("span",{className:"text-base-content/20",children:"|"}),m.jsx("a",{href:"https://claude-pilot.com/#pricing",target:"_blank",rel:"noopener noreferrer",className:"text-primary/70 hover:text-primary transition-colors",children:"Get a license"}),m.jsxs("button",{onClick:()=>u(!0),className:"btn btn-primary btn-xs gap-1",children:[m.jsx(se,{icon:"lucide:key",size:12}),"Activate"]})]})]}),m.jsx(kL,{theme:e,onToggleTheme:t,onToggleLogs:n}),m.jsx(wL,{open:l,onClose:()=>u(!1),onActivated:a})]})}function jL({children:e,currentPath:t,workerStatus:n,version:r,queueDepth:i,theme:a,onToggleTheme:l,onToggleLogs:u,sidebarCollapsed:c,onToggleSidebar:f}){const d=a==="dark"?"claude-pilot":"claude-pilot-light";return m.jsxs("div",{className:"dashboard-layout flex min-h-screen","data-theme":d,children:[m.jsx(xL,{currentPath:t,workerStatus:n,version:r,queueDepth:i,collapsed:c,onToggleCollapse:f}),m.jsxs("div",{className:"flex-1 flex flex-col min-w-0",children:[m.jsx(SL,{theme:a,onToggleTheme:l,onToggleLogs:u}),m.jsx("main",{className:"flex-1 p-6 overflow-y-auto",children:e})]})]})}function mC(){const[e,t]=k.useState(()=>Zw(window.location.hash));k.useEffect(()=>{const r=()=>{t(Zw(window.location.hash))};return window.addEventListener("hashchange",r),()=>window.removeEventListener("hashchange",r)},[]);const n=k.useCallback(r=>{window.location.hash=r},[]);return{path:e.path,params:e.params,navigate:n}}function Zw(e){const t=e.replace(/^#/,"")||"/",n={},[r,i]=t.split("?");return i&&new URLSearchParams(i).forEach((l,u)=>{n[u]=l}),{path:r,params:n}}function PL({routes:e,fallback:t}){const{path:n}=mC();for(const r of e){const i=EL(r.path,n);if(i){const a=r.component;return m.jsx(a,{...i.params})}}return t?m.jsx(m.Fragment,{children:t}):null}function EL(e,t){if(e===t)return{params:{}};const n=e.split("/"),r=t.split("/");if(n.length!==r.length)return null;const i={};for(let a=0;a=0?"text-success":"text-error"}`,children:[m.jsx(se,{icon:i.value>=0?"lucide:trending-up":"lucide:trending-down",size:16}),m.jsxs("span",{className:"ml-1",children:[Math.abs(i.value),"% ",i.label]})]})]})})}function CL({stats:e,specStats:t}){const n=t&&t.totalSpecs>0?`${Math.round(t.verified/t.totalSpecs*100)}% success`:void 0;return m.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4",children:[m.jsx(Bi,{icon:"lucide:brain",label:"Observations",value:e.observations.toLocaleString()}),m.jsx(Bi,{icon:"lucide:scroll",label:"Total Specs",value:((t==null?void 0:t.totalSpecs)??0).toLocaleString()}),m.jsx(Bi,{icon:"lucide:shield-check",label:"Verified",value:((t==null?void 0:t.verified)??0).toLocaleString(),subtext:n}),m.jsx(Bi,{icon:"lucide:loader",label:"In Progress",value:((t==null?void 0:t.inProgress)??0).toLocaleString()}),m.jsx(Bi,{icon:"lucide:history",label:"Sessions",value:e.sessions.toLocaleString()}),m.jsx(Bi,{icon:"lucide:clock",label:"Last Observation",value:e.lastObservationAt||"None yet"}),m.jsx(Bi,{icon:"lucide:file-text",label:"Summaries",value:e.summaries.toLocaleString()}),m.jsx(Bi,{icon:"lucide:check-square",label:"Tasks Completed",value:((t==null?void 0:t.totalTasksCompleted)??0).toLocaleString(),subtext:t&&t.totalTasks>0?`of ${t.totalTasks} total`:void 0})]})}function OL({status:e,version:t,uptime:n,queueDepth:r=0}){const i=e==="processing",a=e!=="offline";return m.jsx(wt,{children:m.jsxs(kt,{children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(Vi,{children:"Worker Status"}),m.jsx(Te,{variant:"ghost",size:"sm",children:"Workspace"})]}),m.jsx(Te,{variant:a?"success":"error",children:a?"Online":"Offline"})]}),m.jsxs("div",{className:"space-y-3",children:[t&&m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:tag",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"Version:"}),m.jsx("span",{className:"font-mono",children:t})]}),n&&m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:clock",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"Uptime:"}),m.jsx("span",{children:n})]}),m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:i?"lucide:loader-2":"lucide:layers",size:16,className:`${i?"text-warning animate-spin":"text-base-content/50"}`}),m.jsx("span",{className:"text-base-content/70",children:"Queue:"}),m.jsxs("span",{className:i?"text-warning font-medium":"",children:[r," items"]}),i&&m.jsx(Te,{variant:"warning",size:"xs",children:"Processing"})]})]})]})})}function NL(e){if(!e)return"Never";try{const t=new Date(e),r=new Date().getTime()-t.getTime();return r<6e4?"just now":r<36e5?`${Math.floor(r/6e4)}m ago`:r<864e5?`${Math.floor(r/36e5)}h ago`:`${Math.floor(r/864e5)}d ago`}catch{return"Unknown"}}function AL({isIndexed:e,files:t,generatedAt:n,isReindexing:r}){return m.jsx(wt,{children:m.jsxs(kt,{className:"flex flex-col",children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(Vi,{children:"Codebase Indexing"}),m.jsx(Te,{variant:"ghost",size:"sm",children:"Workspace"})]}),r?m.jsxs(Te,{variant:"warning",children:[m.jsx(se,{icon:"lucide:refresh-cw",size:12,className:"mr-1 animate-spin"}),"Indexing..."]}):m.jsx(Te,{variant:e?"success":"warning",children:e?"Indexed":"Not Indexed"})]}),m.jsxs("div",{className:"space-y-3 flex-1",children:[m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:file-search",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"Files:"}),m.jsx("span",{className:"font-semibold",children:t.toLocaleString()})]}),m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:clock",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"Last indexed:"}),m.jsx("span",{children:NL(n)})]})]}),!r&&m.jsx("p",{className:"text-xs text-base-content/50 mt-3",children:t===0?m.jsxs(m.Fragment,{children:["Run ",m.jsx("code",{className:"bg-base-300/50 px-1 rounded",children:"/sync"})," in Claude Code to index your codebase."]}):m.jsxs(m.Fragment,{children:["Re-index with ",m.jsx("code",{className:"bg-base-300/50 px-1 rounded",children:"/sync"})," or ",m.jsx("code",{className:"bg-base-300/50 px-1 rounded",children:"vexor index --clear"})]})})]})})}function _L(e){try{const t=new URL(e);return(t.host+t.pathname).replace(/\.git$/,"")}catch{return e}}function IL(e){const{installed:t,version:n,configured:r,vaultUrl:i,assets:a,catalog:l,isLoading:u}=e;if(u)return m.jsx(wt,{children:m.jsxs(kt,{children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsx(Vi,{children:"Vault"}),m.jsx(Te,{variant:"ghost",children:"Loading..."})]}),m.jsxs("div",{className:"space-y-3 animate-pulse",children:[m.jsx("div",{className:"h-4 bg-base-300 rounded w-3/4"}),m.jsx("div",{className:"h-4 bg-base-300 rounded w-1/2"})]})]})});const c=new Set(a.map(d=>d.name)),f=l.filter(d=>!c.has(d.name)).length;return t?r?m.jsx(wt,{children:m.jsxs(kt,{className:"flex flex-col",children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(Vi,{children:"Vault"}),m.jsx(Te,{variant:"ghost",size:"sm",children:"Workspace"})]}),m.jsx(Te,{variant:"success",children:"Connected"})]}),m.jsxs("div",{className:"space-y-3 flex-1",children:[i&&m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:git-branch",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"Vault:"}),m.jsx("span",{className:"font-mono text-xs truncate",children:_L(i)})]}),m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:package",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"Installed:"}),m.jsx("span",{className:"font-semibold",children:a.length}),f>0&&m.jsxs("span",{className:"text-base-content/40",children:["(",f," available)"]})]}),m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[m.jsx(se,{icon:"lucide:cloud",size:16,className:"text-base-content/50"}),m.jsx("span",{className:"text-base-content/70",children:"In vault:"}),m.jsx("span",{className:"font-semibold",children:l.length})]})]})]})}):m.jsx(wt,{children:m.jsxs(kt,{children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(Vi,{children:"Vault"}),n&&m.jsxs(Te,{variant:"ghost",size:"sm",children:["v",n]})]}),m.jsx(Te,{variant:"warning",children:"Not Configured"})]}),m.jsx("div",{className:"text-sm text-base-content/60",children:m.jsxs("p",{children:["sx is installed but no vault is configured. Run ",m.jsx("span",{className:"font-mono text-primary",children:"/vault"})," to set up."]})})]})}):m.jsx(wt,{children:m.jsxs(kt,{children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsx(Vi,{children:"Vault"}),m.jsx(Te,{variant:"ghost",children:"Not Installed"})]}),m.jsx("div",{className:"text-sm text-base-content/60",children:m.jsxs("p",{children:["sx is not installed. Run the Pilot installer or install from ",m.jsx("span",{className:"font-mono text-primary",children:"skills.new"}),"."]})})]})})}const TL={plan:{label:"Planning",color:"info",border:"border-l-info"},implement:{label:"Implementing",color:"warning",border:"border-l-warning"},verify:{label:"Verifying",color:"accent",border:"border-l-accent"}};function DL({plan:e}){const t=TL[e.phase],n=e.total>0?e.completed/e.total*100:0;return m.jsxs("div",{className:`border-l-4 ${t.border} pl-3 py-2`,children:[m.jsxs("div",{className:"flex items-center justify-between gap-2",children:[m.jsx("span",{className:"font-medium text-sm truncate",title:e.name,children:e.name}),m.jsxs("div",{className:"flex items-center gap-2 shrink-0",children:[m.jsx(Te,{variant:t.color,size:"xs",children:t.label}),m.jsxs("span",{className:"text-xs font-mono text-base-content/60",children:[e.completed,"/",e.total]})]})]}),m.jsx("div",{className:"w-full bg-base-300 rounded-full h-1.5 mt-1.5",children:m.jsx("div",{className:`h-1.5 rounded-full transition-all duration-300 ${n===100?"bg-success":"bg-primary"}`,style:{width:`${n}%`}})})]})}function ML({plans:e}){return e.length===0?m.jsx(wt,{children:m.jsxs(kt,{children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(Vi,{children:"Specification Status"}),m.jsx(Te,{variant:"ghost",size:"sm",children:"Workspace"})]}),m.jsx(Te,{variant:"ghost",children:"Quick Mode"})]}),m.jsxs("div",{className:"text-sm text-base-content/60",children:[m.jsx("p",{children:"No active spec-driven plan."}),m.jsxs("p",{className:"mt-2",children:["Use ",m.jsx("code",{className:"text-primary",children:"/spec"})," for complex tasks."]})]})]})}):m.jsx(wt,{children:m.jsxs(kt,{children:[m.jsxs("div",{className:"flex items-center justify-between mb-4",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(Vi,{children:"Specification Status"}),m.jsx(Te,{variant:"ghost",size:"sm",children:"Workspace"})]}),m.jsxs(Te,{variant:"info",children:[e.length," active"]})]}),m.jsx("div",{className:"space-y-2",children:e.map((t,n)=>m.jsx(DL,{plan:t},t.filePath??`${t.name}-${n}`))})]})})}const LL=6e4;function gC(){const{selectedProject:e,setProjects:t}=za(),[n,r]=k.useState({observations:0,summaries:0,sessions:0,lastObservationAt:null,projects:0}),[i,a]=k.useState({status:"offline"}),[l,u]=k.useState({isIndexed:!1,files:0,mode:"",model:"",generatedAt:null,isReindexing:!1}),[c,f]=k.useState([]),[d,h]=k.useState({active:!1,plans:[]}),[g,y]=k.useState({branch:null,staged:0,unstaged:0,untracked:0}),[x,S]=k.useState({totalSpecs:0,verified:0,inProgress:0,pending:0,avgIterations:0,totalTasksCompleted:0,totalTasks:0,completionTimeline:[],recentlyVerified:[]}),[w,P]=k.useState([]),[C,O]=k.useState({installed:!1,version:null,configured:!1,vaultUrl:null,profile:null,assets:[],catalog:[],isInstalling:!1}),[A,I]=k.useState(!0),E=k.useCallback(async()=>{try{const W=await(await fetch("/api/vault/status")).json();O(W)}catch{}},[]),L=k.useCallback(async()=>{try{const R=e?`?project=${encodeURIComponent(e)}`:"",D=await(await fetch(`/api/vexor/status${R}`)).json();u({isIndexed:D.isIndexed??!1,files:D.files??0,mode:D.mode??"",model:D.model??"",generatedAt:D.generatedAt??null,isReindexing:D.isReindexing??!1})}catch{}},[e]),F=k.useCallback(async()=>{var W,D,Z,Y,Q,pe,de;const R=e?`?project=${encodeURIComponent(e)}`:"";try{const[J,ae,T,$,U,_,te,fe]=await Promise.all([fetch(`/api/stats${R}`),fetch("/health"),fetch(`/api/observations?limit=5${e?`&project=${encodeURIComponent(e)}`:""}`),fetch("/api/projects"),fetch(`/api/plan${R}`),fetch(`/api/git${R}`),fetch(`/api/plans/stats${R}`).catch(()=>null),fetch(`/api/analytics/timeline?range=30d${e?`&project=${encodeURIComponent(e)}`:""}`).catch(()=>null)]),ce=await J.json(),Se=await ae.json(),je=await T.json(),X=await $.json(),we=await U.json(),Ae=await _.json();if(te!=null&&te.ok){const Pt=await te.json();S(Pt)}if(fe!=null&&fe.ok){const Pt=await fe.json();P(Pt.data||[])}const ie=je.items||je.observations||je||[],rt=Array.isArray(ie)?ie:[],ze=rt.length>0&&((W=rt[0])==null?void 0:W.created_at)||null,ct=X.projects||[];t(ct),r({observations:((D=ce.database)==null?void 0:D.observations)||0,summaries:((Z=ce.database)==null?void 0:Z.summaries)||0,sessions:((Y=ce.database)==null?void 0:Y.sessions)||0,lastObservationAt:ze?Jw(ze):null,projects:ct.length}),a({status:Se.status==="ok"?Se.isProcessing?"processing":"online":"offline",version:(Q=ce.worker)==null?void 0:Q.version,uptime:(pe=ce.worker)!=null&&pe.uptime?RL(ce.worker.uptime):void 0,queueDepth:Se.queueDepth||0,workspaceProject:(de=ce.worker)==null?void 0:de.workspaceProject});const ft=je.items||je.observations||je||[];f((Array.isArray(ft)?ft:[]).slice(0,5).map(Pt=>{var Br;return{id:Pt.id,type:Pt.obs_type||Pt.type||"observation",title:Pt.title||((Br=Pt.content)==null?void 0:Br.slice(0,100))||"Untitled",project:Pt.project||"unknown",timestamp:Jw(Pt.created_at)}}));const Ut=we.plans||(we.plan?[we.plan]:[]);h({active:Ut.length>0,plans:Ut}),y({branch:Ae.branch||null,staged:Ae.staged||0,unstaged:Ae.unstaged||0,untracked:Ae.untracked||0})}catch(J){console.error("Failed to load stats:",J),a({status:"offline"})}finally{I(!1)}},[e,t]),H=k.useRef(F);return k.useEffect(()=>{H.current=F},[F]),k.useEffect(()=>{F()},[F]),k.useEffect(()=>{L(),E();const R=setInterval(L,LL),W=new EventSource("/stream");return W.onmessage=D=>{try{const Z=JSON.parse(D.data);Z.type==="processing_status"&&a(Y=>({...Y,status:Z.isProcessing?"processing":"online",queueDepth:Z.queueDepth??Y.queueDepth})),(Z.type==="new_observation"||Z.type==="new_summary"||Z.type==="plan_association_changed")&&H.current()}catch{}},()=>{clearInterval(R),W.close()}},[L,E]),{stats:n,workerStatus:i,vexorStatus:l,vaultStatus:C,recentActivity:c,planStatus:d,gitInfo:g,specStats:x,observationTimeline:w,isLoading:A,refreshStats:F}}function Jw(e){if(!e)return"";const t=new Date(e),r=new Date().getTime()-t.getTime();return r<6e4?"just now":r<36e5?`${Math.floor(r/6e4)}m ago`:r<864e5?`${Math.floor(r/36e5)}h ago`:t.toLocaleDateString()}function RL(e){return e<60?`${e}s`:e<3600?`${Math.floor(e/60)}m`:e<86400?`${Math.floor(e/3600)}h`:`${Math.floor(e/86400)}d`}function zL(){const{stats:e,workerStatus:t,vexorStatus:n,vaultStatus:r,planStatus:i,specStats:a,isLoading:l}=gC(),{selectedProject:u}=za();return l?m.jsx("div",{className:"flex items-center justify-center h-64",children:m.jsx("span",{className:"loading loading-spinner loading-lg"})}):m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Dashboard"}),m.jsx("p",{className:"text-base-content/60",children:u?`Filtered by: ${u}`:"Overview of your Pilot Console"})]}),m.jsx(CL,{stats:e,specStats:a}),(!u||u===t.workspaceProject)&&m.jsxs("div",{className:"space-y-4",children:[m.jsx("h2",{className:"text-sm font-semibold uppercase tracking-wider text-base-content/40",children:"Workspace"}),m.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6 [&>*]:h-full",children:[m.jsx(AL,{isIndexed:n.isIndexed,files:n.files,generatedAt:n.generatedAt,isReindexing:n.isReindexing}),m.jsx(OL,{status:t.status,version:t.version,uptime:t.uptime,queueDepth:t.queueDepth}),m.jsx(ML,{plans:i.plans}),m.jsx(IL,{...r,isLoading:l})]})]})]})}const $L=[{value:"all",label:"All Types"},{value:"observation",label:"Observations"},{value:"summary",label:"Summaries"},{value:"prompt",label:"Prompts"}];function FL({viewMode:e,onViewModeChange:t,filterType:n,onFilterTypeChange:r,totalCount:i,selectionMode:a,onToggleSelectionMode:l,selectedCount:u,onSelectAll:c,onExport:f,onDelete:d,isExporting:h,isDeleting:g,allSelected:y}){const x=[{label:"Export as JSON",onClick:()=>f("json"),icon:m.jsx(se,{icon:"lucide:file-json",size:16})},{label:"Export as CSV",onClick:()=>f("csv"),icon:m.jsx(se,{icon:"lucide:file-spreadsheet",size:16})},{label:"Export as Markdown",onClick:()=>f("markdown"),icon:m.jsx(se,{icon:"lucide:file-text",size:16})}];return m.jsxs("div",{className:"flex items-center justify-between gap-4 flex-wrap",children:[m.jsx("div",{className:"flex items-center gap-2",children:a?m.jsxs(m.Fragment,{children:[m.jsxs(Yt,{variant:"ghost",size:"sm",onClick:c,children:[m.jsx(se,{icon:y?"lucide:check-square":"lucide:square",size:16,className:"mr-1"}),y?"Deselect All":"Select All"]}),m.jsxs("span",{className:"text-sm text-base-content/60",children:[u," of ",i," selected"]})]}):m.jsxs("span",{className:"text-sm text-base-content/60",children:[i," items"]})}),m.jsx("div",{className:"flex items-center gap-2",children:a?m.jsxs(m.Fragment,{children:[m.jsx(YE,{trigger:m.jsxs(Yt,{variant:"primary",size:"sm",loading:h,disabled:u===0,children:[m.jsx(se,{icon:"lucide:download",size:16,className:"mr-1"}),"Export"]}),items:x}),m.jsxs(Yt,{variant:"error",size:"sm",onClick:d,loading:g,disabled:u===0,children:[m.jsx(se,{icon:"lucide:trash-2",size:16,className:"mr-1"}),"Delete"]}),m.jsx(Yt,{variant:"ghost",size:"sm",onClick:l,children:"Cancel"})]}):m.jsxs(m.Fragment,{children:[m.jsxs(Yt,{variant:"ghost",size:"sm",onClick:l,children:[m.jsx(se,{icon:"lucide:check-square",size:16,className:"mr-1"}),"Select"]}),m.jsx(ZD,{options:$L,value:n,onChange:S=>r(S.target.value),selectSize:"sm",className:"w-40"}),m.jsxs("div",{className:"btn-group",children:[m.jsx(Yt,{variant:e==="grid"?"primary":"ghost",size:"sm",onClick:()=>t("grid"),children:m.jsx(se,{icon:"lucide:grid-3x3",size:16})}),m.jsx(Yt,{variant:e==="list"?"primary":"ghost",size:"sm",onClick:()=>t("list"),children:m.jsx(se,{icon:"lucide:list",size:16})})]})]})})]})}const BL={observation:{icon:"lucide:brain",variant:"info",color:"text-info"},summary:{icon:"lucide:file-text",variant:"warning",color:"text-warning"},prompt:{icon:"lucide:message-square",variant:"secondary",color:"text-secondary"},bugfix:{icon:"lucide:bug",variant:"error",color:"text-error"},feature:{icon:"lucide:sparkles",variant:"success",color:"text-success"},refactor:{icon:"lucide:refresh-cw",variant:"accent",color:"text-accent"},discovery:{icon:"lucide:search",variant:"info",color:"text-info"},decision:{icon:"lucide:git-branch",variant:"warning",color:"text-warning"},change:{icon:"lucide:pencil",variant:"secondary",color:"text-secondary"}},UL={icon:"lucide:circle",variant:"secondary",color:"text-secondary"};function WL({memory:e,viewMode:t,onDelete:n,onView:r,selectionMode:i,isSelected:a,onToggleSelection:l}){const u=BL[e.type]||UL,c=t==="grid",f=[{label:"View Details",onClick:()=>r==null?void 0:r(e.id),icon:m.jsx(se,{icon:"lucide:eye",size:16})},{label:"Copy ID",onClick:()=>navigator.clipboard.writeText(String(e.id)),icon:m.jsx(se,{icon:"lucide:copy",size:16})},{label:"Delete",onClick:()=>n==null?void 0:n(e.id),icon:m.jsx(se,{icon:"lucide:trash-2",size:16})}],d=()=>{i&&(l==null||l(e.id))};return m.jsx(wt,{className:`hover:shadow-md transition-shadow ${c?"":"flex flex-row"} ${i?"cursor-pointer":""} ${a?"ring-2 ring-primary":""}`,onClick:d,children:m.jsxs(kt,{className:c?"":"flex flex-row items-start gap-4 flex-1",children:[m.jsxs("div",{className:`flex items-start gap-3 ${c?"mb-3":"flex-1"}`,children:[i?m.jsx("div",{className:"flex items-center justify-center w-8 h-8 flex-shrink-0",children:m.jsx("input",{type:"checkbox",className:"checkbox checkbox-primary",checked:a,onChange:()=>l==null?void 0:l(e.id),onClick:h=>h.stopPropagation()})}):m.jsx("div",{className:`p-2 rounded-lg bg-base-200 ${u.color}`,children:m.jsx(se,{icon:u.icon,size:18})}),m.jsxs("div",{className:"flex-1 min-w-0",children:[m.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[m.jsx(Te,{variant:u.variant,size:"xs",children:e.type}),m.jsxs("span",{className:"text-xs text-base-content/50",children:["#",e.id]})]}),m.jsx("h3",{className:"font-medium text-sm line-clamp-2",children:e.title}),c&&e.facts&&e.facts.length>0?m.jsxs("ul",{className:"text-xs text-base-content/60 mt-1 space-y-0.5 list-disc list-inside",children:[e.facts.slice(0,3).map((h,g)=>m.jsx("li",{className:"line-clamp-1",children:h},g)),e.facts.length>3&&m.jsxs("li",{className:"text-base-content/40",children:["+",e.facts.length-3," more"]})]}):c&&e.content?m.jsx("p",{className:"text-xs text-base-content/60 mt-1 line-clamp-3",children:e.content}):null]})]}),m.jsxs("div",{className:`flex items-center gap-2 ${c?"justify-between mt-3 pt-3 border-t border-base-200":""}`,children:[m.jsxs("div",{className:"flex items-center gap-2 text-xs text-base-content/50",children:[m.jsx(se,{icon:"lucide:folder",size:14}),m.jsx("span",{className:"truncate max-w-24",children:e.project})]}),m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx("span",{className:"text-xs text-base-content/50",children:e.timestamp}),m.jsx(YE,{trigger:m.jsx(Yt,{variant:"ghost",size:"xs",className:"btn-square",children:m.jsx(se,{icon:"lucide:more-vertical",size:14})}),items:f})]})]}),c&&e.concepts&&e.concepts.length>0&&m.jsxs("div",{className:"flex flex-wrap gap-1 mt-2",children:[e.concepts.slice(0,3).map(h=>m.jsx(Te,{variant:"ghost",size:"xs",children:h},h)),e.concepts.length>3&&m.jsxs(Te,{variant:"ghost",size:"xs",children:["+",e.concepts.length-3]})]})]})})}const qL={observation:{icon:"lucide:brain",variant:"info"},summary:{icon:"lucide:file-text",variant:"warning"},prompt:{icon:"lucide:message-square",variant:"secondary"},bugfix:{icon:"lucide:bug",variant:"error"},feature:{icon:"lucide:sparkles",variant:"success"},refactor:{icon:"lucide:refresh-cw",variant:"accent"},discovery:{icon:"lucide:search",variant:"info"},decision:{icon:"lucide:git-branch",variant:"warning"},change:{icon:"lucide:pencil",variant:"secondary"}};function HL({memory:e,onClose:t}){const[n,r]=k.useState("content"),i=e?qL[e.type]||{icon:"lucide:circle",variant:"secondary"}:{icon:"lucide:circle",variant:"secondary"};return m.jsx(GE,{open:!!e,onClose:t,title:"Memory Details",children:e&&m.jsxs("div",{className:"space-y-4",children:[m.jsxs("div",{className:"flex items-start gap-3",children:[m.jsx("div",{className:`p-3 rounded-lg bg-base-200 text-${i.variant}`,children:m.jsx(se,{icon:i.icon,size:24})}),m.jsxs("div",{className:"flex-1 min-w-0",children:[m.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[m.jsx(Te,{variant:i.variant,size:"sm",children:e.type}),m.jsxs("span",{className:"text-sm text-base-content/50",children:["#",e.id]})]}),m.jsx("h3",{className:"text-lg font-semibold",children:e.title}),m.jsxs("div",{className:"flex items-center gap-2 mt-1 text-sm text-base-content/60",children:[m.jsx(se,{icon:"lucide:folder",size:14}),m.jsx("span",{children:e.project}),m.jsx("span",{children:"•"}),m.jsx("span",{children:e.timestamp})]})]})]}),m.jsxs("div",{className:"tabs tabs-boxed",children:[m.jsx("button",{className:`tab ${n==="content"?"tab-active":""}`,onClick:()=>r("content"),children:"Content"}),m.jsx("button",{className:`tab ${n==="metadata"?"tab-active":""}`,onClick:()=>r("metadata"),children:"Metadata"})]}),n==="content"&&m.jsx("div",{className:"bg-base-200 rounded-lg p-4 max-h-96 overflow-y-auto",children:e.facts&&e.facts.length>0?m.jsx("ul",{className:"text-sm space-y-2 list-disc list-inside",children:e.facts.map((a,l)=>m.jsx("li",{children:a},l))}):m.jsx("pre",{className:"text-sm whitespace-pre-wrap break-words",children:e.content||"No content available"})}),n==="metadata"&&m.jsxs("div",{className:"space-y-4",children:[e.concepts&&e.concepts.length>0&&m.jsxs("div",{children:[m.jsx("h4",{className:"text-sm font-medium mb-2",children:"Concepts"}),m.jsx("div",{className:"flex flex-wrap gap-1",children:e.concepts.map(a=>m.jsx(Te,{variant:"ghost",size:"sm",children:a},a))})]}),m.jsxs("div",{children:[m.jsx("h4",{className:"text-sm font-medium mb-2",children:"ID"}),m.jsx("code",{className:"text-xs bg-base-200 px-2 py-1 rounded",children:e.id})]})]})]})})}function VL({onSearch:e,isSearching:t,placeholder:n="Search your memories semantically..."}){const[r,i]=k.useState(""),a=l=>{l.preventDefault(),r.trim()&&e(r.trim())};return m.jsxs("form",{onSubmit:a,className:"flex gap-2",children:[m.jsxs("div",{className:"relative flex-1",children:[m.jsx(se,{icon:"lucide:search",size:20,className:"absolute left-4 top-1/2 -translate-y-1/2 text-base-content/50"}),m.jsx("input",{type:"search",placeholder:n,value:r,onChange:l=>i(l.target.value),className:"input input-bordered w-full pl-12 pr-4"})]}),m.jsx(Yt,{type:"submit",loading:t,disabled:!r.trim(),children:"Search"})]})}const KL={observation:{icon:"lucide:brain",variant:"info",label:"Observation"},summary:{icon:"lucide:file-text",variant:"warning",label:"Summary"},prompt:{icon:"lucide:message-square",variant:"secondary",label:"Prompt"},bugfix:{icon:"lucide:bug",variant:"error",label:"Bug Fix"},feature:{icon:"lucide:sparkles",variant:"success",label:"Feature"},refactor:{icon:"lucide:refresh-cw",variant:"accent",label:"Refactor"},discovery:{icon:"lucide:search",variant:"info",label:"Discovery"},decision:{icon:"lucide:git-branch",variant:"warning",label:"Decision"},change:{icon:"lucide:pencil",variant:"secondary",label:"Change"}},GL={icon:"lucide:circle",variant:"secondary",label:"Unknown"};function YL(e){try{return new Date(e).toLocaleDateString("en-US",{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}catch{return e}}function XL({result:e}){const t=e.obsType||e.type,n=KL[t]||GL,r=Math.round(e.score*100),i=a=>a>=.7?"text-success":a>=.4?"text-warning":"text-base-content/50";return m.jsx(wt,{className:"hover:shadow-md transition-shadow",children:m.jsx(kt,{children:m.jsxs("div",{className:"flex items-start gap-3",children:[m.jsx("div",{className:"p-2 rounded-lg bg-base-200 shrink-0",children:m.jsx(se,{icon:n.icon,size:18})}),m.jsxs("div",{className:"flex-1 min-w-0",children:[m.jsxs("div",{className:"flex items-center gap-2 mb-1 flex-wrap",children:[m.jsx(Te,{variant:n.variant,size:"xs",children:n.label}),m.jsxs("span",{className:"text-xs text-base-content/50",children:["#",e.id]}),e.score>0&&m.jsxs("span",{className:`ml-auto text-xs font-mono ${i(e.score)}`,children:[r,"% match"]})]}),m.jsx("h3",{className:"font-medium truncate",children:e.title}),m.jsx("p",{className:"text-sm text-base-content/60 mt-1 line-clamp-2",children:e.content}),m.jsxs("div",{className:"flex items-center gap-4 mt-3 text-xs text-base-content/50",children:[e.project&&m.jsxs("span",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:folder",size:12}),e.project]}),m.jsxs("span",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:clock",size:12}),YL(e.timestamp)]})]})]}),e.score>0&&m.jsxs("div",{className:"w-16 shrink-0 hidden sm:block",children:[m.jsx("div",{className:"h-2 bg-base-200 rounded-full overflow-hidden",children:m.jsx("div",{className:`h-full rounded-full transition-all ${e.score>=.7?"bg-success":e.score>=.4?"bg-warning":"bg-base-content/30"}`,style:{width:`${r}%`}})}),m.jsx("div",{className:"text-[10px] text-center mt-1 text-base-content/50",children:"similarity"})]})]})})})}const QL=12e4;function ZL(){const{selectedProject:e}=za(),[t,n]=k.useState(!1),[r,i]=k.useState([]),[a,l]=k.useState(!1),[u,c]=k.useState(null),[f,d]=k.useState(null),h=k.useRef(null),g=k.useRef(!1),y=k.useCallback(async S=>{var C;(C=h.current)==null||C.abort(),g.current=!1;const w=new AbortController;h.current=w;const P=setTimeout(()=>w.abort(),QL);l(!0),n(!0),c(null);try{const O=new URLSearchParams({query:S,limit:"30"});e&&O.set("project",e);const A=await fetch(`/api/search/semantic?${O}`,{signal:w.signal});if(!A.ok)throw new Error(`Search failed with status ${A.status}`);const I=await A.json();i(I.results||[]),d({usedSemantic:I.usedSemantic,vectorDbAvailable:I.vectorDbAvailable})}catch(O){if(g.current)return;O.name==="AbortError"?c("Search timed out. Please try again."):c("Search failed. Please try again."),i([]),d(null)}finally{clearTimeout(P),g.current||l(!1)}},[e]),x=k.useCallback(()=>{var S;g.current=!0,(S=h.current)==null||S.abort(),n(!1),i([]),d(null),c(null),l(!1)},[]);return k.useEffect(()=>()=>{var S;(S=h.current)==null||S.abort()},[]),{isSearchMode:t,searchResults:r,isSearching:a,searchError:u,searchMeta:f,handleSearch:y,handleClearSearch:x}}function e1(){var $;const[e,t]=k.useState([]),[n,r]=k.useState(!0),[i,a]=k.useState("grid"),[l,u]=k.useState("all"),[c,f]=k.useState(null),[d,h]=k.useState(!1),[g,y]=k.useState(new Set),[x,S]=k.useState(!1),[w,P]=k.useState(!1),C=fC(),{selectedProject:O}=za(),{isSearchMode:A,searchResults:I,isSearching:E,searchError:L,searchMeta:F,handleSearch:H,handleClearSearch:R}=ZL(),W=k.useCallback(async U=>{d&&(h(!1),y(new Set)),await H(U)},[d,H]),D=k.useCallback(async()=>{r(!0);try{const U=new URLSearchParams;l!=="all"&&U.set("type",l),O&&U.set("project",O),U.set("limit","50");const te=await(await fetch(`/api/observations?${U}`)).json(),fe=te.items||te.observations||[];t(fe.map(ce=>({id:ce.id,type:ce.type||"observation",title:ce.title||"Untitled",content:ce.narrative||ce.content||"",facts:ce.facts?typeof ce.facts=="string"?JSON.parse(ce.facts):ce.facts:[],project:ce.project||"unknown",timestamp:Z(ce.created_at),concepts:ce.concepts?typeof ce.concepts=="string"?JSON.parse(ce.concepts):ce.concepts:[]})))}catch(U){console.error("Failed to fetch memories:",U)}finally{r(!1)}},[l,O]);function Z(U){if(!U)return"";const _=new Date(U),fe=new Date().getTime()-_.getTime();return fe<6e4?"just now":fe<36e5?`${Math.floor(fe/6e4)}m ago`:fe<864e5?`${Math.floor(fe/36e5)}h ago`:_.toLocaleDateString()}k.useEffect(()=>{D()},[D]);const Y=async U=>{if(confirm("Delete this memory?"))try{await fetch(`/api/observation/${U}`,{method:"DELETE"}),t(_=>_.filter(te=>te.id!==U))}catch(_){console.error("Failed to delete:",_)}},Q=U=>{const _=e.find(te=>te.id===U);_&&f(_)},pe=U=>{y(_=>{const te=new Set(_);return te.has(U)?te.delete(U):te.add(U),te})},de=()=>{g.size===e.length?y(new Set):y(new Set(e.map(U=>U.id)))},J=()=>{h(!1),y(new Set)},ae=async U=>{if(g.size===0){C.error("No memories selected");return}S(!0);try{const _=Array.from(g).join(","),te=`/api/export?format=${U}&ids=${_}`,ce=await(await fetch(te)).blob(),Se=window.URL.createObjectURL(ce),je=document.createElement("a");je.href=Se,je.download=`pilot-memory-export-${new Date().toISOString().split("T")[0]}.${U==="markdown"?"md":U}`,document.body.appendChild(je),je.click(),document.body.removeChild(je),window.URL.revokeObjectURL(Se),C.success(`Exported ${g.size} memories`)}catch{C.error("Export failed")}finally{S(!1)}},T=async()=>{if(g.size===0){C.error("No memories selected");return}if(confirm(`Delete ${g.size} memories? This cannot be undone.`)){P(!0);try{const U=await fetch("/api/observations/delete",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({ids:Array.from(g)})});if(U.ok){const _=await U.json();C.success(`Deleted ${_.deletedCount} memories`),t(te=>te.filter(fe=>!g.has(fe.id))),y(new Set),h(!1)}else C.error("Delete failed")}catch{C.error("Delete failed")}finally{P(!1)}}};return m.jsxs("div",{className:"space-y-6",children:[m.jsxs("div",{children:[m.jsxs("div",{className:"flex items-center gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Memories"}),m.jsx(uC,{project:O})]}),m.jsx("p",{className:"text-base-content/60",children:A?"Search results":"Browse and manage your stored memories"})]}),m.jsx(VL,{onSearch:W,isSearching:E,placeholder:"Search memories semantically..."}),A&&m.jsx("div",{className:"flex items-center gap-2",children:m.jsxs(Yt,{variant:"ghost",size:"sm",onClick:R,children:[m.jsx(se,{icon:"lucide:x",size:16,className:"mr-1"}),"Clear search"]})}),A&&F&&m.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[F.vectorDbAvailable?F.usedSemantic?m.jsxs(Te,{variant:"success",outline:!0,size:"sm",children:[m.jsx(se,{icon:"lucide:brain",size:14,className:"mr-1"}),"Semantic Search Active"]}):m.jsxs(Te,{variant:"warning",outline:!0,size:"sm",children:[m.jsx(se,{icon:"lucide:filter",size:14,className:"mr-1"}),"Filter-only Mode"]}):m.jsxs(Te,{variant:"error",outline:!0,size:"sm",children:[m.jsx(se,{icon:"lucide:alert-triangle",size:14,className:"mr-1"}),"Vector DB Unavailable"]}),m.jsx("span",{className:"text-base-content/50",children:F.usedSemantic?"Results ranked by semantic similarity":F.vectorDbAvailable?"Enter a query for semantic ranking":"Install Chroma for semantic search"})]}),!A&&m.jsx(FL,{viewMode:i,onViewModeChange:a,filterType:l,onFilterTypeChange:u,totalCount:e.length,selectionMode:d,onToggleSelectionMode:()=>d?J():h(!0),selectedCount:g.size,onSelectAll:de,onExport:ae,onDelete:T,isExporting:x,isDeleting:w,allSelected:e.length>0&&g.size===e.length}),L&&!E&&m.jsxs("div",{className:"alert alert-error",children:[m.jsx(se,{icon:"lucide:alert-circle",size:16}),m.jsx("span",{children:L})]}),A?E?m.jsxs("div",{className:"flex flex-col items-center justify-center h-64 gap-3",children:[m.jsx(Xi,{size:"lg"}),m.jsx("span",{className:"text-sm text-base-content/50",children:"Searching memories..."})]}):L?null:I.length===0?m.jsx(Eo,{icon:"lucide:search-x",title:"No results found",description:"Try a different query"}):m.jsxs("div",{className:"space-y-3",children:[m.jsxs("div",{className:"text-sm text-base-content/60",children:[I.length," results",(F==null?void 0:F.usedSemantic)&&(($=I[0])==null?void 0:$.score)>0&&m.jsxs("span",{className:"ml-2",children:["(best match: ",Math.round(I[0].score*100),"% similarity)"]})]}),I.map(U=>m.jsx(XL,{result:U},`${U.type}-${U.id}`))]}):n?m.jsx("div",{className:"flex items-center justify-center h-64",children:m.jsx(Xi,{size:"lg"})}):e.length===0?m.jsx(Eo,{icon:"lucide:brain",title:"No memories found",description:"Memories will appear here as you use Claude Code"}):m.jsx("div",{className:i==="grid"?"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4":"space-y-3",children:e.map(U=>m.jsx(WL,{memory:U,viewMode:i,onDelete:Y,onView:Q,selectionMode:d,isSelected:g.has(U.id),onToggleSelection:pe},U.id))}),m.jsx(HL,{memory:c,onClose:()=>f(null)})]})}const t1={active:{variant:"warning",icon:"lucide:play"},completed:{variant:"success",icon:"lucide:check"},failed:{variant:"error",icon:"lucide:x"}};function JL(e){return new Date(e).toLocaleDateString("en-US",{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}function eR(e,t){if(!t)return"ongoing";const n=t-e,r=Math.floor(n/6e4);if(r<1)return"< 1 min";if(r<60)return`${r} min`;const i=Math.floor(r/60),a=r%60;return`${i}h ${a}m`}function tR({session:e,isExpanded:t,onToggle:n}){const r=t1[e.status]||t1.active;return m.jsx(wt,{className:`cursor-pointer hover:shadow-md transition-shadow ${t?"ring-2 ring-primary":""}`,onClick:n,children:m.jsx(kt,{children:m.jsxs("div",{className:"flex items-start gap-4",children:[m.jsx("div",{className:"p-2 rounded-lg bg-base-200",children:m.jsx(se,{icon:r.icon,size:20,className:`text-${r.variant}`})}),m.jsxs("div",{className:"flex-1 min-w-0",children:[m.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[m.jsx(Te,{variant:r.variant,size:"sm",children:e.status}),m.jsxs("span",{className:"text-xs text-base-content/50",children:["#",e.id]})]}),m.jsx("h3",{className:"font-medium line-clamp-1",children:e.user_prompt||e.project||"Untitled Session"}),m.jsxs("div",{className:"flex items-center gap-4 mt-2 text-sm text-base-content/60",children:[m.jsxs("span",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:folder",size:14}),e.project]}),m.jsxs("span",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:calendar",size:14}),JL(e.started_at)]}),m.jsxs("span",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:clock",size:14}),eR(e.started_at_epoch,e.completed_at_epoch)]})]})]}),m.jsxs("div",{className:"flex items-center gap-4 text-sm",children:[m.jsxs("div",{className:"text-center",children:[m.jsx("div",{className:"font-semibold",children:e.observation_count}),m.jsx("div",{className:"text-xs text-base-content/50",children:"observations"})]}),m.jsxs("div",{className:"text-center",children:[m.jsx("div",{className:"font-semibold",children:e.prompt_count}),m.jsx("div",{className:"text-xs text-base-content/50",children:"prompts"})]}),m.jsx(se,{icon:t?"lucide:chevron-up":"lucide:chevron-down",size:20,className:"text-base-content/50"})]})]})})})}const _h={prompt:{icon:"lucide:message-square",color:"text-primary"},observation:{icon:"lucide:brain",color:"text-info"},bugfix:{icon:"lucide:bug",color:"text-error"},feature:{icon:"lucide:sparkles",color:"text-success"},refactor:{icon:"lucide:refresh-cw",color:"text-accent"},discovery:{icon:"lucide:search",color:"text-info"},decision:{icon:"lucide:git-branch",color:"text-warning"},change:{icon:"lucide:pencil",color:"text-secondary"}};function nR(e){return new Date(e).toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit"})}function rR({sessionId:e}){const[t,n]=k.useState(null),[r,i]=k.useState(!0),[a,l]=k.useState(new Set);k.useEffect(()=>{async function f(){i(!0);try{const h=await(await fetch(`/api/sessions/${e}/timeline`)).json();n(h)}catch(d){console.error("Failed to fetch timeline:",d)}finally{i(!1)}}f()},[e]);const u=f=>{l(d=>{const h=new Set(d);return h.has(f)?h.delete(f):h.add(f),h})};if(r)return m.jsx("div",{className:"flex items-center justify-center py-8",children:m.jsx(Xi,{size:"md"})});if(!t)return m.jsx("div",{className:"text-center py-8 text-base-content/50",children:"Failed to load timeline"});const c={active:"badge-success",completed:"badge-info",failed:"badge-error"};return m.jsxs("div",{className:"mt-4 space-y-4",children:[m.jsx(wt,{className:"bg-base-200/50",children:m.jsxs(kt,{className:"py-3",children:[m.jsxs("div",{className:"flex flex-wrap items-center gap-3 mb-2",children:[m.jsx(Te,{variant:"ghost",size:"sm",className:c[t.session.status]||"",children:t.session.status}),m.jsx("span",{className:"text-sm text-base-content/60",children:new Date(t.session.started_at).toLocaleString()}),t.session.completed_at&&m.jsxs("span",{className:"text-sm text-base-content/60",children:["→ ",new Date(t.session.completed_at).toLocaleString()]})]}),m.jsxs("div",{className:"flex flex-wrap gap-4 text-sm",children:[m.jsxs("div",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:message-square",size:14,className:"text-primary"}),m.jsx("span",{className:"font-medium",children:t.stats.prompts}),m.jsx("span",{className:"text-base-content/60",children:"prompts"})]}),m.jsxs("div",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:brain",size:14,className:"text-info"}),m.jsx("span",{className:"font-medium",children:t.stats.observations}),m.jsx("span",{className:"text-base-content/60",children:"observations"})]})]})]})}),t.summary&&m.jsx(wt,{className:"bg-warning/10 border-warning/30",children:m.jsxs(kt,{className:"py-3",children:[m.jsxs("div",{className:"flex items-center gap-2 mb-3",children:[m.jsx(se,{icon:"lucide:file-text",size:16,className:"text-warning"}),m.jsx("span",{className:"font-medium text-sm",children:"Session Summary"}),m.jsx("span",{className:"text-xs text-base-content/50",children:new Date(t.summary.created_at).toLocaleTimeString()})]}),m.jsxs("div",{className:"space-y-3 text-sm",children:[t.summary.request&&m.jsxs("div",{children:[m.jsx("div",{className:"font-medium text-warning mb-1",children:"Request"}),m.jsx("div",{className:"text-base-content/80",children:t.summary.request})]}),t.summary.investigated&&m.jsxs("div",{children:[m.jsx("div",{className:"font-medium text-info mb-1",children:"Investigated"}),m.jsx("div",{className:"text-base-content/80",children:t.summary.investigated})]}),t.summary.learned&&m.jsxs("div",{children:[m.jsx("div",{className:"font-medium text-success mb-1",children:"Learned"}),m.jsx("div",{className:"text-base-content/80",children:t.summary.learned})]}),t.summary.completed&&m.jsxs("div",{children:[m.jsx("div",{className:"font-medium text-primary mb-1",children:"Completed"}),m.jsx("div",{className:"text-base-content/80",children:t.summary.completed})]}),t.summary.next_steps&&m.jsxs("div",{children:[m.jsx("div",{className:"font-medium text-accent mb-1",children:"Next Steps"}),m.jsx("div",{className:"text-base-content/80",children:t.summary.next_steps})]})]})]})}),m.jsxs("div",{className:"ml-8 border-l-2 border-base-300 pl-6 space-y-4",children:[[...t.timeline].reverse().map((f,d)=>{var S,w;const h=`${f.type}-${f.id}`,g=a.has(h),y=f.type==="prompt"?_h.prompt:_h[f.data.type]||_h.observation;let x=[];if(f.type==="observation"&&f.data.concepts)try{x=JSON.parse(f.data.concepts)}catch{}return m.jsxs("div",{className:"relative",children:[m.jsx("div",{className:`absolute -left-9 top-3 w-4 h-4 rounded-full border-2 border-base-100 ${f.type==="prompt"?"bg-primary":"bg-info"}`}),m.jsx(wt,{className:"cursor-pointer hover:shadow-sm transition-shadow",onClick:P=>{P.stopPropagation(),u(h)},children:m.jsx(kt,{className:"py-3",children:m.jsxs("div",{className:"flex items-start gap-3",children:[m.jsx("div",{className:`p-1.5 rounded bg-base-200 ${y.color}`,children:m.jsx(se,{icon:y.icon,size:14})}),m.jsxs("div",{className:"flex-1 min-w-0",children:[m.jsxs("div",{className:"flex flex-wrap items-center gap-2 mb-1",children:[m.jsx(Te,{variant:f.type==="prompt"?"primary":"info",size:"xs",children:f.type==="prompt"?`prompt #${f.data.prompt_number||"?"}`:f.data.type||"observation"}),m.jsx("span",{className:"text-xs text-base-content/50",children:nR(f.timestamp)}),m.jsxs("span",{className:"text-xs text-base-content/40",children:["#",f.id]}),x.length>0&&x.map(P=>m.jsx(Te,{variant:"ghost",size:"xs",className:"text-base-content/50",children:P},P))]}),m.jsx("p",{className:"text-sm font-medium",children:f.type==="prompt"?((S=f.data.prompt_text)==null?void 0:S.length)>100?f.data.prompt_text.substring(0,100)+"...":f.data.prompt_text:f.data.title||"Untitled"}),f.type==="observation"&&f.data.narrative&&m.jsx("p",{className:`text-sm text-base-content/70 mt-1 ${g?"":"line-clamp-3"}`,children:f.data.narrative}),f.type==="prompt"&&((w=f.data.prompt_text)==null?void 0:w.length)>100&&m.jsx("p",{className:`text-sm text-base-content/70 mt-1 ${g?"whitespace-pre-wrap":"line-clamp-3"}`,children:g?f.data.prompt_text:f.data.prompt_text.substring(100)}),f.type==="observation"&&(f.data.files_read||f.data.files_modified)&&m.jsxs("div",{className:"flex flex-wrap gap-2 mt-2",children:[f.data.files_read&&(()=>{try{const P=JSON.parse(f.data.files_read);if(P.length>0)return m.jsxs("span",{className:"text-xs text-base-content/50",children:[m.jsx(se,{icon:"lucide:file",size:12,className:"inline mr-1"}),P.length," read"]})}catch{return null}})(),f.data.files_modified&&(()=>{try{const P=JSON.parse(f.data.files_modified);if(P.length>0)return m.jsxs("span",{className:"text-xs text-base-content/50",children:[m.jsx(se,{icon:"lucide:pencil",size:12,className:"inline mr-1"}),P.length," modified"]})}catch{return null}})()]}),g&&f.type==="observation"&&f.data.text&&m.jsxs("div",{className:"mt-3 pt-3 border-t border-base-200",children:[m.jsx("p",{className:"text-sm text-base-content/70 whitespace-pre-wrap",children:f.data.text}),(f.data.files_read||f.data.files_modified)&&m.jsxs("div",{className:"mt-3 space-y-1",children:[f.data.files_read&&(()=>{try{const P=JSON.parse(f.data.files_read);if(P.length>0)return m.jsxs("div",{children:[m.jsx("span",{className:"text-xs font-medium",children:"Files Read:"}),m.jsx("div",{className:"text-xs text-base-content/50 mt-1",children:P.map((C,O)=>m.jsx("div",{className:"truncate",children:C},O))})]})}catch{return null}})(),f.data.files_modified&&(()=>{try{const P=JSON.parse(f.data.files_modified);if(P.length>0)return m.jsxs("div",{children:[m.jsx("span",{className:"text-xs font-medium",children:"Files Modified:"}),m.jsx("div",{className:"text-xs text-base-content/50 mt-1",children:P.map((C,O)=>m.jsx("div",{className:"truncate",children:C},O))})]})}catch{return null}})()]})]})]}),m.jsx(se,{icon:g?"lucide:chevron-up":"lucide:chevron-down",size:16,className:"text-base-content/30"})]})})})]},h)}),t.timeline.length===0&&m.jsx("div",{className:"text-center py-8 text-base-content/50",children:"No activity in this session"})]})]})}function iR(){const[e,t]=k.useState([]),[n,r]=k.useState(!0),[i,a]=k.useState(null),{selectedProject:l}=za(),u=k.useCallback(async()=>{r(!0);try{const f=new URLSearchParams;f.set("limit","50"),l&&f.set("project",l);const h=await(await fetch(`/api/sessions?${f}`)).json();t(h.items||[])}catch(f){console.error("Failed to fetch sessions:",f)}finally{r(!1)}},[l]);k.useEffect(()=>{u()},[u]);const c=f=>{a(i===f?null:f)};return m.jsxs("div",{className:"space-y-6",children:[m.jsxs("div",{className:"flex items-center justify-between",children:[m.jsxs("div",{children:[m.jsxs("div",{className:"flex items-center gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Sessions"}),m.jsx(uC,{project:l})]}),m.jsx("p",{className:"text-base-content/60",children:"Browse sessions and explore their timeline"})]}),m.jsx("div",{className:"flex items-center gap-2",children:m.jsx(Yt,{variant:"ghost",size:"sm",onClick:u,children:m.jsx(se,{icon:"lucide:refresh-cw",size:16})})})]}),n?m.jsx("div",{className:"flex items-center justify-center h-64",children:m.jsx(Xi,{size:"lg"})}):e.length===0?m.jsx(Eo,{icon:"lucide:history",title:"No sessions found",description:"Sessions will appear here as you use Claude Code"}):m.jsx("div",{className:"space-y-4",children:e.map(f=>m.jsxs("div",{children:[m.jsx(tR,{session:f,isExpanded:i===f.id,onToggle:()=>c(f.id)}),i===f.id&&m.jsx(rR,{sessionId:f.id})]},f.id))})]})}const Ih=["sonnet","sonnet[1m]","opus","opus[1m]"],aR=["sonnet","opus"],vC={sonnet:"Sonnet 4.6","sonnet[1m]":"Sonnet 4.6 1M",opus:"Opus 4.6","opus[1m]":"Opus 4.6 1M"},Qr={model:"opus",commands:{spec:"sonnet","spec-plan":"opus","spec-implement":"sonnet","spec-verify":"opus",vault:"sonnet",sync:"sonnet",learn:"sonnet"},agents:{"plan-challenger":"sonnet","plan-verifier":"sonnet","spec-reviewer-compliance":"sonnet","spec-reviewer-quality":"opus"}};function oR(){const[e,t]=k.useState(Qr),[n,r]=k.useState(!0),[i,a]=k.useState(null),[l,u]=k.useState(!1),[c,f]=k.useState(!1);k.useEffect(()=>{fetch("/api/settings").then(x=>{if(!x.ok)throw new Error(`API error: ${x.status}`);return x.json()}).then(x=>{t(x),r(!1)}).catch(x=>{a(x.message||"Failed to load settings"),r(!1)})},[]);const d=k.useCallback(x=>{t(S=>({...S,model:x})),u(!0),f(!1)},[]),h=k.useCallback((x,S)=>{t(w=>({...w,commands:{...w.commands,[x]:S}})),u(!0),f(!1)},[]),g=k.useCallback((x,S)=>{t(w=>({...w,agents:{...w.agents,[x]:S}})),u(!0),f(!1)},[]),y=k.useCallback(async()=>{await fetch("/api/settings",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)}).then(x=>{if(!x.ok)throw new Error(`Save failed: ${x.status}`);return x.json()}).then(x=>{t(x),u(!1),f(!0)})},[e]);return{settings:e,isLoading:n,error:i,isDirty:l,saved:c,updateModel:d,updateCommand:h,updateAgent:g,save:y}}function oc({value:e,choices:t,onChange:n,disabled:r=!1,id:i}){return m.jsx("select",{id:i,className:"select select-sm select-bordered w-full max-w-xs",value:e,onChange:a=>n(a.target.value),disabled:r,children:t.map(a=>m.jsx("option",{value:a,children:vC[a]??a},a))})}const lR=["spec","spec-plan","spec-implement","spec-verify"],sR=["vault","sync","learn"],n1={spec:"/spec (dispatcher)","spec-plan":"/spec planning","spec-implement":"/spec implement","spec-verify":"/spec verify",vault:"/vault",sync:"/sync",learn:"/learn"},uR={"plan-challenger":"plan-challenger","plan-verifier":"plan-verifier","spec-reviewer-compliance":"spec-reviewer-compliance","spec-reviewer-quality":"spec-reviewer-quality"};function lc({model:e}){return m.jsx("span",{className:"text-xs text-base-content/40",children:vC[e]??e})}function cR(){const{settings:e,isLoading:t,error:n,isDirty:r,saved:i,updateModel:a,updateCommand:l,updateAgent:u,save:c}=oR(),[f,d]=k.useState(null),[h,g]=k.useState(!1),y=async()=>{g(!0),d(null);try{await c()}catch(x){d(x instanceof Error?x.message:"Failed to save")}finally{g(!1)}};return t?m.jsxs("div",{className:"space-y-6",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Settings"}),m.jsx("div",{className:"space-y-4",children:[...Array(2)].map((x,S)=>m.jsx("div",{className:"card bg-base-200 animate-pulse",children:m.jsxs("div",{className:"card-body",children:[m.jsx("div",{className:"h-4 bg-base-300 rounded w-32 mb-4"}),m.jsx("div",{className:"h-8 bg-base-300 rounded w-48"})]})},S))})]}):n?m.jsxs("div",{className:"space-y-6",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Settings"}),m.jsx("div",{className:"alert alert-error",children:m.jsxs("span",{children:["Failed to load settings: ",n]})})]}):m.jsxs("div",{className:"space-y-6 pb-20",children:[m.jsxs("div",{children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Settings"}),m.jsx("p",{className:"text-base-content/60",children:"Model selection for Claude Pilot. Restart Pilot after saving to apply."}),m.jsx("p",{className:"text-base-content/40 text-xs mt-1",children:"1M context models require an Enterprise or Max (20×) subscription. Only select them if you already have access."})]}),f&&m.jsx("div",{className:"alert alert-error",children:m.jsx("span",{children:f})}),m.jsx("div",{className:"card bg-base-200",children:m.jsxs("div",{className:"card-body",children:[m.jsx("h2",{className:"card-title text-base",children:"General"}),m.jsx("div",{className:"overflow-x-auto",children:m.jsxs("table",{className:"table table-sm",children:[m.jsx("thead",{children:m.jsxs("tr",{children:[m.jsx("th",{children:"Setting"}),m.jsx("th",{children:"Model"}),m.jsx("th",{className:"text-base-content/40",children:"Default"})]})}),m.jsxs("tbody",{children:[m.jsxs("tr",{children:[m.jsxs("td",{children:[m.jsx("span",{className:"font-mono text-sm",children:"Main session"}),m.jsx("div",{className:"text-xs text-base-content/50",children:"Quick Mode / direct chat"})]}),m.jsx("td",{children:m.jsx(oc,{value:e.model,choices:Ih,onChange:a,id:"main-model"})}),m.jsx("td",{children:m.jsx(lc,{model:Qr.model})})]}),sR.map(x=>m.jsxs("tr",{children:[m.jsx("td",{children:m.jsx("span",{className:"font-mono text-sm",children:n1[x]??x})}),m.jsx("td",{children:m.jsx(oc,{value:e.commands[x]??Qr.commands[x],choices:Ih,onChange:S=>l(x,S),id:`cmd-${x}`})}),m.jsx("td",{children:m.jsx(lc,{model:Qr.commands[x]})})]},x))]})]})})]})}),m.jsx("div",{className:"card bg-base-200",children:m.jsxs("div",{className:"card-body",children:[m.jsx("h2",{className:"card-title text-base",children:"Spec Flow"}),m.jsx("p",{className:"text-sm text-base-content/70 mb-2",children:"Defaults use Opus for planning/verification, Sonnet for execution."}),m.jsx("div",{className:"overflow-x-auto",children:m.jsxs("table",{className:"table table-sm",children:[m.jsx("thead",{children:m.jsxs("tr",{children:[m.jsx("th",{children:"Command"}),m.jsx("th",{children:"Model"}),m.jsx("th",{className:"text-base-content/40",children:"Default"})]})}),m.jsx("tbody",{children:lR.map(x=>m.jsxs("tr",{children:[m.jsx("td",{children:m.jsx("span",{className:"font-mono text-sm",children:n1[x]??x})}),m.jsx("td",{children:m.jsx(oc,{value:e.commands[x]??Qr.commands[x],choices:Ih,onChange:S=>l(x,S),id:`cmd-${x}`})}),m.jsx("td",{children:m.jsx(lc,{model:Qr.commands[x]})})]},x))})]})}),m.jsx("h3",{className:"text-sm font-semibold mt-4 mb-1",children:"Sub-Agents"}),m.jsx("p",{className:"text-xs text-base-content/50 mb-2",children:"1M context not available for sub-agents."}),m.jsx("div",{className:"overflow-x-auto",children:m.jsxs("table",{className:"table table-sm",children:[m.jsx("thead",{children:m.jsxs("tr",{children:[m.jsx("th",{children:"Agent"}),m.jsx("th",{children:"Model"}),m.jsx("th",{className:"text-base-content/40",children:"Default"})]})}),m.jsx("tbody",{children:Object.keys(Qr.agents).map(x=>m.jsxs("tr",{children:[m.jsx("td",{children:m.jsx("span",{className:"font-mono text-sm",children:uR[x]??x})}),m.jsx("td",{children:m.jsx(oc,{value:e.agents[x]??Qr.agents[x],choices:aR,onChange:S=>u(x,S),id:`agent-${x}`})}),m.jsx("td",{children:m.jsx(lc,{model:Qr.agents[x]})})]},x))})]})})]})}),m.jsxs("details",{className:"collapse collapse-arrow bg-base-200 rounded-lg",children:[m.jsx("summary",{className:"collapse-title text-sm font-medium py-3 min-h-0",children:"Pricing reference"}),m.jsxs("div",{className:"collapse-content text-xs text-base-content/50",children:[m.jsxs("div",{className:"grid grid-cols-2 gap-x-6 gap-y-0.5 mb-2",children:[m.jsxs("span",{children:[m.jsx("span",{className:"font-mono",children:"Sonnet 4.6"})," — $3 / $15 per MTok"]}),m.jsxs("span",{children:[m.jsx("span",{className:"font-mono",children:"Opus 4.6"})," — $5 / $25 per MTok"]}),m.jsxs("span",{children:[m.jsx("span",{className:"font-mono",children:"Sonnet 4.6 1M"})," — $3‑6 / $15‑22.50"]}),m.jsxs("span",{children:[m.jsx("span",{className:"font-mono",children:"Opus 4.6 1M"})," — $5‑10 / $25‑37.50"]})]}),m.jsx("p",{className:"text-base-content/40",children:"1M variants use standard rates up to 200K tokens, then 2× input / 1.5× output above. Requires Max or Enterprise subscription."})]})]}),m.jsxs("div",{className:"fixed bottom-0 left-0 right-0 bg-base-100 border-t border-base-300 px-6 py-3 flex items-center gap-4 z-50",children:[m.jsx("button",{className:`btn btn-primary btn-sm ${h?"loading":""}`,onClick:y,disabled:h||!r,children:h?"Saving...":"Save Settings"}),r&&!i&&m.jsx("span",{className:"text-sm text-base-content/50",children:"Unsaved changes"}),i&&m.jsx("span",{className:"text-sm text-success",children:"Saved — restart Pilot to apply"})]})]})}function fR(e,t){const n={};return(e[e.length-1]===""?[...e,""]:e).join((n.padRight?" ":"")+","+(n.padLeft===!1?"":" ")).trim()}const dR=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,pR=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,hR={};function r1(e,t){return(hR.jsx?pR:dR).test(e)}const mR=/[ \t\n\f\r]/g;function gR(e){return typeof e=="object"?e.type==="text"?i1(e.value):!1:i1(e)}function i1(e){return e.replace(mR,"")===""}class Cs{constructor(t,n,r){this.normal=n,this.property=t,r&&(this.space=r)}}Cs.prototype.normal={};Cs.prototype.property={};Cs.prototype.space=void 0;function yC(e,t){const n={},r={};for(const i of e)Object.assign(n,i.property),Object.assign(r,i.normal);return new Cs(n,r,t)}function Lg(e){return e.toLowerCase()}class Cn{constructor(t,n){this.attribute=n,this.property=t}}Cn.prototype.attribute="";Cn.prototype.booleanish=!1;Cn.prototype.boolean=!1;Cn.prototype.commaOrSpaceSeparated=!1;Cn.prototype.commaSeparated=!1;Cn.prototype.defined=!1;Cn.prototype.mustUseProperty=!1;Cn.prototype.number=!1;Cn.prototype.overloadedBoolean=!1;Cn.prototype.property="";Cn.prototype.spaceSeparated=!1;Cn.prototype.space=void 0;let vR=0;const Ie=$a(),bt=$a(),Rg=$a(),le=$a(),Ze=$a(),Co=$a(),Dn=$a();function $a(){return 2**++vR}const zg=Object.freeze(Object.defineProperty({__proto__:null,boolean:Ie,booleanish:bt,commaOrSpaceSeparated:Dn,commaSeparated:Co,number:le,overloadedBoolean:Rg,spaceSeparated:Ze},Symbol.toStringTag,{value:"Module"})),Th=Object.keys(zg);class Zv extends Cn{constructor(t,n,r,i){let a=-1;if(super(t,n),a1(this,"space",i),typeof r=="number")for(;++a4&&n.slice(0,4)==="data"&&kR.test(t)){if(t.charAt(4)==="-"){const a=t.slice(5).replace(o1,PR);r="data"+a.charAt(0).toUpperCase()+a.slice(1)}else{const a=t.slice(4);if(!o1.test(a)){let l=a.replace(wR,jR);l.charAt(0)!=="-"&&(l="-"+l),t="data"+l}}i=Zv}return new i(r,t)}function jR(e){return"-"+e.toLowerCase()}function PR(e){return e.charAt(1).toUpperCase()}const ER=yC([xC,yR,kC,SC,jC],"html"),Jv=yC([xC,xR,kC,SC,jC],"svg");function CR(e){return e.join(" ").trim()}var mo={},Dh,l1;function OR(){if(l1)return Dh;l1=1;var e=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,t=/\n/g,n=/^\s*/,r=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,i=/^:\s*/,a=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,l=/^[;\s]*/,u=/^\s+|\s+$/g,c=` +`,f="/",d="*",h="",g="comment",y="declaration";function x(w,P){if(typeof w!="string")throw new TypeError("First argument must be a string");if(!w)return[];P=P||{};var C=1,O=1;function A(Y){var Q=Y.match(t);Q&&(C+=Q.length);var pe=Y.lastIndexOf(c);O=~pe?Y.length-pe:O+Y.length}function I(){var Y={line:C,column:O};return function(Q){return Q.position=new E(Y),H(),Q}}function E(Y){this.start=Y,this.end={line:C,column:O},this.source=P.source}E.prototype.content=w;function L(Y){var Q=new Error(P.source+":"+C+":"+O+": "+Y);if(Q.reason=Y,Q.filename=P.source,Q.line=C,Q.column=O,Q.source=w,!P.silent)throw Q}function F(Y){var Q=Y.exec(w);if(Q){var pe=Q[0];return A(pe),w=w.slice(pe.length),Q}}function H(){F(n)}function R(Y){var Q;for(Y=Y||[];Q=W();)Q!==!1&&Y.push(Q);return Y}function W(){var Y=I();if(!(f!=w.charAt(0)||d!=w.charAt(1))){for(var Q=2;h!=w.charAt(Q)&&(d!=w.charAt(Q)||f!=w.charAt(Q+1));)++Q;if(Q+=2,h===w.charAt(Q-1))return L("End of comment missing");var pe=w.slice(2,Q-2);return O+=2,A(pe),w=w.slice(Q),O+=2,Y({type:g,comment:pe})}}function D(){var Y=I(),Q=F(r);if(Q){if(W(),!F(i))return L("property missing ':'");var pe=F(a),de=Y({type:y,property:S(Q[0].replace(e,h)),value:pe?S(pe[0].replace(e,h)):h});return F(l),de}}function Z(){var Y=[];R(Y);for(var Q;Q=D();)Q!==!1&&(Y.push(Q),R(Y));return Y}return H(),Z()}function S(w){return w?w.replace(u,h):h}return Dh=x,Dh}var s1;function NR(){if(s1)return mo;s1=1;var e=mo&&mo.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(mo,"__esModule",{value:!0}),mo.default=n;const t=e(OR());function n(r,i){let a=null;if(!r||typeof r!="string")return a;const l=(0,t.default)(r),u=typeof i=="function";return l.forEach(c=>{if(c.type!=="declaration")return;const{property:f,value:d}=c;u?i(f,d,c):d&&(a=a||{},a[f]=d)}),a}return mo}var zl={},u1;function AR(){if(u1)return zl;u1=1,Object.defineProperty(zl,"__esModule",{value:!0}),zl.camelCase=void 0;var e=/^--[a-zA-Z0-9_-]+$/,t=/-([a-z])/g,n=/^[^-]+$/,r=/^-(webkit|moz|ms|o|khtml)-/,i=/^-(ms)-/,a=function(f){return!f||n.test(f)||e.test(f)},l=function(f,d){return d.toUpperCase()},u=function(f,d){return"".concat(d,"-")},c=function(f,d){return d===void 0&&(d={}),a(f)?f:(f=f.toLowerCase(),d.reactCompat?f=f.replace(i,u):f=f.replace(r,u),f.replace(t,l))};return zl.camelCase=c,zl}var $l,c1;function _R(){if(c1)return $l;c1=1;var e=$l&&$l.__importDefault||function(i){return i&&i.__esModule?i:{default:i}},t=e(NR()),n=AR();function r(i,a){var l={};return!i||typeof i!="string"||(0,t.default)(i,function(u,c){u&&c&&(l[(0,n.camelCase)(u,a)]=c)}),l}return r.default=r,$l=r,$l}var IR=_R();const TR=yr(IR),PC=EC("end"),ey=EC("start");function EC(e){return t;function t(n){const r=n&&n.position&&n.position[e]||{};if(typeof r.line=="number"&&r.line>0&&typeof r.column=="number"&&r.column>0)return{line:r.line,column:r.column,offset:typeof r.offset=="number"&&r.offset>-1?r.offset:void 0}}}function DR(e){const t=ey(e),n=PC(e);if(t&&n)return{start:t,end:n}}function rs(e){return!e||typeof e!="object"?"":"position"in e||"type"in e?f1(e.position):"start"in e||"end"in e?f1(e):"line"in e||"column"in e?$g(e):""}function $g(e){return d1(e&&e.line)+":"+d1(e&&e.column)}function f1(e){return $g(e&&e.start)+"-"+$g(e&&e.end)}function d1(e){return e&&typeof e=="number"?e:1}class an extends Error{constructor(t,n,r){super(),typeof n=="string"&&(r=n,n=void 0);let i="",a={},l=!1;if(n&&("line"in n&&"column"in n?a={place:n}:"start"in n&&"end"in n?a={place:n}:"type"in n?a={ancestors:[n],place:n.position}:a={...n}),typeof t=="string"?i=t:!a.cause&&t&&(l=!0,i=t.message,a.cause=t),!a.ruleId&&!a.source&&typeof r=="string"){const c=r.indexOf(":");c===-1?a.ruleId=r:(a.source=r.slice(0,c),a.ruleId=r.slice(c+1))}if(!a.place&&a.ancestors&&a.ancestors){const c=a.ancestors[a.ancestors.length-1];c&&(a.place=c.position)}const u=a.place&&"start"in a.place?a.place.start:a.place;this.ancestors=a.ancestors||void 0,this.cause=a.cause||void 0,this.column=u?u.column:void 0,this.fatal=void 0,this.file="",this.message=i,this.line=u?u.line:void 0,this.name=rs(a.place)||"1:1",this.place=a.place||void 0,this.reason=this.message,this.ruleId=a.ruleId||void 0,this.source=a.source||void 0,this.stack=l&&a.cause&&typeof a.cause.stack=="string"?a.cause.stack:"",this.actual=void 0,this.expected=void 0,this.note=void 0,this.url=void 0}}an.prototype.file="";an.prototype.name="";an.prototype.reason="";an.prototype.message="";an.prototype.stack="";an.prototype.column=void 0;an.prototype.line=void 0;an.prototype.ancestors=void 0;an.prototype.cause=void 0;an.prototype.fatal=void 0;an.prototype.place=void 0;an.prototype.ruleId=void 0;an.prototype.source=void 0;const ty={}.hasOwnProperty,MR=new Map,LR=/[A-Z]/g,RR=new Set(["table","tbody","thead","tfoot","tr"]),zR=new Set(["td","th"]),CC="https://github.com/syntax-tree/hast-util-to-jsx-runtime";function $R(e,t){if(!t||t.Fragment===void 0)throw new TypeError("Expected `Fragment` in options");const n=t.filePath||void 0;let r;if(t.development){if(typeof t.jsxDEV!="function")throw new TypeError("Expected `jsxDEV` in options when `development: true`");r=KR(n,t.jsxDEV)}else{if(typeof t.jsx!="function")throw new TypeError("Expected `jsx` in production options");if(typeof t.jsxs!="function")throw new TypeError("Expected `jsxs` in production options");r=VR(n,t.jsx,t.jsxs)}const i={Fragment:t.Fragment,ancestors:[],components:t.components||{},create:r,elementAttributeNameCase:t.elementAttributeNameCase||"react",evaluater:t.createEvaluater?t.createEvaluater():void 0,filePath:n,ignoreInvalidStyle:t.ignoreInvalidStyle||!1,passKeys:t.passKeys!==!1,passNode:t.passNode||!1,schema:t.space==="svg"?Jv:ER,stylePropertyNameCase:t.stylePropertyNameCase||"dom",tableCellAlignToStyle:t.tableCellAlignToStyle!==!1},a=OC(i,e,void 0);return a&&typeof a!="string"?a:i.create(e,i.Fragment,{children:a||void 0},void 0)}function OC(e,t,n){if(t.type==="element")return FR(e,t,n);if(t.type==="mdxFlowExpression"||t.type==="mdxTextExpression")return BR(e,t);if(t.type==="mdxJsxFlowElement"||t.type==="mdxJsxTextElement")return WR(e,t,n);if(t.type==="mdxjsEsm")return UR(e,t);if(t.type==="root")return qR(e,t,n);if(t.type==="text")return HR(e,t)}function FR(e,t,n){const r=e.schema;let i=r;t.tagName.toLowerCase()==="svg"&&r.space==="html"&&(i=Jv,e.schema=i),e.ancestors.push(t);const a=AC(e,t.tagName,!1),l=GR(e,t);let u=ry(e,t);return RR.has(t.tagName)&&(u=u.filter(function(c){return typeof c=="string"?!gR(c):!0})),NC(e,l,a,t),ny(l,u),e.ancestors.pop(),e.schema=r,e.create(t,a,l,n)}function BR(e,t){if(t.data&&t.data.estree&&e.evaluater){const r=t.data.estree.body[0];return r.type,e.evaluater.evaluateExpression(r.expression)}us(e,t.position)}function UR(e,t){if(t.data&&t.data.estree&&e.evaluater)return e.evaluater.evaluateProgram(t.data.estree);us(e,t.position)}function WR(e,t,n){const r=e.schema;let i=r;t.name==="svg"&&r.space==="html"&&(i=Jv,e.schema=i),e.ancestors.push(t);const a=t.name===null?e.Fragment:AC(e,t.name,!0),l=YR(e,t),u=ry(e,t);return NC(e,l,a,t),ny(l,u),e.ancestors.pop(),e.schema=r,e.create(t,a,l,n)}function qR(e,t,n){const r={};return ny(r,ry(e,t)),e.create(t,e.Fragment,r,n)}function HR(e,t){return t.value}function NC(e,t,n,r){typeof n!="string"&&n!==e.Fragment&&e.passNode&&(t.node=r)}function ny(e,t){if(t.length>0){const n=t.length>1?t:t[0];n&&(e.children=n)}}function VR(e,t,n){return r;function r(i,a,l,u){const f=Array.isArray(l.children)?n:t;return u?f(a,l,u):f(a,l)}}function KR(e,t){return n;function n(r,i,a,l){const u=Array.isArray(a.children),c=ey(r);return t(i,a,l,u,{columnNumber:c?c.column-1:void 0,fileName:e,lineNumber:c?c.line:void 0},void 0)}}function GR(e,t){const n={};let r,i;for(i in t.properties)if(i!=="children"&&ty.call(t.properties,i)){const a=XR(e,i,t.properties[i]);if(a){const[l,u]=a;e.tableCellAlignToStyle&&l==="align"&&typeof u=="string"&&zR.has(t.tagName)?r=u:n[l]=u}}if(r){const a=n.style||(n.style={});a[e.stylePropertyNameCase==="css"?"text-align":"textAlign"]=r}return n}function YR(e,t){const n={};for(const r of t.attributes)if(r.type==="mdxJsxExpressionAttribute")if(r.data&&r.data.estree&&e.evaluater){const a=r.data.estree.body[0];a.type;const l=a.expression;l.type;const u=l.properties[0];u.type,Object.assign(n,e.evaluater.evaluateExpression(u.argument))}else us(e,t.position);else{const i=r.name;let a;if(r.value&&typeof r.value=="object")if(r.value.data&&r.value.data.estree&&e.evaluater){const u=r.value.data.estree.body[0];u.type,a=e.evaluater.evaluateExpression(u.expression)}else us(e,t.position);else a=r.value===null?!0:r.value;n[i]=a}return n}function ry(e,t){const n=[];let r=-1;const i=e.passKeys?new Map:MR;for(;++ri?0:i+t:t=t>i?i:t,n=n>0?n:0,r.length<1e4)l=Array.from(r),l.unshift(t,n),e.splice(...l);else for(n&&e.splice(t,n);a0?(Rn(e,e.length,0,t),e):t}const m1={}.hasOwnProperty;function IC(e){const t={};let n=-1;for(;++n13&&n<32||n>126&&n<160||n>55295&&n<57344||n>64975&&n<65008||(n&65535)===65535||(n&65535)===65534||n>1114111?"�":String.fromCodePoint(n)}function pr(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const cn=Ji(/[A-Za-z]/),rn=Ji(/[\dA-Za-z]/),az=Ji(/[#-'*+\--9=?A-Z^-~]/);function $c(e){return e!==null&&(e<32||e===127)}const Fg=Ji(/\d/),oz=Ji(/[\dA-Fa-f]/),lz=Ji(/[!-/:-@[-`{-~]/);function Oe(e){return e!==null&&e<-2}function Xe(e){return e!==null&&(e<0||e===32)}function Re(e){return e===-2||e===-1||e===32}const Bf=Ji(new RegExp("\\p{P}|\\p{S}","u")),Na=Ji(/\s/);function Ji(e){return t;function t(n){return n!==null&&n>-1&&e.test(String.fromCharCode(n))}}function Uo(e){const t=[];let n=-1,r=0,i=0;for(;++n55295&&a<57344){const u=e.charCodeAt(n+1);a<56320&&u>56319&&u<57344?(l=String.fromCharCode(a,u),i=1):l="�"}else l=String.fromCharCode(a);l&&(t.push(e.slice(r,n),encodeURIComponent(l)),r=n+i+1,l=""),i&&(n+=i,i=0)}return t.join("")+e.slice(r)}function $e(e,t,n,r){const i=r?r-1:Number.POSITIVE_INFINITY;let a=0;return l;function l(c){return Re(c)?(e.enter(n),u(c)):t(c)}function u(c){return Re(c)&&a++l))return;const L=t.events.length;let F=L,H,R;for(;F--;)if(t.events[F][0]==="exit"&&t.events[F][1].type==="chunkFlow"){if(H){R=t.events[F][1].end;break}H=!0}for(P(r),E=L;EO;){const I=n[A];t.containerState=I[1],I[0].exit.call(t,e)}n.length=O}function C(){i.write([null]),a=void 0,i=void 0,t.containerState._closeFlow=void 0}}function dz(e,t,n){return $e(e,e.attempt(this.parser.constructs.document,t,n),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function _o(e){if(e===null||Xe(e)||Na(e))return 1;if(Bf(e))return 2}function Uf(e,t,n){const r=[];let i=-1;for(;++i1&&e[n][1].end.offset-e[n][1].start.offset>1?2:1;const h={...e[r][1].end},g={...e[n][1].start};v1(h,-c),v1(g,c),l={type:c>1?"strongSequence":"emphasisSequence",start:h,end:{...e[r][1].end}},u={type:c>1?"strongSequence":"emphasisSequence",start:{...e[n][1].start},end:g},a={type:c>1?"strongText":"emphasisText",start:{...e[r][1].end},end:{...e[n][1].start}},i={type:c>1?"strong":"emphasis",start:{...l.start},end:{...u.end}},e[r][1].end={...l.start},e[n][1].start={...u.end},f=[],e[r][1].end.offset-e[r][1].start.offset&&(f=Xn(f,[["enter",e[r][1],t],["exit",e[r][1],t]])),f=Xn(f,[["enter",i,t],["enter",l,t],["exit",l,t],["enter",a,t]]),f=Xn(f,Uf(t.parser.constructs.insideSpan.null,e.slice(r+1,n),t)),f=Xn(f,[["exit",a,t],["enter",u,t],["exit",u,t],["exit",i,t]]),e[n][1].end.offset-e[n][1].start.offset?(d=2,f=Xn(f,[["enter",e[n][1],t],["exit",e[n][1],t]])):d=0,Rn(e,r-1,n-r+3,f),n=r+f.length-d-2;break}}for(n=-1;++n0&&Re(E)?$e(e,C,"linePrefix",a+1)(E):C(E)}function C(E){return E===null||Oe(E)?e.check(y1,S,A)(E):(e.enter("codeFlowValue"),O(E))}function O(E){return E===null||Oe(E)?(e.exit("codeFlowValue"),C(E)):(e.consume(E),O)}function A(E){return e.exit("codeFenced"),t(E)}function I(E,L,F){let H=0;return R;function R(Q){return E.enter("lineEnding"),E.consume(Q),E.exit("lineEnding"),W}function W(Q){return E.enter("codeFencedFence"),Re(Q)?$e(E,D,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(Q):D(Q)}function D(Q){return Q===u?(E.enter("codeFencedFenceSequence"),Z(Q)):F(Q)}function Z(Q){return Q===u?(H++,E.consume(Q),Z):H>=l?(E.exit("codeFencedFenceSequence"),Re(Q)?$e(E,Y,"whitespace")(Q):Y(Q)):F(Q)}function Y(Q){return Q===null||Oe(Q)?(E.exit("codeFencedFence"),L(Q)):F(Q)}}}function jz(e,t,n){const r=this;return i;function i(l){return l===null?n(l):(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),a)}function a(l){return r.parser.lazy[r.now().line]?n(l):t(l)}}const Lh={name:"codeIndented",tokenize:Ez},Pz={partial:!0,tokenize:Cz};function Ez(e,t,n){const r=this;return i;function i(f){return e.enter("codeIndented"),$e(e,a,"linePrefix",5)(f)}function a(f){const d=r.events[r.events.length-1];return d&&d[1].type==="linePrefix"&&d[2].sliceSerialize(d[1],!0).length>=4?l(f):n(f)}function l(f){return f===null?c(f):Oe(f)?e.attempt(Pz,l,c)(f):(e.enter("codeFlowValue"),u(f))}function u(f){return f===null||Oe(f)?(e.exit("codeFlowValue"),l(f)):(e.consume(f),u)}function c(f){return e.exit("codeIndented"),t(f)}}function Cz(e,t,n){const r=this;return i;function i(l){return r.parser.lazy[r.now().line]?n(l):Oe(l)?(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),i):$e(e,a,"linePrefix",5)(l)}function a(l){const u=r.events[r.events.length-1];return u&&u[1].type==="linePrefix"&&u[2].sliceSerialize(u[1],!0).length>=4?t(l):Oe(l)?i(l):n(l)}}const Oz={name:"codeText",previous:Az,resolve:Nz,tokenize:_z};function Nz(e){let t=e.length-4,n=3,r,i;if((e[n][1].type==="lineEnding"||e[n][1].type==="space")&&(e[t][1].type==="lineEnding"||e[t][1].type==="space")){for(r=n;++r=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+t+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return tthis.left.length?this.right.slice(this.right.length-r+this.left.length,this.right.length-t+this.left.length).reverse():this.left.slice(t).concat(this.right.slice(this.right.length-r+this.left.length).reverse())}splice(t,n,r){const i=n||0;this.setCursor(Math.trunc(t));const a=this.right.splice(this.right.length-i,Number.POSITIVE_INFINITY);return r&&Fl(this.left,r),a.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(t){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(t)}pushMany(t){this.setCursor(Number.POSITIVE_INFINITY),Fl(this.left,t)}unshift(t){this.setCursor(0),this.right.push(t)}unshiftMany(t){this.setCursor(0),Fl(this.right,t.reverse())}setCursor(t){if(!(t===this.left.length||t>this.left.length&&this.right.length===0||t<0&&this.left.length===0))if(t=4?t(l):e.interrupt(r.parser.constructs.flow,n,t)(l)}}function zC(e,t,n,r,i,a,l,u,c){const f=c||Number.POSITIVE_INFINITY;let d=0;return h;function h(P){return P===60?(e.enter(r),e.enter(i),e.enter(a),e.consume(P),e.exit(a),g):P===null||P===32||P===41||$c(P)?n(P):(e.enter(r),e.enter(l),e.enter(u),e.enter("chunkString",{contentType:"string"}),S(P))}function g(P){return P===62?(e.enter(a),e.consume(P),e.exit(a),e.exit(i),e.exit(r),t):(e.enter(u),e.enter("chunkString",{contentType:"string"}),y(P))}function y(P){return P===62?(e.exit("chunkString"),e.exit(u),g(P)):P===null||P===60||Oe(P)?n(P):(e.consume(P),P===92?x:y)}function x(P){return P===60||P===62||P===92?(e.consume(P),y):y(P)}function S(P){return!d&&(P===null||P===41||Xe(P))?(e.exit("chunkString"),e.exit(u),e.exit(l),e.exit(r),t(P)):d999||y===null||y===91||y===93&&!c||y===94&&!u&&"_hiddenFootnoteSupport"in l.parser.constructs?n(y):y===93?(e.exit(a),e.enter(i),e.consume(y),e.exit(i),e.exit(r),t):Oe(y)?(e.enter("lineEnding"),e.consume(y),e.exit("lineEnding"),d):(e.enter("chunkString",{contentType:"string"}),h(y))}function h(y){return y===null||y===91||y===93||Oe(y)||u++>999?(e.exit("chunkString"),d(y)):(e.consume(y),c||(c=!Re(y)),y===92?g:h)}function g(y){return y===91||y===92||y===93?(e.consume(y),u++,h):h(y)}}function FC(e,t,n,r,i,a){let l;return u;function u(g){return g===34||g===39||g===40?(e.enter(r),e.enter(i),e.consume(g),e.exit(i),l=g===40?41:g,c):n(g)}function c(g){return g===l?(e.enter(i),e.consume(g),e.exit(i),e.exit(r),t):(e.enter(a),f(g))}function f(g){return g===l?(e.exit(a),c(l)):g===null?n(g):Oe(g)?(e.enter("lineEnding"),e.consume(g),e.exit("lineEnding"),$e(e,f,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),d(g))}function d(g){return g===l||g===null||Oe(g)?(e.exit("chunkString"),f(g)):(e.consume(g),g===92?h:d)}function h(g){return g===l||g===92?(e.consume(g),d):d(g)}}function is(e,t){let n;return r;function r(i){return Oe(i)?(e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),n=!0,r):Re(i)?$e(e,r,n?"linePrefix":"lineSuffix")(i):t(i)}}const $z={name:"definition",tokenize:Bz},Fz={partial:!0,tokenize:Uz};function Bz(e,t,n){const r=this;let i;return a;function a(y){return e.enter("definition"),l(y)}function l(y){return $C.call(r,e,u,n,"definitionLabel","definitionLabelMarker","definitionLabelString")(y)}function u(y){return i=pr(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)),y===58?(e.enter("definitionMarker"),e.consume(y),e.exit("definitionMarker"),c):n(y)}function c(y){return Xe(y)?is(e,f)(y):f(y)}function f(y){return zC(e,d,n,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(y)}function d(y){return e.attempt(Fz,h,h)(y)}function h(y){return Re(y)?$e(e,g,"whitespace")(y):g(y)}function g(y){return y===null||Oe(y)?(e.exit("definition"),r.parser.defined.push(i),t(y)):n(y)}}function Uz(e,t,n){return r;function r(u){return Xe(u)?is(e,i)(u):n(u)}function i(u){return FC(e,a,n,"definitionTitle","definitionTitleMarker","definitionTitleString")(u)}function a(u){return Re(u)?$e(e,l,"whitespace")(u):l(u)}function l(u){return u===null||Oe(u)?t(u):n(u)}}const Wz={name:"hardBreakEscape",tokenize:qz};function qz(e,t,n){return r;function r(a){return e.enter("hardBreakEscape"),e.consume(a),i}function i(a){return Oe(a)?(e.exit("hardBreakEscape"),t(a)):n(a)}}const Hz={name:"headingAtx",resolve:Vz,tokenize:Kz};function Vz(e,t){let n=e.length-2,r=3,i,a;return e[r][1].type==="whitespace"&&(r+=2),n-2>r&&e[n][1].type==="whitespace"&&(n-=2),e[n][1].type==="atxHeadingSequence"&&(r===n-1||n-4>r&&e[n-2][1].type==="whitespace")&&(n-=r+1===n?2:4),n>r&&(i={type:"atxHeadingText",start:e[r][1].start,end:e[n][1].end},a={type:"chunkText",start:e[r][1].start,end:e[n][1].end,contentType:"text"},Rn(e,r,n-r+1,[["enter",i,t],["enter",a,t],["exit",a,t],["exit",i,t]])),e}function Kz(e,t,n){let r=0;return i;function i(d){return e.enter("atxHeading"),a(d)}function a(d){return e.enter("atxHeadingSequence"),l(d)}function l(d){return d===35&&r++<6?(e.consume(d),l):d===null||Xe(d)?(e.exit("atxHeadingSequence"),u(d)):n(d)}function u(d){return d===35?(e.enter("atxHeadingSequence"),c(d)):d===null||Oe(d)?(e.exit("atxHeading"),t(d)):Re(d)?$e(e,u,"whitespace")(d):(e.enter("atxHeadingText"),f(d))}function c(d){return d===35?(e.consume(d),c):(e.exit("atxHeadingSequence"),u(d))}function f(d){return d===null||d===35||Xe(d)?(e.exit("atxHeadingText"),u(d)):(e.consume(d),f)}}const Gz=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],b1=["pre","script","style","textarea"],Yz={concrete:!0,name:"htmlFlow",resolveTo:Zz,tokenize:Jz},Xz={partial:!0,tokenize:t3},Qz={partial:!0,tokenize:e3};function Zz(e){let t=e.length;for(;t--&&!(e[t][0]==="enter"&&e[t][1].type==="htmlFlow"););return t>1&&e[t-2][1].type==="linePrefix"&&(e[t][1].start=e[t-2][1].start,e[t+1][1].start=e[t-2][1].start,e.splice(t-2,2)),e}function Jz(e,t,n){const r=this;let i,a,l,u,c;return f;function f(_){return d(_)}function d(_){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(_),h}function h(_){return _===33?(e.consume(_),g):_===47?(e.consume(_),a=!0,S):_===63?(e.consume(_),i=3,r.interrupt?t:T):cn(_)?(e.consume(_),l=String.fromCharCode(_),w):n(_)}function g(_){return _===45?(e.consume(_),i=2,y):_===91?(e.consume(_),i=5,u=0,x):cn(_)?(e.consume(_),i=4,r.interrupt?t:T):n(_)}function y(_){return _===45?(e.consume(_),r.interrupt?t:T):n(_)}function x(_){const te="CDATA[";return _===te.charCodeAt(u++)?(e.consume(_),u===te.length?r.interrupt?t:D:x):n(_)}function S(_){return cn(_)?(e.consume(_),l=String.fromCharCode(_),w):n(_)}function w(_){if(_===null||_===47||_===62||Xe(_)){const te=_===47,fe=l.toLowerCase();return!te&&!a&&b1.includes(fe)?(i=1,r.interrupt?t(_):D(_)):Gz.includes(l.toLowerCase())?(i=6,te?(e.consume(_),P):r.interrupt?t(_):D(_)):(i=7,r.interrupt&&!r.parser.lazy[r.now().line]?n(_):a?C(_):O(_))}return _===45||rn(_)?(e.consume(_),l+=String.fromCharCode(_),w):n(_)}function P(_){return _===62?(e.consume(_),r.interrupt?t:D):n(_)}function C(_){return Re(_)?(e.consume(_),C):R(_)}function O(_){return _===47?(e.consume(_),R):_===58||_===95||cn(_)?(e.consume(_),A):Re(_)?(e.consume(_),O):R(_)}function A(_){return _===45||_===46||_===58||_===95||rn(_)?(e.consume(_),A):I(_)}function I(_){return _===61?(e.consume(_),E):Re(_)?(e.consume(_),I):O(_)}function E(_){return _===null||_===60||_===61||_===62||_===96?n(_):_===34||_===39?(e.consume(_),c=_,L):Re(_)?(e.consume(_),E):F(_)}function L(_){return _===c?(e.consume(_),c=null,H):_===null||Oe(_)?n(_):(e.consume(_),L)}function F(_){return _===null||_===34||_===39||_===47||_===60||_===61||_===62||_===96||Xe(_)?I(_):(e.consume(_),F)}function H(_){return _===47||_===62||Re(_)?O(_):n(_)}function R(_){return _===62?(e.consume(_),W):n(_)}function W(_){return _===null||Oe(_)?D(_):Re(_)?(e.consume(_),W):n(_)}function D(_){return _===45&&i===2?(e.consume(_),pe):_===60&&i===1?(e.consume(_),de):_===62&&i===4?(e.consume(_),$):_===63&&i===3?(e.consume(_),T):_===93&&i===5?(e.consume(_),ae):Oe(_)&&(i===6||i===7)?(e.exit("htmlFlowData"),e.check(Xz,U,Z)(_)):_===null||Oe(_)?(e.exit("htmlFlowData"),Z(_)):(e.consume(_),D)}function Z(_){return e.check(Qz,Y,U)(_)}function Y(_){return e.enter("lineEnding"),e.consume(_),e.exit("lineEnding"),Q}function Q(_){return _===null||Oe(_)?Z(_):(e.enter("htmlFlowData"),D(_))}function pe(_){return _===45?(e.consume(_),T):D(_)}function de(_){return _===47?(e.consume(_),l="",J):D(_)}function J(_){if(_===62){const te=l.toLowerCase();return b1.includes(te)?(e.consume(_),$):D(_)}return cn(_)&&l.length<8?(e.consume(_),l+=String.fromCharCode(_),J):D(_)}function ae(_){return _===93?(e.consume(_),T):D(_)}function T(_){return _===62?(e.consume(_),$):_===45&&i===2?(e.consume(_),T):D(_)}function $(_){return _===null||Oe(_)?(e.exit("htmlFlowData"),U(_)):(e.consume(_),$)}function U(_){return e.exit("htmlFlow"),t(_)}}function e3(e,t,n){const r=this;return i;function i(l){return Oe(l)?(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),a):n(l)}function a(l){return r.parser.lazy[r.now().line]?n(l):t(l)}}function t3(e,t,n){return r;function r(i){return e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),e.attempt(Os,t,n)}}const n3={name:"htmlText",tokenize:r3};function r3(e,t,n){const r=this;let i,a,l;return u;function u(T){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(T),c}function c(T){return T===33?(e.consume(T),f):T===47?(e.consume(T),I):T===63?(e.consume(T),O):cn(T)?(e.consume(T),F):n(T)}function f(T){return T===45?(e.consume(T),d):T===91?(e.consume(T),a=0,x):cn(T)?(e.consume(T),C):n(T)}function d(T){return T===45?(e.consume(T),y):n(T)}function h(T){return T===null?n(T):T===45?(e.consume(T),g):Oe(T)?(l=h,de(T)):(e.consume(T),h)}function g(T){return T===45?(e.consume(T),y):h(T)}function y(T){return T===62?pe(T):T===45?g(T):h(T)}function x(T){const $="CDATA[";return T===$.charCodeAt(a++)?(e.consume(T),a===$.length?S:x):n(T)}function S(T){return T===null?n(T):T===93?(e.consume(T),w):Oe(T)?(l=S,de(T)):(e.consume(T),S)}function w(T){return T===93?(e.consume(T),P):S(T)}function P(T){return T===62?pe(T):T===93?(e.consume(T),P):S(T)}function C(T){return T===null||T===62?pe(T):Oe(T)?(l=C,de(T)):(e.consume(T),C)}function O(T){return T===null?n(T):T===63?(e.consume(T),A):Oe(T)?(l=O,de(T)):(e.consume(T),O)}function A(T){return T===62?pe(T):O(T)}function I(T){return cn(T)?(e.consume(T),E):n(T)}function E(T){return T===45||rn(T)?(e.consume(T),E):L(T)}function L(T){return Oe(T)?(l=L,de(T)):Re(T)?(e.consume(T),L):pe(T)}function F(T){return T===45||rn(T)?(e.consume(T),F):T===47||T===62||Xe(T)?H(T):n(T)}function H(T){return T===47?(e.consume(T),pe):T===58||T===95||cn(T)?(e.consume(T),R):Oe(T)?(l=H,de(T)):Re(T)?(e.consume(T),H):pe(T)}function R(T){return T===45||T===46||T===58||T===95||rn(T)?(e.consume(T),R):W(T)}function W(T){return T===61?(e.consume(T),D):Oe(T)?(l=W,de(T)):Re(T)?(e.consume(T),W):H(T)}function D(T){return T===null||T===60||T===61||T===62||T===96?n(T):T===34||T===39?(e.consume(T),i=T,Z):Oe(T)?(l=D,de(T)):Re(T)?(e.consume(T),D):(e.consume(T),Y)}function Z(T){return T===i?(e.consume(T),i=void 0,Q):T===null?n(T):Oe(T)?(l=Z,de(T)):(e.consume(T),Z)}function Y(T){return T===null||T===34||T===39||T===60||T===61||T===96?n(T):T===47||T===62||Xe(T)?H(T):(e.consume(T),Y)}function Q(T){return T===47||T===62||Xe(T)?H(T):n(T)}function pe(T){return T===62?(e.consume(T),e.exit("htmlTextData"),e.exit("htmlText"),t):n(T)}function de(T){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(T),e.exit("lineEnding"),J}function J(T){return Re(T)?$e(e,ae,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(T):ae(T)}function ae(T){return e.enter("htmlTextData"),l(T)}}const oy={name:"labelEnd",resolveAll:l3,resolveTo:s3,tokenize:u3},i3={tokenize:c3},a3={tokenize:f3},o3={tokenize:d3};function l3(e){let t=-1;const n=[];for(;++t=3&&(f===null||Oe(f))?(e.exit("thematicBreak"),t(f)):n(f)}function c(f){return f===i?(e.consume(f),r++,c):(e.exit("thematicBreakSequence"),Re(f)?$e(e,u,"whitespace")(f):u(f))}}const Sn={continuation:{tokenize:k3},exit:j3,name:"list",tokenize:w3},x3={partial:!0,tokenize:P3},b3={partial:!0,tokenize:S3};function w3(e,t,n){const r=this,i=r.events[r.events.length-1];let a=i&&i[1].type==="linePrefix"?i[2].sliceSerialize(i[1],!0).length:0,l=0;return u;function u(y){const x=r.containerState.type||(y===42||y===43||y===45?"listUnordered":"listOrdered");if(x==="listUnordered"?!r.containerState.marker||y===r.containerState.marker:Fg(y)){if(r.containerState.type||(r.containerState.type=x,e.enter(x,{_container:!0})),x==="listUnordered")return e.enter("listItemPrefix"),y===42||y===45?e.check(_c,n,f)(y):f(y);if(!r.interrupt||y===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),c(y)}return n(y)}function c(y){return Fg(y)&&++l<10?(e.consume(y),c):(!r.interrupt||l<2)&&(r.containerState.marker?y===r.containerState.marker:y===41||y===46)?(e.exit("listItemValue"),f(y)):n(y)}function f(y){return e.enter("listItemMarker"),e.consume(y),e.exit("listItemMarker"),r.containerState.marker=r.containerState.marker||y,e.check(Os,r.interrupt?n:d,e.attempt(x3,g,h))}function d(y){return r.containerState.initialBlankLine=!0,a++,g(y)}function h(y){return Re(y)?(e.enter("listItemPrefixWhitespace"),e.consume(y),e.exit("listItemPrefixWhitespace"),g):n(y)}function g(y){return r.containerState.size=a+r.sliceSerialize(e.exit("listItemPrefix"),!0).length,t(y)}}function k3(e,t,n){const r=this;return r.containerState._closeFlow=void 0,e.check(Os,i,a);function i(u){return r.containerState.furtherBlankLines=r.containerState.furtherBlankLines||r.containerState.initialBlankLine,$e(e,t,"listItemIndent",r.containerState.size+1)(u)}function a(u){return r.containerState.furtherBlankLines||!Re(u)?(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,l(u)):(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,e.attempt(b3,t,l)(u))}function l(u){return r.containerState._closeFlow=!0,r.interrupt=void 0,$e(e,e.attempt(Sn,t,n),"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(u)}}function S3(e,t,n){const r=this;return $e(e,i,"listItemIndent",r.containerState.size+1);function i(a){const l=r.events[r.events.length-1];return l&&l[1].type==="listItemIndent"&&l[2].sliceSerialize(l[1],!0).length===r.containerState.size?t(a):n(a)}}function j3(e){e.exit(this.containerState.type)}function P3(e,t,n){const r=this;return $e(e,i,"listItemPrefixWhitespace",r.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function i(a){const l=r.events[r.events.length-1];return!Re(a)&&l&&l[1].type==="listItemPrefixWhitespace"?t(a):n(a)}}const w1={name:"setextUnderline",resolveTo:E3,tokenize:C3};function E3(e,t){let n=e.length,r,i,a;for(;n--;)if(e[n][0]==="enter"){if(e[n][1].type==="content"){r=n;break}e[n][1].type==="paragraph"&&(i=n)}else e[n][1].type==="content"&&e.splice(n,1),!a&&e[n][1].type==="definition"&&(a=n);const l={type:"setextHeading",start:{...e[r][1].start},end:{...e[e.length-1][1].end}};return e[i][1].type="setextHeadingText",a?(e.splice(i,0,["enter",l,t]),e.splice(a+1,0,["exit",e[r][1],t]),e[r][1].end={...e[a][1].end}):e[r][1]=l,e.push(["exit",l,t]),e}function C3(e,t,n){const r=this;let i;return a;function a(f){let d=r.events.length,h;for(;d--;)if(r.events[d][1].type!=="lineEnding"&&r.events[d][1].type!=="linePrefix"&&r.events[d][1].type!=="content"){h=r.events[d][1].type==="paragraph";break}return!r.parser.lazy[r.now().line]&&(r.interrupt||h)?(e.enter("setextHeadingLine"),i=f,l(f)):n(f)}function l(f){return e.enter("setextHeadingLineSequence"),u(f)}function u(f){return f===i?(e.consume(f),u):(e.exit("setextHeadingLineSequence"),Re(f)?$e(e,c,"lineSuffix")(f):c(f))}function c(f){return f===null||Oe(f)?(e.exit("setextHeadingLine"),t(f)):n(f)}}const O3={tokenize:N3};function N3(e){const t=this,n=e.attempt(Os,r,e.attempt(this.parser.constructs.flowInitial,i,$e(e,e.attempt(this.parser.constructs.flow,i,e.attempt(Dz,i)),"linePrefix")));return n;function r(a){if(a===null){e.consume(a);return}return e.enter("lineEndingBlank"),e.consume(a),e.exit("lineEndingBlank"),t.currentConstruct=void 0,n}function i(a){if(a===null){e.consume(a);return}return e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),t.currentConstruct=void 0,n}}const A3={resolveAll:UC()},_3=BC("string"),I3=BC("text");function BC(e){return{resolveAll:UC(e==="text"?T3:void 0),tokenize:t};function t(n){const r=this,i=this.parser.constructs[e],a=n.attempt(i,l,u);return l;function l(d){return f(d)?a(d):u(d)}function u(d){if(d===null){n.consume(d);return}return n.enter("data"),n.consume(d),c}function c(d){return f(d)?(n.exit("data"),a(d)):(n.consume(d),c)}function f(d){if(d===null)return!0;const h=i[d];let g=-1;if(h)for(;++g-1){const u=l[0];typeof u=="string"?l[0]=u.slice(r):l.shift()}a>0&&l.push(e[i].slice(0,a))}return l}function V3(e,t){let n=-1;const r=[];let i;for(;++n0){const Wt=Ne.tokenStack[Ne.tokenStack.length-1];(Wt[1]||w1).call(Ne,void 0,Wt[0])}for(pe.position={start:Ui(ee.length>0?ee[0][1].start:{line:1,column:1,offset:0}),end:Ui(ee.length>0?ee[ee.length-2][1].end:{line:1,column:1,offset:0})},Fe=-1;++Fe0&&(r.className=["language-"+i[0]]);let a={type:"element",tagName:"code",properties:r,children:[{type:"text",value:n}]};return t.meta&&(a.data={meta:t.meta}),e.patch(t,a),a=e.applyData(t,a),a={type:"element",tagName:"pre",properties:{},children:[a]},e.patch(t,a),a}function r4(e,t){const n={type:"element",tagName:"del",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function i4(e,t){const n={type:"element",tagName:"em",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function a4(e,t){const n=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",r=String(t.identifier).toUpperCase(),i=Uo(r.toLowerCase()),a=e.footnoteOrder.indexOf(r);let l,u=e.footnoteCounts.get(r);u===void 0?(u=0,e.footnoteOrder.push(r),l=e.footnoteOrder.length):l=a+1,u+=1,e.footnoteCounts.set(r,u);const c={type:"element",tagName:"a",properties:{href:"#"+n+"fn-"+i,id:n+"fnref-"+i+(u>1?"-"+u:""),dataFootnoteRef:!0,ariaDescribedBy:["footnote-label"]},children:[{type:"text",value:String(l)}]};e.patch(t,c);const f={type:"element",tagName:"sup",properties:{},children:[c]};return e.patch(t,f),e.applyData(t,f)}function o4(e,t){const n={type:"element",tagName:"h"+t.depth,properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function l4(e,t){if(e.options.allowDangerousHtml){const n={type:"raw",value:t.value};return e.patch(t,n),e.applyData(t,n)}}function qC(e,t){const n=t.referenceType;let r="]";if(n==="collapsed"?r+="[]":n==="full"&&(r+="["+(t.label||t.identifier)+"]"),t.type==="imageReference")return[{type:"text",value:"!["+t.alt+r}];const i=e.all(t),a=i[0];a&&a.type==="text"?a.value="["+a.value:i.unshift({type:"text",value:"["});const l=i[i.length-1];return l&&l.type==="text"?l.value+=r:i.push({type:"text",value:r}),i}function s4(e,t){const n=String(t.identifier).toUpperCase(),r=e.definitionById.get(n);if(!r)return qC(e,t);const i={src:Uo(r.url||""),alt:t.alt};r.title!==null&&r.title!==void 0&&(i.title=r.title);const a={type:"element",tagName:"img",properties:i,children:[]};return e.patch(t,a),e.applyData(t,a)}function u4(e,t){const n={src:Uo(t.url)};t.alt!==null&&t.alt!==void 0&&(n.alt=t.alt),t.title!==null&&t.title!==void 0&&(n.title=t.title);const r={type:"element",tagName:"img",properties:n,children:[]};return e.patch(t,r),e.applyData(t,r)}function c4(e,t){const n={type:"text",value:t.value.replace(/\r?\n|\r/g," ")};e.patch(t,n);const r={type:"element",tagName:"code",properties:{},children:[n]};return e.patch(t,r),e.applyData(t,r)}function f4(e,t){const n=String(t.identifier).toUpperCase(),r=e.definitionById.get(n);if(!r)return qC(e,t);const i={href:Uo(r.url||"")};r.title!==null&&r.title!==void 0&&(i.title=r.title);const a={type:"element",tagName:"a",properties:i,children:e.all(t)};return e.patch(t,a),e.applyData(t,a)}function d4(e,t){const n={href:Uo(t.url)};t.title!==null&&t.title!==void 0&&(n.title=t.title);const r={type:"element",tagName:"a",properties:n,children:e.all(t)};return e.patch(t,r),e.applyData(t,r)}function h4(e,t,n){const r=e.all(t),i=n?p4(n):HC(t),a={},l=[];if(typeof t.checked=="boolean"){const d=r[0];let p;d&&d.type==="element"&&d.tagName==="p"?p=d:(p={type:"element",tagName:"p",properties:{},children:[]},r.unshift(p)),p.children.length>0&&p.children.unshift({type:"text",value:" "}),p.children.unshift({type:"element",tagName:"input",properties:{type:"checkbox",checked:t.checked,disabled:!0},children:[]}),a.className=["task-list-item"]}let u=-1;for(;++u0){const Wt=Ne.tokenStack[Ne.tokenStack.length-1];(Wt[1]||S1).call(Ne,void 0,Wt[0])}for(he.position={start:Ui(ee.length>0?ee[0][1].start:{line:1,column:1,offset:0}),end:Ui(ee.length>0?ee[ee.length-2][1].end:{line:1,column:1,offset:0})},Fe=-1;++Fe0&&(r.className=["language-"+i[0]]);let a={type:"element",tagName:"code",properties:r,children:[{type:"text",value:n}]};return t.meta&&(a.data={meta:t.meta}),e.patch(t,a),a=e.applyData(t,a),a={type:"element",tagName:"pre",properties:{},children:[a]},e.patch(t,a),a}function o4(e,t){const n={type:"element",tagName:"del",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function l4(e,t){const n={type:"element",tagName:"em",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function s4(e,t){const n=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",r=String(t.identifier).toUpperCase(),i=Uo(r.toLowerCase()),a=e.footnoteOrder.indexOf(r);let l,u=e.footnoteCounts.get(r);u===void 0?(u=0,e.footnoteOrder.push(r),l=e.footnoteOrder.length):l=a+1,u+=1,e.footnoteCounts.set(r,u);const c={type:"element",tagName:"a",properties:{href:"#"+n+"fn-"+i,id:n+"fnref-"+i+(u>1?"-"+u:""),dataFootnoteRef:!0,ariaDescribedBy:["footnote-label"]},children:[{type:"text",value:String(l)}]};e.patch(t,c);const f={type:"element",tagName:"sup",properties:{},children:[c]};return e.patch(t,f),e.applyData(t,f)}function u4(e,t){const n={type:"element",tagName:"h"+t.depth,properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function c4(e,t){if(e.options.allowDangerousHtml){const n={type:"raw",value:t.value};return e.patch(t,n),e.applyData(t,n)}}function HC(e,t){const n=t.referenceType;let r="]";if(n==="collapsed"?r+="[]":n==="full"&&(r+="["+(t.label||t.identifier)+"]"),t.type==="imageReference")return[{type:"text",value:"!["+t.alt+r}];const i=e.all(t),a=i[0];a&&a.type==="text"?a.value="["+a.value:i.unshift({type:"text",value:"["});const l=i[i.length-1];return l&&l.type==="text"?l.value+=r:i.push({type:"text",value:r}),i}function f4(e,t){const n=String(t.identifier).toUpperCase(),r=e.definitionById.get(n);if(!r)return HC(e,t);const i={src:Uo(r.url||""),alt:t.alt};r.title!==null&&r.title!==void 0&&(i.title=r.title);const a={type:"element",tagName:"img",properties:i,children:[]};return e.patch(t,a),e.applyData(t,a)}function d4(e,t){const n={src:Uo(t.url)};t.alt!==null&&t.alt!==void 0&&(n.alt=t.alt),t.title!==null&&t.title!==void 0&&(n.title=t.title);const r={type:"element",tagName:"img",properties:n,children:[]};return e.patch(t,r),e.applyData(t,r)}function p4(e,t){const n={type:"text",value:t.value.replace(/\r?\n|\r/g," ")};e.patch(t,n);const r={type:"element",tagName:"code",properties:{},children:[n]};return e.patch(t,r),e.applyData(t,r)}function h4(e,t){const n=String(t.identifier).toUpperCase(),r=e.definitionById.get(n);if(!r)return HC(e,t);const i={href:Uo(r.url||"")};r.title!==null&&r.title!==void 0&&(i.title=r.title);const a={type:"element",tagName:"a",properties:i,children:e.all(t)};return e.patch(t,a),e.applyData(t,a)}function m4(e,t){const n={href:Uo(t.url)};t.title!==null&&t.title!==void 0&&(n.title=t.title);const r={type:"element",tagName:"a",properties:n,children:e.all(t)};return e.patch(t,r),e.applyData(t,r)}function g4(e,t,n){const r=e.all(t),i=n?v4(n):VC(t),a={},l=[];if(typeof t.checked=="boolean"){const d=r[0];let h;d&&d.type==="element"&&d.tagName==="p"?h=d:(h={type:"element",tagName:"p",properties:{},children:[]},r.unshift(h)),h.children.length>0&&h.children.unshift({type:"text",value:" "}),h.children.unshift({type:"element",tagName:"input",properties:{type:"checkbox",checked:t.checked,disabled:!0},children:[]}),a.className=["task-list-item"]}let u=-1;for(;++u1}function m4(e,t){const n={},r=e.all(t);let i=-1;for(typeof t.start=="number"&&t.start!==1&&(n.start=t.start);++i0){const l={type:"element",tagName:"tbody",properties:{},children:e.wrap(n,!0)},u=Zv(t.children[1]),c=jC(t.children[t.children.length-1]);u&&c&&(l.position={start:u,end:c}),i.push(l)}const a={type:"element",tagName:"table",properties:{},children:e.wrap(i,!0)};return e.patch(t,a),e.applyData(t,a)}function b4(e,t,n){const r=n?n.children:void 0,a=(r?r.indexOf(t):1)===0?"th":"td",l=n&&n.type==="table"?n.align:void 0,u=l?l.length:t.children.length;let c=-1;const f=[];for(;++c0,!0),r[0]),i=r.index+r[0].length,r=n.exec(t);return a.push(j1(t.slice(i),i>0,!1)),a.join("")}function j1(e,t,n){let r=0,i=e.length;if(t){let a=e.codePointAt(r);for(;a===k1||a===S1;)r++,a=e.codePointAt(r)}if(n){let a=e.codePointAt(i-1);for(;a===k1||a===S1;)i--,a=e.codePointAt(i-1)}return i>r?e.slice(r,i):""}function S4(e,t){const n={type:"text",value:k4(String(t.value))};return e.patch(t,n),e.applyData(t,n)}function j4(e,t){const n={type:"element",tagName:"hr",properties:{},children:[]};return e.patch(t,n),e.applyData(t,n)}const P4={blockquote:e4,break:t4,code:n4,delete:r4,emphasis:i4,footnoteReference:a4,heading:o4,html:l4,imageReference:s4,image:u4,inlineCode:c4,linkReference:f4,link:d4,listItem:h4,list:m4,paragraph:g4,root:v4,strong:y4,table:x4,tableCell:w4,tableRow:b4,text:S4,thematicBreak:j4,toml:oc,yaml:oc,definition:oc,footnoteDefinition:oc};function oc(){}const VC=-1,Bf=0,as=1,zc=2,ay=3,oy=4,ly=5,sy=6,KC=7,GC=8,P1=typeof self=="object"?self:globalThis,E4=(e,t)=>{const n=(i,a)=>(e.set(a,i),i),r=i=>{if(e.has(i))return e.get(i);const[a,l]=t[i];switch(a){case Bf:case VC:return n(l,i);case as:{const u=n([],i);for(const c of l)u.push(r(c));return u}case zc:{const u=n({},i);for(const[c,f]of l)u[r(c)]=r(f);return u}case ay:return n(new Date(l),i);case oy:{const{source:u,flags:c}=l;return n(new RegExp(u,c),i)}case ly:{const u=n(new Map,i);for(const[c,f]of l)u.set(r(c),r(f));return u}case sy:{const u=n(new Set,i);for(const c of l)u.add(r(c));return u}case KC:{const{name:u,message:c}=l;return n(new P1[u](c),i)}case GC:return n(BigInt(l),i);case"BigInt":return n(Object(BigInt(l)),i);case"ArrayBuffer":return n(new Uint8Array(l).buffer,l);case"DataView":{const{buffer:u}=new Uint8Array(l);return n(new DataView(u),l)}}return n(new P1[a](l),i)};return r},E1=e=>E4(new Map,e)(0),go="",{toString:C4}={},{keys:O4}=Object,Bl=e=>{const t=typeof e;if(t!=="object"||!e)return[Bf,t];const n=C4.call(e).slice(8,-1);switch(n){case"Array":return[as,go];case"Object":return[zc,go];case"Date":return[ay,go];case"RegExp":return[oy,go];case"Map":return[ly,go];case"Set":return[sy,go];case"DataView":return[as,n]}return n.includes("Array")?[as,n]:n.includes("Error")?[KC,n]:[zc,n]},lc=([e,t])=>e===Bf&&(t==="function"||t==="symbol"),N4=(e,t,n,r)=>{const i=(l,u)=>{const c=r.push(l)-1;return n.set(u,c),c},a=l=>{if(n.has(l))return n.get(l);let[u,c]=Bl(l);switch(u){case Bf:{let d=l;switch(c){case"bigint":u=GC,d=l.toString();break;case"function":case"symbol":if(e)throw new TypeError("unable to serialize "+c);d=null;break;case"undefined":return i([VC],l)}return i([u,d],l)}case as:{if(c){let g=l;return c==="DataView"?g=new Uint8Array(l.buffer):c==="ArrayBuffer"&&(g=new Uint8Array(l)),i([c,[...g]],l)}const d=[],p=i([u,d],l);for(const g of l)d.push(a(g));return p}case zc:{if(c)switch(c){case"BigInt":return i([c,l.toString()],l);case"Boolean":case"Number":case"String":return i([c,l.valueOf()],l)}if(t&&"toJSON"in l)return a(l.toJSON());const d=[],p=i([u,d],l);for(const g of O4(l))(e||!lc(Bl(l[g])))&&d.push([a(g),a(l[g])]);return p}case ay:return i([u,l.toISOString()],l);case oy:{const{source:d,flags:p}=l;return i([u,{source:d,flags:p}],l)}case ly:{const d=[],p=i([u,d],l);for(const[g,y]of l)(e||!(lc(Bl(g))||lc(Bl(y))))&&d.push([a(g),a(y)]);return p}case sy:{const d=[],p=i([u,d],l);for(const g of l)(e||!lc(Bl(g)))&&d.push(a(g));return p}}const{message:f}=l;return i([u,{name:c,message:f}],l)};return a},C1=(e,{json:t,lossy:n}={})=>{const r=[];return N4(!(t||n),!!t,new Map,r)(e),r},$c=typeof structuredClone=="function"?(e,t)=>t&&("json"in t||"lossy"in t)?E1(C1(e,t)):structuredClone(e):(e,t)=>E1(C1(e,t));function A4(e,t){const n=[{type:"text",value:"↩"}];return t>1&&n.push({type:"element",tagName:"sup",properties:{},children:[{type:"text",value:String(t)}]}),n}function _4(e,t){return"Back to reference "+(e+1)+(t>1?"-"+t:"")}function I4(e){const t=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",n=e.options.footnoteBackContent||A4,r=e.options.footnoteBackLabel||_4,i=e.options.footnoteLabel||"Footnotes",a=e.options.footnoteLabelTagName||"h2",l=e.options.footnoteLabelProperties||{className:["sr-only"]},u=[];let c=-1;for(;++c0&&x.push({type:"text",value:" "});let C=typeof n=="string"?n:n(c,y);typeof C=="string"&&(C={type:"text",value:C}),x.push({type:"element",tagName:"a",properties:{href:"#"+t+"fnref-"+g+(y>1?"-"+y:""),dataFootnoteBackref:"",ariaLabel:typeof r=="string"?r:r(c,y),className:["data-footnote-backref"]},children:Array.isArray(C)?C:[C]})}const w=d[d.length-1];if(w&&w.type==="element"&&w.tagName==="p"){const C=w.children[w.children.length-1];C&&C.type==="text"?C.value+=" ":w.children.push({type:"text",value:" "}),w.children.push(...x)}else d.push(...x);const P={type:"element",tagName:"li",properties:{id:t+"fn-"+g},children:e.wrap(d,!0)};e.patch(f,P),u.push(P)}if(u.length!==0)return{type:"element",tagName:"section",properties:{dataFootnotes:!0,className:["footnotes"]},children:[{type:"element",tagName:a,properties:{...$c(l),id:"footnote-label"},children:[{type:"text",value:i}]},{type:"text",value:` +`});const f={type:"element",tagName:"li",properties:a,children:l};return e.patch(t,f),e.applyData(t,f)}function v4(e){let t=!1;if(e.type==="list"){t=e.spread||!1;const n=e.children;let r=-1;for(;!t&&++r1}function y4(e,t){const n={},r=e.all(t);let i=-1;for(typeof t.start=="number"&&t.start!==1&&(n.start=t.start);++i0){const l={type:"element",tagName:"tbody",properties:{},children:e.wrap(n,!0)},u=ey(t.children[1]),c=PC(t.children[t.children.length-1]);u&&c&&(l.position={start:u,end:c}),i.push(l)}const a={type:"element",tagName:"table",properties:{},children:e.wrap(i,!0)};return e.patch(t,a),e.applyData(t,a)}function S4(e,t,n){const r=n?n.children:void 0,a=(r?r.indexOf(t):1)===0?"th":"td",l=n&&n.type==="table"?n.align:void 0,u=l?l.length:t.children.length;let c=-1;const f=[];for(;++c0,!0),r[0]),i=r.index+r[0].length,r=n.exec(t);return a.push(E1(t.slice(i),i>0,!1)),a.join("")}function E1(e,t,n){let r=0,i=e.length;if(t){let a=e.codePointAt(r);for(;a===j1||a===P1;)r++,a=e.codePointAt(r)}if(n){let a=e.codePointAt(i-1);for(;a===j1||a===P1;)i--,a=e.codePointAt(i-1)}return i>r?e.slice(r,i):""}function E4(e,t){const n={type:"text",value:P4(String(t.value))};return e.patch(t,n),e.applyData(t,n)}function C4(e,t){const n={type:"element",tagName:"hr",properties:{},children:[]};return e.patch(t,n),e.applyData(t,n)}const O4={blockquote:r4,break:i4,code:a4,delete:o4,emphasis:l4,footnoteReference:s4,heading:u4,html:c4,imageReference:f4,image:d4,inlineCode:p4,linkReference:h4,link:m4,listItem:g4,list:y4,paragraph:x4,root:b4,strong:w4,table:k4,tableCell:j4,tableRow:S4,text:E4,thematicBreak:C4,toml:sc,yaml:sc,definition:sc,footnoteDefinition:sc};function sc(){}const KC=-1,Wf=0,as=1,Fc=2,ly=3,sy=4,uy=5,cy=6,GC=7,YC=8,C1=typeof self=="object"?self:globalThis,N4=(e,t)=>{const n=(i,a)=>(e.set(a,i),i),r=i=>{if(e.has(i))return e.get(i);const[a,l]=t[i];switch(a){case Wf:case KC:return n(l,i);case as:{const u=n([],i);for(const c of l)u.push(r(c));return u}case Fc:{const u=n({},i);for(const[c,f]of l)u[r(c)]=r(f);return u}case ly:return n(new Date(l),i);case sy:{const{source:u,flags:c}=l;return n(new RegExp(u,c),i)}case uy:{const u=n(new Map,i);for(const[c,f]of l)u.set(r(c),r(f));return u}case cy:{const u=n(new Set,i);for(const c of l)u.add(r(c));return u}case GC:{const{name:u,message:c}=l;return n(new C1[u](c),i)}case YC:return n(BigInt(l),i);case"BigInt":return n(Object(BigInt(l)),i);case"ArrayBuffer":return n(new Uint8Array(l).buffer,l);case"DataView":{const{buffer:u}=new Uint8Array(l);return n(new DataView(u),l)}}return n(new C1[a](l),i)};return r},O1=e=>N4(new Map,e)(0),go="",{toString:A4}={},{keys:_4}=Object,Bl=e=>{const t=typeof e;if(t!=="object"||!e)return[Wf,t];const n=A4.call(e).slice(8,-1);switch(n){case"Array":return[as,go];case"Object":return[Fc,go];case"Date":return[ly,go];case"RegExp":return[sy,go];case"Map":return[uy,go];case"Set":return[cy,go];case"DataView":return[as,n]}return n.includes("Array")?[as,n]:n.includes("Error")?[GC,n]:[Fc,n]},uc=([e,t])=>e===Wf&&(t==="function"||t==="symbol"),I4=(e,t,n,r)=>{const i=(l,u)=>{const c=r.push(l)-1;return n.set(u,c),c},a=l=>{if(n.has(l))return n.get(l);let[u,c]=Bl(l);switch(u){case Wf:{let d=l;switch(c){case"bigint":u=YC,d=l.toString();break;case"function":case"symbol":if(e)throw new TypeError("unable to serialize "+c);d=null;break;case"undefined":return i([KC],l)}return i([u,d],l)}case as:{if(c){let g=l;return c==="DataView"?g=new Uint8Array(l.buffer):c==="ArrayBuffer"&&(g=new Uint8Array(l)),i([c,[...g]],l)}const d=[],h=i([u,d],l);for(const g of l)d.push(a(g));return h}case Fc:{if(c)switch(c){case"BigInt":return i([c,l.toString()],l);case"Boolean":case"Number":case"String":return i([c,l.valueOf()],l)}if(t&&"toJSON"in l)return a(l.toJSON());const d=[],h=i([u,d],l);for(const g of _4(l))(e||!uc(Bl(l[g])))&&d.push([a(g),a(l[g])]);return h}case ly:return i([u,l.toISOString()],l);case sy:{const{source:d,flags:h}=l;return i([u,{source:d,flags:h}],l)}case uy:{const d=[],h=i([u,d],l);for(const[g,y]of l)(e||!(uc(Bl(g))||uc(Bl(y))))&&d.push([a(g),a(y)]);return h}case cy:{const d=[],h=i([u,d],l);for(const g of l)(e||!uc(Bl(g)))&&d.push(a(g));return h}}const{message:f}=l;return i([u,{name:c,message:f}],l)};return a},N1=(e,{json:t,lossy:n}={})=>{const r=[];return I4(!(t||n),!!t,new Map,r)(e),r},Bc=typeof structuredClone=="function"?(e,t)=>t&&("json"in t||"lossy"in t)?O1(N1(e,t)):structuredClone(e):(e,t)=>O1(N1(e,t));function T4(e,t){const n=[{type:"text",value:"↩"}];return t>1&&n.push({type:"element",tagName:"sup",properties:{},children:[{type:"text",value:String(t)}]}),n}function D4(e,t){return"Back to reference "+(e+1)+(t>1?"-"+t:"")}function M4(e){const t=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",n=e.options.footnoteBackContent||T4,r=e.options.footnoteBackLabel||D4,i=e.options.footnoteLabel||"Footnotes",a=e.options.footnoteLabelTagName||"h2",l=e.options.footnoteLabelProperties||{className:["sr-only"]},u=[];let c=-1;for(;++c0&&x.push({type:"text",value:" "});let C=typeof n=="string"?n:n(c,y);typeof C=="string"&&(C={type:"text",value:C}),x.push({type:"element",tagName:"a",properties:{href:"#"+t+"fnref-"+g+(y>1?"-"+y:""),dataFootnoteBackref:"",ariaLabel:typeof r=="string"?r:r(c,y),className:["data-footnote-backref"]},children:Array.isArray(C)?C:[C]})}const w=d[d.length-1];if(w&&w.type==="element"&&w.tagName==="p"){const C=w.children[w.children.length-1];C&&C.type==="text"?C.value+=" ":w.children.push({type:"text",value:" "}),w.children.push(...x)}else d.push(...x);const P={type:"element",tagName:"li",properties:{id:t+"fn-"+g},children:e.wrap(d,!0)};e.patch(f,P),u.push(P)}if(u.length!==0)return{type:"element",tagName:"section",properties:{dataFootnotes:!0,className:["footnotes"]},children:[{type:"element",tagName:a,properties:{...Bc(l),id:"footnote-label"},children:[{type:"text",value:i}]},{type:"text",value:` `},{type:"element",tagName:"ol",properties:{},children:e.wrap(u,!0)},{type:"text",value:` -`}]}}const Uf=(function(e){if(e==null)return L4;if(typeof e=="function")return Wf(e);if(typeof e=="object")return Array.isArray(e)?T4(e):M4(e);if(typeof e=="string")return D4(e);throw new Error("Expected function, string, or object as test")});function T4(e){const t=[];let n=-1;for(;++n":""))+")"})}return g;function g(){let y=YC,x,S,w;if((!t||a(c,f,d[d.length-1]||void 0))&&(y=F4(n(c,d)),y[0]===Fg))return y;if("children"in c&&c.children){const P=c;if(P.children&&y[0]!==$4)for(S=(r?P.children.length:-1)+l,w=d.concat(P);S>-1&&S":""))+")"})}return g;function g(){let y=XC,x,S,w;if((!t||a(c,f,d[d.length-1]||void 0))&&(y=W4(n(c,d)),y[0]===Ug))return y;if("children"in c&&c.children){const P=c;if(P.children&&y[0]!==U4)for(S=(r?P.children.length:-1)+l,w=d.concat(P);S>-1&&S0&&n.push({type:"text",value:` -`}),n}function O1(e){let t=0,n=e.charCodeAt(t);for(;n===9||n===32;)t++,n=e.charCodeAt(t);return e.slice(t)}function N1(e,t){const n=U4(e,t),r=n.one(e,void 0),i=I4(n),a=Array.isArray(r)?{type:"root",children:r}:r||{type:"root",children:[]};return i&&a.children.push({type:"text",value:` -`},i),a}function K4(e,t){return e&&"run"in e?async function(n,r){const i=N1(n,{file:r,...t});await e.run(i,r)}:function(n,r){return N1(n,{file:r,...e||t})}}function A1(e){if(e)throw e}var Lp,_1;function G4(){if(_1)return Lp;_1=1;var e=Object.prototype.hasOwnProperty,t=Object.prototype.toString,n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=function(f){return typeof Array.isArray=="function"?Array.isArray(f):t.call(f)==="[object Array]"},a=function(f){if(!f||t.call(f)!=="[object Object]")return!1;var d=e.call(f,"constructor"),p=f.constructor&&f.constructor.prototype&&e.call(f.constructor.prototype,"isPrototypeOf");if(f.constructor&&!d&&!p)return!1;var g;for(g in f);return typeof g>"u"||e.call(f,g)},l=function(f,d){n&&d.name==="__proto__"?n(f,d.name,{enumerable:!0,configurable:!0,value:d.newValue,writable:!0}):f[d.name]=d.newValue},u=function(f,d){if(d==="__proto__")if(e.call(f,d)){if(r)return r(f,d).value}else return;return f[d]};return Lp=function c(){var f,d,p,g,y,x,S=arguments[0],w=1,P=arguments.length,C=!1;for(typeof S=="boolean"&&(C=S,S=arguments[1]||{},w=2),(S==null||typeof S!="object"&&typeof S!="function")&&(S={});wl.length;let c;u&&l.push(i);try{c=e.apply(this,l)}catch(f){const d=f;if(u&&n)throw d;return i(d)}u||(c&&c.then&&typeof c.then=="function"?c.then(a,i):c instanceof Error?i(c):a(c))}function i(l,...u){n||(n=!0,t(l,...u))}function a(l){i(null,l)}}const Ar={basename:Z4,dirname:J4,extname:e$,join:t$,sep:"/"};function Z4(e,t){if(t!==void 0&&typeof t!="string")throw new TypeError('"ext" argument must be a string');Ns(e);let n=0,r=-1,i=e.length,a;if(t===void 0||t.length===0||t.length>e.length){for(;i--;)if(e.codePointAt(i)===47){if(a){n=i+1;break}}else r<0&&(a=!0,r=i+1);return r<0?"":e.slice(n,r)}if(t===e)return"";let l=-1,u=t.length-1;for(;i--;)if(e.codePointAt(i)===47){if(a){n=i+1;break}}else l<0&&(a=!0,l=i+1),u>-1&&(e.codePointAt(i)===t.codePointAt(u--)?u<0&&(r=i):(u=-1,r=l));return n===r?r=l:r<0&&(r=e.length),e.slice(n,r)}function J4(e){if(Ns(e),e.length===0)return".";let t=-1,n=e.length,r;for(;--n;)if(e.codePointAt(n)===47){if(r){t=n;break}}else r||(r=!0);return t<0?e.codePointAt(0)===47?"/":".":t===1&&e.codePointAt(0)===47?"//":e.slice(0,t)}function e$(e){Ns(e);let t=e.length,n=-1,r=0,i=-1,a=0,l;for(;t--;){const u=e.codePointAt(t);if(u===47){if(l){r=t+1;break}continue}n<0&&(l=!0,n=t+1),u===46?i<0?i=t:a!==1&&(a=1):i>-1&&(a=-1)}return i<0||n<0||a===0||a===1&&i===n-1&&i===r+1?"":e.slice(i,n)}function t$(...e){let t=-1,n;for(;++t0&&e.codePointAt(e.length-1)===47&&(n+="/"),t?"/"+n:n}function r$(e,t){let n="",r=0,i=-1,a=0,l=-1,u,c;for(;++l<=e.length;){if(l2){if(c=n.lastIndexOf("/"),c!==n.length-1){c<0?(n="",r=0):(n=n.slice(0,c),r=n.length-1-n.lastIndexOf("/")),i=l,a=0;continue}}else if(n.length>0){n="",r=0,i=l,a=0;continue}}t&&(n=n.length>0?n+"/..":"..",r=2)}else n.length>0?n+="/"+e.slice(i+1,l):n=e.slice(i+1,l),r=l-i-1;i=l,a=0}else u===46&&a>-1?a++:a=-1}return n}function Ns(e){if(typeof e!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const i$={cwd:a$};function a$(){return"/"}function Wg(e){return!!(e!==null&&typeof e=="object"&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&e.auth===void 0)}function o$(e){if(typeof e=="string")e=new URL(e);else if(!Wg(e)){const t=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+e+"`");throw t.code="ERR_INVALID_ARG_TYPE",t}if(e.protocol!=="file:"){const t=new TypeError("The URL must be of scheme file");throw t.code="ERR_INVALID_URL_SCHEME",t}return l$(e)}function l$(e){if(e.hostname!==""){const r=new TypeError('File URL host must be "localhost" or empty on darwin');throw r.code="ERR_INVALID_FILE_URL_HOST",r}const t=e.pathname;let n=-1;for(;++n0){let[y,...x]=d;const S=r[g][1];Ug(S)&&Ug(y)&&(y=Rp(!0,S,y)),r[g]=[f,y,...x]}}}}const f$=new cy().freeze();function Bp(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `parser`")}function Up(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `compiler`")}function Wp(e,t){if(t)throw new Error("Cannot call `"+e+"` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.")}function T1(e){if(!Ug(e)||typeof e.type!="string")throw new TypeError("Expected node, got `"+e+"`")}function M1(e,t,n){if(!n)throw new Error("`"+e+"` finished async. Use `"+t+"` instead")}function sc(e){return d$(e)?e:new QC(e)}function d$(e){return!!(e&&typeof e=="object"&&"message"in e&&"messages"in e)}function h$(e){return typeof e=="string"||p$(e)}function p$(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}const m$="https://github.com/remarkjs/react-markdown/blob/main/changelog.md",D1=[],L1={allowDangerousHtml:!0},g$=/^(https?|ircs?|mailto|xmpp)$/i,v$=[{from:"astPlugins",id:"remove-buggy-html-in-markdown-parser"},{from:"allowDangerousHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"allowNode",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowElement"},{from:"allowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowedElements"},{from:"disallowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"disallowedElements"},{from:"escapeHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"includeElementIndex",id:"#remove-includeelementindex"},{from:"includeNodeIndex",id:"change-includenodeindex-to-includeelementindex"},{from:"linkTarget",id:"remove-linktarget"},{from:"plugins",id:"change-plugins-to-remarkplugins",to:"remarkPlugins"},{from:"rawSourcePos",id:"#remove-rawsourcepos"},{from:"renderers",id:"change-renderers-to-components",to:"components"},{from:"source",id:"change-source-to-children",to:"children"},{from:"sourcePos",id:"#remove-sourcepos"},{from:"transformImageUri",id:"#add-urltransform",to:"urlTransform"},{from:"transformLinkUri",id:"#add-urltransform",to:"urlTransform"}];function y$(e){const t=x$(e),n=b$(e);return w$(t.runSync(t.parse(n),n),e)}function x$(e){const t=e.rehypePlugins||D1,n=e.remarkPlugins||D1,r=e.remarkRehypeOptions?{...e.remarkRehypeOptions,...L1}:L1;return f$().use(J3).use(n).use(K4,r).use(t)}function b$(e){const t=e.children||"",n=new QC;return typeof t=="string"&&(n.value=t),n}function w$(e,t){const n=t.allowedElements,r=t.allowElement,i=t.components,a=t.disallowedElements,l=t.skipHtml,u=t.unwrapDisallowed,c=t.urlTransform||k$;for(const d of v$)Object.hasOwn(t,d.from)&&(""+d.from+(d.to?"use `"+d.to+"` instead":"remove it")+m$+d.id,void 0);return t.className&&(e={type:"element",tagName:"div",properties:{className:t.className},children:e.type==="root"?e.children:[e]}),uy(e,f),LR(e,{Fragment:m.Fragment,components:i,ignoreInvalidStyle:!0,jsx:m.jsx,jsxs:m.jsxs,passKeys:!0,passNode:!0});function f(d,p,g){if(d.type==="raw"&&g&&typeof p=="number")return l?g.children.splice(p,1):g.children[p]={type:"text",value:d.value},p;if(d.type==="element"){let y;for(y in Tp)if(Object.hasOwn(Tp,y)&&Object.hasOwn(d.properties,y)){const x=d.properties[y],S=Tp[y];(S===null||S.includes(d.tagName))&&(d.properties[y]=c(String(x||""),y,d))}}if(d.type==="element"){let y=n?!n.includes(d.tagName):a?a.includes(d.tagName):!1;if(!y&&r&&typeof p=="number"&&(y=!r(d,p,g)),y&&g&&typeof p=="number")return u&&d.children?g.children.splice(p,1,...d.children):g.children.splice(p,1),p}}}function k$(e){const t=e.indexOf(":"),n=e.indexOf("?"),r=e.indexOf("#"),i=e.indexOf("/");return t===-1||i!==-1&&t>i||n!==-1&&t>n||r!==-1&&t>r||g$.test(e.slice(0,t))?e:""}function R1(e,t){const n=String(e);if(typeof t!="string")throw new TypeError("Expected character");let r=0,i=n.indexOf(t);for(;i!==-1;)r++,i=n.indexOf(t,i+t.length);return r}function S$(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}function j$(e,t,n){const i=Uf((n||{}).ignore||[]),a=P$(t);let l=-1;for(;++l0?{type:"text",value:E}:void 0),E===!1?g.lastIndex=A+1:(x!==A&&C.push({type:"text",value:f.value.slice(x,A)}),Array.isArray(E)?C.push(...E):E&&C.push(E),x=A+O[0].length,P=!0),!g.global)break;O=g.exec(f.value)}return P?(x?\]}]+$/.exec(e);if(!t)return[e,void 0];e=e.slice(0,t.index);let n=t[0],r=n.indexOf(")");const i=R1(e,"(");let a=R1(e,")");for(;r!==-1&&i>a;)e+=n.slice(0,r+1),n=n.slice(r+1),r=n.indexOf(")"),a++;return[e,n]}function ZC(e,t){const n=e.input.charCodeAt(e.index-1);return(e.index===0||Na(n)||$f(n))&&(!t||n!==47)}JC.peek=G$;function F$(){this.buffer()}function B$(e){this.enter({type:"footnoteReference",identifier:"",label:""},e)}function U$(){this.buffer()}function W$(e){this.enter({type:"footnoteDefinition",identifier:"",label:"",children:[]},e)}function q$(e){const t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=pr(this.sliceSerialize(e)).toLowerCase(),n.label=t}function H$(e){this.exit(e)}function V$(e){const t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=pr(this.sliceSerialize(e)).toLowerCase(),n.label=t}function K$(e){this.exit(e)}function G$(){return"["}function JC(e,t,n,r){const i=n.createTracker(r);let a=i.move("[^");const l=n.enter("footnoteReference"),u=n.enter("reference");return a+=i.move(n.safe(n.associationId(e),{after:"]",before:a})),u(),l(),a+=i.move("]"),a}function Y$(){return{enter:{gfmFootnoteCallString:F$,gfmFootnoteCall:B$,gfmFootnoteDefinitionLabelString:U$,gfmFootnoteDefinition:W$},exit:{gfmFootnoteCallString:q$,gfmFootnoteCall:H$,gfmFootnoteDefinitionLabelString:V$,gfmFootnoteDefinition:K$}}}function X$(e){let t=!1;return e&&e.firstLineBlank&&(t=!0),{handlers:{footnoteDefinition:n,footnoteReference:JC},unsafe:[{character:"[",inConstruct:["label","phrasing","reference"]}]};function n(r,i,a,l){const u=a.createTracker(l);let c=u.move("[^");const f=a.enter("footnoteDefinition"),d=a.enter("label");return c+=u.move(a.safe(a.associationId(r),{before:c,after:"]"})),d(),c+=u.move("]:"),r.children&&r.children.length>0&&(u.shift(4),c+=u.move((t?` -`:" ")+a.indentLines(a.containerFlow(r,u.current()),t?eO:Q$))),f(),c}}function Q$(e,t,n){return t===0?e:eO(e,t,n)}function eO(e,t,n){return(n?"":" ")+e}const Z$=["autolink","destinationLiteral","destinationRaw","reference","titleQuote","titleApostrophe"];tO.peek=rF;function J$(){return{canContainEols:["delete"],enter:{strikethrough:tF},exit:{strikethrough:nF}}}function eF(){return{unsafe:[{character:"~",inConstruct:"phrasing",notInConstruct:Z$}],handlers:{delete:tO}}}function tF(e){this.enter({type:"delete",children:[]},e)}function nF(e){this.exit(e)}function tO(e,t,n,r){const i=n.createTracker(r),a=n.enter("strikethrough");let l=i.move("~~");return l+=n.containerPhrasing(e,{...i.current(),before:l,after:"~"}),l+=i.move("~~"),a(),l}function rF(){return"~"}function iF(e){return e.length}function aF(e,t){const n=t||{},r=(n.align||[]).concat(),i=n.stringLength||iF,a=[],l=[],u=[],c=[];let f=0,d=-1;for(;++df&&(f=e[d].length);++Pc[P])&&(c[P]=O)}S.push(C)}l[d]=S,u[d]=w}let p=-1;if(typeof r=="object"&&"length"in r)for(;++pc[p]&&(c[p]=C),y[p]=C),g[p]=O}l.splice(1,0,g),u.splice(1,0,y),d=-1;const x=[];for(;++d "),a.shift(2);const l=n.indentLines(n.containerFlow(e,a.current()),sF);return i(),l}function sF(e,t,n){return">"+(n?"":" ")+e}function uF(e,t){return $1(e,t.inConstruct,!0)&&!$1(e,t.notInConstruct,!1)}function $1(e,t,n){if(typeof t=="string"&&(t=[t]),!t||t.length===0)return n;let r=-1;for(;++rl&&(l=a):a=1,i=r+t.length,r=n.indexOf(t,i);return l}function fF(e,t){return!!(t.options.fences===!1&&e.value&&!e.lang&&/[^ \r\n]/.test(e.value)&&!/^[\t ]*(?:[\r\n]|$)|(?:^|[\r\n])[\t ]*$/.test(e.value))}function dF(e){const t=e.options.fence||"`";if(t!=="`"&&t!=="~")throw new Error("Cannot serialize code with `"+t+"` for `options.fence`, expected `` ` `` or `~`");return t}function hF(e,t,n,r){const i=dF(n),a=e.value||"",l=i==="`"?"GraveAccent":"Tilde";if(fF(e,n)){const p=n.enter("codeIndented"),g=n.indentLines(a,pF);return p(),g}const u=n.createTracker(r),c=i.repeat(Math.max(cF(a,i)+1,3)),f=n.enter("codeFenced");let d=u.move(c);if(e.lang){const p=n.enter(`codeFencedLang${l}`);d+=u.move(n.safe(e.lang,{before:d,after:" ",encode:["`"],...u.current()})),p()}if(e.lang&&e.meta){const p=n.enter(`codeFencedMeta${l}`);d+=u.move(" "),d+=u.move(n.safe(e.meta,{before:d,after:` -`,encode:["`"],...u.current()})),p()}return d+=u.move(` +`}),n}function A1(e){let t=0,n=e.charCodeAt(t);for(;n===9||n===32;)t++,n=e.charCodeAt(t);return e.slice(t)}function _1(e,t){const n=H4(e,t),r=n.one(e,void 0),i=M4(n),a=Array.isArray(r)?{type:"root",children:r}:r||{type:"root",children:[]};return i&&a.children.push({type:"text",value:` +`},i),a}function X4(e,t){return e&&"run"in e?async function(n,r){const i=_1(n,{file:r,...t});await e.run(i,r)}:function(n,r){return _1(n,{file:r,...e||t})}}function I1(e){if(e)throw e}var zh,T1;function Q4(){if(T1)return zh;T1=1;var e=Object.prototype.hasOwnProperty,t=Object.prototype.toString,n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=function(f){return typeof Array.isArray=="function"?Array.isArray(f):t.call(f)==="[object Array]"},a=function(f){if(!f||t.call(f)!=="[object Object]")return!1;var d=e.call(f,"constructor"),h=f.constructor&&f.constructor.prototype&&e.call(f.constructor.prototype,"isPrototypeOf");if(f.constructor&&!d&&!h)return!1;var g;for(g in f);return typeof g>"u"||e.call(f,g)},l=function(f,d){n&&d.name==="__proto__"?n(f,d.name,{enumerable:!0,configurable:!0,value:d.newValue,writable:!0}):f[d.name]=d.newValue},u=function(f,d){if(d==="__proto__")if(e.call(f,d)){if(r)return r(f,d).value}else return;return f[d]};return zh=function c(){var f,d,h,g,y,x,S=arguments[0],w=1,P=arguments.length,C=!1;for(typeof S=="boolean"&&(C=S,S=arguments[1]||{},w=2),(S==null||typeof S!="object"&&typeof S!="function")&&(S={});wl.length;let c;u&&l.push(i);try{c=e.apply(this,l)}catch(f){const d=f;if(u&&n)throw d;return i(d)}u||(c&&c.then&&typeof c.then=="function"?c.then(a,i):c instanceof Error?i(c):a(c))}function i(l,...u){n||(n=!0,t(l,...u))}function a(l){i(null,l)}}const Nr={basename:t$,dirname:n$,extname:r$,join:i$,sep:"/"};function t$(e,t){if(t!==void 0&&typeof t!="string")throw new TypeError('"ext" argument must be a string');Ns(e);let n=0,r=-1,i=e.length,a;if(t===void 0||t.length===0||t.length>e.length){for(;i--;)if(e.codePointAt(i)===47){if(a){n=i+1;break}}else r<0&&(a=!0,r=i+1);return r<0?"":e.slice(n,r)}if(t===e)return"";let l=-1,u=t.length-1;for(;i--;)if(e.codePointAt(i)===47){if(a){n=i+1;break}}else l<0&&(a=!0,l=i+1),u>-1&&(e.codePointAt(i)===t.codePointAt(u--)?u<0&&(r=i):(u=-1,r=l));return n===r?r=l:r<0&&(r=e.length),e.slice(n,r)}function n$(e){if(Ns(e),e.length===0)return".";let t=-1,n=e.length,r;for(;--n;)if(e.codePointAt(n)===47){if(r){t=n;break}}else r||(r=!0);return t<0?e.codePointAt(0)===47?"/":".":t===1&&e.codePointAt(0)===47?"//":e.slice(0,t)}function r$(e){Ns(e);let t=e.length,n=-1,r=0,i=-1,a=0,l;for(;t--;){const u=e.codePointAt(t);if(u===47){if(l){r=t+1;break}continue}n<0&&(l=!0,n=t+1),u===46?i<0?i=t:a!==1&&(a=1):i>-1&&(a=-1)}return i<0||n<0||a===0||a===1&&i===n-1&&i===r+1?"":e.slice(i,n)}function i$(...e){let t=-1,n;for(;++t0&&e.codePointAt(e.length-1)===47&&(n+="/"),t?"/"+n:n}function o$(e,t){let n="",r=0,i=-1,a=0,l=-1,u,c;for(;++l<=e.length;){if(l2){if(c=n.lastIndexOf("/"),c!==n.length-1){c<0?(n="",r=0):(n=n.slice(0,c),r=n.length-1-n.lastIndexOf("/")),i=l,a=0;continue}}else if(n.length>0){n="",r=0,i=l,a=0;continue}}t&&(n=n.length>0?n+"/..":"..",r=2)}else n.length>0?n+="/"+e.slice(i+1,l):n=e.slice(i+1,l),r=l-i-1;i=l,a=0}else u===46&&a>-1?a++:a=-1}return n}function Ns(e){if(typeof e!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const l$={cwd:s$};function s$(){return"/"}function Hg(e){return!!(e!==null&&typeof e=="object"&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&e.auth===void 0)}function u$(e){if(typeof e=="string")e=new URL(e);else if(!Hg(e)){const t=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+e+"`");throw t.code="ERR_INVALID_ARG_TYPE",t}if(e.protocol!=="file:"){const t=new TypeError("The URL must be of scheme file");throw t.code="ERR_INVALID_URL_SCHEME",t}return c$(e)}function c$(e){if(e.hostname!==""){const r=new TypeError('File URL host must be "localhost" or empty on darwin');throw r.code="ERR_INVALID_FILE_URL_HOST",r}const t=e.pathname;let n=-1;for(;++n0){let[y,...x]=d;const S=r[g][1];qg(S)&&qg(y)&&(y=$h(!0,S,y)),r[g]=[f,y,...x]}}}}const h$=new dy().freeze();function Wh(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `parser`")}function qh(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `compiler`")}function Hh(e,t){if(t)throw new Error("Cannot call `"+e+"` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.")}function M1(e){if(!qg(e)||typeof e.type!="string")throw new TypeError("Expected node, got `"+e+"`")}function L1(e,t,n){if(!n)throw new Error("`"+e+"` finished async. Use `"+t+"` instead")}function cc(e){return m$(e)?e:new ZC(e)}function m$(e){return!!(e&&typeof e=="object"&&"message"in e&&"messages"in e)}function g$(e){return typeof e=="string"||v$(e)}function v$(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}const y$="https://github.com/remarkjs/react-markdown/blob/main/changelog.md",R1=[],z1={allowDangerousHtml:!0},x$=/^(https?|ircs?|mailto|xmpp)$/i,b$=[{from:"astPlugins",id:"remove-buggy-html-in-markdown-parser"},{from:"allowDangerousHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"allowNode",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowElement"},{from:"allowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowedElements"},{from:"disallowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"disallowedElements"},{from:"escapeHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"includeElementIndex",id:"#remove-includeelementindex"},{from:"includeNodeIndex",id:"change-includenodeindex-to-includeelementindex"},{from:"linkTarget",id:"remove-linktarget"},{from:"plugins",id:"change-plugins-to-remarkplugins",to:"remarkPlugins"},{from:"rawSourcePos",id:"#remove-rawsourcepos"},{from:"renderers",id:"change-renderers-to-components",to:"components"},{from:"source",id:"change-source-to-children",to:"children"},{from:"sourcePos",id:"#remove-sourcepos"},{from:"transformImageUri",id:"#add-urltransform",to:"urlTransform"},{from:"transformLinkUri",id:"#add-urltransform",to:"urlTransform"}];function w$(e){const t=k$(e),n=S$(e);return j$(t.runSync(t.parse(n),n),e)}function k$(e){const t=e.rehypePlugins||R1,n=e.remarkPlugins||R1,r=e.remarkRehypeOptions?{...e.remarkRehypeOptions,...z1}:z1;return h$().use(n4).use(n).use(X4,r).use(t)}function S$(e){const t=e.children||"",n=new ZC;return typeof t=="string"&&(n.value=t),n}function j$(e,t){const n=t.allowedElements,r=t.allowElement,i=t.components,a=t.disallowedElements,l=t.skipHtml,u=t.unwrapDisallowed,c=t.urlTransform||P$;for(const d of b$)Object.hasOwn(t,d.from)&&(""+d.from+(d.to?"use `"+d.to+"` instead":"remove it")+y$+d.id,void 0);return t.className&&(e={type:"element",tagName:"div",properties:{className:t.className},children:e.type==="root"?e.children:[e]}),fy(e,f),$R(e,{Fragment:m.Fragment,components:i,ignoreInvalidStyle:!0,jsx:m.jsx,jsxs:m.jsxs,passKeys:!0,passNode:!0});function f(d,h,g){if(d.type==="raw"&&g&&typeof h=="number")return l?g.children.splice(h,1):g.children[h]={type:"text",value:d.value},h;if(d.type==="element"){let y;for(y in Mh)if(Object.hasOwn(Mh,y)&&Object.hasOwn(d.properties,y)){const x=d.properties[y],S=Mh[y];(S===null||S.includes(d.tagName))&&(d.properties[y]=c(String(x||""),y,d))}}if(d.type==="element"){let y=n?!n.includes(d.tagName):a?a.includes(d.tagName):!1;if(!y&&r&&typeof h=="number"&&(y=!r(d,h,g)),y&&g&&typeof h=="number")return u&&d.children?g.children.splice(h,1,...d.children):g.children.splice(h,1),h}}}function P$(e){const t=e.indexOf(":"),n=e.indexOf("?"),r=e.indexOf("#"),i=e.indexOf("/");return t===-1||i!==-1&&t>i||n!==-1&&t>n||r!==-1&&t>r||x$.test(e.slice(0,t))?e:""}function $1(e,t){const n=String(e);if(typeof t!="string")throw new TypeError("Expected character");let r=0,i=n.indexOf(t);for(;i!==-1;)r++,i=n.indexOf(t,i+t.length);return r}function E$(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}function C$(e,t,n){const i=qf((n||{}).ignore||[]),a=O$(t);let l=-1;for(;++l0?{type:"text",value:E}:void 0),E===!1?g.lastIndex=A+1:(x!==A&&C.push({type:"text",value:f.value.slice(x,A)}),Array.isArray(E)?C.push(...E):E&&C.push(E),x=A+O[0].length,P=!0),!g.global)break;O=g.exec(f.value)}return P?(x?\]}]+$/.exec(e);if(!t)return[e,void 0];e=e.slice(0,t.index);let n=t[0],r=n.indexOf(")");const i=$1(e,"(");let a=$1(e,")");for(;r!==-1&&i>a;)e+=n.slice(0,r+1),n=n.slice(r+1),r=n.indexOf(")"),a++;return[e,n]}function JC(e,t){const n=e.input.charCodeAt(e.index-1);return(e.index===0||Na(n)||Bf(n))&&(!t||n!==47)}eO.peek=Q$;function W$(){this.buffer()}function q$(e){this.enter({type:"footnoteReference",identifier:"",label:""},e)}function H$(){this.buffer()}function V$(e){this.enter({type:"footnoteDefinition",identifier:"",label:"",children:[]},e)}function K$(e){const t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=pr(this.sliceSerialize(e)).toLowerCase(),n.label=t}function G$(e){this.exit(e)}function Y$(e){const t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=pr(this.sliceSerialize(e)).toLowerCase(),n.label=t}function X$(e){this.exit(e)}function Q$(){return"["}function eO(e,t,n,r){const i=n.createTracker(r);let a=i.move("[^");const l=n.enter("footnoteReference"),u=n.enter("reference");return a+=i.move(n.safe(n.associationId(e),{after:"]",before:a})),u(),l(),a+=i.move("]"),a}function Z$(){return{enter:{gfmFootnoteCallString:W$,gfmFootnoteCall:q$,gfmFootnoteDefinitionLabelString:H$,gfmFootnoteDefinition:V$},exit:{gfmFootnoteCallString:K$,gfmFootnoteCall:G$,gfmFootnoteDefinitionLabelString:Y$,gfmFootnoteDefinition:X$}}}function J$(e){let t=!1;return e&&e.firstLineBlank&&(t=!0),{handlers:{footnoteDefinition:n,footnoteReference:eO},unsafe:[{character:"[",inConstruct:["label","phrasing","reference"]}]};function n(r,i,a,l){const u=a.createTracker(l);let c=u.move("[^");const f=a.enter("footnoteDefinition"),d=a.enter("label");return c+=u.move(a.safe(a.associationId(r),{before:c,after:"]"})),d(),c+=u.move("]:"),r.children&&r.children.length>0&&(u.shift(4),c+=u.move((t?` +`:" ")+a.indentLines(a.containerFlow(r,u.current()),t?tO:eF))),f(),c}}function eF(e,t,n){return t===0?e:tO(e,t,n)}function tO(e,t,n){return(n?"":" ")+e}const tF=["autolink","destinationLiteral","destinationRaw","reference","titleQuote","titleApostrophe"];nO.peek=oF;function nF(){return{canContainEols:["delete"],enter:{strikethrough:iF},exit:{strikethrough:aF}}}function rF(){return{unsafe:[{character:"~",inConstruct:"phrasing",notInConstruct:tF}],handlers:{delete:nO}}}function iF(e){this.enter({type:"delete",children:[]},e)}function aF(e){this.exit(e)}function nO(e,t,n,r){const i=n.createTracker(r),a=n.enter("strikethrough");let l=i.move("~~");return l+=n.containerPhrasing(e,{...i.current(),before:l,after:"~"}),l+=i.move("~~"),a(),l}function oF(){return"~"}function lF(e){return e.length}function sF(e,t){const n=t||{},r=(n.align||[]).concat(),i=n.stringLength||lF,a=[],l=[],u=[],c=[];let f=0,d=-1;for(;++df&&(f=e[d].length);++Pc[P])&&(c[P]=O)}S.push(C)}l[d]=S,u[d]=w}let h=-1;if(typeof r=="object"&&"length"in r)for(;++hc[h]&&(c[h]=C),y[h]=C),g[h]=O}l.splice(1,0,g),u.splice(1,0,y),d=-1;const x=[];for(;++d "),a.shift(2);const l=n.indentLines(n.containerFlow(e,a.current()),fF);return i(),l}function fF(e,t,n){return">"+(n?"":" ")+e}function dF(e,t){return B1(e,t.inConstruct,!0)&&!B1(e,t.notInConstruct,!1)}function B1(e,t,n){if(typeof t=="string"&&(t=[t]),!t||t.length===0)return n;let r=-1;for(;++rl&&(l=a):a=1,i=r+t.length,r=n.indexOf(t,i);return l}function hF(e,t){return!!(t.options.fences===!1&&e.value&&!e.lang&&/[^ \r\n]/.test(e.value)&&!/^[\t ]*(?:[\r\n]|$)|(?:^|[\r\n])[\t ]*$/.test(e.value))}function mF(e){const t=e.options.fence||"`";if(t!=="`"&&t!=="~")throw new Error("Cannot serialize code with `"+t+"` for `options.fence`, expected `` ` `` or `~`");return t}function gF(e,t,n,r){const i=mF(n),a=e.value||"",l=i==="`"?"GraveAccent":"Tilde";if(hF(e,n)){const h=n.enter("codeIndented"),g=n.indentLines(a,vF);return h(),g}const u=n.createTracker(r),c=i.repeat(Math.max(pF(a,i)+1,3)),f=n.enter("codeFenced");let d=u.move(c);if(e.lang){const h=n.enter(`codeFencedLang${l}`);d+=u.move(n.safe(e.lang,{before:d,after:" ",encode:["`"],...u.current()})),h()}if(e.lang&&e.meta){const h=n.enter(`codeFencedMeta${l}`);d+=u.move(" "),d+=u.move(n.safe(e.meta,{before:d,after:` +`,encode:["`"],...u.current()})),h()}return d+=u.move(` `),a&&(d+=u.move(a+` -`)),d+=u.move(c),f(),d}function pF(e,t,n){return(n?"":" ")+e}function fy(e){const t=e.options.quote||'"';if(t!=='"'&&t!=="'")throw new Error("Cannot serialize title with `"+t+"` for `options.quote`, expected `\"`, or `'`");return t}function mF(e,t,n,r){const i=fy(n),a=i==='"'?"Quote":"Apostrophe",l=n.enter("definition");let u=n.enter("label");const c=n.createTracker(r);let f=c.move("[");return f+=c.move(n.safe(n.associationId(e),{before:f,after:"]",...c.current()})),f+=c.move("]: "),u(),!e.url||/[\0- \u007F]/.test(e.url)?(u=n.enter("destinationLiteral"),f+=c.move("<"),f+=c.move(n.safe(e.url,{before:f,after:">",...c.current()})),f+=c.move(">")):(u=n.enter("destinationRaw"),f+=c.move(n.safe(e.url,{before:f,after:e.title?" ":` -`,...c.current()}))),u(),e.title&&(u=n.enter(`title${a}`),f+=c.move(" "+i),f+=c.move(n.safe(e.title,{before:f,after:i,...c.current()})),f+=c.move(i),u()),l(),f}function gF(e){const t=e.options.emphasis||"*";if(t!=="*"&&t!=="_")throw new Error("Cannot serialize emphasis with `"+t+"` for `options.emphasis`, expected `*`, or `_`");return t}function cs(e){return"&#x"+e.toString(16).toUpperCase()+";"}function Fc(e,t,n){const r=_o(e),i=_o(t);return r===void 0?i===void 0?n==="_"?{inside:!0,outside:!0}:{inside:!1,outside:!1}:i===1?{inside:!0,outside:!0}:{inside:!1,outside:!0}:r===1?i===void 0?{inside:!1,outside:!1}:i===1?{inside:!0,outside:!0}:{inside:!1,outside:!1}:i===void 0?{inside:!1,outside:!1}:i===1?{inside:!0,outside:!1}:{inside:!1,outside:!1}}nO.peek=vF;function nO(e,t,n,r){const i=gF(n),a=n.enter("emphasis"),l=n.createTracker(r),u=l.move(i);let c=l.move(n.containerPhrasing(e,{after:i,before:u,...l.current()}));const f=c.charCodeAt(0),d=Fc(r.before.charCodeAt(r.before.length-1),f,i);d.inside&&(c=cs(f)+c.slice(1));const p=c.charCodeAt(c.length-1),g=Fc(r.after.charCodeAt(0),p,i);g.inside&&(c=c.slice(0,-1)+cs(p));const y=l.move(i);return a(),n.attentionEncodeSurroundingInfo={after:g.outside,before:d.outside},u+c+y}function vF(e,t,n){return n.options.emphasis||"*"}function yF(e,t){let n=!1;return uy(e,function(r){if("value"in r&&/\r?\n|\r/.test(r.value)||r.type==="break")return n=!0,Fg}),!!((!e.depth||e.depth<3)&&ny(e)&&(t.options.setext||n))}function xF(e,t,n,r){const i=Math.max(Math.min(6,e.depth||1),1),a=n.createTracker(r);if(yF(e,n)){const d=n.enter("headingSetext"),p=n.enter("phrasing"),g=n.containerPhrasing(e,{...a.current(),before:` +`)),d+=u.move(c),f(),d}function vF(e,t,n){return(n?"":" ")+e}function py(e){const t=e.options.quote||'"';if(t!=='"'&&t!=="'")throw new Error("Cannot serialize title with `"+t+"` for `options.quote`, expected `\"`, or `'`");return t}function yF(e,t,n,r){const i=py(n),a=i==='"'?"Quote":"Apostrophe",l=n.enter("definition");let u=n.enter("label");const c=n.createTracker(r);let f=c.move("[");return f+=c.move(n.safe(n.associationId(e),{before:f,after:"]",...c.current()})),f+=c.move("]: "),u(),!e.url||/[\0- \u007F]/.test(e.url)?(u=n.enter("destinationLiteral"),f+=c.move("<"),f+=c.move(n.safe(e.url,{before:f,after:">",...c.current()})),f+=c.move(">")):(u=n.enter("destinationRaw"),f+=c.move(n.safe(e.url,{before:f,after:e.title?" ":` +`,...c.current()}))),u(),e.title&&(u=n.enter(`title${a}`),f+=c.move(" "+i),f+=c.move(n.safe(e.title,{before:f,after:i,...c.current()})),f+=c.move(i),u()),l(),f}function xF(e){const t=e.options.emphasis||"*";if(t!=="*"&&t!=="_")throw new Error("Cannot serialize emphasis with `"+t+"` for `options.emphasis`, expected `*`, or `_`");return t}function cs(e){return"&#x"+e.toString(16).toUpperCase()+";"}function Uc(e,t,n){const r=_o(e),i=_o(t);return r===void 0?i===void 0?n==="_"?{inside:!0,outside:!0}:{inside:!1,outside:!1}:i===1?{inside:!0,outside:!0}:{inside:!1,outside:!0}:r===1?i===void 0?{inside:!1,outside:!1}:i===1?{inside:!0,outside:!0}:{inside:!1,outside:!1}:i===void 0?{inside:!1,outside:!1}:i===1?{inside:!0,outside:!1}:{inside:!1,outside:!1}}rO.peek=bF;function rO(e,t,n,r){const i=xF(n),a=n.enter("emphasis"),l=n.createTracker(r),u=l.move(i);let c=l.move(n.containerPhrasing(e,{after:i,before:u,...l.current()}));const f=c.charCodeAt(0),d=Uc(r.before.charCodeAt(r.before.length-1),f,i);d.inside&&(c=cs(f)+c.slice(1));const h=c.charCodeAt(c.length-1),g=Uc(r.after.charCodeAt(0),h,i);g.inside&&(c=c.slice(0,-1)+cs(h));const y=l.move(i);return a(),n.attentionEncodeSurroundingInfo={after:g.outside,before:d.outside},u+c+y}function bF(e,t,n){return n.options.emphasis||"*"}function wF(e,t){let n=!1;return fy(e,function(r){if("value"in r&&/\r?\n|\r/.test(r.value)||r.type==="break")return n=!0,Ug}),!!((!e.depth||e.depth<3)&&iy(e)&&(t.options.setext||n))}function kF(e,t,n,r){const i=Math.max(Math.min(6,e.depth||1),1),a=n.createTracker(r);if(wF(e,n)){const d=n.enter("headingSetext"),h=n.enter("phrasing"),g=n.containerPhrasing(e,{...a.current(),before:` `,after:` -`});return p(),d(),g+` +`});return h(),d(),g+` `+(i===1?"=":"-").repeat(g.length-(Math.max(g.lastIndexOf("\r"),g.lastIndexOf(` `))+1))}const l="#".repeat(i),u=n.enter("headingAtx"),c=n.enter("phrasing");a.move(l+" ");let f=n.containerPhrasing(e,{before:"# ",after:` -`,...a.current()});return/^[\t ]/.test(f)&&(f=cs(f.charCodeAt(0))+f.slice(1)),f=f?l+" "+f:l,n.options.closeAtx&&(f+=" "+l),c(),u(),f}rO.peek=bF;function rO(e){return e.value||""}function bF(){return"<"}iO.peek=wF;function iO(e,t,n,r){const i=fy(n),a=i==='"'?"Quote":"Apostrophe",l=n.enter("image");let u=n.enter("label");const c=n.createTracker(r);let f=c.move("![");return f+=c.move(n.safe(e.alt,{before:f,after:"]",...c.current()})),f+=c.move("]("),u(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(u=n.enter("destinationLiteral"),f+=c.move("<"),f+=c.move(n.safe(e.url,{before:f,after:">",...c.current()})),f+=c.move(">")):(u=n.enter("destinationRaw"),f+=c.move(n.safe(e.url,{before:f,after:e.title?" ":")",...c.current()}))),u(),e.title&&(u=n.enter(`title${a}`),f+=c.move(" "+i),f+=c.move(n.safe(e.title,{before:f,after:i,...c.current()})),f+=c.move(i),u()),f+=c.move(")"),l(),f}function wF(){return"!"}aO.peek=kF;function aO(e,t,n,r){const i=e.referenceType,a=n.enter("imageReference");let l=n.enter("label");const u=n.createTracker(r);let c=u.move("![");const f=n.safe(e.alt,{before:c,after:"]",...u.current()});c+=u.move(f+"]["),l();const d=n.stack;n.stack=[],l=n.enter("reference");const p=n.safe(n.associationId(e),{before:c,after:"]",...u.current()});return l(),n.stack=d,a(),i==="full"||!f||f!==p?c+=u.move(p+"]"):i==="shortcut"?c=c.slice(0,-1):c+=u.move("]"),c}function kF(){return"!"}oO.peek=SF;function oO(e,t,n){let r=e.value||"",i="`",a=-1;for(;new RegExp("(^|[^`])"+i+"([^`]|$)").test(r);)i+="`";for(/[^ \r\n]/.test(r)&&(/^[ \r\n]/.test(r)&&/[ \r\n]$/.test(r)||/^`|`$/.test(r))&&(r=" "+r+" ");++a\u007F]/.test(e.url))}sO.peek=jF;function sO(e,t,n,r){const i=fy(n),a=i==='"'?"Quote":"Apostrophe",l=n.createTracker(r);let u,c;if(lO(e,n)){const d=n.stack;n.stack=[],u=n.enter("autolink");let p=l.move("<");return p+=l.move(n.containerPhrasing(e,{before:p,after:">",...l.current()})),p+=l.move(">"),u(),n.stack=d,p}u=n.enter("link"),c=n.enter("label");let f=l.move("[");return f+=l.move(n.containerPhrasing(e,{before:f,after:"](",...l.current()})),f+=l.move("]("),c(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(c=n.enter("destinationLiteral"),f+=l.move("<"),f+=l.move(n.safe(e.url,{before:f,after:">",...l.current()})),f+=l.move(">")):(c=n.enter("destinationRaw"),f+=l.move(n.safe(e.url,{before:f,after:e.title?" ":")",...l.current()}))),c(),e.title&&(c=n.enter(`title${a}`),f+=l.move(" "+i),f+=l.move(n.safe(e.title,{before:f,after:i,...l.current()})),f+=l.move(i),c()),f+=l.move(")"),u(),f}function jF(e,t,n){return lO(e,n)?"<":"["}uO.peek=PF;function uO(e,t,n,r){const i=e.referenceType,a=n.enter("linkReference");let l=n.enter("label");const u=n.createTracker(r);let c=u.move("[");const f=n.containerPhrasing(e,{before:c,after:"]",...u.current()});c+=u.move(f+"]["),l();const d=n.stack;n.stack=[],l=n.enter("reference");const p=n.safe(n.associationId(e),{before:c,after:"]",...u.current()});return l(),n.stack=d,a(),i==="full"||!f||f!==p?c+=u.move(p+"]"):i==="shortcut"?c=c.slice(0,-1):c+=u.move("]"),c}function PF(){return"["}function dy(e){const t=e.options.bullet||"*";if(t!=="*"&&t!=="+"&&t!=="-")throw new Error("Cannot serialize items with `"+t+"` for `options.bullet`, expected `*`, `+`, or `-`");return t}function EF(e){const t=dy(e),n=e.options.bulletOther;if(!n)return t==="*"?"-":"*";if(n!=="*"&&n!=="+"&&n!=="-")throw new Error("Cannot serialize items with `"+n+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(n===t)throw new Error("Expected `bullet` (`"+t+"`) and `bulletOther` (`"+n+"`) to be different");return n}function CF(e){const t=e.options.bulletOrdered||".";if(t!=="."&&t!==")")throw new Error("Cannot serialize items with `"+t+"` for `options.bulletOrdered`, expected `.` or `)`");return t}function cO(e){const t=e.options.rule||"*";if(t!=="*"&&t!=="-"&&t!=="_")throw new Error("Cannot serialize rules with `"+t+"` for `options.rule`, expected `*`, `-`, or `_`");return t}function OF(e,t,n,r){const i=n.enter("list"),a=n.bulletCurrent;let l=e.ordered?CF(n):dy(n);const u=e.ordered?l==="."?")":".":EF(n);let c=t&&n.bulletLastUsed?l===n.bulletLastUsed:!1;if(!e.ordered){const d=e.children?e.children[0]:void 0;if((l==="*"||l==="-")&&d&&(!d.children||!d.children[0])&&n.stack[n.stack.length-1]==="list"&&n.stack[n.stack.length-2]==="listItem"&&n.stack[n.stack.length-3]==="list"&&n.stack[n.stack.length-4]==="listItem"&&n.indexStack[n.indexStack.length-1]===0&&n.indexStack[n.indexStack.length-2]===0&&n.indexStack[n.indexStack.length-3]===0&&(c=!0),cO(n)===l&&d){let p=-1;for(;++p-1?t.start:1)+(n.options.incrementListMarker===!1?0:t.children.indexOf(e))+a);let l=a.length+1;(i==="tab"||i==="mixed"&&(t&&t.type==="list"&&t.spread||e.spread))&&(l=Math.ceil(l/4)*4);const u=n.createTracker(r);u.move(a+" ".repeat(l-a.length)),u.shift(l);const c=n.enter("listItem"),f=n.indentLines(n.containerFlow(e,u.current()),d);return c(),f;function d(p,g,y){return g?(y?"":" ".repeat(l))+p:(y?a:a+" ".repeat(l-a.length))+p}}function _F(e,t,n,r){const i=n.enter("paragraph"),a=n.enter("phrasing"),l=n.containerPhrasing(e,r);return a(),i(),l}const IF=Uf(["break","delete","emphasis","footnote","footnoteReference","image","imageReference","inlineCode","inlineMath","link","linkReference","mdxJsxTextElement","mdxTextExpression","strong","text","textDirective"]);function TF(e,t,n,r){return(e.children.some(function(l){return IF(l)})?n.containerPhrasing:n.containerFlow).call(n,e,r)}function MF(e){const t=e.options.strong||"*";if(t!=="*"&&t!=="_")throw new Error("Cannot serialize strong with `"+t+"` for `options.strong`, expected `*`, or `_`");return t}fO.peek=DF;function fO(e,t,n,r){const i=MF(n),a=n.enter("strong"),l=n.createTracker(r),u=l.move(i+i);let c=l.move(n.containerPhrasing(e,{after:i,before:u,...l.current()}));const f=c.charCodeAt(0),d=Fc(r.before.charCodeAt(r.before.length-1),f,i);d.inside&&(c=cs(f)+c.slice(1));const p=c.charCodeAt(c.length-1),g=Fc(r.after.charCodeAt(0),p,i);g.inside&&(c=c.slice(0,-1)+cs(p));const y=l.move(i+i);return a(),n.attentionEncodeSurroundingInfo={after:g.outside,before:d.outside},u+c+y}function DF(e,t,n){return n.options.strong||"*"}function LF(e,t,n,r){return n.safe(e.value,r)}function RF(e){const t=e.options.ruleRepetition||3;if(t<3)throw new Error("Cannot serialize rules with repetition `"+t+"` for `options.ruleRepetition`, expected `3` or more");return t}function zF(e,t,n){const r=(cO(n)+(n.options.ruleSpaces?" ":"")).repeat(RF(n));return n.options.ruleSpaces?r.slice(0,-1):r}const dO={blockquote:lF,break:F1,code:hF,definition:mF,emphasis:nO,hardBreak:F1,heading:xF,html:rO,image:iO,imageReference:aO,inlineCode:oO,link:sO,linkReference:uO,list:OF,listItem:AF,paragraph:_F,root:TF,strong:fO,text:LF,thematicBreak:zF};function $F(){return{enter:{table:FF,tableData:B1,tableHeader:B1,tableRow:UF},exit:{codeText:WF,table:BF,tableData:Kp,tableHeader:Kp,tableRow:Kp}}}function FF(e){const t=e._align;this.enter({type:"table",align:t.map(function(n){return n==="none"?null:n}),children:[]},e),this.data.inTable=!0}function BF(e){this.exit(e),this.data.inTable=void 0}function UF(e){this.enter({type:"tableRow",children:[]},e)}function Kp(e){this.exit(e)}function B1(e){this.enter({type:"tableCell",children:[]},e)}function WF(e){let t=this.resume();this.data.inTable&&(t=t.replace(/\\([\\|])/g,qF));const n=this.stack[this.stack.length-1];n.type,n.value=t,this.exit(e)}function qF(e,t){return t==="|"?t:e}function HF(e){const t=e||{},n=t.tableCellPadding,r=t.tablePipeAlign,i=t.stringLength,a=n?" ":"|";return{unsafe:[{character:"\r",inConstruct:"tableCell"},{character:` -`,inConstruct:"tableCell"},{atBreak:!0,character:"|",after:"[ :-]"},{character:"|",inConstruct:"tableCell"},{atBreak:!0,character:":",after:"-"},{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{inlineCode:g,table:l,tableCell:c,tableRow:u}};function l(y,x,S,w){return f(d(y,S,w),y.align)}function u(y,x,S,w){const P=p(y,S,w),C=f([P]);return C.slice(0,C.indexOf(` -`))}function c(y,x,S,w){const P=S.enter("tableCell"),C=S.enter("phrasing"),O=S.containerPhrasing(y,{...w,before:a,after:a});return C(),P(),O}function f(y,x){return aF(y,{align:x,alignDelimiters:r,padding:n,stringLength:i})}function d(y,x,S){const w=y.children;let P=-1;const C=[],O=x.enter("table");for(;++P0&&!n&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),n}const uB={tokenize:vB,partial:!0};function cB(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:pB,continuation:{tokenize:mB},exit:gB}},text:{91:{name:"gfmFootnoteCall",tokenize:hB},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:fB,resolveTo:dB}}}}function fB(e,t,n){const r=this;let i=r.events.length;const a=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let l;for(;i--;){const c=r.events[i][1];if(c.type==="labelImage"){l=c;break}if(c.type==="gfmFootnoteCall"||c.type==="labelLink"||c.type==="label"||c.type==="image"||c.type==="link")break}return u;function u(c){if(!l||!l._balanced)return n(c);const f=pr(r.sliceSerialize({start:l.end,end:r.now()}));return f.codePointAt(0)!==94||!a.includes(f.slice(1))?n(c):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(c),e.exit("gfmFootnoteCallLabelMarker"),t(c))}}function dB(e,t){let n=e.length;for(;n--;)if(e[n][1].type==="labelImage"&&e[n][0]==="enter"){e[n][1];break}e[n+1][1].type="data",e[n+3][1].type="gfmFootnoteCallLabelMarker";const r={type:"gfmFootnoteCall",start:Object.assign({},e[n+3][1].start),end:Object.assign({},e[e.length-1][1].end)},i={type:"gfmFootnoteCallMarker",start:Object.assign({},e[n+3][1].end),end:Object.assign({},e[n+3][1].end)};i.end.column++,i.end.offset++,i.end._bufferIndex++;const a={type:"gfmFootnoteCallString",start:Object.assign({},i.end),end:Object.assign({},e[e.length-1][1].start)},l={type:"chunkString",contentType:"string",start:Object.assign({},a.start),end:Object.assign({},a.end)},u=[e[n+1],e[n+2],["enter",r,t],e[n+3],e[n+4],["enter",i,t],["exit",i,t],["enter",a,t],["enter",l,t],["exit",l,t],["exit",a,t],e[e.length-2],e[e.length-1],["exit",r,t]];return e.splice(n,e.length-n+1,...u),e}function hB(e,t,n){const r=this,i=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let a=0,l;return u;function u(p){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(p),e.exit("gfmFootnoteCallLabelMarker"),c}function c(p){return p!==94?n(p):(e.enter("gfmFootnoteCallMarker"),e.consume(p),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",f)}function f(p){if(a>999||p===93&&!l||p===null||p===91||Xe(p))return n(p);if(p===93){e.exit("chunkString");const g=e.exit("gfmFootnoteCallString");return i.includes(pr(r.sliceSerialize(g)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(p),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),t):n(p)}return Xe(p)||(l=!0),a++,e.consume(p),p===92?d:f}function d(p){return p===91||p===92||p===93?(e.consume(p),a++,f):f(p)}}function pB(e,t,n){const r=this,i=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let a,l=0,u;return c;function c(x){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(x),e.exit("gfmFootnoteDefinitionLabelMarker"),f}function f(x){return x===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(x),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",d):n(x)}function d(x){if(l>999||x===93&&!u||x===null||x===91||Xe(x))return n(x);if(x===93){e.exit("chunkString");const S=e.exit("gfmFootnoteDefinitionLabelString");return a=pr(r.sliceSerialize(S)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(x),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),g}return Xe(x)||(u=!0),l++,e.consume(x),x===92?p:d}function p(x){return x===91||x===92||x===93?(e.consume(x),l++,d):d(x)}function g(x){return x===58?(e.enter("definitionMarker"),e.consume(x),e.exit("definitionMarker"),i.includes(a)||i.push(a),$e(e,y,"gfmFootnoteDefinitionWhitespace")):n(x)}function y(x){return t(x)}}function mB(e,t,n){return e.check(Os,t,e.attempt(uB,t,n))}function gB(e){e.exit("gfmFootnoteDefinition")}function vB(e,t,n){const r=this;return $e(e,i,"gfmFootnoteDefinitionIndent",5);function i(a){const l=r.events[r.events.length-1];return l&&l[1].type==="gfmFootnoteDefinitionIndent"&&l[2].sliceSerialize(l[1],!0).length===4?t(a):n(a)}}function yB(e){let n=(e||{}).singleTilde;const r={name:"strikethrough",tokenize:a,resolveAll:i};return n==null&&(n=!0),{text:{126:r},insideSpan:{null:[r]},attentionMarkers:{null:[126]}};function i(l,u){let c=-1;for(;++c1?c(x):(l.consume(x),p++,y);if(p<2&&!n)return c(x);const w=l.exit("strikethroughSequenceTemporary"),P=_o(x);return w._open=!P||P===2&&!!S,w._close=!S||S===2&&!!P,u(x)}}}class xB{constructor(){this.map=[]}add(t,n,r){bB(this,t,n,r)}consume(t){if(this.map.sort(function(a,l){return a[0]-l[0]}),this.map.length===0)return;let n=this.map.length;const r=[];for(;n>0;)n-=1,r.push(t.slice(this.map[n][0]+this.map[n][1]),this.map[n][2]),t.length=this.map[n][0];r.push(t.slice()),t.length=0;let i=r.pop();for(;i;){for(const a of i)t.push(a);i=r.pop()}this.map.length=0}}function bB(e,t,n,r){let i=0;if(!(n===0&&r.length===0)){for(;i-1;){const Y=r.events[W][1].type;if(Y==="lineEnding"||Y==="linePrefix")W--;else break}const M=W>-1?r.events[W][1].type:null,Z=M==="tableHead"||M==="tableRow"?E:c;return Z===E&&r.parser.lazy[r.now().line]?n(R):Z(R)}function c(R){return e.enter("tableHead"),e.enter("tableRow"),f(R)}function f(R){return R===124||(l=!0,a+=1),d(R)}function d(R){return R===null?n(R):Oe(R)?a>1?(a=0,r.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(R),e.exit("lineEnding"),y):n(R):Re(R)?$e(e,d,"whitespace")(R):(a+=1,l&&(l=!1,i+=1),R===124?(e.enter("tableCellDivider"),e.consume(R),e.exit("tableCellDivider"),l=!0,d):(e.enter("data"),p(R)))}function p(R){return R===null||R===124||Xe(R)?(e.exit("data"),d(R)):(e.consume(R),R===92?g:p)}function g(R){return R===92||R===124?(e.consume(R),p):p(R)}function y(R){return r.interrupt=!1,r.parser.lazy[r.now().line]?n(R):(e.enter("tableDelimiterRow"),l=!1,Re(R)?$e(e,x,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(R):x(R))}function x(R){return R===45||R===58?w(R):R===124?(l=!0,e.enter("tableCellDivider"),e.consume(R),e.exit("tableCellDivider"),S):I(R)}function S(R){return Re(R)?$e(e,w,"whitespace")(R):w(R)}function w(R){return R===58?(a+=1,l=!0,e.enter("tableDelimiterMarker"),e.consume(R),e.exit("tableDelimiterMarker"),P):R===45?(a+=1,P(R)):R===null||Oe(R)?A(R):I(R)}function P(R){return R===45?(e.enter("tableDelimiterFiller"),C(R)):I(R)}function C(R){return R===45?(e.consume(R),C):R===58?(l=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(R),e.exit("tableDelimiterMarker"),O):(e.exit("tableDelimiterFiller"),O(R))}function O(R){return Re(R)?$e(e,A,"whitespace")(R):A(R)}function A(R){return R===124?x(R):R===null||Oe(R)?!l||i!==a?I(R):(e.exit("tableDelimiterRow"),e.exit("tableHead"),t(R)):I(R)}function I(R){return n(R)}function E(R){return e.enter("tableRow"),L(R)}function L(R){return R===124?(e.enter("tableCellDivider"),e.consume(R),e.exit("tableCellDivider"),L):R===null||Oe(R)?(e.exit("tableRow"),t(R)):Re(R)?$e(e,L,"whitespace")(R):(e.enter("data"),F(R))}function F(R){return R===null||R===124||Xe(R)?(e.exit("data"),L(R)):(e.consume(R),R===92?H:F)}function H(R){return R===92||R===124?(e.consume(R),F):F(R)}}function jB(e,t){let n=-1,r=!0,i=0,a=[0,0,0,0],l=[0,0,0,0],u=!1,c=0,f,d,p;const g=new xB;for(;++nn[2]+1){const x=n[2]+1,S=n[3]-n[2]-1;e.add(x,S,[])}}e.add(n[3]+1,0,[["exit",p,t]])}return i!==void 0&&(a.end=Object.assign({},wo(t.events,i)),e.add(i,0,[["exit",a,t]]),a=void 0),a}function W1(e,t,n,r,i){const a=[],l=wo(t.events,n);i&&(i.end=Object.assign({},l),a.push(["exit",i,t])),r.end=Object.assign({},l),a.push(["exit",r,t]),e.add(n+1,0,a)}function wo(e,t){const n=e[t],r=n[0]==="enter"?"start":"end";return n[1][r]}const PB={name:"tasklistCheck",tokenize:CB};function EB(){return{text:{91:PB}}}function CB(e,t,n){const r=this;return i;function i(c){return r.previous!==null||!r._gfmTasklistFirstContentOfListItem?n(c):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(c),e.exit("taskListCheckMarker"),a)}function a(c){return Xe(c)?(e.enter("taskListCheckValueUnchecked"),e.consume(c),e.exit("taskListCheckValueUnchecked"),l):c===88||c===120?(e.enter("taskListCheckValueChecked"),e.consume(c),e.exit("taskListCheckValueChecked"),l):n(c)}function l(c){return c===93?(e.enter("taskListCheckMarker"),e.consume(c),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),u):n(c)}function u(c){return Oe(c)?t(c):Re(c)?e.check({tokenize:OB},t,n)(c):n(c)}}function OB(e,t,n){return $e(e,r,"whitespace");function r(i){return i===null?n(i):t(i)}}function NB(e){return _C([eB(),cB(),yB(e),kB(),EB()])}const AB={};function _B(e){const t=this,n=e||AB,r=t.data(),i=r.micromarkExtensions||(r.micromarkExtensions=[]),a=r.fromMarkdownExtensions||(r.fromMarkdownExtensions=[]),l=r.toMarkdownExtensions||(r.toMarkdownExtensions=[]);i.push(NB(n)),a.push(XF()),l.push(QF(n))}function IB({content:e}){return m.jsx("div",{className:"spec-markdown",children:m.jsx(y$,{remarkPlugins:[_B],components:{h3:({children:t})=>m.jsx("h3",{className:"text-lg font-semibold mt-6 mb-3 pb-2 border-b border-base-300/50 first:mt-0",children:t}),h4:({children:t})=>m.jsx("h4",{className:"text-base font-medium mt-4 mb-2 text-base-content/90",children:t}),p:({children:t})=>m.jsx("p",{className:"text-sm text-base-content/80 mb-3 leading-relaxed",children:t}),ul:({children:t})=>m.jsx("ul",{className:"text-sm space-y-1.5 mb-4 ml-1",children:t}),ol:({children:t})=>m.jsx("ol",{className:"text-sm space-y-1.5 mb-4 ml-1 list-decimal list-inside",children:t}),li:({children:t})=>m.jsxs("li",{className:"text-base-content/80 flex items-start gap-2",children:[m.jsx("span",{className:"text-primary mt-0.5 text-xs select-none",children:"▸"}),m.jsx("span",{className:"flex-1",children:t})]}),code:({className:t,children:n})=>t?m.jsx("code",{className:"block bg-base-300 p-3 rounded-lg text-xs font-mono overflow-x-auto mb-4 border border-base-content/10",children:n}):m.jsx("code",{className:"bg-base-300 text-primary px-1.5 py-0.5 rounded text-xs font-mono",children:n}),pre:({children:t})=>m.jsx("pre",{className:"bg-base-300 p-3 rounded-lg text-xs font-mono overflow-x-auto mb-4 border border-base-content/10",children:t}),strong:({children:t})=>m.jsx("strong",{className:"font-semibold text-base-content",children:t}),table:({children:t})=>m.jsx("div",{className:"overflow-x-auto mb-4",children:m.jsx("table",{className:"table table-sm w-full",children:t})}),thead:({children:t})=>m.jsx("thead",{className:"bg-base-200",children:t}),th:({children:t})=>m.jsx("th",{className:"text-left text-xs font-medium text-base-content/70 p-2",children:t}),td:({children:t})=>m.jsx("td",{className:"text-sm p-2 border-t border-base-300/50",children:t}),blockquote:({children:t})=>m.jsx("blockquote",{className:"border-l-4 border-primary/50 pl-4 py-1 my-3 text-sm text-base-content/70 italic",children:t}),hr:()=>m.jsx("hr",{className:"my-6 border-base-300"})},children:e})})}const wO={SPEC_REFRESH_INTERVAL_MS:5e3},TB={A:"lucide:file-plus",M:"lucide:file-edit",D:"lucide:file-minus"},MB={A:"text-success",M:"text-warning",D:"text-error"};function DB(){const[e,t]=k.useState(null),[n,r]=k.useState([]),[i,a]=k.useState(!0),[l,u]=k.useState(!1),[c,f]=k.useState(!1),[d,p]=k.useState(null),g=k.useCallback(async()=>{try{const C=await(await fetch("/api/worktree/status")).json();if(t(C),C.active){const A=await(await fetch("/api/worktree/diff")).json();r(A.files||[])}else r([])}catch{t(null)}finally{a(!1)}},[]);k.useEffect(()=>{g();const P=setInterval(g,wO.SPEC_REFRESH_INTERVAL_MS);return()=>clearInterval(P)},[g]);const y=async()=>{var P;if(confirm("Sync worktree changes to the base branch via squash merge?")){u(!0),p(null);try{const O=await(await fetch("/api/worktree/sync",{method:"POST"})).json();O.success?(p(`Synced ${O.files_changed} files — commit ${(P=O.commit_hash)==null?void 0:P.slice(0,7)}`),await g()):p(`Sync failed: ${O.error}`)}catch{p("Sync failed")}finally{u(!1)}}},x=async()=>{if(confirm("Discard all worktree changes? This cannot be undone.")){f(!0),p(null);try{const C=await(await fetch("/api/worktree/discard",{method:"POST"})).json();C.success?(p("Worktree discarded"),await g()):p(`Discard failed: ${C.error}`)}catch{p("Discard failed")}finally{f(!1)}}};if(i||!(e!=null&&e.active))return null;const S=n.reduce((P,C)=>P+C.additions,0),w=n.reduce((P,C)=>P+C.deletions,0);return m.jsx(wt,{children:m.jsxs(kt,{className:"p-4",children:[m.jsxs("div",{className:"flex items-center justify-between mb-3",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(se,{icon:"lucide:git-branch",size:16,className:"text-primary"}),m.jsx("span",{className:"text-sm font-medium",children:"Worktree Isolation"}),m.jsx(Te,{variant:"info",size:"xs",children:e.branch})]}),m.jsxs("div",{className:"flex items-center gap-1.5",children:[m.jsxs(Yt,{variant:"primary",size:"xs",onClick:y,disabled:l||c||n.length===0,children:[l?m.jsx(Xi,{size:"xs"}):m.jsx(se,{icon:"lucide:git-merge",size:12}),m.jsx("span",{className:"ml-1",children:"Sync"})]}),m.jsxs(Yt,{variant:"ghost",size:"xs",onClick:x,disabled:l||c,children:[c?m.jsx(Xi,{size:"xs"}):m.jsx(se,{icon:"lucide:trash-2",size:12,className:"text-error"}),m.jsx("span",{className:"ml-1",children:"Discard"})]})]})]}),m.jsxs("div",{className:"flex items-center gap-3 text-xs text-base-content/60 mb-2",children:[m.jsxs("span",{children:[n.length," file",n.length!==1?"s":""," changed"]}),S>0&&m.jsxs("span",{className:"text-success",children:["+",S]}),w>0&&m.jsxs("span",{className:"text-error",children:["-",w]}),m.jsxs("span",{className:"ml-auto",children:["base: ",m.jsx("span",{className:"font-mono text-base-content/80",children:e.baseBranch})]})]}),n.length>0&&m.jsx("div",{className:"space-y-0.5 max-h-40 overflow-y-auto",children:n.map(P=>m.jsxs("div",{className:"flex items-center gap-2 text-xs py-0.5",children:[m.jsx(se,{icon:TB[P.status]||"lucide:file",size:12,className:MB[P.status]||"text-base-content/50"}),m.jsx("span",{className:"font-mono text-base-content/80 truncate",children:P.path}),m.jsxs("span",{className:"ml-auto flex items-center gap-1 flex-shrink-0",children:[P.additions>0&&m.jsxs("span",{className:"text-success",children:["+",P.additions]}),P.deletions>0&&m.jsxs("span",{className:"text-error",children:["-",P.deletions]})]})]},P.path))}),d&&m.jsx("div",{className:`mt-2 text-xs px-2 py-1 rounded ${d.includes("failed")?"bg-error/10 text-error":"bg-success/10 text-success"}`,children:d})]})})}const q1={PENDING:{color:"warning",icon:"lucide:clock",label:"In Progress"},COMPLETE:{color:"info",icon:"lucide:check-circle",label:"Complete"},VERIFIED:{color:"success",icon:"lucide:shield-check",label:"Verified"}};function LB(e){const t=e.match(/^#\s+(.+)$/m),n=t?t[1].replace(" Implementation Plan",""):"Untitled",r=e.match(/\*\*Goal:\*\*\s*(.+?)(?:\n|$)/),i=r?r[1]:"",a=[],l=/^- \[(x| )\] Task (\d+):\s*(.+)$/gm;let u;for(;(u=l.exec(e))!==null;)a.push({number:parseInt(u[2],10),title:u[3],completed:u[1]==="x"});const c=e.match(/## Implementation Tasks\n([\s\S]*?)(?=\n## [^#]|$)/),f=c?c[1].trim():"";return{title:n,goal:i,tasks:a,implementationSection:f}}function RB(){const{selectedProject:e}=za(),[t,n]=k.useState([]),[r,i]=k.useState(null),[a,l]=k.useState(null),[u,c]=k.useState(!0),[f,d]=k.useState(!1),[p,g]=k.useState(null),[y,x]=k.useState(!1),S=e?`?project=${encodeURIComponent(e)}`:"",w=k.useRef(e);w.current!==e&&(w.current=e,i(null),l(null),g(null),c(!0));const P=k.useCallback(async()=>{var M;try{const Y=await(await fetch(`/api/plans/active${S}`)).json();if(n(Y.specs||[]),((M=Y.specs)==null?void 0:M.length)>0&&!r){const Q=Y.specs.find(he=>he.status==="PENDING"||he.status==="COMPLETE");i(Q?Q.filePath:Y.specs[0].filePath)}}catch(Z){g("Failed to load specs"),console.error("Failed to load specs:",Z)}finally{c(!1)}},[r,S]),C=k.useCallback(async(M,Z=!1)=>{Z||d(!0),g(null);try{const Y=await fetch(`/api/plan/content?path=${encodeURIComponent(M)}${e?`&project=${encodeURIComponent(e)}`:""}`);if(!Y.ok)throw new Error("Failed to load spec content");const Q=await Y.json();l(Q)}catch(Y){g("Failed to load spec content"),console.error("Failed to load spec content:",Y)}finally{Z||d(!1)}},[e]),O=k.useCallback(async M=>{if(confirm(`Delete spec "${M.split("/").pop()}"? This cannot be undone.`)){x(!0);try{if(!(await fetch(`/api/plan?path=${encodeURIComponent(M)}`,{method:"DELETE"})).ok)throw new Error("Failed to delete spec");i(null),l(null),await P()}catch(Z){g("Failed to delete spec"),console.error("Failed to delete spec:",Z)}finally{x(!1)}}},[P]);if(k.useEffect(()=>{P();const M=setInterval(()=>{P(),r&&C(r,!0)},wO.SPEC_REFRESH_INTERVAL_MS);return()=>clearInterval(M)},[P,C,r]),k.useEffect(()=>{r&&C(r)},[r,C]),u)return m.jsx("div",{className:"flex items-center justify-center h-64",children:m.jsx(Xi,{size:"lg"})});if(t.length===0)return m.jsx("div",{className:"space-y-6",children:m.jsx(wt,{children:m.jsx(kt,{children:m.jsxs("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[m.jsx(se,{icon:"lucide:file-text",size:48,className:"text-base-content/30 mb-4"}),m.jsx("h3",{className:"text-lg font-medium mb-2",children:"No Active Specs"}),m.jsxs("p",{className:"text-base-content/60 max-w-md",children:["Use ",m.jsx("code",{className:"text-primary bg-base-300 px-1 rounded",children:"/spec"})," in Claude Pilot to start a spec-driven development workflow."]})]})})})});const A=t.filter(M=>M.status==="PENDING"||M.status==="COMPLETE"),I=t.filter(M=>M.status==="VERIFIED"),E=t.find(M=>M.filePath===r),L=E?q1[E.status]:null,F=a?LB(a.content):null,H=(F==null?void 0:F.tasks.filter(M=>M.completed).length)||0,R=(F==null?void 0:F.tasks.length)||0,W=R>0?H/R*100:0;return m.jsxs("div",{className:"space-y-6",children:[m.jsxs("div",{className:"flex items-center gap-3 flex-wrap",children:[m.jsx("h1",{className:"text-2xl font-bold mr-auto",children:"Specifications"}),A.length>0&&m.jsx("div",{role:"tablist",className:"flex items-center gap-1.5 flex-shrink-0",children:A.map(M=>{const Z=r===M.filePath;return m.jsxs("button",{role:"tab","aria-selected":Z,className:`px-3 py-1.5 rounded-lg text-xs font-medium border transition-colors cursor-pointer flex items-center gap-1.5 ${Z?"bg-primary/10 border-primary/30 text-primary":"bg-base-200/60 border-base-300/50 text-base-content/70 hover:bg-base-200"}`,onClick:()=>i(M.filePath),children:[m.jsx(se,{icon:q1[M.status].icon,size:12,className:M.status==="PENDING"?"text-warning":"text-info"}),m.jsx("span",{className:"truncate max-w-32",children:M.name}),M.total>0&&m.jsxs("span",{className:"text-[10px] opacity-60",children:[M.completed,"/",M.total]})]},M.filePath)})}),I.length>0&&m.jsxs("select",{className:"select select-bordered select-sm",value:(E==null?void 0:E.status)==="VERIFIED"&&r||"",onChange:M=>i(M.target.value),children:[m.jsxs("option",{value:"",disabled:!0,children:["Archived (",I.length,")"]}),I.map(M=>{const Z=M.modifiedAt?new Date(M.modifiedAt):null,Y=Z?Z.toLocaleDateString(void 0,{month:"short",day:"numeric"}):"";return m.jsxs("option",{value:M.filePath,children:[M.name,Y?` - ${Y}`:""]},M.filePath)})]}),r&&m.jsx(_r,{text:"Delete spec",position:"bottom",children:m.jsx(Yt,{variant:"ghost",size:"sm",onClick:()=>O(r),disabled:y,children:m.jsx(se,{icon:"lucide:trash-2",size:16,className:"text-error"})})})]}),f?m.jsx("div",{className:"flex items-center justify-center py-12",children:m.jsx(Xi,{size:"md"})}):p?m.jsx(wt,{children:m.jsx(kt,{children:m.jsxs("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[m.jsx(se,{icon:"lucide:alert-circle",size:48,className:"text-error mb-4"}),m.jsx("p",{className:"text-error",children:p})]})})}):F?m.jsxs(m.Fragment,{children:[m.jsx(wt,{children:m.jsxs(kt,{className:"p-5",children:[m.jsxs("div",{className:"flex items-start justify-between mb-4",children:[m.jsxs("div",{children:[m.jsx("h2",{className:"text-xl font-semibold",children:F.title}),F.goal&&m.jsx("p",{className:"text-base-content/60 text-sm mt-1",children:F.goal})]}),L&&m.jsxs(Te,{variant:L.color,size:"sm",className:"whitespace-nowrap",children:[m.jsx(se,{icon:L.icon,size:12,className:"mr-1"}),L.label]})]}),m.jsxs("div",{className:"mb-4",children:[m.jsxs("div",{className:"flex justify-between text-sm mb-1.5",children:[m.jsx("span",{className:"text-base-content/70",children:"Progress"}),m.jsxs("span",{className:"font-medium",children:[H," / ",R," tasks"]})]}),m.jsx(tD,{value:W,max:100,variant:"primary"})]}),m.jsx("div",{className:"space-y-2",children:F.tasks.map(M=>m.jsxs("div",{className:`flex items-center gap-3 p-2 rounded-lg ${M.completed?"bg-success/10":"bg-base-200/50"}`,children:[m.jsx("div",{className:`w-5 h-5 rounded-md flex items-center justify-center ${M.completed?"bg-success text-success-content":"bg-base-300"}`,children:M.completed?m.jsx(se,{icon:"lucide:check",size:14}):m.jsx("span",{className:"text-xs text-base-content/50",children:M.number})}),m.jsxs("span",{className:`text-sm ${M.completed?"text-base-content/70":"text-base-content"}`,children:["Task ",M.number,": ",M.title]})]},M.number))}),E&&m.jsxs("div",{className:"flex items-center gap-4 mt-4 pt-4 border-t border-base-300/50 text-xs text-base-content/50",children:[E.iterations>0&&m.jsxs("div",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:repeat",size:12}),m.jsxs("span",{children:[E.iterations," iteration",E.iterations>1?"s":""]})]}),!E.approved&&E.status==="PENDING"&&m.jsx(Te,{variant:"warning",size:"xs",children:"Awaiting Approval"}),E.worktree?m.jsxs("div",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:git-branch",size:12}),m.jsx("span",{children:"Worktree"})]}):m.jsxs("div",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:git-commit",size:12}),m.jsx("span",{children:"Direct"})]}),E.modifiedAt&&m.jsxs("div",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:calendar",size:12}),m.jsx("span",{children:new Date(E.modifiedAt).toLocaleString(void 0,{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})})]}),m.jsxs("div",{className:"flex items-center gap-1 ml-auto",children:[m.jsx(se,{icon:"lucide:file",size:12}),m.jsx("span",{className:"font-mono",children:E.filePath.split("/").pop()})]})]})]})}),m.jsx(DB,{}),F.implementationSection&&m.jsx(wt,{children:m.jsxs(kt,{className:"p-6",children:[m.jsxs("h3",{className:"text-lg font-semibold mb-4 flex items-center gap-2",children:[m.jsx(se,{icon:"lucide:list-tree",size:18}),"Implementation Details"]}),m.jsx(IB,{content:F.implementationSection})]})})]}):null]})}const zB=300*1e3;function $B(){const[e,t]=k.useState([]),[n,r]=k.useState([]),[i,a]=k.useState([]),[l,u]=k.useState(!0),[c,f]=k.useState(null),[d,p]=k.useState(!0),[g,y]=k.useState(!0),x=k.useCallback(async()=>{var S,w;try{const[P,C,O]=await Promise.all([fetch("/api/usage/daily"),fetch("/api/usage/monthly"),fetch("/api/usage/models")]),[A,I,E]=await Promise.all([P.json(),C.json(),O.json()]);if(A.available===!1){p(!1),y(!1),t([]),r([]),a([]),f(null);return}p(!0);const L=(((S=A.daily)==null?void 0:S.length)??0)>0||(((w=I.monthly)==null?void 0:w.length)??0)>0;y(L),t(A.daily||[]),r(I.monthly||[]),a(E.models||[]),f(null)}catch(P){f(P instanceof Error?P.message:"Failed to load usage data"),p(!0),y(!1)}finally{u(!1)}},[]);return k.useEffect(()=>{x();const S=setInterval(x,zB);return()=>{clearInterval(S)}},[x]),{daily:e,monthly:n,models:i,isLoading:l,error:c,available:d,dataExists:g}}function Io(e){return e<1e3?e.toString():e<1e6?`${(e/1e3).toFixed(1)}k`:`${(e/1e6).toFixed(1)}M`}function FB({daily:e}){const t=e.length>0?e[e.length-1]:null,n=(t==null?void 0:t.totalCost)||0,r=(t==null?void 0:t.totalTokens)||0,i=e.filter(d=>d.totalCost>0||d.totalTokens>0),a=i.reduce((d,p)=>d+(p.totalCost||0),0),l=i.reduce((d,p)=>d+(p.totalTokens||0),0),u=i.length||1,c=a/u,f=Math.round(l/u);return m.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4",children:[m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Daily Cost"}),m.jsxs("div",{className:"stat-value text-primary",children:[n.toFixed(2),"$"]}),m.jsx("div",{className:"stat-desc",children:"Today"})]})}),m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Avg Daily Cost"}),m.jsxs("div",{className:"stat-value",children:["⌀ ",c.toFixed(2),"$"]}),m.jsxs("div",{className:"stat-desc",children:["Last ",u," working days"]})]})}),m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Daily Tokens"}),m.jsx("div",{className:"stat-value text-primary",children:Io(r)}),m.jsx("div",{className:"stat-desc",children:"Today"})]})}),m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Avg Daily Tokens"}),m.jsxs("div",{className:"stat-value",children:["⌀ ",Io(f)]}),m.jsxs("div",{className:"stat-desc",children:["Last ",u," working days"]})]})})]})}function kO(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var i=e.length;for(t=0;t{var{children:n,width:r,height:i,viewBox:a,className:l,style:u,title:c,desc:f}=e,d=VB(e,HB),p=a||{width:r,height:i,x:0,y:0},g=Ge("recharts-surface",l);return k.createElement("svg",Hg({},dn(d),{className:g,width:r,height:i,style:u,viewBox:"".concat(p.x," ").concat(p.y," ").concat(p.width," ").concat(p.height),ref:t}),k.createElement("title",null,c),k.createElement("desc",null,f),n)}),GB=["children","className"];function Vg(){return Vg=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{children:n,className:r}=e,i=YB(e,GB),a=Ge("recharts-layer",r);return k.createElement("g",Vg({className:a},dn(i),{ref:t}),n)}),EO=HE(),QB=k.createContext(null);function Je(e){return function(){return e}}const CO=Math.cos,Bc=Math.sin,br=Math.sqrt,Uc=Math.PI,qf=2*Uc,Kg=Math.PI,Gg=2*Kg,ya=1e-6,ZB=Gg-ya;function OO(e){this._+=e[0];for(let t=1,n=e.length;t=0))throw new Error(`invalid digits: ${e}`);if(t>15)return OO;const n=10**t;return function(r){this._+=r[0];for(let i=1,a=r.length;iya)if(!(Math.abs(p*c-f*d)>ya)||!a)this._append`L${this._x1=t},${this._y1=n}`;else{let y=r-l,x=i-u,S=c*c+f*f,w=y*y+x*x,P=Math.sqrt(S),C=Math.sqrt(g),O=a*Math.tan((Kg-Math.acos((S+g-w)/(2*P*C)))/2),A=O/C,I=O/P;Math.abs(A-1)>ya&&this._append`L${t+A*d},${n+A*p}`,this._append`A${a},${a},0,0,${+(p*y>d*x)},${this._x1=t+I*c},${this._y1=n+I*f}`}}arc(t,n,r,i,a,l){if(t=+t,n=+n,r=+r,l=!!l,r<0)throw new Error(`negative radius: ${r}`);let u=r*Math.cos(i),c=r*Math.sin(i),f=t+u,d=n+c,p=1^l,g=l?i-a:a-i;this._x1===null?this._append`M${f},${d}`:(Math.abs(this._x1-f)>ya||Math.abs(this._y1-d)>ya)&&this._append`L${f},${d}`,r&&(g<0&&(g=g%Gg+Gg),g>ZB?this._append`A${r},${r},0,1,${p},${t-u},${n-c}A${r},${r},0,1,${p},${this._x1=f},${this._y1=d}`:g>ya&&this._append`A${r},${r},0,${+(g>=Kg)},${p},${this._x1=t+r*Math.cos(a)},${this._y1=n+r*Math.sin(a)}`)}rect(t,n,r,i){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+n}h${r=+r}v${+i}h${-r}Z`}toString(){return this._}}function my(e){let t=3;return e.digits=function(n){if(!arguments.length)return t;if(n==null)t=null;else{const r=Math.floor(n);if(!(r>=0))throw new RangeError(`invalid digits: ${n}`);t=r}return e},()=>new e5(t)}function gy(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function NO(e){this._context=e}NO.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t);break}}};function Hf(e){return new NO(e)}function AO(e){return e[0]}function _O(e){return e[1]}function IO(e,t){var n=Je(!0),r=null,i=Hf,a=null,l=my(u);e=typeof e=="function"?e:e===void 0?AO:Je(e),t=typeof t=="function"?t:t===void 0?_O:Je(t);function u(c){var f,d=(c=gy(c)).length,p,g=!1,y;for(r==null&&(a=i(y=l())),f=0;f<=d;++f)!(f=y;--x)u.point(O[x],A[x]);u.lineEnd(),u.areaEnd()}P&&(O[g]=+e(w,g,p),A[g]=+t(w,g,p),u.point(r?+r(w,g,p):O[g],n?+n(w,g,p):A[g]))}if(C)return u=null,C+""||null}function d(){return IO().defined(i).curve(l).context(a)}return f.x=function(p){return arguments.length?(e=typeof p=="function"?p:Je(+p),r=null,f):e},f.x0=function(p){return arguments.length?(e=typeof p=="function"?p:Je(+p),f):e},f.x1=function(p){return arguments.length?(r=p==null?null:typeof p=="function"?p:Je(+p),f):r},f.y=function(p){return arguments.length?(t=typeof p=="function"?p:Je(+p),n=null,f):t},f.y0=function(p){return arguments.length?(t=typeof p=="function"?p:Je(+p),f):t},f.y1=function(p){return arguments.length?(n=p==null?null:typeof p=="function"?p:Je(+p),f):n},f.lineX0=f.lineY0=function(){return d().x(e).y(t)},f.lineY1=function(){return d().x(e).y(n)},f.lineX1=function(){return d().x(r).y(t)},f.defined=function(p){return arguments.length?(i=typeof p=="function"?p:Je(!!p),f):i},f.curve=function(p){return arguments.length?(l=p,a!=null&&(u=l(a)),f):l},f.context=function(p){return arguments.length?(p==null?a=u=null:u=l(a=p),f):a},f}class TO{constructor(t,n){this._context=t,this._x=n}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(t,n){switch(t=+t,n=+n,this._point){case 0:{this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,n,t,n):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+n)/2,t,this._y0,t,n);break}}this._x0=t,this._y0=n}}function t5(e){return new TO(e,!0)}function n5(e){return new TO(e,!1)}const vy={draw(e,t){const n=br(t/Uc);e.moveTo(n,0),e.arc(0,0,n,0,qf)}},r5={draw(e,t){const n=br(t/5)/2;e.moveTo(-3*n,-n),e.lineTo(-n,-n),e.lineTo(-n,-3*n),e.lineTo(n,-3*n),e.lineTo(n,-n),e.lineTo(3*n,-n),e.lineTo(3*n,n),e.lineTo(n,n),e.lineTo(n,3*n),e.lineTo(-n,3*n),e.lineTo(-n,n),e.lineTo(-3*n,n),e.closePath()}},MO=br(1/3),i5=MO*2,a5={draw(e,t){const n=br(t/i5),r=n*MO;e.moveTo(0,-n),e.lineTo(r,0),e.lineTo(0,n),e.lineTo(-r,0),e.closePath()}},o5={draw(e,t){const n=br(t),r=-n/2;e.rect(r,r,n,n)}},l5=.8908130915292852,DO=Bc(Uc/10)/Bc(7*Uc/10),s5=Bc(qf/10)*DO,u5=-CO(qf/10)*DO,c5={draw(e,t){const n=br(t*l5),r=s5*n,i=u5*n;e.moveTo(0,-n),e.lineTo(r,i);for(let a=1;a<5;++a){const l=qf*a/5,u=CO(l),c=Bc(l);e.lineTo(c*n,-u*n),e.lineTo(u*r-c*i,c*r+u*i)}e.closePath()}},Gp=br(3),f5={draw(e,t){const n=-br(t/(Gp*3));e.moveTo(0,n*2),e.lineTo(-Gp*n,-n),e.lineTo(Gp*n,-n),e.closePath()}},Kn=-.5,Gn=br(3)/2,Yg=1/br(12),d5=(Yg/2+1)*3,h5={draw(e,t){const n=br(t/d5),r=n/2,i=n*Yg,a=r,l=n*Yg+n,u=-a,c=l;e.moveTo(r,i),e.lineTo(a,l),e.lineTo(u,c),e.lineTo(Kn*r-Gn*i,Gn*r+Kn*i),e.lineTo(Kn*a-Gn*l,Gn*a+Kn*l),e.lineTo(Kn*u-Gn*c,Gn*u+Kn*c),e.lineTo(Kn*r+Gn*i,Kn*i-Gn*r),e.lineTo(Kn*a+Gn*l,Kn*l-Gn*a),e.lineTo(Kn*u+Gn*c,Kn*c-Gn*u),e.closePath()}};function p5(e,t){let n=null,r=my(i);e=typeof e=="function"?e:Je(e||vy),t=typeof t=="function"?t:Je(t===void 0?64:+t);function i(){let a;if(n||(n=a=r()),e.apply(this,arguments).draw(n,+t.apply(this,arguments)),a)return n=null,a+""||null}return i.type=function(a){return arguments.length?(e=typeof a=="function"?a:Je(a),i):e},i.size=function(a){return arguments.length?(t=typeof a=="function"?a:Je(+a),i):t},i.context=function(a){return arguments.length?(n=a??null,i):n},i}function Wc(){}function qc(e,t,n){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+n)/6)}function LO(e){this._context=e}LO.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:qc(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:qc(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function m5(e){return new LO(e)}function RO(e){this._context=e}RO.prototype={areaStart:Wc,areaEnd:Wc,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:qc(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function g5(e){return new RO(e)}function zO(e){this._context=e}zO.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var n=(this._x0+4*this._x1+e)/6,r=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(n,r):this._context.moveTo(n,r);break;case 3:this._point=4;default:qc(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function v5(e){return new zO(e)}function $O(e){this._context=e}$O.prototype={areaStart:Wc,areaEnd:Wc,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(e,t){e=+e,t=+t,this._point?this._context.lineTo(e,t):(this._point=1,this._context.moveTo(e,t))}};function y5(e){return new $O(e)}function H1(e){return e<0?-1:1}function V1(e,t,n){var r=e._x1-e._x0,i=t-e._x1,a=(e._y1-e._y0)/(r||i<0&&-0),l=(n-e._y1)/(i||r<0&&-0),u=(a*i+l*r)/(r+i);return(H1(a)+H1(l))*Math.min(Math.abs(a),Math.abs(l),.5*Math.abs(u))||0}function K1(e,t){var n=e._x1-e._x0;return n?(3*(e._y1-e._y0)/n-t)/2:t}function Yp(e,t,n){var r=e._x0,i=e._y0,a=e._x1,l=e._y1,u=(a-r)/3;e._context.bezierCurveTo(r+u,i+u*t,a-u,l-u*n,a,l)}function Hc(e){this._context=e}Hc.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:Yp(this,this._t0,K1(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){var n=NaN;if(e=+e,t=+t,!(e===this._x1&&t===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,Yp(this,K1(this,n=V1(this,e,t)),n);break;default:Yp(this,this._t0,n=V1(this,e,t));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=n}}};function FO(e){this._context=new BO(e)}(FO.prototype=Object.create(Hc.prototype)).point=function(e,t){Hc.prototype.point.call(this,t,e)};function BO(e){this._context=e}BO.prototype={moveTo:function(e,t){this._context.moveTo(t,e)},closePath:function(){this._context.closePath()},lineTo:function(e,t){this._context.lineTo(t,e)},bezierCurveTo:function(e,t,n,r,i,a){this._context.bezierCurveTo(t,e,r,n,a,i)}};function x5(e){return new Hc(e)}function b5(e){return new FO(e)}function UO(e){this._context=e}UO.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var e=this._x,t=this._y,n=e.length;if(n)if(this._line?this._context.lineTo(e[0],t[0]):this._context.moveTo(e[0],t[0]),n===2)this._context.lineTo(e[1],t[1]);else for(var r=G1(e),i=G1(t),a=0,l=1;l=0;--t)i[t]=(l[t]-i[t+1])/a[t];for(a[n-1]=(e[n]+i[n-1])/2,t=0;t=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var n=this._x*(1-this._t)+e*this._t;this._context.lineTo(n,this._y),this._context.lineTo(n,t)}break}}this._x=e,this._y=t}};function k5(e){return new Vf(e,.5)}function S5(e){return new Vf(e,0)}function j5(e){return new Vf(e,1)}function Aa(e,t){if((l=e.length)>1)for(var n=1,r,i,a=e[t[0]],l,u=a.length;n=0;)n[t]=t;return n}function P5(e,t){return e[t]}function E5(e){const t=[];return t.key=e,t}function C5(){var e=Je([]),t=Xg,n=Aa,r=P5;function i(a){var l=Array.from(e.apply(this,arguments),E5),u,c=l.length,f=-1,d;for(const p of a)for(u=0,++f;u0){for(var n,r,i=0,a=e[0].length,l;i0){for(var n=0,r=e[t[0]],i,a=r.length;n0)||!((a=(i=e[t[0]]).length)>0))){for(var n=0,r=1,i,a,l;r1&&arguments[1]!==void 0?arguments[1]:D5,n=10**t,r=Math.round(e*n)/n;return Object.is(r,-0)?0:r}function pt(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r{var u=n[l-1];return typeof u=="string"?i+u+a:u!==void 0?i+Ki(u)+a:i+a},"")}var jn=e=>e===0?0:e>0?1:-1,gr=e=>typeof e=="number"&&e!=+e,_a=e=>typeof e=="string"&&e.indexOf("%")===e.length-1,ge=e=>(typeof e=="number"||e instanceof Number)&&!gr(e),Dr=e=>ge(e)||typeof e=="string",L5=0,fs=e=>{var t=++L5;return"".concat(e||"").concat(t)},vr=function(t,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(!ge(t)&&typeof t!="string")return r;var a;if(_a(t)){if(n==null)return r;var l=t.indexOf("%");a=n*parseFloat(t.slice(0,l))/100}else a=+t;return gr(a)&&(a=r),i&&n!=null&&a>n&&(a=n),a},qO=e=>{if(!Array.isArray(e))return!1;for(var t=e.length,n={},r=0;rr&&(typeof t=="function"?t(r):To(r,t))===n)}var mt=e=>e===null||typeof e>"u",_s=e=>mt(e)?e:"".concat(e.charAt(0).toUpperCase()).concat(e.slice(1));function Pn(e){return e!=null}function Fa(){}var R5=["type","size","sizeType"];function Qg(){return Qg=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var t="symbol".concat(_s(e));return VO[t]||vy},H5=(e,t,n)=>{if(t==="area")return e;switch(n){case"cross":return 5*e*e/9;case"diamond":return .5*e*e/Math.sqrt(3);case"square":return e*e;case"star":{var r=18*W5;return 1.25*e*e*(Math.tan(r)-Math.tan(r*2)*Math.tan(r)**2)}case"triangle":return Math.sqrt(3)*e*e/4;case"wye":return(21-10*Math.sqrt(3))*e*e/8;default:return Math.PI*e*e/4}},V5=(e,t)=>{VO["symbol".concat(_s(e))]=t},KO=e=>{var{type:t="circle",size:n=64,sizeType:r="area"}=e,i=B5(e,R5),a=rk(rk({},i),{},{type:t,size:n,sizeType:r}),l="circle";typeof t=="string"&&(l=t);var u=()=>{var g=q5(l),y=p5().type(g).size(H5(n,r,l)),x=y();if(x!==null)return x},{className:c,cx:f,cy:d}=a,p=dn(a);return ge(f)&&ge(d)&&ge(n)?k.createElement("path",Qg({},p,{className:Ge("recharts-symbols",c),transform:"translate(".concat(f,", ").concat(d,")"),d:u()})):null};KO.registerSymbol=V5;var GO=e=>"radius"in e&&"startAngle"in e&&"endAngle"in e,wy=(e,t)=>{if(!e||typeof e=="function"||typeof e=="boolean")return null;var n=e;if(k.isValidElement(e)&&(n=e.props),typeof n!="object"&&typeof n!="function")return null;var r={};return Object.keys(n).forEach(i=>{py(i)&&(r[i]=(a=>n[i](n,a)))}),r},K5=(e,t,n)=>r=>(e(t,n,r),null),ky=(e,t,n)=>{if(e===null||typeof e!="object"&&typeof e!="function")return null;var r=null;return Object.keys(e).forEach(i=>{var a=e[i];py(i)&&typeof a=="function"&&(r||(r={}),r[i]=K5(a,t,n))}),r};function ik(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function G5(e){for(var t=1;t(l[u]===void 0&&r[u]!==void 0&&(l[u]=r[u]),l),n);return a}var rm={},im={},ak;function Z5(){return ak||(ak=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r){const i=new Map;for(let a=0;a=0}e.isLength=t})(um)),um}var uk;function Sy(){return uk||(uk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=e6();function n(r){return r!=null&&typeof r!="function"&&t.isLength(r.length)}e.isArrayLike=n})(sm)),sm}var cm={},ck;function t6(){return ck||(ck=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return typeof n=="object"&&n!==null}e.isObjectLike=t})(cm)),cm}var fk;function n6(){return fk||(fk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Sy(),n=t6();function r(i){return n.isObjectLike(i)&&t.isArrayLike(i)}e.isArrayLikeObject=r})(lm)),lm}var fm={},dm={},dk;function r6(){return dk||(dk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=by();function n(r){return function(i){return t.get(i,r)}}e.property=n})(dm)),dm}var hm={},pm={},mm={},gm={},hk;function XO(){return hk||(hk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n!==null&&(typeof n=="object"||typeof n=="function")}e.isObject=t})(gm)),gm}var vm={},pk;function QO(){return pk||(pk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n==null||typeof n!="object"&&typeof n!="function"}e.isPrimitive=t})(vm)),vm}var ym={},mk;function ZO(){return mk||(mk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r){return n===r||Number.isNaN(n)&&Number.isNaN(r)}e.isEqualsSameValueZero=t})(ym)),ym}var gk;function i6(){return gk||(gk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=XO(),n=QO(),r=ZO();function i(d,p,g){return typeof g!="function"?i(d,p,()=>{}):a(d,p,function y(x,S,w,P,C,O){const A=g(x,S,w,P,C,O);return A!==void 0?!!A:a(x,S,y,O)},new Map)}function a(d,p,g,y){if(p===d)return!0;switch(typeof p){case"object":return l(d,p,g,y);case"function":return Object.keys(p).length>0?a(d,{...p},g,y):r.isEqualsSameValueZero(d,p);default:return t.isObject(d)?typeof p=="string"?p==="":!0:r.isEqualsSameValueZero(d,p)}}function l(d,p,g,y){if(p==null)return!0;if(Array.isArray(p))return c(d,p,g,y);if(p instanceof Map)return u(d,p,g,y);if(p instanceof Set)return f(d,p,g,y);const x=Object.keys(p);if(d==null||n.isPrimitive(d))return x.length===0;if(x.length===0)return!0;if(y!=null&&y.has(p))return y.get(p)===d;y==null||y.set(p,d);try{for(let S=0;S{})}e.isMatch=n})(pm)),pm}var xm={},bm={},wm={},yk;function a6(){return yk||(yk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return Object.getOwnPropertySymbols(n).filter(r=>Object.prototype.propertyIsEnumerable.call(n,r))}e.getSymbols=t})(wm)),wm}var km={},xk;function jy(){return xk||(xk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n==null?n===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(n)}e.getTag=t})(km)),km}var Sm={},bk;function eN(){return bk||(bk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t="[object RegExp]",n="[object String]",r="[object Number]",i="[object Boolean]",a="[object Arguments]",l="[object Symbol]",u="[object Date]",c="[object Map]",f="[object Set]",d="[object Array]",p="[object Function]",g="[object ArrayBuffer]",y="[object Object]",x="[object Error]",S="[object DataView]",w="[object Uint8Array]",P="[object Uint8ClampedArray]",C="[object Uint16Array]",O="[object Uint32Array]",A="[object BigUint64Array]",I="[object Int8Array]",E="[object Int16Array]",L="[object Int32Array]",F="[object BigInt64Array]",H="[object Float32Array]",R="[object Float64Array]";e.argumentsTag=a,e.arrayBufferTag=g,e.arrayTag=d,e.bigInt64ArrayTag=F,e.bigUint64ArrayTag=A,e.booleanTag=i,e.dataViewTag=S,e.dateTag=u,e.errorTag=x,e.float32ArrayTag=H,e.float64ArrayTag=R,e.functionTag=p,e.int16ArrayTag=E,e.int32ArrayTag=L,e.int8ArrayTag=I,e.mapTag=c,e.numberTag=r,e.objectTag=y,e.regexpTag=t,e.setTag=f,e.stringTag=n,e.symbolTag=l,e.uint16ArrayTag=C,e.uint32ArrayTag=O,e.uint8ArrayTag=w,e.uint8ClampedArrayTag=P})(Sm)),Sm}var jm={},wk;function o6(){return wk||(wk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return ArrayBuffer.isView(n)&&!(n instanceof DataView)}e.isTypedArray=t})(jm)),jm}var kk;function tN(){return kk||(kk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=a6(),n=jy(),r=eN(),i=QO(),a=o6();function l(d,p){return u(d,void 0,d,new Map,p)}function u(d,p,g,y=new Map,x=void 0){const S=x==null?void 0:x(d,p,g,y);if(S!==void 0)return S;if(i.isPrimitive(d))return d;if(y.has(d))return y.get(d);if(Array.isArray(d)){const w=new Array(d.length);y.set(d,w);for(let P=0;Pt.isMatch(a,i)}e.matches=r})(hm)),hm}var Pm={},Em={},Cm={},Pk;function u6(){return Pk||(Pk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=tN(),n=jy(),r=eN();function i(a,l){return t.cloneDeepWith(a,(u,c,f,d)=>{const p=l==null?void 0:l(u,c,f,d);if(p!==void 0)return p;if(typeof a=="object"){if(n.getTag(a)===r.objectTag&&typeof a.constructor!="function"){const g={};return d.set(a,g),t.copyProperties(g,a,f,d),g}switch(Object.prototype.toString.call(a)){case r.numberTag:case r.stringTag:case r.booleanTag:{const g=new a.constructor(a==null?void 0:a.valueOf());return t.copyProperties(g,a),g}case r.argumentsTag:{const g={};return t.copyProperties(g,a),g.length=a.length,g[Symbol.iterator]=a[Symbol.iterator],g}default:return}}})}e.cloneDeepWith=i})(Cm)),Cm}var Ek;function c6(){return Ek||(Ek=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=u6();function n(r){return t.cloneDeepWith(r)}e.cloneDeep=n})(Em)),Em}var Om={},Nm={},Ck;function nN(){return Ck||(Ck=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=/^(?:0|[1-9]\d*)$/;function n(r,i=Number.MAX_SAFE_INTEGER){switch(typeof r){case"number":return Number.isInteger(r)&&r>=0&&r",...c.current()})),f+=c.move(">")):(u=n.enter("destinationRaw"),f+=c.move(n.safe(e.url,{before:f,after:e.title?" ":")",...c.current()}))),u(),e.title&&(u=n.enter(`title${a}`),f+=c.move(" "+i),f+=c.move(n.safe(e.title,{before:f,after:i,...c.current()})),f+=c.move(i),u()),f+=c.move(")"),l(),f}function jF(){return"!"}oO.peek=PF;function oO(e,t,n,r){const i=e.referenceType,a=n.enter("imageReference");let l=n.enter("label");const u=n.createTracker(r);let c=u.move("![");const f=n.safe(e.alt,{before:c,after:"]",...u.current()});c+=u.move(f+"]["),l();const d=n.stack;n.stack=[],l=n.enter("reference");const h=n.safe(n.associationId(e),{before:c,after:"]",...u.current()});return l(),n.stack=d,a(),i==="full"||!f||f!==h?c+=u.move(h+"]"):i==="shortcut"?c=c.slice(0,-1):c+=u.move("]"),c}function PF(){return"!"}lO.peek=EF;function lO(e,t,n){let r=e.value||"",i="`",a=-1;for(;new RegExp("(^|[^`])"+i+"([^`]|$)").test(r);)i+="`";for(/[^ \r\n]/.test(r)&&(/^[ \r\n]/.test(r)&&/[ \r\n]$/.test(r)||/^`|`$/.test(r))&&(r=" "+r+" ");++a\u007F]/.test(e.url))}uO.peek=CF;function uO(e,t,n,r){const i=py(n),a=i==='"'?"Quote":"Apostrophe",l=n.createTracker(r);let u,c;if(sO(e,n)){const d=n.stack;n.stack=[],u=n.enter("autolink");let h=l.move("<");return h+=l.move(n.containerPhrasing(e,{before:h,after:">",...l.current()})),h+=l.move(">"),u(),n.stack=d,h}u=n.enter("link"),c=n.enter("label");let f=l.move("[");return f+=l.move(n.containerPhrasing(e,{before:f,after:"](",...l.current()})),f+=l.move("]("),c(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(c=n.enter("destinationLiteral"),f+=l.move("<"),f+=l.move(n.safe(e.url,{before:f,after:">",...l.current()})),f+=l.move(">")):(c=n.enter("destinationRaw"),f+=l.move(n.safe(e.url,{before:f,after:e.title?" ":")",...l.current()}))),c(),e.title&&(c=n.enter(`title${a}`),f+=l.move(" "+i),f+=l.move(n.safe(e.title,{before:f,after:i,...l.current()})),f+=l.move(i),c()),f+=l.move(")"),u(),f}function CF(e,t,n){return sO(e,n)?"<":"["}cO.peek=OF;function cO(e,t,n,r){const i=e.referenceType,a=n.enter("linkReference");let l=n.enter("label");const u=n.createTracker(r);let c=u.move("[");const f=n.containerPhrasing(e,{before:c,after:"]",...u.current()});c+=u.move(f+"]["),l();const d=n.stack;n.stack=[],l=n.enter("reference");const h=n.safe(n.associationId(e),{before:c,after:"]",...u.current()});return l(),n.stack=d,a(),i==="full"||!f||f!==h?c+=u.move(h+"]"):i==="shortcut"?c=c.slice(0,-1):c+=u.move("]"),c}function OF(){return"["}function hy(e){const t=e.options.bullet||"*";if(t!=="*"&&t!=="+"&&t!=="-")throw new Error("Cannot serialize items with `"+t+"` for `options.bullet`, expected `*`, `+`, or `-`");return t}function NF(e){const t=hy(e),n=e.options.bulletOther;if(!n)return t==="*"?"-":"*";if(n!=="*"&&n!=="+"&&n!=="-")throw new Error("Cannot serialize items with `"+n+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(n===t)throw new Error("Expected `bullet` (`"+t+"`) and `bulletOther` (`"+n+"`) to be different");return n}function AF(e){const t=e.options.bulletOrdered||".";if(t!=="."&&t!==")")throw new Error("Cannot serialize items with `"+t+"` for `options.bulletOrdered`, expected `.` or `)`");return t}function fO(e){const t=e.options.rule||"*";if(t!=="*"&&t!=="-"&&t!=="_")throw new Error("Cannot serialize rules with `"+t+"` for `options.rule`, expected `*`, `-`, or `_`");return t}function _F(e,t,n,r){const i=n.enter("list"),a=n.bulletCurrent;let l=e.ordered?AF(n):hy(n);const u=e.ordered?l==="."?")":".":NF(n);let c=t&&n.bulletLastUsed?l===n.bulletLastUsed:!1;if(!e.ordered){const d=e.children?e.children[0]:void 0;if((l==="*"||l==="-")&&d&&(!d.children||!d.children[0])&&n.stack[n.stack.length-1]==="list"&&n.stack[n.stack.length-2]==="listItem"&&n.stack[n.stack.length-3]==="list"&&n.stack[n.stack.length-4]==="listItem"&&n.indexStack[n.indexStack.length-1]===0&&n.indexStack[n.indexStack.length-2]===0&&n.indexStack[n.indexStack.length-3]===0&&(c=!0),fO(n)===l&&d){let h=-1;for(;++h-1?t.start:1)+(n.options.incrementListMarker===!1?0:t.children.indexOf(e))+a);let l=a.length+1;(i==="tab"||i==="mixed"&&(t&&t.type==="list"&&t.spread||e.spread))&&(l=Math.ceil(l/4)*4);const u=n.createTracker(r);u.move(a+" ".repeat(l-a.length)),u.shift(l);const c=n.enter("listItem"),f=n.indentLines(n.containerFlow(e,u.current()),d);return c(),f;function d(h,g,y){return g?(y?"":" ".repeat(l))+h:(y?a:a+" ".repeat(l-a.length))+h}}function DF(e,t,n,r){const i=n.enter("paragraph"),a=n.enter("phrasing"),l=n.containerPhrasing(e,r);return a(),i(),l}const MF=qf(["break","delete","emphasis","footnote","footnoteReference","image","imageReference","inlineCode","inlineMath","link","linkReference","mdxJsxTextElement","mdxTextExpression","strong","text","textDirective"]);function LF(e,t,n,r){return(e.children.some(function(l){return MF(l)})?n.containerPhrasing:n.containerFlow).call(n,e,r)}function RF(e){const t=e.options.strong||"*";if(t!=="*"&&t!=="_")throw new Error("Cannot serialize strong with `"+t+"` for `options.strong`, expected `*`, or `_`");return t}dO.peek=zF;function dO(e,t,n,r){const i=RF(n),a=n.enter("strong"),l=n.createTracker(r),u=l.move(i+i);let c=l.move(n.containerPhrasing(e,{after:i,before:u,...l.current()}));const f=c.charCodeAt(0),d=Uc(r.before.charCodeAt(r.before.length-1),f,i);d.inside&&(c=cs(f)+c.slice(1));const h=c.charCodeAt(c.length-1),g=Uc(r.after.charCodeAt(0),h,i);g.inside&&(c=c.slice(0,-1)+cs(h));const y=l.move(i+i);return a(),n.attentionEncodeSurroundingInfo={after:g.outside,before:d.outside},u+c+y}function zF(e,t,n){return n.options.strong||"*"}function $F(e,t,n,r){return n.safe(e.value,r)}function FF(e){const t=e.options.ruleRepetition||3;if(t<3)throw new Error("Cannot serialize rules with repetition `"+t+"` for `options.ruleRepetition`, expected `3` or more");return t}function BF(e,t,n){const r=(fO(n)+(n.options.ruleSpaces?" ":"")).repeat(FF(n));return n.options.ruleSpaces?r.slice(0,-1):r}const pO={blockquote:cF,break:U1,code:gF,definition:yF,emphasis:rO,hardBreak:U1,heading:kF,html:iO,image:aO,imageReference:oO,inlineCode:lO,link:uO,linkReference:cO,list:_F,listItem:TF,paragraph:DF,root:LF,strong:dO,text:$F,thematicBreak:BF};function UF(){return{enter:{table:WF,tableData:W1,tableHeader:W1,tableRow:HF},exit:{codeText:VF,table:qF,tableData:Yh,tableHeader:Yh,tableRow:Yh}}}function WF(e){const t=e._align;this.enter({type:"table",align:t.map(function(n){return n==="none"?null:n}),children:[]},e),this.data.inTable=!0}function qF(e){this.exit(e),this.data.inTable=void 0}function HF(e){this.enter({type:"tableRow",children:[]},e)}function Yh(e){this.exit(e)}function W1(e){this.enter({type:"tableCell",children:[]},e)}function VF(e){let t=this.resume();this.data.inTable&&(t=t.replace(/\\([\\|])/g,KF));const n=this.stack[this.stack.length-1];n.type,n.value=t,this.exit(e)}function KF(e,t){return t==="|"?t:e}function GF(e){const t=e||{},n=t.tableCellPadding,r=t.tablePipeAlign,i=t.stringLength,a=n?" ":"|";return{unsafe:[{character:"\r",inConstruct:"tableCell"},{character:` +`,inConstruct:"tableCell"},{atBreak:!0,character:"|",after:"[ :-]"},{character:"|",inConstruct:"tableCell"},{atBreak:!0,character:":",after:"-"},{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{inlineCode:g,table:l,tableCell:c,tableRow:u}};function l(y,x,S,w){return f(d(y,S,w),y.align)}function u(y,x,S,w){const P=h(y,S,w),C=f([P]);return C.slice(0,C.indexOf(` +`))}function c(y,x,S,w){const P=S.enter("tableCell"),C=S.enter("phrasing"),O=S.containerPhrasing(y,{...w,before:a,after:a});return C(),P(),O}function f(y,x){return sF(y,{align:x,alignDelimiters:r,padding:n,stringLength:i})}function d(y,x,S){const w=y.children;let P=-1;const C=[],O=x.enter("table");for(;++P0&&!n&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),n}const dB={tokenize:bB,partial:!0};function pB(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:vB,continuation:{tokenize:yB},exit:xB}},text:{91:{name:"gfmFootnoteCall",tokenize:gB},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:hB,resolveTo:mB}}}}function hB(e,t,n){const r=this;let i=r.events.length;const a=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let l;for(;i--;){const c=r.events[i][1];if(c.type==="labelImage"){l=c;break}if(c.type==="gfmFootnoteCall"||c.type==="labelLink"||c.type==="label"||c.type==="image"||c.type==="link")break}return u;function u(c){if(!l||!l._balanced)return n(c);const f=pr(r.sliceSerialize({start:l.end,end:r.now()}));return f.codePointAt(0)!==94||!a.includes(f.slice(1))?n(c):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(c),e.exit("gfmFootnoteCallLabelMarker"),t(c))}}function mB(e,t){let n=e.length;for(;n--;)if(e[n][1].type==="labelImage"&&e[n][0]==="enter"){e[n][1];break}e[n+1][1].type="data",e[n+3][1].type="gfmFootnoteCallLabelMarker";const r={type:"gfmFootnoteCall",start:Object.assign({},e[n+3][1].start),end:Object.assign({},e[e.length-1][1].end)},i={type:"gfmFootnoteCallMarker",start:Object.assign({},e[n+3][1].end),end:Object.assign({},e[n+3][1].end)};i.end.column++,i.end.offset++,i.end._bufferIndex++;const a={type:"gfmFootnoteCallString",start:Object.assign({},i.end),end:Object.assign({},e[e.length-1][1].start)},l={type:"chunkString",contentType:"string",start:Object.assign({},a.start),end:Object.assign({},a.end)},u=[e[n+1],e[n+2],["enter",r,t],e[n+3],e[n+4],["enter",i,t],["exit",i,t],["enter",a,t],["enter",l,t],["exit",l,t],["exit",a,t],e[e.length-2],e[e.length-1],["exit",r,t]];return e.splice(n,e.length-n+1,...u),e}function gB(e,t,n){const r=this,i=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let a=0,l;return u;function u(h){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(h),e.exit("gfmFootnoteCallLabelMarker"),c}function c(h){return h!==94?n(h):(e.enter("gfmFootnoteCallMarker"),e.consume(h),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",f)}function f(h){if(a>999||h===93&&!l||h===null||h===91||Xe(h))return n(h);if(h===93){e.exit("chunkString");const g=e.exit("gfmFootnoteCallString");return i.includes(pr(r.sliceSerialize(g)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(h),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),t):n(h)}return Xe(h)||(l=!0),a++,e.consume(h),h===92?d:f}function d(h){return h===91||h===92||h===93?(e.consume(h),a++,f):f(h)}}function vB(e,t,n){const r=this,i=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let a,l=0,u;return c;function c(x){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(x),e.exit("gfmFootnoteDefinitionLabelMarker"),f}function f(x){return x===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(x),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",d):n(x)}function d(x){if(l>999||x===93&&!u||x===null||x===91||Xe(x))return n(x);if(x===93){e.exit("chunkString");const S=e.exit("gfmFootnoteDefinitionLabelString");return a=pr(r.sliceSerialize(S)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(x),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),g}return Xe(x)||(u=!0),l++,e.consume(x),x===92?h:d}function h(x){return x===91||x===92||x===93?(e.consume(x),l++,d):d(x)}function g(x){return x===58?(e.enter("definitionMarker"),e.consume(x),e.exit("definitionMarker"),i.includes(a)||i.push(a),$e(e,y,"gfmFootnoteDefinitionWhitespace")):n(x)}function y(x){return t(x)}}function yB(e,t,n){return e.check(Os,t,e.attempt(dB,t,n))}function xB(e){e.exit("gfmFootnoteDefinition")}function bB(e,t,n){const r=this;return $e(e,i,"gfmFootnoteDefinitionIndent",5);function i(a){const l=r.events[r.events.length-1];return l&&l[1].type==="gfmFootnoteDefinitionIndent"&&l[2].sliceSerialize(l[1],!0).length===4?t(a):n(a)}}function wB(e){let n=(e||{}).singleTilde;const r={name:"strikethrough",tokenize:a,resolveAll:i};return n==null&&(n=!0),{text:{126:r},insideSpan:{null:[r]},attentionMarkers:{null:[126]}};function i(l,u){let c=-1;for(;++c1?c(x):(l.consume(x),h++,y);if(h<2&&!n)return c(x);const w=l.exit("strikethroughSequenceTemporary"),P=_o(x);return w._open=!P||P===2&&!!S,w._close=!S||S===2&&!!P,u(x)}}}class kB{constructor(){this.map=[]}add(t,n,r){SB(this,t,n,r)}consume(t){if(this.map.sort(function(a,l){return a[0]-l[0]}),this.map.length===0)return;let n=this.map.length;const r=[];for(;n>0;)n-=1,r.push(t.slice(this.map[n][0]+this.map[n][1]),this.map[n][2]),t.length=this.map[n][0];r.push(t.slice()),t.length=0;let i=r.pop();for(;i;){for(const a of i)t.push(a);i=r.pop()}this.map.length=0}}function SB(e,t,n,r){let i=0;if(!(n===0&&r.length===0)){for(;i-1;){const Y=r.events[W][1].type;if(Y==="lineEnding"||Y==="linePrefix")W--;else break}const D=W>-1?r.events[W][1].type:null,Z=D==="tableHead"||D==="tableRow"?E:c;return Z===E&&r.parser.lazy[r.now().line]?n(R):Z(R)}function c(R){return e.enter("tableHead"),e.enter("tableRow"),f(R)}function f(R){return R===124||(l=!0,a+=1),d(R)}function d(R){return R===null?n(R):Oe(R)?a>1?(a=0,r.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(R),e.exit("lineEnding"),y):n(R):Re(R)?$e(e,d,"whitespace")(R):(a+=1,l&&(l=!1,i+=1),R===124?(e.enter("tableCellDivider"),e.consume(R),e.exit("tableCellDivider"),l=!0,d):(e.enter("data"),h(R)))}function h(R){return R===null||R===124||Xe(R)?(e.exit("data"),d(R)):(e.consume(R),R===92?g:h)}function g(R){return R===92||R===124?(e.consume(R),h):h(R)}function y(R){return r.interrupt=!1,r.parser.lazy[r.now().line]?n(R):(e.enter("tableDelimiterRow"),l=!1,Re(R)?$e(e,x,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(R):x(R))}function x(R){return R===45||R===58?w(R):R===124?(l=!0,e.enter("tableCellDivider"),e.consume(R),e.exit("tableCellDivider"),S):I(R)}function S(R){return Re(R)?$e(e,w,"whitespace")(R):w(R)}function w(R){return R===58?(a+=1,l=!0,e.enter("tableDelimiterMarker"),e.consume(R),e.exit("tableDelimiterMarker"),P):R===45?(a+=1,P(R)):R===null||Oe(R)?A(R):I(R)}function P(R){return R===45?(e.enter("tableDelimiterFiller"),C(R)):I(R)}function C(R){return R===45?(e.consume(R),C):R===58?(l=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(R),e.exit("tableDelimiterMarker"),O):(e.exit("tableDelimiterFiller"),O(R))}function O(R){return Re(R)?$e(e,A,"whitespace")(R):A(R)}function A(R){return R===124?x(R):R===null||Oe(R)?!l||i!==a?I(R):(e.exit("tableDelimiterRow"),e.exit("tableHead"),t(R)):I(R)}function I(R){return n(R)}function E(R){return e.enter("tableRow"),L(R)}function L(R){return R===124?(e.enter("tableCellDivider"),e.consume(R),e.exit("tableCellDivider"),L):R===null||Oe(R)?(e.exit("tableRow"),t(R)):Re(R)?$e(e,L,"whitespace")(R):(e.enter("data"),F(R))}function F(R){return R===null||R===124||Xe(R)?(e.exit("data"),L(R)):(e.consume(R),R===92?H:F)}function H(R){return R===92||R===124?(e.consume(R),F):F(R)}}function CB(e,t){let n=-1,r=!0,i=0,a=[0,0,0,0],l=[0,0,0,0],u=!1,c=0,f,d,h;const g=new kB;for(;++nn[2]+1){const x=n[2]+1,S=n[3]-n[2]-1;e.add(x,S,[])}}e.add(n[3]+1,0,[["exit",h,t]])}return i!==void 0&&(a.end=Object.assign({},wo(t.events,i)),e.add(i,0,[["exit",a,t]]),a=void 0),a}function H1(e,t,n,r,i){const a=[],l=wo(t.events,n);i&&(i.end=Object.assign({},l),a.push(["exit",i,t])),r.end=Object.assign({},l),a.push(["exit",r,t]),e.add(n+1,0,a)}function wo(e,t){const n=e[t],r=n[0]==="enter"?"start":"end";return n[1][r]}const OB={name:"tasklistCheck",tokenize:AB};function NB(){return{text:{91:OB}}}function AB(e,t,n){const r=this;return i;function i(c){return r.previous!==null||!r._gfmTasklistFirstContentOfListItem?n(c):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(c),e.exit("taskListCheckMarker"),a)}function a(c){return Xe(c)?(e.enter("taskListCheckValueUnchecked"),e.consume(c),e.exit("taskListCheckValueUnchecked"),l):c===88||c===120?(e.enter("taskListCheckValueChecked"),e.consume(c),e.exit("taskListCheckValueChecked"),l):n(c)}function l(c){return c===93?(e.enter("taskListCheckMarker"),e.consume(c),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),u):n(c)}function u(c){return Oe(c)?t(c):Re(c)?e.check({tokenize:_B},t,n)(c):n(c)}}function _B(e,t,n){return $e(e,r,"whitespace");function r(i){return i===null?n(i):t(i)}}function IB(e){return IC([rB(),pB(),wB(e),PB(),NB()])}const TB={};function DB(e){const t=this,n=e||TB,r=t.data(),i=r.micromarkExtensions||(r.micromarkExtensions=[]),a=r.fromMarkdownExtensions||(r.fromMarkdownExtensions=[]),l=r.toMarkdownExtensions||(r.toMarkdownExtensions=[]);i.push(IB(n)),a.push(JF()),l.push(eB(n))}function MB({content:e}){return m.jsx("div",{className:"spec-markdown",children:m.jsx(w$,{remarkPlugins:[DB],components:{h3:({children:t})=>m.jsx("h3",{className:"text-lg font-semibold mt-6 mb-3 pb-2 border-b border-base-300/50 first:mt-0",children:t}),h4:({children:t})=>m.jsx("h4",{className:"text-base font-medium mt-4 mb-2 text-base-content/90",children:t}),p:({children:t})=>m.jsx("p",{className:"text-sm text-base-content/80 mb-3 leading-relaxed",children:t}),ul:({children:t})=>m.jsx("ul",{className:"text-sm space-y-1.5 mb-4 ml-1",children:t}),ol:({children:t})=>m.jsx("ol",{className:"text-sm space-y-1.5 mb-4 ml-1 list-decimal list-inside",children:t}),li:({children:t})=>m.jsxs("li",{className:"text-base-content/80 flex items-start gap-2",children:[m.jsx("span",{className:"text-primary mt-0.5 text-xs select-none",children:"▸"}),m.jsx("span",{className:"flex-1",children:t})]}),code:({className:t,children:n})=>t?m.jsx("code",{className:"block bg-base-300 p-3 rounded-lg text-xs font-mono overflow-x-auto mb-4 border border-base-content/10",children:n}):m.jsx("code",{className:"bg-base-300 text-primary px-1.5 py-0.5 rounded text-xs font-mono",children:n}),pre:({children:t})=>m.jsx("pre",{className:"bg-base-300 p-3 rounded-lg text-xs font-mono overflow-x-auto mb-4 border border-base-content/10",children:t}),strong:({children:t})=>m.jsx("strong",{className:"font-semibold text-base-content",children:t}),table:({children:t})=>m.jsx("div",{className:"overflow-x-auto mb-4",children:m.jsx("table",{className:"table table-sm w-full",children:t})}),thead:({children:t})=>m.jsx("thead",{className:"bg-base-200",children:t}),th:({children:t})=>m.jsx("th",{className:"text-left text-xs font-medium text-base-content/70 p-2",children:t}),td:({children:t})=>m.jsx("td",{className:"text-sm p-2 border-t border-base-300/50",children:t}),blockquote:({children:t})=>m.jsx("blockquote",{className:"border-l-4 border-primary/50 pl-4 py-1 my-3 text-sm text-base-content/70 italic",children:t}),hr:()=>m.jsx("hr",{className:"my-6 border-base-300"})},children:e})})}const kO={SPEC_REFRESH_INTERVAL_MS:5e3},LB={A:"lucide:file-plus",M:"lucide:file-edit",D:"lucide:file-minus"},RB={A:"text-success",M:"text-warning",D:"text-error"};function zB(){const[e,t]=k.useState(null),[n,r]=k.useState([]),[i,a]=k.useState(!0),[l,u]=k.useState(!1),[c,f]=k.useState(!1),[d,h]=k.useState(null),g=k.useCallback(async()=>{try{const C=await(await fetch("/api/worktree/status")).json();if(t(C),C.active){const A=await(await fetch("/api/worktree/diff")).json();r(A.files||[])}else r([])}catch{t(null)}finally{a(!1)}},[]);k.useEffect(()=>{g();const P=setInterval(g,kO.SPEC_REFRESH_INTERVAL_MS);return()=>clearInterval(P)},[g]);const y=async()=>{var P;if(confirm("Sync worktree changes to the base branch via squash merge?")){u(!0),h(null);try{const O=await(await fetch("/api/worktree/sync",{method:"POST"})).json();O.success?(h(`Synced ${O.files_changed} files — commit ${(P=O.commit_hash)==null?void 0:P.slice(0,7)}`),await g()):h(`Sync failed: ${O.error}`)}catch{h("Sync failed")}finally{u(!1)}}},x=async()=>{if(confirm("Discard all worktree changes? This cannot be undone.")){f(!0),h(null);try{const C=await(await fetch("/api/worktree/discard",{method:"POST"})).json();C.success?(h("Worktree discarded"),await g()):h(`Discard failed: ${C.error}`)}catch{h("Discard failed")}finally{f(!1)}}};if(i||!(e!=null&&e.active))return null;const S=n.reduce((P,C)=>P+C.additions,0),w=n.reduce((P,C)=>P+C.deletions,0);return m.jsx(wt,{children:m.jsxs(kt,{className:"p-4",children:[m.jsxs("div",{className:"flex items-center justify-between mb-3",children:[m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(se,{icon:"lucide:git-branch",size:16,className:"text-primary"}),m.jsx("span",{className:"text-sm font-medium",children:"Worktree Isolation"}),m.jsx(Te,{variant:"info",size:"xs",children:e.branch})]}),m.jsxs("div",{className:"flex items-center gap-1.5",children:[m.jsxs(Yt,{variant:"primary",size:"xs",onClick:y,disabled:l||c||n.length===0,children:[l?m.jsx(Xi,{size:"xs"}):m.jsx(se,{icon:"lucide:git-merge",size:12}),m.jsx("span",{className:"ml-1",children:"Sync"})]}),m.jsxs(Yt,{variant:"ghost",size:"xs",onClick:x,disabled:l||c,children:[c?m.jsx(Xi,{size:"xs"}):m.jsx(se,{icon:"lucide:trash-2",size:12,className:"text-error"}),m.jsx("span",{className:"ml-1",children:"Discard"})]})]})]}),m.jsxs("div",{className:"flex items-center gap-3 text-xs text-base-content/60 mb-2",children:[m.jsxs("span",{children:[n.length," file",n.length!==1?"s":""," changed"]}),S>0&&m.jsxs("span",{className:"text-success",children:["+",S]}),w>0&&m.jsxs("span",{className:"text-error",children:["-",w]}),m.jsxs("span",{className:"ml-auto",children:["base: ",m.jsx("span",{className:"font-mono text-base-content/80",children:e.baseBranch})]})]}),n.length>0&&m.jsx("div",{className:"space-y-0.5 max-h-40 overflow-y-auto",children:n.map(P=>m.jsxs("div",{className:"flex items-center gap-2 text-xs py-0.5",children:[m.jsx(se,{icon:LB[P.status]||"lucide:file",size:12,className:RB[P.status]||"text-base-content/50"}),m.jsx("span",{className:"font-mono text-base-content/80 truncate",children:P.path}),m.jsxs("span",{className:"ml-auto flex items-center gap-1 flex-shrink-0",children:[P.additions>0&&m.jsxs("span",{className:"text-success",children:["+",P.additions]}),P.deletions>0&&m.jsxs("span",{className:"text-error",children:["-",P.deletions]})]})]},P.path))}),d&&m.jsx("div",{className:`mt-2 text-xs px-2 py-1 rounded ${d.includes("failed")?"bg-error/10 text-error":"bg-success/10 text-success"}`,children:d})]})})}const V1={PENDING:{color:"warning",icon:"lucide:clock",label:"In Progress"},COMPLETE:{color:"info",icon:"lucide:check-circle",label:"Complete"},VERIFIED:{color:"success",icon:"lucide:shield-check",label:"Verified"}};function $B(e){const t=e.match(/^#\s+(.+)$/m),n=t?t[1].replace(" Implementation Plan",""):"Untitled",r=e.match(/\*\*Goal:\*\*\s*(.+?)(?:\n|$)/),i=r?r[1]:"",a=[],l=/^- \[(x| )\] Task (\d+):\s*(.+)$/gm;let u;for(;(u=l.exec(e))!==null;)a.push({number:parseInt(u[2],10),title:u[3],completed:u[1]==="x"});const c=e.match(/## Implementation Tasks\n([\s\S]*?)(?=\n## [^#]|$)/),f=c?c[1].trim():"";return{title:n,goal:i,tasks:a,implementationSection:f}}function FB(){const{selectedProject:e}=za(),[t,n]=k.useState([]),[r,i]=k.useState(null),[a,l]=k.useState(null),[u,c]=k.useState(!0),[f,d]=k.useState(!1),[h,g]=k.useState(null),[y,x]=k.useState(!1),S=e?`?project=${encodeURIComponent(e)}`:"",w=k.useRef(e);w.current!==e&&(w.current=e,i(null),l(null),g(null),c(!0));const P=k.useCallback(async()=>{var D;try{const Y=await(await fetch(`/api/plans/active${S}`)).json();if(n(Y.specs||[]),((D=Y.specs)==null?void 0:D.length)>0&&!r){const Q=Y.specs.find(pe=>pe.status==="PENDING"||pe.status==="COMPLETE");i(Q?Q.filePath:Y.specs[0].filePath)}}catch(Z){g("Failed to load specs"),console.error("Failed to load specs:",Z)}finally{c(!1)}},[r,S]),C=k.useCallback(async(D,Z=!1)=>{Z||d(!0),g(null);try{const Y=await fetch(`/api/plan/content?path=${encodeURIComponent(D)}${e?`&project=${encodeURIComponent(e)}`:""}`);if(!Y.ok)throw new Error("Failed to load spec content");const Q=await Y.json();l(Q)}catch(Y){g("Failed to load spec content"),console.error("Failed to load spec content:",Y)}finally{Z||d(!1)}},[e]),O=k.useCallback(async D=>{if(confirm(`Delete spec "${D.split("/").pop()}"? This cannot be undone.`)){x(!0);try{if(!(await fetch(`/api/plan?path=${encodeURIComponent(D)}`,{method:"DELETE"})).ok)throw new Error("Failed to delete spec");i(null),l(null),await P()}catch(Z){g("Failed to delete spec"),console.error("Failed to delete spec:",Z)}finally{x(!1)}}},[P]);if(k.useEffect(()=>{P();const D=setInterval(()=>{P(),r&&C(r,!0)},kO.SPEC_REFRESH_INTERVAL_MS);return()=>clearInterval(D)},[P,C,r]),k.useEffect(()=>{r&&C(r)},[r,C]),u)return m.jsx("div",{className:"flex items-center justify-center h-64",children:m.jsx(Xi,{size:"lg"})});if(t.length===0)return m.jsx("div",{className:"space-y-6",children:m.jsx(wt,{children:m.jsx(kt,{children:m.jsxs("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[m.jsx(se,{icon:"lucide:file-text",size:48,className:"text-base-content/30 mb-4"}),m.jsx("h3",{className:"text-lg font-medium mb-2",children:"No Active Specs"}),m.jsxs("p",{className:"text-base-content/60 max-w-md",children:["Use ",m.jsx("code",{className:"text-primary bg-base-300 px-1 rounded",children:"/spec"})," in Claude Pilot to start a spec-driven development workflow."]})]})})})});const A=t.filter(D=>D.status==="PENDING"||D.status==="COMPLETE"),I=t.filter(D=>D.status==="VERIFIED"),E=t.find(D=>D.filePath===r),L=E?V1[E.status]:null,F=a?$B(a.content):null,H=(F==null?void 0:F.tasks.filter(D=>D.completed).length)||0,R=(F==null?void 0:F.tasks.length)||0,W=R>0?H/R*100:0;return m.jsxs("div",{className:"space-y-6",children:[m.jsxs("div",{className:"flex items-center gap-3 flex-wrap",children:[m.jsx("h1",{className:"text-2xl font-bold mr-auto",children:"Specifications"}),A.length>0&&m.jsx("div",{role:"tablist",className:"flex items-center gap-1.5 flex-shrink-0",children:A.map(D=>{const Z=r===D.filePath;return m.jsxs("button",{role:"tab","aria-selected":Z,className:`px-3 py-1.5 rounded-lg text-xs font-medium border transition-colors cursor-pointer flex items-center gap-1.5 ${Z?"bg-primary/10 border-primary/30 text-primary":"bg-base-200/60 border-base-300/50 text-base-content/70 hover:bg-base-200"}`,onClick:()=>i(D.filePath),children:[m.jsx(se,{icon:V1[D.status].icon,size:12,className:D.status==="PENDING"?"text-warning":"text-info"}),m.jsx("span",{className:"truncate max-w-32",children:D.name}),D.total>0&&m.jsxs("span",{className:"text-[10px] opacity-60",children:[D.completed,"/",D.total]})]},D.filePath)})}),I.length>0&&m.jsxs("select",{className:"select select-bordered select-sm",value:(E==null?void 0:E.status)==="VERIFIED"&&r||"",onChange:D=>i(D.target.value),children:[m.jsxs("option",{value:"",disabled:!0,children:["Archived (",I.length,")"]}),I.map(D=>{const Z=D.modifiedAt?new Date(D.modifiedAt):null,Y=Z?Z.toLocaleDateString(void 0,{month:"short",day:"numeric"}):"";return m.jsxs("option",{value:D.filePath,children:[D.name,Y?` - ${Y}`:""]},D.filePath)})]}),r&&m.jsx(Ar,{text:"Delete spec",position:"bottom",children:m.jsx(Yt,{variant:"ghost",size:"sm",onClick:()=>O(r),disabled:y,children:m.jsx(se,{icon:"lucide:trash-2",size:16,className:"text-error"})})})]}),f?m.jsx("div",{className:"flex items-center justify-center py-12",children:m.jsx(Xi,{size:"md"})}):h?m.jsx(wt,{children:m.jsx(kt,{children:m.jsxs("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[m.jsx(se,{icon:"lucide:alert-circle",size:48,className:"text-error mb-4"}),m.jsx("p",{className:"text-error",children:h})]})})}):F?m.jsxs(m.Fragment,{children:[m.jsx(wt,{children:m.jsxs(kt,{className:"p-5",children:[m.jsxs("div",{className:"flex items-start justify-between mb-4",children:[m.jsxs("div",{children:[m.jsx("h2",{className:"text-xl font-semibold",children:F.title}),F.goal&&m.jsx("p",{className:"text-base-content/60 text-sm mt-1",children:F.goal})]}),L&&m.jsxs(Te,{variant:L.color,size:"sm",className:"whitespace-nowrap",children:[m.jsx(se,{icon:L.icon,size:12,className:"mr-1"}),L.label]})]}),m.jsxs("div",{className:"mb-4",children:[m.jsxs("div",{className:"flex justify-between text-sm mb-1.5",children:[m.jsx("span",{className:"text-base-content/70",children:"Progress"}),m.jsxs("span",{className:"font-medium",children:[H," / ",R," tasks"]})]}),m.jsx(nM,{value:W,max:100,variant:"primary"})]}),m.jsx("div",{className:"space-y-2",children:F.tasks.map(D=>m.jsxs("div",{className:`flex items-center gap-3 p-2 rounded-lg ${D.completed?"bg-success/10":"bg-base-200/50"}`,children:[m.jsx("div",{className:`w-5 h-5 rounded-md flex items-center justify-center ${D.completed?"bg-success text-success-content":"bg-base-300"}`,children:D.completed?m.jsx(se,{icon:"lucide:check",size:14}):m.jsx("span",{className:"text-xs text-base-content/50",children:D.number})}),m.jsxs("span",{className:`text-sm ${D.completed?"text-base-content/70":"text-base-content"}`,children:["Task ",D.number,": ",D.title]})]},D.number))}),E&&m.jsxs("div",{className:"flex items-center gap-4 mt-4 pt-4 border-t border-base-300/50 text-xs text-base-content/50",children:[E.iterations>0&&m.jsxs("div",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:repeat",size:12}),m.jsxs("span",{children:[E.iterations," iteration",E.iterations>1?"s":""]})]}),!E.approved&&E.status==="PENDING"&&m.jsx(Te,{variant:"warning",size:"xs",children:"Awaiting Approval"}),E.worktree?m.jsxs("div",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:git-branch",size:12}),m.jsx("span",{children:"Worktree"})]}):m.jsxs("div",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:git-commit",size:12}),m.jsx("span",{children:"Direct"})]}),E.modifiedAt&&m.jsxs("div",{className:"flex items-center gap-1",children:[m.jsx(se,{icon:"lucide:calendar",size:12}),m.jsx("span",{children:new Date(E.modifiedAt).toLocaleString(void 0,{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})})]}),m.jsxs("div",{className:"flex items-center gap-1 ml-auto",children:[m.jsx(se,{icon:"lucide:file",size:12}),m.jsx("span",{className:"font-mono",children:E.filePath.split("/").pop()})]})]})]})}),m.jsx(zB,{}),F.implementationSection&&m.jsx(wt,{children:m.jsxs(kt,{className:"p-6",children:[m.jsxs("h3",{className:"text-lg font-semibold mb-4 flex items-center gap-2",children:[m.jsx(se,{icon:"lucide:list-tree",size:18}),"Implementation Details"]}),m.jsx(MB,{content:F.implementationSection})]})})]}):null]})}const BB=300*1e3;function UB(){const[e,t]=k.useState([]),[n,r]=k.useState([]),[i,a]=k.useState([]),[l,u]=k.useState(!0),[c,f]=k.useState(null),[d,h]=k.useState(!0),[g,y]=k.useState(!0),x=k.useCallback(async()=>{var S,w;try{const[P,C,O]=await Promise.all([fetch("/api/usage/daily"),fetch("/api/usage/monthly"),fetch("/api/usage/models")]),[A,I,E]=await Promise.all([P.json(),C.json(),O.json()]);if(A.available===!1){h(!1),y(!1),t([]),r([]),a([]),f(null);return}h(!0);const L=(((S=A.daily)==null?void 0:S.length)??0)>0||(((w=I.monthly)==null?void 0:w.length)??0)>0;y(L),t(A.daily||[]),r(I.monthly||[]),a(E.models||[]),f(null)}catch(P){f(P instanceof Error?P.message:"Failed to load usage data"),h(!0),y(!1)}finally{u(!1)}},[]);return k.useEffect(()=>{x();const S=setInterval(x,BB);return()=>{clearInterval(S)}},[x]),{daily:e,monthly:n,models:i,isLoading:l,error:c,available:d,dataExists:g}}function Io(e){return e<1e3?e.toString():e<1e6?`${(e/1e3).toFixed(1)}k`:`${(e/1e6).toFixed(1)}M`}function WB({daily:e}){const t=e.length>0?e[e.length-1]:null,n=(t==null?void 0:t.totalCost)||0,r=(t==null?void 0:t.totalTokens)||0,i=e.filter(d=>d.totalCost>0||d.totalTokens>0),a=i.reduce((d,h)=>d+(h.totalCost||0),0),l=i.reduce((d,h)=>d+(h.totalTokens||0),0),u=i.length||1,c=a/u,f=Math.round(l/u);return m.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4",children:[m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Daily Cost"}),m.jsxs("div",{className:"stat-value text-primary",children:[n.toFixed(2),"$"]}),m.jsx("div",{className:"stat-desc",children:"Today"})]})}),m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Avg Daily Cost"}),m.jsxs("div",{className:"stat-value",children:["⌀ ",c.toFixed(2),"$"]}),m.jsxs("div",{className:"stat-desc",children:["Last ",u," working days"]})]})}),m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Daily Tokens"}),m.jsx("div",{className:"stat-value text-primary",children:Io(r)}),m.jsx("div",{className:"stat-desc",children:"Today"})]})}),m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Avg Daily Tokens"}),m.jsxs("div",{className:"stat-value",children:["⌀ ",Io(f)]}),m.jsxs("div",{className:"stat-desc",children:["Last ",u," working days"]})]})})]})}function SO(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var i=e.length;for(t=0;t{var{children:n,width:r,height:i,viewBox:a,className:l,style:u,title:c,desc:f}=e,d=YB(e,GB),h=a||{width:r,height:i,x:0,y:0},g=Ge("recharts-surface",l);return k.createElement("svg",Kg({},dn(d),{className:g,width:r,height:i,style:u,viewBox:"".concat(h.x," ").concat(h.y," ").concat(h.width," ").concat(h.height),ref:t}),k.createElement("title",null,c),k.createElement("desc",null,f),n)}),QB=["children","className"];function Gg(){return Gg=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{children:n,className:r}=e,i=ZB(e,QB),a=Ge("recharts-layer",r);return k.createElement("g",Gg({className:a},dn(i),{ref:t}),n)}),CO=KE(),e5=k.createContext(null);function Je(e){return function(){return e}}const OO=Math.cos,Wc=Math.sin,xr=Math.sqrt,qc=Math.PI,Vf=2*qc,Yg=Math.PI,Xg=2*Yg,ya=1e-6,t5=Xg-ya;function NO(e){this._+=e[0];for(let t=1,n=e.length;t=0))throw new Error(`invalid digits: ${e}`);if(t>15)return NO;const n=10**t;return function(r){this._+=r[0];for(let i=1,a=r.length;iya)if(!(Math.abs(h*c-f*d)>ya)||!a)this._append`L${this._x1=t},${this._y1=n}`;else{let y=r-l,x=i-u,S=c*c+f*f,w=y*y+x*x,P=Math.sqrt(S),C=Math.sqrt(g),O=a*Math.tan((Yg-Math.acos((S+g-w)/(2*P*C)))/2),A=O/C,I=O/P;Math.abs(A-1)>ya&&this._append`L${t+A*d},${n+A*h}`,this._append`A${a},${a},0,0,${+(h*y>d*x)},${this._x1=t+I*c},${this._y1=n+I*f}`}}arc(t,n,r,i,a,l){if(t=+t,n=+n,r=+r,l=!!l,r<0)throw new Error(`negative radius: ${r}`);let u=r*Math.cos(i),c=r*Math.sin(i),f=t+u,d=n+c,h=1^l,g=l?i-a:a-i;this._x1===null?this._append`M${f},${d}`:(Math.abs(this._x1-f)>ya||Math.abs(this._y1-d)>ya)&&this._append`L${f},${d}`,r&&(g<0&&(g=g%Xg+Xg),g>t5?this._append`A${r},${r},0,1,${h},${t-u},${n-c}A${r},${r},0,1,${h},${this._x1=f},${this._y1=d}`:g>ya&&this._append`A${r},${r},0,${+(g>=Yg)},${h},${this._x1=t+r*Math.cos(a)},${this._y1=n+r*Math.sin(a)}`)}rect(t,n,r,i){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+n}h${r=+r}v${+i}h${-r}Z`}toString(){return this._}}function vy(e){let t=3;return e.digits=function(n){if(!arguments.length)return t;if(n==null)t=null;else{const r=Math.floor(n);if(!(r>=0))throw new RangeError(`invalid digits: ${n}`);t=r}return e},()=>new r5(t)}function yy(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function AO(e){this._context=e}AO.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t);break}}};function Kf(e){return new AO(e)}function _O(e){return e[0]}function IO(e){return e[1]}function TO(e,t){var n=Je(!0),r=null,i=Kf,a=null,l=vy(u);e=typeof e=="function"?e:e===void 0?_O:Je(e),t=typeof t=="function"?t:t===void 0?IO:Je(t);function u(c){var f,d=(c=yy(c)).length,h,g=!1,y;for(r==null&&(a=i(y=l())),f=0;f<=d;++f)!(f=y;--x)u.point(O[x],A[x]);u.lineEnd(),u.areaEnd()}P&&(O[g]=+e(w,g,h),A[g]=+t(w,g,h),u.point(r?+r(w,g,h):O[g],n?+n(w,g,h):A[g]))}if(C)return u=null,C+""||null}function d(){return TO().defined(i).curve(l).context(a)}return f.x=function(h){return arguments.length?(e=typeof h=="function"?h:Je(+h),r=null,f):e},f.x0=function(h){return arguments.length?(e=typeof h=="function"?h:Je(+h),f):e},f.x1=function(h){return arguments.length?(r=h==null?null:typeof h=="function"?h:Je(+h),f):r},f.y=function(h){return arguments.length?(t=typeof h=="function"?h:Je(+h),n=null,f):t},f.y0=function(h){return arguments.length?(t=typeof h=="function"?h:Je(+h),f):t},f.y1=function(h){return arguments.length?(n=h==null?null:typeof h=="function"?h:Je(+h),f):n},f.lineX0=f.lineY0=function(){return d().x(e).y(t)},f.lineY1=function(){return d().x(e).y(n)},f.lineX1=function(){return d().x(r).y(t)},f.defined=function(h){return arguments.length?(i=typeof h=="function"?h:Je(!!h),f):i},f.curve=function(h){return arguments.length?(l=h,a!=null&&(u=l(a)),f):l},f.context=function(h){return arguments.length?(h==null?a=u=null:u=l(a=h),f):a},f}class DO{constructor(t,n){this._context=t,this._x=n}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(t,n){switch(t=+t,n=+n,this._point){case 0:{this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,n,t,n):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+n)/2,t,this._y0,t,n);break}}this._x0=t,this._y0=n}}function i5(e){return new DO(e,!0)}function a5(e){return new DO(e,!1)}const xy={draw(e,t){const n=xr(t/qc);e.moveTo(n,0),e.arc(0,0,n,0,Vf)}},o5={draw(e,t){const n=xr(t/5)/2;e.moveTo(-3*n,-n),e.lineTo(-n,-n),e.lineTo(-n,-3*n),e.lineTo(n,-3*n),e.lineTo(n,-n),e.lineTo(3*n,-n),e.lineTo(3*n,n),e.lineTo(n,n),e.lineTo(n,3*n),e.lineTo(-n,3*n),e.lineTo(-n,n),e.lineTo(-3*n,n),e.closePath()}},MO=xr(1/3),l5=MO*2,s5={draw(e,t){const n=xr(t/l5),r=n*MO;e.moveTo(0,-n),e.lineTo(r,0),e.lineTo(0,n),e.lineTo(-r,0),e.closePath()}},u5={draw(e,t){const n=xr(t),r=-n/2;e.rect(r,r,n,n)}},c5=.8908130915292852,LO=Wc(qc/10)/Wc(7*qc/10),f5=Wc(Vf/10)*LO,d5=-OO(Vf/10)*LO,p5={draw(e,t){const n=xr(t*c5),r=f5*n,i=d5*n;e.moveTo(0,-n),e.lineTo(r,i);for(let a=1;a<5;++a){const l=Vf*a/5,u=OO(l),c=Wc(l);e.lineTo(c*n,-u*n),e.lineTo(u*r-c*i,c*r+u*i)}e.closePath()}},Xh=xr(3),h5={draw(e,t){const n=-xr(t/(Xh*3));e.moveTo(0,n*2),e.lineTo(-Xh*n,-n),e.lineTo(Xh*n,-n),e.closePath()}},Kn=-.5,Gn=xr(3)/2,Qg=1/xr(12),m5=(Qg/2+1)*3,g5={draw(e,t){const n=xr(t/m5),r=n/2,i=n*Qg,a=r,l=n*Qg+n,u=-a,c=l;e.moveTo(r,i),e.lineTo(a,l),e.lineTo(u,c),e.lineTo(Kn*r-Gn*i,Gn*r+Kn*i),e.lineTo(Kn*a-Gn*l,Gn*a+Kn*l),e.lineTo(Kn*u-Gn*c,Gn*u+Kn*c),e.lineTo(Kn*r+Gn*i,Kn*i-Gn*r),e.lineTo(Kn*a+Gn*l,Kn*l-Gn*a),e.lineTo(Kn*u+Gn*c,Kn*c-Gn*u),e.closePath()}};function v5(e,t){let n=null,r=vy(i);e=typeof e=="function"?e:Je(e||xy),t=typeof t=="function"?t:Je(t===void 0?64:+t);function i(){let a;if(n||(n=a=r()),e.apply(this,arguments).draw(n,+t.apply(this,arguments)),a)return n=null,a+""||null}return i.type=function(a){return arguments.length?(e=typeof a=="function"?a:Je(a),i):e},i.size=function(a){return arguments.length?(t=typeof a=="function"?a:Je(+a),i):t},i.context=function(a){return arguments.length?(n=a??null,i):n},i}function Hc(){}function Vc(e,t,n){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+n)/6)}function RO(e){this._context=e}RO.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:Vc(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:Vc(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function y5(e){return new RO(e)}function zO(e){this._context=e}zO.prototype={areaStart:Hc,areaEnd:Hc,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:Vc(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function x5(e){return new zO(e)}function $O(e){this._context=e}$O.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var n=(this._x0+4*this._x1+e)/6,r=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(n,r):this._context.moveTo(n,r);break;case 3:this._point=4;default:Vc(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function b5(e){return new $O(e)}function FO(e){this._context=e}FO.prototype={areaStart:Hc,areaEnd:Hc,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(e,t){e=+e,t=+t,this._point?this._context.lineTo(e,t):(this._point=1,this._context.moveTo(e,t))}};function w5(e){return new FO(e)}function K1(e){return e<0?-1:1}function G1(e,t,n){var r=e._x1-e._x0,i=t-e._x1,a=(e._y1-e._y0)/(r||i<0&&-0),l=(n-e._y1)/(i||r<0&&-0),u=(a*i+l*r)/(r+i);return(K1(a)+K1(l))*Math.min(Math.abs(a),Math.abs(l),.5*Math.abs(u))||0}function Y1(e,t){var n=e._x1-e._x0;return n?(3*(e._y1-e._y0)/n-t)/2:t}function Qh(e,t,n){var r=e._x0,i=e._y0,a=e._x1,l=e._y1,u=(a-r)/3;e._context.bezierCurveTo(r+u,i+u*t,a-u,l-u*n,a,l)}function Kc(e){this._context=e}Kc.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:Qh(this,this._t0,Y1(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){var n=NaN;if(e=+e,t=+t,!(e===this._x1&&t===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,Qh(this,Y1(this,n=G1(this,e,t)),n);break;default:Qh(this,this._t0,n=G1(this,e,t));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=n}}};function BO(e){this._context=new UO(e)}(BO.prototype=Object.create(Kc.prototype)).point=function(e,t){Kc.prototype.point.call(this,t,e)};function UO(e){this._context=e}UO.prototype={moveTo:function(e,t){this._context.moveTo(t,e)},closePath:function(){this._context.closePath()},lineTo:function(e,t){this._context.lineTo(t,e)},bezierCurveTo:function(e,t,n,r,i,a){this._context.bezierCurveTo(t,e,r,n,a,i)}};function k5(e){return new Kc(e)}function S5(e){return new BO(e)}function WO(e){this._context=e}WO.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var e=this._x,t=this._y,n=e.length;if(n)if(this._line?this._context.lineTo(e[0],t[0]):this._context.moveTo(e[0],t[0]),n===2)this._context.lineTo(e[1],t[1]);else for(var r=X1(e),i=X1(t),a=0,l=1;l=0;--t)i[t]=(l[t]-i[t+1])/a[t];for(a[n-1]=(e[n]+i[n-1])/2,t=0;t=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var n=this._x*(1-this._t)+e*this._t;this._context.lineTo(n,this._y),this._context.lineTo(n,t)}break}}this._x=e,this._y=t}};function P5(e){return new Gf(e,.5)}function E5(e){return new Gf(e,0)}function C5(e){return new Gf(e,1)}function Aa(e,t){if((l=e.length)>1)for(var n=1,r,i,a=e[t[0]],l,u=a.length;n=0;)n[t]=t;return n}function O5(e,t){return e[t]}function N5(e){const t=[];return t.key=e,t}function A5(){var e=Je([]),t=Zg,n=Aa,r=O5;function i(a){var l=Array.from(e.apply(this,arguments),N5),u,c=l.length,f=-1,d;for(const h of a)for(u=0,++f;u0){for(var n,r,i=0,a=e[0].length,l;i0){for(var n=0,r=e[t[0]],i,a=r.length;n0)||!((a=(i=e[t[0]]).length)>0))){for(var n=0,r=1,i,a,l;r1&&arguments[1]!==void 0?arguments[1]:z5,n=10**t,r=Math.round(e*n)/n;return Object.is(r,-0)?0:r}function ht(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r{var u=n[l-1];return typeof u=="string"?i+u+a:u!==void 0?i+Ki(u)+a:i+a},"")}var jn=e=>e===0?0:e>0?1:-1,mr=e=>typeof e=="number"&&e!=+e,_a=e=>typeof e=="string"&&e.indexOf("%")===e.length-1,ge=e=>(typeof e=="number"||e instanceof Number)&&!mr(e),Dr=e=>ge(e)||typeof e=="string",$5=0,fs=e=>{var t=++$5;return"".concat(e||"").concat(t)},gr=function(t,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(!ge(t)&&typeof t!="string")return r;var a;if(_a(t)){if(n==null)return r;var l=t.indexOf("%");a=n*parseFloat(t.slice(0,l))/100}else a=+t;return mr(a)&&(a=r),i&&n!=null&&a>n&&(a=n),a},HO=e=>{if(!Array.isArray(e))return!1;for(var t=e.length,n={},r=0;rr&&(typeof t=="function"?t(r):To(r,t))===n)}var mt=e=>e===null||typeof e>"u",_s=e=>mt(e)?e:"".concat(e.charAt(0).toUpperCase()).concat(e.slice(1));function Pn(e){return e!=null}function Fa(){}var F5=["type","size","sizeType"];function Jg(){return Jg=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var t="symbol".concat(_s(e));return KO[t]||xy},G5=(e,t,n)=>{if(t==="area")return e;switch(n){case"cross":return 5*e*e/9;case"diamond":return .5*e*e/Math.sqrt(3);case"square":return e*e;case"star":{var r=18*V5;return 1.25*e*e*(Math.tan(r)-Math.tan(r*2)*Math.tan(r)**2)}case"triangle":return Math.sqrt(3)*e*e/4;case"wye":return(21-10*Math.sqrt(3))*e*e/8;default:return Math.PI*e*e/4}},Y5=(e,t)=>{KO["symbol".concat(_s(e))]=t},GO=e=>{var{type:t="circle",size:n=64,sizeType:r="area"}=e,i=q5(e,F5),a=ak(ak({},i),{},{type:t,size:n,sizeType:r}),l="circle";typeof t=="string"&&(l=t);var u=()=>{var g=K5(l),y=v5().type(g).size(G5(n,r,l)),x=y();if(x!==null)return x},{className:c,cx:f,cy:d}=a,h=dn(a);return ge(f)&&ge(d)&&ge(n)?k.createElement("path",Jg({},h,{className:Ge("recharts-symbols",c),transform:"translate(".concat(f,", ").concat(d,")"),d:u()})):null};GO.registerSymbol=Y5;var YO=e=>"radius"in e&&"startAngle"in e&&"endAngle"in e,Sy=(e,t)=>{if(!e||typeof e=="function"||typeof e=="boolean")return null;var n=e;if(k.isValidElement(e)&&(n=e.props),typeof n!="object"&&typeof n!="function")return null;var r={};return Object.keys(n).forEach(i=>{gy(i)&&(r[i]=(a=>n[i](n,a)))}),r},X5=(e,t,n)=>r=>(e(t,n,r),null),jy=(e,t,n)=>{if(e===null||typeof e!="object"&&typeof e!="function")return null;var r=null;return Object.keys(e).forEach(i=>{var a=e[i];gy(i)&&typeof a=="function"&&(r||(r={}),r[i]=X5(a,t,n))}),r};function ok(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Q5(e){for(var t=1;t(l[u]===void 0&&r[u]!==void 0&&(l[u]=r[u]),l),n);return a}var am={},om={},lk;function t6(){return lk||(lk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r){const i=new Map;for(let a=0;a=0}e.isLength=t})(fm)),fm}var fk;function Py(){return fk||(fk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=r6();function n(r){return r!=null&&typeof r!="function"&&t.isLength(r.length)}e.isArrayLike=n})(cm)),cm}var dm={},dk;function i6(){return dk||(dk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return typeof n=="object"&&n!==null}e.isObjectLike=t})(dm)),dm}var pk;function a6(){return pk||(pk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Py(),n=i6();function r(i){return n.isObjectLike(i)&&t.isArrayLike(i)}e.isArrayLikeObject=r})(um)),um}var pm={},hm={},hk;function o6(){return hk||(hk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=ky();function n(r){return function(i){return t.get(i,r)}}e.property=n})(hm)),hm}var mm={},gm={},vm={},ym={},mk;function QO(){return mk||(mk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n!==null&&(typeof n=="object"||typeof n=="function")}e.isObject=t})(ym)),ym}var xm={},gk;function ZO(){return gk||(gk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n==null||typeof n!="object"&&typeof n!="function"}e.isPrimitive=t})(xm)),xm}var bm={},vk;function JO(){return vk||(vk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r){return n===r||Number.isNaN(n)&&Number.isNaN(r)}e.isEqualsSameValueZero=t})(bm)),bm}var yk;function l6(){return yk||(yk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=QO(),n=ZO(),r=JO();function i(d,h,g){return typeof g!="function"?i(d,h,()=>{}):a(d,h,function y(x,S,w,P,C,O){const A=g(x,S,w,P,C,O);return A!==void 0?!!A:a(x,S,y,O)},new Map)}function a(d,h,g,y){if(h===d)return!0;switch(typeof h){case"object":return l(d,h,g,y);case"function":return Object.keys(h).length>0?a(d,{...h},g,y):r.isEqualsSameValueZero(d,h);default:return t.isObject(d)?typeof h=="string"?h==="":!0:r.isEqualsSameValueZero(d,h)}}function l(d,h,g,y){if(h==null)return!0;if(Array.isArray(h))return c(d,h,g,y);if(h instanceof Map)return u(d,h,g,y);if(h instanceof Set)return f(d,h,g,y);const x=Object.keys(h);if(d==null||n.isPrimitive(d))return x.length===0;if(x.length===0)return!0;if(y!=null&&y.has(h))return y.get(h)===d;y==null||y.set(h,d);try{for(let S=0;S{})}e.isMatch=n})(gm)),gm}var wm={},km={},Sm={},bk;function s6(){return bk||(bk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return Object.getOwnPropertySymbols(n).filter(r=>Object.prototype.propertyIsEnumerable.call(n,r))}e.getSymbols=t})(Sm)),Sm}var jm={},wk;function Ey(){return wk||(wk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n==null?n===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(n)}e.getTag=t})(jm)),jm}var Pm={},kk;function tN(){return kk||(kk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t="[object RegExp]",n="[object String]",r="[object Number]",i="[object Boolean]",a="[object Arguments]",l="[object Symbol]",u="[object Date]",c="[object Map]",f="[object Set]",d="[object Array]",h="[object Function]",g="[object ArrayBuffer]",y="[object Object]",x="[object Error]",S="[object DataView]",w="[object Uint8Array]",P="[object Uint8ClampedArray]",C="[object Uint16Array]",O="[object Uint32Array]",A="[object BigUint64Array]",I="[object Int8Array]",E="[object Int16Array]",L="[object Int32Array]",F="[object BigInt64Array]",H="[object Float32Array]",R="[object Float64Array]";e.argumentsTag=a,e.arrayBufferTag=g,e.arrayTag=d,e.bigInt64ArrayTag=F,e.bigUint64ArrayTag=A,e.booleanTag=i,e.dataViewTag=S,e.dateTag=u,e.errorTag=x,e.float32ArrayTag=H,e.float64ArrayTag=R,e.functionTag=h,e.int16ArrayTag=E,e.int32ArrayTag=L,e.int8ArrayTag=I,e.mapTag=c,e.numberTag=r,e.objectTag=y,e.regexpTag=t,e.setTag=f,e.stringTag=n,e.symbolTag=l,e.uint16ArrayTag=C,e.uint32ArrayTag=O,e.uint8ArrayTag=w,e.uint8ClampedArrayTag=P})(Pm)),Pm}var Em={},Sk;function u6(){return Sk||(Sk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return ArrayBuffer.isView(n)&&!(n instanceof DataView)}e.isTypedArray=t})(Em)),Em}var jk;function nN(){return jk||(jk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=s6(),n=Ey(),r=tN(),i=ZO(),a=u6();function l(d,h){return u(d,void 0,d,new Map,h)}function u(d,h,g,y=new Map,x=void 0){const S=x==null?void 0:x(d,h,g,y);if(S!==void 0)return S;if(i.isPrimitive(d))return d;if(y.has(d))return y.get(d);if(Array.isArray(d)){const w=new Array(d.length);y.set(d,w);for(let P=0;Pt.isMatch(a,i)}e.matches=r})(mm)),mm}var Cm={},Om={},Nm={},Ck;function d6(){return Ck||(Ck=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=nN(),n=Ey(),r=tN();function i(a,l){return t.cloneDeepWith(a,(u,c,f,d)=>{const h=l==null?void 0:l(u,c,f,d);if(h!==void 0)return h;if(typeof a=="object"){if(n.getTag(a)===r.objectTag&&typeof a.constructor!="function"){const g={};return d.set(a,g),t.copyProperties(g,a,f,d),g}switch(Object.prototype.toString.call(a)){case r.numberTag:case r.stringTag:case r.booleanTag:{const g=new a.constructor(a==null?void 0:a.valueOf());return t.copyProperties(g,a),g}case r.argumentsTag:{const g={};return t.copyProperties(g,a),g.length=a.length,g[Symbol.iterator]=a[Symbol.iterator],g}default:return}}})}e.cloneDeepWith=i})(Nm)),Nm}var Ok;function p6(){return Ok||(Ok=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=d6();function n(r){return t.cloneDeepWith(r)}e.cloneDeep=n})(Om)),Om}var Am={},_m={},Nk;function rN(){return Nk||(Nk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=/^(?:0|[1-9]\d*)$/;function n(r,i=Number.MAX_SAFE_INTEGER){switch(typeof r){case"number":return Number.isInteger(r)&&r>=0&&r"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?f:u;return Dm.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:d,Dm}var Lk;function b6(){return Lk||(Lk=1,Mm.exports=x6()),Mm.exports}/** + */var Rk;function k6(){if(Rk)return Rm;Rk=1;var e=Fo();function t(h,g){return h===g&&(h!==0||1/h===1/g)||h!==h&&g!==g}var n=typeof Object.is=="function"?Object.is:t,r=e.useState,i=e.useEffect,a=e.useLayoutEffect,l=e.useDebugValue;function u(h,g){var y=g(),x=r({inst:{value:y,getSnapshot:g}}),S=x[0].inst,w=x[1];return a(function(){S.value=y,S.getSnapshot=g,c(S)&&w({inst:S})},[h,y,g]),i(function(){return c(S)&&w({inst:S}),h(function(){c(S)&&w({inst:S})})},[h]),l(y),y}function c(h){var g=h.getSnapshot;h=h.value;try{var y=g();return!n(h,y)}catch{return!0}}function f(h,g){return g()}var d=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?f:u;return Rm.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:d,Rm}var zk;function S6(){return zk||(zk=1,Lm.exports=k6()),Lm.exports}/** * @license React * use-sync-external-store-shim/with-selector.production.js * @@ -81,39 +81,39 @@ Error generating stack: `+j.message+` * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var Rk;function w6(){if(Rk)return Tm;Rk=1;var e=Fo(),t=b6();function n(f,d){return f===d&&(f!==0||1/f===1/d)||f!==f&&d!==d}var r=typeof Object.is=="function"?Object.is:n,i=t.useSyncExternalStore,a=e.useRef,l=e.useEffect,u=e.useMemo,c=e.useDebugValue;return Tm.useSyncExternalStoreWithSelector=function(f,d,p,g,y){var x=a(null);if(x.current===null){var S={hasValue:!1,value:null};x.current=S}else S=x.current;x=u(function(){function P(E){if(!C){if(C=!0,O=E,E=g(E),y!==void 0&&S.hasValue){var L=S.value;if(y(L,E))return A=L}return A=E}if(L=A,r(O,E))return L;var F=g(E);return y!==void 0&&y(L,F)?(O=E,L):(O=E,A=F)}var C=!1,O,A,I=p===void 0?null:p;return[function(){return P(d())},I===null?void 0:function(){return P(I())}]},[d,p,g,y]);var w=i(f,x[0],x[1]);return l(function(){S.hasValue=!0,S.value=w},[w]),c(w),w},Tm}var zk;function k6(){return zk||(zk=1,Im.exports=w6()),Im.exports}var S6=k6(),Py=k.createContext(null),j6=e=>e,yt=()=>{var e=k.useContext(Py);return e?e.store.dispatch:j6},Ac=()=>{},P6=()=>Ac,E6=(e,t)=>e===t;function Pe(e){var t=k.useContext(Py),n=k.useMemo(()=>t?r=>{if(r!=null)return e(r)}:Ac,[t,e]);return S6.useSyncExternalStoreWithSelector(t?t.subscription.addNestedSub:P6,t?t.store.getState:Ac,t?t.store.getState:Ac,n,E6)}function C6(e,t=`expected a function, instead received ${typeof e}`){if(typeof e!="function")throw new TypeError(t)}function O6(e,t=`expected an object, instead received ${typeof e}`){if(typeof e!="object")throw new TypeError(t)}function N6(e,t="expected all items to be functions, instead received the following types: "){if(!e.every(n=>typeof n=="function")){const n=e.map(r=>typeof r=="function"?`function ${r.name||"unnamed"}()`:typeof r).join(", ");throw new TypeError(`${t}[${n}]`)}}var $k=e=>Array.isArray(e)?e:[e];function A6(e){const t=Array.isArray(e[0])?e[0]:e;return N6(t,"createSelector expects all input-selectors to be functions, but received the following types: "),t}function _6(e,t){const n=[],{length:r}=e;for(let i=0;i{n=fc(),l.resetResultsCount()},l.resultsCount=()=>a,l.resetResultsCount=()=>{a=0},l}function D6(e,...t){const n=typeof e=="function"?{memoize:e,memoizeOptions:t}:e,r=(...i)=>{let a=0,l=0,u,c={},f=i.pop();typeof f=="object"&&(c=f,f=i.pop()),C6(f,`createSelector expects an output function after the inputs, but received: [${typeof f}]`);const d={...n,...c},{memoize:p,memoizeOptions:g=[],argsMemoize:y=rN,argsMemoizeOptions:x=[]}=d,S=$k(g),w=$k(x),P=A6(i),C=p(function(){return a++,f.apply(null,arguments)},...S),O=y(function(){l++;const I=_6(P,arguments);return u=C.apply(null,I),u},...w);return Object.assign(O,{resultFunc:f,memoizedResultFunc:C,dependencies:P,dependencyRecomputations:()=>l,resetDependencyRecomputations:()=>{l=0},lastResult:()=>u,recomputations:()=>a,resetRecomputations:()=>{a=0},memoize:p,argsMemoize:y})};return Object.assign(r,{withTypes:()=>r}),r}var G=D6(rN),L6=Object.assign((e,t=G)=>{O6(e,`createStructuredSelector expects first argument to be an object where each property is a selector, instead received a ${typeof e}`);const n=Object.keys(e),r=n.map(a=>e[a]);return t(r,(...a)=>a.reduce((l,u,c)=>(l[n[c]]=u,l),{}))},{withTypes:()=>L6}),Lm={},Rm={},zm={},Bk;function R6(){return Bk||(Bk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return typeof r=="symbol"?1:r===null?2:r===void 0?3:r!==r?4:0}const n=(r,i,a)=>{if(r!==i){const l=t(r),u=t(i);if(l===u&&l===0){if(ri)return a==="desc"?-1:1}return a==="desc"?u-l:l-u}return 0};e.compareValues=n})(zm)),zm}var $m={},Fm={},Uk;function iN(){return Uk||(Uk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return typeof n=="symbol"||n instanceof Symbol}e.isSymbol=t})(Fm)),Fm}var Wk;function z6(){return Wk||(Wk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=iN(),n=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,r=/^\w*$/;function i(a,l){return Array.isArray(a)?!1:typeof a=="number"||typeof a=="boolean"||a==null||t.isSymbol(a)?!0:typeof a=="string"&&(r.test(a)||!n.test(a))||l!=null&&Object.hasOwn(l,a)}e.isKey=i})($m)),$m}var qk;function $6(){return qk||(qk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=R6(),n=z6(),r=xy();function i(a,l,u,c){if(a==null)return[];u=c?void 0:u,Array.isArray(a)||(a=Object.values(a)),Array.isArray(l)||(l=l==null?[null]:[l]),l.length===0&&(l=[null]),Array.isArray(u)||(u=u==null?[]:[u]),u=u.map(y=>String(y));const f=(y,x)=>{let S=y;for(let w=0;wx==null||y==null?x:typeof y=="object"&&"key"in y?Object.hasOwn(x,y.key)?x[y.key]:f(x,y.path):typeof y=="function"?y(x):Array.isArray(y)?f(x,y):typeof x=="object"?x[y]:x,p=l.map(y=>(Array.isArray(y)&&y.length===1&&(y=y[0]),y==null||typeof y=="function"||Array.isArray(y)||n.isKey(y)?y:{key:y,path:r.toPath(y)}));return a.map(y=>({original:y,criteria:p.map(x=>d(x,y))})).slice().sort((y,x)=>{for(let S=0;Sy.original)}e.orderBy=i})(Rm)),Rm}var Bm={},Hk;function F6(){return Hk||(Hk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r=1){const i=[],a=Math.floor(r),l=(u,c)=>{for(let f=0;f1&&r.isIterateeCall(a,l[0],l[1])?l=[]:u>2&&r.isIterateeCall(l[0],l[1],l[2])&&(l=[l[0]]),t.orderBy(a,n.flatten(l),["asc"])}e.sortBy=i})(Lm)),Lm}var Wm,Gk;function U6(){return Gk||(Gk=1,Wm=B6().sortBy),Wm}var W6=U6();const Kf=xr(W6);var oN=e=>e.legend.settings,q6=e=>e.legend.size,H6=e=>e.legend.payload;G([H6,oN],(e,t)=>{var{itemSorter:n}=t,r=e.flat(1);return n?Kf(r,n):r});var dc=1;function V6(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],[t,n]=k.useState({height:0,left:0,top:0,width:0}),r=k.useCallback(i=>{if(i!=null){var a=i.getBoundingClientRect(),l={height:a.height,left:a.left,top:a.top,width:a.width};(Math.abs(l.height-t.height)>dc||Math.abs(l.left-t.left)>dc||Math.abs(l.top-t.top)>dc||Math.abs(l.width-t.width)>dc)&&n({height:l.height,left:l.left,top:l.top,width:l.width})}},[t.width,t.height,t.top,t.left,...e]);return[t,r]}function Kt(e){return`Minified Redux error #${e}; visit https://redux.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var K6=typeof Symbol=="function"&&Symbol.observable||"@@observable",Yk=K6,qm=()=>Math.random().toString(36).substring(7).split("").join("."),G6={INIT:`@@redux/INIT${qm()}`,REPLACE:`@@redux/REPLACE${qm()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${qm()}`},Vc=G6;function Ey(e){if(typeof e!="object"||e===null)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t||Object.getPrototypeOf(e)===null}function lN(e,t,n){if(typeof e!="function")throw new Error(Kt(2));if(typeof t=="function"&&typeof n=="function"||typeof n=="function"&&typeof arguments[3]=="function")throw new Error(Kt(0));if(typeof t=="function"&&typeof n>"u"&&(n=t,t=void 0),typeof n<"u"){if(typeof n!="function")throw new Error(Kt(1));return n(lN)(e,t)}let r=e,i=t,a=new Map,l=a,u=0,c=!1;function f(){l===a&&(l=new Map,a.forEach((w,P)=>{l.set(P,w)}))}function d(){if(c)throw new Error(Kt(3));return i}function p(w){if(typeof w!="function")throw new Error(Kt(4));if(c)throw new Error(Kt(5));let P=!0;f();const C=u++;return l.set(C,w),function(){if(P){if(c)throw new Error(Kt(6));P=!1,f(),l.delete(C),a=null}}}function g(w){if(!Ey(w))throw new Error(Kt(7));if(typeof w.type>"u")throw new Error(Kt(8));if(typeof w.type!="string")throw new Error(Kt(17));if(c)throw new Error(Kt(9));try{c=!0,i=r(i,w)}finally{c=!1}return(a=l).forEach(C=>{C()}),w}function y(w){if(typeof w!="function")throw new Error(Kt(10));r=w,g({type:Vc.REPLACE})}function x(){const w=p;return{subscribe(P){if(typeof P!="object"||P===null)throw new Error(Kt(11));function C(){const A=P;A.next&&A.next(d())}return C(),{unsubscribe:w(C)}},[Yk](){return this}}}return g({type:Vc.INIT}),{dispatch:g,subscribe:p,getState:d,replaceReducer:y,[Yk]:x}}function Y6(e){Object.keys(e).forEach(t=>{const n=e[t];if(typeof n(void 0,{type:Vc.INIT})>"u")throw new Error(Kt(12));if(typeof n(void 0,{type:Vc.PROBE_UNKNOWN_ACTION()})>"u")throw new Error(Kt(13))})}function sN(e){const t=Object.keys(e),n={};for(let a=0;a"u")throw u&&u.type,new Error(Kt(14));f[p]=x,c=c||x!==y}return c=c||r.length!==Object.keys(l).length,c?f:l}}function Kc(...e){return e.length===0?t=>t:e.length===1?e[0]:e.reduce((t,n)=>(...r)=>t(n(...r)))}function X6(...e){return t=>(n,r)=>{const i=t(n,r);let a=()=>{throw new Error(Kt(15))};const l={getState:i.getState,dispatch:(c,...f)=>a(c,...f)},u=e.map(c=>c(l));return a=Kc(...u)(i.dispatch),{...i,dispatch:a}}}function uN(e){return Ey(e)&&"type"in e&&typeof e.type=="string"}var cN=Symbol.for("immer-nothing"),Xk=Symbol.for("immer-draftable"),pn=Symbol.for("immer-state");function fr(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var Ln=Object,Mo=Ln.getPrototypeOf,Gc="constructor",Gf="prototype",Zg="configurable",Yc="enumerable",_c="writable",ds="value",ii=e=>!!e&&!!e[pn];function yr(e){var t;return e?fN(e)||Xf(e)||!!e[Xk]||!!((t=e[Gc])!=null&&t[Xk])||Qf(e)||Zf(e):!1}var Q6=Ln[Gf][Gc].toString(),Qk=new WeakMap;function fN(e){if(!e||!Cy(e))return!1;const t=Mo(e);if(t===null||t===Ln[Gf])return!0;const n=Ln.hasOwnProperty.call(t,Gc)&&t[Gc];if(n===Object)return!0;if(!ko(n))return!1;let r=Qk.get(n);return r===void 0&&(r=Function.toString.call(n),Qk.set(n,r)),r===Q6}function Yf(e,t,n=!0){Is(e)===0?(n?Reflect.ownKeys(e):Ln.keys(e)).forEach(i=>{t(i,e[i],e)}):e.forEach((r,i)=>t(i,r,e))}function Is(e){const t=e[pn];return t?t.type_:Xf(e)?1:Qf(e)?2:Zf(e)?3:0}var Zk=(e,t,n=Is(e))=>n===2?e.has(t):Ln[Gf].hasOwnProperty.call(e,t),Jg=(e,t,n=Is(e))=>n===2?e.get(t):e[t],Xc=(e,t,n,r=Is(e))=>{r===2?e.set(t,n):r===3?e.add(n):e[t]=n};function Z6(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}var Xf=Array.isArray,Qf=e=>e instanceof Map,Zf=e=>e instanceof Set,Cy=e=>typeof e=="object",ko=e=>typeof e=="function",Hm=e=>typeof e=="boolean";function J6(e){const t=+e;return Number.isInteger(t)&&String(t)===e}var Zr=e=>e.copy_||e.base_,Oy=e=>e.modified_?e.copy_:e.base_;function ev(e,t){if(Qf(e))return new Map(e);if(Zf(e))return new Set(e);if(Xf(e))return Array[Gf].slice.call(e);const n=fN(e);if(t===!0||t==="class_only"&&!n){const r=Ln.getOwnPropertyDescriptors(e);delete r[pn];let i=Reflect.ownKeys(r);for(let a=0;a1&&Ln.defineProperties(e,{set:hc,add:hc,clear:hc,delete:hc}),Ln.freeze(e),t&&Yf(e,(n,r)=>{Ny(r,!0)},!1)),e}function eU(){fr(2)}var hc={[ds]:eU};function Jf(e){return e===null||!Cy(e)?!0:Ln.isFrozen(e)}var Qc="MapSet",tv="Patches",Jk="ArrayMethods",dN={};function Ia(e){const t=dN[e];return t||fr(0,e),t}var eS=e=>!!dN[e],hs,hN=()=>hs,tU=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:eS(Qc)?Ia(Qc):void 0,arrayMethodsPlugin_:eS(Jk)?Ia(Jk):void 0});function tS(e,t){t&&(e.patchPlugin_=Ia(tv),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function nv(e){rv(e),e.drafts_.forEach(nU),e.drafts_=null}function rv(e){e===hs&&(hs=e.parent_)}var nS=e=>hs=tU(hs,e);function nU(e){const t=e[pn];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function rS(e,t){t.unfinalizedDrafts_=t.drafts_.length;const n=t.drafts_[0];if(e!==void 0&&e!==n){n[pn].modified_&&(nv(t),fr(4)),yr(e)&&(e=iS(t,e));const{patchPlugin_:i}=t;i&&i.generateReplacementPatches_(n[pn].base_,e,t)}else e=iS(t,n);return rU(t,e,!0),nv(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==cN?e:void 0}function iS(e,t){if(Jf(t))return t;const n=t[pn];if(!n)return Zc(t,e.handledSet_,e);if(!ed(n,e))return t;if(!n.modified_)return n.base_;if(!n.finalized_){const{callbacks_:r}=n;if(r)for(;r.length>0;)r.pop()(e);gN(n,e)}return n.copy_}function rU(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&Ny(t,n)}function pN(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var ed=(e,t)=>e.scope_===t,iU=[];function mN(e,t,n,r){const i=Zr(e),a=e.type_;if(r!==void 0&&Jg(i,r,a)===t){Xc(i,r,n,a);return}if(!e.draftLocations_){const u=e.draftLocations_=new Map;Yf(i,(c,f)=>{if(ii(f)){const d=u.get(f)||[];d.push(c),u.set(f,d)}})}const l=e.draftLocations_.get(t)??iU;for(const u of l)Xc(i,u,n,a)}function aU(e,t,n){e.callbacks_.push(function(i){var u;const a=t;if(!a||!ed(a,i))return;(u=i.mapSetPlugin_)==null||u.fixSetContents(a);const l=Oy(a);mN(e,a.draft_??a,l,n),gN(a,i)})}function gN(e,t){var r;if(e.modified_&&!e.finalized_&&(e.type_===3||e.type_===1&&e.allIndicesReassigned_||(((r=e.assigned_)==null?void 0:r.size)??0)>0)){const{patchPlugin_:i}=t;if(i){const a=i.getPath(e);a&&i.generatePatches_(e,a,t)}pN(e)}}function oU(e,t,n){const{scope_:r}=e;if(ii(n)){const i=n[pn];ed(i,r)&&i.callbacks_.push(function(){Ic(e);const l=Oy(i);mN(e,n,l,t)})}else yr(n)&&e.callbacks_.push(function(){const a=Zr(e);e.type_===3?a.has(n)&&Zc(n,r.handledSet_,r):Jg(a,t,e.type_)===n&&r.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&Zc(Jg(e.copy_,t,e.type_),r.handledSet_,r)})}function Zc(e,t,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||ii(e)||t.has(e)||!yr(e)||Jf(e)||(t.add(e),Yf(e,(r,i)=>{if(ii(i)){const a=i[pn];if(ed(a,n)){const l=Oy(a);Xc(e,r,l,e.type_),pN(a)}}else yr(i)&&Zc(i,t,n)})),e}function lU(e,t){const n=Xf(e),r={type_:n?1:0,scope_:t?t.scope_:hN(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let i=r,a=Jc;n&&(i=[r],a=ps);const{revoke:l,proxy:u}=Proxy.revocable(i,a);return r.draft_=u,r.revoke_=l,[u,r]}var Jc={get(e,t){if(t===pn)return e;let n=e.scope_.arrayMethodsPlugin_;const r=e.type_===1&&typeof t=="string";if(r&&n!=null&&n.isArrayOperationMethod(t))return n.createMethodInterceptor(e,t);const i=Zr(e);if(!Zk(i,t,e.type_))return sU(e,i,t);const a=i[t];if(e.finalized_||!yr(a)||r&&e.operationMethod&&(n!=null&&n.isMutatingArrayMethod(e.operationMethod))&&J6(t))return a;if(a===Vm(e.base_,t)){Ic(e);const l=e.type_===1?+t:t,u=av(e.scope_,a,e,l);return e.copy_[l]=u}return a},has(e,t){return t in Zr(e)},ownKeys(e){return Reflect.ownKeys(Zr(e))},set(e,t,n){const r=vN(Zr(e),t);if(r!=null&&r.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){const i=Vm(Zr(e),t),a=i==null?void 0:i[pn];if(a&&a.base_===n)return e.copy_[t]=n,e.assigned_.set(t,!1),!0;if(Z6(n,i)&&(n!==void 0||Zk(e.base_,t,e.type_)))return!0;Ic(e),iv(e)}return e.copy_[t]===n&&(n!==void 0||t in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=n,e.assigned_.set(t,!0),oU(e,t,n)),!0},deleteProperty(e,t){return Ic(e),Vm(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),iv(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const n=Zr(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{[_c]:!0,[Zg]:e.type_!==1||t!=="length",[Yc]:r[Yc],[ds]:n[t]}},defineProperty(){fr(11)},getPrototypeOf(e){return Mo(e.base_)},setPrototypeOf(){fr(12)}},ps={};for(let e in Jc){let t=Jc[e];ps[e]=function(){const n=arguments;return n[0]=n[0][0],t.apply(this,n)}}ps.deleteProperty=function(e,t){return ps.set.call(this,e,t,void 0)};ps.set=function(e,t,n){return Jc.set.call(this,e[0],t,n,e[0])};function Vm(e,t){const n=e[pn];return(n?Zr(n):e)[t]}function sU(e,t,n){var i;const r=vN(t,n);return r?ds in r?r[ds]:(i=r.get)==null?void 0:i.call(e.draft_):void 0}function vN(e,t){if(!(t in e))return;let n=Mo(e);for(;n;){const r=Object.getOwnPropertyDescriptor(n,t);if(r)return r;n=Mo(n)}}function iv(e){e.modified_||(e.modified_=!0,e.parent_&&iv(e.parent_))}function Ic(e){e.copy_||(e.assigned_=new Map,e.copy_=ev(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var uU=class{constructor(t){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(n,r,i)=>{if(ko(n)&&!ko(r)){const l=r;r=n;const u=this;return function(f=l,...d){return u.produce(f,p=>r.call(this,p,...d))}}ko(r)||fr(6),i!==void 0&&!ko(i)&&fr(7);let a;if(yr(n)){const l=nS(this),u=av(l,n,void 0);let c=!0;try{a=r(u),c=!1}finally{c?nv(l):rv(l)}return tS(l,i),rS(a,l)}else if(!n||!Cy(n)){if(a=r(n),a===void 0&&(a=n),a===cN&&(a=void 0),this.autoFreeze_&&Ny(a,!0),i){const l=[],u=[];Ia(tv).generateReplacementPatches_(n,a,{patches_:l,inversePatches_:u}),i(l,u)}return a}else fr(1,n)},this.produceWithPatches=(n,r)=>{if(ko(n))return(u,...c)=>this.produceWithPatches(u,f=>n(f,...c));let i,a;return[this.produce(n,r,(u,c)=>{i=u,a=c}),i,a]},Hm(t==null?void 0:t.autoFreeze)&&this.setAutoFreeze(t.autoFreeze),Hm(t==null?void 0:t.useStrictShallowCopy)&&this.setUseStrictShallowCopy(t.useStrictShallowCopy),Hm(t==null?void 0:t.useStrictIteration)&&this.setUseStrictIteration(t.useStrictIteration)}createDraft(t){yr(t)||fr(8),ii(t)&&(t=mr(t));const n=nS(this),r=av(n,t,void 0);return r[pn].isManual_=!0,rv(n),r}finishDraft(t,n){const r=t&&t[pn];(!r||!r.isManual_)&&fr(9);const{scope_:i}=r;return tS(i,n),rS(void 0,i)}setAutoFreeze(t){this.autoFreeze_=t}setUseStrictShallowCopy(t){this.useStrictShallowCopy_=t}setUseStrictIteration(t){this.useStrictIteration_=t}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(t,n){let r;for(r=n.length-1;r>=0;r--){const a=n[r];if(a.path.length===0&&a.op==="replace"){t=a.value;break}}r>-1&&(n=n.slice(r+1));const i=Ia(tv).applyPatches_;return ii(t)?i(t,n):this.produce(t,a=>i(a,n))}};function av(e,t,n,r){const[i,a]=Qf(t)?Ia(Qc).proxyMap_(t,n):Zf(t)?Ia(Qc).proxySet_(t,n):lU(t,n);return((n==null?void 0:n.scope_)??hN()).drafts_.push(i),a.callbacks_=(n==null?void 0:n.callbacks_)??[],a.key_=r,n&&r!==void 0?aU(n,a,r):a.callbacks_.push(function(c){var d;(d=c.mapSetPlugin_)==null||d.fixSetContents(a);const{patchPlugin_:f}=c;a.modified_&&f&&f.generatePatches_(a,[],c)}),i}function mr(e){return ii(e)||fr(10,e),yN(e)}function yN(e){if(!yr(e)||Jf(e))return e;const t=e[pn];let n,r=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=ev(e,t.scope_.immer_.useStrictShallowCopy_),r=t.scope_.immer_.shouldUseStrictIteration()}else n=ev(e,!0);return Yf(n,(i,a)=>{Xc(n,i,yN(a))},r),t&&(t.finalized_=!1),n}var cU=new uU,xN=cU.produce;function bN(e){return({dispatch:n,getState:r})=>i=>a=>typeof a=="function"?a(n,r,e):i(a)}var fU=bN(),dU=bN,hU=typeof window<"u"&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(arguments.length!==0)return typeof arguments[0]=="object"?Kc:Kc.apply(null,arguments)};function er(e,t){function n(...r){if(t){let i=t(...r);if(!i)throw new Error(zn(0));return{type:e,payload:i.payload,..."meta"in i&&{meta:i.meta},..."error"in i&&{error:i.error}}}return{type:e,payload:r[0]}}return n.toString=()=>`${e}`,n.type=e,n.match=r=>uN(r)&&r.type===e,n}var wN=class Jl extends Array{constructor(...t){super(...t),Object.setPrototypeOf(this,Jl.prototype)}static get[Symbol.species](){return Jl}concat(...t){return super.concat.apply(this,t)}prepend(...t){return t.length===1&&Array.isArray(t[0])?new Jl(...t[0].concat(this)):new Jl(...t.concat(this))}};function aS(e){return yr(e)?xN(e,()=>{}):e}function pc(e,t,n){return e.has(t)?e.get(t):e.set(t,n(t)).get(t)}function pU(e){return typeof e=="boolean"}var mU=()=>function(t){const{thunk:n=!0,immutableCheck:r=!0,serializableCheck:i=!0,actionCreatorCheck:a=!0}=t??{};let l=new wN;return n&&(pU(n)?l.push(fU):l.push(dU(n.extraArgument))),l},kN="RTK_autoBatch",at=()=>e=>({payload:e,meta:{[kN]:!0}}),oS=e=>t=>{setTimeout(t,e)},SN=(e={type:"raf"})=>t=>(...n)=>{const r=t(...n);let i=!0,a=!1,l=!1;const u=new Set,c=e.type==="tick"?queueMicrotask:e.type==="raf"?typeof window<"u"&&window.requestAnimationFrame?window.requestAnimationFrame:oS(10):e.type==="callback"?e.queueNotification:oS(e.timeout),f=()=>{l=!1,a&&(a=!1,u.forEach(d=>d()))};return Object.assign({},r,{subscribe(d){const p=()=>i&&d(),g=r.subscribe(p);return u.add(d),()=>{g(),u.delete(d)}},dispatch(d){var p;try{return i=!((p=d==null?void 0:d.meta)!=null&&p[kN]),a=!i,a&&(l||(l=!0,c(f))),r.dispatch(d)}finally{i=!0}}})},gU=e=>function(n){const{autoBatch:r=!0}=n??{};let i=new wN(e);return r&&i.push(SN(typeof r=="object"?r:void 0)),i};function vU(e){const t=mU(),{reducer:n=void 0,middleware:r,devTools:i=!0,preloadedState:a=void 0,enhancers:l=void 0}=e||{};let u;if(typeof n=="function")u=n;else if(Ey(n))u=sN(n);else throw new Error(zn(1));let c;typeof r=="function"?c=r(t):c=t();let f=Kc;i&&(f=hU({trace:!1,...typeof i=="object"&&i}));const d=X6(...c),p=gU(d);let g=typeof l=="function"?l(p):p();const y=f(...g);return lN(u,a,y)}function jN(e){const t={},n=[];let r;const i={addCase(a,l){const u=typeof a=="string"?a:a.type;if(!u)throw new Error(zn(28));if(u in t)throw new Error(zn(29));return t[u]=l,i},addAsyncThunk(a,l){return l.pending&&(t[a.pending.type]=l.pending),l.rejected&&(t[a.rejected.type]=l.rejected),l.fulfilled&&(t[a.fulfilled.type]=l.fulfilled),l.settled&&n.push({matcher:a.settled,reducer:l.settled}),i},addMatcher(a,l){return n.push({matcher:a,reducer:l}),i},addDefaultCase(a){return r=a,i}};return e(i),[t,n,r]}function yU(e){return typeof e=="function"}function xU(e,t){let[n,r,i]=jN(t),a;if(yU(e))a=()=>aS(e());else{const u=aS(e);a=()=>u}function l(u=a(),c){let f=[n[c.type],...r.filter(({matcher:d})=>d(c)).map(({reducer:d})=>d)];return f.filter(d=>!!d).length===0&&(f=[i]),f.reduce((d,p)=>{if(p)if(ii(d)){const y=p(d,c);return y===void 0?d:y}else{if(yr(d))return xN(d,g=>p(g,c));{const g=p(d,c);if(g===void 0){if(d===null)return d;throw Error("A case reducer on a non-draftable value must not return undefined")}return g}}return d},u)}return l.getInitialState=a,l}var bU="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW",wU=(e=21)=>{let t="",n=e;for(;n--;)t+=bU[Math.random()*64|0];return t},kU=Symbol.for("rtk-slice-createasyncthunk");function SU(e,t){return`${e}/${t}`}function jU({creators:e}={}){var n;const t=(n=e==null?void 0:e.asyncThunk)==null?void 0:n[kU];return function(i){const{name:a,reducerPath:l=a}=i;if(!a)throw new Error(zn(11));const u=(typeof i.reducers=="function"?i.reducers(EU()):i.reducers)||{},c=Object.keys(u),f={sliceCaseReducersByName:{},sliceCaseReducersByType:{},actionCreators:{},sliceMatchers:[]},d={addCase(A,I){const E=typeof A=="string"?A:A.type;if(!E)throw new Error(zn(12));if(E in f.sliceCaseReducersByType)throw new Error(zn(13));return f.sliceCaseReducersByType[E]=I,d},addMatcher(A,I){return f.sliceMatchers.push({matcher:A,reducer:I}),d},exposeAction(A,I){return f.actionCreators[A]=I,d},exposeCaseReducer(A,I){return f.sliceCaseReducersByName[A]=I,d}};c.forEach(A=>{const I=u[A],E={reducerName:A,type:SU(a,A),createNotation:typeof i.reducers=="function"};OU(I)?AU(E,I,d,t):CU(E,I,d)});function p(){const[A={},I=[],E=void 0]=typeof i.extraReducers=="function"?jN(i.extraReducers):[i.extraReducers],L={...A,...f.sliceCaseReducersByType};return xU(i.initialState,F=>{for(let H in L)F.addCase(H,L[H]);for(let H of f.sliceMatchers)F.addMatcher(H.matcher,H.reducer);for(let H of I)F.addMatcher(H.matcher,H.reducer);E&&F.addDefaultCase(E)})}const g=A=>A,y=new Map,x=new WeakMap;let S;function w(A,I){return S||(S=p()),S(A,I)}function P(){return S||(S=p()),S.getInitialState()}function C(A,I=!1){function E(F){let H=F[A];return typeof H>"u"&&I&&(H=pc(x,E,P)),H}function L(F=g){const H=pc(y,I,()=>new WeakMap);return pc(H,F,()=>{const R={};for(const[W,M]of Object.entries(i.selectors??{}))R[W]=PU(M,F,()=>pc(x,F,P),I);return R})}return{reducerPath:A,getSelectors:L,get selectors(){return L(E)},selectSlice:E}}const O={name:a,reducer:w,actions:f.actionCreators,caseReducers:f.sliceCaseReducersByName,getInitialState:P,...C(l),injectInto(A,{reducerPath:I,...E}={}){const L=I??l;return A.inject({reducerPath:L,reducer:w},E),{...O,...C(L,!0)}}};return O}}function PU(e,t,n,r){function i(a,...l){let u=t(a);return typeof u>"u"&&r&&(u=n()),e(u,...l)}return i.unwrapped=e,i}var On=jU();function EU(){function e(t,n){return{_reducerDefinitionType:"asyncThunk",payloadCreator:t,...n}}return e.withTypes=()=>e,{reducer(t){return Object.assign({[t.name](...n){return t(...n)}}[t.name],{_reducerDefinitionType:"reducer"})},preparedReducer(t,n){return{_reducerDefinitionType:"reducerWithPrepare",prepare:t,reducer:n}},asyncThunk:e}}function CU({type:e,reducerName:t,createNotation:n},r,i){let a,l;if("reducer"in r){if(n&&!NU(r))throw new Error(zn(17));a=r.reducer,l=r.prepare}else a=r;i.addCase(e,a).exposeCaseReducer(t,a).exposeAction(t,l?er(e,l):er(e))}function OU(e){return e._reducerDefinitionType==="asyncThunk"}function NU(e){return e._reducerDefinitionType==="reducerWithPrepare"}function AU({type:e,reducerName:t},n,r,i){if(!i)throw new Error(zn(18));const{payloadCreator:a,fulfilled:l,pending:u,rejected:c,settled:f,options:d}=n,p=i(e,a,d);r.exposeAction(t,p),l&&r.addCase(p.fulfilled,l),u&&r.addCase(p.pending,u),c&&r.addCase(p.rejected,c),f&&r.addMatcher(p.settled,f),r.exposeCaseReducer(t,{fulfilled:l||mc,pending:u||mc,rejected:c||mc,settled:f||mc})}function mc(){}var _U="task",PN="listener",EN="completed",Ay="cancelled",IU=`task-${Ay}`,TU=`task-${EN}`,ov=`${PN}-${Ay}`,MU=`${PN}-${EN}`,td=class{constructor(e){bp(this,"name","TaskAbortError");bp(this,"message");this.code=e,this.message=`${_U} ${Ay} (reason: ${e})`}},_y=(e,t)=>{if(typeof e!="function")throw new TypeError(zn(32))},ef=()=>{},CN=(e,t=ef)=>(e.catch(t),e),ON=(e,t)=>(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)),Pa=e=>{if(e.aborted)throw new td(e.reason)};function NN(e,t){let n=ef;return new Promise((r,i)=>{const a=()=>i(new td(e.reason));if(e.aborted){a();return}n=ON(e,a),t.finally(()=>n()).then(r,i)}).finally(()=>{n=ef})}var DU=async(e,t)=>{try{return await Promise.resolve(),{status:"ok",value:await e()}}catch(n){return{status:n instanceof td?"cancelled":"rejected",error:n}}finally{t==null||t()}},tf=e=>t=>CN(NN(e,t).then(n=>(Pa(e),n))),AN=e=>{const t=tf(e);return n=>t(new Promise(r=>setTimeout(r,n)))},{assign:Oo}=Object,lS={},nd="listenerMiddleware",LU=(e,t)=>{const n=r=>ON(e,()=>r.abort(e.reason));return(r,i)=>{_y(r);const a=new AbortController;n(a);const l=DU(async()=>{Pa(e),Pa(a.signal);const u=await r({pause:tf(a.signal),delay:AN(a.signal),signal:a.signal});return Pa(a.signal),u},()=>a.abort(TU));return i!=null&&i.autoJoin&&t.push(l.catch(ef)),{result:tf(e)(l),cancel(){a.abort(IU)}}}},RU=(e,t)=>{const n=async(r,i)=>{Pa(t);let a=()=>{};const u=[new Promise((c,f)=>{let d=e({predicate:r,effect:(p,g)=>{g.unsubscribe(),c([p,g.getState(),g.getOriginalState()])}});a=()=>{d(),f()}})];i!=null&&u.push(new Promise(c=>setTimeout(c,i,null)));try{const c=await NN(t,Promise.race(u));return Pa(t),c}finally{a()}};return(r,i)=>CN(n(r,i))},_N=e=>{let{type:t,actionCreator:n,matcher:r,predicate:i,effect:a}=e;if(t)i=er(t).match;else if(n)t=n.type,i=n.match;else if(r)i=r;else if(!i)throw new Error(zn(21));return _y(a),{predicate:i,type:t,effect:a}},IN=Oo(e=>{const{type:t,predicate:n,effect:r}=_N(e);return{id:wU(),effect:r,type:t,predicate:n,pending:new Set,unsubscribe:()=>{throw new Error(zn(22))}}},{withTypes:()=>IN}),sS=(e,t)=>{const{type:n,effect:r,predicate:i}=_N(t);return Array.from(e.values()).find(a=>(typeof n=="string"?a.type===n:a.predicate===i)&&a.effect===r)},lv=e=>{e.pending.forEach(t=>{t.abort(ov)})},zU=(e,t)=>()=>{for(const n of t.keys())lv(n);e.clear()},uS=(e,t,n)=>{try{e(t,n)}catch(r){setTimeout(()=>{throw r},0)}},TN=Oo(er(`${nd}/add`),{withTypes:()=>TN}),$U=er(`${nd}/removeAll`),MN=Oo(er(`${nd}/remove`),{withTypes:()=>MN}),FU=(...e)=>{console.error(`${nd}/error`,...e)},Ts=(e={})=>{const t=new Map,n=new Map,r=y=>{const x=n.get(y)??0;n.set(y,x+1)},i=y=>{const x=n.get(y)??1;x===1?n.delete(y):n.set(y,x-1)},{extra:a,onError:l=FU}=e;_y(l);const u=y=>(y.unsubscribe=()=>t.delete(y.id),t.set(y.id,y),x=>{y.unsubscribe(),x!=null&&x.cancelActive&&lv(y)}),c=y=>{const x=sS(t,y)??IN(y);return u(x)};Oo(c,{withTypes:()=>c});const f=y=>{const x=sS(t,y);return x&&(x.unsubscribe(),y.cancelActive&&lv(x)),!!x};Oo(f,{withTypes:()=>f});const d=async(y,x,S,w)=>{const P=new AbortController,C=RU(c,P.signal),O=[];try{y.pending.add(P),r(y),await Promise.resolve(y.effect(x,Oo({},S,{getOriginalState:w,condition:(A,I)=>C(A,I).then(Boolean),take:C,delay:AN(P.signal),pause:tf(P.signal),extra:a,signal:P.signal,fork:LU(P.signal,O),unsubscribe:y.unsubscribe,subscribe:()=>{t.set(y.id,y)},cancelActiveListeners:()=>{y.pending.forEach((A,I,E)=>{A!==P&&(A.abort(ov),E.delete(A))})},cancel:()=>{P.abort(ov),y.pending.delete(P)},throwIfCancelled:()=>{Pa(P.signal)}})))}catch(A){A instanceof td||uS(l,A,{raisedBy:"effect"})}finally{await Promise.all(O),P.abort(MU),i(y),y.pending.delete(P)}},p=zU(t,n);return{middleware:y=>x=>S=>{if(!uN(S))return x(S);if(TN.match(S))return c(S.payload);if($U.match(S)){p();return}if(MN.match(S))return f(S.payload);let w=y.getState();const P=()=>{if(w===lS)throw new Error(zn(23));return w};let C;try{if(C=x(S),t.size>0){const O=y.getState(),A=Array.from(t.values());for(const I of A){let E=!1;try{E=I.predicate(S,O,w)}catch(L){E=!1,uS(l,L,{raisedBy:"predicate"})}E&&d(I,S,y,P)}}}finally{w=lS}return C},startListening:c,stopListening:f,clearListeners:p}};function zn(e){return`Minified Redux Toolkit error #${e}; visit https://redux-toolkit.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var BU={layoutType:"horizontal",width:0,height:0,margin:{top:5,right:5,bottom:5,left:5},scale:1},DN=On({name:"chartLayout",initialState:BU,reducers:{setLayout(e,t){e.layoutType=t.payload},setChartSize(e,t){e.width=t.payload.width,e.height=t.payload.height},setMargin(e,t){var n,r,i,a;e.margin.top=(n=t.payload.top)!==null&&n!==void 0?n:0,e.margin.right=(r=t.payload.right)!==null&&r!==void 0?r:0,e.margin.bottom=(i=t.payload.bottom)!==null&&i!==void 0?i:0,e.margin.left=(a=t.payload.left)!==null&&a!==void 0?a:0},setScale(e,t){e.scale=t.payload}}}),{setMargin:UU,setLayout:WU,setChartSize:qU,setScale:HU}=DN.actions,VU=DN.reducer;function LN(e,t,n){return Array.isArray(e)&&e&&t+n!==0?e.slice(t,n+1):e}function Me(e){return Number.isFinite(e)}function Lr(e){return typeof e=="number"&&e>0&&Number.isFinite(e)}function cS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function So(e){for(var t=1;t{if(t&&n){var{width:r,height:i}=n,{align:a,verticalAlign:l,layout:u}=t;if((u==="vertical"||u==="horizontal"&&l==="middle")&&a!=="center"&&ge(e[a]))return So(So({},e),{},{[a]:e[a]+(r||0)});if((u==="horizontal"||u==="vertical"&&a==="center")&&l!=="middle"&&ge(e[l]))return So(So({},e),{},{[l]:e[l]+(i||0)})}return e},$r=(e,t)=>e==="horizontal"&&t==="xAxis"||e==="vertical"&&t==="yAxis"||e==="centric"&&t==="angleAxis"||e==="radial"&&t==="radiusAxis",RN=(e,t,n,r)=>{if(r)return e.map(u=>u.coordinate);var i,a,l=e.map(u=>(u.coordinate===t&&(i=!0),u.coordinate===n&&(a=!0),u.coordinate));return i||l.push(t),a||l.push(n),l},zN=(e,t,n)=>{if(!e)return null;var{duplicateDomain:r,type:i,range:a,scale:l,realScaleType:u,isCategorical:c,categoricalDomain:f,tickCount:d,ticks:p,niceTicks:g,axisType:y}=e;if(!l)return null;var x=u==="scaleBand"&&l.bandwidth?l.bandwidth()/2:2,S=i==="category"&&l.bandwidth?l.bandwidth()/x:0;if(S=y==="angleAxis"&&a&&a.length>=2?jn(a[0]-a[1])*2*S:S,p||g){var w=(p||g||[]).map((P,C)=>{var O=r?r.indexOf(P):P,A=l.map(O);return Me(A)?{coordinate:A+S,value:P,offset:S,index:C}:null}).filter(Pn);return w}return c&&f?f.map((P,C)=>{var O=l.map(P);return Me(O)?{coordinate:O+S,value:P,index:C,offset:S}:null}).filter(Pn):l.ticks&&d!=null?l.ticks(d).map((P,C)=>{var O=l.map(P);return Me(O)?{coordinate:O+S,value:P,index:C,offset:S}:null}).filter(Pn):l.domain().map((P,C)=>{var O=l.map(P);return Me(O)?{coordinate:O+S,value:r?r[P]:P,index:C,offset:S}:null}).filter(Pn)},QU=(e,t)=>{if(!t||t.length!==2||!ge(t[0])||!ge(t[1]))return e;var n=Math.min(t[0],t[1]),r=Math.max(t[0],t[1]),i=[e[0],e[1]];return(!ge(e[0])||e[0]r)&&(i[1]=r),i[0]>r&&(i[0]=r),i[1]{var t,n=e.length;if(!(n<=0)){var r=(t=e[0])===null||t===void 0?void 0:t.length;if(!(r==null||r<=0))for(var i=0;i=0?(f[0]=a,a+=g,f[1]=a):(f[0]=l,l+=g,f[1]=l)}}}},JU=e=>{var t,n=e.length;if(!(n<=0)){var r=(t=e[0])===null||t===void 0?void 0:t.length;if(!(r==null||r<=0))for(var i=0;i=0?(c[0]=a,a+=f,c[1]=a):(c[0]=0,c[1]=0)}}}},e8={sign:ZU,expand:O5,none:Aa,silhouette:N5,wiggle:A5,positive:JU},t8=(e,t,n)=>{var r,i=(r=e8[n])!==null&&r!==void 0?r:Aa,a=C5().keys(t).value((u,c)=>Number(St(u,c,0))).order(Xg).offset(i),l=a(e);return l.forEach((u,c)=>{u.forEach((f,d)=>{var p=St(e[d],t[c],0);Array.isArray(p)&&p.length===2&&ge(p[0])&&ge(p[1])&&(f[0]=p[0],f[1]=p[1])})}),l};function $N(e){return e==null?void 0:String(e)}function fS(e){var{axis:t,ticks:n,bandSize:r,entry:i,index:a,dataKey:l}=e;if(t.type==="category"){if(!t.allowDuplicatedCategory&&t.dataKey&&!mt(i[t.dataKey])){var u=HO(n,"value",i[t.dataKey]);if(u)return u.coordinate+r/2}return n!=null&&n[a]?n[a].coordinate+r/2:null}var c=St(i,mt(l)?t.dataKey:l),f=t.scale.map(c);return ge(f)?f:null}var dS=e=>{var{axis:t,ticks:n,offset:r,bandSize:i,entry:a,index:l}=e;if(t.type==="category")return n[l]?n[l].coordinate+r:null;var u=St(a,t.dataKey,t.scale.domain()[l]);if(mt(u))return null;var c=t.scale.map(u);return ge(c)?c-i/2+r:null},n8=e=>{var{numericAxis:t}=e,n=t.scale.domain();if(t.type==="number"){var r=Math.min(n[0],n[1]),i=Math.max(n[0],n[1]);return r<=0&&i>=0?0:i<0?i:r}return n[0]},r8=e=>{var t=e.flat(2).filter(ge);return[Math.min(...t),Math.max(...t)]},i8=e=>[e[0]===1/0?0:e[0],e[1]===-1/0?0:e[1]],a8=(e,t,n)=>{if(e!=null)return i8(Object.keys(e).reduce((r,i)=>{var a=e[i];if(!a)return r;var{stackedData:l}=a,u=l.reduce((c,f)=>{var d=LN(f,t,n),p=r8(d);return!Me(p[0])||!Me(p[1])?c:[Math.min(c[0],p[0]),Math.max(c[1],p[1])]},[1/0,-1/0]);return[Math.min(u[0],r[0]),Math.max(u[1],r[1])]},[1/0,-1/0]))},hS=/^dataMin[\s]*-[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,pS=/^dataMax[\s]*\+[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,Do=(e,t,n)=>{if(e&&e.scale&&e.scale.bandwidth){var r=e.scale.bandwidth();if(!n||r>0)return r}if(e&&t&&t.length>=2){for(var i=Kf(t,d=>d.coordinate),a=1/0,l=1,u=i.length;l{if(t==="horizontal")return e.chartX;if(t==="vertical")return e.chartY},l8=(e,t)=>t==="centric"?e.angle:e.radius,di=e=>e.layout.width,hi=e=>e.layout.height,s8=e=>e.layout.scale,FN=e=>e.layout.margin,id=G(e=>e.cartesianAxis.xAxis,e=>Object.values(e)),ad=G(e=>e.cartesianAxis.yAxis,e=>Object.values(e)),u8="data-recharts-item-index",c8="data-recharts-item-id",Ms=60;function gS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function gc(e){for(var t=1;te.brush.height;function m8(e){var t=ad(e);return t.reduce((n,r)=>{if(r.orientation==="left"&&!r.mirror&&!r.hide){var i=typeof r.width=="number"?r.width:Ms;return n+i}return n},0)}function g8(e){var t=ad(e);return t.reduce((n,r)=>{if(r.orientation==="right"&&!r.mirror&&!r.hide){var i=typeof r.width=="number"?r.width:Ms;return n+i}return n},0)}function v8(e){var t=id(e);return t.reduce((n,r)=>r.orientation==="top"&&!r.mirror&&!r.hide?n+r.height:n,0)}function y8(e){var t=id(e);return t.reduce((n,r)=>r.orientation==="bottom"&&!r.mirror&&!r.hide?n+r.height:n,0)}var zt=G([di,hi,FN,p8,m8,g8,v8,y8,oN,q6],(e,t,n,r,i,a,l,u,c,f)=>{var d={left:(n.left||0)+i,right:(n.right||0)+a},p={top:(n.top||0)+l,bottom:(n.bottom||0)+u},g=gc(gc({},p),d),y=g.bottom;g.bottom+=r,g=XU(g,c,f);var x=e-g.left-g.right,S=t-g.top-g.bottom;return gc(gc({brushBottom:y},g),{},{width:Math.max(x,0),height:Math.max(S,0)})}),x8=G(zt,e=>({x:e.left,y:e.top,width:e.width,height:e.height})),Iy=G(di,hi,(e,t)=>({x:0,y:0,width:e,height:t})),b8=k.createContext(null),on=()=>k.useContext(b8)!=null,od=e=>e.brush,ld=G([od,zt,FN],(e,t,n)=>({height:e.height,x:ge(e.x)?e.x:t.left,y:ge(e.y)?e.y:t.top+t.height+t.brushBottom-((n==null?void 0:n.bottom)||0),width:ge(e.width)?e.width:t.width})),Km={},Gm={},Ym={},vS;function w8(){return vS||(vS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r,{signal:i,edges:a}={}){let l,u=null;const c=a!=null&&a.includes("leading"),f=a==null||a.includes("trailing"),d=()=>{u!==null&&(n.apply(l,u),l=void 0,u=null)},p=()=>{f&&d(),S()};let g=null;const y=()=>{g!=null&&clearTimeout(g),g=setTimeout(()=>{g=null,p()},r)},x=()=>{g!==null&&(clearTimeout(g),g=null)},S=()=>{x(),l=void 0,u=null},w=()=>{d()},P=function(...C){if(i!=null&&i.aborted)return;l=this,u=C;const O=g==null;y(),c&&O&&d()};return P.schedule=y,P.cancel=S,P.flush=w,i==null||i.addEventListener("abort",S,{once:!0}),P}e.debounce=t})(Ym)),Ym}var yS;function k8(){return yS||(yS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=w8();function n(r,i=0,a={}){typeof a!="object"&&(a={});const{leading:l=!1,trailing:u=!0,maxWait:c}=a,f=Array(2);l&&(f[0]="leading"),u&&(f[1]="trailing");let d,p=null;const g=t.debounce(function(...S){d=r.apply(this,S),p=null},i,{edges:f}),y=function(...S){return c!=null&&(p===null&&(p=Date.now()),Date.now()-p>=c)?(d=r.apply(this,S),p=Date.now(),g.cancel(),g.schedule(),d):(g.apply(this,S),d)},x=()=>(g.flush(),d);return y.cancel=g.cancel,y.flush=x,y}e.debounce=n})(Gm)),Gm}var xS;function S8(){return xS||(xS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=k8();function n(r,i=0,a={}){const{leading:l=!0,trailing:u=!0}=a;return t.debounce(r,i,{leading:l,maxWait:i,trailing:u})}e.throttle=n})(Km)),Km}var Xm,bS;function j8(){return bS||(bS=1,Xm=S8().throttle),Xm}var P8=j8();const E8=xr(P8);var nf=function(t,n){for(var r=arguments.length,i=new Array(r>2?r-2:0),a=2;ai[l++]))}},Ir={width:"100%",height:"100%",debounce:0,minWidth:0,initialDimension:{width:-1,height:-1}},BN=(e,t,n)=>{var{width:r=Ir.width,height:i=Ir.height,aspect:a,maxHeight:l}=n,u=_a(r)?e:Number(r),c=_a(i)?t:Number(i);return a&&a>0&&(u?c=u/a:c&&(u=c*a),l&&c!=null&&c>l&&(c=l)),{calculatedWidth:u,calculatedHeight:c}},C8={width:0,height:0,overflow:"visible"},O8={width:0,overflowX:"visible"},N8={height:0,overflowY:"visible"},A8={},_8=e=>{var{width:t,height:n}=e,r=_a(t),i=_a(n);return r&&i?C8:r?O8:i?N8:A8};function I8(e){var{width:t,height:n,aspect:r}=e,i=t,a=n;return i===void 0&&a===void 0?(i=Ir.width,a=Ir.height):i===void 0?i=r&&r>0?void 0:Ir.width:a===void 0&&(a=r&&r>0?void 0:Ir.height),{width:i,height:a}}function sv(){return sv=Object.assign?Object.assign.bind():function(e){for(var t=1;t({width:n,height:r}),[n,r]);return L8(i)?k.createElement(UN.Provider,{value:i},t):null}var Ty=()=>k.useContext(UN),R8=k.forwardRef((e,t)=>{var{aspect:n,initialDimension:r=Ir.initialDimension,width:i,height:a,minWidth:l=Ir.minWidth,minHeight:u,maxHeight:c,children:f,debounce:d=Ir.debounce,id:p,className:g,onResize:y,style:x={}}=e,S=k.useRef(null),w=k.useRef();w.current=y,k.useImperativeHandle(t,()=>S.current);var[P,C]=k.useState({containerWidth:r.width,containerHeight:r.height}),O=k.useCallback((F,H)=>{C(R=>{var W=Math.round(F),M=Math.round(H);return R.containerWidth===W&&R.containerHeight===M?R:{containerWidth:W,containerHeight:M}})},[]);k.useEffect(()=>{if(S.current==null||typeof ResizeObserver>"u")return Fa;var F=M=>{var Z,Y=M[0];if(Y!=null){var{width:Q,height:he}=Y.contentRect;O(Q,he),(Z=w.current)===null||Z===void 0||Z.call(w,Q,he)}};d>0&&(F=E8(F,d,{trailing:!0,leading:!1}));var H=new ResizeObserver(F),{width:R,height:W}=S.current.getBoundingClientRect();return O(R,W),H.observe(S.current),()=>{H.disconnect()}},[O,d]);var{containerWidth:A,containerHeight:I}=P;nf(!n||n>0,"The aspect(%s) must be greater than zero.",n);var{calculatedWidth:E,calculatedHeight:L}=BN(A,I,{width:i,height:a,aspect:n,maxHeight:c});return nf(E!=null&&E>0||L!=null&&L>0,`The width(%s) and height(%s) of chart should be greater than 0, + */var $k;function j6(){if($k)return Mm;$k=1;var e=Fo(),t=S6();function n(f,d){return f===d&&(f!==0||1/f===1/d)||f!==f&&d!==d}var r=typeof Object.is=="function"?Object.is:n,i=t.useSyncExternalStore,a=e.useRef,l=e.useEffect,u=e.useMemo,c=e.useDebugValue;return Mm.useSyncExternalStoreWithSelector=function(f,d,h,g,y){var x=a(null);if(x.current===null){var S={hasValue:!1,value:null};x.current=S}else S=x.current;x=u(function(){function P(E){if(!C){if(C=!0,O=E,E=g(E),y!==void 0&&S.hasValue){var L=S.value;if(y(L,E))return A=L}return A=E}if(L=A,r(O,E))return L;var F=g(E);return y!==void 0&&y(L,F)?(O=E,L):(O=E,A=F)}var C=!1,O,A,I=h===void 0?null:h;return[function(){return P(d())},I===null?void 0:function(){return P(I())}]},[d,h,g,y]);var w=i(f,x[0],x[1]);return l(function(){S.hasValue=!0,S.value=w},[w]),c(w),w},Mm}var Fk;function P6(){return Fk||(Fk=1,Dm.exports=j6()),Dm.exports}var E6=P6(),Cy=k.createContext(null),C6=e=>e,yt=()=>{var e=k.useContext(Cy);return e?e.store.dispatch:C6},Ic=()=>{},O6=()=>Ic,N6=(e,t)=>e===t;function Pe(e){var t=k.useContext(Cy),n=k.useMemo(()=>t?r=>{if(r!=null)return e(r)}:Ic,[t,e]);return E6.useSyncExternalStoreWithSelector(t?t.subscription.addNestedSub:O6,t?t.store.getState:Ic,t?t.store.getState:Ic,n,N6)}function A6(e,t=`expected a function, instead received ${typeof e}`){if(typeof e!="function")throw new TypeError(t)}function _6(e,t=`expected an object, instead received ${typeof e}`){if(typeof e!="object")throw new TypeError(t)}function I6(e,t="expected all items to be functions, instead received the following types: "){if(!e.every(n=>typeof n=="function")){const n=e.map(r=>typeof r=="function"?`function ${r.name||"unnamed"}()`:typeof r).join(", ");throw new TypeError(`${t}[${n}]`)}}var Bk=e=>Array.isArray(e)?e:[e];function T6(e){const t=Array.isArray(e[0])?e[0]:e;return I6(t,"createSelector expects all input-selectors to be functions, but received the following types: "),t}function D6(e,t){const n=[],{length:r}=e;for(let i=0;i{n=pc(),l.resetResultsCount()},l.resultsCount=()=>a,l.resetResultsCount=()=>{a=0},l}function z6(e,...t){const n=typeof e=="function"?{memoize:e,memoizeOptions:t}:e,r=(...i)=>{let a=0,l=0,u,c={},f=i.pop();typeof f=="object"&&(c=f,f=i.pop()),A6(f,`createSelector expects an output function after the inputs, but received: [${typeof f}]`);const d={...n,...c},{memoize:h,memoizeOptions:g=[],argsMemoize:y=iN,argsMemoizeOptions:x=[]}=d,S=Bk(g),w=Bk(x),P=T6(i),C=h(function(){return a++,f.apply(null,arguments)},...S),O=y(function(){l++;const I=D6(P,arguments);return u=C.apply(null,I),u},...w);return Object.assign(O,{resultFunc:f,memoizedResultFunc:C,dependencies:P,dependencyRecomputations:()=>l,resetDependencyRecomputations:()=>{l=0},lastResult:()=>u,recomputations:()=>a,resetRecomputations:()=>{a=0},memoize:h,argsMemoize:y})};return Object.assign(r,{withTypes:()=>r}),r}var G=z6(iN),$6=Object.assign((e,t=G)=>{_6(e,`createStructuredSelector expects first argument to be an object where each property is a selector, instead received a ${typeof e}`);const n=Object.keys(e),r=n.map(a=>e[a]);return t(r,(...a)=>a.reduce((l,u,c)=>(l[n[c]]=u,l),{}))},{withTypes:()=>$6}),zm={},$m={},Fm={},Wk;function F6(){return Wk||(Wk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return typeof r=="symbol"?1:r===null?2:r===void 0?3:r!==r?4:0}const n=(r,i,a)=>{if(r!==i){const l=t(r),u=t(i);if(l===u&&l===0){if(ri)return a==="desc"?-1:1}return a==="desc"?u-l:l-u}return 0};e.compareValues=n})(Fm)),Fm}var Bm={},Um={},qk;function aN(){return qk||(qk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return typeof n=="symbol"||n instanceof Symbol}e.isSymbol=t})(Um)),Um}var Hk;function B6(){return Hk||(Hk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=aN(),n=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,r=/^\w*$/;function i(a,l){return Array.isArray(a)?!1:typeof a=="number"||typeof a=="boolean"||a==null||t.isSymbol(a)?!0:typeof a=="string"&&(r.test(a)||!n.test(a))||l!=null&&Object.hasOwn(l,a)}e.isKey=i})(Bm)),Bm}var Vk;function U6(){return Vk||(Vk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=F6(),n=B6(),r=wy();function i(a,l,u,c){if(a==null)return[];u=c?void 0:u,Array.isArray(a)||(a=Object.values(a)),Array.isArray(l)||(l=l==null?[null]:[l]),l.length===0&&(l=[null]),Array.isArray(u)||(u=u==null?[]:[u]),u=u.map(y=>String(y));const f=(y,x)=>{let S=y;for(let w=0;wx==null||y==null?x:typeof y=="object"&&"key"in y?Object.hasOwn(x,y.key)?x[y.key]:f(x,y.path):typeof y=="function"?y(x):Array.isArray(y)?f(x,y):typeof x=="object"?x[y]:x,h=l.map(y=>(Array.isArray(y)&&y.length===1&&(y=y[0]),y==null||typeof y=="function"||Array.isArray(y)||n.isKey(y)?y:{key:y,path:r.toPath(y)}));return a.map(y=>({original:y,criteria:h.map(x=>d(x,y))})).slice().sort((y,x)=>{for(let S=0;Sy.original)}e.orderBy=i})($m)),$m}var Wm={},Kk;function W6(){return Kk||(Kk=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r=1){const i=[],a=Math.floor(r),l=(u,c)=>{for(let f=0;f1&&r.isIterateeCall(a,l[0],l[1])?l=[]:u>2&&r.isIterateeCall(l[0],l[1],l[2])&&(l=[l[0]]),t.orderBy(a,n.flatten(l),["asc"])}e.sortBy=i})(zm)),zm}var Hm,Xk;function H6(){return Xk||(Xk=1,Hm=q6().sortBy),Hm}var V6=H6();const Yf=yr(V6);var lN=e=>e.legend.settings,K6=e=>e.legend.size,G6=e=>e.legend.payload;G([G6,lN],(e,t)=>{var{itemSorter:n}=t,r=e.flat(1);return n?Yf(r,n):r});var hc=1;function Y6(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],[t,n]=k.useState({height:0,left:0,top:0,width:0}),r=k.useCallback(i=>{if(i!=null){var a=i.getBoundingClientRect(),l={height:a.height,left:a.left,top:a.top,width:a.width};(Math.abs(l.height-t.height)>hc||Math.abs(l.left-t.left)>hc||Math.abs(l.top-t.top)>hc||Math.abs(l.width-t.width)>hc)&&n({height:l.height,left:l.left,top:l.top,width:l.width})}},[t.width,t.height,t.top,t.left,...e]);return[t,r]}function Kt(e){return`Minified Redux error #${e}; visit https://redux.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var X6=typeof Symbol=="function"&&Symbol.observable||"@@observable",Qk=X6,Vm=()=>Math.random().toString(36).substring(7).split("").join("."),Q6={INIT:`@@redux/INIT${Vm()}`,REPLACE:`@@redux/REPLACE${Vm()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${Vm()}`},Gc=Q6;function Oy(e){if(typeof e!="object"||e===null)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t||Object.getPrototypeOf(e)===null}function sN(e,t,n){if(typeof e!="function")throw new Error(Kt(2));if(typeof t=="function"&&typeof n=="function"||typeof n=="function"&&typeof arguments[3]=="function")throw new Error(Kt(0));if(typeof t=="function"&&typeof n>"u"&&(n=t,t=void 0),typeof n<"u"){if(typeof n!="function")throw new Error(Kt(1));return n(sN)(e,t)}let r=e,i=t,a=new Map,l=a,u=0,c=!1;function f(){l===a&&(l=new Map,a.forEach((w,P)=>{l.set(P,w)}))}function d(){if(c)throw new Error(Kt(3));return i}function h(w){if(typeof w!="function")throw new Error(Kt(4));if(c)throw new Error(Kt(5));let P=!0;f();const C=u++;return l.set(C,w),function(){if(P){if(c)throw new Error(Kt(6));P=!1,f(),l.delete(C),a=null}}}function g(w){if(!Oy(w))throw new Error(Kt(7));if(typeof w.type>"u")throw new Error(Kt(8));if(typeof w.type!="string")throw new Error(Kt(17));if(c)throw new Error(Kt(9));try{c=!0,i=r(i,w)}finally{c=!1}return(a=l).forEach(C=>{C()}),w}function y(w){if(typeof w!="function")throw new Error(Kt(10));r=w,g({type:Gc.REPLACE})}function x(){const w=h;return{subscribe(P){if(typeof P!="object"||P===null)throw new Error(Kt(11));function C(){const A=P;A.next&&A.next(d())}return C(),{unsubscribe:w(C)}},[Qk](){return this}}}return g({type:Gc.INIT}),{dispatch:g,subscribe:h,getState:d,replaceReducer:y,[Qk]:x}}function Z6(e){Object.keys(e).forEach(t=>{const n=e[t];if(typeof n(void 0,{type:Gc.INIT})>"u")throw new Error(Kt(12));if(typeof n(void 0,{type:Gc.PROBE_UNKNOWN_ACTION()})>"u")throw new Error(Kt(13))})}function uN(e){const t=Object.keys(e),n={};for(let a=0;a"u")throw u&&u.type,new Error(Kt(14));f[h]=x,c=c||x!==y}return c=c||r.length!==Object.keys(l).length,c?f:l}}function Yc(...e){return e.length===0?t=>t:e.length===1?e[0]:e.reduce((t,n)=>(...r)=>t(n(...r)))}function J6(...e){return t=>(n,r)=>{const i=t(n,r);let a=()=>{throw new Error(Kt(15))};const l={getState:i.getState,dispatch:(c,...f)=>a(c,...f)},u=e.map(c=>c(l));return a=Yc(...u)(i.dispatch),{...i,dispatch:a}}}function cN(e){return Oy(e)&&"type"in e&&typeof e.type=="string"}var fN=Symbol.for("immer-nothing"),Zk=Symbol.for("immer-draftable"),hn=Symbol.for("immer-state");function cr(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var Ln=Object,Do=Ln.getPrototypeOf,Xc="constructor",Xf="prototype",ev="configurable",Qc="enumerable",Tc="writable",ds="value",ii=e=>!!e&&!!e[hn];function vr(e){var t;return e?dN(e)||Zf(e)||!!e[Zk]||!!((t=e[Xc])!=null&&t[Zk])||Jf(e)||ed(e):!1}var eU=Ln[Xf][Xc].toString(),Jk=new WeakMap;function dN(e){if(!e||!Ny(e))return!1;const t=Do(e);if(t===null||t===Ln[Xf])return!0;const n=Ln.hasOwnProperty.call(t,Xc)&&t[Xc];if(n===Object)return!0;if(!ko(n))return!1;let r=Jk.get(n);return r===void 0&&(r=Function.toString.call(n),Jk.set(n,r)),r===eU}function Qf(e,t,n=!0){Is(e)===0?(n?Reflect.ownKeys(e):Ln.keys(e)).forEach(i=>{t(i,e[i],e)}):e.forEach((r,i)=>t(i,r,e))}function Is(e){const t=e[hn];return t?t.type_:Zf(e)?1:Jf(e)?2:ed(e)?3:0}var eS=(e,t,n=Is(e))=>n===2?e.has(t):Ln[Xf].hasOwnProperty.call(e,t),tv=(e,t,n=Is(e))=>n===2?e.get(t):e[t],Zc=(e,t,n,r=Is(e))=>{r===2?e.set(t,n):r===3?e.add(n):e[t]=n};function tU(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}var Zf=Array.isArray,Jf=e=>e instanceof Map,ed=e=>e instanceof Set,Ny=e=>typeof e=="object",ko=e=>typeof e=="function",Km=e=>typeof e=="boolean";function nU(e){const t=+e;return Number.isInteger(t)&&String(t)===e}var Zr=e=>e.copy_||e.base_,Ay=e=>e.modified_?e.copy_:e.base_;function nv(e,t){if(Jf(e))return new Map(e);if(ed(e))return new Set(e);if(Zf(e))return Array[Xf].slice.call(e);const n=dN(e);if(t===!0||t==="class_only"&&!n){const r=Ln.getOwnPropertyDescriptors(e);delete r[hn];let i=Reflect.ownKeys(r);for(let a=0;a1&&Ln.defineProperties(e,{set:mc,add:mc,clear:mc,delete:mc}),Ln.freeze(e),t&&Qf(e,(n,r)=>{_y(r,!0)},!1)),e}function rU(){cr(2)}var mc={[ds]:rU};function td(e){return e===null||!Ny(e)?!0:Ln.isFrozen(e)}var Jc="MapSet",rv="Patches",tS="ArrayMethods",pN={};function Ia(e){const t=pN[e];return t||cr(0,e),t}var nS=e=>!!pN[e],ps,hN=()=>ps,iU=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:nS(Jc)?Ia(Jc):void 0,arrayMethodsPlugin_:nS(tS)?Ia(tS):void 0});function rS(e,t){t&&(e.patchPlugin_=Ia(rv),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function iv(e){av(e),e.drafts_.forEach(aU),e.drafts_=null}function av(e){e===ps&&(ps=e.parent_)}var iS=e=>ps=iU(ps,e);function aU(e){const t=e[hn];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function aS(e,t){t.unfinalizedDrafts_=t.drafts_.length;const n=t.drafts_[0];if(e!==void 0&&e!==n){n[hn].modified_&&(iv(t),cr(4)),vr(e)&&(e=oS(t,e));const{patchPlugin_:i}=t;i&&i.generateReplacementPatches_(n[hn].base_,e,t)}else e=oS(t,n);return oU(t,e,!0),iv(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==fN?e:void 0}function oS(e,t){if(td(t))return t;const n=t[hn];if(!n)return ef(t,e.handledSet_,e);if(!nd(n,e))return t;if(!n.modified_)return n.base_;if(!n.finalized_){const{callbacks_:r}=n;if(r)for(;r.length>0;)r.pop()(e);vN(n,e)}return n.copy_}function oU(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&_y(t,n)}function mN(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var nd=(e,t)=>e.scope_===t,lU=[];function gN(e,t,n,r){const i=Zr(e),a=e.type_;if(r!==void 0&&tv(i,r,a)===t){Zc(i,r,n,a);return}if(!e.draftLocations_){const u=e.draftLocations_=new Map;Qf(i,(c,f)=>{if(ii(f)){const d=u.get(f)||[];d.push(c),u.set(f,d)}})}const l=e.draftLocations_.get(t)??lU;for(const u of l)Zc(i,u,n,a)}function sU(e,t,n){e.callbacks_.push(function(i){var u;const a=t;if(!a||!nd(a,i))return;(u=i.mapSetPlugin_)==null||u.fixSetContents(a);const l=Ay(a);gN(e,a.draft_??a,l,n),vN(a,i)})}function vN(e,t){var r;if(e.modified_&&!e.finalized_&&(e.type_===3||e.type_===1&&e.allIndicesReassigned_||(((r=e.assigned_)==null?void 0:r.size)??0)>0)){const{patchPlugin_:i}=t;if(i){const a=i.getPath(e);a&&i.generatePatches_(e,a,t)}mN(e)}}function uU(e,t,n){const{scope_:r}=e;if(ii(n)){const i=n[hn];nd(i,r)&&i.callbacks_.push(function(){Dc(e);const l=Ay(i);gN(e,n,l,t)})}else vr(n)&&e.callbacks_.push(function(){const a=Zr(e);e.type_===3?a.has(n)&&ef(n,r.handledSet_,r):tv(a,t,e.type_)===n&&r.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&ef(tv(e.copy_,t,e.type_),r.handledSet_,r)})}function ef(e,t,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||ii(e)||t.has(e)||!vr(e)||td(e)||(t.add(e),Qf(e,(r,i)=>{if(ii(i)){const a=i[hn];if(nd(a,n)){const l=Ay(a);Zc(e,r,l,e.type_),mN(a)}}else vr(i)&&ef(i,t,n)})),e}function cU(e,t){const n=Zf(e),r={type_:n?1:0,scope_:t?t.scope_:hN(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let i=r,a=tf;n&&(i=[r],a=hs);const{revoke:l,proxy:u}=Proxy.revocable(i,a);return r.draft_=u,r.revoke_=l,[u,r]}var tf={get(e,t){if(t===hn)return e;let n=e.scope_.arrayMethodsPlugin_;const r=e.type_===1&&typeof t=="string";if(r&&n!=null&&n.isArrayOperationMethod(t))return n.createMethodInterceptor(e,t);const i=Zr(e);if(!eS(i,t,e.type_))return fU(e,i,t);const a=i[t];if(e.finalized_||!vr(a)||r&&e.operationMethod&&(n!=null&&n.isMutatingArrayMethod(e.operationMethod))&&nU(t))return a;if(a===Gm(e.base_,t)){Dc(e);const l=e.type_===1?+t:t,u=lv(e.scope_,a,e,l);return e.copy_[l]=u}return a},has(e,t){return t in Zr(e)},ownKeys(e){return Reflect.ownKeys(Zr(e))},set(e,t,n){const r=yN(Zr(e),t);if(r!=null&&r.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){const i=Gm(Zr(e),t),a=i==null?void 0:i[hn];if(a&&a.base_===n)return e.copy_[t]=n,e.assigned_.set(t,!1),!0;if(tU(n,i)&&(n!==void 0||eS(e.base_,t,e.type_)))return!0;Dc(e),ov(e)}return e.copy_[t]===n&&(n!==void 0||t in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=n,e.assigned_.set(t,!0),uU(e,t,n)),!0},deleteProperty(e,t){return Dc(e),Gm(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),ov(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const n=Zr(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{[Tc]:!0,[ev]:e.type_!==1||t!=="length",[Qc]:r[Qc],[ds]:n[t]}},defineProperty(){cr(11)},getPrototypeOf(e){return Do(e.base_)},setPrototypeOf(){cr(12)}},hs={};for(let e in tf){let t=tf[e];hs[e]=function(){const n=arguments;return n[0]=n[0][0],t.apply(this,n)}}hs.deleteProperty=function(e,t){return hs.set.call(this,e,t,void 0)};hs.set=function(e,t,n){return tf.set.call(this,e[0],t,n,e[0])};function Gm(e,t){const n=e[hn];return(n?Zr(n):e)[t]}function fU(e,t,n){var i;const r=yN(t,n);return r?ds in r?r[ds]:(i=r.get)==null?void 0:i.call(e.draft_):void 0}function yN(e,t){if(!(t in e))return;let n=Do(e);for(;n;){const r=Object.getOwnPropertyDescriptor(n,t);if(r)return r;n=Do(n)}}function ov(e){e.modified_||(e.modified_=!0,e.parent_&&ov(e.parent_))}function Dc(e){e.copy_||(e.assigned_=new Map,e.copy_=nv(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var dU=class{constructor(t){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(n,r,i)=>{if(ko(n)&&!ko(r)){const l=r;r=n;const u=this;return function(f=l,...d){return u.produce(f,h=>r.call(this,h,...d))}}ko(r)||cr(6),i!==void 0&&!ko(i)&&cr(7);let a;if(vr(n)){const l=iS(this),u=lv(l,n,void 0);let c=!0;try{a=r(u),c=!1}finally{c?iv(l):av(l)}return rS(l,i),aS(a,l)}else if(!n||!Ny(n)){if(a=r(n),a===void 0&&(a=n),a===fN&&(a=void 0),this.autoFreeze_&&_y(a,!0),i){const l=[],u=[];Ia(rv).generateReplacementPatches_(n,a,{patches_:l,inversePatches_:u}),i(l,u)}return a}else cr(1,n)},this.produceWithPatches=(n,r)=>{if(ko(n))return(u,...c)=>this.produceWithPatches(u,f=>n(f,...c));let i,a;return[this.produce(n,r,(u,c)=>{i=u,a=c}),i,a]},Km(t==null?void 0:t.autoFreeze)&&this.setAutoFreeze(t.autoFreeze),Km(t==null?void 0:t.useStrictShallowCopy)&&this.setUseStrictShallowCopy(t.useStrictShallowCopy),Km(t==null?void 0:t.useStrictIteration)&&this.setUseStrictIteration(t.useStrictIteration)}createDraft(t){vr(t)||cr(8),ii(t)&&(t=hr(t));const n=iS(this),r=lv(n,t,void 0);return r[hn].isManual_=!0,av(n),r}finishDraft(t,n){const r=t&&t[hn];(!r||!r.isManual_)&&cr(9);const{scope_:i}=r;return rS(i,n),aS(void 0,i)}setAutoFreeze(t){this.autoFreeze_=t}setUseStrictShallowCopy(t){this.useStrictShallowCopy_=t}setUseStrictIteration(t){this.useStrictIteration_=t}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(t,n){let r;for(r=n.length-1;r>=0;r--){const a=n[r];if(a.path.length===0&&a.op==="replace"){t=a.value;break}}r>-1&&(n=n.slice(r+1));const i=Ia(rv).applyPatches_;return ii(t)?i(t,n):this.produce(t,a=>i(a,n))}};function lv(e,t,n,r){const[i,a]=Jf(t)?Ia(Jc).proxyMap_(t,n):ed(t)?Ia(Jc).proxySet_(t,n):cU(t,n);return((n==null?void 0:n.scope_)??hN()).drafts_.push(i),a.callbacks_=(n==null?void 0:n.callbacks_)??[],a.key_=r,n&&r!==void 0?sU(n,a,r):a.callbacks_.push(function(c){var d;(d=c.mapSetPlugin_)==null||d.fixSetContents(a);const{patchPlugin_:f}=c;a.modified_&&f&&f.generatePatches_(a,[],c)}),i}function hr(e){return ii(e)||cr(10,e),xN(e)}function xN(e){if(!vr(e)||td(e))return e;const t=e[hn];let n,r=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=nv(e,t.scope_.immer_.useStrictShallowCopy_),r=t.scope_.immer_.shouldUseStrictIteration()}else n=nv(e,!0);return Qf(n,(i,a)=>{Zc(n,i,xN(a))},r),t&&(t.finalized_=!1),n}var pU=new dU,bN=pU.produce;function wN(e){return({dispatch:n,getState:r})=>i=>a=>typeof a=="function"?a(n,r,e):i(a)}var hU=wN(),mU=wN,gU=typeof window<"u"&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(arguments.length!==0)return typeof arguments[0]=="object"?Yc:Yc.apply(null,arguments)};function Jn(e,t){function n(...r){if(t){let i=t(...r);if(!i)throw new Error(zn(0));return{type:e,payload:i.payload,..."meta"in i&&{meta:i.meta},..."error"in i&&{error:i.error}}}return{type:e,payload:r[0]}}return n.toString=()=>`${e}`,n.type=e,n.match=r=>cN(r)&&r.type===e,n}var kN=class Jl extends Array{constructor(...t){super(...t),Object.setPrototypeOf(this,Jl.prototype)}static get[Symbol.species](){return Jl}concat(...t){return super.concat.apply(this,t)}prepend(...t){return t.length===1&&Array.isArray(t[0])?new Jl(...t[0].concat(this)):new Jl(...t.concat(this))}};function lS(e){return vr(e)?bN(e,()=>{}):e}function gc(e,t,n){return e.has(t)?e.get(t):e.set(t,n(t)).get(t)}function vU(e){return typeof e=="boolean"}var yU=()=>function(t){const{thunk:n=!0,immutableCheck:r=!0,serializableCheck:i=!0,actionCreatorCheck:a=!0}=t??{};let l=new kN;return n&&(vU(n)?l.push(hU):l.push(mU(n.extraArgument))),l},SN="RTK_autoBatch",at=()=>e=>({payload:e,meta:{[SN]:!0}}),sS=e=>t=>{setTimeout(t,e)},jN=(e={type:"raf"})=>t=>(...n)=>{const r=t(...n);let i=!0,a=!1,l=!1;const u=new Set,c=e.type==="tick"?queueMicrotask:e.type==="raf"?typeof window<"u"&&window.requestAnimationFrame?window.requestAnimationFrame:sS(10):e.type==="callback"?e.queueNotification:sS(e.timeout),f=()=>{l=!1,a&&(a=!1,u.forEach(d=>d()))};return Object.assign({},r,{subscribe(d){const h=()=>i&&d(),g=r.subscribe(h);return u.add(d),()=>{g(),u.delete(d)}},dispatch(d){var h;try{return i=!((h=d==null?void 0:d.meta)!=null&&h[SN]),a=!i,a&&(l||(l=!0,c(f))),r.dispatch(d)}finally{i=!0}}})},xU=e=>function(n){const{autoBatch:r=!0}=n??{};let i=new kN(e);return r&&i.push(jN(typeof r=="object"?r:void 0)),i};function bU(e){const t=yU(),{reducer:n=void 0,middleware:r,devTools:i=!0,preloadedState:a=void 0,enhancers:l=void 0}=e||{};let u;if(typeof n=="function")u=n;else if(Oy(n))u=uN(n);else throw new Error(zn(1));let c;typeof r=="function"?c=r(t):c=t();let f=Yc;i&&(f=gU({trace:!1,...typeof i=="object"&&i}));const d=J6(...c),h=xU(d);let g=typeof l=="function"?l(h):h();const y=f(...g);return sN(u,a,y)}function PN(e){const t={},n=[];let r;const i={addCase(a,l){const u=typeof a=="string"?a:a.type;if(!u)throw new Error(zn(28));if(u in t)throw new Error(zn(29));return t[u]=l,i},addAsyncThunk(a,l){return l.pending&&(t[a.pending.type]=l.pending),l.rejected&&(t[a.rejected.type]=l.rejected),l.fulfilled&&(t[a.fulfilled.type]=l.fulfilled),l.settled&&n.push({matcher:a.settled,reducer:l.settled}),i},addMatcher(a,l){return n.push({matcher:a,reducer:l}),i},addDefaultCase(a){return r=a,i}};return e(i),[t,n,r]}function wU(e){return typeof e=="function"}function kU(e,t){let[n,r,i]=PN(t),a;if(wU(e))a=()=>lS(e());else{const u=lS(e);a=()=>u}function l(u=a(),c){let f=[n[c.type],...r.filter(({matcher:d})=>d(c)).map(({reducer:d})=>d)];return f.filter(d=>!!d).length===0&&(f=[i]),f.reduce((d,h)=>{if(h)if(ii(d)){const y=h(d,c);return y===void 0?d:y}else{if(vr(d))return bN(d,g=>h(g,c));{const g=h(d,c);if(g===void 0){if(d===null)return d;throw Error("A case reducer on a non-draftable value must not return undefined")}return g}}return d},u)}return l.getInitialState=a,l}var SU="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW",jU=(e=21)=>{let t="",n=e;for(;n--;)t+=SU[Math.random()*64|0];return t},PU=Symbol.for("rtk-slice-createasyncthunk");function EU(e,t){return`${e}/${t}`}function CU({creators:e}={}){var n;const t=(n=e==null?void 0:e.asyncThunk)==null?void 0:n[PU];return function(i){const{name:a,reducerPath:l=a}=i;if(!a)throw new Error(zn(11));const u=(typeof i.reducers=="function"?i.reducers(NU()):i.reducers)||{},c=Object.keys(u),f={sliceCaseReducersByName:{},sliceCaseReducersByType:{},actionCreators:{},sliceMatchers:[]},d={addCase(A,I){const E=typeof A=="string"?A:A.type;if(!E)throw new Error(zn(12));if(E in f.sliceCaseReducersByType)throw new Error(zn(13));return f.sliceCaseReducersByType[E]=I,d},addMatcher(A,I){return f.sliceMatchers.push({matcher:A,reducer:I}),d},exposeAction(A,I){return f.actionCreators[A]=I,d},exposeCaseReducer(A,I){return f.sliceCaseReducersByName[A]=I,d}};c.forEach(A=>{const I=u[A],E={reducerName:A,type:EU(a,A),createNotation:typeof i.reducers=="function"};_U(I)?TU(E,I,d,t):AU(E,I,d)});function h(){const[A={},I=[],E=void 0]=typeof i.extraReducers=="function"?PN(i.extraReducers):[i.extraReducers],L={...A,...f.sliceCaseReducersByType};return kU(i.initialState,F=>{for(let H in L)F.addCase(H,L[H]);for(let H of f.sliceMatchers)F.addMatcher(H.matcher,H.reducer);for(let H of I)F.addMatcher(H.matcher,H.reducer);E&&F.addDefaultCase(E)})}const g=A=>A,y=new Map,x=new WeakMap;let S;function w(A,I){return S||(S=h()),S(A,I)}function P(){return S||(S=h()),S.getInitialState()}function C(A,I=!1){function E(F){let H=F[A];return typeof H>"u"&&I&&(H=gc(x,E,P)),H}function L(F=g){const H=gc(y,I,()=>new WeakMap);return gc(H,F,()=>{const R={};for(const[W,D]of Object.entries(i.selectors??{}))R[W]=OU(D,F,()=>gc(x,F,P),I);return R})}return{reducerPath:A,getSelectors:L,get selectors(){return L(E)},selectSlice:E}}const O={name:a,reducer:w,actions:f.actionCreators,caseReducers:f.sliceCaseReducersByName,getInitialState:P,...C(l),injectInto(A,{reducerPath:I,...E}={}){const L=I??l;return A.inject({reducerPath:L,reducer:w},E),{...O,...C(L,!0)}}};return O}}function OU(e,t,n,r){function i(a,...l){let u=t(a);return typeof u>"u"&&r&&(u=n()),e(u,...l)}return i.unwrapped=e,i}var On=CU();function NU(){function e(t,n){return{_reducerDefinitionType:"asyncThunk",payloadCreator:t,...n}}return e.withTypes=()=>e,{reducer(t){return Object.assign({[t.name](...n){return t(...n)}}[t.name],{_reducerDefinitionType:"reducer"})},preparedReducer(t,n){return{_reducerDefinitionType:"reducerWithPrepare",prepare:t,reducer:n}},asyncThunk:e}}function AU({type:e,reducerName:t,createNotation:n},r,i){let a,l;if("reducer"in r){if(n&&!IU(r))throw new Error(zn(17));a=r.reducer,l=r.prepare}else a=r;i.addCase(e,a).exposeCaseReducer(t,a).exposeAction(t,l?Jn(e,l):Jn(e))}function _U(e){return e._reducerDefinitionType==="asyncThunk"}function IU(e){return e._reducerDefinitionType==="reducerWithPrepare"}function TU({type:e,reducerName:t},n,r,i){if(!i)throw new Error(zn(18));const{payloadCreator:a,fulfilled:l,pending:u,rejected:c,settled:f,options:d}=n,h=i(e,a,d);r.exposeAction(t,h),l&&r.addCase(h.fulfilled,l),u&&r.addCase(h.pending,u),c&&r.addCase(h.rejected,c),f&&r.addMatcher(h.settled,f),r.exposeCaseReducer(t,{fulfilled:l||vc,pending:u||vc,rejected:c||vc,settled:f||vc})}function vc(){}var DU="task",EN="listener",CN="completed",Iy="cancelled",MU=`task-${Iy}`,LU=`task-${CN}`,sv=`${EN}-${Iy}`,RU=`${EN}-${CN}`,rd=class{constructor(e){kh(this,"name","TaskAbortError");kh(this,"message");this.code=e,this.message=`${DU} ${Iy} (reason: ${e})`}},Ty=(e,t)=>{if(typeof e!="function")throw new TypeError(zn(32))},nf=()=>{},ON=(e,t=nf)=>(e.catch(t),e),NN=(e,t)=>(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)),Pa=e=>{if(e.aborted)throw new rd(e.reason)};function AN(e,t){let n=nf;return new Promise((r,i)=>{const a=()=>i(new rd(e.reason));if(e.aborted){a();return}n=NN(e,a),t.finally(()=>n()).then(r,i)}).finally(()=>{n=nf})}var zU=async(e,t)=>{try{return await Promise.resolve(),{status:"ok",value:await e()}}catch(n){return{status:n instanceof rd?"cancelled":"rejected",error:n}}finally{t==null||t()}},rf=e=>t=>ON(AN(e,t).then(n=>(Pa(e),n))),_N=e=>{const t=rf(e);return n=>t(new Promise(r=>setTimeout(r,n)))},{assign:Oo}=Object,uS={},id="listenerMiddleware",$U=(e,t)=>{const n=r=>NN(e,()=>r.abort(e.reason));return(r,i)=>{Ty(r);const a=new AbortController;n(a);const l=zU(async()=>{Pa(e),Pa(a.signal);const u=await r({pause:rf(a.signal),delay:_N(a.signal),signal:a.signal});return Pa(a.signal),u},()=>a.abort(LU));return i!=null&&i.autoJoin&&t.push(l.catch(nf)),{result:rf(e)(l),cancel(){a.abort(MU)}}}},FU=(e,t)=>{const n=async(r,i)=>{Pa(t);let a=()=>{};const u=[new Promise((c,f)=>{let d=e({predicate:r,effect:(h,g)=>{g.unsubscribe(),c([h,g.getState(),g.getOriginalState()])}});a=()=>{d(),f()}})];i!=null&&u.push(new Promise(c=>setTimeout(c,i,null)));try{const c=await AN(t,Promise.race(u));return Pa(t),c}finally{a()}};return(r,i)=>ON(n(r,i))},IN=e=>{let{type:t,actionCreator:n,matcher:r,predicate:i,effect:a}=e;if(t)i=Jn(t).match;else if(n)t=n.type,i=n.match;else if(r)i=r;else if(!i)throw new Error(zn(21));return Ty(a),{predicate:i,type:t,effect:a}},TN=Oo(e=>{const{type:t,predicate:n,effect:r}=IN(e);return{id:jU(),effect:r,type:t,predicate:n,pending:new Set,unsubscribe:()=>{throw new Error(zn(22))}}},{withTypes:()=>TN}),cS=(e,t)=>{const{type:n,effect:r,predicate:i}=IN(t);return Array.from(e.values()).find(a=>(typeof n=="string"?a.type===n:a.predicate===i)&&a.effect===r)},uv=e=>{e.pending.forEach(t=>{t.abort(sv)})},BU=(e,t)=>()=>{for(const n of t.keys())uv(n);e.clear()},fS=(e,t,n)=>{try{e(t,n)}catch(r){setTimeout(()=>{throw r},0)}},DN=Oo(Jn(`${id}/add`),{withTypes:()=>DN}),UU=Jn(`${id}/removeAll`),MN=Oo(Jn(`${id}/remove`),{withTypes:()=>MN}),WU=(...e)=>{console.error(`${id}/error`,...e)},Ts=(e={})=>{const t=new Map,n=new Map,r=y=>{const x=n.get(y)??0;n.set(y,x+1)},i=y=>{const x=n.get(y)??1;x===1?n.delete(y):n.set(y,x-1)},{extra:a,onError:l=WU}=e;Ty(l);const u=y=>(y.unsubscribe=()=>t.delete(y.id),t.set(y.id,y),x=>{y.unsubscribe(),x!=null&&x.cancelActive&&uv(y)}),c=y=>{const x=cS(t,y)??TN(y);return u(x)};Oo(c,{withTypes:()=>c});const f=y=>{const x=cS(t,y);return x&&(x.unsubscribe(),y.cancelActive&&uv(x)),!!x};Oo(f,{withTypes:()=>f});const d=async(y,x,S,w)=>{const P=new AbortController,C=FU(c,P.signal),O=[];try{y.pending.add(P),r(y),await Promise.resolve(y.effect(x,Oo({},S,{getOriginalState:w,condition:(A,I)=>C(A,I).then(Boolean),take:C,delay:_N(P.signal),pause:rf(P.signal),extra:a,signal:P.signal,fork:$U(P.signal,O),unsubscribe:y.unsubscribe,subscribe:()=>{t.set(y.id,y)},cancelActiveListeners:()=>{y.pending.forEach((A,I,E)=>{A!==P&&(A.abort(sv),E.delete(A))})},cancel:()=>{P.abort(sv),y.pending.delete(P)},throwIfCancelled:()=>{Pa(P.signal)}})))}catch(A){A instanceof rd||fS(l,A,{raisedBy:"effect"})}finally{await Promise.all(O),P.abort(RU),i(y),y.pending.delete(P)}},h=BU(t,n);return{middleware:y=>x=>S=>{if(!cN(S))return x(S);if(DN.match(S))return c(S.payload);if(UU.match(S)){h();return}if(MN.match(S))return f(S.payload);let w=y.getState();const P=()=>{if(w===uS)throw new Error(zn(23));return w};let C;try{if(C=x(S),t.size>0){const O=y.getState(),A=Array.from(t.values());for(const I of A){let E=!1;try{E=I.predicate(S,O,w)}catch(L){E=!1,fS(l,L,{raisedBy:"predicate"})}E&&d(I,S,y,P)}}}finally{w=uS}return C},startListening:c,stopListening:f,clearListeners:h}};function zn(e){return`Minified Redux Toolkit error #${e}; visit https://redux-toolkit.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var qU={layoutType:"horizontal",width:0,height:0,margin:{top:5,right:5,bottom:5,left:5},scale:1},LN=On({name:"chartLayout",initialState:qU,reducers:{setLayout(e,t){e.layoutType=t.payload},setChartSize(e,t){e.width=t.payload.width,e.height=t.payload.height},setMargin(e,t){var n,r,i,a;e.margin.top=(n=t.payload.top)!==null&&n!==void 0?n:0,e.margin.right=(r=t.payload.right)!==null&&r!==void 0?r:0,e.margin.bottom=(i=t.payload.bottom)!==null&&i!==void 0?i:0,e.margin.left=(a=t.payload.left)!==null&&a!==void 0?a:0},setScale(e,t){e.scale=t.payload}}}),{setMargin:HU,setLayout:VU,setChartSize:KU,setScale:GU}=LN.actions,YU=LN.reducer;function RN(e,t,n){return Array.isArray(e)&&e&&t+n!==0?e.slice(t,n+1):e}function De(e){return Number.isFinite(e)}function Mr(e){return typeof e=="number"&&e>0&&Number.isFinite(e)}function dS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function So(e){for(var t=1;t{if(t&&n){var{width:r,height:i}=n,{align:a,verticalAlign:l,layout:u}=t;if((u==="vertical"||u==="horizontal"&&l==="middle")&&a!=="center"&&ge(e[a]))return So(So({},e),{},{[a]:e[a]+(r||0)});if((u==="horizontal"||u==="vertical"&&a==="center")&&l!=="middle"&&ge(e[l]))return So(So({},e),{},{[l]:e[l]+(i||0)})}return e},zr=(e,t)=>e==="horizontal"&&t==="xAxis"||e==="vertical"&&t==="yAxis"||e==="centric"&&t==="angleAxis"||e==="radial"&&t==="radiusAxis",zN=(e,t,n,r)=>{if(r)return e.map(u=>u.coordinate);var i,a,l=e.map(u=>(u.coordinate===t&&(i=!0),u.coordinate===n&&(a=!0),u.coordinate));return i||l.push(t),a||l.push(n),l},$N=(e,t,n)=>{if(!e)return null;var{duplicateDomain:r,type:i,range:a,scale:l,realScaleType:u,isCategorical:c,categoricalDomain:f,tickCount:d,ticks:h,niceTicks:g,axisType:y}=e;if(!l)return null;var x=u==="scaleBand"&&l.bandwidth?l.bandwidth()/2:2,S=i==="category"&&l.bandwidth?l.bandwidth()/x:0;if(S=y==="angleAxis"&&a&&a.length>=2?jn(a[0]-a[1])*2*S:S,h||g){var w=(h||g||[]).map((P,C)=>{var O=r?r.indexOf(P):P,A=l.map(O);return De(A)?{coordinate:A+S,value:P,offset:S,index:C}:null}).filter(Pn);return w}return c&&f?f.map((P,C)=>{var O=l.map(P);return De(O)?{coordinate:O+S,value:P,index:C,offset:S}:null}).filter(Pn):l.ticks&&d!=null?l.ticks(d).map((P,C)=>{var O=l.map(P);return De(O)?{coordinate:O+S,value:P,index:C,offset:S}:null}).filter(Pn):l.domain().map((P,C)=>{var O=l.map(P);return De(O)?{coordinate:O+S,value:r?r[P]:P,index:C,offset:S}:null}).filter(Pn)},e8=(e,t)=>{if(!t||t.length!==2||!ge(t[0])||!ge(t[1]))return e;var n=Math.min(t[0],t[1]),r=Math.max(t[0],t[1]),i=[e[0],e[1]];return(!ge(e[0])||e[0]r)&&(i[1]=r),i[0]>r&&(i[0]=r),i[1]{var t,n=e.length;if(!(n<=0)){var r=(t=e[0])===null||t===void 0?void 0:t.length;if(!(r==null||r<=0))for(var i=0;i=0?(f[0]=a,a+=g,f[1]=a):(f[0]=l,l+=g,f[1]=l)}}}},n8=e=>{var t,n=e.length;if(!(n<=0)){var r=(t=e[0])===null||t===void 0?void 0:t.length;if(!(r==null||r<=0))for(var i=0;i=0?(c[0]=a,a+=f,c[1]=a):(c[0]=0,c[1]=0)}}}},r8={sign:t8,expand:_5,none:Aa,silhouette:I5,wiggle:T5,positive:n8},i8=(e,t,n)=>{var r,i=(r=r8[n])!==null&&r!==void 0?r:Aa,a=A5().keys(t).value((u,c)=>Number(St(u,c,0))).order(Zg).offset(i),l=a(e);return l.forEach((u,c)=>{u.forEach((f,d)=>{var h=St(e[d],t[c],0);Array.isArray(h)&&h.length===2&&ge(h[0])&&ge(h[1])&&(f[0]=h[0],f[1]=h[1])})}),l};function FN(e){return e==null?void 0:String(e)}function pS(e){var{axis:t,ticks:n,bandSize:r,entry:i,index:a,dataKey:l}=e;if(t.type==="category"){if(!t.allowDuplicatedCategory&&t.dataKey&&!mt(i[t.dataKey])){var u=VO(n,"value",i[t.dataKey]);if(u)return u.coordinate+r/2}return n!=null&&n[a]?n[a].coordinate+r/2:null}var c=St(i,mt(l)?t.dataKey:l),f=t.scale.map(c);return ge(f)?f:null}var hS=e=>{var{axis:t,ticks:n,offset:r,bandSize:i,entry:a,index:l}=e;if(t.type==="category")return n[l]?n[l].coordinate+r:null;var u=St(a,t.dataKey,t.scale.domain()[l]);if(mt(u))return null;var c=t.scale.map(u);return ge(c)?c-i/2+r:null},a8=e=>{var{numericAxis:t}=e,n=t.scale.domain();if(t.type==="number"){var r=Math.min(n[0],n[1]),i=Math.max(n[0],n[1]);return r<=0&&i>=0?0:i<0?i:r}return n[0]},o8=e=>{var t=e.flat(2).filter(ge);return[Math.min(...t),Math.max(...t)]},l8=e=>[e[0]===1/0?0:e[0],e[1]===-1/0?0:e[1]],s8=(e,t,n)=>{if(e!=null)return l8(Object.keys(e).reduce((r,i)=>{var a=e[i];if(!a)return r;var{stackedData:l}=a,u=l.reduce((c,f)=>{var d=RN(f,t,n),h=o8(d);return!De(h[0])||!De(h[1])?c:[Math.min(c[0],h[0]),Math.max(c[1],h[1])]},[1/0,-1/0]);return[Math.min(u[0],r[0]),Math.max(u[1],r[1])]},[1/0,-1/0]))},mS=/^dataMin[\s]*-[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,gS=/^dataMax[\s]*\+[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,Mo=(e,t,n)=>{if(e&&e.scale&&e.scale.bandwidth){var r=e.scale.bandwidth();if(!n||r>0)return r}if(e&&t&&t.length>=2){for(var i=Yf(t,d=>d.coordinate),a=1/0,l=1,u=i.length;l{if(t==="horizontal")return e.chartX;if(t==="vertical")return e.chartY},c8=(e,t)=>t==="centric"?e.angle:e.radius,di=e=>e.layout.width,pi=e=>e.layout.height,f8=e=>e.layout.scale,BN=e=>e.layout.margin,od=G(e=>e.cartesianAxis.xAxis,e=>Object.values(e)),ld=G(e=>e.cartesianAxis.yAxis,e=>Object.values(e)),d8="data-recharts-item-index",p8="data-recharts-item-id",Ds=60;function yS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function yc(e){for(var t=1;te.brush.height;function y8(e){var t=ld(e);return t.reduce((n,r)=>{if(r.orientation==="left"&&!r.mirror&&!r.hide){var i=typeof r.width=="number"?r.width:Ds;return n+i}return n},0)}function x8(e){var t=ld(e);return t.reduce((n,r)=>{if(r.orientation==="right"&&!r.mirror&&!r.hide){var i=typeof r.width=="number"?r.width:Ds;return n+i}return n},0)}function b8(e){var t=od(e);return t.reduce((n,r)=>r.orientation==="top"&&!r.mirror&&!r.hide?n+r.height:n,0)}function w8(e){var t=od(e);return t.reduce((n,r)=>r.orientation==="bottom"&&!r.mirror&&!r.hide?n+r.height:n,0)}var zt=G([di,pi,BN,v8,y8,x8,b8,w8,lN,K6],(e,t,n,r,i,a,l,u,c,f)=>{var d={left:(n.left||0)+i,right:(n.right||0)+a},h={top:(n.top||0)+l,bottom:(n.bottom||0)+u},g=yc(yc({},h),d),y=g.bottom;g.bottom+=r,g=JU(g,c,f);var x=e-g.left-g.right,S=t-g.top-g.bottom;return yc(yc({brushBottom:y},g),{},{width:Math.max(x,0),height:Math.max(S,0)})}),k8=G(zt,e=>({x:e.left,y:e.top,width:e.width,height:e.height})),Dy=G(di,pi,(e,t)=>({x:0,y:0,width:e,height:t})),S8=k.createContext(null),on=()=>k.useContext(S8)!=null,sd=e=>e.brush,ud=G([sd,zt,BN],(e,t,n)=>({height:e.height,x:ge(e.x)?e.x:t.left,y:ge(e.y)?e.y:t.top+t.height+t.brushBottom-((n==null?void 0:n.bottom)||0),width:ge(e.width)?e.width:t.width})),Ym={},Xm={},Qm={},xS;function j8(){return xS||(xS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n,r,{signal:i,edges:a}={}){let l,u=null;const c=a!=null&&a.includes("leading"),f=a==null||a.includes("trailing"),d=()=>{u!==null&&(n.apply(l,u),l=void 0,u=null)},h=()=>{f&&d(),S()};let g=null;const y=()=>{g!=null&&clearTimeout(g),g=setTimeout(()=>{g=null,h()},r)},x=()=>{g!==null&&(clearTimeout(g),g=null)},S=()=>{x(),l=void 0,u=null},w=()=>{d()},P=function(...C){if(i!=null&&i.aborted)return;l=this,u=C;const O=g==null;y(),c&&O&&d()};return P.schedule=y,P.cancel=S,P.flush=w,i==null||i.addEventListener("abort",S,{once:!0}),P}e.debounce=t})(Qm)),Qm}var bS;function P8(){return bS||(bS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=j8();function n(r,i=0,a={}){typeof a!="object"&&(a={});const{leading:l=!1,trailing:u=!0,maxWait:c}=a,f=Array(2);l&&(f[0]="leading"),u&&(f[1]="trailing");let d,h=null;const g=t.debounce(function(...S){d=r.apply(this,S),h=null},i,{edges:f}),y=function(...S){return c!=null&&(h===null&&(h=Date.now()),Date.now()-h>=c)?(d=r.apply(this,S),h=Date.now(),g.cancel(),g.schedule(),d):(g.apply(this,S),d)},x=()=>(g.flush(),d);return y.cancel=g.cancel,y.flush=x,y}e.debounce=n})(Xm)),Xm}var wS;function E8(){return wS||(wS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=P8();function n(r,i=0,a={}){const{leading:l=!0,trailing:u=!0}=a;return t.debounce(r,i,{leading:l,maxWait:i,trailing:u})}e.throttle=n})(Ym)),Ym}var Zm,kS;function C8(){return kS||(kS=1,Zm=E8().throttle),Zm}var O8=C8();const N8=yr(O8);var af=function(t,n){for(var r=arguments.length,i=new Array(r>2?r-2:0),a=2;ai[l++]))}},_r={width:"100%",height:"100%",debounce:0,minWidth:0,initialDimension:{width:-1,height:-1}},UN=(e,t,n)=>{var{width:r=_r.width,height:i=_r.height,aspect:a,maxHeight:l}=n,u=_a(r)?e:Number(r),c=_a(i)?t:Number(i);return a&&a>0&&(u?c=u/a:c&&(u=c*a),l&&c!=null&&c>l&&(c=l)),{calculatedWidth:u,calculatedHeight:c}},A8={width:0,height:0,overflow:"visible"},_8={width:0,overflowX:"visible"},I8={height:0,overflowY:"visible"},T8={},D8=e=>{var{width:t,height:n}=e,r=_a(t),i=_a(n);return r&&i?A8:r?_8:i?I8:T8};function M8(e){var{width:t,height:n,aspect:r}=e,i=t,a=n;return i===void 0&&a===void 0?(i=_r.width,a=_r.height):i===void 0?i=r&&r>0?void 0:_r.width:a===void 0&&(a=r&&r>0?void 0:_r.height),{width:i,height:a}}function cv(){return cv=Object.assign?Object.assign.bind():function(e){for(var t=1;t({width:n,height:r}),[n,r]);return $8(i)?k.createElement(WN.Provider,{value:i},t):null}var My=()=>k.useContext(WN),F8=k.forwardRef((e,t)=>{var{aspect:n,initialDimension:r=_r.initialDimension,width:i,height:a,minWidth:l=_r.minWidth,minHeight:u,maxHeight:c,children:f,debounce:d=_r.debounce,id:h,className:g,onResize:y,style:x={}}=e,S=k.useRef(null),w=k.useRef();w.current=y,k.useImperativeHandle(t,()=>S.current);var[P,C]=k.useState({containerWidth:r.width,containerHeight:r.height}),O=k.useCallback((F,H)=>{C(R=>{var W=Math.round(F),D=Math.round(H);return R.containerWidth===W&&R.containerHeight===D?R:{containerWidth:W,containerHeight:D}})},[]);k.useEffect(()=>{if(S.current==null||typeof ResizeObserver>"u")return Fa;var F=D=>{var Z,Y=D[0];if(Y!=null){var{width:Q,height:pe}=Y.contentRect;O(Q,pe),(Z=w.current)===null||Z===void 0||Z.call(w,Q,pe)}};d>0&&(F=N8(F,d,{trailing:!0,leading:!1}));var H=new ResizeObserver(F),{width:R,height:W}=S.current.getBoundingClientRect();return O(R,W),H.observe(S.current),()=>{H.disconnect()}},[O,d]);var{containerWidth:A,containerHeight:I}=P;af(!n||n>0,"The aspect(%s) must be greater than zero.",n);var{calculatedWidth:E,calculatedHeight:L}=UN(A,I,{width:i,height:a,aspect:n,maxHeight:c});return af(E!=null&&E>0||L!=null&&L>0,`The width(%s) and height(%s) of chart should be greater than 0, please check the style of container, or the props width(%s) and height(%s), or add a minWidth(%s) or minHeight(%s) or use aspect(%s) to control the - height and width.`,E,L,i,a,l,u,n),k.createElement("div",{id:p?"".concat(p):void 0,className:Ge("recharts-responsive-container",g),style:kS(kS({},x),{},{width:i,height:a,minWidth:l,minHeight:u,maxHeight:c}),ref:S},k.createElement("div",{style:_8({width:i,height:a})},k.createElement(WN,{width:E,height:L},f)))}),qN=k.forwardRef((e,t)=>{var n=Ty();if(Lr(n.width)&&Lr(n.height))return e.children;var{width:r,height:i}=I8({width:e.width,height:e.height,aspect:e.aspect}),{calculatedWidth:a,calculatedHeight:l}=BN(void 0,void 0,{width:r,height:i,aspect:e.aspect,maxHeight:e.maxHeight});return ge(a)&&ge(l)?k.createElement(WN,{width:a,height:l},e.children):k.createElement(R8,sv({},e,{width:r,height:i,ref:t}))});function My(e){if(e)return{x:e.x,y:e.y,upperWidth:"upperWidth"in e?e.upperWidth:e.width,lowerWidth:"lowerWidth"in e?e.lowerWidth:e.width,width:e.width,height:e.height}}var sd=()=>{var e,t=on(),n=Pe(x8),r=Pe(ld),i=(e=Pe(od))===null||e===void 0?void 0:e.padding;return!t||!r||!i?n:{width:r.width-i.left-i.right,height:r.height-i.top-i.bottom,x:i.left,y:i.top}},z8={top:0,bottom:0,left:0,right:0,width:0,height:0,brushBottom:0},HN=()=>{var e;return(e=Pe(zt))!==null&&e!==void 0?e:z8},VN=()=>Pe(di),KN=()=>Pe(hi),He=e=>e.layout.layoutType,Ba=()=>Pe(He),Dy=()=>{var e=Ba();if(e==="horizontal"||e==="vertical")return e},GN=e=>{var t=e.layout.layoutType;if(t==="centric"||t==="radial")return t},$8=()=>{var e=Ba();return e!==void 0},Ds=e=>{var t=yt(),n=on(),{width:r,height:i}=e,a=Ty(),l=r,u=i;return a&&(l=a.width>0?a.width:r,u=a.height>0?a.height:i),k.useEffect(()=>{!n&&Lr(l)&&Lr(u)&&t(qU({width:l,height:u}))},[t,n,l,u]),null},YN=Symbol.for("immer-nothing"),SS=Symbol.for("immer-draftable"),$n=Symbol.for("immer-state");function dr(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var ms=Object.getPrototypeOf;function Lo(e){return!!e&&!!e[$n]}function Ta(e){var t;return e?XN(e)||Array.isArray(e)||!!e[SS]||!!((t=e.constructor)!=null&&t[SS])||Ls(e)||cd(e):!1}var F8=Object.prototype.constructor.toString(),jS=new WeakMap;function XN(e){if(!e||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);if(t===null||t===Object.prototype)return!0;const n=Object.hasOwnProperty.call(t,"constructor")&&t.constructor;if(n===Object)return!0;if(typeof n!="function")return!1;let r=jS.get(n);return r===void 0&&(r=Function.toString.call(n),jS.set(n,r)),r===F8}function rf(e,t,n=!0){ud(e)===0?(n?Reflect.ownKeys(e):Object.keys(e)).forEach(i=>{t(i,e[i],e)}):e.forEach((r,i)=>t(i,r,e))}function ud(e){const t=e[$n];return t?t.type_:Array.isArray(e)?1:Ls(e)?2:cd(e)?3:0}function uv(e,t){return ud(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function QN(e,t,n){const r=ud(e);r===2?e.set(t,n):r===3?e.add(n):e[t]=n}function B8(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}function Ls(e){return e instanceof Map}function cd(e){return e instanceof Set}function xa(e){return e.copy_||e.base_}function cv(e,t){if(Ls(e))return new Map(e);if(cd(e))return new Set(e);if(Array.isArray(e))return Array.prototype.slice.call(e);const n=XN(e);if(t===!0||t==="class_only"&&!n){const r=Object.getOwnPropertyDescriptors(e);delete r[$n];let i=Reflect.ownKeys(r);for(let a=0;a1&&Object.defineProperties(e,{set:vc,add:vc,clear:vc,delete:vc}),Object.freeze(e),t&&Object.values(e).forEach(n=>Ly(n,!0))),e}function U8(){dr(2)}var vc={value:U8};function fd(e){return e===null||typeof e!="object"?!0:Object.isFrozen(e)}var W8={};function Ma(e){const t=W8[e];return t||dr(0,e),t}var gs;function ZN(){return gs}function q8(e,t){return{drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function PS(e,t){t&&(Ma("Patches"),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function fv(e){dv(e),e.drafts_.forEach(H8),e.drafts_=null}function dv(e){e===gs&&(gs=e.parent_)}function ES(e){return gs=q8(gs,e)}function H8(e){const t=e[$n];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function CS(e,t){t.unfinalizedDrafts_=t.drafts_.length;const n=t.drafts_[0];return e!==void 0&&e!==n?(n[$n].modified_&&(fv(t),dr(4)),Ta(e)&&(e=af(t,e),t.parent_||of(t,e)),t.patches_&&Ma("Patches").generateReplacementPatches_(n[$n].base_,e,t.patches_,t.inversePatches_)):e=af(t,n,[]),fv(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==YN?e:void 0}function af(e,t,n){if(fd(t))return t;const r=e.immer_.shouldUseStrictIteration(),i=t[$n];if(!i)return rf(t,(a,l)=>OS(e,i,t,a,l,n),r),t;if(i.scope_!==e)return t;if(!i.modified_)return of(e,i.base_,!0),i.base_;if(!i.finalized_){i.finalized_=!0,i.scope_.unfinalizedDrafts_--;const a=i.copy_;let l=a,u=!1;i.type_===3&&(l=new Set(a),a.clear(),u=!0),rf(l,(c,f)=>OS(e,i,a,c,f,n,u),r),of(e,a,!1),n&&e.patches_&&Ma("Patches").generatePatches_(i,n,e.patches_,e.inversePatches_)}return i.copy_}function OS(e,t,n,r,i,a,l){if(i==null||typeof i!="object"&&!l)return;const u=fd(i);if(!(u&&!l)){if(Lo(i)){const c=a&&t&&t.type_!==3&&!uv(t.assigned_,r)?a.concat(r):void 0,f=af(e,i,c);if(QN(n,r,f),Lo(f))e.canAutoFreeze_=!1;else return}else l&&n.add(i);if(Ta(i)&&!u){if(!e.immer_.autoFreeze_&&e.unfinalizedDrafts_<1||t&&t.base_&&t.base_[r]===i&&u)return;af(e,i),(!t||!t.scope_.parent_)&&typeof r!="symbol"&&(Ls(n)?n.has(r):Object.prototype.propertyIsEnumerable.call(n,r))&&of(e,i)}}}function of(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&Ly(t,n)}function V8(e,t){const n=Array.isArray(e),r={type_:n?1:0,scope_:t?t.scope_:ZN(),modified_:!1,finalized_:!1,assigned_:{},parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1};let i=r,a=Ry;n&&(i=[r],a=vs);const{revoke:l,proxy:u}=Proxy.revocable(i,a);return r.draft_=u,r.revoke_=l,u}var Ry={get(e,t){if(t===$n)return e;const n=xa(e);if(!uv(n,t))return K8(e,n,t);const r=n[t];return e.finalized_||!Ta(r)?r:r===Qm(e.base_,t)?(Zm(e),e.copy_[t]=pv(r,e)):r},has(e,t){return t in xa(e)},ownKeys(e){return Reflect.ownKeys(xa(e))},set(e,t,n){const r=JN(xa(e),t);if(r!=null&&r.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){const i=Qm(xa(e),t),a=i==null?void 0:i[$n];if(a&&a.base_===n)return e.copy_[t]=n,e.assigned_[t]=!1,!0;if(B8(n,i)&&(n!==void 0||uv(e.base_,t)))return!0;Zm(e),hv(e)}return e.copy_[t]===n&&(n!==void 0||t in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=n,e.assigned_[t]=!0),!0},deleteProperty(e,t){return Qm(e.base_,t)!==void 0||t in e.base_?(e.assigned_[t]=!1,Zm(e),hv(e)):delete e.assigned_[t],e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const n=xa(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{writable:!0,configurable:e.type_!==1||t!=="length",enumerable:r.enumerable,value:n[t]}},defineProperty(){dr(11)},getPrototypeOf(e){return ms(e.base_)},setPrototypeOf(){dr(12)}},vs={};rf(Ry,(e,t)=>{vs[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}});vs.deleteProperty=function(e,t){return vs.set.call(this,e,t,void 0)};vs.set=function(e,t,n){return Ry.set.call(this,e[0],t,n,e[0])};function Qm(e,t){const n=e[$n];return(n?xa(n):e)[t]}function K8(e,t,n){var i;const r=JN(t,n);return r?"value"in r?r.value:(i=r.get)==null?void 0:i.call(e.draft_):void 0}function JN(e,t){if(!(t in e))return;let n=ms(e);for(;n;){const r=Object.getOwnPropertyDescriptor(n,t);if(r)return r;n=ms(n)}}function hv(e){e.modified_||(e.modified_=!0,e.parent_&&hv(e.parent_))}function Zm(e){e.copy_||(e.copy_=cv(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var G8=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!0,this.produce=(t,n,r)=>{if(typeof t=="function"&&typeof n!="function"){const a=n;n=t;const l=this;return function(c=a,...f){return l.produce(c,d=>n.call(this,d,...f))}}typeof n!="function"&&dr(6),r!==void 0&&typeof r!="function"&&dr(7);let i;if(Ta(t)){const a=ES(this),l=pv(t,void 0);let u=!0;try{i=n(l),u=!1}finally{u?fv(a):dv(a)}return PS(a,r),CS(i,a)}else if(!t||typeof t!="object"){if(i=n(t),i===void 0&&(i=t),i===YN&&(i=void 0),this.autoFreeze_&&Ly(i,!0),r){const a=[],l=[];Ma("Patches").generateReplacementPatches_(t,i,a,l),r(a,l)}return i}else dr(1,t)},this.produceWithPatches=(t,n)=>{if(typeof t=="function")return(l,...u)=>this.produceWithPatches(l,c=>t(c,...u));let r,i;return[this.produce(t,n,(l,u)=>{r=l,i=u}),r,i]},typeof(e==null?void 0:e.autoFreeze)=="boolean"&&this.setAutoFreeze(e.autoFreeze),typeof(e==null?void 0:e.useStrictShallowCopy)=="boolean"&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),typeof(e==null?void 0:e.useStrictIteration)=="boolean"&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){Ta(e)||dr(8),Lo(e)&&(e=Y8(e));const t=ES(this),n=pv(e,void 0);return n[$n].isManual_=!0,dv(t),n}finishDraft(e,t){const n=e&&e[$n];(!n||!n.isManual_)&&dr(9);const{scope_:r}=n;return PS(r,t),CS(void 0,r)}setAutoFreeze(e){this.autoFreeze_=e}setUseStrictShallowCopy(e){this.useStrictShallowCopy_=e}setUseStrictIteration(e){this.useStrictIteration_=e}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(e,t){let n;for(n=t.length-1;n>=0;n--){const i=t[n];if(i.path.length===0&&i.op==="replace"){e=i.value;break}}n>-1&&(t=t.slice(n+1));const r=Ma("Patches").applyPatches_;return Lo(e)?r(e,t):this.produce(e,i=>r(i,t))}};function pv(e,t){const n=Ls(e)?Ma("MapSet").proxyMap_(e,t):cd(e)?Ma("MapSet").proxySet_(e,t):V8(e,t);return(t?t.scope_:ZN()).drafts_.push(n),n}function Y8(e){return Lo(e)||dr(10,e),eA(e)}function eA(e){if(!Ta(e)||fd(e))return e;const t=e[$n];let n,r=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=cv(e,t.scope_.immer_.useStrictShallowCopy_),r=t.scope_.immer_.shouldUseStrictIteration()}else n=cv(e,!0);return rf(n,(i,a)=>{QN(n,i,eA(a))},r),t&&(t.finalized_=!1),n}var X8=new G8;X8.produce;var Q8={settings:{layout:"horizontal",align:"center",verticalAlign:"middle",itemSorter:"value"},size:{width:0,height:0},payload:[]},tA=On({name:"legend",initialState:Q8,reducers:{setLegendSize(e,t){e.size.width=t.payload.width,e.size.height=t.payload.height},setLegendSettings(e,t){e.settings.align=t.payload.align,e.settings.layout=t.payload.layout,e.settings.verticalAlign=t.payload.verticalAlign,e.settings.itemSorter=t.payload.itemSorter},addLegendPayload:{reducer(e,t){e.payload.push(t.payload)},prepare:at()},replaceLegendPayload:{reducer(e,t){var{prev:n,next:r}=t.payload,i=mr(e).payload.indexOf(n);i>-1&&(e.payload[i]=r)},prepare:at()},removeLegendPayload:{reducer(e,t){var n=mr(e).payload.indexOf(t.payload);n>-1&&e.payload.splice(n,1)},prepare:at()}}}),{setLegendSize:Tte,setLegendSettings:Mte,addLegendPayload:Z8,replaceLegendPayload:J8,removeLegendPayload:eW}=tA.actions,tW=tA.reducer;function mv(){return mv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{separator:t=vo.separator,contentStyle:n,itemStyle:r,labelStyle:i=vo.labelStyle,payload:a,formatter:l,itemSorter:u,wrapperClassName:c,labelClassName:f,label:d,labelFormatter:p,accessibilityLayer:g=vo.accessibilityLayer}=e,y=()=>{if(a&&a.length){var I={padding:0,margin:0},E=(u?Kf(a,u):a).map((L,F)=>{if(L.type==="none")return null;var H=L.formatter||l||aW,{value:R,name:W}=L,M=R,Z=W;if(H){var Y=H(R,W,L,F,a);if(Array.isArray(Y))[M,Z]=Y;else if(Y!=null)M=Y;else return null}var Q=Ul(Ul({},vo.itemStyle),{},{color:L.color||vo.itemStyle.color},r);return k.createElement("li",{className:"recharts-tooltip-item",key:"tooltip-item-".concat(F),style:Q},Dr(Z)?k.createElement("span",{className:"recharts-tooltip-item-name"},Z):null,Dr(Z)?k.createElement("span",{className:"recharts-tooltip-item-separator"},t):null,k.createElement("span",{className:"recharts-tooltip-item-value"},M),k.createElement("span",{className:"recharts-tooltip-item-unit"},L.unit||""))});return k.createElement("ul",{className:"recharts-tooltip-item-list",style:I},E)}return null},x=Ul(Ul({},vo.contentStyle),n),S=Ul({margin:0},i),w=!mt(d),P=w?d:"",C=Ge("recharts-default-tooltip",c),O=Ge("recharts-tooltip-label",f);w&&p&&a!==void 0&&a!==null&&(P=p(d,a));var A=g?{role:"status","aria-live":"assertive"}:{};return k.createElement("div",mv({className:C,style:x},A),k.createElement("p",{className:O,style:S},k.isValidElement(P)?P:"".concat(P)),y())},Wl="recharts-tooltip-wrapper",lW={visibility:"hidden"};function sW(e){var{coordinate:t,translateX:n,translateY:r}=e;return Ge(Wl,{["".concat(Wl,"-right")]:ge(n)&&t&&ge(t.x)&&n>=t.x,["".concat(Wl,"-left")]:ge(n)&&t&&ge(t.x)&&n=t.y,["".concat(Wl,"-top")]:ge(r)&&t&&ge(t.y)&&r0?i:0),p=n[r]+i;if(t[r])return l[r]?d:p;var g=c[r];if(g==null)return 0;if(l[r]){var y=d,x=g;return yw?Math.max(d,g):Math.max(p,g)}function uW(e){var{translateX:t,translateY:n,useTranslate3d:r}=e;return{transform:r?"translate3d(".concat(t,"px, ").concat(n,"px, 0)"):"translate(".concat(t,"px, ").concat(n,"px)")}}function cW(e){var{allowEscapeViewBox:t,coordinate:n,offsetTop:r,offsetLeft:i,position:a,reverseDirection:l,tooltipBox:u,useTranslate3d:c,viewBox:f}=e,d,p,g;return u.height>0&&u.width>0&&n?(p=AS({allowEscapeViewBox:t,coordinate:n,key:"x",offset:i,position:a,reverseDirection:l,tooltipDimension:u.width,viewBox:f,viewBoxDimension:f.width}),g=AS({allowEscapeViewBox:t,coordinate:n,key:"y",offset:r,position:a,reverseDirection:l,tooltipDimension:u.height,viewBox:f,viewBoxDimension:f.height}),d=uW({translateX:p,translateY:g,useTranslate3d:c})):d=lW,{cssProperties:d,cssClasses:sW({translateX:p,translateY:g,coordinate:n})}}function _S(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function yc(e){for(var t=1;t{if(t.key==="Escape"){var n,r,i,a;this.setState({dismissed:!0,dismissedAtCoordinate:{x:(n=(r=this.props.coordinate)===null||r===void 0?void 0:r.x)!==null&&n!==void 0?n:0,y:(i=(a=this.props.coordinate)===null||a===void 0?void 0:a.y)!==null&&i!==void 0?i:0}})}})}componentDidMount(){document.addEventListener("keydown",this.handleKeyDown)}componentWillUnmount(){document.removeEventListener("keydown",this.handleKeyDown)}componentDidUpdate(){var t,n;this.state.dismissed&&(((t=this.props.coordinate)===null||t===void 0?void 0:t.x)!==this.state.dismissedAtCoordinate.x||((n=this.props.coordinate)===null||n===void 0?void 0:n.y)!==this.state.dismissedAtCoordinate.y)&&(this.state.dismissed=!1)}render(){var{active:t,allowEscapeViewBox:n,animationDuration:r,animationEasing:i,children:a,coordinate:l,hasPayload:u,isAnimationActive:c,offset:f,position:d,reverseDirection:p,useTranslate3d:g,viewBox:y,wrapperStyle:x,lastBoundingBox:S,innerRef:w,hasPortalFromProps:P}=this.props,C=typeof f=="number"?f:f.x,O=typeof f=="number"?f:f.y,{cssClasses:A,cssProperties:I}=cW({allowEscapeViewBox:n,coordinate:l,offsetLeft:C,offsetTop:O,position:d,reverseDirection:p,tooltipBox:{height:S.height,width:S.width},useTranslate3d:g,viewBox:y}),E=P?{}:yc(yc({transition:c&&t?"transform ".concat(r,"ms ").concat(i):void 0},I),{},{pointerEvents:"none",visibility:!this.state.dismissed&&t&&u?"visible":"hidden",position:"absolute",top:0,left:0}),L=yc(yc({},E),{},{visibility:!this.state.dismissed&&t&&u?"visible":"hidden"},x);return k.createElement("div",{xmlns:"http://www.w3.org/1999/xhtml",tabIndex:-1,className:A,style:L,ref:w},a)}}var nA=()=>{var e;return(e=Pe(t=>t.rootProps.accessibilityLayer))!==null&&e!==void 0?e:!0};function vv(){return vv=Object.assign?Object.assign.bind():function(e){for(var t=1;tMe(e.x)&&Me(e.y),DS=e=>e.base!=null&&lf(e.base)&&lf(e),ql=e=>e.x,Hl=e=>e.y,vW=(e,t)=>{if(typeof e=="function")return e;var n="curve".concat(_s(e));if((n==="curveMonotone"||n==="curveBump")&&t){var r=MS["".concat(n).concat(t==="vertical"?"Y":"X")];if(r)return r}return MS[n]||Hf},LS={connectNulls:!1,type:"linear"},yW=e=>{var{type:t=LS.type,points:n=[],baseLine:r,layout:i,connectNulls:a=LS.connectNulls}=e,l=vW(t,i),u=a?n.filter(lf):n;if(Array.isArray(r)){var c,f=n.map((x,S)=>TS(TS({},x),{},{base:r[S]}));i==="vertical"?c=cc().y(Hl).x1(ql).x0(x=>x.base.x):c=cc().x(ql).y1(Hl).y0(x=>x.base.y);var d=c.defined(DS).curve(l),p=a?f.filter(DS):f;return d(p)}var g;i==="vertical"&&ge(r)?g=cc().y(Hl).x1(ql).x0(r):ge(r)?g=cc().x(ql).y1(Hl).y0(r):g=IO().x(ql).y(Hl);var y=g.defined(lf).curve(l);return y(u)},os=e=>{var{className:t,points:n,path:r,pathRef:i}=e,a=Ba();if((!n||!n.length)&&!r)return null;var l={type:e.type,points:e.points,baseLine:e.baseLine,layout:e.layout||a,connectNulls:e.connectNulls},u=n&&n.length?yW(l):r;return k.createElement("path",vv({},Jn(e),wy(e),{className:Ge("recharts-curve",t),d:u===null?void 0:u,ref:i}))},xW=["x","y","top","left","width","height","className"];function yv(){return yv=Object.assign?Object.assign.bind():function(e){for(var t=1;t"M".concat(e,",").concat(i,"v").concat(r,"M").concat(a,",").concat(t,"h").concat(n),CW=e=>{var{x:t=0,y:n=0,top:r=0,left:i=0,width:a=0,height:l=0,className:u}=e,c=jW(e,xW),f=bW({x:t,y:n,top:r,left:i,width:a,height:l},c);return!ge(t)||!ge(n)||!ge(a)||!ge(l)||!ge(r)||!ge(i)?null:k.createElement("path",yv({},dn(f),{className:Ge("recharts-cross",u),d:EW(t,n,a,l,r,i)}))};function OW(e,t,n,r){var i=r/2;return{stroke:"none",fill:"#ccc",x:e==="horizontal"?t.x-i:n.left+.5,y:e==="horizontal"?n.top+.5:t.y-i,width:e==="horizontal"?r:n.width-1,height:e==="horizontal"?n.height-1:r}}function zS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function $S(e){for(var t=1;te.replace(/([A-Z])/g,t=>"-".concat(t.toLowerCase())),rA=(e,t,n)=>e.map(r=>"".concat(IW(r)," ").concat(t,"ms ").concat(n)).join(","),TW=(e,t)=>[Object.keys(e),Object.keys(t)].reduce((n,r)=>n.filter(i=>r.includes(i))),ys=(e,t)=>Object.keys(t).reduce((n,r)=>$S($S({},n),{},{[r]:e(r,t[r])}),{});function FS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Ot(e){for(var t=1;te+(t-e)*n,xv=e=>{var{from:t,to:n}=e;return t!==n},iA=(e,t,n)=>{var r=ys((i,a)=>{if(xv(a)){var[l,u]=e(a.from,a.to,a.velocity);return Ot(Ot({},a),{},{from:l,velocity:u})}return a},t);return n<1?ys((i,a)=>xv(a)&&r[i]!=null?Ot(Ot({},a),{},{velocity:sf(a.velocity,r[i].velocity,n),from:sf(a.from,r[i].from,n)}):a,t):iA(e,r,n-1)};function RW(e,t,n,r,i,a){var l,u=r.reduce((g,y)=>Ot(Ot({},g),{},{[y]:{from:e[y],velocity:0,to:t[y]}}),{}),c=()=>ys((g,y)=>y.from,u),f=()=>!Object.values(u).filter(xv).length,d=null,p=g=>{l||(l=g);var y=g-l,x=y/n.dt;u=iA(n,u,x),i(Ot(Ot(Ot({},e),t),c())),l=g,f()||(d=a.setTimeout(p))};return()=>(d=a.setTimeout(p),()=>{var g;(g=d)===null||g===void 0||g()})}function zW(e,t,n,r,i,a,l){var u=null,c=i.reduce((p,g)=>{var y=e[g],x=t[g];return y==null||x==null?p:Ot(Ot({},p),{},{[g]:[y,x]})},{}),f,d=p=>{f||(f=p);var g=(p-f)/r,y=ys((S,w)=>sf(...w,n(g)),c);if(a(Ot(Ot(Ot({},e),t),y)),g<1)u=l.setTimeout(d);else{var x=ys((S,w)=>sf(...w,n(1)),c);a(Ot(Ot(Ot({},e),t),x))}};return()=>(u=l.setTimeout(d),()=>{var p;(p=u)===null||p===void 0||p()})}const $W=(e,t,n,r,i,a)=>{var l=TW(e,t);return n==null?()=>(i(Ot(Ot({},e),t)),()=>{}):n.isStepper===!0?RW(e,t,n,l,i,a):zW(e,t,n,r,l,i,a)};var uf=1e-4,aA=(e,t)=>[0,3*e,3*t-6*e,3*e-3*t+1],oA=(e,t)=>e.map((n,r)=>n*t**r).reduce((n,r)=>n+r),BS=(e,t)=>n=>{var r=aA(e,t);return oA(r,n)},FW=(e,t)=>n=>{var r=aA(e,t),i=[...r.map((a,l)=>a*l).slice(1),0];return oA(i,n)},BW=e=>{var t,n=e.split("(");if(n.length!==2||n[0]!=="cubic-bezier")return null;var r=(t=n[1])===null||t===void 0||(t=t.split(")")[0])===null||t===void 0?void 0:t.split(",");if(r==null||r.length!==4)return null;var i=r.map(a=>parseFloat(a));return[i[0],i[1],i[2],i[3]]},UW=function(){for(var t=arguments.length,n=new Array(t),r=0;r{var i=BS(e,n),a=BS(t,r),l=FW(e,n),u=f=>f>1?1:f<0?0:f,c=f=>{for(var d=f>1?1:f,p=d,g=0;g<8;++g){var y=i(p)-d,x=l(p);if(Math.abs(y-d)0&&arguments[0]!==void 0?arguments[0]:{},{stiff:n=100,damping:r=8,dt:i=17}=t,a=(l,u,c)=>{var f=-(l-u)*n,d=c*r,p=c+(f-d)*i/1e3,g=c*i/1e3+l;return Math.abs(g-u){if(typeof e=="string")switch(e){case"ease":case"ease-in-out":case"ease-out":case"ease-in":case"linear":return US(e);case"spring":return qW();default:if(e.split("(")[0]==="cubic-bezier")return US(e)}return typeof e=="function"?e:null};function VW(e){var t,n=()=>null,r=!1,i=null,a=l=>{if(!r){if(Array.isArray(l)){if(!l.length)return;var u=l,[c,...f]=u;if(typeof c=="number"){i=e.setTimeout(a.bind(null,f),c);return}a(c),i=e.setTimeout(a.bind(null,f));return}typeof l=="string"&&(t=l,n(t)),typeof l=="object"&&(t=l,n(t)),typeof l=="function"&&l()}};return{stop:()=>{r=!0},start:l=>{r=!1,i&&(i(),i=null),a(l)},subscribe:l=>(n=l,()=>{n=()=>null}),getTimeoutController:()=>e}}class KW{setTimeout(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=performance.now(),i=null,a=l=>{l-r>=n?t(l):typeof requestAnimationFrame=="function"&&(i=requestAnimationFrame(a))};return i=requestAnimationFrame(a),()=>{i!=null&&cancelAnimationFrame(i)}}}function GW(){return VW(new KW)}var YW=k.createContext(GW);function XW(e,t){var n=k.useContext(YW);return k.useMemo(()=>t??n(e),[e,t,n])}var QW=()=>!(typeof window<"u"&&window.document&&window.document.createElement&&window.setTimeout),Rs={isSsr:QW()},ZW={begin:0,duration:1e3,easing:"ease",isActive:!0,canBegin:!0,onAnimationEnd:()=>{},onAnimationStart:()=>{}},WS={t:0},Jm={t:1};function dd(e){var t=mn(e,ZW),{isActive:n,canBegin:r,duration:i,easing:a,begin:l,onAnimationEnd:u,onAnimationStart:c,children:f}=t,d=n==="auto"?!Rs.isSsr:n,p=XW(t.animationId,t.animationManager),[g,y]=k.useState(d?WS:Jm),x=k.useRef(null);return k.useEffect(()=>{d||y(Jm)},[d]),k.useEffect(()=>{if(!d||!r)return Fa;var S=$W(WS,Jm,HW(a),i,y,p.getTimeoutController()),w=()=>{x.current=S()};return p.start([c,l,w,i,u]),()=>{p.stop(),x.current&&x.current(),u()}},[d,r,i,a,l,c,u,p]),f(g.t)}function hd(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"animation-",n=k.useRef(fs(t)),r=k.useRef(e);return r.current!==e&&(n.current=fs(t),r.current=e),n.current}var JW=["radius"],e9=["radius"],qS,HS,VS,KS,GS,YS,XS,QS,ZS,JS;function ej(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function tj(e){for(var t=1;t{var a=Ki(n),l=Ki(r),u=Math.min(Math.abs(a)/2,Math.abs(l)/2),c=l>=0?1:-1,f=a>=0?1:-1,d=l>=0&&a>=0||l<0&&a<0?1:0,p;if(u>0&&Array.isArray(i)){for(var g=[0,0,0,0],y=0,x=4;yu?u:w}p=pt(qS||(qS=Cr(["M",",",""])),e,t+c*g[0]),g[0]>0&&(p+=pt(HS||(HS=Cr(["A ",",",",0,0,",",",",",""])),g[0],g[0],d,e+f*g[0],t)),p+=pt(VS||(VS=Cr(["L ",",",""])),e+n-f*g[1],t),g[1]>0&&(p+=pt(KS||(KS=Cr(["A ",",",",0,0,",`, - `,",",""])),g[1],g[1],d,e+n,t+c*g[1])),p+=pt(GS||(GS=Cr(["L ",",",""])),e+n,t+r-c*g[2]),g[2]>0&&(p+=pt(YS||(YS=Cr(["A ",",",",0,0,",`, - `,",",""])),g[2],g[2],d,e+n-f*g[2],t+r)),p+=pt(XS||(XS=Cr(["L ",",",""])),e+f*g[3],t+r),g[3]>0&&(p+=pt(QS||(QS=Cr(["A ",",",",0,0,",`, - `,",",""])),g[3],g[3],d,e,t+r-c*g[3])),p+="Z"}else if(u>0&&i===+i&&i>0){var P=Math.min(u,i);p=pt(ZS||(ZS=Cr(["M ",",",` + height and width.`,E,L,i,a,l,u,n),k.createElement("div",{id:h?"".concat(h):void 0,className:Ge("recharts-responsive-container",g),style:jS(jS({},x),{},{width:i,height:a,minWidth:l,minHeight:u,maxHeight:c}),ref:S},k.createElement("div",{style:D8({width:i,height:a})},k.createElement(qN,{width:E,height:L},f)))}),HN=k.forwardRef((e,t)=>{var n=My();if(Mr(n.width)&&Mr(n.height))return e.children;var{width:r,height:i}=M8({width:e.width,height:e.height,aspect:e.aspect}),{calculatedWidth:a,calculatedHeight:l}=UN(void 0,void 0,{width:r,height:i,aspect:e.aspect,maxHeight:e.maxHeight});return ge(a)&&ge(l)?k.createElement(qN,{width:a,height:l},e.children):k.createElement(F8,cv({},e,{width:r,height:i,ref:t}))});function Ly(e){if(e)return{x:e.x,y:e.y,upperWidth:"upperWidth"in e?e.upperWidth:e.width,lowerWidth:"lowerWidth"in e?e.lowerWidth:e.width,width:e.width,height:e.height}}var cd=()=>{var e,t=on(),n=Pe(k8),r=Pe(ud),i=(e=Pe(sd))===null||e===void 0?void 0:e.padding;return!t||!r||!i?n:{width:r.width-i.left-i.right,height:r.height-i.top-i.bottom,x:i.left,y:i.top}},B8={top:0,bottom:0,left:0,right:0,width:0,height:0,brushBottom:0},VN=()=>{var e;return(e=Pe(zt))!==null&&e!==void 0?e:B8},KN=()=>Pe(di),GN=()=>Pe(pi),He=e=>e.layout.layoutType,Ba=()=>Pe(He),Ry=()=>{var e=Ba();if(e==="horizontal"||e==="vertical")return e},YN=e=>{var t=e.layout.layoutType;if(t==="centric"||t==="radial")return t},U8=()=>{var e=Ba();return e!==void 0},Ms=e=>{var t=yt(),n=on(),{width:r,height:i}=e,a=My(),l=r,u=i;return a&&(l=a.width>0?a.width:r,u=a.height>0?a.height:i),k.useEffect(()=>{!n&&Mr(l)&&Mr(u)&&t(KU({width:l,height:u}))},[t,n,l,u]),null},XN=Symbol.for("immer-nothing"),PS=Symbol.for("immer-draftable"),$n=Symbol.for("immer-state");function fr(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var ms=Object.getPrototypeOf;function Lo(e){return!!e&&!!e[$n]}function Ta(e){var t;return e?QN(e)||Array.isArray(e)||!!e[PS]||!!((t=e.constructor)!=null&&t[PS])||Ls(e)||dd(e):!1}var W8=Object.prototype.constructor.toString(),ES=new WeakMap;function QN(e){if(!e||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);if(t===null||t===Object.prototype)return!0;const n=Object.hasOwnProperty.call(t,"constructor")&&t.constructor;if(n===Object)return!0;if(typeof n!="function")return!1;let r=ES.get(n);return r===void 0&&(r=Function.toString.call(n),ES.set(n,r)),r===W8}function of(e,t,n=!0){fd(e)===0?(n?Reflect.ownKeys(e):Object.keys(e)).forEach(i=>{t(i,e[i],e)}):e.forEach((r,i)=>t(i,r,e))}function fd(e){const t=e[$n];return t?t.type_:Array.isArray(e)?1:Ls(e)?2:dd(e)?3:0}function fv(e,t){return fd(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function ZN(e,t,n){const r=fd(e);r===2?e.set(t,n):r===3?e.add(n):e[t]=n}function q8(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}function Ls(e){return e instanceof Map}function dd(e){return e instanceof Set}function xa(e){return e.copy_||e.base_}function dv(e,t){if(Ls(e))return new Map(e);if(dd(e))return new Set(e);if(Array.isArray(e))return Array.prototype.slice.call(e);const n=QN(e);if(t===!0||t==="class_only"&&!n){const r=Object.getOwnPropertyDescriptors(e);delete r[$n];let i=Reflect.ownKeys(r);for(let a=0;a1&&Object.defineProperties(e,{set:xc,add:xc,clear:xc,delete:xc}),Object.freeze(e),t&&Object.values(e).forEach(n=>zy(n,!0))),e}function H8(){fr(2)}var xc={value:H8};function pd(e){return e===null||typeof e!="object"?!0:Object.isFrozen(e)}var V8={};function Da(e){const t=V8[e];return t||fr(0,e),t}var gs;function JN(){return gs}function K8(e,t){return{drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function CS(e,t){t&&(Da("Patches"),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function pv(e){hv(e),e.drafts_.forEach(G8),e.drafts_=null}function hv(e){e===gs&&(gs=e.parent_)}function OS(e){return gs=K8(gs,e)}function G8(e){const t=e[$n];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function NS(e,t){t.unfinalizedDrafts_=t.drafts_.length;const n=t.drafts_[0];return e!==void 0&&e!==n?(n[$n].modified_&&(pv(t),fr(4)),Ta(e)&&(e=lf(t,e),t.parent_||sf(t,e)),t.patches_&&Da("Patches").generateReplacementPatches_(n[$n].base_,e,t.patches_,t.inversePatches_)):e=lf(t,n,[]),pv(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==XN?e:void 0}function lf(e,t,n){if(pd(t))return t;const r=e.immer_.shouldUseStrictIteration(),i=t[$n];if(!i)return of(t,(a,l)=>AS(e,i,t,a,l,n),r),t;if(i.scope_!==e)return t;if(!i.modified_)return sf(e,i.base_,!0),i.base_;if(!i.finalized_){i.finalized_=!0,i.scope_.unfinalizedDrafts_--;const a=i.copy_;let l=a,u=!1;i.type_===3&&(l=new Set(a),a.clear(),u=!0),of(l,(c,f)=>AS(e,i,a,c,f,n,u),r),sf(e,a,!1),n&&e.patches_&&Da("Patches").generatePatches_(i,n,e.patches_,e.inversePatches_)}return i.copy_}function AS(e,t,n,r,i,a,l){if(i==null||typeof i!="object"&&!l)return;const u=pd(i);if(!(u&&!l)){if(Lo(i)){const c=a&&t&&t.type_!==3&&!fv(t.assigned_,r)?a.concat(r):void 0,f=lf(e,i,c);if(ZN(n,r,f),Lo(f))e.canAutoFreeze_=!1;else return}else l&&n.add(i);if(Ta(i)&&!u){if(!e.immer_.autoFreeze_&&e.unfinalizedDrafts_<1||t&&t.base_&&t.base_[r]===i&&u)return;lf(e,i),(!t||!t.scope_.parent_)&&typeof r!="symbol"&&(Ls(n)?n.has(r):Object.prototype.propertyIsEnumerable.call(n,r))&&sf(e,i)}}}function sf(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&zy(t,n)}function Y8(e,t){const n=Array.isArray(e),r={type_:n?1:0,scope_:t?t.scope_:JN(),modified_:!1,finalized_:!1,assigned_:{},parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1};let i=r,a=$y;n&&(i=[r],a=vs);const{revoke:l,proxy:u}=Proxy.revocable(i,a);return r.draft_=u,r.revoke_=l,u}var $y={get(e,t){if(t===$n)return e;const n=xa(e);if(!fv(n,t))return X8(e,n,t);const r=n[t];return e.finalized_||!Ta(r)?r:r===Jm(e.base_,t)?(eg(e),e.copy_[t]=gv(r,e)):r},has(e,t){return t in xa(e)},ownKeys(e){return Reflect.ownKeys(xa(e))},set(e,t,n){const r=eA(xa(e),t);if(r!=null&&r.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){const i=Jm(xa(e),t),a=i==null?void 0:i[$n];if(a&&a.base_===n)return e.copy_[t]=n,e.assigned_[t]=!1,!0;if(q8(n,i)&&(n!==void 0||fv(e.base_,t)))return!0;eg(e),mv(e)}return e.copy_[t]===n&&(n!==void 0||t in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=n,e.assigned_[t]=!0),!0},deleteProperty(e,t){return Jm(e.base_,t)!==void 0||t in e.base_?(e.assigned_[t]=!1,eg(e),mv(e)):delete e.assigned_[t],e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const n=xa(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{writable:!0,configurable:e.type_!==1||t!=="length",enumerable:r.enumerable,value:n[t]}},defineProperty(){fr(11)},getPrototypeOf(e){return ms(e.base_)},setPrototypeOf(){fr(12)}},vs={};of($y,(e,t)=>{vs[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}});vs.deleteProperty=function(e,t){return vs.set.call(this,e,t,void 0)};vs.set=function(e,t,n){return $y.set.call(this,e[0],t,n,e[0])};function Jm(e,t){const n=e[$n];return(n?xa(n):e)[t]}function X8(e,t,n){var i;const r=eA(t,n);return r?"value"in r?r.value:(i=r.get)==null?void 0:i.call(e.draft_):void 0}function eA(e,t){if(!(t in e))return;let n=ms(e);for(;n;){const r=Object.getOwnPropertyDescriptor(n,t);if(r)return r;n=ms(n)}}function mv(e){e.modified_||(e.modified_=!0,e.parent_&&mv(e.parent_))}function eg(e){e.copy_||(e.copy_=dv(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var Q8=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!0,this.produce=(t,n,r)=>{if(typeof t=="function"&&typeof n!="function"){const a=n;n=t;const l=this;return function(c=a,...f){return l.produce(c,d=>n.call(this,d,...f))}}typeof n!="function"&&fr(6),r!==void 0&&typeof r!="function"&&fr(7);let i;if(Ta(t)){const a=OS(this),l=gv(t,void 0);let u=!0;try{i=n(l),u=!1}finally{u?pv(a):hv(a)}return CS(a,r),NS(i,a)}else if(!t||typeof t!="object"){if(i=n(t),i===void 0&&(i=t),i===XN&&(i=void 0),this.autoFreeze_&&zy(i,!0),r){const a=[],l=[];Da("Patches").generateReplacementPatches_(t,i,a,l),r(a,l)}return i}else fr(1,t)},this.produceWithPatches=(t,n)=>{if(typeof t=="function")return(l,...u)=>this.produceWithPatches(l,c=>t(c,...u));let r,i;return[this.produce(t,n,(l,u)=>{r=l,i=u}),r,i]},typeof(e==null?void 0:e.autoFreeze)=="boolean"&&this.setAutoFreeze(e.autoFreeze),typeof(e==null?void 0:e.useStrictShallowCopy)=="boolean"&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),typeof(e==null?void 0:e.useStrictIteration)=="boolean"&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){Ta(e)||fr(8),Lo(e)&&(e=Z8(e));const t=OS(this),n=gv(e,void 0);return n[$n].isManual_=!0,hv(t),n}finishDraft(e,t){const n=e&&e[$n];(!n||!n.isManual_)&&fr(9);const{scope_:r}=n;return CS(r,t),NS(void 0,r)}setAutoFreeze(e){this.autoFreeze_=e}setUseStrictShallowCopy(e){this.useStrictShallowCopy_=e}setUseStrictIteration(e){this.useStrictIteration_=e}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(e,t){let n;for(n=t.length-1;n>=0;n--){const i=t[n];if(i.path.length===0&&i.op==="replace"){e=i.value;break}}n>-1&&(t=t.slice(n+1));const r=Da("Patches").applyPatches_;return Lo(e)?r(e,t):this.produce(e,i=>r(i,t))}};function gv(e,t){const n=Ls(e)?Da("MapSet").proxyMap_(e,t):dd(e)?Da("MapSet").proxySet_(e,t):Y8(e,t);return(t?t.scope_:JN()).drafts_.push(n),n}function Z8(e){return Lo(e)||fr(10,e),tA(e)}function tA(e){if(!Ta(e)||pd(e))return e;const t=e[$n];let n,r=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=dv(e,t.scope_.immer_.useStrictShallowCopy_),r=t.scope_.immer_.shouldUseStrictIteration()}else n=dv(e,!0);return of(n,(i,a)=>{ZN(n,i,tA(a))},r),t&&(t.finalized_=!1),n}var J8=new Q8;J8.produce;var eW={settings:{layout:"horizontal",align:"center",verticalAlign:"middle",itemSorter:"value"},size:{width:0,height:0},payload:[]},nA=On({name:"legend",initialState:eW,reducers:{setLegendSize(e,t){e.size.width=t.payload.width,e.size.height=t.payload.height},setLegendSettings(e,t){e.settings.align=t.payload.align,e.settings.layout=t.payload.layout,e.settings.verticalAlign=t.payload.verticalAlign,e.settings.itemSorter=t.payload.itemSorter},addLegendPayload:{reducer(e,t){e.payload.push(t.payload)},prepare:at()},replaceLegendPayload:{reducer(e,t){var{prev:n,next:r}=t.payload,i=hr(e).payload.indexOf(n);i>-1&&(e.payload[i]=r)},prepare:at()},removeLegendPayload:{reducer(e,t){var n=hr(e).payload.indexOf(t.payload);n>-1&&e.payload.splice(n,1)},prepare:at()}}}),{setLegendSize:Mte,setLegendSettings:Lte,addLegendPayload:tW,replaceLegendPayload:nW,removeLegendPayload:rW}=nA.actions,iW=nA.reducer;function vv(){return vv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{separator:t=vo.separator,contentStyle:n,itemStyle:r,labelStyle:i=vo.labelStyle,payload:a,formatter:l,itemSorter:u,wrapperClassName:c,labelClassName:f,label:d,labelFormatter:h,accessibilityLayer:g=vo.accessibilityLayer}=e,y=()=>{if(a&&a.length){var I={padding:0,margin:0},E=(u?Yf(a,u):a).map((L,F)=>{if(L.type==="none")return null;var H=L.formatter||l||sW,{value:R,name:W}=L,D=R,Z=W;if(H){var Y=H(R,W,L,F,a);if(Array.isArray(Y))[D,Z]=Y;else if(Y!=null)D=Y;else return null}var Q=Ul(Ul({},vo.itemStyle),{},{color:L.color||vo.itemStyle.color},r);return k.createElement("li",{className:"recharts-tooltip-item",key:"tooltip-item-".concat(F),style:Q},Dr(Z)?k.createElement("span",{className:"recharts-tooltip-item-name"},Z):null,Dr(Z)?k.createElement("span",{className:"recharts-tooltip-item-separator"},t):null,k.createElement("span",{className:"recharts-tooltip-item-value"},D),k.createElement("span",{className:"recharts-tooltip-item-unit"},L.unit||""))});return k.createElement("ul",{className:"recharts-tooltip-item-list",style:I},E)}return null},x=Ul(Ul({},vo.contentStyle),n),S=Ul({margin:0},i),w=!mt(d),P=w?d:"",C=Ge("recharts-default-tooltip",c),O=Ge("recharts-tooltip-label",f);w&&h&&a!==void 0&&a!==null&&(P=h(d,a));var A=g?{role:"status","aria-live":"assertive"}:{};return k.createElement("div",vv({className:C,style:x},A),k.createElement("p",{className:O,style:S},k.isValidElement(P)?P:"".concat(P)),y())},Wl="recharts-tooltip-wrapper",cW={visibility:"hidden"};function fW(e){var{coordinate:t,translateX:n,translateY:r}=e;return Ge(Wl,{["".concat(Wl,"-right")]:ge(n)&&t&&ge(t.x)&&n>=t.x,["".concat(Wl,"-left")]:ge(n)&&t&&ge(t.x)&&n=t.y,["".concat(Wl,"-top")]:ge(r)&&t&&ge(t.y)&&r0?i:0),h=n[r]+i;if(t[r])return l[r]?d:h;var g=c[r];if(g==null)return 0;if(l[r]){var y=d,x=g;return yw?Math.max(d,g):Math.max(h,g)}function dW(e){var{translateX:t,translateY:n,useTranslate3d:r}=e;return{transform:r?"translate3d(".concat(t,"px, ").concat(n,"px, 0)"):"translate(".concat(t,"px, ").concat(n,"px)")}}function pW(e){var{allowEscapeViewBox:t,coordinate:n,offsetTop:r,offsetLeft:i,position:a,reverseDirection:l,tooltipBox:u,useTranslate3d:c,viewBox:f}=e,d,h,g;return u.height>0&&u.width>0&&n?(h=IS({allowEscapeViewBox:t,coordinate:n,key:"x",offset:i,position:a,reverseDirection:l,tooltipDimension:u.width,viewBox:f,viewBoxDimension:f.width}),g=IS({allowEscapeViewBox:t,coordinate:n,key:"y",offset:r,position:a,reverseDirection:l,tooltipDimension:u.height,viewBox:f,viewBoxDimension:f.height}),d=dW({translateX:h,translateY:g,useTranslate3d:c})):d=cW,{cssProperties:d,cssClasses:fW({translateX:h,translateY:g,coordinate:n})}}function TS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function bc(e){for(var t=1;t{if(t.key==="Escape"){var n,r,i,a;this.setState({dismissed:!0,dismissedAtCoordinate:{x:(n=(r=this.props.coordinate)===null||r===void 0?void 0:r.x)!==null&&n!==void 0?n:0,y:(i=(a=this.props.coordinate)===null||a===void 0?void 0:a.y)!==null&&i!==void 0?i:0}})}})}componentDidMount(){document.addEventListener("keydown",this.handleKeyDown)}componentWillUnmount(){document.removeEventListener("keydown",this.handleKeyDown)}componentDidUpdate(){var t,n;this.state.dismissed&&(((t=this.props.coordinate)===null||t===void 0?void 0:t.x)!==this.state.dismissedAtCoordinate.x||((n=this.props.coordinate)===null||n===void 0?void 0:n.y)!==this.state.dismissedAtCoordinate.y)&&(this.state.dismissed=!1)}render(){var{active:t,allowEscapeViewBox:n,animationDuration:r,animationEasing:i,children:a,coordinate:l,hasPayload:u,isAnimationActive:c,offset:f,position:d,reverseDirection:h,useTranslate3d:g,viewBox:y,wrapperStyle:x,lastBoundingBox:S,innerRef:w,hasPortalFromProps:P}=this.props,C=typeof f=="number"?f:f.x,O=typeof f=="number"?f:f.y,{cssClasses:A,cssProperties:I}=pW({allowEscapeViewBox:n,coordinate:l,offsetLeft:C,offsetTop:O,position:d,reverseDirection:h,tooltipBox:{height:S.height,width:S.width},useTranslate3d:g,viewBox:y}),E=P?{}:bc(bc({transition:c&&t?"transform ".concat(r,"ms ").concat(i):void 0},I),{},{pointerEvents:"none",visibility:!this.state.dismissed&&t&&u?"visible":"hidden",position:"absolute",top:0,left:0}),L=bc(bc({},E),{},{visibility:!this.state.dismissed&&t&&u?"visible":"hidden"},x);return k.createElement("div",{xmlns:"http://www.w3.org/1999/xhtml",tabIndex:-1,className:A,style:L,ref:w},a)}}var rA=()=>{var e;return(e=Pe(t=>t.rootProps.accessibilityLayer))!==null&&e!==void 0?e:!0};function xv(){return xv=Object.assign?Object.assign.bind():function(e){for(var t=1;tDe(e.x)&&De(e.y),RS=e=>e.base!=null&&uf(e.base)&&uf(e),ql=e=>e.x,Hl=e=>e.y,bW=(e,t)=>{if(typeof e=="function")return e;var n="curve".concat(_s(e));if((n==="curveMonotone"||n==="curveBump")&&t){var r=LS["".concat(n).concat(t==="vertical"?"Y":"X")];if(r)return r}return LS[n]||Kf},zS={connectNulls:!1,type:"linear"},wW=e=>{var{type:t=zS.type,points:n=[],baseLine:r,layout:i,connectNulls:a=zS.connectNulls}=e,l=bW(t,i),u=a?n.filter(uf):n;if(Array.isArray(r)){var c,f=n.map((x,S)=>MS(MS({},x),{},{base:r[S]}));i==="vertical"?c=dc().y(Hl).x1(ql).x0(x=>x.base.x):c=dc().x(ql).y1(Hl).y0(x=>x.base.y);var d=c.defined(RS).curve(l),h=a?f.filter(RS):f;return d(h)}var g;i==="vertical"&&ge(r)?g=dc().y(Hl).x1(ql).x0(r):ge(r)?g=dc().x(ql).y1(Hl).y0(r):g=TO().x(ql).y(Hl);var y=g.defined(uf).curve(l);return y(u)},os=e=>{var{className:t,points:n,path:r,pathRef:i}=e,a=Ba();if((!n||!n.length)&&!r)return null;var l={type:e.type,points:e.points,baseLine:e.baseLine,layout:e.layout||a,connectNulls:e.connectNulls},u=n&&n.length?wW(l):r;return k.createElement("path",xv({},Zn(e),Sy(e),{className:Ge("recharts-curve",t),d:u===null?void 0:u,ref:i}))},kW=["x","y","top","left","width","height","className"];function bv(){return bv=Object.assign?Object.assign.bind():function(e){for(var t=1;t"M".concat(e,",").concat(i,"v").concat(r,"M").concat(a,",").concat(t,"h").concat(n),AW=e=>{var{x:t=0,y:n=0,top:r=0,left:i=0,width:a=0,height:l=0,className:u}=e,c=CW(e,kW),f=SW({x:t,y:n,top:r,left:i,width:a,height:l},c);return!ge(t)||!ge(n)||!ge(a)||!ge(l)||!ge(r)||!ge(i)?null:k.createElement("path",bv({},dn(f),{className:Ge("recharts-cross",u),d:NW(t,n,a,l,r,i)}))};function _W(e,t,n,r){var i=r/2;return{stroke:"none",fill:"#ccc",x:e==="horizontal"?t.x-i:n.left+.5,y:e==="horizontal"?n.top+.5:t.y-i,width:e==="horizontal"?r:n.width-1,height:e==="horizontal"?n.height-1:r}}function FS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function BS(e){for(var t=1;te.replace(/([A-Z])/g,t=>"-".concat(t.toLowerCase())),iA=(e,t,n)=>e.map(r=>"".concat(MW(r)," ").concat(t,"ms ").concat(n)).join(","),LW=(e,t)=>[Object.keys(e),Object.keys(t)].reduce((n,r)=>n.filter(i=>r.includes(i))),ys=(e,t)=>Object.keys(t).reduce((n,r)=>BS(BS({},n),{},{[r]:e(r,t[r])}),{});function US(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Ot(e){for(var t=1;te+(t-e)*n,wv=e=>{var{from:t,to:n}=e;return t!==n},aA=(e,t,n)=>{var r=ys((i,a)=>{if(wv(a)){var[l,u]=e(a.from,a.to,a.velocity);return Ot(Ot({},a),{},{from:l,velocity:u})}return a},t);return n<1?ys((i,a)=>wv(a)&&r[i]!=null?Ot(Ot({},a),{},{velocity:cf(a.velocity,r[i].velocity,n),from:cf(a.from,r[i].from,n)}):a,t):aA(e,r,n-1)};function FW(e,t,n,r,i,a){var l,u=r.reduce((g,y)=>Ot(Ot({},g),{},{[y]:{from:e[y],velocity:0,to:t[y]}}),{}),c=()=>ys((g,y)=>y.from,u),f=()=>!Object.values(u).filter(wv).length,d=null,h=g=>{l||(l=g);var y=g-l,x=y/n.dt;u=aA(n,u,x),i(Ot(Ot(Ot({},e),t),c())),l=g,f()||(d=a.setTimeout(h))};return()=>(d=a.setTimeout(h),()=>{var g;(g=d)===null||g===void 0||g()})}function BW(e,t,n,r,i,a,l){var u=null,c=i.reduce((h,g)=>{var y=e[g],x=t[g];return y==null||x==null?h:Ot(Ot({},h),{},{[g]:[y,x]})},{}),f,d=h=>{f||(f=h);var g=(h-f)/r,y=ys((S,w)=>cf(...w,n(g)),c);if(a(Ot(Ot(Ot({},e),t),y)),g<1)u=l.setTimeout(d);else{var x=ys((S,w)=>cf(...w,n(1)),c);a(Ot(Ot(Ot({},e),t),x))}};return()=>(u=l.setTimeout(d),()=>{var h;(h=u)===null||h===void 0||h()})}const UW=(e,t,n,r,i,a)=>{var l=LW(e,t);return n==null?()=>(i(Ot(Ot({},e),t)),()=>{}):n.isStepper===!0?FW(e,t,n,l,i,a):BW(e,t,n,r,l,i,a)};var ff=1e-4,oA=(e,t)=>[0,3*e,3*t-6*e,3*e-3*t+1],lA=(e,t)=>e.map((n,r)=>n*t**r).reduce((n,r)=>n+r),WS=(e,t)=>n=>{var r=oA(e,t);return lA(r,n)},WW=(e,t)=>n=>{var r=oA(e,t),i=[...r.map((a,l)=>a*l).slice(1),0];return lA(i,n)},qW=e=>{var t,n=e.split("(");if(n.length!==2||n[0]!=="cubic-bezier")return null;var r=(t=n[1])===null||t===void 0||(t=t.split(")")[0])===null||t===void 0?void 0:t.split(",");if(r==null||r.length!==4)return null;var i=r.map(a=>parseFloat(a));return[i[0],i[1],i[2],i[3]]},HW=function(){for(var t=arguments.length,n=new Array(t),r=0;r{var i=WS(e,n),a=WS(t,r),l=WW(e,n),u=f=>f>1?1:f<0?0:f,c=f=>{for(var d=f>1?1:f,h=d,g=0;g<8;++g){var y=i(h)-d,x=l(h);if(Math.abs(y-d)0&&arguments[0]!==void 0?arguments[0]:{},{stiff:n=100,damping:r=8,dt:i=17}=t,a=(l,u,c)=>{var f=-(l-u)*n,d=c*r,h=c+(f-d)*i/1e3,g=c*i/1e3+l;return Math.abs(g-u){if(typeof e=="string")switch(e){case"ease":case"ease-in-out":case"ease-out":case"ease-in":case"linear":return qS(e);case"spring":return KW();default:if(e.split("(")[0]==="cubic-bezier")return qS(e)}return typeof e=="function"?e:null};function YW(e){var t,n=()=>null,r=!1,i=null,a=l=>{if(!r){if(Array.isArray(l)){if(!l.length)return;var u=l,[c,...f]=u;if(typeof c=="number"){i=e.setTimeout(a.bind(null,f),c);return}a(c),i=e.setTimeout(a.bind(null,f));return}typeof l=="string"&&(t=l,n(t)),typeof l=="object"&&(t=l,n(t)),typeof l=="function"&&l()}};return{stop:()=>{r=!0},start:l=>{r=!1,i&&(i(),i=null),a(l)},subscribe:l=>(n=l,()=>{n=()=>null}),getTimeoutController:()=>e}}class XW{setTimeout(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=performance.now(),i=null,a=l=>{l-r>=n?t(l):typeof requestAnimationFrame=="function"&&(i=requestAnimationFrame(a))};return i=requestAnimationFrame(a),()=>{i!=null&&cancelAnimationFrame(i)}}}function QW(){return YW(new XW)}var ZW=k.createContext(QW);function JW(e,t){var n=k.useContext(ZW);return k.useMemo(()=>t??n(e),[e,t,n])}var eq=()=>!(typeof window<"u"&&window.document&&window.document.createElement&&window.setTimeout),Rs={isSsr:eq()},tq={begin:0,duration:1e3,easing:"ease",isActive:!0,canBegin:!0,onAnimationEnd:()=>{},onAnimationStart:()=>{}},HS={t:0},tg={t:1};function hd(e){var t=mn(e,tq),{isActive:n,canBegin:r,duration:i,easing:a,begin:l,onAnimationEnd:u,onAnimationStart:c,children:f}=t,d=n==="auto"?!Rs.isSsr:n,h=JW(t.animationId,t.animationManager),[g,y]=k.useState(d?HS:tg),x=k.useRef(null);return k.useEffect(()=>{d||y(tg)},[d]),k.useEffect(()=>{if(!d||!r)return Fa;var S=UW(HS,tg,GW(a),i,y,h.getTimeoutController()),w=()=>{x.current=S()};return h.start([c,l,w,i,u]),()=>{h.stop(),x.current&&x.current(),u()}},[d,r,i,a,l,c,u,h]),f(g.t)}function md(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"animation-",n=k.useRef(fs(t)),r=k.useRef(e);return r.current!==e&&(n.current=fs(t),r.current=e),n.current}var nq=["radius"],rq=["radius"],VS,KS,GS,YS,XS,QS,ZS,JS,ej,tj;function nj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function rj(e){for(var t=1;t{var a=Ki(n),l=Ki(r),u=Math.min(Math.abs(a)/2,Math.abs(l)/2),c=l>=0?1:-1,f=a>=0?1:-1,d=l>=0&&a>=0||l<0&&a<0?1:0,h;if(u>0&&Array.isArray(i)){for(var g=[0,0,0,0],y=0,x=4;yu?u:w}h=ht(VS||(VS=Er(["M",",",""])),e,t+c*g[0]),g[0]>0&&(h+=ht(KS||(KS=Er(["A ",",",",0,0,",",",",",""])),g[0],g[0],d,e+f*g[0],t)),h+=ht(GS||(GS=Er(["L ",",",""])),e+n-f*g[1],t),g[1]>0&&(h+=ht(YS||(YS=Er(["A ",",",",0,0,",`, + `,",",""])),g[1],g[1],d,e+n,t+c*g[1])),h+=ht(XS||(XS=Er(["L ",",",""])),e+n,t+r-c*g[2]),g[2]>0&&(h+=ht(QS||(QS=Er(["A ",",",",0,0,",`, + `,",",""])),g[2],g[2],d,e+n-f*g[2],t+r)),h+=ht(ZS||(ZS=Er(["L ",",",""])),e+f*g[3],t+r),g[3]>0&&(h+=ht(JS||(JS=Er(["A ",",",",0,0,",`, + `,",",""])),g[3],g[3],d,e,t+r-c*g[3])),h+="Z"}else if(u>0&&i===+i&&i>0){var P=Math.min(u,i);h=ht(ej||(ej=Er(["M ",",",` A `,",",",0,0,",",",",",` L `,",",` A `,",",",0,0,",",",",",` L `,",",` A `,",",",0,0,",",",",",` L `,",",` - A `,",",",0,0,",",",","," Z"])),e,t+c*P,P,P,d,e+f*P,t,e+n-f*P,t,P,P,d,e+n,t+c*P,e+n,t+r-c*P,P,P,d,e+n-f*P,t+r,e+f*P,t+r,P,P,d,e,t+r-c*P)}else p=pt(JS||(JS=Cr(["M ",","," h "," v "," h "," Z"])),e,t,n,r,-n);return p},ij={x:0,y:0,width:0,height:0,radius:0,isAnimationActive:!1,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},lA=e=>{var t=mn(e,ij),n=k.useRef(null),[r,i]=k.useState(-1);k.useEffect(()=>{if(n.current&&n.current.getTotalLength)try{var de=n.current.getTotalLength();de&&i(de)}catch{}},[]);var{x:a,y:l,width:u,height:c,radius:f,className:d}=t,{animationEasing:p,animationDuration:g,animationBegin:y,isAnimationActive:x,isUpdateAnimationActive:S}=t,w=k.useRef(u),P=k.useRef(c),C=k.useRef(a),O=k.useRef(l),A=k.useMemo(()=>({x:a,y:l,width:u,height:c,radius:f}),[a,l,u,c,f]),I=hd(A,"rectangle-");if(a!==+a||l!==+l||u!==+u||c!==+c||u===0||c===0)return null;var E=Ge("recharts-rectangle",d);if(!S){var L=dn(t),{radius:F}=L,H=nj(L,JW);return k.createElement("path",cf({},H,{x:Ki(a),y:Ki(l),width:Ki(u),height:Ki(c),radius:typeof f=="number"?f:void 0,className:E,d:rj(a,l,u,c,f)}))}var R=w.current,W=P.current,M=C.current,Z=O.current,Y="0px ".concat(r===-1?1:r,"px"),Q="".concat(r,"px 0px"),he=rA(["strokeDasharray"],g,typeof p=="string"?p:ij.animationEasing);return k.createElement(dd,{animationId:I,key:I,canBegin:r>0,duration:g,easing:p,isActive:S,begin:y},de=>{var J=ut(R,u,de),ae=ut(W,c,de),T=ut(M,a,de),$=ut(Z,l,de);n.current&&(w.current=J,P.current=ae,C.current=T,O.current=$);var U;x?de>0?U={transition:he,strokeDasharray:Q}:U={strokeDasharray:Y}:U={strokeDasharray:Q};var _=dn(t),{radius:te}=_,fe=nj(_,e9);return k.createElement("path",cf({},fe,{radius:typeof f=="number"?f:void 0,className:E,d:rj(T,$,J,ae,f),ref:n,style:tj(tj({},U),t.style)}))})};function aj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function oj(e){for(var t=1;te*180/Math.PI,Xt=(e,t,n,r)=>({x:e+Math.cos(-ff*r)*n,y:t+Math.sin(-ff*r)*n}),u9=function(t,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{top:0,right:0,bottom:0,left:0};return Math.min(Math.abs(t-(r.left||0)-(r.right||0)),Math.abs(n-(r.top||0)-(r.bottom||0)))/2},c9=(e,t)=>{var{x:n,y:r}=e,{x:i,y:a}=t;return Math.sqrt((n-i)**2+(r-a)**2)},f9=(e,t)=>{var{x:n,y:r}=e,{cx:i,cy:a}=t,l=c9({x:n,y:r},{x:i,y:a});if(l<=0)return{radius:l,angle:0};var u=(n-i)/l,c=Math.acos(u);return r>a&&(c=2*Math.PI-c),{radius:l,angle:s9(c),angleInRadian:c}},d9=e=>{var{startAngle:t,endAngle:n}=e,r=Math.floor(t/360),i=Math.floor(n/360),a=Math.min(r,i);return{startAngle:t-a*360,endAngle:n-a*360}},h9=(e,t)=>{var{startAngle:n,endAngle:r}=t,i=Math.floor(n/360),a=Math.floor(r/360),l=Math.min(i,a);return e+l*360},p9=(e,t)=>{var{chartX:n,chartY:r}=e,{radius:i,angle:a}=f9({x:n,y:r},t),{innerRadius:l,outerRadius:u}=t;if(iu||i===0)return null;var{startAngle:c,endAngle:f}=d9(t),d=a,p;if(c<=f){for(;d>f;)d-=360;for(;d=c&&d<=f}else{for(;d>c;)d-=360;for(;d=f&&d<=c}return p?oj(oj({},t),{},{radius:i,angle:h9(d,t)}):null};function sA(e){var{cx:t,cy:n,radius:r,startAngle:i,endAngle:a}=e,l=Xt(t,n,r,i),u=Xt(t,n,r,a);return{points:[l,u],cx:t,cy:n,radius:r,startAngle:i,endAngle:a}}var lj,sj,uj,cj,fj,dj,hj;function bv(){return bv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var n=jn(t-e),r=Math.min(Math.abs(t-e),359.999);return n*r},xc=e=>{var{cx:t,cy:n,radius:r,angle:i,sign:a,isExternal:l,cornerRadius:u,cornerIsExternal:c}=e,f=u*(l?1:-1)+r,d=Math.asin(u/f)/ff,p=c?i:i+a*d,g=Xt(t,n,f,p),y=Xt(t,n,r,p),x=c?i-a*d:i,S=Xt(t,n,f*Math.cos(d*ff),x);return{center:g,circleTangency:y,lineTangency:S,theta:d}},uA=e=>{var{cx:t,cy:n,innerRadius:r,outerRadius:i,startAngle:a,endAngle:l}=e,u=m9(a,l),c=a+u,f=Xt(t,n,i,a),d=Xt(t,n,i,c),p=pt(lj||(lj=wa(["M ",",",` + A `,",",",0,0,",",",","," Z"])),e,t+c*P,P,P,d,e+f*P,t,e+n-f*P,t,P,P,d,e+n,t+c*P,e+n,t+r-c*P,P,P,d,e+n-f*P,t+r,e+f*P,t+r,P,P,d,e,t+r-c*P)}else h=ht(tj||(tj=Er(["M ",","," h "," v "," h "," Z"])),e,t,n,r,-n);return h},oj={x:0,y:0,width:0,height:0,radius:0,isAnimationActive:!1,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},sA=e=>{var t=mn(e,oj),n=k.useRef(null),[r,i]=k.useState(-1);k.useEffect(()=>{if(n.current&&n.current.getTotalLength)try{var de=n.current.getTotalLength();de&&i(de)}catch{}},[]);var{x:a,y:l,width:u,height:c,radius:f,className:d}=t,{animationEasing:h,animationDuration:g,animationBegin:y,isAnimationActive:x,isUpdateAnimationActive:S}=t,w=k.useRef(u),P=k.useRef(c),C=k.useRef(a),O=k.useRef(l),A=k.useMemo(()=>({x:a,y:l,width:u,height:c,radius:f}),[a,l,u,c,f]),I=md(A,"rectangle-");if(a!==+a||l!==+l||u!==+u||c!==+c||u===0||c===0)return null;var E=Ge("recharts-rectangle",d);if(!S){var L=dn(t),{radius:F}=L,H=ij(L,nq);return k.createElement("path",df({},H,{x:Ki(a),y:Ki(l),width:Ki(u),height:Ki(c),radius:typeof f=="number"?f:void 0,className:E,d:aj(a,l,u,c,f)}))}var R=w.current,W=P.current,D=C.current,Z=O.current,Y="0px ".concat(r===-1?1:r,"px"),Q="".concat(r,"px 0px"),pe=iA(["strokeDasharray"],g,typeof h=="string"?h:oj.animationEasing);return k.createElement(hd,{animationId:I,key:I,canBegin:r>0,duration:g,easing:h,isActive:S,begin:y},de=>{var J=ut(R,u,de),ae=ut(W,c,de),T=ut(D,a,de),$=ut(Z,l,de);n.current&&(w.current=J,P.current=ae,C.current=T,O.current=$);var U;x?de>0?U={transition:pe,strokeDasharray:Q}:U={strokeDasharray:Y}:U={strokeDasharray:Q};var _=dn(t),{radius:te}=_,fe=ij(_,rq);return k.createElement("path",df({},fe,{radius:typeof f=="number"?f:void 0,className:E,d:aj(T,$,J,ae,f),ref:n,style:rj(rj({},U),t.style)}))})};function lj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function sj(e){for(var t=1;te*180/Math.PI,Xt=(e,t,n,r)=>({x:e+Math.cos(-pf*r)*n,y:t+Math.sin(-pf*r)*n}),dq=function(t,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{top:0,right:0,bottom:0,left:0};return Math.min(Math.abs(t-(r.left||0)-(r.right||0)),Math.abs(n-(r.top||0)-(r.bottom||0)))/2},pq=(e,t)=>{var{x:n,y:r}=e,{x:i,y:a}=t;return Math.sqrt((n-i)**2+(r-a)**2)},hq=(e,t)=>{var{x:n,y:r}=e,{cx:i,cy:a}=t,l=pq({x:n,y:r},{x:i,y:a});if(l<=0)return{radius:l,angle:0};var u=(n-i)/l,c=Math.acos(u);return r>a&&(c=2*Math.PI-c),{radius:l,angle:fq(c),angleInRadian:c}},mq=e=>{var{startAngle:t,endAngle:n}=e,r=Math.floor(t/360),i=Math.floor(n/360),a=Math.min(r,i);return{startAngle:t-a*360,endAngle:n-a*360}},gq=(e,t)=>{var{startAngle:n,endAngle:r}=t,i=Math.floor(n/360),a=Math.floor(r/360),l=Math.min(i,a);return e+l*360},vq=(e,t)=>{var{chartX:n,chartY:r}=e,{radius:i,angle:a}=hq({x:n,y:r},t),{innerRadius:l,outerRadius:u}=t;if(iu||i===0)return null;var{startAngle:c,endAngle:f}=mq(t),d=a,h;if(c<=f){for(;d>f;)d-=360;for(;d=c&&d<=f}else{for(;d>c;)d-=360;for(;d=f&&d<=c}return h?sj(sj({},t),{},{radius:i,angle:gq(d,t)}):null};function uA(e){var{cx:t,cy:n,radius:r,startAngle:i,endAngle:a}=e,l=Xt(t,n,r,i),u=Xt(t,n,r,a);return{points:[l,u],cx:t,cy:n,radius:r,startAngle:i,endAngle:a}}var uj,cj,fj,dj,pj,hj,mj;function kv(){return kv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var n=jn(t-e),r=Math.min(Math.abs(t-e),359.999);return n*r},wc=e=>{var{cx:t,cy:n,radius:r,angle:i,sign:a,isExternal:l,cornerRadius:u,cornerIsExternal:c}=e,f=u*(l?1:-1)+r,d=Math.asin(u/f)/pf,h=c?i:i+a*d,g=Xt(t,n,f,h),y=Xt(t,n,r,h),x=c?i-a*d:i,S=Xt(t,n,f*Math.cos(d*pf),x);return{center:g,circleTangency:y,lineTangency:S,theta:d}},cA=e=>{var{cx:t,cy:n,innerRadius:r,outerRadius:i,startAngle:a,endAngle:l}=e,u=yq(a,l),c=a+u,f=Xt(t,n,i,a),d=Xt(t,n,i,c),h=ht(uj||(uj=wa(["M ",",",` A `,",",`,0, `,",",`, `,",",` - `])),f.x,f.y,i,i,+(Math.abs(u)>180),+(a>c),d.x,d.y);if(r>0){var g=Xt(t,n,r,a),y=Xt(t,n,r,c);p+=pt(sj||(sj=wa(["L ",",",` + `])),f.x,f.y,i,i,+(Math.abs(u)>180),+(a>c),d.x,d.y);if(r>0){var g=Xt(t,n,r,a),y=Xt(t,n,r,c);h+=ht(cj||(cj=wa(["L ",",",` A `,",",`,0, `,",",`, - `,","," Z"])),y.x,y.y,r,r,+(Math.abs(u)>180),+(a<=c),g.x,g.y)}else p+=pt(uj||(uj=wa(["L ",","," Z"])),t,n);return p},g9=e=>{var{cx:t,cy:n,innerRadius:r,outerRadius:i,cornerRadius:a,forceCornerRadius:l,cornerIsExternal:u,startAngle:c,endAngle:f}=e,d=jn(f-c),{circleTangency:p,lineTangency:g,theta:y}=xc({cx:t,cy:n,radius:i,angle:c,sign:d,cornerRadius:a,cornerIsExternal:u}),{circleTangency:x,lineTangency:S,theta:w}=xc({cx:t,cy:n,radius:i,angle:f,sign:-d,cornerRadius:a,cornerIsExternal:u}),P=u?Math.abs(c-f):Math.abs(c-f)-y-w;if(P<0)return l?pt(cj||(cj=wa(["M ",",",` + `,","," Z"])),y.x,y.y,r,r,+(Math.abs(u)>180),+(a<=c),g.x,g.y)}else h+=ht(fj||(fj=wa(["L ",","," Z"])),t,n);return h},xq=e=>{var{cx:t,cy:n,innerRadius:r,outerRadius:i,cornerRadius:a,forceCornerRadius:l,cornerIsExternal:u,startAngle:c,endAngle:f}=e,d=jn(f-c),{circleTangency:h,lineTangency:g,theta:y}=wc({cx:t,cy:n,radius:i,angle:c,sign:d,cornerRadius:a,cornerIsExternal:u}),{circleTangency:x,lineTangency:S,theta:w}=wc({cx:t,cy:n,radius:i,angle:f,sign:-d,cornerRadius:a,cornerIsExternal:u}),P=u?Math.abs(c-f):Math.abs(c-f)-y-w;if(P<0)return l?ht(dj||(dj=wa(["M ",",",` a`,",",",0,0,1,",`,0 a`,",",",0,0,1,",`,0 - `])),g.x,g.y,a,a,a*2,a,a,-a*2):uA({cx:t,cy:n,innerRadius:r,outerRadius:i,startAngle:c,endAngle:f});var C=pt(fj||(fj=wa(["M ",",",` + `])),g.x,g.y,a,a,a*2,a,a,-a*2):cA({cx:t,cy:n,innerRadius:r,outerRadius:i,startAngle:c,endAngle:f});var C=ht(pj||(pj=wa(["M ",",",` A`,",",",0,0,",",",",",` A`,",",",0,",",",",",",",` A`,",",",0,0,",",",",",` - `])),g.x,g.y,a,a,+(d<0),p.x,p.y,i,i,+(P>180),+(d<0),x.x,x.y,a,a,+(d<0),S.x,S.y);if(r>0){var{circleTangency:O,lineTangency:A,theta:I}=xc({cx:t,cy:n,radius:r,angle:c,sign:d,isExternal:!0,cornerRadius:a,cornerIsExternal:u}),{circleTangency:E,lineTangency:L,theta:F}=xc({cx:t,cy:n,radius:r,angle:f,sign:-d,isExternal:!0,cornerRadius:a,cornerIsExternal:u}),H=u?Math.abs(c-f):Math.abs(c-f)-I-F;if(H<0&&a===0)return"".concat(C,"L").concat(t,",").concat(n,"Z");C+=pt(dj||(dj=wa(["L",",",` + `])),g.x,g.y,a,a,+(d<0),h.x,h.y,i,i,+(P>180),+(d<0),x.x,x.y,a,a,+(d<0),S.x,S.y);if(r>0){var{circleTangency:O,lineTangency:A,theta:I}=wc({cx:t,cy:n,radius:r,angle:c,sign:d,isExternal:!0,cornerRadius:a,cornerIsExternal:u}),{circleTangency:E,lineTangency:L,theta:F}=wc({cx:t,cy:n,radius:r,angle:f,sign:-d,isExternal:!0,cornerRadius:a,cornerIsExternal:u}),H=u?Math.abs(c-f):Math.abs(c-f)-I-F;if(H<0&&a===0)return"".concat(C,"L").concat(t,",").concat(n,"Z");C+=ht(hj||(hj=wa(["L",",",` A`,",",",0,0,",",",",",` A`,",",",0,",",",",",",",` - A`,",",",0,0,",",",",","Z"])),L.x,L.y,a,a,+(d<0),E.x,E.y,r,r,+(H>180),+(d>0),O.x,O.y,a,a,+(d<0),A.x,A.y)}else C+=pt(hj||(hj=wa(["L",",","Z"])),t,n);return C},v9={cx:0,cy:0,innerRadius:0,outerRadius:0,startAngle:0,endAngle:0,cornerRadius:0,forceCornerRadius:!1,cornerIsExternal:!1},cA=e=>{var t=mn(e,v9),{cx:n,cy:r,innerRadius:i,outerRadius:a,cornerRadius:l,forceCornerRadius:u,cornerIsExternal:c,startAngle:f,endAngle:d,className:p}=t;if(a0&&Math.abs(f-d)<360?S=g9({cx:n,cy:r,innerRadius:i,outerRadius:a,cornerRadius:Math.min(x,y/2),forceCornerRadius:u,cornerIsExternal:c,startAngle:f,endAngle:d}):S=uA({cx:n,cy:r,innerRadius:i,outerRadius:a,startAngle:f,endAngle:d}),k.createElement("path",bv({},dn(t),{className:g,d:S}))};function y9(e,t,n){if(e==="horizontal")return[{x:t.x,y:n.top},{x:t.x,y:n.top+n.height}];if(e==="vertical")return[{x:n.left,y:t.y},{x:n.left+n.width,y:t.y}];if(GO(t)){if(e==="centric"){var{cx:r,cy:i,innerRadius:a,outerRadius:l,angle:u}=t,c=Xt(r,i,a,u),f=Xt(r,i,l,u);return[{x:c.x,y:c.y},{x:f.x,y:f.y}]}return sA(t)}}var eg={},tg={},ng={},pj;function x9(){return pj||(pj=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=iN();function n(r){return t.isSymbol(r)?NaN:Number(r)}e.toNumber=n})(ng)),ng}var mj;function b9(){return mj||(mj=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=x9();function n(r){return r?(r=t.toNumber(r),r===1/0||r===-1/0?(r<0?-1:1)*Number.MAX_VALUE:r===r?r:0):r===0?r:0}e.toFinite=n})(tg)),tg}var gj;function w9(){return gj||(gj=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=aN(),n=b9();function r(i,a,l){l&&typeof l!="number"&&t.isIterateeCall(i,a,l)&&(a=l=void 0),i=n.toFinite(i),a===void 0?(a=i,i=0):a=n.toFinite(a),l=l===void 0?it?1:e>=t?0:NaN}function j9(e,t){return e==null||t==null?NaN:te?1:t>=e?0:NaN}function zy(e){let t,n,r;e.length!==2?(t=Gi,n=(u,c)=>Gi(e(u),c),r=(u,c)=>e(u)-c):(t=e===Gi||e===j9?e:P9,n=e,r=e);function i(u,c,f=0,d=u.length){if(f>>1;n(u[p],c)<0?f=p+1:d=p}while(f>>1;n(u[p],c)<=0?f=p+1:d=p}while(ff&&r(u[p-1],c)>-r(u[p],c)?p-1:p}return{left:i,center:l,right:a}}function P9(){return 0}function dA(e){return e===null?NaN:+e}function*E9(e,t){for(let n of e)n!=null&&(n=+n)>=n&&(yield n)}const C9=zy(Gi),zs=C9.right;zy(dA).center;class yj extends Map{constructor(t,n=A9){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:n}}),t!=null)for(const[r,i]of t)this.set(r,i)}get(t){return super.get(xj(this,t))}has(t){return super.has(xj(this,t))}set(t,n){return super.set(O9(this,t),n)}delete(t){return super.delete(N9(this,t))}}function xj({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):n}function O9({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):(e.set(r,n),n)}function N9({_intern:e,_key:t},n){const r=t(n);return e.has(r)&&(n=e.get(r),e.delete(r)),n}function A9(e){return e!==null&&typeof e=="object"?e.valueOf():e}function _9(e=Gi){if(e===Gi)return hA;if(typeof e!="function")throw new TypeError("compare is not a function");return(t,n)=>{const r=e(t,n);return r||r===0?r:(e(n,n)===0)-(e(t,t)===0)}}function hA(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(et?1:0)}const I9=Math.sqrt(50),T9=Math.sqrt(10),M9=Math.sqrt(2);function df(e,t,n){const r=(t-e)/Math.max(0,n),i=Math.floor(Math.log10(r)),a=r/Math.pow(10,i),l=a>=I9?10:a>=T9?5:a>=M9?2:1;let u,c,f;return i<0?(f=Math.pow(10,-i)/l,u=Math.round(e*f),c=Math.round(t*f),u/ft&&--c,f=-f):(f=Math.pow(10,i)*l,u=Math.round(e/f),c=Math.round(t/f),u*ft&&--c),c0))return[];if(e===t)return[e];const r=t=i))return[];const u=a-i+1,c=new Array(u);if(r)if(l<0)for(let f=0;f=r)&&(n=r);return n}function wj(e,t){let n;for(const r of e)r!=null&&(n>r||n===void 0&&r>=r)&&(n=r);return n}function pA(e,t,n=0,r=1/0,i){if(t=Math.floor(t),n=Math.floor(Math.max(0,n)),r=Math.floor(Math.min(e.length-1,r)),!(n<=t&&t<=r))return e;for(i=i===void 0?hA:_9(i);r>n;){if(r-n>600){const c=r-n+1,f=t-n+1,d=Math.log(c),p=.5*Math.exp(2*d/3),g=.5*Math.sqrt(d*p*(c-p)/c)*(f-c/2<0?-1:1),y=Math.max(n,Math.floor(t-f*p/c+g)),x=Math.min(r,Math.floor(t+(c-f)*p/c+g));pA(e,t,y,x,i)}const a=e[t];let l=n,u=r;for(Vl(e,n,t),i(e[r],a)>0&&Vl(e,n,r);l0;)--u}i(e[n],a)===0?Vl(e,n,u):(++u,Vl(e,u,r)),u<=t&&(n=u+1),t<=u&&(r=u-1)}return e}function Vl(e,t,n){const r=e[t];e[t]=e[n],e[n]=r}function D9(e,t,n){if(e=Float64Array.from(E9(e)),!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return wj(e);if(t>=1)return bj(e);var r,i=(r-1)*t,a=Math.floor(i),l=bj(pA(e,a).subarray(0,a+1)),u=wj(e.subarray(a+1));return l+(u-l)*(i-a)}}function L9(e,t,n=dA){if(!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return+n(e[0],0,e);if(t>=1)return+n(e[r-1],r-1,e);var r,i=(r-1)*t,a=Math.floor(i),l=+n(e[a],a,e),u=+n(e[a+1],a+1,e);return l+(u-l)*(i-a)}}function R9(e,t,n){e=+e,t=+t,n=(i=arguments.length)<2?(t=e,e=0,1):i<3?1:+n;for(var r=-1,i=Math.max(0,Math.ceil((t-e)/n))|0,a=new Array(i);++r>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?bc(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?bc(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=F9.exec(e))?new En(t[1],t[2],t[3],1):(t=B9.exec(e))?new En(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=U9.exec(e))?bc(t[1],t[2],t[3],t[4]):(t=W9.exec(e))?bc(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=q9.exec(e))?Oj(t[1],t[2]/100,t[3]/100,1):(t=H9.exec(e))?Oj(t[1],t[2]/100,t[3]/100,t[4]):kj.hasOwnProperty(e)?Pj(kj[e]):e==="transparent"?new En(NaN,NaN,NaN,0):null}function Pj(e){return new En(e>>16&255,e>>8&255,e&255,1)}function bc(e,t,n,r){return r<=0&&(e=t=n=NaN),new En(e,t,n,r)}function G9(e){return e instanceof $s||(e=ws(e)),e?(e=e.rgb(),new En(e.r,e.g,e.b,e.opacity)):new En}function Pv(e,t,n,r){return arguments.length===1?G9(e):new En(e,t,n,r??1)}function En(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}By(En,Pv,gA($s,{brighter(e){return e=e==null?hf:Math.pow(hf,e),new En(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?xs:Math.pow(xs,e),new En(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new En(Ea(this.r),Ea(this.g),Ea(this.b),pf(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Ej,formatHex:Ej,formatHex8:Y9,formatRgb:Cj,toString:Cj}));function Ej(){return`#${ka(this.r)}${ka(this.g)}${ka(this.b)}`}function Y9(){return`#${ka(this.r)}${ka(this.g)}${ka(this.b)}${ka((isNaN(this.opacity)?1:this.opacity)*255)}`}function Cj(){const e=pf(this.opacity);return`${e===1?"rgb(":"rgba("}${Ea(this.r)}, ${Ea(this.g)}, ${Ea(this.b)}${e===1?")":`, ${e})`}`}function pf(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Ea(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function ka(e){return e=Ea(e),(e<16?"0":"")+e.toString(16)}function Oj(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new hr(e,t,n,r)}function vA(e){if(e instanceof hr)return new hr(e.h,e.s,e.l,e.opacity);if(e instanceof $s||(e=ws(e)),!e)return new hr;if(e instanceof hr)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,i=Math.min(t,n,r),a=Math.max(t,n,r),l=NaN,u=a-i,c=(a+i)/2;return u?(t===a?l=(n-r)/u+(n0&&c<1?0:l,new hr(l,u,c,e.opacity)}function X9(e,t,n,r){return arguments.length===1?vA(e):new hr(e,t,n,r??1)}function hr(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}By(hr,X9,gA($s,{brighter(e){return e=e==null?hf:Math.pow(hf,e),new hr(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?xs:Math.pow(xs,e),new hr(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,i=2*n-r;return new En(ig(e>=240?e-240:e+120,i,r),ig(e,i,r),ig(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new hr(Nj(this.h),wc(this.s),wc(this.l),pf(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=pf(this.opacity);return`${e===1?"hsl(":"hsla("}${Nj(this.h)}, ${wc(this.s)*100}%, ${wc(this.l)*100}%${e===1?")":`, ${e})`}`}}));function Nj(e){return e=(e||0)%360,e<0?e+360:e}function wc(e){return Math.max(0,Math.min(1,e||0))}function ig(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}const Uy=e=>()=>e;function Q9(e,t){return function(n){return e+n*t}}function Z9(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(r){return Math.pow(e+r*t,n)}}function J9(e){return(e=+e)==1?yA:function(t,n){return n-t?Z9(t,n,e):Uy(isNaN(t)?n:t)}}function yA(e,t){var n=t-e;return n?Q9(e,n):Uy(isNaN(e)?t:e)}const Aj=(function e(t){var n=J9(t);function r(i,a){var l=n((i=Pv(i)).r,(a=Pv(a)).r),u=n(i.g,a.g),c=n(i.b,a.b),f=yA(i.opacity,a.opacity);return function(d){return i.r=l(d),i.g=u(d),i.b=c(d),i.opacity=f(d),i+""}}return r.gamma=e,r})(1);function eq(e,t){t||(t=[]);var n=e?Math.min(t.length,e.length):0,r=t.slice(),i;return function(a){for(i=0;in&&(a=t.slice(n,a),u[l]?u[l]+=a:u[++l]=a),(r=r[0])===(i=i[0])?u[l]?u[l]+=i:u[++l]=i:(u[++l]=null,c.push({i:l,x:mf(r,i)})),n=ag.lastIndex;return nt&&(n=e,e=t,t=n),function(r){return Math.max(e,Math.min(t,r))}}function fq(e,t,n){var r=e[0],i=e[1],a=t[0],l=t[1];return i2?dq:fq,c=f=null,p}function p(g){return g==null||isNaN(g=+g)?a:(c||(c=u(e.map(r),t,n)))(r(l(g)))}return p.invert=function(g){return l(i((f||(f=u(t,e.map(r),mf)))(g)))},p.domain=function(g){return arguments.length?(e=Array.from(g,gf),d()):e.slice()},p.range=function(g){return arguments.length?(t=Array.from(g),d()):t.slice()},p.rangeRound=function(g){return t=Array.from(g),n=Wy,d()},p.clamp=function(g){return arguments.length?(l=g?!0:fn,d()):l!==fn},p.interpolate=function(g){return arguments.length?(n=g,d()):n},p.unknown=function(g){return arguments.length?(a=g,p):a},function(g,y){return r=g,i=y,d()}}function qy(){return pd()(fn,fn)}function hq(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)}function vf(e,t){if(!isFinite(e)||e===0)return null;var n=(e=t?e.toExponential(t-1):e.toExponential()).indexOf("e"),r=e.slice(0,n);return[r.length>1?r[0]+r.slice(2):r,+e.slice(n+1)]}function Ro(e){return e=vf(Math.abs(e)),e?e[1]:NaN}function pq(e,t){return function(n,r){for(var i=n.length,a=[],l=0,u=e[0],c=0;i>0&&u>0&&(c+u+1>r&&(u=Math.max(1,r-c)),a.push(n.substring(i-=u,i+u)),!((c+=u+1)>r));)u=e[l=(l+1)%e.length];return a.reverse().join(t)}}function mq(e){return function(t){return t.replace(/[0-9]/g,function(n){return e[+n]})}}var gq=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function ks(e){if(!(t=gq.exec(e)))throw new Error("invalid format: "+e);var t;return new Hy({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}ks.prototype=Hy.prototype;function Hy(e){this.fill=e.fill===void 0?" ":e.fill+"",this.align=e.align===void 0?">":e.align+"",this.sign=e.sign===void 0?"-":e.sign+"",this.symbol=e.symbol===void 0?"":e.symbol+"",this.zero=!!e.zero,this.width=e.width===void 0?void 0:+e.width,this.comma=!!e.comma,this.precision=e.precision===void 0?void 0:+e.precision,this.trim=!!e.trim,this.type=e.type===void 0?"":e.type+""}Hy.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function vq(e){e:for(var t=e.length,n=1,r=-1,i;n0&&(r=0);break}return r>0?e.slice(0,r)+e.slice(i+1):e}var yf;function yq(e,t){var n=vf(e,t);if(!n)return yf=void 0,e.toPrecision(t);var r=n[0],i=n[1],a=i-(yf=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,l=r.length;return a===l?r:a>l?r+new Array(a-l+1).join("0"):a>0?r.slice(0,a)+"."+r.slice(a):"0."+new Array(1-a).join("0")+vf(e,Math.max(0,t+a-1))[0]}function Ij(e,t){var n=vf(e,t);if(!n)return e+"";var r=n[0],i=n[1];return i<0?"0."+new Array(-i).join("0")+r:r.length>i+1?r.slice(0,i+1)+"."+r.slice(i+1):r+new Array(i-r.length+2).join("0")}const Tj={"%":(e,t)=>(e*100).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+"",d:hq,e:(e,t)=>e.toExponential(t),f:(e,t)=>e.toFixed(t),g:(e,t)=>e.toPrecision(t),o:e=>Math.round(e).toString(8),p:(e,t)=>Ij(e*100,t),r:Ij,s:yq,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function Mj(e){return e}var Dj=Array.prototype.map,Lj=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function xq(e){var t=e.grouping===void 0||e.thousands===void 0?Mj:pq(Dj.call(e.grouping,Number),e.thousands+""),n=e.currency===void 0?"":e.currency[0]+"",r=e.currency===void 0?"":e.currency[1]+"",i=e.decimal===void 0?".":e.decimal+"",a=e.numerals===void 0?Mj:mq(Dj.call(e.numerals,String)),l=e.percent===void 0?"%":e.percent+"",u=e.minus===void 0?"−":e.minus+"",c=e.nan===void 0?"NaN":e.nan+"";function f(p,g){p=ks(p);var y=p.fill,x=p.align,S=p.sign,w=p.symbol,P=p.zero,C=p.width,O=p.comma,A=p.precision,I=p.trim,E=p.type;E==="n"?(O=!0,E="g"):Tj[E]||(A===void 0&&(A=12),I=!0,E="g"),(P||y==="0"&&x==="=")&&(P=!0,y="0",x="=");var L=(g&&g.prefix!==void 0?g.prefix:"")+(w==="$"?n:w==="#"&&/[boxX]/.test(E)?"0"+E.toLowerCase():""),F=(w==="$"?r:/[%p]/.test(E)?l:"")+(g&&g.suffix!==void 0?g.suffix:""),H=Tj[E],R=/[defgprs%]/.test(E);A=A===void 0?6:/[gprs]/.test(E)?Math.max(1,Math.min(21,A)):Math.max(0,Math.min(20,A));function W(M){var Z=L,Y=F,Q,he,de;if(E==="c")Y=H(M)+Y,M="";else{M=+M;var J=M<0||1/M<0;if(M=isNaN(M)?c:H(Math.abs(M),A),I&&(M=vq(M)),J&&+M==0&&S!=="+"&&(J=!1),Z=(J?S==="("?S:u:S==="-"||S==="("?"":S)+Z,Y=(E==="s"&&!isNaN(M)&&yf!==void 0?Lj[8+yf/3]:"")+Y+(J&&S==="("?")":""),R){for(Q=-1,he=M.length;++Qde||de>57){Y=(de===46?i+M.slice(Q+1):M.slice(Q))+Y,M=M.slice(0,Q);break}}}O&&!P&&(M=t(M,1/0));var ae=Z.length+M.length+Y.length,T=ae>1)+Z+M+Y+T.slice(ae);break;default:M=T+Z+M+Y;break}return a(M)}return W.toString=function(){return p+""},W}function d(p,g){var y=Math.max(-8,Math.min(8,Math.floor(Ro(g)/3)))*3,x=Math.pow(10,-y),S=f((p=ks(p),p.type="f",p),{suffix:Lj[8+y/3]});return function(w){return S(x*w)}}return{format:f,formatPrefix:d}}var kc,Vy,xA;bq({thousands:",",grouping:[3],currency:["$",""]});function bq(e){return kc=xq(e),Vy=kc.format,xA=kc.formatPrefix,kc}function wq(e){return Math.max(0,-Ro(Math.abs(e)))}function kq(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(Ro(t)/3)))*3-Ro(Math.abs(e)))}function Sq(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,Ro(t)-Ro(e))+1}function bA(e,t,n,r){var i=Sv(e,t,n),a;switch(r=ks(r??",f"),r.type){case"s":{var l=Math.max(Math.abs(e),Math.abs(t));return r.precision==null&&!isNaN(a=kq(i,l))&&(r.precision=a),xA(r,l)}case"":case"e":case"g":case"p":case"r":{r.precision==null&&!isNaN(a=Sq(i,Math.max(Math.abs(e),Math.abs(t))))&&(r.precision=a-(r.type==="e"));break}case"f":case"%":{r.precision==null&&!isNaN(a=wq(i))&&(r.precision=a-(r.type==="%")*2);break}}return Vy(r)}function ea(e){var t=e.domain;return e.ticks=function(n){var r=t();return wv(r[0],r[r.length-1],n??10)},e.tickFormat=function(n,r){var i=t();return bA(i[0],i[i.length-1],n??10,r)},e.nice=function(n){n==null&&(n=10);var r=t(),i=0,a=r.length-1,l=r[i],u=r[a],c,f,d=10;for(u0;){if(f=kv(l,u,n),f===c)return r[i]=l,r[a]=u,t(r);if(f>0)l=Math.floor(l/f)*f,u=Math.ceil(u/f)*f;else if(f<0)l=Math.ceil(l*f)/f,u=Math.floor(u*f)/f;else break;c=f}return e},e}function wA(){var e=qy();return e.copy=function(){return Fs(e,wA())},nr.apply(e,arguments),ea(e)}function kA(e){var t;function n(r){return r==null||isNaN(r=+r)?t:r}return n.invert=n,n.domain=n.range=function(r){return arguments.length?(e=Array.from(r,gf),n):e.slice()},n.unknown=function(r){return arguments.length?(t=r,n):t},n.copy=function(){return kA(e).unknown(t)},e=arguments.length?Array.from(e,gf):[0,1],ea(n)}function SA(e,t){e=e.slice();var n=0,r=e.length-1,i=e[n],a=e[r],l;return aMath.pow(e,t)}function Oq(e){return e===Math.E?Math.log:e===10&&Math.log10||e===2&&Math.log2||(e=Math.log(e),t=>Math.log(t)/e)}function $j(e){return(t,n)=>-e(-t,n)}function Ky(e){const t=e(Rj,zj),n=t.domain;let r=10,i,a;function l(){return i=Oq(r),a=Cq(r),n()[0]<0?(i=$j(i),a=$j(a),e(jq,Pq)):e(Rj,zj),t}return t.base=function(u){return arguments.length?(r=+u,l()):r},t.domain=function(u){return arguments.length?(n(u),l()):n()},t.ticks=u=>{const c=n();let f=c[0],d=c[c.length-1];const p=d0){for(;g<=y;++g)for(x=1;xd)break;P.push(S)}}else for(;g<=y;++g)for(x=r-1;x>=1;--x)if(S=g>0?x/a(-g):x*a(g),!(Sd)break;P.push(S)}P.length*2{if(u==null&&(u=10),c==null&&(c=r===10?"s":","),typeof c!="function"&&(!(r%1)&&(c=ks(c)).precision==null&&(c.trim=!0),c=Vy(c)),u===1/0)return c;const f=Math.max(1,r*u/t.ticks().length);return d=>{let p=d/a(Math.round(i(d)));return p*rn(SA(n(),{floor:u=>a(Math.floor(i(u))),ceil:u=>a(Math.ceil(i(u)))})),t}function jA(){const e=Ky(pd()).domain([1,10]);return e.copy=()=>Fs(e,jA()).base(e.base()),nr.apply(e,arguments),e}function Fj(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function Bj(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function Gy(e){var t=1,n=e(Fj(t),Bj(t));return n.constant=function(r){return arguments.length?e(Fj(t=+r),Bj(t)):t},ea(n)}function PA(){var e=Gy(pd());return e.copy=function(){return Fs(e,PA()).constant(e.constant())},nr.apply(e,arguments)}function Uj(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function Nq(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function Aq(e){return e<0?-e*e:e*e}function Yy(e){var t=e(fn,fn),n=1;function r(){return n===1?e(fn,fn):n===.5?e(Nq,Aq):e(Uj(n),Uj(1/n))}return t.exponent=function(i){return arguments.length?(n=+i,r()):n},ea(t)}function Xy(){var e=Yy(pd());return e.copy=function(){return Fs(e,Xy()).exponent(e.exponent())},nr.apply(e,arguments),e}function _q(){return Xy.apply(null,arguments).exponent(.5)}function Wj(e){return Math.sign(e)*e*e}function Iq(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}function EA(){var e=qy(),t=[0,1],n=!1,r;function i(a){var l=Iq(e(a));return isNaN(l)?r:n?Math.round(l):l}return i.invert=function(a){return e.invert(Wj(a))},i.domain=function(a){return arguments.length?(e.domain(a),i):e.domain()},i.range=function(a){return arguments.length?(e.range((t=Array.from(a,gf)).map(Wj)),i):t.slice()},i.rangeRound=function(a){return i.range(a).round(!0)},i.round=function(a){return arguments.length?(n=!!a,i):n},i.clamp=function(a){return arguments.length?(e.clamp(a),i):e.clamp()},i.unknown=function(a){return arguments.length?(r=a,i):r},i.copy=function(){return EA(e.domain(),t).round(n).clamp(e.clamp()).unknown(r)},nr.apply(i,arguments),ea(i)}function CA(){var e=[],t=[],n=[],r;function i(){var l=0,u=Math.max(1,t.length);for(n=new Array(u-1);++l0?n[u-1]:e[0],u=n?[r[n-1],t]:[r[f-1],r[f]]},l.unknown=function(c){return arguments.length&&(a=c),l},l.thresholds=function(){return r.slice()},l.copy=function(){return OA().domain([e,t]).range(i).unknown(a)},nr.apply(ea(l),arguments)}function NA(){var e=[.5],t=[0,1],n,r=1;function i(a){return a!=null&&a<=a?t[zs(e,a,0,r)]:n}return i.domain=function(a){return arguments.length?(e=Array.from(a),r=Math.min(e.length,t.length-1),i):e.slice()},i.range=function(a){return arguments.length?(t=Array.from(a),r=Math.min(e.length,t.length-1),i):t.slice()},i.invertExtent=function(a){var l=t.indexOf(a);return[e[l-1],e[l]]},i.unknown=function(a){return arguments.length?(n=a,i):n},i.copy=function(){return NA().domain(e).range(t).unknown(n)},nr.apply(i,arguments)}const og=new Date,lg=new Date;function Nt(e,t,n,r){function i(a){return e(a=arguments.length===0?new Date:new Date(+a)),a}return i.floor=a=>(e(a=new Date(+a)),a),i.ceil=a=>(e(a=new Date(a-1)),t(a,1),e(a),a),i.round=a=>{const l=i(a),u=i.ceil(a);return a-l(t(a=new Date(+a),l==null?1:Math.floor(l)),a),i.range=(a,l,u)=>{const c=[];if(a=i.ceil(a),u=u==null?1:Math.floor(u),!(a0))return c;let f;do c.push(f=new Date(+a)),t(a,u),e(a);while(fNt(l=>{if(l>=l)for(;e(l),!a(l);)l.setTime(l-1)},(l,u)=>{if(l>=l)if(u<0)for(;++u<=0;)for(;t(l,-1),!a(l););else for(;--u>=0;)for(;t(l,1),!a(l););}),n&&(i.count=(a,l)=>(og.setTime(+a),lg.setTime(+l),e(og),e(lg),Math.floor(n(og,lg))),i.every=a=>(a=Math.floor(a),!isFinite(a)||!(a>0)?null:a>1?i.filter(r?l=>r(l)%a===0:l=>i.count(0,l)%a===0):i)),i}const xf=Nt(()=>{},(e,t)=>{e.setTime(+e+t)},(e,t)=>t-e);xf.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?Nt(t=>{t.setTime(Math.floor(t/e)*e)},(t,n)=>{t.setTime(+t+n*e)},(t,n)=>(n-t)/e):xf);xf.range;const ei=1e3,Zn=ei*60,ti=Zn*60,ai=ti*24,Qy=ai*7,qj=ai*30,sg=ai*365,Sa=Nt(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*ei)},(e,t)=>(t-e)/ei,e=>e.getUTCSeconds());Sa.range;const Zy=Nt(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*ei)},(e,t)=>{e.setTime(+e+t*Zn)},(e,t)=>(t-e)/Zn,e=>e.getMinutes());Zy.range;const Jy=Nt(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*Zn)},(e,t)=>(t-e)/Zn,e=>e.getUTCMinutes());Jy.range;const ex=Nt(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*ei-e.getMinutes()*Zn)},(e,t)=>{e.setTime(+e+t*ti)},(e,t)=>(t-e)/ti,e=>e.getHours());ex.range;const tx=Nt(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*ti)},(e,t)=>(t-e)/ti,e=>e.getUTCHours());tx.range;const Bs=Nt(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*Zn)/ai,e=>e.getDate()-1);Bs.range;const md=Nt(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/ai,e=>e.getUTCDate()-1);md.range;const AA=Nt(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/ai,e=>Math.floor(e/ai));AA.range;function Ua(e){return Nt(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(t,n)=>{t.setDate(t.getDate()+n*7)},(t,n)=>(n-t-(n.getTimezoneOffset()-t.getTimezoneOffset())*Zn)/Qy)}const gd=Ua(0),bf=Ua(1),Tq=Ua(2),Mq=Ua(3),zo=Ua(4),Dq=Ua(5),Lq=Ua(6);gd.range;bf.range;Tq.range;Mq.range;zo.range;Dq.range;Lq.range;function Wa(e){return Nt(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCDate(t.getUTCDate()+n*7)},(t,n)=>(n-t)/Qy)}const vd=Wa(0),wf=Wa(1),Rq=Wa(2),zq=Wa(3),$o=Wa(4),$q=Wa(5),Fq=Wa(6);vd.range;wf.range;Rq.range;zq.range;$o.range;$q.range;Fq.range;const nx=Nt(e=>{e.setDate(1),e.setHours(0,0,0,0)},(e,t)=>{e.setMonth(e.getMonth()+t)},(e,t)=>t.getMonth()-e.getMonth()+(t.getFullYear()-e.getFullYear())*12,e=>e.getMonth());nx.range;const rx=Nt(e=>{e.setUTCDate(1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCMonth(e.getUTCMonth()+t)},(e,t)=>t.getUTCMonth()-e.getUTCMonth()+(t.getUTCFullYear()-e.getUTCFullYear())*12,e=>e.getUTCMonth());rx.range;const oi=Nt(e=>{e.setMonth(0,1),e.setHours(0,0,0,0)},(e,t)=>{e.setFullYear(e.getFullYear()+t)},(e,t)=>t.getFullYear()-e.getFullYear(),e=>e.getFullYear());oi.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Nt(t=>{t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)},(t,n)=>{t.setFullYear(t.getFullYear()+n*e)});oi.range;const li=Nt(e=>{e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t)},(e,t)=>t.getUTCFullYear()-e.getUTCFullYear(),e=>e.getUTCFullYear());li.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Nt(t=>{t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCFullYear(t.getUTCFullYear()+n*e)});li.range;function _A(e,t,n,r,i,a){const l=[[Sa,1,ei],[Sa,5,5*ei],[Sa,15,15*ei],[Sa,30,30*ei],[a,1,Zn],[a,5,5*Zn],[a,15,15*Zn],[a,30,30*Zn],[i,1,ti],[i,3,3*ti],[i,6,6*ti],[i,12,12*ti],[r,1,ai],[r,2,2*ai],[n,1,Qy],[t,1,qj],[t,3,3*qj],[e,1,sg]];function u(f,d,p){const g=dw).right(l,g);if(y===l.length)return e.every(Sv(f/sg,d/sg,p));if(y===0)return xf.every(Math.max(Sv(f,d,p),1));const[x,S]=l[g/l[y-1][2]53)return null;"w"in ie||(ie.w=1),"Z"in ie?(ze=cg(Kl(ie.y,0,1)),ct=ze.getUTCDay(),ze=ct>4||ct===0?wf.ceil(ze):wf(ze),ze=md.offset(ze,(ie.V-1)*7),ie.y=ze.getUTCFullYear(),ie.m=ze.getUTCMonth(),ie.d=ze.getUTCDate()+(ie.w+6)%7):(ze=ug(Kl(ie.y,0,1)),ct=ze.getDay(),ze=ct>4||ct===0?bf.ceil(ze):bf(ze),ze=Bs.offset(ze,(ie.V-1)*7),ie.y=ze.getFullYear(),ie.m=ze.getMonth(),ie.d=ze.getDate()+(ie.w+6)%7)}else("W"in ie||"U"in ie)&&("w"in ie||(ie.w="u"in ie?ie.u%7:"W"in ie?1:0),ct="Z"in ie?cg(Kl(ie.y,0,1)).getUTCDay():ug(Kl(ie.y,0,1)).getDay(),ie.m=0,ie.d="W"in ie?(ie.w+6)%7+ie.W*7-(ct+5)%7:ie.w+ie.U*7-(ct+6)%7);return"Z"in ie?(ie.H+=ie.Z/100|0,ie.M+=ie.Z%100,cg(ie)):ug(ie)}}function F(X,we,Ae,ie){for(var rt=0,ze=we.length,ct=Ae.length,ft,Ut;rt=ct)return-1;if(ft=we.charCodeAt(rt++),ft===37){if(ft=we.charAt(rt++),Ut=I[ft in Hj?we.charAt(rt++):ft],!Ut||(ie=Ut(X,Ae,ie))<0)return-1}else if(ft!=Ae.charCodeAt(ie++))return-1}return ie}function H(X,we,Ae){var ie=f.exec(we.slice(Ae));return ie?(X.p=d.get(ie[0].toLowerCase()),Ae+ie[0].length):-1}function R(X,we,Ae){var ie=y.exec(we.slice(Ae));return ie?(X.w=x.get(ie[0].toLowerCase()),Ae+ie[0].length):-1}function W(X,we,Ae){var ie=p.exec(we.slice(Ae));return ie?(X.w=g.get(ie[0].toLowerCase()),Ae+ie[0].length):-1}function M(X,we,Ae){var ie=P.exec(we.slice(Ae));return ie?(X.m=C.get(ie[0].toLowerCase()),Ae+ie[0].length):-1}function Z(X,we,Ae){var ie=S.exec(we.slice(Ae));return ie?(X.m=w.get(ie[0].toLowerCase()),Ae+ie[0].length):-1}function Y(X,we,Ae){return F(X,t,we,Ae)}function Q(X,we,Ae){return F(X,n,we,Ae)}function he(X,we,Ae){return F(X,r,we,Ae)}function de(X){return l[X.getDay()]}function J(X){return a[X.getDay()]}function ae(X){return c[X.getMonth()]}function T(X){return u[X.getMonth()]}function $(X){return i[+(X.getHours()>=12)]}function U(X){return 1+~~(X.getMonth()/3)}function _(X){return l[X.getUTCDay()]}function te(X){return a[X.getUTCDay()]}function fe(X){return c[X.getUTCMonth()]}function ce(X){return u[X.getUTCMonth()]}function Se(X){return i[+(X.getUTCHours()>=12)]}function je(X){return 1+~~(X.getUTCMonth()/3)}return{format:function(X){var we=E(X+="",O);return we.toString=function(){return X},we},parse:function(X){var we=L(X+="",!1);return we.toString=function(){return X},we},utcFormat:function(X){var we=E(X+="",A);return we.toString=function(){return X},we},utcParse:function(X){var we=L(X+="",!0);return we.toString=function(){return X},we}}}var Hj={"-":"",_:" ",0:"0"},$t=/^\s*\d+/,Vq=/^%/,Kq=/[\\^$*+?|[\]().{}]/g;function We(e,t,n){var r=e<0?"-":"",i=(r?-e:e)+"",a=i.length;return r+(a[t.toLowerCase(),n]))}function Yq(e,t,n){var r=$t.exec(t.slice(n,n+1));return r?(e.w=+r[0],n+r[0].length):-1}function Xq(e,t,n){var r=$t.exec(t.slice(n,n+1));return r?(e.u=+r[0],n+r[0].length):-1}function Qq(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.U=+r[0],n+r[0].length):-1}function Zq(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.V=+r[0],n+r[0].length):-1}function Jq(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.W=+r[0],n+r[0].length):-1}function Vj(e,t,n){var r=$t.exec(t.slice(n,n+4));return r?(e.y=+r[0],n+r[0].length):-1}function Kj(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function eH(e,t,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(n,n+6));return r?(e.Z=r[1]?0:-(r[2]+(r[3]||"00")),n+r[0].length):-1}function tH(e,t,n){var r=$t.exec(t.slice(n,n+1));return r?(e.q=r[0]*3-3,n+r[0].length):-1}function nH(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.m=r[0]-1,n+r[0].length):-1}function Gj(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.d=+r[0],n+r[0].length):-1}function rH(e,t,n){var r=$t.exec(t.slice(n,n+3));return r?(e.m=0,e.d=+r[0],n+r[0].length):-1}function Yj(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.H=+r[0],n+r[0].length):-1}function iH(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.M=+r[0],n+r[0].length):-1}function aH(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.S=+r[0],n+r[0].length):-1}function oH(e,t,n){var r=$t.exec(t.slice(n,n+3));return r?(e.L=+r[0],n+r[0].length):-1}function lH(e,t,n){var r=$t.exec(t.slice(n,n+6));return r?(e.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function sH(e,t,n){var r=Vq.exec(t.slice(n,n+1));return r?n+r[0].length:-1}function uH(e,t,n){var r=$t.exec(t.slice(n));return r?(e.Q=+r[0],n+r[0].length):-1}function cH(e,t,n){var r=$t.exec(t.slice(n));return r?(e.s=+r[0],n+r[0].length):-1}function Xj(e,t){return We(e.getDate(),t,2)}function fH(e,t){return We(e.getHours(),t,2)}function dH(e,t){return We(e.getHours()%12||12,t,2)}function hH(e,t){return We(1+Bs.count(oi(e),e),t,3)}function IA(e,t){return We(e.getMilliseconds(),t,3)}function pH(e,t){return IA(e,t)+"000"}function mH(e,t){return We(e.getMonth()+1,t,2)}function gH(e,t){return We(e.getMinutes(),t,2)}function vH(e,t){return We(e.getSeconds(),t,2)}function yH(e){var t=e.getDay();return t===0?7:t}function xH(e,t){return We(gd.count(oi(e)-1,e),t,2)}function TA(e){var t=e.getDay();return t>=4||t===0?zo(e):zo.ceil(e)}function bH(e,t){return e=TA(e),We(zo.count(oi(e),e)+(oi(e).getDay()===4),t,2)}function wH(e){return e.getDay()}function kH(e,t){return We(bf.count(oi(e)-1,e),t,2)}function SH(e,t){return We(e.getFullYear()%100,t,2)}function jH(e,t){return e=TA(e),We(e.getFullYear()%100,t,2)}function PH(e,t){return We(e.getFullYear()%1e4,t,4)}function EH(e,t){var n=e.getDay();return e=n>=4||n===0?zo(e):zo.ceil(e),We(e.getFullYear()%1e4,t,4)}function CH(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+We(t/60|0,"0",2)+We(t%60,"0",2)}function Qj(e,t){return We(e.getUTCDate(),t,2)}function OH(e,t){return We(e.getUTCHours(),t,2)}function NH(e,t){return We(e.getUTCHours()%12||12,t,2)}function AH(e,t){return We(1+md.count(li(e),e),t,3)}function MA(e,t){return We(e.getUTCMilliseconds(),t,3)}function _H(e,t){return MA(e,t)+"000"}function IH(e,t){return We(e.getUTCMonth()+1,t,2)}function TH(e,t){return We(e.getUTCMinutes(),t,2)}function MH(e,t){return We(e.getUTCSeconds(),t,2)}function DH(e){var t=e.getUTCDay();return t===0?7:t}function LH(e,t){return We(vd.count(li(e)-1,e),t,2)}function DA(e){var t=e.getUTCDay();return t>=4||t===0?$o(e):$o.ceil(e)}function RH(e,t){return e=DA(e),We($o.count(li(e),e)+(li(e).getUTCDay()===4),t,2)}function zH(e){return e.getUTCDay()}function $H(e,t){return We(wf.count(li(e)-1,e),t,2)}function FH(e,t){return We(e.getUTCFullYear()%100,t,2)}function BH(e,t){return e=DA(e),We(e.getUTCFullYear()%100,t,2)}function UH(e,t){return We(e.getUTCFullYear()%1e4,t,4)}function WH(e,t){var n=e.getUTCDay();return e=n>=4||n===0?$o(e):$o.ceil(e),We(e.getUTCFullYear()%1e4,t,4)}function qH(){return"+0000"}function Zj(){return"%"}function Jj(e){return+e}function eP(e){return Math.floor(+e/1e3)}var yo,LA,RA;HH({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function HH(e){return yo=Hq(e),LA=yo.format,yo.parse,RA=yo.utcFormat,yo.utcParse,yo}function VH(e){return new Date(e)}function KH(e){return e instanceof Date?+e:+new Date(+e)}function ix(e,t,n,r,i,a,l,u,c,f){var d=qy(),p=d.invert,g=d.domain,y=f(".%L"),x=f(":%S"),S=f("%I:%M"),w=f("%I %p"),P=f("%a %d"),C=f("%b %d"),O=f("%B"),A=f("%Y");function I(E){return(c(E)t(i/(e.length-1)))},n.quantiles=function(r){return Array.from({length:r+1},(i,a)=>D9(e,a/r))},n.copy=function(){return BA(t).domain(e)},pi.apply(n,arguments)}function xd(){var e=0,t=.5,n=1,r=1,i,a,l,u,c,f=fn,d,p=!1,g;function y(S){return isNaN(S=+S)?g:(S=.5+((S=+d(S))-a)*(r*Se.chartData,HA=G([mi],e=>{var t=e.chartData!=null?e.chartData.length-1:0;return{chartData:e.chartData,computedData:e.computedData,dataEndIndex:t,dataStartIndex:0}}),VA=(e,t,n,r)=>r?HA(e):mi(e),KA=(e,t,n)=>n?HA(e):mi(e);function si(e){if(Array.isArray(e)&&e.length===2){var[t,n]=e;if(Me(t)&&Me(n))return!0}return!1}function tP(e,t,n){return n?e:[Math.min(e[0],t[0]),Math.max(e[1],t[1])]}function GA(e,t){if(t&&typeof e!="function"&&Array.isArray(e)&&e.length===2){var[n,r]=e,i,a;if(Me(n))i=n;else if(typeof n=="function")return;if(Me(r))a=r;else if(typeof r=="function")return;var l=[i,a];if(si(l))return l}}function ZH(e,t,n){if(!(!n&&t==null)){if(typeof e=="function"&&t!=null)try{var r=e(t,n);if(si(r))return tP(r,t,n)}catch{}if(Array.isArray(e)&&e.length===2){var[i,a]=e,l,u;if(i==="auto")t!=null&&(l=Math.min(...t));else if(ge(i))l=i;else if(typeof i=="function")try{t!=null&&(l=i(t==null?void 0:t[0]))}catch{}else if(typeof i=="string"&&hS.test(i)){var c=hS.exec(i);if(c==null||c[1]==null||t==null)l=void 0;else{var f=+c[1];l=t[0]-f}}else l=t==null?void 0:t[0];if(a==="auto")t!=null&&(u=Math.max(...t));else if(ge(a))u=a;else if(typeof a=="function")try{t!=null&&(u=a(t==null?void 0:t[1]))}catch{}else if(typeof a=="string"&&pS.test(a)){var d=pS.exec(a);if(d==null||d[1]==null||t==null)u=void 0;else{var p=+d[1];u=t[1]+p}}else u=t==null?void 0:t[1];var g=[l,u];if(si(g))return t==null?g:tP(g,t,n)}}}var qo=1e9,JH={precision:20,rounding:4,toExpNeg:-7,toExpPos:21,LN10:"2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286"},sx,ot=!0,tr="[DecimalError] ",Ca=tr+"Invalid argument: ",lx=tr+"Exponent out of range: ",Ho=Math.floor,ba=Math.pow,eV=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,Dn,Lt=1e7,nt=7,YA=9007199254740991,kf=Ho(YA/nt),ye={};ye.absoluteValue=ye.abs=function(){var e=new this.constructor(this);return e.s&&(e.s=1),e};ye.comparedTo=ye.cmp=function(e){var t,n,r,i,a=this;if(e=new a.constructor(e),a.s!==e.s)return a.s||-e.s;if(a.e!==e.e)return a.e>e.e^a.s<0?1:-1;for(r=a.d.length,i=e.d.length,t=0,n=re.d[t]^a.s<0?1:-1;return r===i?0:r>i^a.s<0?1:-1};ye.decimalPlaces=ye.dp=function(){var e=this,t=e.d.length-1,n=(t-e.e)*nt;if(t=e.d[t],t)for(;t%10==0;t/=10)n--;return n<0?0:n};ye.dividedBy=ye.div=function(e){return ni(this,new this.constructor(e))};ye.dividedToIntegerBy=ye.idiv=function(e){var t=this,n=t.constructor;return Ye(ni(t,new n(e),0,1),n.precision)};ye.equals=ye.eq=function(e){return!this.cmp(e)};ye.exponent=function(){return jt(this)};ye.greaterThan=ye.gt=function(e){return this.cmp(e)>0};ye.greaterThanOrEqualTo=ye.gte=function(e){return this.cmp(e)>=0};ye.isInteger=ye.isint=function(){return this.e>this.d.length-2};ye.isNegative=ye.isneg=function(){return this.s<0};ye.isPositive=ye.ispos=function(){return this.s>0};ye.isZero=function(){return this.s===0};ye.lessThan=ye.lt=function(e){return this.cmp(e)<0};ye.lessThanOrEqualTo=ye.lte=function(e){return this.cmp(e)<1};ye.logarithm=ye.log=function(e){var t,n=this,r=n.constructor,i=r.precision,a=i+5;if(e===void 0)e=new r(10);else if(e=new r(e),e.s<1||e.eq(Dn))throw Error(tr+"NaN");if(n.s<1)throw Error(tr+(n.s?"NaN":"-Infinity"));return n.eq(Dn)?new r(0):(ot=!1,t=ni(Ss(n,a),Ss(e,a),a),ot=!0,Ye(t,i))};ye.minus=ye.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?ZA(t,e):XA(t,(e.s=-e.s,e))};ye.modulo=ye.mod=function(e){var t,n=this,r=n.constructor,i=r.precision;if(e=new r(e),!e.s)throw Error(tr+"NaN");return n.s?(ot=!1,t=ni(n,e,0,1).times(e),ot=!0,n.minus(t)):Ye(new r(n),i)};ye.naturalExponential=ye.exp=function(){return QA(this)};ye.naturalLogarithm=ye.ln=function(){return Ss(this)};ye.negated=ye.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e};ye.plus=ye.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?XA(t,e):ZA(t,(e.s=-e.s,e))};ye.precision=ye.sd=function(e){var t,n,r,i=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(Ca+e);if(t=jt(i)+1,r=i.d.length-1,n=r*nt+1,r=i.d[r],r){for(;r%10==0;r/=10)n--;for(r=i.d[0];r>=10;r/=10)n++}return e&&t>n?t:n};ye.squareRoot=ye.sqrt=function(){var e,t,n,r,i,a,l,u=this,c=u.constructor;if(u.s<1){if(!u.s)return new c(0);throw Error(tr+"NaN")}for(e=jt(u),ot=!1,i=Math.sqrt(+u),i==0||i==1/0?(t=Tr(u.d),(t.length+e)%2==0&&(t+="0"),i=Math.sqrt(t),e=Ho((e+1)/2)-(e<0||e%2),i==1/0?t="5e"+e:(t=i.toExponential(),t=t.slice(0,t.indexOf("e")+1)+e),r=new c(t)):r=new c(i.toString()),n=c.precision,i=l=n+3;;)if(a=r,r=a.plus(ni(u,a,l+2)).times(.5),Tr(a.d).slice(0,l)===(t=Tr(r.d)).slice(0,l)){if(t=t.slice(l-3,l+1),i==l&&t=="4999"){if(Ye(a,n+1,0),a.times(a).eq(u)){r=a;break}}else if(t!="9999")break;l+=4}return ot=!0,Ye(r,n)};ye.times=ye.mul=function(e){var t,n,r,i,a,l,u,c,f,d=this,p=d.constructor,g=d.d,y=(e=new p(e)).d;if(!d.s||!e.s)return new p(0);for(e.s*=d.s,n=d.e+e.e,c=g.length,f=y.length,c=0;){for(t=0,i=c+r;i>r;)u=a[i]+y[r]*g[i-r-1]+t,a[i--]=u%Lt|0,t=u/Lt|0;a[i]=(a[i]+t)%Lt|0}for(;!a[--l];)a.pop();return t?++n:a.shift(),e.d=a,e.e=n,ot?Ye(e,p.precision):e};ye.toDecimalPlaces=ye.todp=function(e,t){var n=this,r=n.constructor;return n=new r(n),e===void 0?n:(Rr(e,0,qo),t===void 0?t=r.rounding:Rr(t,0,8),Ye(n,e+jt(n)+1,t))};ye.toExponential=function(e,t){var n,r=this,i=r.constructor;return e===void 0?n=Da(r,!0):(Rr(e,0,qo),t===void 0?t=i.rounding:Rr(t,0,8),r=Ye(new i(r),e+1,t),n=Da(r,!0,e+1)),n};ye.toFixed=function(e,t){var n,r,i=this,a=i.constructor;return e===void 0?Da(i):(Rr(e,0,qo),t===void 0?t=a.rounding:Rr(t,0,8),r=Ye(new a(i),e+jt(i)+1,t),n=Da(r.abs(),!1,e+jt(r)+1),i.isneg()&&!i.isZero()?"-"+n:n)};ye.toInteger=ye.toint=function(){var e=this,t=e.constructor;return Ye(new t(e),jt(e)+1,t.rounding)};ye.toNumber=function(){return+this};ye.toPower=ye.pow=function(e){var t,n,r,i,a,l,u=this,c=u.constructor,f=12,d=+(e=new c(e));if(!e.s)return new c(Dn);if(u=new c(u),!u.s){if(e.s<1)throw Error(tr+"Infinity");return u}if(u.eq(Dn))return u;if(r=c.precision,e.eq(Dn))return Ye(u,r);if(t=e.e,n=e.d.length-1,l=t>=n,a=u.s,l){if((n=d<0?-d:d)<=YA){for(i=new c(Dn),t=Math.ceil(r/nt+4),ot=!1;n%2&&(i=i.times(u),rP(i.d,t)),n=Ho(n/2),n!==0;)u=u.times(u),rP(u.d,t);return ot=!0,e.s<0?new c(Dn).div(i):Ye(i,r)}}else if(a<0)throw Error(tr+"NaN");return a=a<0&&e.d[Math.max(t,n)]&1?-1:1,u.s=1,ot=!1,i=e.times(Ss(u,r+f)),ot=!0,i=QA(i),i.s=a,i};ye.toPrecision=function(e,t){var n,r,i=this,a=i.constructor;return e===void 0?(n=jt(i),r=Da(i,n<=a.toExpNeg||n>=a.toExpPos)):(Rr(e,1,qo),t===void 0?t=a.rounding:Rr(t,0,8),i=Ye(new a(i),e,t),n=jt(i),r=Da(i,e<=n||n<=a.toExpNeg,e)),r};ye.toSignificantDigits=ye.tosd=function(e,t){var n=this,r=n.constructor;return e===void 0?(e=r.precision,t=r.rounding):(Rr(e,1,qo),t===void 0?t=r.rounding:Rr(t,0,8)),Ye(new r(n),e,t)};ye.toString=ye.valueOf=ye.val=ye.toJSON=ye[Symbol.for("nodejs.util.inspect.custom")]=function(){var e=this,t=jt(e),n=e.constructor;return Da(e,t<=n.toExpNeg||t>=n.toExpPos)};function XA(e,t){var n,r,i,a,l,u,c,f,d=e.constructor,p=d.precision;if(!e.s||!t.s)return t.s||(t=new d(e)),ot?Ye(t,p):t;if(c=e.d,f=t.d,l=e.e,i=t.e,c=c.slice(),a=l-i,a){for(a<0?(r=c,a=-a,u=f.length):(r=f,i=l,u=c.length),l=Math.ceil(p/nt),u=l>u?l+1:u+1,a>u&&(a=u,r.length=1),r.reverse();a--;)r.push(0);r.reverse()}for(u=c.length,a=f.length,u-a<0&&(a=u,r=f,f=c,c=r),n=0;a;)n=(c[--a]=c[a]+f[a]+n)/Lt|0,c[a]%=Lt;for(n&&(c.unshift(n),++i),u=c.length;c[--u]==0;)c.pop();return t.d=c,t.e=i,ot?Ye(t,p):t}function Rr(e,t,n){if(e!==~~e||en)throw Error(Ca+e)}function Tr(e){var t,n,r,i=e.length-1,a="",l=e[0];if(i>0){for(a+=l,t=1;tl?1:-1;else for(u=c=0;ui[u]?1:-1;break}return c}function n(r,i,a){for(var l=0;a--;)r[a]-=l,l=r[a]1;)r.shift()}return function(r,i,a,l){var u,c,f,d,p,g,y,x,S,w,P,C,O,A,I,E,L,F,H=r.constructor,R=r.s==i.s?1:-1,W=r.d,M=i.d;if(!r.s)return new H(r);if(!i.s)throw Error(tr+"Division by zero");for(c=r.e-i.e,L=M.length,I=W.length,y=new H(R),x=y.d=[],f=0;M[f]==(W[f]||0);)++f;if(M[f]>(W[f]||0)&&--c,a==null?C=a=H.precision:l?C=a+(jt(r)-jt(i))+1:C=a,C<0)return new H(0);if(C=C/nt+2|0,f=0,L==1)for(d=0,M=M[0],C++;(f1&&(M=e(M,d),W=e(W,d),L=M.length,I=W.length),A=L,S=W.slice(0,L),w=S.length;w=Lt/2&&++E;do d=0,u=t(M,S,L,w),u<0?(P=S[0],L!=w&&(P=P*Lt+(S[1]||0)),d=P/E|0,d>1?(d>=Lt&&(d=Lt-1),p=e(M,d),g=p.length,w=S.length,u=t(p,S,g,w),u==1&&(d--,n(p,L16)throw Error(lx+jt(e));if(!e.s)return new d(Dn);for(ot=!1,u=p,l=new d(.03125);e.abs().gte(.1);)e=e.times(l),f+=5;for(r=Math.log(ba(2,f))/Math.LN10*2+5|0,u+=r,n=i=a=new d(Dn),d.precision=u;;){if(i=Ye(i.times(e),u),n=n.times(++c),l=a.plus(ni(i,n,u)),Tr(l.d).slice(0,u)===Tr(a.d).slice(0,u)){for(;f--;)a=Ye(a.times(a),u);return d.precision=p,t==null?(ot=!0,Ye(a,p)):a}a=l}}function jt(e){for(var t=e.e*nt,n=e.d[0];n>=10;n/=10)t++;return t}function fg(e,t,n){if(t>e.LN10.sd())throw ot=!0,n&&(e.precision=n),Error(tr+"LN10 precision limit exceeded");return Ye(new e(e.LN10),t)}function Wi(e){for(var t="";e--;)t+="0";return t}function Ss(e,t){var n,r,i,a,l,u,c,f,d,p=1,g=10,y=e,x=y.d,S=y.constructor,w=S.precision;if(y.s<1)throw Error(tr+(y.s?"NaN":"-Infinity"));if(y.eq(Dn))return new S(0);if(t==null?(ot=!1,f=w):f=t,y.eq(10))return t==null&&(ot=!0),fg(S,f);if(f+=g,S.precision=f,n=Tr(x),r=n.charAt(0),a=jt(y),Math.abs(a)<15e14){for(;r<7&&r!=1||r==1&&n.charAt(1)>3;)y=y.times(e),n=Tr(y.d),r=n.charAt(0),p++;a=jt(y),r>1?(y=new S("0."+n),a++):y=new S(r+"."+n.slice(1))}else return c=fg(S,f+2,w).times(a+""),y=Ss(new S(r+"."+n.slice(1)),f-g).plus(c),S.precision=w,t==null?(ot=!0,Ye(y,w)):y;for(u=l=y=ni(y.minus(Dn),y.plus(Dn),f),d=Ye(y.times(y),f),i=3;;){if(l=Ye(l.times(d),f),c=u.plus(ni(l,new S(i),f)),Tr(c.d).slice(0,f)===Tr(u.d).slice(0,f))return u=u.times(2),a!==0&&(u=u.plus(fg(S,f+2,w).times(a+""))),u=ni(u,new S(p),f),S.precision=w,t==null?(ot=!0,Ye(u,w)):u;u=c,i+=2}}function nP(e,t){var n,r,i;for((n=t.indexOf("."))>-1&&(t=t.replace(".","")),(r=t.search(/e/i))>0?(n<0&&(n=r),n+=+t.slice(r+1),t=t.substring(0,r)):n<0&&(n=t.length),r=0;t.charCodeAt(r)===48;)++r;for(i=t.length;t.charCodeAt(i-1)===48;)--i;if(t=t.slice(r,i),t){if(i-=r,n=n-r-1,e.e=Ho(n/nt),e.d=[],r=(n+1)%nt,n<0&&(r+=nt),rkf||e.e<-kf))throw Error(lx+n)}else e.s=0,e.e=0,e.d=[0];return e}function Ye(e,t,n){var r,i,a,l,u,c,f,d,p=e.d;for(l=1,a=p[0];a>=10;a/=10)l++;if(r=t-l,r<0)r+=nt,i=t,f=p[d=0];else{if(d=Math.ceil((r+1)/nt),a=p.length,d>=a)return e;for(f=a=p[d],l=1;a>=10;a/=10)l++;r%=nt,i=r-nt+l}if(n!==void 0&&(a=ba(10,l-i-1),u=f/a%10|0,c=t<0||p[d+1]!==void 0||f%a,c=n<4?(u||c)&&(n==0||n==(e.s<0?3:2)):u>5||u==5&&(n==4||c||n==6&&(r>0?i>0?f/ba(10,l-i):0:p[d-1])%10&1||n==(e.s<0?8:7))),t<1||!p[0])return c?(a=jt(e),p.length=1,t=t-a-1,p[0]=ba(10,(nt-t%nt)%nt),e.e=Ho(-t/nt)||0):(p.length=1,p[0]=e.e=e.s=0),e;if(r==0?(p.length=d,a=1,d--):(p.length=d+1,a=ba(10,nt-r),p[d]=i>0?(f/ba(10,l-i)%ba(10,i)|0)*a:0),c)for(;;)if(d==0){(p[0]+=a)==Lt&&(p[0]=1,++e.e);break}else{if(p[d]+=a,p[d]!=Lt)break;p[d--]=0,a=1}for(r=p.length;p[--r]===0;)p.pop();if(ot&&(e.e>kf||e.e<-kf))throw Error(lx+jt(e));return e}function ZA(e,t){var n,r,i,a,l,u,c,f,d,p,g=e.constructor,y=g.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new g(e),ot?Ye(t,y):t;if(c=e.d,p=t.d,r=t.e,f=e.e,c=c.slice(),l=f-r,l){for(d=l<0,d?(n=c,l=-l,u=p.length):(n=p,r=f,u=c.length),i=Math.max(Math.ceil(y/nt),u)+2,l>i&&(l=i,n.length=1),n.reverse(),i=l;i--;)n.push(0);n.reverse()}else{for(i=c.length,u=p.length,d=i0;--i)c[u++]=0;for(i=p.length;i>l;){if(c[--i]0?a=a.charAt(0)+"."+a.slice(1)+Wi(r):l>1&&(a=a.charAt(0)+"."+a.slice(1)),a=a+(i<0?"e":"e+")+i):i<0?(a="0."+Wi(-i-1)+a,n&&(r=n-l)>0&&(a+=Wi(r))):i>=l?(a+=Wi(i+1-l),n&&(r=n-i-1)>0&&(a=a+"."+Wi(r))):((r=i+1)0&&(i+1===l&&(a+="."),a+=Wi(r))),e.s<0?"-"+a:a}function rP(e,t){if(e.length>t)return e.length=t,!0}function JA(e){var t,n,r;function i(a){var l=this;if(!(l instanceof i))return new i(a);if(l.constructor=i,a instanceof i){l.s=a.s,l.e=a.e,l.d=(a=a.d)?a.slice():a;return}if(typeof a=="number"){if(a*0!==0)throw Error(Ca+a);if(a>0)l.s=1;else if(a<0)a=-a,l.s=-1;else{l.s=0,l.e=0,l.d=[0];return}if(a===~~a&&a<1e7){l.e=0,l.d=[a];return}return nP(l,a.toString())}else if(typeof a!="string")throw Error(Ca+a);if(a.charCodeAt(0)===45?(a=a.slice(1),l.s=-1):l.s=1,eV.test(a))nP(l,a);else throw Error(Ca+a)}if(i.prototype=ye,i.ROUND_UP=0,i.ROUND_DOWN=1,i.ROUND_CEIL=2,i.ROUND_FLOOR=3,i.ROUND_HALF_UP=4,i.ROUND_HALF_DOWN=5,i.ROUND_HALF_EVEN=6,i.ROUND_HALF_CEIL=7,i.ROUND_HALF_FLOOR=8,i.clone=JA,i.config=i.set=tV,e===void 0&&(e={}),e)for(r=["precision","rounding","toExpNeg","toExpPos","LN10"],t=0;t=i[t+1]&&r<=i[t+2])this[n]=r;else throw Error(Ca+n+": "+r);if((r=e[n="LN10"])!==void 0)if(r==Math.LN10)this[n]=new this(r);else throw Error(Ca+n+": "+r);return this}var sx=JA(JH);Dn=new sx(1);const Ke=sx;function e_(e){var t;return e===0?t=1:t=Math.floor(new Ke(e).abs().log(10).toNumber())+1,t}function t_(e,t,n){for(var r=new Ke(e),i=0,a=[];r.lt(t)&&i<1e5;)a.push(r.toNumber()),r=r.add(n),i++;return a}var n_=e=>{var[t,n]=e,[r,i]=[t,n];return t>n&&([r,i]=[n,t]),[r,i]},r_=(e,t,n)=>{if(e.lte(0))return new Ke(0);var r=e_(e.toNumber()),i=new Ke(10).pow(r),a=e.div(i),l=r!==1?.05:.1,u=new Ke(Math.ceil(a.div(l).toNumber())).add(n).mul(l),c=u.mul(i);return t?new Ke(c.toNumber()):new Ke(Math.ceil(c.toNumber()))},nV=(e,t,n)=>{var r=new Ke(1),i=new Ke(e);if(!i.isint()&&n){var a=Math.abs(e);a<1?(r=new Ke(10).pow(e_(e)-1),i=new Ke(Math.floor(i.div(r).toNumber())).mul(r)):a>1&&(i=new Ke(Math.floor(e)))}else e===0?i=new Ke(Math.floor((t-1)/2)):n||(i=new Ke(Math.floor(e)));for(var l=Math.floor((t-1)/2),u=[],c=0;c4&&arguments[4]!==void 0?arguments[4]:0;if(!Number.isFinite((n-t)/(r-1)))return{step:new Ke(0),tickMin:new Ke(0),tickMax:new Ke(0)};var l=r_(new Ke(n).sub(t).div(r-1),i,a),u;t<=0&&n>=0?u=new Ke(0):(u=new Ke(t).add(n).div(2),u=u.sub(new Ke(u).mod(l)));var c=Math.ceil(u.sub(t).div(l).toNumber()),f=Math.ceil(new Ke(n).sub(u).div(l).toNumber()),d=c+f+1;return d>r?i_(t,n,r,i,a+1):(d0?f+(r-d):f,c=n>0?c:c+(r-d)),{step:l,tickMin:u.sub(new Ke(c).mul(l)),tickMax:u.add(new Ke(f).mul(l))})},rV=function(t){var[n,r]=t,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:6,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,l=Math.max(i,2),[u,c]=n_([n,r]);if(u===-1/0||c===1/0){var f=c===1/0?[u,...Array(i-1).fill(1/0)]:[...Array(i-1).fill(-1/0),c];return n>r?f.reverse():f}if(u===c)return nV(u,i,a);var{step:d,tickMin:p,tickMax:g}=i_(u,c,l,a,0),y=t_(p,g.add(new Ke(.1).mul(d)),d);return n>r?y.reverse():y},iV=function(t,n){var[r,i]=t,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,[l,u]=n_([r,i]);if(l===-1/0||u===1/0)return[r,i];if(l===u)return[l];var c=Math.max(n,2),f=r_(new Ke(u).sub(l).div(c-1),a,0),d=[...t_(new Ke(l),new Ke(u),f),u];return a===!1&&(d=d.map(p=>Math.round(p))),r>i?d.reverse():d},a_=e=>e.rootProps.maxBarSize,aV=e=>e.rootProps.barGap,o_=e=>e.rootProps.barCategoryGap,oV=e=>e.rootProps.barSize,bd=e=>e.rootProps.stackOffset,l_=e=>e.rootProps.reverseStackOrder,ux=e=>e.options.chartName,cx=e=>e.rootProps.syncId,s_=e=>e.rootProps.syncMethod,fx=e=>e.options.eventEmitter,lV=e=>e.rootProps.baseValue,Rt={grid:-100,barBackground:-50,area:100,cursorRectangle:200,bar:300,line:400,axis:500,scatter:600,activeBar:1e3,cursorLine:1100,activeDot:1200,label:2e3},va={allowDecimals:!1,allowDataOverflow:!1,angleAxisId:0,reversed:!1,scale:"auto",tick:!0,type:"auto"},Or={allowDataOverflow:!1,allowDecimals:!1,allowDuplicatedCategory:!0,includeHidden:!1,radiusAxisId:0,reversed:!1,scale:"auto",tick:!0,tickCount:5,type:"auto"},wd=(e,t)=>{if(!(!e||!t))return e!=null&&e.reversed?[t[1],t[0]]:t};function kd(e,t,n){if(n!=="auto")return n;if(e!=null)return $r(e,t)?"category":"number"}function iP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Sf(e){for(var t=1;t{if(t!=null)return e.polarAxis.angleAxis[t]},dx=G([fV,GN],(e,t)=>{var n;if(e!=null)return e;var r=(n=kd(t,"angleAxis",aP.type))!==null&&n!==void 0?n:"category";return Sf(Sf({},aP),{},{type:r})}),dV=(e,t)=>e.polarAxis.radiusAxis[t],hx=G([dV,GN],(e,t)=>{var n;if(e!=null)return e;var r=(n=kd(t,"radiusAxis",oP.type))!==null&&n!==void 0?n:"category";return Sf(Sf({},oP),{},{type:r})}),Sd=e=>e.polarOptions,px=G([di,hi,zt],u9),u_=G([Sd,px],(e,t)=>{if(e!=null)return vr(e.innerRadius,t,0)}),c_=G([Sd,px],(e,t)=>{if(e!=null)return vr(e.outerRadius,t,t*.8)}),hV=e=>{if(e==null)return[0,0];var{startAngle:t,endAngle:n}=e;return[t,n]},f_=G([Sd],hV);G([dx,f_],wd);var d_=G([px,u_,c_],(e,t,n)=>{if(!(e==null||t==null||n==null))return[t,n]});G([hx,d_],wd);var h_=G([He,Sd,u_,c_,di,hi],(e,t,n,r,i,a)=>{if(!(e!=="centric"&&e!=="radial"||t==null||n==null||r==null)){var{cx:l,cy:u,startAngle:c,endAngle:f}=t;return{cx:vr(l,i,i/2),cy:vr(u,a,a/2),innerRadius:n,outerRadius:r,startAngle:c,endAngle:f,clockWise:!1}}}),Ft=(e,t)=>t,jd=(e,t,n)=>n;function Pd(e){return e==null?void 0:e.id}function p_(e,t,n){var{chartData:r=[]}=t,{allowDuplicatedCategory:i,dataKey:a}=n,l=new Map;return e.forEach(u=>{var c,f=(c=u.data)!==null&&c!==void 0?c:r;if(!(f==null||f.length===0)){var d=Pd(u);f.forEach((p,g)=>{var y=a==null||i?g:String(St(p,a,null)),x=St(p,u.dataKey,0),S;l.has(y)?S=l.get(y):S={},Object.assign(S,{[d]:x}),l.set(y,S)})}}),Array.from(l.values())}function Ed(e){return"stackId"in e&&e.stackId!=null&&e.dataKey!=null}var Cd=(e,t)=>e===t?!0:e==null||t==null?!1:e[0]===t[0]&&e[1]===t[1];function Od(e,t){return Array.isArray(e)&&Array.isArray(t)&&e.length===0&&t.length===0?!0:e===t}function pV(e,t){if(e.length===t.length){for(var n=0;n{var t=He(e);return t==="horizontal"?"xAxis":t==="vertical"?"yAxis":t==="centric"?"angleAxis":"radiusAxis"},Vo=e=>e.tooltip.settings.axisId;function mV(e){if(e in es)return es[e]();var t="scale".concat(_s(e));if(t in es)return es[t]()}function lP(e){var t=e.ticks,n=e.bandwidth,r=e.range(),i=[Math.min(...r),Math.max(...r)];return{domain:()=>e.domain(),range:(function(a){function l(){return a.apply(this,arguments)}return l.toString=function(){return a.toString()},l})(()=>i),rangeMin:()=>i[0],rangeMax:()=>i[1],isInRange(a){var l=i[0],u=i[1];return l<=u?a>=l&&a<=u:a>=u&&a<=l},bandwidth:n?()=>n.call(e):void 0,ticks:t?a=>t.call(e,a):void 0,map:(a,l)=>{var u=e(a);if(u!=null){if(e.bandwidth&&l!==null&&l!==void 0&&l.position){var c=e.bandwidth();switch(l.position){case"middle":u+=c/2;break;case"end":u+=c;break}}return u}}}}function sP(e,t,n){if(typeof e=="function")return lP(e.copy().domain(t).range(n));if(e!=null){var r=mV(e);if(r!=null)return r.domain(t).range(n),lP(r)}}var gV=(e,t)=>{if(t!=null)switch(e){case"linear":{if(!si(t)){for(var n,r,i=0;ir)&&(r=a))}return n!==void 0&&r!==void 0?[n,r]:void 0}return t}default:return t}};function uP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function jf(e){for(var t=1;te.cartesianAxis.xAxis[t],gi=(e,t)=>{var n=m_(e,t);return n??Mt},Dt={allowDataOverflow:!1,allowDecimals:!0,allowDuplicatedCategory:!0,angle:0,dataKey:void 0,domain:Ov,hide:!0,id:0,includeHidden:!1,interval:"preserveEnd",minTickGap:5,mirror:!1,name:void 0,orientation:"left",padding:{top:0,bottom:0},reversed:!1,scale:"auto",tick:!0,tickCount:5,tickFormatter:void 0,ticks:void 0,type:"number",unit:void 0,width:Ms},g_=(e,t)=>e.cartesianAxis.yAxis[t],vi=(e,t)=>{var n=g_(e,t);return n??Dt},bV={domain:[0,"auto"],includeHidden:!1,reversed:!1,allowDataOverflow:!1,allowDuplicatedCategory:!1,dataKey:void 0,id:0,name:"",range:[64,64],scale:"auto",type:"number",unit:""},mx=(e,t)=>{var n=e.cartesianAxis.zAxis[t];return n??bV},gn=(e,t,n)=>{switch(t){case"xAxis":return gi(e,n);case"yAxis":return vi(e,n);case"zAxis":return mx(e,n);case"angleAxis":return dx(e,n);case"radiusAxis":return hx(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},wV=(e,t,n)=>{switch(t){case"xAxis":return gi(e,n);case"yAxis":return vi(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},Us=(e,t,n)=>{switch(t){case"xAxis":return gi(e,n);case"yAxis":return vi(e,n);case"angleAxis":return dx(e,n);case"radiusAxis":return hx(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},v_=e=>e.graphicalItems.cartesianItems.some(t=>t.type==="bar")||e.graphicalItems.polarItems.some(t=>t.type==="radialBar");function y_(e,t){return n=>{switch(e){case"xAxis":return"xAxisId"in n&&n.xAxisId===t;case"yAxis":return"yAxisId"in n&&n.yAxisId===t;case"zAxis":return"zAxisId"in n&&n.zAxisId===t;case"angleAxis":return"angleAxisId"in n&&n.angleAxisId===t;case"radiusAxis":return"radiusAxisId"in n&&n.radiusAxisId===t;default:return!1}}}var Nd=e=>e.graphicalItems.cartesianItems,kV=G([Ft,jd],y_),x_=(e,t,n)=>e.filter(n).filter(r=>(t==null?void 0:t.includeHidden)===!0?!0:!r.hide),Ws=G([Nd,gn,kV],x_,{memoizeOptions:{resultEqualityCheck:Od}}),b_=G([Ws],e=>e.filter(t=>t.type==="area"||t.type==="bar").filter(Ed)),w_=e=>e.filter(t=>!("stackId"in t)||t.stackId===void 0),SV=G([Ws],w_),k_=e=>e.map(t=>t.data).filter(Boolean).flat(1),jV=G([Ws],k_,{memoizeOptions:{resultEqualityCheck:Od}}),S_=(e,t)=>{var{chartData:n=[],dataStartIndex:r,dataEndIndex:i}=t;return e.length>0?e:n.slice(r,i+1)},gx=G([jV,VA],S_),j_=(e,t,n)=>(t==null?void 0:t.dataKey)!=null?e.map(r=>({value:St(r,t.dataKey)})):n.length>0?n.map(r=>r.dataKey).flatMap(r=>e.map(i=>({value:St(i,r)}))):e.map(r=>({value:r})),Ad=G([gx,gn,Ws],j_);function P_(e,t){switch(e){case"xAxis":return t.direction==="x";case"yAxis":return t.direction==="y";default:return!1}}function Tc(e){if(Dr(e)||e instanceof Date){var t=Number(e);if(Me(t))return t}}function cP(e){if(Array.isArray(e)){var t=[Tc(e[0]),Tc(e[1])];return si(t)?t:void 0}var n=Tc(e);if(n!=null)return[n,n]}function ui(e){return e.map(Tc).filter(Pn)}function PV(e,t,n){return!n||typeof t!="number"||gr(t)?[]:n.length?ui(n.flatMap(r=>{var i=St(e,r.dataKey),a,l;if(Array.isArray(i)?[a,l]=i:a=l=i,!(!Me(a)||!Me(l)))return[t-a,t+l]})):[]}var At=e=>{var t=Bt(e),n=Vo(e);return Us(e,t,n)},qs=G([At],e=>e==null?void 0:e.dataKey),EV=G([b_,VA,At],p_),E_=(e,t,n,r)=>{var i={},a=t.reduce((l,u)=>{if(u.stackId==null)return l;var c=l[u.stackId];return c==null&&(c=[]),c.push(u),l[u.stackId]=c,l},i);return Object.fromEntries(Object.entries(a).map(l=>{var[u,c]=l,f=r?[...c].reverse():c,d=f.map(Pd);return[u,{stackedData:t8(e,d,n),graphicalItems:f}]}))},Pf=G([EV,b_,bd,l_],E_),C_=(e,t,n,r)=>{var{dataStartIndex:i,dataEndIndex:a}=t;if(r==null&&n!=="zAxis"){var l=a8(e,i,a);if(!(l!=null&&l[0]===0&&l[1]===0))return l}},CV=G([gn],e=>e.allowDataOverflow),vx=e=>{var t;if(e==null||!("domain"in e))return Ov;if(e.domain!=null)return e.domain;if("ticks"in e&&e.ticks!=null){if(e.type==="number"){var n=ui(e.ticks);return[Math.min(...n),Math.max(...n)]}if(e.type==="category")return e.ticks.map(String)}return(t=e==null?void 0:e.domain)!==null&&t!==void 0?t:Ov},O_=G([gn],vx),N_=G([O_,CV],GA),OV=G([Pf,mi,Ft,N_],C_,{memoizeOptions:{resultEqualityCheck:Cd}}),yx=e=>e.errorBars,NV=(e,t,n)=>e.flatMap(r=>t[r.id]).filter(Boolean).filter(r=>P_(n,r)),Ef=function(){for(var t=arguments.length,n=new Array(t),r=0;r{var a,l;if(n.length>0&&e.forEach(u=>{n.forEach(c=>{var f,d,p=(f=r[c.id])===null||f===void 0?void 0:f.filter(P=>P_(i,P)),g=St(u,(d=t.dataKey)!==null&&d!==void 0?d:c.dataKey),y=PV(u,g,p);if(y.length>=2){var x=Math.min(...y),S=Math.max(...y);(a==null||xl)&&(l=S)}var w=cP(g);w!=null&&(a=a==null?w[0]:Math.min(a,w[0]),l=l==null?w[1]:Math.max(l,w[1]))})}),(t==null?void 0:t.dataKey)!=null&&e.forEach(u=>{var c=cP(St(u,t.dataKey));c!=null&&(a=a==null?c[0]:Math.min(a,c[0]),l=l==null?c[1]:Math.max(l,c[1]))}),Me(a)&&Me(l))return[a,l]},AV=G([gx,gn,SV,yx,Ft],A_,{memoizeOptions:{resultEqualityCheck:Cd}});function _V(e){var{value:t}=e;if(Dr(t)||t instanceof Date)return t}var IV=(e,t,n)=>{var r=e.map(_V).filter(i=>i!=null);return n&&(t.dataKey==null||t.allowDuplicatedCategory&&qO(r))?fA(0,e.length):t.allowDuplicatedCategory?r:Array.from(new Set(r))},__=e=>e.referenceElements.dots,Ko=(e,t,n)=>e.filter(r=>r.ifOverflow==="extendDomain").filter(r=>t==="xAxis"?r.xAxisId===n:r.yAxisId===n),TV=G([__,Ft,jd],Ko),I_=e=>e.referenceElements.areas,MV=G([I_,Ft,jd],Ko),T_=e=>e.referenceElements.lines,DV=G([T_,Ft,jd],Ko),M_=(e,t)=>{if(e!=null){var n=ui(e.map(r=>t==="xAxis"?r.x:r.y));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},LV=G(TV,Ft,M_),D_=(e,t)=>{if(e!=null){var n=ui(e.flatMap(r=>[t==="xAxis"?r.x1:r.y1,t==="xAxis"?r.x2:r.y2]));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},RV=G([MV,Ft],D_);function zV(e){var t;if(e.x!=null)return ui([e.x]);var n=(t=e.segment)===null||t===void 0?void 0:t.map(r=>r.x);return n==null||n.length===0?[]:ui(n)}function $V(e){var t;if(e.y!=null)return ui([e.y]);var n=(t=e.segment)===null||t===void 0?void 0:t.map(r=>r.y);return n==null||n.length===0?[]:ui(n)}var L_=(e,t)=>{if(e!=null){var n=e.flatMap(r=>t==="xAxis"?zV(r):$V(r));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},FV=G([DV,Ft],L_),BV=G(LV,FV,RV,(e,t,n)=>Ef(e,n,t)),R_=(e,t,n,r,i,a,l,u)=>{if(n!=null)return n;var c=l==="vertical"&&u==="xAxis"||l==="horizontal"&&u==="yAxis",f=c?Ef(r,a,i):Ef(a,i);return ZH(t,f,e.allowDataOverflow)},UV=G([gn,O_,N_,OV,AV,BV,He,Ft],R_,{memoizeOptions:{resultEqualityCheck:Cd}}),WV=[0,1],z_=(e,t,n,r,i,a,l)=>{if(!((e==null||n==null||n.length===0)&&l===void 0)){var{dataKey:u,type:c}=e,f=$r(t,a);if(f&&u==null){var d;return fA(0,(d=n==null?void 0:n.length)!==null&&d!==void 0?d:0)}return c==="category"?IV(r,e,f):i==="expand"?WV:l}},xx=G([gn,He,gx,Ad,bd,Ft,UV],z_);function qV(e){return e in es}var $_=(e,t,n)=>{if(e!=null){var{scale:r,type:i}=e;if(r==="auto")return i==="category"&&n&&(n.indexOf("LineChart")>=0||n.indexOf("AreaChart")>=0||n.indexOf("ComposedChart")>=0&&!t)?"point":i==="category"?"band":"linear";if(typeof r=="string"){var a="scale".concat(_s(r));return qV(a)?a:"point"}}},Go=G([gn,v_,ux],$_);function bx(e,t,n,r){if(!(n==null||r==null))return typeof e.scale=="function"?sP(e.scale,n,r):sP(t,n,r)}var F_=(e,t,n)=>{var r=vx(t);if(!(n!=="auto"&&n!=="linear")){if(t!=null&&t.tickCount&&Array.isArray(r)&&(r[0]==="auto"||r[1]==="auto")&&si(e))return rV(e,t.tickCount,t.allowDecimals);if(t!=null&&t.tickCount&&t.type==="number"&&si(e))return iV(e,t.tickCount,t.allowDecimals)}},wx=G([xx,Us,Go],F_),B_=(e,t,n,r)=>{if(r!=="angleAxis"&&(e==null?void 0:e.type)==="number"&&si(t)&&Array.isArray(n)&&n.length>0){var i,a,l=t[0],u=(i=n[0])!==null&&i!==void 0?i:0,c=t[1],f=(a=n[n.length-1])!==null&&a!==void 0?a:0;return[Math.min(l,u),Math.max(c,f)]}return t},HV=G([gn,xx,wx,Ft],B_),VV=G(Ad,gn,(e,t)=>{if(!(!t||t.type!=="number")){var n=1/0,r=Array.from(ui(e.map(p=>p.value))).sort((p,g)=>p-g),i=r[0],a=r[r.length-1];if(i==null||a==null)return 1/0;var l=a-i;if(l===0)return 1/0;for(var u=0;ui,(e,t,n,r,i)=>{if(!Me(e))return 0;var a=t==="vertical"?r.height:r.width;if(i==="gap")return e*a/2;if(i==="no-gap"){var l=vr(n,e*a),u=e*a/2;return u-l-(u-l)/a*l}return 0}),KV=(e,t,n)=>{var r=gi(e,t);return r==null||typeof r.padding!="string"?0:U_(e,"xAxis",t,n,r.padding)},GV=(e,t,n)=>{var r=vi(e,t);return r==null||typeof r.padding!="string"?0:U_(e,"yAxis",t,n,r.padding)},YV=G(gi,KV,(e,t)=>{var n,r;if(e==null)return{left:0,right:0};var{padding:i}=e;return typeof i=="string"?{left:t,right:t}:{left:((n=i.left)!==null&&n!==void 0?n:0)+t,right:((r=i.right)!==null&&r!==void 0?r:0)+t}}),XV=G(vi,GV,(e,t)=>{var n,r;if(e==null)return{top:0,bottom:0};var{padding:i}=e;return typeof i=="string"?{top:t,bottom:t}:{top:((n=i.top)!==null&&n!==void 0?n:0)+t,bottom:((r=i.bottom)!==null&&r!==void 0?r:0)+t}}),QV=G([zt,YV,ld,od,(e,t,n)=>n],(e,t,n,r,i)=>{var{padding:a}=r;return i?[a.left,n.width-a.right]:[e.left+t.left,e.left+e.width-t.right]}),ZV=G([zt,He,XV,ld,od,(e,t,n)=>n],(e,t,n,r,i,a)=>{var{padding:l}=i;return a?[r.height-l.bottom,l.top]:t==="horizontal"?[e.top+e.height-n.bottom,e.top+n.top]:[e.top+n.top,e.top+e.height-n.bottom]}),Hs=(e,t,n,r)=>{var i;switch(t){case"xAxis":return QV(e,n,r);case"yAxis":return ZV(e,n,r);case"zAxis":return(i=mx(e,n))===null||i===void 0?void 0:i.range;case"angleAxis":return f_(e);case"radiusAxis":return d_(e,n);default:return}},W_=G([gn,Hs],wd),JV=G([Go,HV],gV),_d=G([gn,Go,JV,W_],bx);G([Ws,yx,Ft],NV);function q_(e,t){return e.idt.id?1:0}var Id=(e,t)=>t,Td=(e,t,n)=>n,eK=G(id,Id,Td,(e,t,n)=>e.filter(r=>r.orientation===t).filter(r=>r.mirror===n).sort(q_)),tK=G(ad,Id,Td,(e,t,n)=>e.filter(r=>r.orientation===t).filter(r=>r.mirror===n).sort(q_)),H_=(e,t)=>({width:e.width,height:t.height}),nK=(e,t)=>{var n=typeof t.width=="number"?t.width:Ms;return{width:n,height:e.height}},V_=G(zt,gi,H_),rK=(e,t,n)=>{switch(t){case"top":return e.top;case"bottom":return n-e.bottom;default:return 0}},iK=(e,t,n)=>{switch(t){case"left":return e.left;case"right":return n-e.right;default:return 0}},aK=G(hi,zt,eK,Id,Td,(e,t,n,r,i)=>{var a={},l;return n.forEach(u=>{var c=H_(t,u);l==null&&(l=rK(t,r,e));var f=r==="top"&&!i||r==="bottom"&&i;a[u.id]=l-Number(f)*c.height,l+=(f?-1:1)*c.height}),a}),oK=G(di,zt,tK,Id,Td,(e,t,n,r,i)=>{var a={},l;return n.forEach(u=>{var c=nK(t,u);l==null&&(l=iK(t,r,e));var f=r==="left"&&!i||r==="right"&&i;a[u.id]=l-Number(f)*c.width,l+=(f?-1:1)*c.width}),a}),lK=(e,t)=>{var n=gi(e,t);if(n!=null)return aK(e,n.orientation,n.mirror)},sK=G([zt,gi,lK,(e,t)=>t],(e,t,n,r)=>{if(t!=null){var i=n==null?void 0:n[r];return i==null?{x:e.left,y:0}:{x:e.left,y:i}}}),uK=(e,t)=>{var n=vi(e,t);if(n!=null)return oK(e,n.orientation,n.mirror)},cK=G([zt,vi,uK,(e,t)=>t],(e,t,n,r)=>{if(t!=null){var i=n==null?void 0:n[r];return i==null?{x:0,y:e.top}:{x:i,y:e.top}}}),K_=G(zt,vi,(e,t)=>{var n=typeof t.width=="number"?t.width:Ms;return{width:n,height:e.height}}),fP=(e,t,n)=>{switch(t){case"xAxis":return V_(e,n).width;case"yAxis":return K_(e,n).height;default:return}},G_=(e,t,n,r)=>{if(n!=null){var{allowDuplicatedCategory:i,type:a,dataKey:l}=n,u=$r(e,r),c=t.map(f=>f.value);if(l&&u&&a==="category"&&i&&qO(c))return c}},kx=G([He,Ad,gn,Ft],G_),Y_=(e,t,n,r)=>{if(!(n==null||n.dataKey==null)){var{type:i,scale:a}=n,l=$r(e,r);if(l&&(i==="number"||a!=="auto"))return t.map(u=>u.value)}},Sx=G([He,Ad,Us,Ft],Y_),dP=G([He,wV,Go,_d,kx,Sx,Hs,wx,Ft],(e,t,n,r,i,a,l,u,c)=>{if(t!=null){var f=$r(e,c);return{angle:t.angle,interval:t.interval,minTickGap:t.minTickGap,orientation:t.orientation,tick:t.tick,tickCount:t.tickCount,tickFormatter:t.tickFormatter,ticks:t.ticks,type:t.type,unit:t.unit,axisType:c,categoricalDomain:a,duplicateDomain:i,isCategorical:f,niceTicks:u,range:l,realScaleType:n,scale:r}}}),fK=(e,t,n,r,i,a,l,u,c)=>{if(!(t==null||r==null)){var f=$r(e,c),{type:d,ticks:p,tickCount:g}=t,y=n==="scaleBand"&&typeof r.bandwidth=="function"?r.bandwidth()/2:2,x=d==="category"&&r.bandwidth?r.bandwidth()/y:0;x=c==="angleAxis"&&a!=null&&a.length>=2?jn(a[0]-a[1])*2*x:x;var S=p||i;return S?S.map((w,P)=>{var C=l?l.indexOf(w):w,O=r.map(C);return Me(O)?{index:P,coordinate:O+x,value:w,offset:x}:null}).filter(Pn):f&&u?u.map((w,P)=>{var C=r.map(w);return Me(C)?{coordinate:C+x,value:w,index:P,offset:x}:null}).filter(Pn):r.ticks?r.ticks(g).map((w,P)=>{var C=r.map(w);return Me(C)?{coordinate:C+x,value:w,index:P,offset:x}:null}).filter(Pn):r.domain().map((w,P)=>{var C=r.map(w);return Me(C)?{coordinate:C+x,value:l?l[w]:w,index:P,offset:x}:null}).filter(Pn)}},X_=G([He,Us,Go,_d,wx,Hs,kx,Sx,Ft],fK),dK=(e,t,n,r,i,a,l)=>{if(!(t==null||n==null||r==null||r[0]===r[1])){var u=$r(e,l),{tickCount:c}=t,f=0;return f=l==="angleAxis"&&(r==null?void 0:r.length)>=2?jn(r[0]-r[1])*2*f:f,u&&a?a.map((d,p)=>{var g=n.map(d);return Me(g)?{coordinate:g+f,value:d,index:p,offset:f}:null}).filter(Pn):n.ticks?n.ticks(c).map((d,p)=>{var g=n.map(d);return Me(g)?{coordinate:g+f,value:d,index:p,offset:f}:null}).filter(Pn):n.domain().map((d,p)=>{var g=n.map(d);return Me(g)?{coordinate:g+f,value:i?i[d]:d,index:p,offset:f}:null}).filter(Pn)}},Qi=G([He,Us,_d,Hs,kx,Sx,Ft],dK),Zi=G(gn,_d,(e,t)=>{if(!(e==null||t==null))return jf(jf({},e),{},{scale:t})}),hK=G([gn,Go,xx,W_],bx);G((e,t,n)=>mx(e,n),hK,(e,t)=>{if(!(e==null||t==null))return jf(jf({},e),{},{scale:t})});var pK=G([He,id,ad],(e,t,n)=>{switch(e){case"horizontal":return t.some(r=>r.reversed)?"right-to-left":"left-to-right";case"vertical":return n.some(r=>r.reversed)?"bottom-to-top":"top-to-bottom";case"centric":case"radial":return"left-to-right";default:return}}),Q_=e=>e.options.defaultTooltipEventType,Z_=e=>e.options.validateTooltipEventTypes;function J_(e,t,n){if(e==null)return t;var r=e?"axis":"item";return n==null?t:n.includes(r)?r:t}function jx(e,t){var n=Q_(e),r=Z_(e);return J_(t,n,r)}function mK(e){return Pe(t=>jx(t,e))}var eI=(e,t)=>{var n,r=Number(t);if(!(gr(r)||t==null))return r>=0?e==null||(n=e[r])===null||n===void 0?void 0:n.value:void 0},gK=e=>e.tooltip.settings,Hi={active:!1,index:null,dataKey:void 0,graphicalItemId:void 0,coordinate:void 0},vK={itemInteraction:{click:Hi,hover:Hi},axisInteraction:{click:Hi,hover:Hi},keyboardInteraction:Hi,syncInteraction:{active:!1,index:null,dataKey:void 0,label:void 0,coordinate:void 0,sourceViewBox:void 0,graphicalItemId:void 0},tooltipItemPayloads:[],settings:{shared:void 0,trigger:"hover",axisId:0,active:!1,defaultIndex:void 0}},tI=On({name:"tooltip",initialState:vK,reducers:{addTooltipEntrySettings:{reducer(e,t){e.tooltipItemPayloads.push(t.payload)},prepare:at()},replaceTooltipEntrySettings:{reducer(e,t){var{prev:n,next:r}=t.payload,i=mr(e).tooltipItemPayloads.indexOf(n);i>-1&&(e.tooltipItemPayloads[i]=r)},prepare:at()},removeTooltipEntrySettings:{reducer(e,t){var n=mr(e).tooltipItemPayloads.indexOf(t.payload);n>-1&&e.tooltipItemPayloads.splice(n,1)},prepare:at()},setTooltipSettingsState(e,t){e.settings=t.payload},setActiveMouseOverItemIndex(e,t){e.syncInteraction.active=!1,e.keyboardInteraction.active=!1,e.itemInteraction.hover.active=!0,e.itemInteraction.hover.index=t.payload.activeIndex,e.itemInteraction.hover.dataKey=t.payload.activeDataKey,e.itemInteraction.hover.graphicalItemId=t.payload.activeGraphicalItemId,e.itemInteraction.hover.coordinate=t.payload.activeCoordinate},mouseLeaveChart(e){e.itemInteraction.hover.active=!1,e.axisInteraction.hover.active=!1},mouseLeaveItem(e){e.itemInteraction.hover.active=!1},setActiveClickItemIndex(e,t){e.syncInteraction.active=!1,e.itemInteraction.click.active=!0,e.keyboardInteraction.active=!1,e.itemInteraction.click.index=t.payload.activeIndex,e.itemInteraction.click.dataKey=t.payload.activeDataKey,e.itemInteraction.click.graphicalItemId=t.payload.activeGraphicalItemId,e.itemInteraction.click.coordinate=t.payload.activeCoordinate},setMouseOverAxisIndex(e,t){e.syncInteraction.active=!1,e.axisInteraction.hover.active=!0,e.keyboardInteraction.active=!1,e.axisInteraction.hover.index=t.payload.activeIndex,e.axisInteraction.hover.dataKey=t.payload.activeDataKey,e.axisInteraction.hover.coordinate=t.payload.activeCoordinate},setMouseClickAxisIndex(e,t){e.syncInteraction.active=!1,e.keyboardInteraction.active=!1,e.axisInteraction.click.active=!0,e.axisInteraction.click.index=t.payload.activeIndex,e.axisInteraction.click.dataKey=t.payload.activeDataKey,e.axisInteraction.click.coordinate=t.payload.activeCoordinate},setSyncInteraction(e,t){e.syncInteraction=t.payload},setKeyboardInteraction(e,t){e.keyboardInteraction.active=t.payload.active,e.keyboardInteraction.index=t.payload.activeIndex,e.keyboardInteraction.coordinate=t.payload.activeCoordinate}}}),{addTooltipEntrySettings:yK,replaceTooltipEntrySettings:xK,removeTooltipEntrySettings:bK,setTooltipSettingsState:wK,setActiveMouseOverItemIndex:nI,mouseLeaveItem:kK,mouseLeaveChart:rI,setActiveClickItemIndex:SK,setMouseOverAxisIndex:iI,setMouseClickAxisIndex:jK,setSyncInteraction:Nv,setKeyboardInteraction:Av}=tI.actions,PK=tI.reducer;function hP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Sc(e){for(var t=1;t{if(t==null)return Hi;var i=NK(e,t,n);if(i==null)return Hi;if(i.active)return i;if(e.keyboardInteraction.active)return e.keyboardInteraction;if(e.syncInteraction.active&&e.syncInteraction.index!=null)return e.syncInteraction;var a=e.settings.active===!0;if(AK(i)){if(a)return Sc(Sc({},i),{},{active:!0})}else if(r!=null)return{active:!0,coordinate:void 0,dataKey:void 0,index:r,graphicalItemId:void 0};return Sc(Sc({},Hi),{},{coordinate:i.coordinate})};function _K(e){if(typeof e=="number")return Number.isFinite(e)?e:void 0;if(e instanceof Date){var t=e.valueOf();return Number.isFinite(t)?t:void 0}var n=Number(e);return Number.isFinite(n)?n:void 0}function IK(e,t){var n=_K(e),r=t[0],i=t[1];if(n===void 0)return!1;var a=Math.min(r,i),l=Math.max(r,i);return n>=a&&n<=l}function TK(e,t,n){if(n==null||t==null)return!0;var r=St(e,t);return r==null||!si(n)?!0:IK(r,n)}var Px=(e,t,n,r)=>{var i=e==null?void 0:e.index;if(i==null)return null;var a=Number(i);if(!Me(a))return i;var l=0,u=1/0;t.length>0&&(u=t.length-1);var c=Math.max(l,Math.min(a,u)),f=t[c];return f==null||TK(f,n,r)?String(c):null},oI=(e,t,n,r,i,a,l)=>{if(a!=null){var u=l[0],c=u==null?void 0:u.getPosition(a);if(c!=null)return c;var f=i==null?void 0:i[Number(a)];if(f)switch(n){case"horizontal":return{x:f.coordinate,y:(r.top+t)/2};default:return{x:(r.left+e)/2,y:f.coordinate}}}},lI=(e,t,n,r)=>{if(t==="axis")return e.tooltipItemPayloads;if(e.tooltipItemPayloads.length===0)return[];var i;if(n==="hover"?i=e.itemInteraction.hover.graphicalItemId:i=e.itemInteraction.click.graphicalItemId,i==null&&r!=null){var a=e.tooltipItemPayloads[0];return a!=null?[a]:[]}return e.tooltipItemPayloads.filter(l=>{var u;return((u=l.settings)===null||u===void 0?void 0:u.graphicalItemId)===i})},sI=e=>e.options.tooltipPayloadSearcher,Yo=e=>e.tooltip;function pP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function mP(e){for(var t=1;t{if(!(t==null||a==null)){var{chartData:u,computedData:c,dataStartIndex:f,dataEndIndex:d}=n,p=[];return e.reduce((g,y)=>{var x,{dataDefinedOnItem:S,settings:w}=y,P=RK(S,u),C=Array.isArray(P)?LN(P,f,d):P,O=(x=w==null?void 0:w.dataKey)!==null&&x!==void 0?x:r,A=w==null?void 0:w.nameKey,I;if(r&&Array.isArray(C)&&!Array.isArray(C[0])&&l==="axis"?I=HO(C,r,i):I=a(C,t,c,A),Array.isArray(I))I.forEach(L=>{var F=mP(mP({},w),{},{name:L.name,unit:L.unit,color:void 0,fill:void 0});g.push(mS({tooltipEntrySettings:F,dataKey:L.dataKey,payload:L.payload,value:St(L.payload,L.dataKey),name:L.name}))});else{var E;g.push(mS({tooltipEntrySettings:w,dataKey:O,payload:I,value:St(I,O),name:(E=St(I,A))!==null&&E!==void 0?E:w==null?void 0:w.name}))}return g},p)}},Ex=G([At,v_,ux],$_),zK=G([e=>e.graphicalItems.cartesianItems,e=>e.graphicalItems.polarItems],(e,t)=>[...e,...t]),$K=G([Bt,Vo],y_),Xo=G([zK,At,$K],x_,{memoizeOptions:{resultEqualityCheck:Od}}),FK=G([Xo],e=>e.filter(Ed)),BK=G([Xo],k_,{memoizeOptions:{resultEqualityCheck:Od}}),Qo=G([BK,mi],S_),UK=G([FK,mi,At],p_),Cx=G([Qo,At,Xo],j_),cI=G([At],vx),WK=G([At],e=>e.allowDataOverflow),fI=G([cI,WK],GA),qK=G([Xo],e=>e.filter(Ed)),HK=G([UK,qK,bd,l_],E_),VK=G([HK,mi,Bt,fI],C_),KK=G([Xo],w_),GK=G([Qo,At,KK,yx,Bt],A_,{memoizeOptions:{resultEqualityCheck:Cd}}),YK=G([__,Bt,Vo],Ko),XK=G([YK,Bt],M_),QK=G([I_,Bt,Vo],Ko),ZK=G([QK,Bt],D_),JK=G([T_,Bt,Vo],Ko),e7=G([JK,Bt],L_),t7=G([XK,e7,ZK],Ef),n7=G([At,cI,fI,VK,GK,t7,He,Bt],R_),Vs=G([At,He,Qo,Cx,bd,Bt,n7],z_),r7=G([Vs,At,Ex],F_),i7=G([At,Vs,r7,Bt],B_),dI=e=>{var t=Bt(e),n=Vo(e),r=!1;return Hs(e,t,n,r)},hI=G([At,dI],wd),pI=G([At,Ex,i7,hI],bx),a7=G([He,Cx,At,Bt],G_),o7=G([He,Cx,At,Bt],Y_),l7=(e,t,n,r,i,a,l,u)=>{if(t){var{type:c}=t,f=$r(e,u);if(r){var d=n==="scaleBand"&&r.bandwidth?r.bandwidth()/2:2,p=c==="category"&&r.bandwidth?r.bandwidth()/d:0;return p=u==="angleAxis"&&i!=null&&(i==null?void 0:i.length)>=2?jn(i[0]-i[1])*2*p:p,f&&l?l.map((g,y)=>{var x=r.map(g);return Me(x)?{coordinate:x+p,value:g,index:y,offset:p}:null}).filter(Pn):r.domain().map((g,y)=>{var x=r.map(g);return Me(x)?{coordinate:x+p,value:a?a[g]:g,index:y,offset:p}:null}).filter(Pn)}}},yi=G([He,At,Ex,pI,dI,a7,o7,Bt],l7),Ox=G([Q_,Z_,gK],(e,t,n)=>J_(n.shared,e,t)),mI=e=>e.tooltip.settings.trigger,Nx=e=>e.tooltip.settings.defaultIndex,Ks=G([Yo,Ox,mI,Nx],aI),La=G([Ks,Qo,qs,Vs],Px),gI=G([yi,La],eI),vI=G([Ks],e=>{if(e)return e.dataKey});G([Ks],e=>{if(e)return e.graphicalItemId});var yI=G([Yo,Ox,mI,Nx],lI),s7=G([di,hi,He,zt,yi,Nx,yI],oI),u7=G([Ks,s7],(e,t)=>e!=null&&e.coordinate?e.coordinate:t),c7=G([Ks],e=>{var t;return(t=e==null?void 0:e.active)!==null&&t!==void 0?t:!1}),f7=G([yI,La,mi,qs,gI,sI,Ox],uI),d7=G([f7],e=>{if(e!=null){var t=e.map(n=>n.payload).filter(n=>n!=null);return Array.from(new Set(t))}});function gP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function vP(e){for(var t=1;tPe(At),v7=()=>{var e=g7(),t=Pe(yi),n=Pe(pI);return Do(!e||!n?void 0:vP(vP({},e),{},{scale:n}),t)};function yP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function xo(e){for(var t=1;t{var i=t.find(a=>a&&a.index===n);if(i){if(e==="horizontal")return{x:i.coordinate,y:r.chartY};if(e==="vertical")return{x:r.chartX,y:i.coordinate}}return{x:0,y:0}},k7=(e,t,n,r)=>{var i=t.find(f=>f&&f.index===n);if(i){if(e==="centric"){var a=i.coordinate,{radius:l}=r;return xo(xo(xo({},r),Xt(r.cx,r.cy,l,a)),{},{angle:a,radius:l})}var u=i.coordinate,{angle:c}=r;return xo(xo(xo({},r),Xt(r.cx,r.cy,u,c)),{},{angle:c,radius:u})}return{angle:0,clockWise:!1,cx:0,cy:0,endAngle:0,innerRadius:0,outerRadius:0,radius:0,startAngle:0,x:0,y:0}};function S7(e,t){var{chartX:n,chartY:r}=e;return n>=t.left&&n<=t.left+t.width&&r>=t.top&&r<=t.top+t.height}var xI=(e,t,n,r,i)=>{var a,l=(a=t==null?void 0:t.length)!==null&&a!==void 0?a:0;if(l<=1||e==null)return 0;if(r==="angleAxis"&&i!=null&&Math.abs(Math.abs(i[1]-i[0])-360)<=1e-6)for(var u=0;u0?(c=n[u-1])===null||c===void 0?void 0:c.coordinate:(f=n[l-1])===null||f===void 0?void 0:f.coordinate,x=(d=n[u])===null||d===void 0?void 0:d.coordinate,S=u>=l-1?(p=n[0])===null||p===void 0?void 0:p.coordinate:(g=n[u+1])===null||g===void 0?void 0:g.coordinate,w=void 0;if(!(y==null||x==null||S==null))if(jn(x-y)!==jn(S-x)){var P=[];if(jn(S-x)===jn(i[1]-i[0])){w=S;var C=x+i[1]-i[0];P[0]=Math.min(C,(C+y)/2),P[1]=Math.max(C,(C+y)/2)}else{w=y;var O=S+i[1]-i[0];P[0]=Math.min(x,(O+x)/2),P[1]=Math.max(x,(O+x)/2)}var A=[Math.min(x,(w+x)/2),Math.max(x,(w+x)/2)];if(e>A[0]&&e<=A[1]||e>=P[0]&&e<=P[1]){var I;return(I=n[u])===null||I===void 0?void 0:I.index}}else{var E=Math.min(y,S),L=Math.max(y,S);if(e>(E+x)/2&&e<=(L+x)/2){var F;return(F=n[u])===null||F===void 0?void 0:F.index}}}else if(t)for(var H=0;H(R.coordinate+M.coordinate)/2||H>0&&H(R.coordinate+M.coordinate)/2&&e<=(R.coordinate+W.coordinate)/2)return R.index}}return-1},bI=()=>Pe(ux),Ax=(e,t)=>t,wI=(e,t,n)=>n,_x=(e,t,n,r)=>r,j7=G(yi,e=>Kf(e,t=>t.coordinate)),Ix=G([Yo,Ax,wI,_x],aI),Tx=G([Ix,Qo,qs,Vs],Px),P7=(e,t,n)=>{if(t!=null){var r=Yo(e);return t==="axis"?n==="hover"?r.axisInteraction.hover.dataKey:r.axisInteraction.click.dataKey:n==="hover"?r.itemInteraction.hover.dataKey:r.itemInteraction.click.dataKey}},kI=G([Yo,Ax,wI,_x],lI),Cf=G([di,hi,He,zt,yi,_x,kI],oI),E7=G([Ix,Cf],(e,t)=>{var n;return(n=e.coordinate)!==null&&n!==void 0?n:t}),SI=G([yi,Tx],eI),C7=G([kI,Tx,mi,qs,SI,sI,Ax],uI),O7=G([Ix,Tx],(e,t)=>({isActive:e.active&&t!=null,activeIndex:t})),N7=(e,t,n,r,i,a,l)=>{if(!(!e||!n||!r||!i)&&S7(e,l)){var u=o8(e,t),c=xI(u,a,i,n,r),f=w7(t,i,c,e);return{activeIndex:String(c),activeCoordinate:f}}},A7=(e,t,n,r,i,a,l)=>{if(!(!e||!r||!i||!a||!n)){var u=p9(e,n);if(u){var c=l8(u,t),f=xI(c,l,a,r,i),d=k7(t,a,f,u);return{activeIndex:String(f),activeCoordinate:d}}}},_7=(e,t,n,r,i,a,l,u)=>{if(!(!e||!t||!r||!i||!a))return t==="horizontal"||t==="vertical"?N7(e,t,r,i,a,l,u):A7(e,t,n,r,i,a,l)},I7=G(e=>e.zIndex.zIndexMap,(e,t)=>t,(e,t,n)=>n,(e,t,n)=>{if(t!=null){var r=e[t];if(r!=null)return n?r.panoramaElement:r.element}}),T7=G(e=>e.zIndex.zIndexMap,e=>{var t=Object.keys(e).map(r=>parseInt(r,10)).concat(Object.values(Rt)),n=Array.from(new Set(t));return n.sort((r,i)=>r-i)},{memoizeOptions:{resultEqualityCheck:pV}});function xP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function bP(e){for(var t=1;tbP(bP({},e),{},{[t]:{element:void 0,panoramaElement:void 0,consumers:0}}),R7)},$7=new Set(Object.values(Rt));function F7(e){return $7.has(e)}var jI=On({name:"zIndex",initialState:z7,reducers:{registerZIndexPortal:{reducer:(e,t)=>{var{zIndex:n}=t.payload;e.zIndexMap[n]?e.zIndexMap[n].consumers+=1:e.zIndexMap[n]={consumers:1,element:void 0,panoramaElement:void 0}},prepare:at()},unregisterZIndexPortal:{reducer:(e,t)=>{var{zIndex:n}=t.payload;e.zIndexMap[n]&&(e.zIndexMap[n].consumers-=1,e.zIndexMap[n].consumers<=0&&!F7(n)&&delete e.zIndexMap[n])},prepare:at()},registerZIndexPortalElement:{reducer:(e,t)=>{var{zIndex:n,element:r,isPanorama:i}=t.payload;e.zIndexMap[n]?i?e.zIndexMap[n].panoramaElement=r:e.zIndexMap[n].element=r:e.zIndexMap[n]={consumers:0,element:i?void 0:r,panoramaElement:i?r:void 0}},prepare:at()},unregisterZIndexPortalElement:{reducer:(e,t)=>{var{zIndex:n}=t.payload;e.zIndexMap[n]&&(t.payload.isPanorama?e.zIndexMap[n].panoramaElement=void 0:e.zIndexMap[n].element=void 0)},prepare:at()}}}),{registerZIndexPortal:B7,unregisterZIndexPortal:U7,registerZIndexPortalElement:W7,unregisterZIndexPortalElement:q7}=jI.actions,H7=jI.reducer;function rr(e){var{zIndex:t,children:n}=e,r=$8(),i=r&&t!==void 0&&t!==0,a=on(),l=yt();k.useLayoutEffect(()=>i?(l(B7({zIndex:t})),()=>{l(U7({zIndex:t}))}):Fa,[l,t,i]);var u=Pe(c=>I7(c,t,a));return i?u?EO.createPortal(n,u):null:n}function _v(){return _v=Object.assign?Object.assign.bind():function(e){for(var t=1;tk.useContext(PI),dg={exports:{}},kP;function J7(){return kP||(kP=1,(function(e){var t=Object.prototype.hasOwnProperty,n="~";function r(){}Object.create&&(r.prototype=Object.create(null),new r().__proto__||(n=!1));function i(c,f,d){this.fn=c,this.context=f,this.once=d||!1}function a(c,f,d,p,g){if(typeof d!="function")throw new TypeError("The listener must be a function");var y=new i(d,p||c,g),x=n?n+f:f;return c._events[x]?c._events[x].fn?c._events[x]=[c._events[x],y]:c._events[x].push(y):(c._events[x]=y,c._eventsCount++),c}function l(c,f){--c._eventsCount===0?c._events=new r:delete c._events[f]}function u(){this._events=new r,this._eventsCount=0}u.prototype.eventNames=function(){var f=[],d,p;if(this._eventsCount===0)return f;for(p in d=this._events)t.call(d,p)&&f.push(n?p.slice(1):p);return Object.getOwnPropertySymbols?f.concat(Object.getOwnPropertySymbols(d)):f},u.prototype.listeners=function(f){var d=n?n+f:f,p=this._events[d];if(!p)return[];if(p.fn)return[p.fn];for(var g=0,y=p.length,x=new Array(y);g{if(t&&Array.isArray(e)){var n=Number.parseInt(t,10);if(!gr(n))return e[n]}},nG={chartName:"",tooltipPayloadSearcher:()=>{},eventEmitter:void 0,defaultTooltipEventType:"axis"},CI=On({name:"options",initialState:nG,reducers:{createEventEmitter:e=>{e.eventEmitter==null&&(e.eventEmitter=Symbol("rechartsEventEmitter"))}}}),rG=CI.reducer,{createEventEmitter:iG}=CI.actions;function aG(e){return e.tooltip.syncInteraction}var oG={chartData:void 0,computedData:void 0,dataStartIndex:0,dataEndIndex:0},OI=On({name:"chartData",initialState:oG,reducers:{setChartData(e,t){if(e.chartData=t.payload,t.payload==null){e.dataStartIndex=0,e.dataEndIndex=0;return}t.payload.length>0&&e.dataEndIndex!==t.payload.length-1&&(e.dataEndIndex=t.payload.length-1)},setComputedData(e,t){e.computedData=t.payload},setDataStartEndIndexes(e,t){var{startIndex:n,endIndex:r}=t.payload;n!=null&&(e.dataStartIndex=n),r!=null&&(e.dataEndIndex=r)}}}),{setChartData:jP,setDataStartEndIndexes:lG,setComputedData:Dte}=OI.actions,sG=OI.reducer,uG=["x","y"];function PP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function bo(e){for(var t=1;tc.rootProps.className);k.useEffect(()=>{if(e==null)return Fa;var c=(f,d,p)=>{if(t!==p&&e===f){if(r==="index"){var g;if(l&&d!==null&&d!==void 0&&(g=d.payload)!==null&&g!==void 0&&g.coordinate&&d.payload.sourceViewBox){var y=d.payload.coordinate,{x,y:S}=y,w=hG(y,uG),{x:P,y:C,width:O,height:A}=d.payload.sourceViewBox,I=bo(bo({},w),{},{x:l.x+(O?(x-P)/O:0)*l.width,y:l.y+(A?(S-C)/A:0)*l.height});n(bo(bo({},d),{},{payload:bo(bo({},d.payload),{},{coordinate:I})}))}else n(d);return}if(i!=null){var E;if(typeof r=="function"){var L={activeTooltipIndex:d.payload.index==null?void 0:Number(d.payload.index),isTooltipActive:d.payload.active,activeIndex:d.payload.index==null?void 0:Number(d.payload.index),activeLabel:d.payload.label,activeDataKey:d.payload.dataKey,activeCoordinate:d.payload.coordinate},F=r(i,L);E=i[F]}else r==="value"&&(E=i.find(he=>String(he.value)===d.payload.label));var{coordinate:H}=d.payload;if(E==null||d.payload.active===!1||H==null||l==null){n(Nv({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:void 0,graphicalItemId:void 0}));return}var{x:R,y:W}=H,M=Math.min(R,l.x+l.width),Z=Math.min(W,l.y+l.height),Y={x:a==="horizontal"?E.coordinate:M,y:a==="horizontal"?Z:E.coordinate},Q=Nv({active:d.payload.active,coordinate:Y,dataKey:d.payload.dataKey,index:String(E.index),label:d.payload.label,sourceViewBox:d.payload.sourceViewBox,graphicalItemId:d.payload.graphicalItemId});n(Q)}}};return js.on(Iv,c),()=>{js.off(Iv,c)}},[u,n,t,e,r,i,a,l])}function gG(){var e=Pe(cx),t=Pe(fx),n=yt();k.useEffect(()=>{if(e==null)return Fa;var r=(i,a,l)=>{t!==l&&e===i&&n(lG(a))};return js.on(SP,r),()=>{js.off(SP,r)}},[n,t,e])}function vG(){var e=yt();k.useEffect(()=>{e(iG())},[e]),mG(),gG()}function yG(e,t,n,r,i,a){var l=Pe(y=>P7(y,e,t)),u=Pe(fx),c=Pe(cx),f=Pe(s_),d=Pe(aG),p=d==null?void 0:d.active,g=sd();k.useEffect(()=>{if(!p&&c!=null&&u!=null){var y=Nv({active:a,coordinate:n,dataKey:l,index:i,label:typeof r=="number"?String(r):r,sourceViewBox:g,graphicalItemId:void 0});js.emit(Iv,c,y,u)}},[p,n,l,i,r,u,c,f,a,g])}function EP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function CP(e){for(var t=1;t{L(wK({shared:C,trigger:O,axisId:E,active:i,defaultIndex:F}))},[L,C,O,E,i,F]);var H=sd(),R=nA(),W=mK(C),{activeIndex:M,isActive:Z}=(t=Pe(Se=>O7(Se,W,O,F)))!==null&&t!==void 0?t:{},Y=Pe(Se=>C7(Se,W,O,F)),Q=Pe(Se=>SI(Se,W,O,F)),he=Pe(Se=>E7(Se,W,O,F)),de=Y,J=Z7(),ae=(n=i??Z)!==null&&n!==void 0?n:!1,[T,$]=V6([de,ae]),U=W==="axis"?Q:void 0;yG(W,O,he,U,M,ae);var _=I??J;if(_==null||H==null||W==null)return null;var te=de??OP;ae||(te=OP),f&&te.length&&(te=y6(te.filter(Se=>Se.value!=null&&(Se.hide!==!0||r.includeHidden)),g,kG));var fe=te.length>0,ce=k.createElement(hW,{allowEscapeViewBox:a,animationDuration:l,animationEasing:u,isAnimationActive:d,active:ae,coordinate:he,hasPayload:fe,offset:p,position:y,reverseDirection:x,useTranslate3d:S,viewBox:H,wrapperStyle:w,lastBoundingBox:T,innerRef:$,hasPortalFromProps:!!I},SG(c,CP(CP({},r),{},{payload:te,label:U,active:ae,activeIndex:M,coordinate:he,accessibilityLayer:R})));return k.createElement(k.Fragment,null,EO.createPortal(ce,_),ae&&k.createElement(Q7,{cursor:P,tooltipEventType:W,coordinate:he,payload:te,index:M}))}var AI=e=>null;AI.displayName="Cell";function PG(e,t,n){return(t=EG(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function EG(e){var t=CG(e,"string");return typeof t=="symbol"?t:t+""}function CG(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}class OG{constructor(t){PG(this,"cache",new Map),this.maxSize=t}get(t){var n=this.cache.get(t);return n!==void 0&&(this.cache.delete(t),this.cache.set(t,n)),n}set(t,n){if(this.cache.has(t))this.cache.delete(t);else if(this.cache.size>=this.maxSize){var r=this.cache.keys().next().value;r!=null&&this.cache.delete(r)}this.cache.set(t,n)}clear(){this.cache.clear()}size(){return this.cache.size}}function NP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function NG(e){for(var t=1;t{try{var n=document.getElementById(_P);n||(n=document.createElement("span"),n.setAttribute("id",_P),n.setAttribute("aria-hidden","true"),document.body.appendChild(n)),Object.assign(n.style,MG,t),n.textContent="".concat(e);var r=n.getBoundingClientRect();return{width:r.width,height:r.height}}catch{return{width:0,height:0}}},ls=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(t==null||Rs.isSsr)return{width:0,height:0};if(!_I.enableCache)return IP(t,n);var r=DG(t,n),i=AP.get(r);if(i)return i;var a=IP(t,n);return AP.set(r,a),a},II;function LG(e,t,n){return(t=RG(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function RG(e){var t=zG(e,"string");return typeof t=="symbol"?t:t+""}function zG(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var TP=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([*/])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,MP=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([+-])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,$G=/^px|cm|vh|vw|em|rem|%|mm|in|pt|pc|ex|ch|vmin|vmax|Q$/,FG=/(-?\d+(?:\.\d+)?)([a-zA-Z%]+)?/,BG={cm:96/2.54,mm:96/25.4,pt:96/72,pc:96/6,in:96,Q:96/(2.54*40),px:1},UG=["cm","mm","pt","pc","in","Q","px"];function WG(e){return UG.includes(e)}var jo="NaN";function qG(e,t){return e*BG[t]}class Gt{static parse(t){var n,[,r,i]=(n=FG.exec(t))!==null&&n!==void 0?n:[];return r==null?Gt.NaN:new Gt(parseFloat(r),i??"")}constructor(t,n){this.num=t,this.unit=n,this.num=t,this.unit=n,gr(t)&&(this.unit=""),n!==""&&!$G.test(n)&&(this.num=NaN,this.unit=""),WG(n)&&(this.num=qG(t,n),this.unit="px")}add(t){return this.unit!==t.unit?new Gt(NaN,""):new Gt(this.num+t.num,this.unit)}subtract(t){return this.unit!==t.unit?new Gt(NaN,""):new Gt(this.num-t.num,this.unit)}multiply(t){return this.unit!==""&&t.unit!==""&&this.unit!==t.unit?new Gt(NaN,""):new Gt(this.num*t.num,this.unit||t.unit)}divide(t){return this.unit!==""&&t.unit!==""&&this.unit!==t.unit?new Gt(NaN,""):new Gt(this.num/t.num,this.unit||t.unit)}toString(){return"".concat(this.num).concat(this.unit)}isNaN(){return gr(this.num)}}II=Gt;LG(Gt,"NaN",new II(NaN,""));function TI(e){if(e==null||e.includes(jo))return jo;for(var t=e;t.includes("*")||t.includes("/");){var n,[,r,i,a]=(n=TP.exec(t))!==null&&n!==void 0?n:[],l=Gt.parse(r??""),u=Gt.parse(a??""),c=i==="*"?l.multiply(u):l.divide(u);if(c.isNaN())return jo;t=t.replace(TP,c.toString())}for(;t.includes("+")||/.-\d+(?:\.\d+)?/.test(t);){var f,[,d,p,g]=(f=MP.exec(t))!==null&&f!==void 0?f:[],y=Gt.parse(d??""),x=Gt.parse(g??""),S=p==="+"?y.add(x):y.subtract(x);if(S.isNaN())return jo;t=t.replace(MP,S.toString())}return t}var DP=/\(([^()]*)\)/;function HG(e){for(var t=e,n;(n=DP.exec(t))!=null;){var[,r]=n;t=t.replace(DP,TI(r))}return t}function VG(e){var t=e.replace(/\s+/g,"");return t=HG(t),t=TI(t),t}function KG(e){try{return VG(e)}catch{return jo}}function hg(e){var t=KG(e.slice(5,-1));return t===jo?"":t}var GG=["x","y","lineHeight","capHeight","fill","scaleToFit","textAnchor","verticalAnchor"],YG=["dx","dy","angle","className","breakAll"];function Tv(){return Tv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{children:t,breakAll:n,style:r}=e;try{var i=[];mt(t)||(n?i=t.toString().split(""):i=t.toString().split(MI));var a=i.map(u=>({word:u,width:ls(u,r).width})),l=n?0:ls(" ",r).width;return{wordsWithComputedWidth:a,spaceWidth:l}}catch{return null}};function QG(e){return e==="start"||e==="middle"||e==="end"||e==="inherit"}var LI=(e,t,n,r)=>e.reduce((i,a)=>{var{word:l,width:u}=a,c=i[i.length-1];if(c&&u!=null&&(t==null||r||c.width+u+ne.reduce((t,n)=>t.width>n.width?t:n),ZG="…",RP=(e,t,n,r,i,a,l,u)=>{var c=e.slice(0,t),f=DI({breakAll:n,style:r,children:c+ZG});if(!f)return[!1,[]];var d=LI(f.wordsWithComputedWidth,a,l,u),p=d.length>i||RI(d).width>Number(a);return[p,d]},JG=(e,t,n,r,i)=>{var{maxLines:a,children:l,style:u,breakAll:c}=e,f=ge(a),d=String(l),p=LI(t,r,n,i);if(!f||i)return p;var g=p.length>a||RI(p).width>Number(r);if(!g)return p;for(var y=0,x=d.length-1,S=0,w;y<=x&&S<=d.length-1;){var P=Math.floor((y+x)/2),C=P-1,[O,A]=RP(d,C,c,u,a,r,n,i),[I]=RP(d,P,c,u,a,r,n,i);if(!O&&!I&&(y=P+1),O&&I&&(x=P-1),!O&&I){w=A;break}S++}return w||p},zP=e=>{var t=mt(e)?[]:e.toString().split(MI);return[{words:t,width:void 0}]},eY=e=>{var{width:t,scaleToFit:n,children:r,style:i,breakAll:a,maxLines:l}=e;if((t||n)&&!Rs.isSsr){var u,c,f=DI({breakAll:a,children:r,style:i});if(f){var{wordsWithComputedWidth:d,spaceWidth:p}=f;u=d,c=p}else return zP(r);return JG({breakAll:a,children:r,maxLines:l,style:i},u,c,t,!!n)}return zP(r)},zI="#808080",tY={angle:0,breakAll:!1,capHeight:"0.71em",fill:zI,lineHeight:"1em",scaleToFit:!1,textAnchor:"start",verticalAnchor:"end",x:0,y:0},Mx=k.forwardRef((e,t)=>{var n=mn(e,tY),{x:r,y:i,lineHeight:a,capHeight:l,fill:u,scaleToFit:c,textAnchor:f,verticalAnchor:d}=n,p=LP(n,GG),g=k.useMemo(()=>eY({breakAll:p.breakAll,children:p.children,maxLines:p.maxLines,scaleToFit:c,style:p.style,width:p.width}),[p.breakAll,p.children,p.maxLines,c,p.style,p.width]),{dx:y,dy:x,angle:S,className:w,breakAll:P}=p,C=LP(p,YG);if(!Dr(r)||!Dr(i)||g.length===0)return null;var O=Number(r)+(ge(y)?y:0),A=Number(i)+(ge(x)?x:0);if(!Me(O)||!Me(A))return null;var I;switch(d){case"start":I=hg("calc(".concat(l,")"));break;case"middle":I=hg("calc(".concat((g.length-1)/2," * -").concat(a," + (").concat(l," / 2))"));break;default:I=hg("calc(".concat(g.length-1," * -").concat(a,")"));break}var E=[],L=g[0];if(c&&L!=null){var F=L.width,{width:H}=p;E.push("scale(".concat(ge(H)&&ge(F)?H/F:1,")"))}return S&&E.push("rotate(".concat(S,", ").concat(O,", ").concat(A,")")),E.length&&(C.transform=E.join(" ")),k.createElement("text",Tv({},dn(C),{ref:t,x:O,y:A,className:Ge("recharts-text",w),textAnchor:f,fill:u.includes("url")?zI:u}),g.map((R,W)=>{var M=R.words.join(P?"":" ");return k.createElement("tspan",{x:O,dy:W===0?I:a,key:"".concat(M,"-").concat(W)},M)}))});Mx.displayName="Text";function $P(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Nr(e){for(var t=1;t{var{viewBox:t,position:n,offset:r=0,parentViewBox:i}=e,{x:a,y:l,height:u,upperWidth:c,lowerWidth:f}=My(t),d=a,p=a+(c-f)/2,g=(d+p)/2,y=(c+f)/2,x=d+c/2,S=u>=0?1:-1,w=S*r,P=S>0?"end":"start",C=S>0?"start":"end",O=c>=0?1:-1,A=O*r,I=O>0?"end":"start",E=O>0?"start":"end",L=i;if(n==="top"){var F={x:d+c/2,y:l-w,horizontalAnchor:"middle",verticalAnchor:P};return L&&(F.height=Math.max(l-L.y,0),F.width=c),F}if(n==="bottom"){var H={x:p+f/2,y:l+u+w,horizontalAnchor:"middle",verticalAnchor:C};return L&&(H.height=Math.max(L.y+L.height-(l+u),0),H.width=f),H}if(n==="left"){var R={x:g-A,y:l+u/2,horizontalAnchor:I,verticalAnchor:"middle"};return L&&(R.width=Math.max(R.x-L.x,0),R.height=u),R}if(n==="right"){var W={x:g+y+A,y:l+u/2,horizontalAnchor:E,verticalAnchor:"middle"};return L&&(W.width=Math.max(L.x+L.width-W.x,0),W.height=u),W}var M=L?{width:y,height:u}:{};return n==="insideLeft"?Nr({x:g+A,y:l+u/2,horizontalAnchor:E,verticalAnchor:"middle"},M):n==="insideRight"?Nr({x:g+y-A,y:l+u/2,horizontalAnchor:I,verticalAnchor:"middle"},M):n==="insideTop"?Nr({x:d+c/2,y:l+w,horizontalAnchor:"middle",verticalAnchor:C},M):n==="insideBottom"?Nr({x:p+f/2,y:l+u-w,horizontalAnchor:"middle",verticalAnchor:P},M):n==="insideTopLeft"?Nr({x:d+A,y:l+w,horizontalAnchor:E,verticalAnchor:C},M):n==="insideTopRight"?Nr({x:d+c-A,y:l+w,horizontalAnchor:I,verticalAnchor:C},M):n==="insideBottomLeft"?Nr({x:p+A,y:l+u-w,horizontalAnchor:E,verticalAnchor:P},M):n==="insideBottomRight"?Nr({x:p+f-A,y:l+u-w,horizontalAnchor:I,verticalAnchor:P},M):n&&typeof n=="object"&&(ge(n.x)||_a(n.x))&&(ge(n.y)||_a(n.y))?Nr({x:a+vr(n.x,y),y:l+vr(n.y,u),horizontalAnchor:"end",verticalAnchor:"end"},M):Nr({x,y:l+u/2,horizontalAnchor:"middle",verticalAnchor:"middle"},M)},oY=["labelRef"],lY=["content"];function FP(e,t){if(e==null)return{};var n,r,i=sY(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{var{x:t,y:n,upperWidth:r,lowerWidth:i,width:a,height:l,children:u}=e,c=k.useMemo(()=>({x:t,y:n,upperWidth:r,lowerWidth:i,width:a,height:l}),[t,n,r,i,a,l]);return k.createElement($I.Provider,{value:c},u)},FI=()=>{var e=k.useContext($I),t=sd();return e||(t?My(t):void 0)},hY=k.createContext(null),pY=()=>{var e=k.useContext(hY),t=Pe(h_);return e||t},mY=e=>{var{value:t,formatter:n}=e,r=mt(e.children)?t:e.children;return typeof n=="function"?n(r):r},Dx=e=>e!=null&&typeof e=="function",gY=(e,t)=>{var n=jn(t-e),r=Math.min(Math.abs(t-e),360);return n*r},vY=(e,t,n,r,i)=>{var{offset:a,className:l}=e,{cx:u,cy:c,innerRadius:f,outerRadius:d,startAngle:p,endAngle:g,clockWise:y}=i,x=(f+d)/2,S=gY(p,g),w=S>=0?1:-1,P,C;switch(t){case"insideStart":P=p+w*a,C=y;break;case"insideEnd":P=g-w*a,C=!y;break;case"end":P=g+w*a,C=y;break;default:throw new Error("Unsupported position ".concat(t))}C=S<=0?C:!C;var O=Xt(u,c,x,P),A=Xt(u,c,x,P+(C?1:-1)*359),I="M".concat(O.x,",").concat(O.y,` + A`,",",",0,0,",",",",","Z"])),L.x,L.y,a,a,+(d<0),E.x,E.y,r,r,+(H>180),+(d>0),O.x,O.y,a,a,+(d<0),A.x,A.y)}else C+=ht(mj||(mj=wa(["L",",","Z"])),t,n);return C},bq={cx:0,cy:0,innerRadius:0,outerRadius:0,startAngle:0,endAngle:0,cornerRadius:0,forceCornerRadius:!1,cornerIsExternal:!1},fA=e=>{var t=mn(e,bq),{cx:n,cy:r,innerRadius:i,outerRadius:a,cornerRadius:l,forceCornerRadius:u,cornerIsExternal:c,startAngle:f,endAngle:d,className:h}=t;if(a0&&Math.abs(f-d)<360?S=xq({cx:n,cy:r,innerRadius:i,outerRadius:a,cornerRadius:Math.min(x,y/2),forceCornerRadius:u,cornerIsExternal:c,startAngle:f,endAngle:d}):S=cA({cx:n,cy:r,innerRadius:i,outerRadius:a,startAngle:f,endAngle:d}),k.createElement("path",kv({},dn(t),{className:g,d:S}))};function wq(e,t,n){if(e==="horizontal")return[{x:t.x,y:n.top},{x:t.x,y:n.top+n.height}];if(e==="vertical")return[{x:n.left,y:t.y},{x:n.left+n.width,y:t.y}];if(YO(t)){if(e==="centric"){var{cx:r,cy:i,innerRadius:a,outerRadius:l,angle:u}=t,c=Xt(r,i,a,u),f=Xt(r,i,l,u);return[{x:c.x,y:c.y},{x:f.x,y:f.y}]}return uA(t)}}var ng={},rg={},ig={},gj;function kq(){return gj||(gj=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=aN();function n(r){return t.isSymbol(r)?NaN:Number(r)}e.toNumber=n})(ig)),ig}var vj;function Sq(){return vj||(vj=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=kq();function n(r){return r?(r=t.toNumber(r),r===1/0||r===-1/0?(r<0?-1:1)*Number.MAX_VALUE:r===r?r:0):r===0?r:0}e.toFinite=n})(rg)),rg}var yj;function jq(){return yj||(yj=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=oN(),n=Sq();function r(i,a,l){l&&typeof l!="number"&&t.isIterateeCall(i,a,l)&&(a=l=void 0),i=n.toFinite(i),a===void 0?(a=i,i=0):a=n.toFinite(a),l=l===void 0?it?1:e>=t?0:NaN}function Cq(e,t){return e==null||t==null?NaN:te?1:t>=e?0:NaN}function Fy(e){let t,n,r;e.length!==2?(t=Gi,n=(u,c)=>Gi(e(u),c),r=(u,c)=>e(u)-c):(t=e===Gi||e===Cq?e:Oq,n=e,r=e);function i(u,c,f=0,d=u.length){if(f>>1;n(u[h],c)<0?f=h+1:d=h}while(f>>1;n(u[h],c)<=0?f=h+1:d=h}while(ff&&r(u[h-1],c)>-r(u[h],c)?h-1:h}return{left:i,center:l,right:a}}function Oq(){return 0}function pA(e){return e===null?NaN:+e}function*Nq(e,t){for(let n of e)n!=null&&(n=+n)>=n&&(yield n)}const Aq=Fy(Gi),zs=Aq.right;Fy(pA).center;class bj extends Map{constructor(t,n=Tq){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:n}}),t!=null)for(const[r,i]of t)this.set(r,i)}get(t){return super.get(wj(this,t))}has(t){return super.has(wj(this,t))}set(t,n){return super.set(_q(this,t),n)}delete(t){return super.delete(Iq(this,t))}}function wj({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):n}function _q({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):(e.set(r,n),n)}function Iq({_intern:e,_key:t},n){const r=t(n);return e.has(r)&&(n=e.get(r),e.delete(r)),n}function Tq(e){return e!==null&&typeof e=="object"?e.valueOf():e}function Dq(e=Gi){if(e===Gi)return hA;if(typeof e!="function")throw new TypeError("compare is not a function");return(t,n)=>{const r=e(t,n);return r||r===0?r:(e(n,n)===0)-(e(t,t)===0)}}function hA(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(et?1:0)}const Mq=Math.sqrt(50),Lq=Math.sqrt(10),Rq=Math.sqrt(2);function hf(e,t,n){const r=(t-e)/Math.max(0,n),i=Math.floor(Math.log10(r)),a=r/Math.pow(10,i),l=a>=Mq?10:a>=Lq?5:a>=Rq?2:1;let u,c,f;return i<0?(f=Math.pow(10,-i)/l,u=Math.round(e*f),c=Math.round(t*f),u/ft&&--c,f=-f):(f=Math.pow(10,i)*l,u=Math.round(e/f),c=Math.round(t/f),u*ft&&--c),c0))return[];if(e===t)return[e];const r=t=i))return[];const u=a-i+1,c=new Array(u);if(r)if(l<0)for(let f=0;f=r)&&(n=r);return n}function Sj(e,t){let n;for(const r of e)r!=null&&(n>r||n===void 0&&r>=r)&&(n=r);return n}function mA(e,t,n=0,r=1/0,i){if(t=Math.floor(t),n=Math.floor(Math.max(0,n)),r=Math.floor(Math.min(e.length-1,r)),!(n<=t&&t<=r))return e;for(i=i===void 0?hA:Dq(i);r>n;){if(r-n>600){const c=r-n+1,f=t-n+1,d=Math.log(c),h=.5*Math.exp(2*d/3),g=.5*Math.sqrt(d*h*(c-h)/c)*(f-c/2<0?-1:1),y=Math.max(n,Math.floor(t-f*h/c+g)),x=Math.min(r,Math.floor(t+(c-f)*h/c+g));mA(e,t,y,x,i)}const a=e[t];let l=n,u=r;for(Vl(e,n,t),i(e[r],a)>0&&Vl(e,n,r);l0;)--u}i(e[n],a)===0?Vl(e,n,u):(++u,Vl(e,u,r)),u<=t&&(n=u+1),t<=u&&(r=u-1)}return e}function Vl(e,t,n){const r=e[t];e[t]=e[n],e[n]=r}function zq(e,t,n){if(e=Float64Array.from(Nq(e)),!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return Sj(e);if(t>=1)return kj(e);var r,i=(r-1)*t,a=Math.floor(i),l=kj(mA(e,a).subarray(0,a+1)),u=Sj(e.subarray(a+1));return l+(u-l)*(i-a)}}function $q(e,t,n=pA){if(!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return+n(e[0],0,e);if(t>=1)return+n(e[r-1],r-1,e);var r,i=(r-1)*t,a=Math.floor(i),l=+n(e[a],a,e),u=+n(e[a+1],a+1,e);return l+(u-l)*(i-a)}}function Fq(e,t,n){e=+e,t=+t,n=(i=arguments.length)<2?(t=e,e=0,1):i<3?1:+n;for(var r=-1,i=Math.max(0,Math.ceil((t-e)/n))|0,a=new Array(i);++r>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?kc(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?kc(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=Wq.exec(e))?new En(t[1],t[2],t[3],1):(t=qq.exec(e))?new En(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=Hq.exec(e))?kc(t[1],t[2],t[3],t[4]):(t=Vq.exec(e))?kc(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=Kq.exec(e))?Aj(t[1],t[2]/100,t[3]/100,1):(t=Gq.exec(e))?Aj(t[1],t[2]/100,t[3]/100,t[4]):jj.hasOwnProperty(e)?Cj(jj[e]):e==="transparent"?new En(NaN,NaN,NaN,0):null}function Cj(e){return new En(e>>16&255,e>>8&255,e&255,1)}function kc(e,t,n,r){return r<=0&&(e=t=n=NaN),new En(e,t,n,r)}function Qq(e){return e instanceof $s||(e=ws(e)),e?(e=e.rgb(),new En(e.r,e.g,e.b,e.opacity)):new En}function Cv(e,t,n,r){return arguments.length===1?Qq(e):new En(e,t,n,r??1)}function En(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}Wy(En,Cv,vA($s,{brighter(e){return e=e==null?mf:Math.pow(mf,e),new En(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?xs:Math.pow(xs,e),new En(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new En(Ea(this.r),Ea(this.g),Ea(this.b),gf(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Oj,formatHex:Oj,formatHex8:Zq,formatRgb:Nj,toString:Nj}));function Oj(){return`#${ka(this.r)}${ka(this.g)}${ka(this.b)}`}function Zq(){return`#${ka(this.r)}${ka(this.g)}${ka(this.b)}${ka((isNaN(this.opacity)?1:this.opacity)*255)}`}function Nj(){const e=gf(this.opacity);return`${e===1?"rgb(":"rgba("}${Ea(this.r)}, ${Ea(this.g)}, ${Ea(this.b)}${e===1?")":`, ${e})`}`}function gf(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Ea(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function ka(e){return e=Ea(e),(e<16?"0":"")+e.toString(16)}function Aj(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new dr(e,t,n,r)}function yA(e){if(e instanceof dr)return new dr(e.h,e.s,e.l,e.opacity);if(e instanceof $s||(e=ws(e)),!e)return new dr;if(e instanceof dr)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,i=Math.min(t,n,r),a=Math.max(t,n,r),l=NaN,u=a-i,c=(a+i)/2;return u?(t===a?l=(n-r)/u+(n0&&c<1?0:l,new dr(l,u,c,e.opacity)}function Jq(e,t,n,r){return arguments.length===1?yA(e):new dr(e,t,n,r??1)}function dr(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}Wy(dr,Jq,vA($s,{brighter(e){return e=e==null?mf:Math.pow(mf,e),new dr(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?xs:Math.pow(xs,e),new dr(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,i=2*n-r;return new En(og(e>=240?e-240:e+120,i,r),og(e,i,r),og(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new dr(_j(this.h),Sc(this.s),Sc(this.l),gf(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=gf(this.opacity);return`${e===1?"hsl(":"hsla("}${_j(this.h)}, ${Sc(this.s)*100}%, ${Sc(this.l)*100}%${e===1?")":`, ${e})`}`}}));function _j(e){return e=(e||0)%360,e<0?e+360:e}function Sc(e){return Math.max(0,Math.min(1,e||0))}function og(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}const qy=e=>()=>e;function e9(e,t){return function(n){return e+n*t}}function t9(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(r){return Math.pow(e+r*t,n)}}function n9(e){return(e=+e)==1?xA:function(t,n){return n-t?t9(t,n,e):qy(isNaN(t)?n:t)}}function xA(e,t){var n=t-e;return n?e9(e,n):qy(isNaN(e)?t:e)}const Ij=(function e(t){var n=n9(t);function r(i,a){var l=n((i=Cv(i)).r,(a=Cv(a)).r),u=n(i.g,a.g),c=n(i.b,a.b),f=xA(i.opacity,a.opacity);return function(d){return i.r=l(d),i.g=u(d),i.b=c(d),i.opacity=f(d),i+""}}return r.gamma=e,r})(1);function r9(e,t){t||(t=[]);var n=e?Math.min(t.length,e.length):0,r=t.slice(),i;return function(a){for(i=0;in&&(a=t.slice(n,a),u[l]?u[l]+=a:u[++l]=a),(r=r[0])===(i=i[0])?u[l]?u[l]+=i:u[++l]=i:(u[++l]=null,c.push({i:l,x:vf(r,i)})),n=lg.lastIndex;return nt&&(n=e,e=t,t=n),function(r){return Math.max(e,Math.min(t,r))}}function h9(e,t,n){var r=e[0],i=e[1],a=t[0],l=t[1];return i2?m9:h9,c=f=null,h}function h(g){return g==null||isNaN(g=+g)?a:(c||(c=u(e.map(r),t,n)))(r(l(g)))}return h.invert=function(g){return l(i((f||(f=u(t,e.map(r),vf)))(g)))},h.domain=function(g){return arguments.length?(e=Array.from(g,yf),d()):e.slice()},h.range=function(g){return arguments.length?(t=Array.from(g),d()):t.slice()},h.rangeRound=function(g){return t=Array.from(g),n=Hy,d()},h.clamp=function(g){return arguments.length?(l=g?!0:fn,d()):l!==fn},h.interpolate=function(g){return arguments.length?(n=g,d()):n},h.unknown=function(g){return arguments.length?(a=g,h):a},function(g,y){return r=g,i=y,d()}}function Vy(){return gd()(fn,fn)}function g9(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)}function xf(e,t){if(!isFinite(e)||e===0)return null;var n=(e=t?e.toExponential(t-1):e.toExponential()).indexOf("e"),r=e.slice(0,n);return[r.length>1?r[0]+r.slice(2):r,+e.slice(n+1)]}function Ro(e){return e=xf(Math.abs(e)),e?e[1]:NaN}function v9(e,t){return function(n,r){for(var i=n.length,a=[],l=0,u=e[0],c=0;i>0&&u>0&&(c+u+1>r&&(u=Math.max(1,r-c)),a.push(n.substring(i-=u,i+u)),!((c+=u+1)>r));)u=e[l=(l+1)%e.length];return a.reverse().join(t)}}function y9(e){return function(t){return t.replace(/[0-9]/g,function(n){return e[+n]})}}var x9=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function ks(e){if(!(t=x9.exec(e)))throw new Error("invalid format: "+e);var t;return new Ky({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}ks.prototype=Ky.prototype;function Ky(e){this.fill=e.fill===void 0?" ":e.fill+"",this.align=e.align===void 0?">":e.align+"",this.sign=e.sign===void 0?"-":e.sign+"",this.symbol=e.symbol===void 0?"":e.symbol+"",this.zero=!!e.zero,this.width=e.width===void 0?void 0:+e.width,this.comma=!!e.comma,this.precision=e.precision===void 0?void 0:+e.precision,this.trim=!!e.trim,this.type=e.type===void 0?"":e.type+""}Ky.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function b9(e){e:for(var t=e.length,n=1,r=-1,i;n0&&(r=0);break}return r>0?e.slice(0,r)+e.slice(i+1):e}var bf;function w9(e,t){var n=xf(e,t);if(!n)return bf=void 0,e.toPrecision(t);var r=n[0],i=n[1],a=i-(bf=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,l=r.length;return a===l?r:a>l?r+new Array(a-l+1).join("0"):a>0?r.slice(0,a)+"."+r.slice(a):"0."+new Array(1-a).join("0")+xf(e,Math.max(0,t+a-1))[0]}function Dj(e,t){var n=xf(e,t);if(!n)return e+"";var r=n[0],i=n[1];return i<0?"0."+new Array(-i).join("0")+r:r.length>i+1?r.slice(0,i+1)+"."+r.slice(i+1):r+new Array(i-r.length+2).join("0")}const Mj={"%":(e,t)=>(e*100).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+"",d:g9,e:(e,t)=>e.toExponential(t),f:(e,t)=>e.toFixed(t),g:(e,t)=>e.toPrecision(t),o:e=>Math.round(e).toString(8),p:(e,t)=>Dj(e*100,t),r:Dj,s:w9,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function Lj(e){return e}var Rj=Array.prototype.map,zj=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function k9(e){var t=e.grouping===void 0||e.thousands===void 0?Lj:v9(Rj.call(e.grouping,Number),e.thousands+""),n=e.currency===void 0?"":e.currency[0]+"",r=e.currency===void 0?"":e.currency[1]+"",i=e.decimal===void 0?".":e.decimal+"",a=e.numerals===void 0?Lj:y9(Rj.call(e.numerals,String)),l=e.percent===void 0?"%":e.percent+"",u=e.minus===void 0?"−":e.minus+"",c=e.nan===void 0?"NaN":e.nan+"";function f(h,g){h=ks(h);var y=h.fill,x=h.align,S=h.sign,w=h.symbol,P=h.zero,C=h.width,O=h.comma,A=h.precision,I=h.trim,E=h.type;E==="n"?(O=!0,E="g"):Mj[E]||(A===void 0&&(A=12),I=!0,E="g"),(P||y==="0"&&x==="=")&&(P=!0,y="0",x="=");var L=(g&&g.prefix!==void 0?g.prefix:"")+(w==="$"?n:w==="#"&&/[boxX]/.test(E)?"0"+E.toLowerCase():""),F=(w==="$"?r:/[%p]/.test(E)?l:"")+(g&&g.suffix!==void 0?g.suffix:""),H=Mj[E],R=/[defgprs%]/.test(E);A=A===void 0?6:/[gprs]/.test(E)?Math.max(1,Math.min(21,A)):Math.max(0,Math.min(20,A));function W(D){var Z=L,Y=F,Q,pe,de;if(E==="c")Y=H(D)+Y,D="";else{D=+D;var J=D<0||1/D<0;if(D=isNaN(D)?c:H(Math.abs(D),A),I&&(D=b9(D)),J&&+D==0&&S!=="+"&&(J=!1),Z=(J?S==="("?S:u:S==="-"||S==="("?"":S)+Z,Y=(E==="s"&&!isNaN(D)&&bf!==void 0?zj[8+bf/3]:"")+Y+(J&&S==="("?")":""),R){for(Q=-1,pe=D.length;++Qde||de>57){Y=(de===46?i+D.slice(Q+1):D.slice(Q))+Y,D=D.slice(0,Q);break}}}O&&!P&&(D=t(D,1/0));var ae=Z.length+D.length+Y.length,T=ae>1)+Z+D+Y+T.slice(ae);break;default:D=T+Z+D+Y;break}return a(D)}return W.toString=function(){return h+""},W}function d(h,g){var y=Math.max(-8,Math.min(8,Math.floor(Ro(g)/3)))*3,x=Math.pow(10,-y),S=f((h=ks(h),h.type="f",h),{suffix:zj[8+y/3]});return function(w){return S(x*w)}}return{format:f,formatPrefix:d}}var jc,Gy,bA;S9({thousands:",",grouping:[3],currency:["$",""]});function S9(e){return jc=k9(e),Gy=jc.format,bA=jc.formatPrefix,jc}function j9(e){return Math.max(0,-Ro(Math.abs(e)))}function P9(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(Ro(t)/3)))*3-Ro(Math.abs(e)))}function E9(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,Ro(t)-Ro(e))+1}function wA(e,t,n,r){var i=Pv(e,t,n),a;switch(r=ks(r??",f"),r.type){case"s":{var l=Math.max(Math.abs(e),Math.abs(t));return r.precision==null&&!isNaN(a=P9(i,l))&&(r.precision=a),bA(r,l)}case"":case"e":case"g":case"p":case"r":{r.precision==null&&!isNaN(a=E9(i,Math.max(Math.abs(e),Math.abs(t))))&&(r.precision=a-(r.type==="e"));break}case"f":case"%":{r.precision==null&&!isNaN(a=j9(i))&&(r.precision=a-(r.type==="%")*2);break}}return Gy(r)}function ea(e){var t=e.domain;return e.ticks=function(n){var r=t();return Sv(r[0],r[r.length-1],n??10)},e.tickFormat=function(n,r){var i=t();return wA(i[0],i[i.length-1],n??10,r)},e.nice=function(n){n==null&&(n=10);var r=t(),i=0,a=r.length-1,l=r[i],u=r[a],c,f,d=10;for(u0;){if(f=jv(l,u,n),f===c)return r[i]=l,r[a]=u,t(r);if(f>0)l=Math.floor(l/f)*f,u=Math.ceil(u/f)*f;else if(f<0)l=Math.ceil(l*f)/f,u=Math.floor(u*f)/f;else break;c=f}return e},e}function kA(){var e=Vy();return e.copy=function(){return Fs(e,kA())},tr.apply(e,arguments),ea(e)}function SA(e){var t;function n(r){return r==null||isNaN(r=+r)?t:r}return n.invert=n,n.domain=n.range=function(r){return arguments.length?(e=Array.from(r,yf),n):e.slice()},n.unknown=function(r){return arguments.length?(t=r,n):t},n.copy=function(){return SA(e).unknown(t)},e=arguments.length?Array.from(e,yf):[0,1],ea(n)}function jA(e,t){e=e.slice();var n=0,r=e.length-1,i=e[n],a=e[r],l;return aMath.pow(e,t)}function _9(e){return e===Math.E?Math.log:e===10&&Math.log10||e===2&&Math.log2||(e=Math.log(e),t=>Math.log(t)/e)}function Bj(e){return(t,n)=>-e(-t,n)}function Yy(e){const t=e($j,Fj),n=t.domain;let r=10,i,a;function l(){return i=_9(r),a=A9(r),n()[0]<0?(i=Bj(i),a=Bj(a),e(C9,O9)):e($j,Fj),t}return t.base=function(u){return arguments.length?(r=+u,l()):r},t.domain=function(u){return arguments.length?(n(u),l()):n()},t.ticks=u=>{const c=n();let f=c[0],d=c[c.length-1];const h=d0){for(;g<=y;++g)for(x=1;xd)break;P.push(S)}}else for(;g<=y;++g)for(x=r-1;x>=1;--x)if(S=g>0?x/a(-g):x*a(g),!(Sd)break;P.push(S)}P.length*2{if(u==null&&(u=10),c==null&&(c=r===10?"s":","),typeof c!="function"&&(!(r%1)&&(c=ks(c)).precision==null&&(c.trim=!0),c=Gy(c)),u===1/0)return c;const f=Math.max(1,r*u/t.ticks().length);return d=>{let h=d/a(Math.round(i(d)));return h*rn(jA(n(),{floor:u=>a(Math.floor(i(u))),ceil:u=>a(Math.ceil(i(u)))})),t}function PA(){const e=Yy(gd()).domain([1,10]);return e.copy=()=>Fs(e,PA()).base(e.base()),tr.apply(e,arguments),e}function Uj(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function Wj(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function Xy(e){var t=1,n=e(Uj(t),Wj(t));return n.constant=function(r){return arguments.length?e(Uj(t=+r),Wj(t)):t},ea(n)}function EA(){var e=Xy(gd());return e.copy=function(){return Fs(e,EA()).constant(e.constant())},tr.apply(e,arguments)}function qj(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function I9(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function T9(e){return e<0?-e*e:e*e}function Qy(e){var t=e(fn,fn),n=1;function r(){return n===1?e(fn,fn):n===.5?e(I9,T9):e(qj(n),qj(1/n))}return t.exponent=function(i){return arguments.length?(n=+i,r()):n},ea(t)}function Zy(){var e=Qy(gd());return e.copy=function(){return Fs(e,Zy()).exponent(e.exponent())},tr.apply(e,arguments),e}function D9(){return Zy.apply(null,arguments).exponent(.5)}function Hj(e){return Math.sign(e)*e*e}function M9(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}function CA(){var e=Vy(),t=[0,1],n=!1,r;function i(a){var l=M9(e(a));return isNaN(l)?r:n?Math.round(l):l}return i.invert=function(a){return e.invert(Hj(a))},i.domain=function(a){return arguments.length?(e.domain(a),i):e.domain()},i.range=function(a){return arguments.length?(e.range((t=Array.from(a,yf)).map(Hj)),i):t.slice()},i.rangeRound=function(a){return i.range(a).round(!0)},i.round=function(a){return arguments.length?(n=!!a,i):n},i.clamp=function(a){return arguments.length?(e.clamp(a),i):e.clamp()},i.unknown=function(a){return arguments.length?(r=a,i):r},i.copy=function(){return CA(e.domain(),t).round(n).clamp(e.clamp()).unknown(r)},tr.apply(i,arguments),ea(i)}function OA(){var e=[],t=[],n=[],r;function i(){var l=0,u=Math.max(1,t.length);for(n=new Array(u-1);++l0?n[u-1]:e[0],u=n?[r[n-1],t]:[r[f-1],r[f]]},l.unknown=function(c){return arguments.length&&(a=c),l},l.thresholds=function(){return r.slice()},l.copy=function(){return NA().domain([e,t]).range(i).unknown(a)},tr.apply(ea(l),arguments)}function AA(){var e=[.5],t=[0,1],n,r=1;function i(a){return a!=null&&a<=a?t[zs(e,a,0,r)]:n}return i.domain=function(a){return arguments.length?(e=Array.from(a),r=Math.min(e.length,t.length-1),i):e.slice()},i.range=function(a){return arguments.length?(t=Array.from(a),r=Math.min(e.length,t.length-1),i):t.slice()},i.invertExtent=function(a){var l=t.indexOf(a);return[e[l-1],e[l]]},i.unknown=function(a){return arguments.length?(n=a,i):n},i.copy=function(){return AA().domain(e).range(t).unknown(n)},tr.apply(i,arguments)}const sg=new Date,ug=new Date;function Nt(e,t,n,r){function i(a){return e(a=arguments.length===0?new Date:new Date(+a)),a}return i.floor=a=>(e(a=new Date(+a)),a),i.ceil=a=>(e(a=new Date(a-1)),t(a,1),e(a),a),i.round=a=>{const l=i(a),u=i.ceil(a);return a-l(t(a=new Date(+a),l==null?1:Math.floor(l)),a),i.range=(a,l,u)=>{const c=[];if(a=i.ceil(a),u=u==null?1:Math.floor(u),!(a0))return c;let f;do c.push(f=new Date(+a)),t(a,u),e(a);while(fNt(l=>{if(l>=l)for(;e(l),!a(l);)l.setTime(l-1)},(l,u)=>{if(l>=l)if(u<0)for(;++u<=0;)for(;t(l,-1),!a(l););else for(;--u>=0;)for(;t(l,1),!a(l););}),n&&(i.count=(a,l)=>(sg.setTime(+a),ug.setTime(+l),e(sg),e(ug),Math.floor(n(sg,ug))),i.every=a=>(a=Math.floor(a),!isFinite(a)||!(a>0)?null:a>1?i.filter(r?l=>r(l)%a===0:l=>i.count(0,l)%a===0):i)),i}const wf=Nt(()=>{},(e,t)=>{e.setTime(+e+t)},(e,t)=>t-e);wf.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?Nt(t=>{t.setTime(Math.floor(t/e)*e)},(t,n)=>{t.setTime(+t+n*e)},(t,n)=>(n-t)/e):wf);wf.range;const ei=1e3,Qn=ei*60,ti=Qn*60,ai=ti*24,Jy=ai*7,Vj=ai*30,cg=ai*365,Sa=Nt(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*ei)},(e,t)=>(t-e)/ei,e=>e.getUTCSeconds());Sa.range;const ex=Nt(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*ei)},(e,t)=>{e.setTime(+e+t*Qn)},(e,t)=>(t-e)/Qn,e=>e.getMinutes());ex.range;const tx=Nt(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*Qn)},(e,t)=>(t-e)/Qn,e=>e.getUTCMinutes());tx.range;const nx=Nt(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*ei-e.getMinutes()*Qn)},(e,t)=>{e.setTime(+e+t*ti)},(e,t)=>(t-e)/ti,e=>e.getHours());nx.range;const rx=Nt(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*ti)},(e,t)=>(t-e)/ti,e=>e.getUTCHours());rx.range;const Bs=Nt(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*Qn)/ai,e=>e.getDate()-1);Bs.range;const vd=Nt(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/ai,e=>e.getUTCDate()-1);vd.range;const _A=Nt(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/ai,e=>Math.floor(e/ai));_A.range;function Ua(e){return Nt(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(t,n)=>{t.setDate(t.getDate()+n*7)},(t,n)=>(n-t-(n.getTimezoneOffset()-t.getTimezoneOffset())*Qn)/Jy)}const yd=Ua(0),kf=Ua(1),L9=Ua(2),R9=Ua(3),zo=Ua(4),z9=Ua(5),$9=Ua(6);yd.range;kf.range;L9.range;R9.range;zo.range;z9.range;$9.range;function Wa(e){return Nt(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCDate(t.getUTCDate()+n*7)},(t,n)=>(n-t)/Jy)}const xd=Wa(0),Sf=Wa(1),F9=Wa(2),B9=Wa(3),$o=Wa(4),U9=Wa(5),W9=Wa(6);xd.range;Sf.range;F9.range;B9.range;$o.range;U9.range;W9.range;const ix=Nt(e=>{e.setDate(1),e.setHours(0,0,0,0)},(e,t)=>{e.setMonth(e.getMonth()+t)},(e,t)=>t.getMonth()-e.getMonth()+(t.getFullYear()-e.getFullYear())*12,e=>e.getMonth());ix.range;const ax=Nt(e=>{e.setUTCDate(1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCMonth(e.getUTCMonth()+t)},(e,t)=>t.getUTCMonth()-e.getUTCMonth()+(t.getUTCFullYear()-e.getUTCFullYear())*12,e=>e.getUTCMonth());ax.range;const oi=Nt(e=>{e.setMonth(0,1),e.setHours(0,0,0,0)},(e,t)=>{e.setFullYear(e.getFullYear()+t)},(e,t)=>t.getFullYear()-e.getFullYear(),e=>e.getFullYear());oi.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Nt(t=>{t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)},(t,n)=>{t.setFullYear(t.getFullYear()+n*e)});oi.range;const li=Nt(e=>{e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t)},(e,t)=>t.getUTCFullYear()-e.getUTCFullYear(),e=>e.getUTCFullYear());li.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Nt(t=>{t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCFullYear(t.getUTCFullYear()+n*e)});li.range;function IA(e,t,n,r,i,a){const l=[[Sa,1,ei],[Sa,5,5*ei],[Sa,15,15*ei],[Sa,30,30*ei],[a,1,Qn],[a,5,5*Qn],[a,15,15*Qn],[a,30,30*Qn],[i,1,ti],[i,3,3*ti],[i,6,6*ti],[i,12,12*ti],[r,1,ai],[r,2,2*ai],[n,1,Jy],[t,1,Vj],[t,3,3*Vj],[e,1,cg]];function u(f,d,h){const g=dw).right(l,g);if(y===l.length)return e.every(Pv(f/cg,d/cg,h));if(y===0)return wf.every(Math.max(Pv(f,d,h),1));const[x,S]=l[g/l[y-1][2]53)return null;"w"in ie||(ie.w=1),"Z"in ie?(ze=dg(Kl(ie.y,0,1)),ct=ze.getUTCDay(),ze=ct>4||ct===0?Sf.ceil(ze):Sf(ze),ze=vd.offset(ze,(ie.V-1)*7),ie.y=ze.getUTCFullYear(),ie.m=ze.getUTCMonth(),ie.d=ze.getUTCDate()+(ie.w+6)%7):(ze=fg(Kl(ie.y,0,1)),ct=ze.getDay(),ze=ct>4||ct===0?kf.ceil(ze):kf(ze),ze=Bs.offset(ze,(ie.V-1)*7),ie.y=ze.getFullYear(),ie.m=ze.getMonth(),ie.d=ze.getDate()+(ie.w+6)%7)}else("W"in ie||"U"in ie)&&("w"in ie||(ie.w="u"in ie?ie.u%7:"W"in ie?1:0),ct="Z"in ie?dg(Kl(ie.y,0,1)).getUTCDay():fg(Kl(ie.y,0,1)).getDay(),ie.m=0,ie.d="W"in ie?(ie.w+6)%7+ie.W*7-(ct+5)%7:ie.w+ie.U*7-(ct+6)%7);return"Z"in ie?(ie.H+=ie.Z/100|0,ie.M+=ie.Z%100,dg(ie)):fg(ie)}}function F(X,we,Ae,ie){for(var rt=0,ze=we.length,ct=Ae.length,ft,Ut;rt=ct)return-1;if(ft=we.charCodeAt(rt++),ft===37){if(ft=we.charAt(rt++),Ut=I[ft in Kj?we.charAt(rt++):ft],!Ut||(ie=Ut(X,Ae,ie))<0)return-1}else if(ft!=Ae.charCodeAt(ie++))return-1}return ie}function H(X,we,Ae){var ie=f.exec(we.slice(Ae));return ie?(X.p=d.get(ie[0].toLowerCase()),Ae+ie[0].length):-1}function R(X,we,Ae){var ie=y.exec(we.slice(Ae));return ie?(X.w=x.get(ie[0].toLowerCase()),Ae+ie[0].length):-1}function W(X,we,Ae){var ie=h.exec(we.slice(Ae));return ie?(X.w=g.get(ie[0].toLowerCase()),Ae+ie[0].length):-1}function D(X,we,Ae){var ie=P.exec(we.slice(Ae));return ie?(X.m=C.get(ie[0].toLowerCase()),Ae+ie[0].length):-1}function Z(X,we,Ae){var ie=S.exec(we.slice(Ae));return ie?(X.m=w.get(ie[0].toLowerCase()),Ae+ie[0].length):-1}function Y(X,we,Ae){return F(X,t,we,Ae)}function Q(X,we,Ae){return F(X,n,we,Ae)}function pe(X,we,Ae){return F(X,r,we,Ae)}function de(X){return l[X.getDay()]}function J(X){return a[X.getDay()]}function ae(X){return c[X.getMonth()]}function T(X){return u[X.getMonth()]}function $(X){return i[+(X.getHours()>=12)]}function U(X){return 1+~~(X.getMonth()/3)}function _(X){return l[X.getUTCDay()]}function te(X){return a[X.getUTCDay()]}function fe(X){return c[X.getUTCMonth()]}function ce(X){return u[X.getUTCMonth()]}function Se(X){return i[+(X.getUTCHours()>=12)]}function je(X){return 1+~~(X.getUTCMonth()/3)}return{format:function(X){var we=E(X+="",O);return we.toString=function(){return X},we},parse:function(X){var we=L(X+="",!1);return we.toString=function(){return X},we},utcFormat:function(X){var we=E(X+="",A);return we.toString=function(){return X},we},utcParse:function(X){var we=L(X+="",!0);return we.toString=function(){return X},we}}}var Kj={"-":"",_:" ",0:"0"},$t=/^\s*\d+/,Y9=/^%/,X9=/[\\^$*+?|[\]().{}]/g;function We(e,t,n){var r=e<0?"-":"",i=(r?-e:e)+"",a=i.length;return r+(a[t.toLowerCase(),n]))}function Z9(e,t,n){var r=$t.exec(t.slice(n,n+1));return r?(e.w=+r[0],n+r[0].length):-1}function J9(e,t,n){var r=$t.exec(t.slice(n,n+1));return r?(e.u=+r[0],n+r[0].length):-1}function eH(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.U=+r[0],n+r[0].length):-1}function tH(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.V=+r[0],n+r[0].length):-1}function nH(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.W=+r[0],n+r[0].length):-1}function Gj(e,t,n){var r=$t.exec(t.slice(n,n+4));return r?(e.y=+r[0],n+r[0].length):-1}function Yj(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function rH(e,t,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(n,n+6));return r?(e.Z=r[1]?0:-(r[2]+(r[3]||"00")),n+r[0].length):-1}function iH(e,t,n){var r=$t.exec(t.slice(n,n+1));return r?(e.q=r[0]*3-3,n+r[0].length):-1}function aH(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.m=r[0]-1,n+r[0].length):-1}function Xj(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.d=+r[0],n+r[0].length):-1}function oH(e,t,n){var r=$t.exec(t.slice(n,n+3));return r?(e.m=0,e.d=+r[0],n+r[0].length):-1}function Qj(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.H=+r[0],n+r[0].length):-1}function lH(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.M=+r[0],n+r[0].length):-1}function sH(e,t,n){var r=$t.exec(t.slice(n,n+2));return r?(e.S=+r[0],n+r[0].length):-1}function uH(e,t,n){var r=$t.exec(t.slice(n,n+3));return r?(e.L=+r[0],n+r[0].length):-1}function cH(e,t,n){var r=$t.exec(t.slice(n,n+6));return r?(e.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function fH(e,t,n){var r=Y9.exec(t.slice(n,n+1));return r?n+r[0].length:-1}function dH(e,t,n){var r=$t.exec(t.slice(n));return r?(e.Q=+r[0],n+r[0].length):-1}function pH(e,t,n){var r=$t.exec(t.slice(n));return r?(e.s=+r[0],n+r[0].length):-1}function Zj(e,t){return We(e.getDate(),t,2)}function hH(e,t){return We(e.getHours(),t,2)}function mH(e,t){return We(e.getHours()%12||12,t,2)}function gH(e,t){return We(1+Bs.count(oi(e),e),t,3)}function TA(e,t){return We(e.getMilliseconds(),t,3)}function vH(e,t){return TA(e,t)+"000"}function yH(e,t){return We(e.getMonth()+1,t,2)}function xH(e,t){return We(e.getMinutes(),t,2)}function bH(e,t){return We(e.getSeconds(),t,2)}function wH(e){var t=e.getDay();return t===0?7:t}function kH(e,t){return We(yd.count(oi(e)-1,e),t,2)}function DA(e){var t=e.getDay();return t>=4||t===0?zo(e):zo.ceil(e)}function SH(e,t){return e=DA(e),We(zo.count(oi(e),e)+(oi(e).getDay()===4),t,2)}function jH(e){return e.getDay()}function PH(e,t){return We(kf.count(oi(e)-1,e),t,2)}function EH(e,t){return We(e.getFullYear()%100,t,2)}function CH(e,t){return e=DA(e),We(e.getFullYear()%100,t,2)}function OH(e,t){return We(e.getFullYear()%1e4,t,4)}function NH(e,t){var n=e.getDay();return e=n>=4||n===0?zo(e):zo.ceil(e),We(e.getFullYear()%1e4,t,4)}function AH(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+We(t/60|0,"0",2)+We(t%60,"0",2)}function Jj(e,t){return We(e.getUTCDate(),t,2)}function _H(e,t){return We(e.getUTCHours(),t,2)}function IH(e,t){return We(e.getUTCHours()%12||12,t,2)}function TH(e,t){return We(1+vd.count(li(e),e),t,3)}function MA(e,t){return We(e.getUTCMilliseconds(),t,3)}function DH(e,t){return MA(e,t)+"000"}function MH(e,t){return We(e.getUTCMonth()+1,t,2)}function LH(e,t){return We(e.getUTCMinutes(),t,2)}function RH(e,t){return We(e.getUTCSeconds(),t,2)}function zH(e){var t=e.getUTCDay();return t===0?7:t}function $H(e,t){return We(xd.count(li(e)-1,e),t,2)}function LA(e){var t=e.getUTCDay();return t>=4||t===0?$o(e):$o.ceil(e)}function FH(e,t){return e=LA(e),We($o.count(li(e),e)+(li(e).getUTCDay()===4),t,2)}function BH(e){return e.getUTCDay()}function UH(e,t){return We(Sf.count(li(e)-1,e),t,2)}function WH(e,t){return We(e.getUTCFullYear()%100,t,2)}function qH(e,t){return e=LA(e),We(e.getUTCFullYear()%100,t,2)}function HH(e,t){return We(e.getUTCFullYear()%1e4,t,4)}function VH(e,t){var n=e.getUTCDay();return e=n>=4||n===0?$o(e):$o.ceil(e),We(e.getUTCFullYear()%1e4,t,4)}function KH(){return"+0000"}function eP(){return"%"}function tP(e){return+e}function nP(e){return Math.floor(+e/1e3)}var yo,RA,zA;GH({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function GH(e){return yo=G9(e),RA=yo.format,yo.parse,zA=yo.utcFormat,yo.utcParse,yo}function YH(e){return new Date(e)}function XH(e){return e instanceof Date?+e:+new Date(+e)}function ox(e,t,n,r,i,a,l,u,c,f){var d=Vy(),h=d.invert,g=d.domain,y=f(".%L"),x=f(":%S"),S=f("%I:%M"),w=f("%I %p"),P=f("%a %d"),C=f("%b %d"),O=f("%B"),A=f("%Y");function I(E){return(c(E)t(i/(e.length-1)))},n.quantiles=function(r){return Array.from({length:r+1},(i,a)=>zq(e,a/r))},n.copy=function(){return UA(t).domain(e)},hi.apply(n,arguments)}function wd(){var e=0,t=.5,n=1,r=1,i,a,l,u,c,f=fn,d,h=!1,g;function y(S){return isNaN(S=+S)?g:(S=.5+((S=+d(S))-a)*(r*Se.chartData,VA=G([mi],e=>{var t=e.chartData!=null?e.chartData.length-1:0;return{chartData:e.chartData,computedData:e.computedData,dataEndIndex:t,dataStartIndex:0}}),KA=(e,t,n,r)=>r?VA(e):mi(e),GA=(e,t,n)=>n?VA(e):mi(e);function si(e){if(Array.isArray(e)&&e.length===2){var[t,n]=e;if(De(t)&&De(n))return!0}return!1}function rP(e,t,n){return n?e:[Math.min(e[0],t[0]),Math.max(e[1],t[1])]}function YA(e,t){if(t&&typeof e!="function"&&Array.isArray(e)&&e.length===2){var[n,r]=e,i,a;if(De(n))i=n;else if(typeof n=="function")return;if(De(r))a=r;else if(typeof r=="function")return;var l=[i,a];if(si(l))return l}}function tV(e,t,n){if(!(!n&&t==null)){if(typeof e=="function"&&t!=null)try{var r=e(t,n);if(si(r))return rP(r,t,n)}catch{}if(Array.isArray(e)&&e.length===2){var[i,a]=e,l,u;if(i==="auto")t!=null&&(l=Math.min(...t));else if(ge(i))l=i;else if(typeof i=="function")try{t!=null&&(l=i(t==null?void 0:t[0]))}catch{}else if(typeof i=="string"&&mS.test(i)){var c=mS.exec(i);if(c==null||c[1]==null||t==null)l=void 0;else{var f=+c[1];l=t[0]-f}}else l=t==null?void 0:t[0];if(a==="auto")t!=null&&(u=Math.max(...t));else if(ge(a))u=a;else if(typeof a=="function")try{t!=null&&(u=a(t==null?void 0:t[1]))}catch{}else if(typeof a=="string"&&gS.test(a)){var d=gS.exec(a);if(d==null||d[1]==null||t==null)u=void 0;else{var h=+d[1];u=t[1]+h}}else u=t==null?void 0:t[1];var g=[l,u];if(si(g))return t==null?g:rP(g,t,n)}}}var qo=1e9,nV={precision:20,rounding:4,toExpNeg:-7,toExpPos:21,LN10:"2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286"},cx,ot=!0,er="[DecimalError] ",Ca=er+"Invalid argument: ",ux=er+"Exponent out of range: ",Ho=Math.floor,ba=Math.pow,rV=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,Mn,Lt=1e7,nt=7,XA=9007199254740991,jf=Ho(XA/nt),ye={};ye.absoluteValue=ye.abs=function(){var e=new this.constructor(this);return e.s&&(e.s=1),e};ye.comparedTo=ye.cmp=function(e){var t,n,r,i,a=this;if(e=new a.constructor(e),a.s!==e.s)return a.s||-e.s;if(a.e!==e.e)return a.e>e.e^a.s<0?1:-1;for(r=a.d.length,i=e.d.length,t=0,n=re.d[t]^a.s<0?1:-1;return r===i?0:r>i^a.s<0?1:-1};ye.decimalPlaces=ye.dp=function(){var e=this,t=e.d.length-1,n=(t-e.e)*nt;if(t=e.d[t],t)for(;t%10==0;t/=10)n--;return n<0?0:n};ye.dividedBy=ye.div=function(e){return ni(this,new this.constructor(e))};ye.dividedToIntegerBy=ye.idiv=function(e){var t=this,n=t.constructor;return Ye(ni(t,new n(e),0,1),n.precision)};ye.equals=ye.eq=function(e){return!this.cmp(e)};ye.exponent=function(){return jt(this)};ye.greaterThan=ye.gt=function(e){return this.cmp(e)>0};ye.greaterThanOrEqualTo=ye.gte=function(e){return this.cmp(e)>=0};ye.isInteger=ye.isint=function(){return this.e>this.d.length-2};ye.isNegative=ye.isneg=function(){return this.s<0};ye.isPositive=ye.ispos=function(){return this.s>0};ye.isZero=function(){return this.s===0};ye.lessThan=ye.lt=function(e){return this.cmp(e)<0};ye.lessThanOrEqualTo=ye.lte=function(e){return this.cmp(e)<1};ye.logarithm=ye.log=function(e){var t,n=this,r=n.constructor,i=r.precision,a=i+5;if(e===void 0)e=new r(10);else if(e=new r(e),e.s<1||e.eq(Mn))throw Error(er+"NaN");if(n.s<1)throw Error(er+(n.s?"NaN":"-Infinity"));return n.eq(Mn)?new r(0):(ot=!1,t=ni(Ss(n,a),Ss(e,a),a),ot=!0,Ye(t,i))};ye.minus=ye.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?JA(t,e):QA(t,(e.s=-e.s,e))};ye.modulo=ye.mod=function(e){var t,n=this,r=n.constructor,i=r.precision;if(e=new r(e),!e.s)throw Error(er+"NaN");return n.s?(ot=!1,t=ni(n,e,0,1).times(e),ot=!0,n.minus(t)):Ye(new r(n),i)};ye.naturalExponential=ye.exp=function(){return ZA(this)};ye.naturalLogarithm=ye.ln=function(){return Ss(this)};ye.negated=ye.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e};ye.plus=ye.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?QA(t,e):JA(t,(e.s=-e.s,e))};ye.precision=ye.sd=function(e){var t,n,r,i=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(Ca+e);if(t=jt(i)+1,r=i.d.length-1,n=r*nt+1,r=i.d[r],r){for(;r%10==0;r/=10)n--;for(r=i.d[0];r>=10;r/=10)n++}return e&&t>n?t:n};ye.squareRoot=ye.sqrt=function(){var e,t,n,r,i,a,l,u=this,c=u.constructor;if(u.s<1){if(!u.s)return new c(0);throw Error(er+"NaN")}for(e=jt(u),ot=!1,i=Math.sqrt(+u),i==0||i==1/0?(t=Ir(u.d),(t.length+e)%2==0&&(t+="0"),i=Math.sqrt(t),e=Ho((e+1)/2)-(e<0||e%2),i==1/0?t="5e"+e:(t=i.toExponential(),t=t.slice(0,t.indexOf("e")+1)+e),r=new c(t)):r=new c(i.toString()),n=c.precision,i=l=n+3;;)if(a=r,r=a.plus(ni(u,a,l+2)).times(.5),Ir(a.d).slice(0,l)===(t=Ir(r.d)).slice(0,l)){if(t=t.slice(l-3,l+1),i==l&&t=="4999"){if(Ye(a,n+1,0),a.times(a).eq(u)){r=a;break}}else if(t!="9999")break;l+=4}return ot=!0,Ye(r,n)};ye.times=ye.mul=function(e){var t,n,r,i,a,l,u,c,f,d=this,h=d.constructor,g=d.d,y=(e=new h(e)).d;if(!d.s||!e.s)return new h(0);for(e.s*=d.s,n=d.e+e.e,c=g.length,f=y.length,c=0;){for(t=0,i=c+r;i>r;)u=a[i]+y[r]*g[i-r-1]+t,a[i--]=u%Lt|0,t=u/Lt|0;a[i]=(a[i]+t)%Lt|0}for(;!a[--l];)a.pop();return t?++n:a.shift(),e.d=a,e.e=n,ot?Ye(e,h.precision):e};ye.toDecimalPlaces=ye.todp=function(e,t){var n=this,r=n.constructor;return n=new r(n),e===void 0?n:(Lr(e,0,qo),t===void 0?t=r.rounding:Lr(t,0,8),Ye(n,e+jt(n)+1,t))};ye.toExponential=function(e,t){var n,r=this,i=r.constructor;return e===void 0?n=Ma(r,!0):(Lr(e,0,qo),t===void 0?t=i.rounding:Lr(t,0,8),r=Ye(new i(r),e+1,t),n=Ma(r,!0,e+1)),n};ye.toFixed=function(e,t){var n,r,i=this,a=i.constructor;return e===void 0?Ma(i):(Lr(e,0,qo),t===void 0?t=a.rounding:Lr(t,0,8),r=Ye(new a(i),e+jt(i)+1,t),n=Ma(r.abs(),!1,e+jt(r)+1),i.isneg()&&!i.isZero()?"-"+n:n)};ye.toInteger=ye.toint=function(){var e=this,t=e.constructor;return Ye(new t(e),jt(e)+1,t.rounding)};ye.toNumber=function(){return+this};ye.toPower=ye.pow=function(e){var t,n,r,i,a,l,u=this,c=u.constructor,f=12,d=+(e=new c(e));if(!e.s)return new c(Mn);if(u=new c(u),!u.s){if(e.s<1)throw Error(er+"Infinity");return u}if(u.eq(Mn))return u;if(r=c.precision,e.eq(Mn))return Ye(u,r);if(t=e.e,n=e.d.length-1,l=t>=n,a=u.s,l){if((n=d<0?-d:d)<=XA){for(i=new c(Mn),t=Math.ceil(r/nt+4),ot=!1;n%2&&(i=i.times(u),aP(i.d,t)),n=Ho(n/2),n!==0;)u=u.times(u),aP(u.d,t);return ot=!0,e.s<0?new c(Mn).div(i):Ye(i,r)}}else if(a<0)throw Error(er+"NaN");return a=a<0&&e.d[Math.max(t,n)]&1?-1:1,u.s=1,ot=!1,i=e.times(Ss(u,r+f)),ot=!0,i=ZA(i),i.s=a,i};ye.toPrecision=function(e,t){var n,r,i=this,a=i.constructor;return e===void 0?(n=jt(i),r=Ma(i,n<=a.toExpNeg||n>=a.toExpPos)):(Lr(e,1,qo),t===void 0?t=a.rounding:Lr(t,0,8),i=Ye(new a(i),e,t),n=jt(i),r=Ma(i,e<=n||n<=a.toExpNeg,e)),r};ye.toSignificantDigits=ye.tosd=function(e,t){var n=this,r=n.constructor;return e===void 0?(e=r.precision,t=r.rounding):(Lr(e,1,qo),t===void 0?t=r.rounding:Lr(t,0,8)),Ye(new r(n),e,t)};ye.toString=ye.valueOf=ye.val=ye.toJSON=ye[Symbol.for("nodejs.util.inspect.custom")]=function(){var e=this,t=jt(e),n=e.constructor;return Ma(e,t<=n.toExpNeg||t>=n.toExpPos)};function QA(e,t){var n,r,i,a,l,u,c,f,d=e.constructor,h=d.precision;if(!e.s||!t.s)return t.s||(t=new d(e)),ot?Ye(t,h):t;if(c=e.d,f=t.d,l=e.e,i=t.e,c=c.slice(),a=l-i,a){for(a<0?(r=c,a=-a,u=f.length):(r=f,i=l,u=c.length),l=Math.ceil(h/nt),u=l>u?l+1:u+1,a>u&&(a=u,r.length=1),r.reverse();a--;)r.push(0);r.reverse()}for(u=c.length,a=f.length,u-a<0&&(a=u,r=f,f=c,c=r),n=0;a;)n=(c[--a]=c[a]+f[a]+n)/Lt|0,c[a]%=Lt;for(n&&(c.unshift(n),++i),u=c.length;c[--u]==0;)c.pop();return t.d=c,t.e=i,ot?Ye(t,h):t}function Lr(e,t,n){if(e!==~~e||en)throw Error(Ca+e)}function Ir(e){var t,n,r,i=e.length-1,a="",l=e[0];if(i>0){for(a+=l,t=1;tl?1:-1;else for(u=c=0;ui[u]?1:-1;break}return c}function n(r,i,a){for(var l=0;a--;)r[a]-=l,l=r[a]1;)r.shift()}return function(r,i,a,l){var u,c,f,d,h,g,y,x,S,w,P,C,O,A,I,E,L,F,H=r.constructor,R=r.s==i.s?1:-1,W=r.d,D=i.d;if(!r.s)return new H(r);if(!i.s)throw Error(er+"Division by zero");for(c=r.e-i.e,L=D.length,I=W.length,y=new H(R),x=y.d=[],f=0;D[f]==(W[f]||0);)++f;if(D[f]>(W[f]||0)&&--c,a==null?C=a=H.precision:l?C=a+(jt(r)-jt(i))+1:C=a,C<0)return new H(0);if(C=C/nt+2|0,f=0,L==1)for(d=0,D=D[0],C++;(f1&&(D=e(D,d),W=e(W,d),L=D.length,I=W.length),A=L,S=W.slice(0,L),w=S.length;w=Lt/2&&++E;do d=0,u=t(D,S,L,w),u<0?(P=S[0],L!=w&&(P=P*Lt+(S[1]||0)),d=P/E|0,d>1?(d>=Lt&&(d=Lt-1),h=e(D,d),g=h.length,w=S.length,u=t(h,S,g,w),u==1&&(d--,n(h,L16)throw Error(ux+jt(e));if(!e.s)return new d(Mn);for(ot=!1,u=h,l=new d(.03125);e.abs().gte(.1);)e=e.times(l),f+=5;for(r=Math.log(ba(2,f))/Math.LN10*2+5|0,u+=r,n=i=a=new d(Mn),d.precision=u;;){if(i=Ye(i.times(e),u),n=n.times(++c),l=a.plus(ni(i,n,u)),Ir(l.d).slice(0,u)===Ir(a.d).slice(0,u)){for(;f--;)a=Ye(a.times(a),u);return d.precision=h,t==null?(ot=!0,Ye(a,h)):a}a=l}}function jt(e){for(var t=e.e*nt,n=e.d[0];n>=10;n/=10)t++;return t}function pg(e,t,n){if(t>e.LN10.sd())throw ot=!0,n&&(e.precision=n),Error(er+"LN10 precision limit exceeded");return Ye(new e(e.LN10),t)}function Wi(e){for(var t="";e--;)t+="0";return t}function Ss(e,t){var n,r,i,a,l,u,c,f,d,h=1,g=10,y=e,x=y.d,S=y.constructor,w=S.precision;if(y.s<1)throw Error(er+(y.s?"NaN":"-Infinity"));if(y.eq(Mn))return new S(0);if(t==null?(ot=!1,f=w):f=t,y.eq(10))return t==null&&(ot=!0),pg(S,f);if(f+=g,S.precision=f,n=Ir(x),r=n.charAt(0),a=jt(y),Math.abs(a)<15e14){for(;r<7&&r!=1||r==1&&n.charAt(1)>3;)y=y.times(e),n=Ir(y.d),r=n.charAt(0),h++;a=jt(y),r>1?(y=new S("0."+n),a++):y=new S(r+"."+n.slice(1))}else return c=pg(S,f+2,w).times(a+""),y=Ss(new S(r+"."+n.slice(1)),f-g).plus(c),S.precision=w,t==null?(ot=!0,Ye(y,w)):y;for(u=l=y=ni(y.minus(Mn),y.plus(Mn),f),d=Ye(y.times(y),f),i=3;;){if(l=Ye(l.times(d),f),c=u.plus(ni(l,new S(i),f)),Ir(c.d).slice(0,f)===Ir(u.d).slice(0,f))return u=u.times(2),a!==0&&(u=u.plus(pg(S,f+2,w).times(a+""))),u=ni(u,new S(h),f),S.precision=w,t==null?(ot=!0,Ye(u,w)):u;u=c,i+=2}}function iP(e,t){var n,r,i;for((n=t.indexOf("."))>-1&&(t=t.replace(".","")),(r=t.search(/e/i))>0?(n<0&&(n=r),n+=+t.slice(r+1),t=t.substring(0,r)):n<0&&(n=t.length),r=0;t.charCodeAt(r)===48;)++r;for(i=t.length;t.charCodeAt(i-1)===48;)--i;if(t=t.slice(r,i),t){if(i-=r,n=n-r-1,e.e=Ho(n/nt),e.d=[],r=(n+1)%nt,n<0&&(r+=nt),rjf||e.e<-jf))throw Error(ux+n)}else e.s=0,e.e=0,e.d=[0];return e}function Ye(e,t,n){var r,i,a,l,u,c,f,d,h=e.d;for(l=1,a=h[0];a>=10;a/=10)l++;if(r=t-l,r<0)r+=nt,i=t,f=h[d=0];else{if(d=Math.ceil((r+1)/nt),a=h.length,d>=a)return e;for(f=a=h[d],l=1;a>=10;a/=10)l++;r%=nt,i=r-nt+l}if(n!==void 0&&(a=ba(10,l-i-1),u=f/a%10|0,c=t<0||h[d+1]!==void 0||f%a,c=n<4?(u||c)&&(n==0||n==(e.s<0?3:2)):u>5||u==5&&(n==4||c||n==6&&(r>0?i>0?f/ba(10,l-i):0:h[d-1])%10&1||n==(e.s<0?8:7))),t<1||!h[0])return c?(a=jt(e),h.length=1,t=t-a-1,h[0]=ba(10,(nt-t%nt)%nt),e.e=Ho(-t/nt)||0):(h.length=1,h[0]=e.e=e.s=0),e;if(r==0?(h.length=d,a=1,d--):(h.length=d+1,a=ba(10,nt-r),h[d]=i>0?(f/ba(10,l-i)%ba(10,i)|0)*a:0),c)for(;;)if(d==0){(h[0]+=a)==Lt&&(h[0]=1,++e.e);break}else{if(h[d]+=a,h[d]!=Lt)break;h[d--]=0,a=1}for(r=h.length;h[--r]===0;)h.pop();if(ot&&(e.e>jf||e.e<-jf))throw Error(ux+jt(e));return e}function JA(e,t){var n,r,i,a,l,u,c,f,d,h,g=e.constructor,y=g.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new g(e),ot?Ye(t,y):t;if(c=e.d,h=t.d,r=t.e,f=e.e,c=c.slice(),l=f-r,l){for(d=l<0,d?(n=c,l=-l,u=h.length):(n=h,r=f,u=c.length),i=Math.max(Math.ceil(y/nt),u)+2,l>i&&(l=i,n.length=1),n.reverse(),i=l;i--;)n.push(0);n.reverse()}else{for(i=c.length,u=h.length,d=i0;--i)c[u++]=0;for(i=h.length;i>l;){if(c[--i]0?a=a.charAt(0)+"."+a.slice(1)+Wi(r):l>1&&(a=a.charAt(0)+"."+a.slice(1)),a=a+(i<0?"e":"e+")+i):i<0?(a="0."+Wi(-i-1)+a,n&&(r=n-l)>0&&(a+=Wi(r))):i>=l?(a+=Wi(i+1-l),n&&(r=n-i-1)>0&&(a=a+"."+Wi(r))):((r=i+1)0&&(i+1===l&&(a+="."),a+=Wi(r))),e.s<0?"-"+a:a}function aP(e,t){if(e.length>t)return e.length=t,!0}function e_(e){var t,n,r;function i(a){var l=this;if(!(l instanceof i))return new i(a);if(l.constructor=i,a instanceof i){l.s=a.s,l.e=a.e,l.d=(a=a.d)?a.slice():a;return}if(typeof a=="number"){if(a*0!==0)throw Error(Ca+a);if(a>0)l.s=1;else if(a<0)a=-a,l.s=-1;else{l.s=0,l.e=0,l.d=[0];return}if(a===~~a&&a<1e7){l.e=0,l.d=[a];return}return iP(l,a.toString())}else if(typeof a!="string")throw Error(Ca+a);if(a.charCodeAt(0)===45?(a=a.slice(1),l.s=-1):l.s=1,rV.test(a))iP(l,a);else throw Error(Ca+a)}if(i.prototype=ye,i.ROUND_UP=0,i.ROUND_DOWN=1,i.ROUND_CEIL=2,i.ROUND_FLOOR=3,i.ROUND_HALF_UP=4,i.ROUND_HALF_DOWN=5,i.ROUND_HALF_EVEN=6,i.ROUND_HALF_CEIL=7,i.ROUND_HALF_FLOOR=8,i.clone=e_,i.config=i.set=iV,e===void 0&&(e={}),e)for(r=["precision","rounding","toExpNeg","toExpPos","LN10"],t=0;t=i[t+1]&&r<=i[t+2])this[n]=r;else throw Error(Ca+n+": "+r);if((r=e[n="LN10"])!==void 0)if(r==Math.LN10)this[n]=new this(r);else throw Error(Ca+n+": "+r);return this}var cx=e_(nV);Mn=new cx(1);const Ke=cx;function t_(e){var t;return e===0?t=1:t=Math.floor(new Ke(e).abs().log(10).toNumber())+1,t}function n_(e,t,n){for(var r=new Ke(e),i=0,a=[];r.lt(t)&&i<1e5;)a.push(r.toNumber()),r=r.add(n),i++;return a}var r_=e=>{var[t,n]=e,[r,i]=[t,n];return t>n&&([r,i]=[n,t]),[r,i]},i_=(e,t,n)=>{if(e.lte(0))return new Ke(0);var r=t_(e.toNumber()),i=new Ke(10).pow(r),a=e.div(i),l=r!==1?.05:.1,u=new Ke(Math.ceil(a.div(l).toNumber())).add(n).mul(l),c=u.mul(i);return t?new Ke(c.toNumber()):new Ke(Math.ceil(c.toNumber()))},aV=(e,t,n)=>{var r=new Ke(1),i=new Ke(e);if(!i.isint()&&n){var a=Math.abs(e);a<1?(r=new Ke(10).pow(t_(e)-1),i=new Ke(Math.floor(i.div(r).toNumber())).mul(r)):a>1&&(i=new Ke(Math.floor(e)))}else e===0?i=new Ke(Math.floor((t-1)/2)):n||(i=new Ke(Math.floor(e)));for(var l=Math.floor((t-1)/2),u=[],c=0;c4&&arguments[4]!==void 0?arguments[4]:0;if(!Number.isFinite((n-t)/(r-1)))return{step:new Ke(0),tickMin:new Ke(0),tickMax:new Ke(0)};var l=i_(new Ke(n).sub(t).div(r-1),i,a),u;t<=0&&n>=0?u=new Ke(0):(u=new Ke(t).add(n).div(2),u=u.sub(new Ke(u).mod(l)));var c=Math.ceil(u.sub(t).div(l).toNumber()),f=Math.ceil(new Ke(n).sub(u).div(l).toNumber()),d=c+f+1;return d>r?a_(t,n,r,i,a+1):(d0?f+(r-d):f,c=n>0?c:c+(r-d)),{step:l,tickMin:u.sub(new Ke(c).mul(l)),tickMax:u.add(new Ke(f).mul(l))})},oV=function(t){var[n,r]=t,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:6,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,l=Math.max(i,2),[u,c]=r_([n,r]);if(u===-1/0||c===1/0){var f=c===1/0?[u,...Array(i-1).fill(1/0)]:[...Array(i-1).fill(-1/0),c];return n>r?f.reverse():f}if(u===c)return aV(u,i,a);var{step:d,tickMin:h,tickMax:g}=a_(u,c,l,a,0),y=n_(h,g.add(new Ke(.1).mul(d)),d);return n>r?y.reverse():y},lV=function(t,n){var[r,i]=t,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,[l,u]=r_([r,i]);if(l===-1/0||u===1/0)return[r,i];if(l===u)return[l];var c=Math.max(n,2),f=i_(new Ke(u).sub(l).div(c-1),a,0),d=[...n_(new Ke(l),new Ke(u),f),u];return a===!1&&(d=d.map(h=>Math.round(h))),r>i?d.reverse():d},o_=e=>e.rootProps.maxBarSize,sV=e=>e.rootProps.barGap,l_=e=>e.rootProps.barCategoryGap,uV=e=>e.rootProps.barSize,kd=e=>e.rootProps.stackOffset,s_=e=>e.rootProps.reverseStackOrder,fx=e=>e.options.chartName,dx=e=>e.rootProps.syncId,u_=e=>e.rootProps.syncMethod,px=e=>e.options.eventEmitter,cV=e=>e.rootProps.baseValue,Rt={grid:-100,barBackground:-50,area:100,cursorRectangle:200,bar:300,line:400,axis:500,scatter:600,activeBar:1e3,cursorLine:1100,activeDot:1200,label:2e3},va={allowDecimals:!1,allowDataOverflow:!1,angleAxisId:0,reversed:!1,scale:"auto",tick:!0,type:"auto"},Cr={allowDataOverflow:!1,allowDecimals:!1,allowDuplicatedCategory:!0,includeHidden:!1,radiusAxisId:0,reversed:!1,scale:"auto",tick:!0,tickCount:5,type:"auto"},Sd=(e,t)=>{if(!(!e||!t))return e!=null&&e.reversed?[t[1],t[0]]:t};function jd(e,t,n){if(n!=="auto")return n;if(e!=null)return zr(e,t)?"category":"number"}function oP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Pf(e){for(var t=1;t{if(t!=null)return e.polarAxis.angleAxis[t]},hx=G([hV,YN],(e,t)=>{var n;if(e!=null)return e;var r=(n=jd(t,"angleAxis",lP.type))!==null&&n!==void 0?n:"category";return Pf(Pf({},lP),{},{type:r})}),mV=(e,t)=>e.polarAxis.radiusAxis[t],mx=G([mV,YN],(e,t)=>{var n;if(e!=null)return e;var r=(n=jd(t,"radiusAxis",sP.type))!==null&&n!==void 0?n:"category";return Pf(Pf({},sP),{},{type:r})}),Pd=e=>e.polarOptions,gx=G([di,pi,zt],dq),c_=G([Pd,gx],(e,t)=>{if(e!=null)return gr(e.innerRadius,t,0)}),f_=G([Pd,gx],(e,t)=>{if(e!=null)return gr(e.outerRadius,t,t*.8)}),gV=e=>{if(e==null)return[0,0];var{startAngle:t,endAngle:n}=e;return[t,n]},d_=G([Pd],gV);G([hx,d_],Sd);var p_=G([gx,c_,f_],(e,t,n)=>{if(!(e==null||t==null||n==null))return[t,n]});G([mx,p_],Sd);var h_=G([He,Pd,c_,f_,di,pi],(e,t,n,r,i,a)=>{if(!(e!=="centric"&&e!=="radial"||t==null||n==null||r==null)){var{cx:l,cy:u,startAngle:c,endAngle:f}=t;return{cx:gr(l,i,i/2),cy:gr(u,a,a/2),innerRadius:n,outerRadius:r,startAngle:c,endAngle:f,clockWise:!1}}}),Ft=(e,t)=>t,Ed=(e,t,n)=>n;function Cd(e){return e==null?void 0:e.id}function m_(e,t,n){var{chartData:r=[]}=t,{allowDuplicatedCategory:i,dataKey:a}=n,l=new Map;return e.forEach(u=>{var c,f=(c=u.data)!==null&&c!==void 0?c:r;if(!(f==null||f.length===0)){var d=Cd(u);f.forEach((h,g)=>{var y=a==null||i?g:String(St(h,a,null)),x=St(h,u.dataKey,0),S;l.has(y)?S=l.get(y):S={},Object.assign(S,{[d]:x}),l.set(y,S)})}}),Array.from(l.values())}function Od(e){return"stackId"in e&&e.stackId!=null&&e.dataKey!=null}var Nd=(e,t)=>e===t?!0:e==null||t==null?!1:e[0]===t[0]&&e[1]===t[1];function Ad(e,t){return Array.isArray(e)&&Array.isArray(t)&&e.length===0&&t.length===0?!0:e===t}function vV(e,t){if(e.length===t.length){for(var n=0;n{var t=He(e);return t==="horizontal"?"xAxis":t==="vertical"?"yAxis":t==="centric"?"angleAxis":"radiusAxis"},Vo=e=>e.tooltip.settings.axisId;function yV(e){if(e in es)return es[e]();var t="scale".concat(_s(e));if(t in es)return es[t]()}function uP(e){var t=e.ticks,n=e.bandwidth,r=e.range(),i=[Math.min(...r),Math.max(...r)];return{domain:()=>e.domain(),range:(function(a){function l(){return a.apply(this,arguments)}return l.toString=function(){return a.toString()},l})(()=>i),rangeMin:()=>i[0],rangeMax:()=>i[1],isInRange(a){var l=i[0],u=i[1];return l<=u?a>=l&&a<=u:a>=u&&a<=l},bandwidth:n?()=>n.call(e):void 0,ticks:t?a=>t.call(e,a):void 0,map:(a,l)=>{var u=e(a);if(u!=null){if(e.bandwidth&&l!==null&&l!==void 0&&l.position){var c=e.bandwidth();switch(l.position){case"middle":u+=c/2;break;case"end":u+=c;break}}return u}}}}function cP(e,t,n){if(typeof e=="function")return uP(e.copy().domain(t).range(n));if(e!=null){var r=yV(e);if(r!=null)return r.domain(t).range(n),uP(r)}}var xV=(e,t)=>{if(t!=null)switch(e){case"linear":{if(!si(t)){for(var n,r,i=0;ir)&&(r=a))}return n!==void 0&&r!==void 0?[n,r]:void 0}return t}default:return t}};function fP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Ef(e){for(var t=1;te.cartesianAxis.xAxis[t],gi=(e,t)=>{var n=g_(e,t);return n??Dt},Mt={allowDataOverflow:!1,allowDecimals:!0,allowDuplicatedCategory:!0,angle:0,dataKey:void 0,domain:Av,hide:!0,id:0,includeHidden:!1,interval:"preserveEnd",minTickGap:5,mirror:!1,name:void 0,orientation:"left",padding:{top:0,bottom:0},reversed:!1,scale:"auto",tick:!0,tickCount:5,tickFormatter:void 0,ticks:void 0,type:"number",unit:void 0,width:Ds},v_=(e,t)=>e.cartesianAxis.yAxis[t],vi=(e,t)=>{var n=v_(e,t);return n??Mt},SV={domain:[0,"auto"],includeHidden:!1,reversed:!1,allowDataOverflow:!1,allowDuplicatedCategory:!1,dataKey:void 0,id:0,name:"",range:[64,64],scale:"auto",type:"number",unit:""},vx=(e,t)=>{var n=e.cartesianAxis.zAxis[t];return n??SV},gn=(e,t,n)=>{switch(t){case"xAxis":return gi(e,n);case"yAxis":return vi(e,n);case"zAxis":return vx(e,n);case"angleAxis":return hx(e,n);case"radiusAxis":return mx(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},jV=(e,t,n)=>{switch(t){case"xAxis":return gi(e,n);case"yAxis":return vi(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},Us=(e,t,n)=>{switch(t){case"xAxis":return gi(e,n);case"yAxis":return vi(e,n);case"angleAxis":return hx(e,n);case"radiusAxis":return mx(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},y_=e=>e.graphicalItems.cartesianItems.some(t=>t.type==="bar")||e.graphicalItems.polarItems.some(t=>t.type==="radialBar");function x_(e,t){return n=>{switch(e){case"xAxis":return"xAxisId"in n&&n.xAxisId===t;case"yAxis":return"yAxisId"in n&&n.yAxisId===t;case"zAxis":return"zAxisId"in n&&n.zAxisId===t;case"angleAxis":return"angleAxisId"in n&&n.angleAxisId===t;case"radiusAxis":return"radiusAxisId"in n&&n.radiusAxisId===t;default:return!1}}}var _d=e=>e.graphicalItems.cartesianItems,PV=G([Ft,Ed],x_),b_=(e,t,n)=>e.filter(n).filter(r=>(t==null?void 0:t.includeHidden)===!0?!0:!r.hide),Ws=G([_d,gn,PV],b_,{memoizeOptions:{resultEqualityCheck:Ad}}),w_=G([Ws],e=>e.filter(t=>t.type==="area"||t.type==="bar").filter(Od)),k_=e=>e.filter(t=>!("stackId"in t)||t.stackId===void 0),EV=G([Ws],k_),S_=e=>e.map(t=>t.data).filter(Boolean).flat(1),CV=G([Ws],S_,{memoizeOptions:{resultEqualityCheck:Ad}}),j_=(e,t)=>{var{chartData:n=[],dataStartIndex:r,dataEndIndex:i}=t;return e.length>0?e:n.slice(r,i+1)},yx=G([CV,KA],j_),P_=(e,t,n)=>(t==null?void 0:t.dataKey)!=null?e.map(r=>({value:St(r,t.dataKey)})):n.length>0?n.map(r=>r.dataKey).flatMap(r=>e.map(i=>({value:St(i,r)}))):e.map(r=>({value:r})),Id=G([yx,gn,Ws],P_);function E_(e,t){switch(e){case"xAxis":return t.direction==="x";case"yAxis":return t.direction==="y";default:return!1}}function Mc(e){if(Dr(e)||e instanceof Date){var t=Number(e);if(De(t))return t}}function dP(e){if(Array.isArray(e)){var t=[Mc(e[0]),Mc(e[1])];return si(t)?t:void 0}var n=Mc(e);if(n!=null)return[n,n]}function ui(e){return e.map(Mc).filter(Pn)}function OV(e,t,n){return!n||typeof t!="number"||mr(t)?[]:n.length?ui(n.flatMap(r=>{var i=St(e,r.dataKey),a,l;if(Array.isArray(i)?[a,l]=i:a=l=i,!(!De(a)||!De(l)))return[t-a,t+l]})):[]}var At=e=>{var t=Bt(e),n=Vo(e);return Us(e,t,n)},qs=G([At],e=>e==null?void 0:e.dataKey),NV=G([w_,KA,At],m_),C_=(e,t,n,r)=>{var i={},a=t.reduce((l,u)=>{if(u.stackId==null)return l;var c=l[u.stackId];return c==null&&(c=[]),c.push(u),l[u.stackId]=c,l},i);return Object.fromEntries(Object.entries(a).map(l=>{var[u,c]=l,f=r?[...c].reverse():c,d=f.map(Cd);return[u,{stackedData:i8(e,d,n),graphicalItems:f}]}))},Cf=G([NV,w_,kd,s_],C_),O_=(e,t,n,r)=>{var{dataStartIndex:i,dataEndIndex:a}=t;if(r==null&&n!=="zAxis"){var l=s8(e,i,a);if(!(l!=null&&l[0]===0&&l[1]===0))return l}},AV=G([gn],e=>e.allowDataOverflow),xx=e=>{var t;if(e==null||!("domain"in e))return Av;if(e.domain!=null)return e.domain;if("ticks"in e&&e.ticks!=null){if(e.type==="number"){var n=ui(e.ticks);return[Math.min(...n),Math.max(...n)]}if(e.type==="category")return e.ticks.map(String)}return(t=e==null?void 0:e.domain)!==null&&t!==void 0?t:Av},N_=G([gn],xx),A_=G([N_,AV],YA),_V=G([Cf,mi,Ft,A_],O_,{memoizeOptions:{resultEqualityCheck:Nd}}),bx=e=>e.errorBars,IV=(e,t,n)=>e.flatMap(r=>t[r.id]).filter(Boolean).filter(r=>E_(n,r)),Of=function(){for(var t=arguments.length,n=new Array(t),r=0;r{var a,l;if(n.length>0&&e.forEach(u=>{n.forEach(c=>{var f,d,h=(f=r[c.id])===null||f===void 0?void 0:f.filter(P=>E_(i,P)),g=St(u,(d=t.dataKey)!==null&&d!==void 0?d:c.dataKey),y=OV(u,g,h);if(y.length>=2){var x=Math.min(...y),S=Math.max(...y);(a==null||xl)&&(l=S)}var w=dP(g);w!=null&&(a=a==null?w[0]:Math.min(a,w[0]),l=l==null?w[1]:Math.max(l,w[1]))})}),(t==null?void 0:t.dataKey)!=null&&e.forEach(u=>{var c=dP(St(u,t.dataKey));c!=null&&(a=a==null?c[0]:Math.min(a,c[0]),l=l==null?c[1]:Math.max(l,c[1]))}),De(a)&&De(l))return[a,l]},TV=G([yx,gn,EV,bx,Ft],__,{memoizeOptions:{resultEqualityCheck:Nd}});function DV(e){var{value:t}=e;if(Dr(t)||t instanceof Date)return t}var MV=(e,t,n)=>{var r=e.map(DV).filter(i=>i!=null);return n&&(t.dataKey==null||t.allowDuplicatedCategory&&HO(r))?dA(0,e.length):t.allowDuplicatedCategory?r:Array.from(new Set(r))},I_=e=>e.referenceElements.dots,Ko=(e,t,n)=>e.filter(r=>r.ifOverflow==="extendDomain").filter(r=>t==="xAxis"?r.xAxisId===n:r.yAxisId===n),LV=G([I_,Ft,Ed],Ko),T_=e=>e.referenceElements.areas,RV=G([T_,Ft,Ed],Ko),D_=e=>e.referenceElements.lines,zV=G([D_,Ft,Ed],Ko),M_=(e,t)=>{if(e!=null){var n=ui(e.map(r=>t==="xAxis"?r.x:r.y));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},$V=G(LV,Ft,M_),L_=(e,t)=>{if(e!=null){var n=ui(e.flatMap(r=>[t==="xAxis"?r.x1:r.y1,t==="xAxis"?r.x2:r.y2]));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},FV=G([RV,Ft],L_);function BV(e){var t;if(e.x!=null)return ui([e.x]);var n=(t=e.segment)===null||t===void 0?void 0:t.map(r=>r.x);return n==null||n.length===0?[]:ui(n)}function UV(e){var t;if(e.y!=null)return ui([e.y]);var n=(t=e.segment)===null||t===void 0?void 0:t.map(r=>r.y);return n==null||n.length===0?[]:ui(n)}var R_=(e,t)=>{if(e!=null){var n=e.flatMap(r=>t==="xAxis"?BV(r):UV(r));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},WV=G([zV,Ft],R_),qV=G($V,WV,FV,(e,t,n)=>Of(e,n,t)),z_=(e,t,n,r,i,a,l,u)=>{if(n!=null)return n;var c=l==="vertical"&&u==="xAxis"||l==="horizontal"&&u==="yAxis",f=c?Of(r,a,i):Of(a,i);return tV(t,f,e.allowDataOverflow)},HV=G([gn,N_,A_,_V,TV,qV,He,Ft],z_,{memoizeOptions:{resultEqualityCheck:Nd}}),VV=[0,1],$_=(e,t,n,r,i,a,l)=>{if(!((e==null||n==null||n.length===0)&&l===void 0)){var{dataKey:u,type:c}=e,f=zr(t,a);if(f&&u==null){var d;return dA(0,(d=n==null?void 0:n.length)!==null&&d!==void 0?d:0)}return c==="category"?MV(r,e,f):i==="expand"?VV:l}},wx=G([gn,He,yx,Id,kd,Ft,HV],$_);function KV(e){return e in es}var F_=(e,t,n)=>{if(e!=null){var{scale:r,type:i}=e;if(r==="auto")return i==="category"&&n&&(n.indexOf("LineChart")>=0||n.indexOf("AreaChart")>=0||n.indexOf("ComposedChart")>=0&&!t)?"point":i==="category"?"band":"linear";if(typeof r=="string"){var a="scale".concat(_s(r));return KV(a)?a:"point"}}},Go=G([gn,y_,fx],F_);function kx(e,t,n,r){if(!(n==null||r==null))return typeof e.scale=="function"?cP(e.scale,n,r):cP(t,n,r)}var B_=(e,t,n)=>{var r=xx(t);if(!(n!=="auto"&&n!=="linear")){if(t!=null&&t.tickCount&&Array.isArray(r)&&(r[0]==="auto"||r[1]==="auto")&&si(e))return oV(e,t.tickCount,t.allowDecimals);if(t!=null&&t.tickCount&&t.type==="number"&&si(e))return lV(e,t.tickCount,t.allowDecimals)}},Sx=G([wx,Us,Go],B_),U_=(e,t,n,r)=>{if(r!=="angleAxis"&&(e==null?void 0:e.type)==="number"&&si(t)&&Array.isArray(n)&&n.length>0){var i,a,l=t[0],u=(i=n[0])!==null&&i!==void 0?i:0,c=t[1],f=(a=n[n.length-1])!==null&&a!==void 0?a:0;return[Math.min(l,u),Math.max(c,f)]}return t},GV=G([gn,wx,Sx,Ft],U_),YV=G(Id,gn,(e,t)=>{if(!(!t||t.type!=="number")){var n=1/0,r=Array.from(ui(e.map(h=>h.value))).sort((h,g)=>h-g),i=r[0],a=r[r.length-1];if(i==null||a==null)return 1/0;var l=a-i;if(l===0)return 1/0;for(var u=0;ui,(e,t,n,r,i)=>{if(!De(e))return 0;var a=t==="vertical"?r.height:r.width;if(i==="gap")return e*a/2;if(i==="no-gap"){var l=gr(n,e*a),u=e*a/2;return u-l-(u-l)/a*l}return 0}),XV=(e,t,n)=>{var r=gi(e,t);return r==null||typeof r.padding!="string"?0:W_(e,"xAxis",t,n,r.padding)},QV=(e,t,n)=>{var r=vi(e,t);return r==null||typeof r.padding!="string"?0:W_(e,"yAxis",t,n,r.padding)},ZV=G(gi,XV,(e,t)=>{var n,r;if(e==null)return{left:0,right:0};var{padding:i}=e;return typeof i=="string"?{left:t,right:t}:{left:((n=i.left)!==null&&n!==void 0?n:0)+t,right:((r=i.right)!==null&&r!==void 0?r:0)+t}}),JV=G(vi,QV,(e,t)=>{var n,r;if(e==null)return{top:0,bottom:0};var{padding:i}=e;return typeof i=="string"?{top:t,bottom:t}:{top:((n=i.top)!==null&&n!==void 0?n:0)+t,bottom:((r=i.bottom)!==null&&r!==void 0?r:0)+t}}),eK=G([zt,ZV,ud,sd,(e,t,n)=>n],(e,t,n,r,i)=>{var{padding:a}=r;return i?[a.left,n.width-a.right]:[e.left+t.left,e.left+e.width-t.right]}),tK=G([zt,He,JV,ud,sd,(e,t,n)=>n],(e,t,n,r,i,a)=>{var{padding:l}=i;return a?[r.height-l.bottom,l.top]:t==="horizontal"?[e.top+e.height-n.bottom,e.top+n.top]:[e.top+n.top,e.top+e.height-n.bottom]}),Hs=(e,t,n,r)=>{var i;switch(t){case"xAxis":return eK(e,n,r);case"yAxis":return tK(e,n,r);case"zAxis":return(i=vx(e,n))===null||i===void 0?void 0:i.range;case"angleAxis":return d_(e);case"radiusAxis":return p_(e,n);default:return}},q_=G([gn,Hs],Sd),nK=G([Go,GV],xV),Td=G([gn,Go,nK,q_],kx);G([Ws,bx,Ft],IV);function H_(e,t){return e.idt.id?1:0}var Dd=(e,t)=>t,Md=(e,t,n)=>n,rK=G(od,Dd,Md,(e,t,n)=>e.filter(r=>r.orientation===t).filter(r=>r.mirror===n).sort(H_)),iK=G(ld,Dd,Md,(e,t,n)=>e.filter(r=>r.orientation===t).filter(r=>r.mirror===n).sort(H_)),V_=(e,t)=>({width:e.width,height:t.height}),aK=(e,t)=>{var n=typeof t.width=="number"?t.width:Ds;return{width:n,height:e.height}},K_=G(zt,gi,V_),oK=(e,t,n)=>{switch(t){case"top":return e.top;case"bottom":return n-e.bottom;default:return 0}},lK=(e,t,n)=>{switch(t){case"left":return e.left;case"right":return n-e.right;default:return 0}},sK=G(pi,zt,rK,Dd,Md,(e,t,n,r,i)=>{var a={},l;return n.forEach(u=>{var c=V_(t,u);l==null&&(l=oK(t,r,e));var f=r==="top"&&!i||r==="bottom"&&i;a[u.id]=l-Number(f)*c.height,l+=(f?-1:1)*c.height}),a}),uK=G(di,zt,iK,Dd,Md,(e,t,n,r,i)=>{var a={},l;return n.forEach(u=>{var c=aK(t,u);l==null&&(l=lK(t,r,e));var f=r==="left"&&!i||r==="right"&&i;a[u.id]=l-Number(f)*c.width,l+=(f?-1:1)*c.width}),a}),cK=(e,t)=>{var n=gi(e,t);if(n!=null)return sK(e,n.orientation,n.mirror)},fK=G([zt,gi,cK,(e,t)=>t],(e,t,n,r)=>{if(t!=null){var i=n==null?void 0:n[r];return i==null?{x:e.left,y:0}:{x:e.left,y:i}}}),dK=(e,t)=>{var n=vi(e,t);if(n!=null)return uK(e,n.orientation,n.mirror)},pK=G([zt,vi,dK,(e,t)=>t],(e,t,n,r)=>{if(t!=null){var i=n==null?void 0:n[r];return i==null?{x:0,y:e.top}:{x:i,y:e.top}}}),G_=G(zt,vi,(e,t)=>{var n=typeof t.width=="number"?t.width:Ds;return{width:n,height:e.height}}),pP=(e,t,n)=>{switch(t){case"xAxis":return K_(e,n).width;case"yAxis":return G_(e,n).height;default:return}},Y_=(e,t,n,r)=>{if(n!=null){var{allowDuplicatedCategory:i,type:a,dataKey:l}=n,u=zr(e,r),c=t.map(f=>f.value);if(l&&u&&a==="category"&&i&&HO(c))return c}},jx=G([He,Id,gn,Ft],Y_),X_=(e,t,n,r)=>{if(!(n==null||n.dataKey==null)){var{type:i,scale:a}=n,l=zr(e,r);if(l&&(i==="number"||a!=="auto"))return t.map(u=>u.value)}},Px=G([He,Id,Us,Ft],X_),hP=G([He,jV,Go,Td,jx,Px,Hs,Sx,Ft],(e,t,n,r,i,a,l,u,c)=>{if(t!=null){var f=zr(e,c);return{angle:t.angle,interval:t.interval,minTickGap:t.minTickGap,orientation:t.orientation,tick:t.tick,tickCount:t.tickCount,tickFormatter:t.tickFormatter,ticks:t.ticks,type:t.type,unit:t.unit,axisType:c,categoricalDomain:a,duplicateDomain:i,isCategorical:f,niceTicks:u,range:l,realScaleType:n,scale:r}}}),hK=(e,t,n,r,i,a,l,u,c)=>{if(!(t==null||r==null)){var f=zr(e,c),{type:d,ticks:h,tickCount:g}=t,y=n==="scaleBand"&&typeof r.bandwidth=="function"?r.bandwidth()/2:2,x=d==="category"&&r.bandwidth?r.bandwidth()/y:0;x=c==="angleAxis"&&a!=null&&a.length>=2?jn(a[0]-a[1])*2*x:x;var S=h||i;return S?S.map((w,P)=>{var C=l?l.indexOf(w):w,O=r.map(C);return De(O)?{index:P,coordinate:O+x,value:w,offset:x}:null}).filter(Pn):f&&u?u.map((w,P)=>{var C=r.map(w);return De(C)?{coordinate:C+x,value:w,index:P,offset:x}:null}).filter(Pn):r.ticks?r.ticks(g).map((w,P)=>{var C=r.map(w);return De(C)?{coordinate:C+x,value:w,index:P,offset:x}:null}).filter(Pn):r.domain().map((w,P)=>{var C=r.map(w);return De(C)?{coordinate:C+x,value:l?l[w]:w,index:P,offset:x}:null}).filter(Pn)}},Q_=G([He,Us,Go,Td,Sx,Hs,jx,Px,Ft],hK),mK=(e,t,n,r,i,a,l)=>{if(!(t==null||n==null||r==null||r[0]===r[1])){var u=zr(e,l),{tickCount:c}=t,f=0;return f=l==="angleAxis"&&(r==null?void 0:r.length)>=2?jn(r[0]-r[1])*2*f:f,u&&a?a.map((d,h)=>{var g=n.map(d);return De(g)?{coordinate:g+f,value:d,index:h,offset:f}:null}).filter(Pn):n.ticks?n.ticks(c).map((d,h)=>{var g=n.map(d);return De(g)?{coordinate:g+f,value:d,index:h,offset:f}:null}).filter(Pn):n.domain().map((d,h)=>{var g=n.map(d);return De(g)?{coordinate:g+f,value:i?i[d]:d,index:h,offset:f}:null}).filter(Pn)}},Qi=G([He,Us,Td,Hs,jx,Px,Ft],mK),Zi=G(gn,Td,(e,t)=>{if(!(e==null||t==null))return Ef(Ef({},e),{},{scale:t})}),gK=G([gn,Go,wx,q_],kx);G((e,t,n)=>vx(e,n),gK,(e,t)=>{if(!(e==null||t==null))return Ef(Ef({},e),{},{scale:t})});var vK=G([He,od,ld],(e,t,n)=>{switch(e){case"horizontal":return t.some(r=>r.reversed)?"right-to-left":"left-to-right";case"vertical":return n.some(r=>r.reversed)?"bottom-to-top":"top-to-bottom";case"centric":case"radial":return"left-to-right";default:return}}),Z_=e=>e.options.defaultTooltipEventType,J_=e=>e.options.validateTooltipEventTypes;function eI(e,t,n){if(e==null)return t;var r=e?"axis":"item";return n==null?t:n.includes(r)?r:t}function Ex(e,t){var n=Z_(e),r=J_(e);return eI(t,n,r)}function yK(e){return Pe(t=>Ex(t,e))}var tI=(e,t)=>{var n,r=Number(t);if(!(mr(r)||t==null))return r>=0?e==null||(n=e[r])===null||n===void 0?void 0:n.value:void 0},xK=e=>e.tooltip.settings,Hi={active:!1,index:null,dataKey:void 0,graphicalItemId:void 0,coordinate:void 0},bK={itemInteraction:{click:Hi,hover:Hi},axisInteraction:{click:Hi,hover:Hi},keyboardInteraction:Hi,syncInteraction:{active:!1,index:null,dataKey:void 0,label:void 0,coordinate:void 0,sourceViewBox:void 0,graphicalItemId:void 0},tooltipItemPayloads:[],settings:{shared:void 0,trigger:"hover",axisId:0,active:!1,defaultIndex:void 0}},nI=On({name:"tooltip",initialState:bK,reducers:{addTooltipEntrySettings:{reducer(e,t){e.tooltipItemPayloads.push(t.payload)},prepare:at()},replaceTooltipEntrySettings:{reducer(e,t){var{prev:n,next:r}=t.payload,i=hr(e).tooltipItemPayloads.indexOf(n);i>-1&&(e.tooltipItemPayloads[i]=r)},prepare:at()},removeTooltipEntrySettings:{reducer(e,t){var n=hr(e).tooltipItemPayloads.indexOf(t.payload);n>-1&&e.tooltipItemPayloads.splice(n,1)},prepare:at()},setTooltipSettingsState(e,t){e.settings=t.payload},setActiveMouseOverItemIndex(e,t){e.syncInteraction.active=!1,e.keyboardInteraction.active=!1,e.itemInteraction.hover.active=!0,e.itemInteraction.hover.index=t.payload.activeIndex,e.itemInteraction.hover.dataKey=t.payload.activeDataKey,e.itemInteraction.hover.graphicalItemId=t.payload.activeGraphicalItemId,e.itemInteraction.hover.coordinate=t.payload.activeCoordinate},mouseLeaveChart(e){e.itemInteraction.hover.active=!1,e.axisInteraction.hover.active=!1},mouseLeaveItem(e){e.itemInteraction.hover.active=!1},setActiveClickItemIndex(e,t){e.syncInteraction.active=!1,e.itemInteraction.click.active=!0,e.keyboardInteraction.active=!1,e.itemInteraction.click.index=t.payload.activeIndex,e.itemInteraction.click.dataKey=t.payload.activeDataKey,e.itemInteraction.click.graphicalItemId=t.payload.activeGraphicalItemId,e.itemInteraction.click.coordinate=t.payload.activeCoordinate},setMouseOverAxisIndex(e,t){e.syncInteraction.active=!1,e.axisInteraction.hover.active=!0,e.keyboardInteraction.active=!1,e.axisInteraction.hover.index=t.payload.activeIndex,e.axisInteraction.hover.dataKey=t.payload.activeDataKey,e.axisInteraction.hover.coordinate=t.payload.activeCoordinate},setMouseClickAxisIndex(e,t){e.syncInteraction.active=!1,e.keyboardInteraction.active=!1,e.axisInteraction.click.active=!0,e.axisInteraction.click.index=t.payload.activeIndex,e.axisInteraction.click.dataKey=t.payload.activeDataKey,e.axisInteraction.click.coordinate=t.payload.activeCoordinate},setSyncInteraction(e,t){e.syncInteraction=t.payload},setKeyboardInteraction(e,t){e.keyboardInteraction.active=t.payload.active,e.keyboardInteraction.index=t.payload.activeIndex,e.keyboardInteraction.coordinate=t.payload.activeCoordinate}}}),{addTooltipEntrySettings:wK,replaceTooltipEntrySettings:kK,removeTooltipEntrySettings:SK,setTooltipSettingsState:jK,setActiveMouseOverItemIndex:rI,mouseLeaveItem:PK,mouseLeaveChart:iI,setActiveClickItemIndex:EK,setMouseOverAxisIndex:aI,setMouseClickAxisIndex:CK,setSyncInteraction:_v,setKeyboardInteraction:Iv}=nI.actions,OK=nI.reducer;function mP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Pc(e){for(var t=1;t{if(t==null)return Hi;var i=IK(e,t,n);if(i==null)return Hi;if(i.active)return i;if(e.keyboardInteraction.active)return e.keyboardInteraction;if(e.syncInteraction.active&&e.syncInteraction.index!=null)return e.syncInteraction;var a=e.settings.active===!0;if(TK(i)){if(a)return Pc(Pc({},i),{},{active:!0})}else if(r!=null)return{active:!0,coordinate:void 0,dataKey:void 0,index:r,graphicalItemId:void 0};return Pc(Pc({},Hi),{},{coordinate:i.coordinate})};function DK(e){if(typeof e=="number")return Number.isFinite(e)?e:void 0;if(e instanceof Date){var t=e.valueOf();return Number.isFinite(t)?t:void 0}var n=Number(e);return Number.isFinite(n)?n:void 0}function MK(e,t){var n=DK(e),r=t[0],i=t[1];if(n===void 0)return!1;var a=Math.min(r,i),l=Math.max(r,i);return n>=a&&n<=l}function LK(e,t,n){if(n==null||t==null)return!0;var r=St(e,t);return r==null||!si(n)?!0:MK(r,n)}var Cx=(e,t,n,r)=>{var i=e==null?void 0:e.index;if(i==null)return null;var a=Number(i);if(!De(a))return i;var l=0,u=1/0;t.length>0&&(u=t.length-1);var c=Math.max(l,Math.min(a,u)),f=t[c];return f==null||LK(f,n,r)?String(c):null},lI=(e,t,n,r,i,a,l)=>{if(a!=null){var u=l[0],c=u==null?void 0:u.getPosition(a);if(c!=null)return c;var f=i==null?void 0:i[Number(a)];if(f)switch(n){case"horizontal":return{x:f.coordinate,y:(r.top+t)/2};default:return{x:(r.left+e)/2,y:f.coordinate}}}},sI=(e,t,n,r)=>{if(t==="axis")return e.tooltipItemPayloads;if(e.tooltipItemPayloads.length===0)return[];var i;if(n==="hover"?i=e.itemInteraction.hover.graphicalItemId:i=e.itemInteraction.click.graphicalItemId,i==null&&r!=null){var a=e.tooltipItemPayloads[0];return a!=null?[a]:[]}return e.tooltipItemPayloads.filter(l=>{var u;return((u=l.settings)===null||u===void 0?void 0:u.graphicalItemId)===i})},uI=e=>e.options.tooltipPayloadSearcher,Yo=e=>e.tooltip;function gP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function vP(e){for(var t=1;t{if(!(t==null||a==null)){var{chartData:u,computedData:c,dataStartIndex:f,dataEndIndex:d}=n,h=[];return e.reduce((g,y)=>{var x,{dataDefinedOnItem:S,settings:w}=y,P=FK(S,u),C=Array.isArray(P)?RN(P,f,d):P,O=(x=w==null?void 0:w.dataKey)!==null&&x!==void 0?x:r,A=w==null?void 0:w.nameKey,I;if(r&&Array.isArray(C)&&!Array.isArray(C[0])&&l==="axis"?I=VO(C,r,i):I=a(C,t,c,A),Array.isArray(I))I.forEach(L=>{var F=vP(vP({},w),{},{name:L.name,unit:L.unit,color:void 0,fill:void 0});g.push(vS({tooltipEntrySettings:F,dataKey:L.dataKey,payload:L.payload,value:St(L.payload,L.dataKey),name:L.name}))});else{var E;g.push(vS({tooltipEntrySettings:w,dataKey:O,payload:I,value:St(I,O),name:(E=St(I,A))!==null&&E!==void 0?E:w==null?void 0:w.name}))}return g},h)}},Ox=G([At,y_,fx],F_),BK=G([e=>e.graphicalItems.cartesianItems,e=>e.graphicalItems.polarItems],(e,t)=>[...e,...t]),UK=G([Bt,Vo],x_),Xo=G([BK,At,UK],b_,{memoizeOptions:{resultEqualityCheck:Ad}}),WK=G([Xo],e=>e.filter(Od)),qK=G([Xo],S_,{memoizeOptions:{resultEqualityCheck:Ad}}),Qo=G([qK,mi],j_),HK=G([WK,mi,At],m_),Nx=G([Qo,At,Xo],P_),fI=G([At],xx),VK=G([At],e=>e.allowDataOverflow),dI=G([fI,VK],YA),KK=G([Xo],e=>e.filter(Od)),GK=G([HK,KK,kd,s_],C_),YK=G([GK,mi,Bt,dI],O_),XK=G([Xo],k_),QK=G([Qo,At,XK,bx,Bt],__,{memoizeOptions:{resultEqualityCheck:Nd}}),ZK=G([I_,Bt,Vo],Ko),JK=G([ZK,Bt],M_),e7=G([T_,Bt,Vo],Ko),t7=G([e7,Bt],L_),n7=G([D_,Bt,Vo],Ko),r7=G([n7,Bt],R_),i7=G([JK,r7,t7],Of),a7=G([At,fI,dI,YK,QK,i7,He,Bt],z_),Vs=G([At,He,Qo,Nx,kd,Bt,a7],$_),o7=G([Vs,At,Ox],B_),l7=G([At,Vs,o7,Bt],U_),pI=e=>{var t=Bt(e),n=Vo(e),r=!1;return Hs(e,t,n,r)},hI=G([At,pI],Sd),mI=G([At,Ox,l7,hI],kx),s7=G([He,Nx,At,Bt],Y_),u7=G([He,Nx,At,Bt],X_),c7=(e,t,n,r,i,a,l,u)=>{if(t){var{type:c}=t,f=zr(e,u);if(r){var d=n==="scaleBand"&&r.bandwidth?r.bandwidth()/2:2,h=c==="category"&&r.bandwidth?r.bandwidth()/d:0;return h=u==="angleAxis"&&i!=null&&(i==null?void 0:i.length)>=2?jn(i[0]-i[1])*2*h:h,f&&l?l.map((g,y)=>{var x=r.map(g);return De(x)?{coordinate:x+h,value:g,index:y,offset:h}:null}).filter(Pn):r.domain().map((g,y)=>{var x=r.map(g);return De(x)?{coordinate:x+h,value:a?a[g]:g,index:y,offset:h}:null}).filter(Pn)}}},yi=G([He,At,Ox,mI,pI,s7,u7,Bt],c7),Ax=G([Z_,J_,xK],(e,t,n)=>eI(n.shared,e,t)),gI=e=>e.tooltip.settings.trigger,_x=e=>e.tooltip.settings.defaultIndex,Ks=G([Yo,Ax,gI,_x],oI),La=G([Ks,Qo,qs,Vs],Cx),vI=G([yi,La],tI),yI=G([Ks],e=>{if(e)return e.dataKey});G([Ks],e=>{if(e)return e.graphicalItemId});var xI=G([Yo,Ax,gI,_x],sI),f7=G([di,pi,He,zt,yi,_x,xI],lI),d7=G([Ks,f7],(e,t)=>e!=null&&e.coordinate?e.coordinate:t),p7=G([Ks],e=>{var t;return(t=e==null?void 0:e.active)!==null&&t!==void 0?t:!1}),h7=G([xI,La,mi,qs,vI,uI,Ax],cI),m7=G([h7],e=>{if(e!=null){var t=e.map(n=>n.payload).filter(n=>n!=null);return Array.from(new Set(t))}});function yP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function xP(e){for(var t=1;tPe(At),b7=()=>{var e=x7(),t=Pe(yi),n=Pe(mI);return Mo(!e||!n?void 0:xP(xP({},e),{},{scale:n}),t)};function bP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function xo(e){for(var t=1;t{var i=t.find(a=>a&&a.index===n);if(i){if(e==="horizontal")return{x:i.coordinate,y:r.chartY};if(e==="vertical")return{x:r.chartX,y:i.coordinate}}return{x:0,y:0}},P7=(e,t,n,r)=>{var i=t.find(f=>f&&f.index===n);if(i){if(e==="centric"){var a=i.coordinate,{radius:l}=r;return xo(xo(xo({},r),Xt(r.cx,r.cy,l,a)),{},{angle:a,radius:l})}var u=i.coordinate,{angle:c}=r;return xo(xo(xo({},r),Xt(r.cx,r.cy,u,c)),{},{angle:c,radius:u})}return{angle:0,clockWise:!1,cx:0,cy:0,endAngle:0,innerRadius:0,outerRadius:0,radius:0,startAngle:0,x:0,y:0}};function E7(e,t){var{chartX:n,chartY:r}=e;return n>=t.left&&n<=t.left+t.width&&r>=t.top&&r<=t.top+t.height}var bI=(e,t,n,r,i)=>{var a,l=(a=t==null?void 0:t.length)!==null&&a!==void 0?a:0;if(l<=1||e==null)return 0;if(r==="angleAxis"&&i!=null&&Math.abs(Math.abs(i[1]-i[0])-360)<=1e-6)for(var u=0;u0?(c=n[u-1])===null||c===void 0?void 0:c.coordinate:(f=n[l-1])===null||f===void 0?void 0:f.coordinate,x=(d=n[u])===null||d===void 0?void 0:d.coordinate,S=u>=l-1?(h=n[0])===null||h===void 0?void 0:h.coordinate:(g=n[u+1])===null||g===void 0?void 0:g.coordinate,w=void 0;if(!(y==null||x==null||S==null))if(jn(x-y)!==jn(S-x)){var P=[];if(jn(S-x)===jn(i[1]-i[0])){w=S;var C=x+i[1]-i[0];P[0]=Math.min(C,(C+y)/2),P[1]=Math.max(C,(C+y)/2)}else{w=y;var O=S+i[1]-i[0];P[0]=Math.min(x,(O+x)/2),P[1]=Math.max(x,(O+x)/2)}var A=[Math.min(x,(w+x)/2),Math.max(x,(w+x)/2)];if(e>A[0]&&e<=A[1]||e>=P[0]&&e<=P[1]){var I;return(I=n[u])===null||I===void 0?void 0:I.index}}else{var E=Math.min(y,S),L=Math.max(y,S);if(e>(E+x)/2&&e<=(L+x)/2){var F;return(F=n[u])===null||F===void 0?void 0:F.index}}}else if(t)for(var H=0;H(R.coordinate+D.coordinate)/2||H>0&&H(R.coordinate+D.coordinate)/2&&e<=(R.coordinate+W.coordinate)/2)return R.index}}return-1},wI=()=>Pe(fx),Ix=(e,t)=>t,kI=(e,t,n)=>n,Tx=(e,t,n,r)=>r,C7=G(yi,e=>Yf(e,t=>t.coordinate)),Dx=G([Yo,Ix,kI,Tx],oI),Mx=G([Dx,Qo,qs,Vs],Cx),O7=(e,t,n)=>{if(t!=null){var r=Yo(e);return t==="axis"?n==="hover"?r.axisInteraction.hover.dataKey:r.axisInteraction.click.dataKey:n==="hover"?r.itemInteraction.hover.dataKey:r.itemInteraction.click.dataKey}},SI=G([Yo,Ix,kI,Tx],sI),Nf=G([di,pi,He,zt,yi,Tx,SI],lI),N7=G([Dx,Nf],(e,t)=>{var n;return(n=e.coordinate)!==null&&n!==void 0?n:t}),jI=G([yi,Mx],tI),A7=G([SI,Mx,mi,qs,jI,uI,Ix],cI),_7=G([Dx,Mx],(e,t)=>({isActive:e.active&&t!=null,activeIndex:t})),I7=(e,t,n,r,i,a,l)=>{if(!(!e||!n||!r||!i)&&E7(e,l)){var u=u8(e,t),c=bI(u,a,i,n,r),f=j7(t,i,c,e);return{activeIndex:String(c),activeCoordinate:f}}},T7=(e,t,n,r,i,a,l)=>{if(!(!e||!r||!i||!a||!n)){var u=vq(e,n);if(u){var c=c8(u,t),f=bI(c,l,a,r,i),d=P7(t,a,f,u);return{activeIndex:String(f),activeCoordinate:d}}}},D7=(e,t,n,r,i,a,l,u)=>{if(!(!e||!t||!r||!i||!a))return t==="horizontal"||t==="vertical"?I7(e,t,r,i,a,l,u):T7(e,t,n,r,i,a,l)},M7=G(e=>e.zIndex.zIndexMap,(e,t)=>t,(e,t,n)=>n,(e,t,n)=>{if(t!=null){var r=e[t];if(r!=null)return n?r.panoramaElement:r.element}}),L7=G(e=>e.zIndex.zIndexMap,e=>{var t=Object.keys(e).map(r=>parseInt(r,10)).concat(Object.values(Rt)),n=Array.from(new Set(t));return n.sort((r,i)=>r-i)},{memoizeOptions:{resultEqualityCheck:vV}});function wP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function kP(e){for(var t=1;tkP(kP({},e),{},{[t]:{element:void 0,panoramaElement:void 0,consumers:0}}),F7)},U7=new Set(Object.values(Rt));function W7(e){return U7.has(e)}var PI=On({name:"zIndex",initialState:B7,reducers:{registerZIndexPortal:{reducer:(e,t)=>{var{zIndex:n}=t.payload;e.zIndexMap[n]?e.zIndexMap[n].consumers+=1:e.zIndexMap[n]={consumers:1,element:void 0,panoramaElement:void 0}},prepare:at()},unregisterZIndexPortal:{reducer:(e,t)=>{var{zIndex:n}=t.payload;e.zIndexMap[n]&&(e.zIndexMap[n].consumers-=1,e.zIndexMap[n].consumers<=0&&!W7(n)&&delete e.zIndexMap[n])},prepare:at()},registerZIndexPortalElement:{reducer:(e,t)=>{var{zIndex:n,element:r,isPanorama:i}=t.payload;e.zIndexMap[n]?i?e.zIndexMap[n].panoramaElement=r:e.zIndexMap[n].element=r:e.zIndexMap[n]={consumers:0,element:i?void 0:r,panoramaElement:i?r:void 0}},prepare:at()},unregisterZIndexPortalElement:{reducer:(e,t)=>{var{zIndex:n}=t.payload;e.zIndexMap[n]&&(t.payload.isPanorama?e.zIndexMap[n].panoramaElement=void 0:e.zIndexMap[n].element=void 0)},prepare:at()}}}),{registerZIndexPortal:q7,unregisterZIndexPortal:H7,registerZIndexPortalElement:V7,unregisterZIndexPortalElement:K7}=PI.actions,G7=PI.reducer;function nr(e){var{zIndex:t,children:n}=e,r=U8(),i=r&&t!==void 0&&t!==0,a=on(),l=yt();k.useLayoutEffect(()=>i?(l(q7({zIndex:t})),()=>{l(H7({zIndex:t}))}):Fa,[l,t,i]);var u=Pe(c=>M7(c,t,a));return i?u?CO.createPortal(n,u):null:n}function Tv(){return Tv=Object.assign?Object.assign.bind():function(e){for(var t=1;tk.useContext(EI),hg={exports:{}},jP;function nG(){return jP||(jP=1,(function(e){var t=Object.prototype.hasOwnProperty,n="~";function r(){}Object.create&&(r.prototype=Object.create(null),new r().__proto__||(n=!1));function i(c,f,d){this.fn=c,this.context=f,this.once=d||!1}function a(c,f,d,h,g){if(typeof d!="function")throw new TypeError("The listener must be a function");var y=new i(d,h||c,g),x=n?n+f:f;return c._events[x]?c._events[x].fn?c._events[x]=[c._events[x],y]:c._events[x].push(y):(c._events[x]=y,c._eventsCount++),c}function l(c,f){--c._eventsCount===0?c._events=new r:delete c._events[f]}function u(){this._events=new r,this._eventsCount=0}u.prototype.eventNames=function(){var f=[],d,h;if(this._eventsCount===0)return f;for(h in d=this._events)t.call(d,h)&&f.push(n?h.slice(1):h);return Object.getOwnPropertySymbols?f.concat(Object.getOwnPropertySymbols(d)):f},u.prototype.listeners=function(f){var d=n?n+f:f,h=this._events[d];if(!h)return[];if(h.fn)return[h.fn];for(var g=0,y=h.length,x=new Array(y);g{if(t&&Array.isArray(e)){var n=Number.parseInt(t,10);if(!mr(n))return e[n]}},aG={chartName:"",tooltipPayloadSearcher:()=>{},eventEmitter:void 0,defaultTooltipEventType:"axis"},OI=On({name:"options",initialState:aG,reducers:{createEventEmitter:e=>{e.eventEmitter==null&&(e.eventEmitter=Symbol("rechartsEventEmitter"))}}}),oG=OI.reducer,{createEventEmitter:lG}=OI.actions;function sG(e){return e.tooltip.syncInteraction}var uG={chartData:void 0,computedData:void 0,dataStartIndex:0,dataEndIndex:0},NI=On({name:"chartData",initialState:uG,reducers:{setChartData(e,t){if(e.chartData=t.payload,t.payload==null){e.dataStartIndex=0,e.dataEndIndex=0;return}t.payload.length>0&&e.dataEndIndex!==t.payload.length-1&&(e.dataEndIndex=t.payload.length-1)},setComputedData(e,t){e.computedData=t.payload},setDataStartEndIndexes(e,t){var{startIndex:n,endIndex:r}=t.payload;n!=null&&(e.dataStartIndex=n),r!=null&&(e.dataEndIndex=r)}}}),{setChartData:EP,setDataStartEndIndexes:cG,setComputedData:Rte}=NI.actions,fG=NI.reducer,dG=["x","y"];function CP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function bo(e){for(var t=1;tc.rootProps.className);k.useEffect(()=>{if(e==null)return Fa;var c=(f,d,h)=>{if(t!==h&&e===f){if(r==="index"){var g;if(l&&d!==null&&d!==void 0&&(g=d.payload)!==null&&g!==void 0&&g.coordinate&&d.payload.sourceViewBox){var y=d.payload.coordinate,{x,y:S}=y,w=gG(y,dG),{x:P,y:C,width:O,height:A}=d.payload.sourceViewBox,I=bo(bo({},w),{},{x:l.x+(O?(x-P)/O:0)*l.width,y:l.y+(A?(S-C)/A:0)*l.height});n(bo(bo({},d),{},{payload:bo(bo({},d.payload),{},{coordinate:I})}))}else n(d);return}if(i!=null){var E;if(typeof r=="function"){var L={activeTooltipIndex:d.payload.index==null?void 0:Number(d.payload.index),isTooltipActive:d.payload.active,activeIndex:d.payload.index==null?void 0:Number(d.payload.index),activeLabel:d.payload.label,activeDataKey:d.payload.dataKey,activeCoordinate:d.payload.coordinate},F=r(i,L);E=i[F]}else r==="value"&&(E=i.find(pe=>String(pe.value)===d.payload.label));var{coordinate:H}=d.payload;if(E==null||d.payload.active===!1||H==null||l==null){n(_v({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:void 0,graphicalItemId:void 0}));return}var{x:R,y:W}=H,D=Math.min(R,l.x+l.width),Z=Math.min(W,l.y+l.height),Y={x:a==="horizontal"?E.coordinate:D,y:a==="horizontal"?Z:E.coordinate},Q=_v({active:d.payload.active,coordinate:Y,dataKey:d.payload.dataKey,index:String(E.index),label:d.payload.label,sourceViewBox:d.payload.sourceViewBox,graphicalItemId:d.payload.graphicalItemId});n(Q)}}};return js.on(Dv,c),()=>{js.off(Dv,c)}},[u,n,t,e,r,i,a,l])}function xG(){var e=Pe(dx),t=Pe(px),n=yt();k.useEffect(()=>{if(e==null)return Fa;var r=(i,a,l)=>{t!==l&&e===i&&n(cG(a))};return js.on(PP,r),()=>{js.off(PP,r)}},[n,t,e])}function bG(){var e=yt();k.useEffect(()=>{e(lG())},[e]),yG(),xG()}function wG(e,t,n,r,i,a){var l=Pe(y=>O7(y,e,t)),u=Pe(px),c=Pe(dx),f=Pe(u_),d=Pe(sG),h=d==null?void 0:d.active,g=cd();k.useEffect(()=>{if(!h&&c!=null&&u!=null){var y=_v({active:a,coordinate:n,dataKey:l,index:i,label:typeof r=="number"?String(r):r,sourceViewBox:g,graphicalItemId:void 0});js.emit(Dv,c,y,u)}},[h,n,l,i,r,u,c,f,a,g])}function OP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function NP(e){for(var t=1;t{L(jK({shared:C,trigger:O,axisId:E,active:i,defaultIndex:F}))},[L,C,O,E,i,F]);var H=cd(),R=rA(),W=yK(C),{activeIndex:D,isActive:Z}=(t=Pe(Se=>_7(Se,W,O,F)))!==null&&t!==void 0?t:{},Y=Pe(Se=>A7(Se,W,O,F)),Q=Pe(Se=>jI(Se,W,O,F)),pe=Pe(Se=>N7(Se,W,O,F)),de=Y,J=tG(),ae=(n=i??Z)!==null&&n!==void 0?n:!1,[T,$]=Y6([de,ae]),U=W==="axis"?Q:void 0;wG(W,O,pe,U,D,ae);var _=I??J;if(_==null||H==null||W==null)return null;var te=de??AP;ae||(te=AP),f&&te.length&&(te=w6(te.filter(Se=>Se.value!=null&&(Se.hide!==!0||r.includeHidden)),g,PG));var fe=te.length>0,ce=k.createElement(gW,{allowEscapeViewBox:a,animationDuration:l,animationEasing:u,isAnimationActive:d,active:ae,coordinate:pe,hasPayload:fe,offset:h,position:y,reverseDirection:x,useTranslate3d:S,viewBox:H,wrapperStyle:w,lastBoundingBox:T,innerRef:$,hasPortalFromProps:!!I},EG(c,NP(NP({},r),{},{payload:te,label:U,active:ae,activeIndex:D,coordinate:pe,accessibilityLayer:R})));return k.createElement(k.Fragment,null,CO.createPortal(ce,_),ae&&k.createElement(eG,{cursor:P,tooltipEventType:W,coordinate:pe,payload:te,index:D}))}var _I=e=>null;_I.displayName="Cell";function OG(e,t,n){return(t=NG(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function NG(e){var t=AG(e,"string");return typeof t=="symbol"?t:t+""}function AG(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}class _G{constructor(t){OG(this,"cache",new Map),this.maxSize=t}get(t){var n=this.cache.get(t);return n!==void 0&&(this.cache.delete(t),this.cache.set(t,n)),n}set(t,n){if(this.cache.has(t))this.cache.delete(t);else if(this.cache.size>=this.maxSize){var r=this.cache.keys().next().value;r!=null&&this.cache.delete(r)}this.cache.set(t,n)}clear(){this.cache.clear()}size(){return this.cache.size}}function _P(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function IG(e){for(var t=1;t{try{var n=document.getElementById(TP);n||(n=document.createElement("span"),n.setAttribute("id",TP),n.setAttribute("aria-hidden","true"),document.body.appendChild(n)),Object.assign(n.style,RG,t),n.textContent="".concat(e);var r=n.getBoundingClientRect();return{width:r.width,height:r.height}}catch{return{width:0,height:0}}},ls=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(t==null||Rs.isSsr)return{width:0,height:0};if(!II.enableCache)return DP(t,n);var r=zG(t,n),i=IP.get(r);if(i)return i;var a=DP(t,n);return IP.set(r,a),a},TI;function $G(e,t,n){return(t=FG(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function FG(e){var t=BG(e,"string");return typeof t=="symbol"?t:t+""}function BG(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var MP=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([*/])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,LP=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([+-])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,UG=/^px|cm|vh|vw|em|rem|%|mm|in|pt|pc|ex|ch|vmin|vmax|Q$/,WG=/(-?\d+(?:\.\d+)?)([a-zA-Z%]+)?/,qG={cm:96/2.54,mm:96/25.4,pt:96/72,pc:96/6,in:96,Q:96/(2.54*40),px:1},HG=["cm","mm","pt","pc","in","Q","px"];function VG(e){return HG.includes(e)}var jo="NaN";function KG(e,t){return e*qG[t]}class Gt{static parse(t){var n,[,r,i]=(n=WG.exec(t))!==null&&n!==void 0?n:[];return r==null?Gt.NaN:new Gt(parseFloat(r),i??"")}constructor(t,n){this.num=t,this.unit=n,this.num=t,this.unit=n,mr(t)&&(this.unit=""),n!==""&&!UG.test(n)&&(this.num=NaN,this.unit=""),VG(n)&&(this.num=KG(t,n),this.unit="px")}add(t){return this.unit!==t.unit?new Gt(NaN,""):new Gt(this.num+t.num,this.unit)}subtract(t){return this.unit!==t.unit?new Gt(NaN,""):new Gt(this.num-t.num,this.unit)}multiply(t){return this.unit!==""&&t.unit!==""&&this.unit!==t.unit?new Gt(NaN,""):new Gt(this.num*t.num,this.unit||t.unit)}divide(t){return this.unit!==""&&t.unit!==""&&this.unit!==t.unit?new Gt(NaN,""):new Gt(this.num/t.num,this.unit||t.unit)}toString(){return"".concat(this.num).concat(this.unit)}isNaN(){return mr(this.num)}}TI=Gt;$G(Gt,"NaN",new TI(NaN,""));function DI(e){if(e==null||e.includes(jo))return jo;for(var t=e;t.includes("*")||t.includes("/");){var n,[,r,i,a]=(n=MP.exec(t))!==null&&n!==void 0?n:[],l=Gt.parse(r??""),u=Gt.parse(a??""),c=i==="*"?l.multiply(u):l.divide(u);if(c.isNaN())return jo;t=t.replace(MP,c.toString())}for(;t.includes("+")||/.-\d+(?:\.\d+)?/.test(t);){var f,[,d,h,g]=(f=LP.exec(t))!==null&&f!==void 0?f:[],y=Gt.parse(d??""),x=Gt.parse(g??""),S=h==="+"?y.add(x):y.subtract(x);if(S.isNaN())return jo;t=t.replace(LP,S.toString())}return t}var RP=/\(([^()]*)\)/;function GG(e){for(var t=e,n;(n=RP.exec(t))!=null;){var[,r]=n;t=t.replace(RP,DI(r))}return t}function YG(e){var t=e.replace(/\s+/g,"");return t=GG(t),t=DI(t),t}function XG(e){try{return YG(e)}catch{return jo}}function mg(e){var t=XG(e.slice(5,-1));return t===jo?"":t}var QG=["x","y","lineHeight","capHeight","fill","scaleToFit","textAnchor","verticalAnchor"],ZG=["dx","dy","angle","className","breakAll"];function Mv(){return Mv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{children:t,breakAll:n,style:r}=e;try{var i=[];mt(t)||(n?i=t.toString().split(""):i=t.toString().split(MI));var a=i.map(u=>({word:u,width:ls(u,r).width})),l=n?0:ls(" ",r).width;return{wordsWithComputedWidth:a,spaceWidth:l}}catch{return null}};function eY(e){return e==="start"||e==="middle"||e==="end"||e==="inherit"}var RI=(e,t,n,r)=>e.reduce((i,a)=>{var{word:l,width:u}=a,c=i[i.length-1];if(c&&u!=null&&(t==null||r||c.width+u+ne.reduce((t,n)=>t.width>n.width?t:n),tY="…",$P=(e,t,n,r,i,a,l,u)=>{var c=e.slice(0,t),f=LI({breakAll:n,style:r,children:c+tY});if(!f)return[!1,[]];var d=RI(f.wordsWithComputedWidth,a,l,u),h=d.length>i||zI(d).width>Number(a);return[h,d]},nY=(e,t,n,r,i)=>{var{maxLines:a,children:l,style:u,breakAll:c}=e,f=ge(a),d=String(l),h=RI(t,r,n,i);if(!f||i)return h;var g=h.length>a||zI(h).width>Number(r);if(!g)return h;for(var y=0,x=d.length-1,S=0,w;y<=x&&S<=d.length-1;){var P=Math.floor((y+x)/2),C=P-1,[O,A]=$P(d,C,c,u,a,r,n,i),[I]=$P(d,P,c,u,a,r,n,i);if(!O&&!I&&(y=P+1),O&&I&&(x=P-1),!O&&I){w=A;break}S++}return w||h},FP=e=>{var t=mt(e)?[]:e.toString().split(MI);return[{words:t,width:void 0}]},rY=e=>{var{width:t,scaleToFit:n,children:r,style:i,breakAll:a,maxLines:l}=e;if((t||n)&&!Rs.isSsr){var u,c,f=LI({breakAll:a,children:r,style:i});if(f){var{wordsWithComputedWidth:d,spaceWidth:h}=f;u=d,c=h}else return FP(r);return nY({breakAll:a,children:r,maxLines:l,style:i},u,c,t,!!n)}return FP(r)},$I="#808080",iY={angle:0,breakAll:!1,capHeight:"0.71em",fill:$I,lineHeight:"1em",scaleToFit:!1,textAnchor:"start",verticalAnchor:"end",x:0,y:0},Lx=k.forwardRef((e,t)=>{var n=mn(e,iY),{x:r,y:i,lineHeight:a,capHeight:l,fill:u,scaleToFit:c,textAnchor:f,verticalAnchor:d}=n,h=zP(n,QG),g=k.useMemo(()=>rY({breakAll:h.breakAll,children:h.children,maxLines:h.maxLines,scaleToFit:c,style:h.style,width:h.width}),[h.breakAll,h.children,h.maxLines,c,h.style,h.width]),{dx:y,dy:x,angle:S,className:w,breakAll:P}=h,C=zP(h,ZG);if(!Dr(r)||!Dr(i)||g.length===0)return null;var O=Number(r)+(ge(y)?y:0),A=Number(i)+(ge(x)?x:0);if(!De(O)||!De(A))return null;var I;switch(d){case"start":I=mg("calc(".concat(l,")"));break;case"middle":I=mg("calc(".concat((g.length-1)/2," * -").concat(a," + (").concat(l," / 2))"));break;default:I=mg("calc(".concat(g.length-1," * -").concat(a,")"));break}var E=[],L=g[0];if(c&&L!=null){var F=L.width,{width:H}=h;E.push("scale(".concat(ge(H)&&ge(F)?H/F:1,")"))}return S&&E.push("rotate(".concat(S,", ").concat(O,", ").concat(A,")")),E.length&&(C.transform=E.join(" ")),k.createElement("text",Mv({},dn(C),{ref:t,x:O,y:A,className:Ge("recharts-text",w),textAnchor:f,fill:u.includes("url")?$I:u}),g.map((R,W)=>{var D=R.words.join(P?"":" ");return k.createElement("tspan",{x:O,dy:W===0?I:a,key:"".concat(D,"-").concat(W)},D)}))});Lx.displayName="Text";function BP(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Or(e){for(var t=1;t{var{viewBox:t,position:n,offset:r=0,parentViewBox:i}=e,{x:a,y:l,height:u,upperWidth:c,lowerWidth:f}=Ly(t),d=a,h=a+(c-f)/2,g=(d+h)/2,y=(c+f)/2,x=d+c/2,S=u>=0?1:-1,w=S*r,P=S>0?"end":"start",C=S>0?"start":"end",O=c>=0?1:-1,A=O*r,I=O>0?"end":"start",E=O>0?"start":"end",L=i;if(n==="top"){var F={x:d+c/2,y:l-w,horizontalAnchor:"middle",verticalAnchor:P};return L&&(F.height=Math.max(l-L.y,0),F.width=c),F}if(n==="bottom"){var H={x:h+f/2,y:l+u+w,horizontalAnchor:"middle",verticalAnchor:C};return L&&(H.height=Math.max(L.y+L.height-(l+u),0),H.width=f),H}if(n==="left"){var R={x:g-A,y:l+u/2,horizontalAnchor:I,verticalAnchor:"middle"};return L&&(R.width=Math.max(R.x-L.x,0),R.height=u),R}if(n==="right"){var W={x:g+y+A,y:l+u/2,horizontalAnchor:E,verticalAnchor:"middle"};return L&&(W.width=Math.max(L.x+L.width-W.x,0),W.height=u),W}var D=L?{width:y,height:u}:{};return n==="insideLeft"?Or({x:g+A,y:l+u/2,horizontalAnchor:E,verticalAnchor:"middle"},D):n==="insideRight"?Or({x:g+y-A,y:l+u/2,horizontalAnchor:I,verticalAnchor:"middle"},D):n==="insideTop"?Or({x:d+c/2,y:l+w,horizontalAnchor:"middle",verticalAnchor:C},D):n==="insideBottom"?Or({x:h+f/2,y:l+u-w,horizontalAnchor:"middle",verticalAnchor:P},D):n==="insideTopLeft"?Or({x:d+A,y:l+w,horizontalAnchor:E,verticalAnchor:C},D):n==="insideTopRight"?Or({x:d+c-A,y:l+w,horizontalAnchor:I,verticalAnchor:C},D):n==="insideBottomLeft"?Or({x:h+A,y:l+u-w,horizontalAnchor:E,verticalAnchor:P},D):n==="insideBottomRight"?Or({x:h+f-A,y:l+u-w,horizontalAnchor:I,verticalAnchor:P},D):n&&typeof n=="object"&&(ge(n.x)||_a(n.x))&&(ge(n.y)||_a(n.y))?Or({x:a+gr(n.x,y),y:l+gr(n.y,u),horizontalAnchor:"end",verticalAnchor:"end"},D):Or({x,y:l+u/2,horizontalAnchor:"middle",verticalAnchor:"middle"},D)},uY=["labelRef"],cY=["content"];function UP(e,t){if(e==null)return{};var n,r,i=fY(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{var{x:t,y:n,upperWidth:r,lowerWidth:i,width:a,height:l,children:u}=e,c=k.useMemo(()=>({x:t,y:n,upperWidth:r,lowerWidth:i,width:a,height:l}),[t,n,r,i,a,l]);return k.createElement(FI.Provider,{value:c},u)},BI=()=>{var e=k.useContext(FI),t=cd();return e||(t?Ly(t):void 0)},gY=k.createContext(null),vY=()=>{var e=k.useContext(gY),t=Pe(h_);return e||t},yY=e=>{var{value:t,formatter:n}=e,r=mt(e.children)?t:e.children;return typeof n=="function"?n(r):r},Rx=e=>e!=null&&typeof e=="function",xY=(e,t)=>{var n=jn(t-e),r=Math.min(Math.abs(t-e),360);return n*r},bY=(e,t,n,r,i)=>{var{offset:a,className:l}=e,{cx:u,cy:c,innerRadius:f,outerRadius:d,startAngle:h,endAngle:g,clockWise:y}=i,x=(f+d)/2,S=xY(h,g),w=S>=0?1:-1,P,C;switch(t){case"insideStart":P=h+w*a,C=y;break;case"insideEnd":P=g-w*a,C=!y;break;case"end":P=g+w*a,C=y;break;default:throw new Error("Unsupported position ".concat(t))}C=S<=0?C:!C;var O=Xt(u,c,x,P),A=Xt(u,c,x,P+(C?1:-1)*359),I="M".concat(O.x,",").concat(O.y,` A`).concat(x,",").concat(x,",0,1,").concat(C?0:1,`, - `).concat(A.x,",").concat(A.y),E=mt(e.id)?fs("recharts-radial-line-"):e.id;return k.createElement("text",Jr({},r,{dominantBaseline:"central",className:Ge("recharts-radial-bar-label",l)}),k.createElement("defs",null,k.createElement("path",{id:E,d:I})),k.createElement("textPath",{xlinkHref:"#".concat(E)},n))},yY=(e,t,n)=>{var{cx:r,cy:i,innerRadius:a,outerRadius:l,startAngle:u,endAngle:c}=e,f=(u+c)/2;if(n==="outside"){var{x:d,y:p}=Xt(r,i,l+t,f);return{x:d,y:p,textAnchor:d>=r?"start":"end",verticalAnchor:"middle"}}if(n==="center")return{x:r,y:i,textAnchor:"middle",verticalAnchor:"middle"};if(n==="centerTop")return{x:r,y:i,textAnchor:"middle",verticalAnchor:"start"};if(n==="centerBottom")return{x:r,y:i,textAnchor:"middle",verticalAnchor:"end"};var g=(a+l)/2,{x:y,y:x}=Xt(r,i,g,f);return{x:y,y:x,textAnchor:"middle",verticalAnchor:"middle"}},Mc=e=>e!=null&&"cx"in e&&ge(e.cx),xY={angle:0,offset:5,zIndex:Rt.label,position:"middle",textBreakAll:!1};function bY(e){if(!Mc(e))return e;var{cx:t,cy:n,outerRadius:r}=e,i=r*2;return{x:t-r,y:n-r,width:i,upperWidth:i,lowerWidth:i,height:i}}function qi(e){var t=mn(e,xY),{viewBox:n,parentViewBox:r,position:i,value:a,children:l,content:u,className:c="",textBreakAll:f,labelRef:d}=t,p=pY(),g=FI(),y=i==="center"?g:p??g,x,S,w;n==null?x=y:Mc(n)?x=n:x=My(n);var P=bY(x);if(!x||mt(a)&&mt(l)&&!k.isValidElement(u)&&typeof u!="function")return null;var C=ts(ts({},t),{},{viewBox:x});if(k.isValidElement(u)){var{labelRef:O}=C,A=FP(C,oY);return k.cloneElement(u,A)}if(typeof u=="function"){var{content:I}=C,E=FP(C,lY);if(S=k.createElement(u,E),k.isValidElement(S))return S}else S=mY(t);var L=dn(t);if(Mc(x)){if(i==="insideStart"||i==="insideEnd"||i==="end")return vY(t,i,S,L,x);w=yY(x,t.offset,t.position)}else{if(!P)return null;var F=aY({viewBox:P,position:i,offset:t.offset,parentViewBox:Mc(r)?void 0:r});w=ts(ts({x:F.x,y:F.y,textAnchor:F.horizontalAnchor,verticalAnchor:F.verticalAnchor},F.width!==void 0?{width:F.width}:{}),F.height!==void 0?{height:F.height}:{})}return k.createElement(rr,{zIndex:t.zIndex},k.createElement(Mx,Jr({ref:d,className:Ge("recharts-label",c)},L,w,{textAnchor:QG(L.textAnchor)?L.textAnchor:w.textAnchor,breakAll:f}),S))}qi.displayName="Label";var wY=(e,t,n)=>{if(!e)return null;var r={viewBox:t,labelRef:n};return e===!0?k.createElement(qi,Jr({key:"label-implicit"},r)):Dr(e)?k.createElement(qi,Jr({key:"label-implicit",value:e},r)):k.isValidElement(e)?e.type===qi?k.cloneElement(e,ts({key:"label-implicit"},r)):k.createElement(qi,Jr({key:"label-implicit",content:e},r)):Dx(e)?k.createElement(qi,Jr({key:"label-implicit",content:e},r)):e&&typeof e=="object"?k.createElement(qi,Jr({},e,{key:"label-implicit"},r)):null};function kY(e){var{label:t,labelRef:n}=e,r=FI();return wY(t,r,n)||null}var pg={},mg={},UP;function SY(){return UP||(UP=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n[n.length-1]}e.last=t})(mg)),mg}var gg={},WP;function jY(){return WP||(WP=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return Array.isArray(n)?n:Array.from(n)}e.toArray=t})(gg)),gg}var qP;function PY(){return qP||(qP=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=SY(),n=jY(),r=Sy();function i(a){if(r.isArrayLike(a))return t.last(n.toArray(a))}e.last=i})(pg)),pg}var vg,HP;function EY(){return HP||(HP=1,vg=PY().last),vg}var CY=EY();const OY=xr(CY);var NY=["valueAccessor"],AY=["dataKey","clockWise","id","textBreakAll","zIndex"];function Of(){return Of=Object.assign?Object.assign.bind():function(e){for(var t=1;tArray.isArray(e.value)?OY(e.value):e.value,BI=k.createContext(void 0),UI=BI.Provider,WI=k.createContext(void 0);WI.Provider;function TY(){return k.useContext(BI)}function MY(){return k.useContext(WI)}function Dc(e){var{valueAccessor:t=IY}=e,n=VP(e,NY),{dataKey:r,clockWise:i,id:a,textBreakAll:l,zIndex:u}=n,c=VP(n,AY),f=TY(),d=MY(),p=f||d;return!p||!p.length?null:k.createElement(rr,{zIndex:u??Rt.label},k.createElement(hn,{className:"recharts-label-list"},p.map((g,y)=>{var x,S=mt(r)?t(g,y):St(g.payload,r),w=mt(a)?{}:{id:"".concat(a,"-").concat(y)};return k.createElement(qi,Of({key:"label-".concat(y)},dn(g),c,w,{fill:(x=n.fill)!==null&&x!==void 0?x:g.fill,parentViewBox:g.parentViewBox,value:S,textBreakAll:l,viewBox:g.viewBox,index:y,zIndex:0}))})))}Dc.displayName="LabelList";function qI(e){var{label:t}=e;return t?t===!0?k.createElement(Dc,{key:"labelList-implicit"}):k.isValidElement(t)||Dx(t)?k.createElement(Dc,{key:"labelList-implicit",content:t}):typeof t=="object"?k.createElement(Dc,Of({key:"labelList-implicit"},t,{type:String(t.type)})):null:null}function Mv(){return Mv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{cx:t,cy:n,r,className:i}=e,a=Ge("recharts-dot",i);return ge(t)&&ge(n)&&ge(r)?k.createElement("circle",Mv({},Jn(e),wy(e),{className:a,cx:t,cy:n,r})):null},DY={radiusAxis:{},angleAxis:{}},VI=On({name:"polarAxis",initialState:DY,reducers:{addRadiusAxis(e,t){e.radiusAxis[t.payload.id]=t.payload},removeRadiusAxis(e,t){delete e.radiusAxis[t.payload.id]},addAngleAxis(e,t){e.angleAxis[t.payload.id]=t.payload},removeAngleAxis(e,t){delete e.angleAxis[t.payload.id]}}}),{addRadiusAxis:Lte,removeRadiusAxis:Rte,addAngleAxis:zte,removeAngleAxis:$te}=VI.actions,LY=VI.reducer;function RY(e){return e&&typeof e=="object"&&"className"in e&&typeof e.className=="string"?e.className:""}var yg={exports:{}},qe={};/** + `).concat(A.x,",").concat(A.y),E=mt(e.id)?fs("recharts-radial-line-"):e.id;return k.createElement("text",Jr({},r,{dominantBaseline:"central",className:Ge("recharts-radial-bar-label",l)}),k.createElement("defs",null,k.createElement("path",{id:E,d:I})),k.createElement("textPath",{xlinkHref:"#".concat(E)},n))},wY=(e,t,n)=>{var{cx:r,cy:i,innerRadius:a,outerRadius:l,startAngle:u,endAngle:c}=e,f=(u+c)/2;if(n==="outside"){var{x:d,y:h}=Xt(r,i,l+t,f);return{x:d,y:h,textAnchor:d>=r?"start":"end",verticalAnchor:"middle"}}if(n==="center")return{x:r,y:i,textAnchor:"middle",verticalAnchor:"middle"};if(n==="centerTop")return{x:r,y:i,textAnchor:"middle",verticalAnchor:"start"};if(n==="centerBottom")return{x:r,y:i,textAnchor:"middle",verticalAnchor:"end"};var g=(a+l)/2,{x:y,y:x}=Xt(r,i,g,f);return{x:y,y:x,textAnchor:"middle",verticalAnchor:"middle"}},Lc=e=>e!=null&&"cx"in e&&ge(e.cx),kY={angle:0,offset:5,zIndex:Rt.label,position:"middle",textBreakAll:!1};function SY(e){if(!Lc(e))return e;var{cx:t,cy:n,outerRadius:r}=e,i=r*2;return{x:t-r,y:n-r,width:i,upperWidth:i,lowerWidth:i,height:i}}function qi(e){var t=mn(e,kY),{viewBox:n,parentViewBox:r,position:i,value:a,children:l,content:u,className:c="",textBreakAll:f,labelRef:d}=t,h=vY(),g=BI(),y=i==="center"?g:h??g,x,S,w;n==null?x=y:Lc(n)?x=n:x=Ly(n);var P=SY(x);if(!x||mt(a)&&mt(l)&&!k.isValidElement(u)&&typeof u!="function")return null;var C=ts(ts({},t),{},{viewBox:x});if(k.isValidElement(u)){var{labelRef:O}=C,A=UP(C,uY);return k.cloneElement(u,A)}if(typeof u=="function"){var{content:I}=C,E=UP(C,cY);if(S=k.createElement(u,E),k.isValidElement(S))return S}else S=yY(t);var L=dn(t);if(Lc(x)){if(i==="insideStart"||i==="insideEnd"||i==="end")return bY(t,i,S,L,x);w=wY(x,t.offset,t.position)}else{if(!P)return null;var F=sY({viewBox:P,position:i,offset:t.offset,parentViewBox:Lc(r)?void 0:r});w=ts(ts({x:F.x,y:F.y,textAnchor:F.horizontalAnchor,verticalAnchor:F.verticalAnchor},F.width!==void 0?{width:F.width}:{}),F.height!==void 0?{height:F.height}:{})}return k.createElement(nr,{zIndex:t.zIndex},k.createElement(Lx,Jr({ref:d,className:Ge("recharts-label",c)},L,w,{textAnchor:eY(L.textAnchor)?L.textAnchor:w.textAnchor,breakAll:f}),S))}qi.displayName="Label";var jY=(e,t,n)=>{if(!e)return null;var r={viewBox:t,labelRef:n};return e===!0?k.createElement(qi,Jr({key:"label-implicit"},r)):Dr(e)?k.createElement(qi,Jr({key:"label-implicit",value:e},r)):k.isValidElement(e)?e.type===qi?k.cloneElement(e,ts({key:"label-implicit"},r)):k.createElement(qi,Jr({key:"label-implicit",content:e},r)):Rx(e)?k.createElement(qi,Jr({key:"label-implicit",content:e},r)):e&&typeof e=="object"?k.createElement(qi,Jr({},e,{key:"label-implicit"},r)):null};function PY(e){var{label:t,labelRef:n}=e,r=BI();return jY(t,r,n)||null}var gg={},vg={},qP;function EY(){return qP||(qP=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n[n.length-1]}e.last=t})(vg)),vg}var yg={},HP;function CY(){return HP||(HP=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return Array.isArray(n)?n:Array.from(n)}e.toArray=t})(yg)),yg}var VP;function OY(){return VP||(VP=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=EY(),n=CY(),r=Py();function i(a){if(r.isArrayLike(a))return t.last(n.toArray(a))}e.last=i})(gg)),gg}var xg,KP;function NY(){return KP||(KP=1,xg=OY().last),xg}var AY=NY();const _Y=yr(AY);var IY=["valueAccessor"],TY=["dataKey","clockWise","id","textBreakAll","zIndex"];function Af(){return Af=Object.assign?Object.assign.bind():function(e){for(var t=1;tArray.isArray(e.value)?_Y(e.value):e.value,UI=k.createContext(void 0),WI=UI.Provider,qI=k.createContext(void 0);qI.Provider;function LY(){return k.useContext(UI)}function RY(){return k.useContext(qI)}function Rc(e){var{valueAccessor:t=MY}=e,n=GP(e,IY),{dataKey:r,clockWise:i,id:a,textBreakAll:l,zIndex:u}=n,c=GP(n,TY),f=LY(),d=RY(),h=f||d;return!h||!h.length?null:k.createElement(nr,{zIndex:u??Rt.label},k.createElement(pn,{className:"recharts-label-list"},h.map((g,y)=>{var x,S=mt(r)?t(g,y):St(g.payload,r),w=mt(a)?{}:{id:"".concat(a,"-").concat(y)};return k.createElement(qi,Af({key:"label-".concat(y)},dn(g),c,w,{fill:(x=n.fill)!==null&&x!==void 0?x:g.fill,parentViewBox:g.parentViewBox,value:S,textBreakAll:l,viewBox:g.viewBox,index:y,zIndex:0}))})))}Rc.displayName="LabelList";function HI(e){var{label:t}=e;return t?t===!0?k.createElement(Rc,{key:"labelList-implicit"}):k.isValidElement(t)||Rx(t)?k.createElement(Rc,{key:"labelList-implicit",content:t}):typeof t=="object"?k.createElement(Rc,Af({key:"labelList-implicit"},t,{type:String(t.type)})):null:null}function Lv(){return Lv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{cx:t,cy:n,r,className:i}=e,a=Ge("recharts-dot",i);return ge(t)&&ge(n)&&ge(r)?k.createElement("circle",Lv({},Zn(e),Sy(e),{className:a,cx:t,cy:n,r})):null},zY={radiusAxis:{},angleAxis:{}},KI=On({name:"polarAxis",initialState:zY,reducers:{addRadiusAxis(e,t){e.radiusAxis[t.payload.id]=t.payload},removeRadiusAxis(e,t){delete e.radiusAxis[t.payload.id]},addAngleAxis(e,t){e.angleAxis[t.payload.id]=t.payload},removeAngleAxis(e,t){delete e.angleAxis[t.payload.id]}}}),{addRadiusAxis:zte,removeRadiusAxis:$te,addAngleAxis:Fte,removeAngleAxis:Bte}=KI.actions,$Y=KI.reducer;function FY(e){return e&&typeof e=="object"&&"className"in e&&typeof e.className=="string"?e.className:""}var bg={exports:{}},qe={};/** * @license React * react-is.production.min.js * @@ -121,7 +121,7 @@ Error generating stack: `+j.message+` * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var KP;function zY(){if(KP)return qe;KP=1;var e=Symbol.for("react.element"),t=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),i=Symbol.for("react.profiler"),a=Symbol.for("react.provider"),l=Symbol.for("react.context"),u=Symbol.for("react.server_context"),c=Symbol.for("react.forward_ref"),f=Symbol.for("react.suspense"),d=Symbol.for("react.suspense_list"),p=Symbol.for("react.memo"),g=Symbol.for("react.lazy"),y=Symbol.for("react.offscreen"),x;x=Symbol.for("react.module.reference");function S(w){if(typeof w=="object"&&w!==null){var P=w.$$typeof;switch(P){case e:switch(w=w.type,w){case n:case i:case r:case f:case d:return w;default:switch(w=w&&w.$$typeof,w){case u:case l:case c:case g:case p:case a:return w;default:return P}}case t:return P}}}return qe.ContextConsumer=l,qe.ContextProvider=a,qe.Element=e,qe.ForwardRef=c,qe.Fragment=n,qe.Lazy=g,qe.Memo=p,qe.Portal=t,qe.Profiler=i,qe.StrictMode=r,qe.Suspense=f,qe.SuspenseList=d,qe.isAsyncMode=function(){return!1},qe.isConcurrentMode=function(){return!1},qe.isContextConsumer=function(w){return S(w)===l},qe.isContextProvider=function(w){return S(w)===a},qe.isElement=function(w){return typeof w=="object"&&w!==null&&w.$$typeof===e},qe.isForwardRef=function(w){return S(w)===c},qe.isFragment=function(w){return S(w)===n},qe.isLazy=function(w){return S(w)===g},qe.isMemo=function(w){return S(w)===p},qe.isPortal=function(w){return S(w)===t},qe.isProfiler=function(w){return S(w)===i},qe.isStrictMode=function(w){return S(w)===r},qe.isSuspense=function(w){return S(w)===f},qe.isSuspenseList=function(w){return S(w)===d},qe.isValidElementType=function(w){return typeof w=="string"||typeof w=="function"||w===n||w===i||w===r||w===f||w===d||w===y||typeof w=="object"&&w!==null&&(w.$$typeof===g||w.$$typeof===p||w.$$typeof===a||w.$$typeof===l||w.$$typeof===c||w.$$typeof===x||w.getModuleId!==void 0)},qe.typeOf=S,qe}var GP;function $Y(){return GP||(GP=1,yg.exports=zY()),yg.exports}var FY=$Y(),YP=e=>typeof e=="string"?e:e?e.displayName||e.name||"Component":"",XP=null,xg=null,KI=e=>{if(e===XP&&Array.isArray(xg))return xg;var t=[];return k.Children.forEach(e,n=>{mt(n)||(FY.isFragment(n)?t=t.concat(KI(n.props.children)):t.push(n))}),xg=t,XP=e,t};function BY(e,t){var n=[],r=[];return Array.isArray(t)?r=t.map(i=>YP(i)):r=[YP(t)],KI(e).forEach(i=>{var a=To(i,"type.displayName")||To(i,"type.name");a&&r.indexOf(a)!==-1&&n.push(i)}),n}var GI=e=>e&&typeof e=="object"&&"clipDot"in e?!!e.clipDot:!0,bg={},QP;function UY(){return QP||(QP=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){var i;if(typeof n!="object"||n==null)return!1;if(Object.getPrototypeOf(n)===null)return!0;if(Object.prototype.toString.call(n)!=="[object Object]"){const a=n[Symbol.toStringTag];return a==null||!((i=Object.getOwnPropertyDescriptor(n,Symbol.toStringTag))!=null&&i.writable)?!1:n.toString()===`[object ${a}]`}let r=n;for(;Object.getPrototypeOf(r)!==null;)r=Object.getPrototypeOf(r);return Object.getPrototypeOf(n)===r}e.isPlainObject=t})(bg)),bg}var wg,ZP;function WY(){return ZP||(ZP=1,wg=UY().isPlainObject),wg}var qY=WY();const HY=xr(qY);var JP,eE,tE,nE,rE;function iE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function aE(e){for(var t=1;t{var a=n-r,l;return l=pt(JP||(JP=Xl(["M ",",",""])),e,t),l+=pt(eE||(eE=Xl(["L ",",",""])),e+n,t),l+=pt(tE||(tE=Xl(["L ",",",""])),e+n-a/2,t+i),l+=pt(nE||(nE=Xl(["L ",",",""])),e+n-a/2-r,t+i),l+=pt(rE||(rE=Xl(["L ",","," Z"])),e,t),l},YY={x:0,y:0,upperWidth:0,lowerWidth:0,height:0,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},XY=e=>{var t=mn(e,YY),{x:n,y:r,upperWidth:i,lowerWidth:a,height:l,className:u}=t,{animationEasing:c,animationDuration:f,animationBegin:d,isUpdateAnimationActive:p}=t,g=k.useRef(null),[y,x]=k.useState(-1),S=k.useRef(i),w=k.useRef(a),P=k.useRef(l),C=k.useRef(n),O=k.useRef(r),A=hd(e,"trapezoid-");if(k.useEffect(()=>{if(g.current&&g.current.getTotalLength)try{var Y=g.current.getTotalLength();Y&&x(Y)}catch{}},[]),n!==+n||r!==+r||i!==+i||a!==+a||l!==+l||i===0&&a===0||l===0)return null;var I=Ge("recharts-trapezoid",u);if(!p)return k.createElement("g",null,k.createElement("path",Nf({},dn(t),{className:I,d:oE(n,r,i,a,l)})));var E=S.current,L=w.current,F=P.current,H=C.current,R=O.current,W="0px ".concat(y===-1?1:y,"px"),M="".concat(y,"px 0px"),Z=rA(["strokeDasharray"],f,c);return k.createElement(dd,{animationId:A,key:A,canBegin:y>0,duration:f,easing:c,isActive:p,begin:d},Y=>{var Q=ut(E,i,Y),he=ut(L,a,Y),de=ut(F,l,Y),J=ut(H,n,Y),ae=ut(R,r,Y);g.current&&(S.current=Q,w.current=he,P.current=de,C.current=J,O.current=ae);var T=Y>0?{transition:Z,strokeDasharray:M}:{strokeDasharray:W};return k.createElement("path",Nf({},dn(t),{className:I,d:oE(J,ae,Q,he,de),ref:g,style:aE(aE({},T),t.style)}))})},QY=["option","shapeType","activeClassName"];function ZY(e,t){if(e==null)return{};var n,r,i=JY(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{var r=yt();return(i,a)=>l=>{e==null||e(i,a,l),r(nI({activeIndex:String(a),activeDataKey:t,activeCoordinate:i.tooltipPosition,activeGraphicalItemId:n}))}},XI=e=>{var t=yt();return(n,r)=>i=>{e==null||e(n,r,i),t(kK())}},QI=(e,t,n)=>{var r=yt();return(i,a)=>l=>{e==null||e(i,a,l),r(SK({activeIndex:String(a),activeDataKey:t,activeCoordinate:i.tooltipPosition,activeGraphicalItemId:n}))}};function ZI(e){var{tooltipEntrySettings:t}=e,n=yt(),r=on(),i=k.useRef(null);return k.useLayoutEffect(()=>{r||(i.current===null?n(yK(t)):i.current!==t&&n(xK({prev:i.current,next:t})),i.current=t)},[t,n,r]),k.useLayoutEffect(()=>()=>{i.current&&(n(bK(i.current)),i.current=null)},[n]),null}function JI(e){var{legendPayload:t}=e,n=yt(),r=on(),i=k.useRef(null);return k.useLayoutEffect(()=>{r||(i.current===null?n(Z8(t)):i.current!==t&&n(J8({prev:i.current,next:t})),i.current=t)},[n,r,t]),k.useLayoutEffect(()=>()=>{i.current&&(n(eW(i.current)),i.current=null)},[n]),null}var kg,lX=()=>{var[e]=k.useState(()=>fs("uid-"));return e},sX=(kg=qM.useId)!==null&&kg!==void 0?kg:lX;function uX(e,t){var n=sX();return t||(e?"".concat(e,"-").concat(n):n)}var cX=k.createContext(void 0),eT=e=>{var{id:t,type:n,children:r}=e,i=uX("recharts-".concat(n),t);return k.createElement(cX.Provider,{value:i},r(i))},fX={cartesianItems:[],polarItems:[]},tT=On({name:"graphicalItems",initialState:fX,reducers:{addCartesianGraphicalItem:{reducer(e,t){e.cartesianItems.push(t.payload)},prepare:at()},replaceCartesianGraphicalItem:{reducer(e,t){var{prev:n,next:r}=t.payload,i=mr(e).cartesianItems.indexOf(n);i>-1&&(e.cartesianItems[i]=r)},prepare:at()},removeCartesianGraphicalItem:{reducer(e,t){var n=mr(e).cartesianItems.indexOf(t.payload);n>-1&&e.cartesianItems.splice(n,1)},prepare:at()},addPolarGraphicalItem:{reducer(e,t){e.polarItems.push(t.payload)},prepare:at()},removePolarGraphicalItem:{reducer(e,t){var n=mr(e).polarItems.indexOf(t.payload);n>-1&&e.polarItems.splice(n,1)},prepare:at()}}}),{addCartesianGraphicalItem:dX,replaceCartesianGraphicalItem:hX,removeCartesianGraphicalItem:pX,addPolarGraphicalItem:Fte,removePolarGraphicalItem:Bte}=tT.actions,mX=tT.reducer,gX=e=>{var t=yt(),n=k.useRef(null);return k.useLayoutEffect(()=>{n.current===null?t(dX(e)):n.current!==e&&t(hX({prev:n.current,next:e})),n.current=e},[t,e]),k.useLayoutEffect(()=>()=>{n.current&&(t(pX(n.current)),n.current=null)},[t]),null},nT=k.memo(gX),vX=["points"];function uE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Sg(e){for(var t=1;t{var w,P,C=Sg(Sg(Sg({r:3},l),p),{},{index:S,cx:(w=x.x)!==null&&w!==void 0?w:void 0,cy:(P=x.y)!==null&&P!==void 0?P:void 0,dataKey:a,value:x.value,payload:x.payload,points:t});return k.createElement(SX,{key:"dot-".concat(S),option:n,dotProps:C,className:i})}),y={};return u&&c!=null&&(y.clipPath="url(#clipPath-".concat(d?"":"dots-").concat(c,")")),k.createElement(rr,{zIndex:f},k.createElement(hn,_f({className:r},y),g))}function cE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function fE(e){for(var t=1;t({top:e.top,bottom:e.bottom,left:e.left,right:e.right})),$X=G([zX,di,hi],(e,t,n)=>{if(!(!e||t==null||n==null))return{x:e.left,y:e.top,width:Math.max(0,t-e.left-e.right),height:Math.max(0,n-e.top-e.bottom)}}),Lx=()=>Pe($X),FX=()=>Pe(d7);function dE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function jg(e){for(var t=1;t{var{point:t,childIndex:n,mainColor:r,activeDot:i,dataKey:a,clipPath:l}=e;if(i===!1||t.x==null||t.y==null)return null;var u={index:n,dataKey:a,cx:t.x,cy:t.y,r:4,fill:r??"none",strokeWidth:2,stroke:"#fff",payload:t.payload,value:t.value},c=jg(jg(jg({},u),As(i)),wy(i)),f;return k.isValidElement(i)?f=k.cloneElement(i,c):typeof i=="function"?f=i(c):f=k.createElement(HI,c),k.createElement(hn,{className:"recharts-active-dot",clipPath:l},f)};function hE(e){var{points:t,mainColor:n,activeDot:r,itemDataKey:i,clipPath:a,zIndex:l=Rt.activeDot}=e,u=Pe(La),c=FX();if(t==null||c==null)return null;var f=t.find(d=>c.includes(d.payload));return mt(f)?null:k.createElement(rr,{zIndex:l},k.createElement(qX,{point:f,childIndex:Number(u),mainColor:n,dataKey:i,activeDot:r,clipPath:a}))}var pE=(e,t,n)=>{var r=n??e;if(!mt(r))return vr(r,t,0)},HX=(e,t,n)=>{var r={},i=e.filter(Ed),a=e.filter(f=>f.stackId==null),l=i.reduce((f,d)=>{var p=f[d.stackId];return p==null&&(p=[]),p.push(d),f[d.stackId]=p,f},r),u=Object.entries(l).map(f=>{var d,[p,g]=f,y=g.map(S=>S.dataKey),x=pE(t,n,(d=g[0])===null||d===void 0?void 0:d.barSize);return{stackId:p,dataKeys:y,barSize:x}}),c=a.map(f=>{var d=[f.dataKey].filter(g=>g!=null),p=pE(t,n,f.barSize);return{stackId:void 0,dataKeys:d,barSize:p}});return[...u,...c]};function mE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Pc(e){for(var t=1;tC+(O.barSize||0),0);g+=(l-1)*u,g>=n&&(g-=(l-1)*u,u=0),g>=n&&p>0&&(d=!0,p*=.9,g=l*p);var y=(n-g)/2>>0,x={offset:y-u,size:0};c=r.reduce((C,O)=>{var A,I={stackId:O.stackId,dataKeys:O.dataKeys,position:{offset:x.offset+x.size+u,size:d?p:(A=O.barSize)!==null&&A!==void 0?A:0}},E=[...C,I];return x=I.position,E},f)}else{var S=vr(t,n,0,!0);n-2*S-(l-1)*u<=0&&(u=0);var w=(n-2*S-(l-1)*u)/l;w>1&&(w>>=0);var P=Me(i)?Math.min(w,i):w;c=r.reduce((C,O,A)=>[...C,{stackId:O.stackId,dataKeys:O.dataKeys,position:{offset:S+(w+u)*A+(w-P)/2,size:P}}],f)}return c}}var XX=(e,t,n,r,i,a,l)=>{var u=mt(l)?t:l,c=YX(n,r,i!==a?i:a,e,u);return i!==a&&c!=null&&(c=c.map(f=>Pc(Pc({},f),{},{position:Pc(Pc({},f.position),{},{offset:f.position.offset-i/2})}))),c},QX=(e,t)=>{var n=Pd(t);if(!(!e||n==null||t==null)){var{stackId:r}=t;if(r!=null){var i=e[r];if(i){var{stackedData:a}=i;if(a)return a.find(l=>l.key===n)}}}},ZX=(e,t)=>{if(!(e==null||t==null)){var n=e.find(r=>r.stackId===t.stackId&&t.dataKey!=null&&r.dataKeys.includes(t.dataKey));if(n!=null)return n.position}};function JX(e,t){return e&&typeof e=="object"&&"zIndex"in e&&typeof e.zIndex=="number"&&Me(e.zIndex)?e.zIndex:t}var eQ=e=>{var{chartData:t}=e,n=yt(),r=on();return k.useEffect(()=>r?()=>{}:(n(jP(t)),()=>{n(jP(void 0))}),[t,n,r]),null},gE={x:0,y:0,width:0,height:0,padding:{top:0,right:0,bottom:0,left:0}},aT=On({name:"brush",initialState:gE,reducers:{setBrushSettings(e,t){return t.payload==null?gE:t.payload}}}),{setBrushSettings:Hte}=aT.actions,tQ=aT.reducer;function nQ(e){return(e%180+180)%180}var rQ=function(t){var{width:n,height:r}=t,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=nQ(i),l=a*Math.PI/180,u=Math.atan(r/n),c=l>u&&l{e.dots.push(t.payload)},removeDot:(e,t)=>{var n=mr(e).dots.findIndex(r=>r===t.payload);n!==-1&&e.dots.splice(n,1)},addArea:(e,t)=>{e.areas.push(t.payload)},removeArea:(e,t)=>{var n=mr(e).areas.findIndex(r=>r===t.payload);n!==-1&&e.areas.splice(n,1)},addLine:(e,t)=>{e.lines.push(t.payload)},removeLine:(e,t)=>{var n=mr(e).lines.findIndex(r=>r===t.payload);n!==-1&&e.lines.splice(n,1)}}}),{addDot:Vte,removeDot:Kte,addArea:Gte,removeArea:Yte,addLine:Xte,removeLine:Qte}=oT.actions,aQ=oT.reducer,oQ=k.createContext(void 0),lQ=e=>{var{children:t}=e,[n]=k.useState("".concat(fs("recharts"),"-clip")),r=Lx();if(r==null)return null;var{x:i,y:a,width:l,height:u}=r;return k.createElement(oQ.Provider,{value:n},k.createElement("defs",null,k.createElement("clipPath",{id:n},k.createElement("rect",{x:i,y:a,height:u,width:l}))),t)};function lT(e,t){if(t<1)return[];if(t===1)return e;for(var n=[],r=0;re*i)return!1;var a=n();return e*(t-e*a/2-r)>=0&&e*(t+e*a/2-i)<=0}function cQ(e,t){return lT(e,t+1)}function fQ(e,t,n,r,i){for(var a=(r||[]).slice(),{start:l,end:u}=t,c=0,f=1,d=l,p=function(){var x=r==null?void 0:r[c];if(x===void 0)return{v:lT(r,f)};var S=c,w,P=()=>(w===void 0&&(w=n(x,S)),w),C=x.coordinate,O=c===0||Ps(e,C,P,d,u);O||(c=0,d=l,f+=1),O&&(d=C+e*(P()/2+i),c+=f)},g;f<=a.length;)if(g=p(),g)return g.v;return[]}function dQ(e,t,n,r,i){var a=(r||[]).slice(),l=a.length;if(l===0)return[];for(var{start:u,end:c}=t,f=1;f<=l;f++){for(var d=(l-1)%f,p=u,g=!0,y=function(){var A=r[S];if(A==null)return 0;var I=S,E,L=()=>(E===void 0&&(E=n(A,I)),E),F=A.coordinate,H=S===d||Ps(e,F,L,p,c);if(!H)return g=!1,1;H&&(p=F+e*(L()/2+i))},x,S=d;S(S===void 0&&(S=n(y,g)),S);if(g===l-1){var P=e*(x.coordinate+e*w()/2-c);a[g]=x=tn(tn({},x),{},{tickCoord:P>0?x.coordinate-P*e:x.coordinate})}else a[g]=x=tn(tn({},x),{},{tickCoord:x.coordinate});if(x.tickCoord!=null){var C=Ps(e,x.tickCoord,w,u,c);C&&(c=x.tickCoord-e*(w()/2+i),a[g]=tn(tn({},x),{},{isShow:!0}))}},d=l-1;d>=0;d--)f(d);return a}function vQ(e,t,n,r,i,a){var l=(r||[]).slice(),u=l.length,{start:c,end:f}=t;if(a){var d=r[u-1];if(d!=null){var p=n(d,u-1),g=e*(d.coordinate+e*p/2-f);if(l[u-1]=d=tn(tn({},d),{},{tickCoord:g>0?d.coordinate-g*e:d.coordinate}),d.tickCoord!=null){var y=Ps(e,d.tickCoord,()=>p,c,f);y&&(f=d.tickCoord-e*(p/2+i),l[u-1]=tn(tn({},d),{},{isShow:!0}))}}}for(var x=a?u-1:u,S=function(C){var O=l[C];if(O==null)return 1;var A=O,I,E=()=>(I===void 0&&(I=n(O,C)),I);if(C===0){var L=e*(A.coordinate-e*E()/2-c);l[C]=A=tn(tn({},A),{},{tickCoord:L<0?A.coordinate-L*e:A.coordinate})}else l[C]=A=tn(tn({},A),{},{tickCoord:A.coordinate});if(A.tickCoord!=null){var F=Ps(e,A.tickCoord,E,c,f);F&&(c=A.tickCoord+e*(E()/2+i),l[C]=tn(tn({},A),{},{isShow:!0}))}},w=0;w{var L=typeof f=="function"?f(I.value,E):I.value;return x==="width"?sQ(ls(L,{fontSize:t,letterSpacing:n}),S,p):ls(L,{fontSize:t,letterSpacing:n})[x]},P=i[0],C=i[1],O=i.length>=2&&P!=null&&C!=null?jn(C.coordinate-P.coordinate):1,A=uQ(a,O,x);return c==="equidistantPreserveStart"?fQ(O,A,w,i,l):c==="equidistantPreserveEnd"?dQ(O,A,w,i,l):(c==="preserveStart"||c==="preserveStartEnd"?y=vQ(O,A,w,i,l,c==="preserveStartEnd"):y=gQ(O,A,w,i,l),y.filter(I=>I.isShow))}var yQ=e=>{var{ticks:t,label:n,labelGapWithTick:r=5,tickSize:i=0,tickMargin:a=0}=e,l=0;if(t){Array.from(t).forEach(d=>{if(d){var p=d.getBoundingClientRect();p.width>l&&(l=p.width)}});var u=n?n.getBoundingClientRect().width:0,c=i+a,f=l+c+u+(n?r:0);return Math.round(f)}return 0},xQ=["axisLine","width","height","className","hide","ticks","axisType"];function bQ(e,t){if(e==null)return{};var n,r,i=wQ(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{var{ticks:n=[],tick:r,tickLine:i,stroke:a,tickFormatter:l,unit:u,padding:c,tickTextProps:f,orientation:d,mirror:p,x:g,y,width:x,height:S,tickSize:w,tickMargin:P,fontSize:C,letterSpacing:O,getTicksConfig:A,events:I,axisType:E}=e,L=Rx(ht(ht({},A),{},{ticks:n}),C,O),F=CQ(d,p),H=OQ(d,p),R=Jn(A),W=As(r),M={};typeof i=="object"&&(M=i);var Z=ht(ht({},R),{},{fill:"none"},M),Y=L.map(de=>ht({entry:de},EQ(de,g,y,x,S,d,w,p,P))),Q=Y.map(de=>{var{entry:J,line:ae}=de;return k.createElement(hn,{className:"recharts-cartesian-axis-tick",key:"tick-".concat(J.value,"-").concat(J.coordinate,"-").concat(J.tickCoord)},i&&k.createElement("line",Ra({},Z,ae,{className:Ge("recharts-cartesian-axis-tick-line",To(i,"className"))})))}),he=Y.map((de,J)=>{var ae,T,{entry:$,tick:U}=de,_=ht(ht(ht(ht({verticalAnchor:H},R),{},{textAnchor:F,stroke:"none",fill:a},U),{},{index:J,payload:$,visibleTicksCount:L.length,tickFormatter:l,padding:c},f),{},{angle:(ae=(T=f==null?void 0:f.angle)!==null&&T!==void 0?T:R.angle)!==null&&ae!==void 0?ae:0}),te=ht(ht({},_),W);return k.createElement(hn,Ra({className:"recharts-cartesian-axis-tick-label",key:"tick-label-".concat($.value,"-").concat($.coordinate,"-").concat($.tickCoord)},ky(I,$,J)),r&&k.createElement(NQ,{option:r,tickProps:te,value:"".concat(typeof l=="function"?l($.value,J):$.value).concat(u||"")}))});return k.createElement("g",{className:"recharts-cartesian-axis-ticks recharts-".concat(E,"-ticks")},he.length>0&&k.createElement(rr,{zIndex:Rt.label},k.createElement("g",{className:"recharts-cartesian-axis-tick-labels recharts-".concat(E,"-tick-labels"),ref:t},he)),Q.length>0&&k.createElement("g",{className:"recharts-cartesian-axis-tick-lines recharts-".concat(E,"-tick-lines")},Q))}),_Q=k.forwardRef((e,t)=>{var{axisLine:n,width:r,height:i,className:a,hide:l,ticks:u,axisType:c}=e,f=bQ(e,xQ),[d,p]=k.useState(""),[g,y]=k.useState(""),x=k.useRef(null);k.useImperativeHandle(t,()=>({getCalculatedWidth:()=>{var w;return yQ({ticks:x.current,label:(w=e.labelRef)===null||w===void 0?void 0:w.current,labelGapWithTick:5,tickSize:e.tickSize,tickMargin:e.tickMargin})}}));var S=k.useCallback(w=>{if(w){var P=w.getElementsByClassName("recharts-cartesian-axis-tick-value");x.current=P;var C=P[0];if(C){var O=window.getComputedStyle(C),A=O.fontSize,I=O.letterSpacing;(A!==d||I!==g)&&(p(A),y(I))}}},[d,g]);return l||r!=null&&r<=0||i!=null&&i<=0?null:k.createElement(rr,{zIndex:e.zIndex},k.createElement(hn,{className:Ge("recharts-cartesian-axis",a)},k.createElement(PQ,{x:e.x,y:e.y,width:r,height:i,orientation:e.orientation,mirror:e.mirror,axisLine:n,otherSvgProps:Jn(e)}),k.createElement(AQ,{ref:S,axisType:c,events:f,fontSize:d,getTicksConfig:e,height:e.height,letterSpacing:g,mirror:e.mirror,orientation:e.orientation,padding:e.padding,stroke:e.stroke,tick:e.tick,tickFormatter:e.tickFormatter,tickLine:e.tickLine,tickMargin:e.tickMargin,tickSize:e.tickSize,tickTextProps:e.tickTextProps,ticks:u,unit:e.unit,width:e.width,x:e.x,y:e.y}),k.createElement(dY,{x:e.x,y:e.y,width:e.width,height:e.height,lowerWidth:e.width,upperWidth:e.width},k.createElement(kY,{label:e.label,labelRef:e.labelRef}),e.children)))}),zx=k.forwardRef((e,t)=>{var n=mn(e,ri);return k.createElement(_Q,Ra({},n,{ref:t}))});zx.displayName="CartesianAxis";var IQ=["x1","y1","x2","y2","key"],TQ=["offset"],MQ=["xAxisId","yAxisId"],DQ=["xAxisId","yAxisId"];function xE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function nn(e){for(var t=1;t{var{fill:t}=e;if(!t||t==="none")return null;var{fillOpacity:n,x:r,y:i,width:a,height:l,ry:u}=e;return k.createElement("rect",{x:r,y:i,ry:u,width:a,height:l,stroke:"none",fill:t,fillOpacity:n,className:"recharts-cartesian-grid-bg"})};function sT(e){var{option:t,lineItemProps:n}=e,r;if(k.isValidElement(t))r=k.cloneElement(t,n);else if(typeof t=="function")r=t(n);else{var i,{x1:a,y1:l,x2:u,y2:c,key:f}=n,d=If(n,IQ),p=(i=Jn(d))!==null&&i!==void 0?i:{},{offset:g}=p,y=If(p,TQ);r=k.createElement("line",ja({},y,{x1:a,y1:l,x2:u,y2:c,fill:"none",key:f}))}return r}function BQ(e){var{x:t,width:n,horizontal:r=!0,horizontalPoints:i}=e;if(!r||!i||!i.length)return null;var{xAxisId:a,yAxisId:l}=e,u=If(e,MQ),c=i.map((f,d)=>{var p=nn(nn({},u),{},{x1:t,y1:f,x2:t+n,y2:f,key:"line-".concat(d),index:d});return k.createElement(sT,{key:"line-".concat(d),option:r,lineItemProps:p})});return k.createElement("g",{className:"recharts-cartesian-grid-horizontal"},c)}function UQ(e){var{y:t,height:n,vertical:r=!0,verticalPoints:i}=e;if(!r||!i||!i.length)return null;var{xAxisId:a,yAxisId:l}=e,u=If(e,DQ),c=i.map((f,d)=>{var p=nn(nn({},u),{},{x1:f,y1:t,x2:f,y2:t+n,key:"line-".concat(d),index:d});return k.createElement(sT,{option:r,lineItemProps:p,key:"line-".concat(d)})});return k.createElement("g",{className:"recharts-cartesian-grid-vertical"},c)}function WQ(e){var{horizontalFill:t,fillOpacity:n,x:r,y:i,width:a,height:l,horizontalPoints:u,horizontal:c=!0}=e;if(!c||!t||!t.length||u==null)return null;var f=u.map(p=>Math.round(p+i-i)).sort((p,g)=>p-g);i!==f[0]&&f.unshift(0);var d=f.map((p,g)=>{var y=f[g+1],x=y==null,S=x?i+l-p:y-p;if(S<=0)return null;var w=g%t.length;return k.createElement("rect",{key:"react-".concat(g),y:p,x:r,height:S,width:a,stroke:"none",fill:t[w],fillOpacity:n,className:"recharts-cartesian-grid-bg"})});return k.createElement("g",{className:"recharts-cartesian-gridstripes-horizontal"},d)}function qQ(e){var{vertical:t=!0,verticalFill:n,fillOpacity:r,x:i,y:a,width:l,height:u,verticalPoints:c}=e;if(!t||!n||!n.length)return null;var f=c.map(p=>Math.round(p+i-i)).sort((p,g)=>p-g);i!==f[0]&&f.unshift(0);var d=f.map((p,g)=>{var y=f[g+1],x=y==null,S=x?i+l-p:y-p;if(S<=0)return null;var w=g%n.length;return k.createElement("rect",{key:"react-".concat(g),x:p,y:a,width:S,height:u,stroke:"none",fill:n[w],fillOpacity:r,className:"recharts-cartesian-grid-bg"})});return k.createElement("g",{className:"recharts-cartesian-gridstripes-vertical"},d)}var HQ=(e,t)=>{var{xAxis:n,width:r,height:i,offset:a}=e;return RN(Rx(nn(nn(nn({},ri),n),{},{ticks:zN(n),viewBox:{x:0,y:0,width:r,height:i}})),a.left,a.left+a.width,t)},VQ=(e,t)=>{var{yAxis:n,width:r,height:i,offset:a}=e;return RN(Rx(nn(nn(nn({},ri),n),{},{ticks:zN(n),viewBox:{x:0,y:0,width:r,height:i}})),a.top,a.top+a.height,t)},KQ={horizontal:!0,vertical:!0,horizontalPoints:[],verticalPoints:[],stroke:"#ccc",fill:"none",verticalFill:[],horizontalFill:[],xAxisId:0,yAxisId:0,syncWithTicks:!1,zIndex:Rt.grid};function $x(e){var t=VN(),n=KN(),r=HN(),i=nn(nn({},mn(e,KQ)),{},{x:ge(e.x)?e.x:r.left,y:ge(e.y)?e.y:r.top,width:ge(e.width)?e.width:r.width,height:ge(e.height)?e.height:r.height}),{xAxisId:a,yAxisId:l,x:u,y:c,width:f,height:d,syncWithTicks:p,horizontalValues:g,verticalValues:y}=i,x=on(),S=Pe(H=>dP(H,"xAxis",a,x)),w=Pe(H=>dP(H,"yAxis",l,x));if(!Lr(f)||!Lr(d)||!ge(u)||!ge(c))return null;var P=i.verticalCoordinatesGenerator||HQ,C=i.horizontalCoordinatesGenerator||VQ,{horizontalPoints:O,verticalPoints:A}=i;if((!O||!O.length)&&typeof C=="function"){var I=g&&g.length,E=C({yAxis:w?nn(nn({},w),{},{ticks:I?g:w.ticks}):void 0,width:t??f,height:n??d,offset:r},I?!0:p);nf(Array.isArray(E),"horizontalCoordinatesGenerator should return Array but instead it returned [".concat(typeof E,"]")),Array.isArray(E)&&(O=E)}if((!A||!A.length)&&typeof P=="function"){var L=y&&y.length,F=P({xAxis:S?nn(nn({},S),{},{ticks:L?y:S.ticks}):void 0,width:t??f,height:n??d,offset:r},L?!0:p);nf(Array.isArray(F),"verticalCoordinatesGenerator should return Array but instead it returned [".concat(typeof F,"]")),Array.isArray(F)&&(A=F)}return k.createElement(rr,{zIndex:i.zIndex},k.createElement("g",{className:"recharts-cartesian-grid"},k.createElement(FQ,{fill:i.fill,fillOpacity:i.fillOpacity,x:i.x,y:i.y,width:i.width,height:i.height,ry:i.ry}),k.createElement(WQ,ja({},i,{horizontalPoints:O})),k.createElement(qQ,ja({},i,{verticalPoints:A})),k.createElement(BQ,ja({},i,{offset:r,horizontalPoints:O,xAxis:S,yAxis:w})),k.createElement(UQ,ja({},i,{offset:r,verticalPoints:A,xAxis:S,yAxis:w}))))}$x.displayName="CartesianGrid";var GQ={},uT=On({name:"errorBars",initialState:GQ,reducers:{addErrorBar:(e,t)=>{var{itemId:n,errorBar:r}=t.payload;e[n]||(e[n]=[]),e[n].push(r)},replaceErrorBar:(e,t)=>{var{itemId:n,prev:r,next:i}=t.payload;e[n]&&(e[n]=e[n].map(a=>a.dataKey===r.dataKey&&a.direction===r.direction?i:a))},removeErrorBar:(e,t)=>{var{itemId:n,errorBar:r}=t.payload;e[n]&&(e[n]=e[n].filter(i=>i.dataKey!==r.dataKey||i.direction!==r.direction))}}}),{addErrorBar:Zte,replaceErrorBar:Jte,removeErrorBar:ene}=uT.actions,YQ=uT.reducer,XQ=["children"];function QQ(e,t){if(e==null)return{};var n,r,i=ZQ(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r({x:0,y:0,value:0}),errorBarOffset:0},eZ=k.createContext(JQ);function tZ(e){var{children:t}=e,n=QQ(e,XQ);return k.createElement(eZ.Provider,{value:n},t)}function Fx(e,t){var n,r,i=Pe(f=>gi(f,e)),a=Pe(f=>vi(f,t)),l=(n=i==null?void 0:i.allowDataOverflow)!==null&&n!==void 0?n:Mt.allowDataOverflow,u=(r=a==null?void 0:a.allowDataOverflow)!==null&&r!==void 0?r:Dt.allowDataOverflow,c=l||u;return{needClip:c,needClipX:l,needClipY:u}}function cT(e){var{xAxisId:t,yAxisId:n,clipPathId:r}=e,i=Lx(),{needClipX:a,needClipY:l,needClip:u}=Fx(t,n);if(!u||!i)return null;var{x:c,y:f,width:d,height:p}=i;return k.createElement("clipPath",{id:"clipPath-".concat(r)},k.createElement("rect",{x:a?c:c-d/2,y:l?f:f-p/2,width:a?d:d*2,height:l?p:p*2}))}function nZ(e){var t=As(e),n=3,r=2;if(t!=null){var{r:i,strokeWidth:a}=t,l=Number(i),u=Number(a);return(Number.isNaN(l)||l<0)&&(l=n),(Number.isNaN(u)||u<0)&&(u=r),{r:l,strokeWidth:u}}return{r:n,strokeWidth:r}}var Pg={exports:{}},Eg={};/** + */var YP;function BY(){if(YP)return qe;YP=1;var e=Symbol.for("react.element"),t=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),i=Symbol.for("react.profiler"),a=Symbol.for("react.provider"),l=Symbol.for("react.context"),u=Symbol.for("react.server_context"),c=Symbol.for("react.forward_ref"),f=Symbol.for("react.suspense"),d=Symbol.for("react.suspense_list"),h=Symbol.for("react.memo"),g=Symbol.for("react.lazy"),y=Symbol.for("react.offscreen"),x;x=Symbol.for("react.module.reference");function S(w){if(typeof w=="object"&&w!==null){var P=w.$$typeof;switch(P){case e:switch(w=w.type,w){case n:case i:case r:case f:case d:return w;default:switch(w=w&&w.$$typeof,w){case u:case l:case c:case g:case h:case a:return w;default:return P}}case t:return P}}}return qe.ContextConsumer=l,qe.ContextProvider=a,qe.Element=e,qe.ForwardRef=c,qe.Fragment=n,qe.Lazy=g,qe.Memo=h,qe.Portal=t,qe.Profiler=i,qe.StrictMode=r,qe.Suspense=f,qe.SuspenseList=d,qe.isAsyncMode=function(){return!1},qe.isConcurrentMode=function(){return!1},qe.isContextConsumer=function(w){return S(w)===l},qe.isContextProvider=function(w){return S(w)===a},qe.isElement=function(w){return typeof w=="object"&&w!==null&&w.$$typeof===e},qe.isForwardRef=function(w){return S(w)===c},qe.isFragment=function(w){return S(w)===n},qe.isLazy=function(w){return S(w)===g},qe.isMemo=function(w){return S(w)===h},qe.isPortal=function(w){return S(w)===t},qe.isProfiler=function(w){return S(w)===i},qe.isStrictMode=function(w){return S(w)===r},qe.isSuspense=function(w){return S(w)===f},qe.isSuspenseList=function(w){return S(w)===d},qe.isValidElementType=function(w){return typeof w=="string"||typeof w=="function"||w===n||w===i||w===r||w===f||w===d||w===y||typeof w=="object"&&w!==null&&(w.$$typeof===g||w.$$typeof===h||w.$$typeof===a||w.$$typeof===l||w.$$typeof===c||w.$$typeof===x||w.getModuleId!==void 0)},qe.typeOf=S,qe}var XP;function UY(){return XP||(XP=1,bg.exports=BY()),bg.exports}var WY=UY(),QP=e=>typeof e=="string"?e:e?e.displayName||e.name||"Component":"",ZP=null,wg=null,GI=e=>{if(e===ZP&&Array.isArray(wg))return wg;var t=[];return k.Children.forEach(e,n=>{mt(n)||(WY.isFragment(n)?t=t.concat(GI(n.props.children)):t.push(n))}),wg=t,ZP=e,t};function qY(e,t){var n=[],r=[];return Array.isArray(t)?r=t.map(i=>QP(i)):r=[QP(t)],GI(e).forEach(i=>{var a=To(i,"type.displayName")||To(i,"type.name");a&&r.indexOf(a)!==-1&&n.push(i)}),n}var YI=e=>e&&typeof e=="object"&&"clipDot"in e?!!e.clipDot:!0,kg={},JP;function HY(){return JP||(JP=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){var i;if(typeof n!="object"||n==null)return!1;if(Object.getPrototypeOf(n)===null)return!0;if(Object.prototype.toString.call(n)!=="[object Object]"){const a=n[Symbol.toStringTag];return a==null||!((i=Object.getOwnPropertyDescriptor(n,Symbol.toStringTag))!=null&&i.writable)?!1:n.toString()===`[object ${a}]`}let r=n;for(;Object.getPrototypeOf(r)!==null;)r=Object.getPrototypeOf(r);return Object.getPrototypeOf(n)===r}e.isPlainObject=t})(kg)),kg}var Sg,eE;function VY(){return eE||(eE=1,Sg=HY().isPlainObject),Sg}var KY=VY();const GY=yr(KY);var tE,nE,rE,iE,aE;function oE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function lE(e){for(var t=1;t{var a=n-r,l;return l=ht(tE||(tE=Xl(["M ",",",""])),e,t),l+=ht(nE||(nE=Xl(["L ",",",""])),e+n,t),l+=ht(rE||(rE=Xl(["L ",",",""])),e+n-a/2,t+i),l+=ht(iE||(iE=Xl(["L ",",",""])),e+n-a/2-r,t+i),l+=ht(aE||(aE=Xl(["L ",","," Z"])),e,t),l},ZY={x:0,y:0,upperWidth:0,lowerWidth:0,height:0,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},JY=e=>{var t=mn(e,ZY),{x:n,y:r,upperWidth:i,lowerWidth:a,height:l,className:u}=t,{animationEasing:c,animationDuration:f,animationBegin:d,isUpdateAnimationActive:h}=t,g=k.useRef(null),[y,x]=k.useState(-1),S=k.useRef(i),w=k.useRef(a),P=k.useRef(l),C=k.useRef(n),O=k.useRef(r),A=md(e,"trapezoid-");if(k.useEffect(()=>{if(g.current&&g.current.getTotalLength)try{var Y=g.current.getTotalLength();Y&&x(Y)}catch{}},[]),n!==+n||r!==+r||i!==+i||a!==+a||l!==+l||i===0&&a===0||l===0)return null;var I=Ge("recharts-trapezoid",u);if(!h)return k.createElement("g",null,k.createElement("path",_f({},dn(t),{className:I,d:sE(n,r,i,a,l)})));var E=S.current,L=w.current,F=P.current,H=C.current,R=O.current,W="0px ".concat(y===-1?1:y,"px"),D="".concat(y,"px 0px"),Z=iA(["strokeDasharray"],f,c);return k.createElement(hd,{animationId:A,key:A,canBegin:y>0,duration:f,easing:c,isActive:h,begin:d},Y=>{var Q=ut(E,i,Y),pe=ut(L,a,Y),de=ut(F,l,Y),J=ut(H,n,Y),ae=ut(R,r,Y);g.current&&(S.current=Q,w.current=pe,P.current=de,C.current=J,O.current=ae);var T=Y>0?{transition:Z,strokeDasharray:D}:{strokeDasharray:W};return k.createElement("path",_f({},dn(t),{className:I,d:sE(J,ae,Q,pe,de),ref:g,style:lE(lE({},T),t.style)}))})},eX=["option","shapeType","activeClassName"];function tX(e,t){if(e==null)return{};var n,r,i=nX(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{var r=yt();return(i,a)=>l=>{e==null||e(i,a,l),r(rI({activeIndex:String(a),activeDataKey:t,activeCoordinate:i.tooltipPosition,activeGraphicalItemId:n}))}},QI=e=>{var t=yt();return(n,r)=>i=>{e==null||e(n,r,i),t(PK())}},ZI=(e,t,n)=>{var r=yt();return(i,a)=>l=>{e==null||e(i,a,l),r(EK({activeIndex:String(a),activeDataKey:t,activeCoordinate:i.tooltipPosition,activeGraphicalItemId:n}))}};function JI(e){var{tooltipEntrySettings:t}=e,n=yt(),r=on(),i=k.useRef(null);return k.useLayoutEffect(()=>{r||(i.current===null?n(wK(t)):i.current!==t&&n(kK({prev:i.current,next:t})),i.current=t)},[t,n,r]),k.useLayoutEffect(()=>()=>{i.current&&(n(SK(i.current)),i.current=null)},[n]),null}function eT(e){var{legendPayload:t}=e,n=yt(),r=on(),i=k.useRef(null);return k.useLayoutEffect(()=>{r||(i.current===null?n(tW(t)):i.current!==t&&n(nW({prev:i.current,next:t})),i.current=t)},[n,r,t]),k.useLayoutEffect(()=>()=>{i.current&&(n(rW(i.current)),i.current=null)},[n]),null}var jg,cX=()=>{var[e]=k.useState(()=>fs("uid-"));return e},fX=(jg=HD.useId)!==null&&jg!==void 0?jg:cX;function dX(e,t){var n=fX();return t||(e?"".concat(e,"-").concat(n):n)}var pX=k.createContext(void 0),tT=e=>{var{id:t,type:n,children:r}=e,i=dX("recharts-".concat(n),t);return k.createElement(pX.Provider,{value:i},r(i))},hX={cartesianItems:[],polarItems:[]},nT=On({name:"graphicalItems",initialState:hX,reducers:{addCartesianGraphicalItem:{reducer(e,t){e.cartesianItems.push(t.payload)},prepare:at()},replaceCartesianGraphicalItem:{reducer(e,t){var{prev:n,next:r}=t.payload,i=hr(e).cartesianItems.indexOf(n);i>-1&&(e.cartesianItems[i]=r)},prepare:at()},removeCartesianGraphicalItem:{reducer(e,t){var n=hr(e).cartesianItems.indexOf(t.payload);n>-1&&e.cartesianItems.splice(n,1)},prepare:at()},addPolarGraphicalItem:{reducer(e,t){e.polarItems.push(t.payload)},prepare:at()},removePolarGraphicalItem:{reducer(e,t){var n=hr(e).polarItems.indexOf(t.payload);n>-1&&e.polarItems.splice(n,1)},prepare:at()}}}),{addCartesianGraphicalItem:mX,replaceCartesianGraphicalItem:gX,removeCartesianGraphicalItem:vX,addPolarGraphicalItem:Ute,removePolarGraphicalItem:Wte}=nT.actions,yX=nT.reducer,xX=e=>{var t=yt(),n=k.useRef(null);return k.useLayoutEffect(()=>{n.current===null?t(mX(e)):n.current!==e&&t(gX({prev:n.current,next:e})),n.current=e},[t,e]),k.useLayoutEffect(()=>()=>{n.current&&(t(vX(n.current)),n.current=null)},[t]),null},rT=k.memo(xX),bX=["points"];function fE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Pg(e){for(var t=1;t{var w,P,C=Pg(Pg(Pg({r:3},l),h),{},{index:S,cx:(w=x.x)!==null&&w!==void 0?w:void 0,cy:(P=x.y)!==null&&P!==void 0?P:void 0,dataKey:a,value:x.value,payload:x.payload,points:t});return k.createElement(EX,{key:"dot-".concat(S),option:n,dotProps:C,className:i})}),y={};return u&&c!=null&&(y.clipPath="url(#clipPath-".concat(d?"":"dots-").concat(c,")")),k.createElement(nr,{zIndex:f},k.createElement(pn,Tf({className:r},y),g))}function dE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function pE(e){for(var t=1;t({top:e.top,bottom:e.bottom,left:e.left,right:e.right})),UX=G([BX,di,pi],(e,t,n)=>{if(!(!e||t==null||n==null))return{x:e.left,y:e.top,width:Math.max(0,t-e.left-e.right),height:Math.max(0,n-e.top-e.bottom)}}),zx=()=>Pe(UX),WX=()=>Pe(m7);function hE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Eg(e){for(var t=1;t{var{point:t,childIndex:n,mainColor:r,activeDot:i,dataKey:a,clipPath:l}=e;if(i===!1||t.x==null||t.y==null)return null;var u={index:n,dataKey:a,cx:t.x,cy:t.y,r:4,fill:r??"none",strokeWidth:2,stroke:"#fff",payload:t.payload,value:t.value},c=Eg(Eg(Eg({},u),As(i)),Sy(i)),f;return k.isValidElement(i)?f=k.cloneElement(i,c):typeof i=="function"?f=i(c):f=k.createElement(VI,c),k.createElement(pn,{className:"recharts-active-dot",clipPath:l},f)};function mE(e){var{points:t,mainColor:n,activeDot:r,itemDataKey:i,clipPath:a,zIndex:l=Rt.activeDot}=e,u=Pe(La),c=WX();if(t==null||c==null)return null;var f=t.find(d=>c.includes(d.payload));return mt(f)?null:k.createElement(nr,{zIndex:l},k.createElement(KX,{point:f,childIndex:Number(u),mainColor:n,dataKey:i,activeDot:r,clipPath:a}))}var gE=(e,t,n)=>{var r=n??e;if(!mt(r))return gr(r,t,0)},GX=(e,t,n)=>{var r={},i=e.filter(Od),a=e.filter(f=>f.stackId==null),l=i.reduce((f,d)=>{var h=f[d.stackId];return h==null&&(h=[]),h.push(d),f[d.stackId]=h,f},r),u=Object.entries(l).map(f=>{var d,[h,g]=f,y=g.map(S=>S.dataKey),x=gE(t,n,(d=g[0])===null||d===void 0?void 0:d.barSize);return{stackId:h,dataKeys:y,barSize:x}}),c=a.map(f=>{var d=[f.dataKey].filter(g=>g!=null),h=gE(t,n,f.barSize);return{stackId:void 0,dataKeys:d,barSize:h}});return[...u,...c]};function vE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Cc(e){for(var t=1;tC+(O.barSize||0),0);g+=(l-1)*u,g>=n&&(g-=(l-1)*u,u=0),g>=n&&h>0&&(d=!0,h*=.9,g=l*h);var y=(n-g)/2>>0,x={offset:y-u,size:0};c=r.reduce((C,O)=>{var A,I={stackId:O.stackId,dataKeys:O.dataKeys,position:{offset:x.offset+x.size+u,size:d?h:(A=O.barSize)!==null&&A!==void 0?A:0}},E=[...C,I];return x=I.position,E},f)}else{var S=gr(t,n,0,!0);n-2*S-(l-1)*u<=0&&(u=0);var w=(n-2*S-(l-1)*u)/l;w>1&&(w>>=0);var P=De(i)?Math.min(w,i):w;c=r.reduce((C,O,A)=>[...C,{stackId:O.stackId,dataKeys:O.dataKeys,position:{offset:S+(w+u)*A+(w-P)/2,size:P}}],f)}return c}}var JX=(e,t,n,r,i,a,l)=>{var u=mt(l)?t:l,c=ZX(n,r,i!==a?i:a,e,u);return i!==a&&c!=null&&(c=c.map(f=>Cc(Cc({},f),{},{position:Cc(Cc({},f.position),{},{offset:f.position.offset-i/2})}))),c},eQ=(e,t)=>{var n=Cd(t);if(!(!e||n==null||t==null)){var{stackId:r}=t;if(r!=null){var i=e[r];if(i){var{stackedData:a}=i;if(a)return a.find(l=>l.key===n)}}}},tQ=(e,t)=>{if(!(e==null||t==null)){var n=e.find(r=>r.stackId===t.stackId&&t.dataKey!=null&&r.dataKeys.includes(t.dataKey));if(n!=null)return n.position}};function nQ(e,t){return e&&typeof e=="object"&&"zIndex"in e&&typeof e.zIndex=="number"&&De(e.zIndex)?e.zIndex:t}var rQ=e=>{var{chartData:t}=e,n=yt(),r=on();return k.useEffect(()=>r?()=>{}:(n(EP(t)),()=>{n(EP(void 0))}),[t,n,r]),null},yE={x:0,y:0,width:0,height:0,padding:{top:0,right:0,bottom:0,left:0}},oT=On({name:"brush",initialState:yE,reducers:{setBrushSettings(e,t){return t.payload==null?yE:t.payload}}}),{setBrushSettings:Kte}=oT.actions,iQ=oT.reducer;function aQ(e){return(e%180+180)%180}var oQ=function(t){var{width:n,height:r}=t,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=aQ(i),l=a*Math.PI/180,u=Math.atan(r/n),c=l>u&&l{e.dots.push(t.payload)},removeDot:(e,t)=>{var n=hr(e).dots.findIndex(r=>r===t.payload);n!==-1&&e.dots.splice(n,1)},addArea:(e,t)=>{e.areas.push(t.payload)},removeArea:(e,t)=>{var n=hr(e).areas.findIndex(r=>r===t.payload);n!==-1&&e.areas.splice(n,1)},addLine:(e,t)=>{e.lines.push(t.payload)},removeLine:(e,t)=>{var n=hr(e).lines.findIndex(r=>r===t.payload);n!==-1&&e.lines.splice(n,1)}}}),{addDot:Gte,removeDot:Yte,addArea:Xte,removeArea:Qte,addLine:Zte,removeLine:Jte}=lT.actions,sQ=lT.reducer,uQ=k.createContext(void 0),cQ=e=>{var{children:t}=e,[n]=k.useState("".concat(fs("recharts"),"-clip")),r=zx();if(r==null)return null;var{x:i,y:a,width:l,height:u}=r;return k.createElement(uQ.Provider,{value:n},k.createElement("defs",null,k.createElement("clipPath",{id:n},k.createElement("rect",{x:i,y:a,height:u,width:l}))),t)};function sT(e,t){if(t<1)return[];if(t===1)return e;for(var n=[],r=0;re*i)return!1;var a=n();return e*(t-e*a/2-r)>=0&&e*(t+e*a/2-i)<=0}function pQ(e,t){return sT(e,t+1)}function hQ(e,t,n,r,i){for(var a=(r||[]).slice(),{start:l,end:u}=t,c=0,f=1,d=l,h=function(){var x=r==null?void 0:r[c];if(x===void 0)return{v:sT(r,f)};var S=c,w,P=()=>(w===void 0&&(w=n(x,S)),w),C=x.coordinate,O=c===0||Ps(e,C,P,d,u);O||(c=0,d=l,f+=1),O&&(d=C+e*(P()/2+i),c+=f)},g;f<=a.length;)if(g=h(),g)return g.v;return[]}function mQ(e,t,n,r,i){var a=(r||[]).slice(),l=a.length;if(l===0)return[];for(var{start:u,end:c}=t,f=1;f<=l;f++){for(var d=(l-1)%f,h=u,g=!0,y=function(){var A=r[S];if(A==null)return 0;var I=S,E,L=()=>(E===void 0&&(E=n(A,I)),E),F=A.coordinate,H=S===d||Ps(e,F,L,h,c);if(!H)return g=!1,1;H&&(h=F+e*(L()/2+i))},x,S=d;S(S===void 0&&(S=n(y,g)),S);if(g===l-1){var P=e*(x.coordinate+e*w()/2-c);a[g]=x=tn(tn({},x),{},{tickCoord:P>0?x.coordinate-P*e:x.coordinate})}else a[g]=x=tn(tn({},x),{},{tickCoord:x.coordinate});if(x.tickCoord!=null){var C=Ps(e,x.tickCoord,w,u,c);C&&(c=x.tickCoord-e*(w()/2+i),a[g]=tn(tn({},x),{},{isShow:!0}))}},d=l-1;d>=0;d--)f(d);return a}function bQ(e,t,n,r,i,a){var l=(r||[]).slice(),u=l.length,{start:c,end:f}=t;if(a){var d=r[u-1];if(d!=null){var h=n(d,u-1),g=e*(d.coordinate+e*h/2-f);if(l[u-1]=d=tn(tn({},d),{},{tickCoord:g>0?d.coordinate-g*e:d.coordinate}),d.tickCoord!=null){var y=Ps(e,d.tickCoord,()=>h,c,f);y&&(f=d.tickCoord-e*(h/2+i),l[u-1]=tn(tn({},d),{},{isShow:!0}))}}}for(var x=a?u-1:u,S=function(C){var O=l[C];if(O==null)return 1;var A=O,I,E=()=>(I===void 0&&(I=n(O,C)),I);if(C===0){var L=e*(A.coordinate-e*E()/2-c);l[C]=A=tn(tn({},A),{},{tickCoord:L<0?A.coordinate-L*e:A.coordinate})}else l[C]=A=tn(tn({},A),{},{tickCoord:A.coordinate});if(A.tickCoord!=null){var F=Ps(e,A.tickCoord,E,c,f);F&&(c=A.tickCoord+e*(E()/2+i),l[C]=tn(tn({},A),{},{isShow:!0}))}},w=0;w{var L=typeof f=="function"?f(I.value,E):I.value;return x==="width"?fQ(ls(L,{fontSize:t,letterSpacing:n}),S,h):ls(L,{fontSize:t,letterSpacing:n})[x]},P=i[0],C=i[1],O=i.length>=2&&P!=null&&C!=null?jn(C.coordinate-P.coordinate):1,A=dQ(a,O,x);return c==="equidistantPreserveStart"?hQ(O,A,w,i,l):c==="equidistantPreserveEnd"?mQ(O,A,w,i,l):(c==="preserveStart"||c==="preserveStartEnd"?y=bQ(O,A,w,i,l,c==="preserveStartEnd"):y=xQ(O,A,w,i,l),y.filter(I=>I.isShow))}var wQ=e=>{var{ticks:t,label:n,labelGapWithTick:r=5,tickSize:i=0,tickMargin:a=0}=e,l=0;if(t){Array.from(t).forEach(d=>{if(d){var h=d.getBoundingClientRect();h.width>l&&(l=h.width)}});var u=n?n.getBoundingClientRect().width:0,c=i+a,f=l+c+u+(n?r:0);return Math.round(f)}return 0},kQ=["axisLine","width","height","className","hide","ticks","axisType"];function SQ(e,t){if(e==null)return{};var n,r,i=jQ(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{var{ticks:n=[],tick:r,tickLine:i,stroke:a,tickFormatter:l,unit:u,padding:c,tickTextProps:f,orientation:d,mirror:h,x:g,y,width:x,height:S,tickSize:w,tickMargin:P,fontSize:C,letterSpacing:O,getTicksConfig:A,events:I,axisType:E}=e,L=$x(pt(pt({},A),{},{ticks:n}),C,O),F=AQ(d,h),H=_Q(d,h),R=Zn(A),W=As(r),D={};typeof i=="object"&&(D=i);var Z=pt(pt({},R),{},{fill:"none"},D),Y=L.map(de=>pt({entry:de},NQ(de,g,y,x,S,d,w,h,P))),Q=Y.map(de=>{var{entry:J,line:ae}=de;return k.createElement(pn,{className:"recharts-cartesian-axis-tick",key:"tick-".concat(J.value,"-").concat(J.coordinate,"-").concat(J.tickCoord)},i&&k.createElement("line",Ra({},Z,ae,{className:Ge("recharts-cartesian-axis-tick-line",To(i,"className"))})))}),pe=Y.map((de,J)=>{var ae,T,{entry:$,tick:U}=de,_=pt(pt(pt(pt({verticalAnchor:H},R),{},{textAnchor:F,stroke:"none",fill:a},U),{},{index:J,payload:$,visibleTicksCount:L.length,tickFormatter:l,padding:c},f),{},{angle:(ae=(T=f==null?void 0:f.angle)!==null&&T!==void 0?T:R.angle)!==null&&ae!==void 0?ae:0}),te=pt(pt({},_),W);return k.createElement(pn,Ra({className:"recharts-cartesian-axis-tick-label",key:"tick-label-".concat($.value,"-").concat($.coordinate,"-").concat($.tickCoord)},jy(I,$,J)),r&&k.createElement(IQ,{option:r,tickProps:te,value:"".concat(typeof l=="function"?l($.value,J):$.value).concat(u||"")}))});return k.createElement("g",{className:"recharts-cartesian-axis-ticks recharts-".concat(E,"-ticks")},pe.length>0&&k.createElement(nr,{zIndex:Rt.label},k.createElement("g",{className:"recharts-cartesian-axis-tick-labels recharts-".concat(E,"-tick-labels"),ref:t},pe)),Q.length>0&&k.createElement("g",{className:"recharts-cartesian-axis-tick-lines recharts-".concat(E,"-tick-lines")},Q))}),DQ=k.forwardRef((e,t)=>{var{axisLine:n,width:r,height:i,className:a,hide:l,ticks:u,axisType:c}=e,f=SQ(e,kQ),[d,h]=k.useState(""),[g,y]=k.useState(""),x=k.useRef(null);k.useImperativeHandle(t,()=>({getCalculatedWidth:()=>{var w;return wQ({ticks:x.current,label:(w=e.labelRef)===null||w===void 0?void 0:w.current,labelGapWithTick:5,tickSize:e.tickSize,tickMargin:e.tickMargin})}}));var S=k.useCallback(w=>{if(w){var P=w.getElementsByClassName("recharts-cartesian-axis-tick-value");x.current=P;var C=P[0];if(C){var O=window.getComputedStyle(C),A=O.fontSize,I=O.letterSpacing;(A!==d||I!==g)&&(h(A),y(I))}}},[d,g]);return l||r!=null&&r<=0||i!=null&&i<=0?null:k.createElement(nr,{zIndex:e.zIndex},k.createElement(pn,{className:Ge("recharts-cartesian-axis",a)},k.createElement(OQ,{x:e.x,y:e.y,width:r,height:i,orientation:e.orientation,mirror:e.mirror,axisLine:n,otherSvgProps:Zn(e)}),k.createElement(TQ,{ref:S,axisType:c,events:f,fontSize:d,getTicksConfig:e,height:e.height,letterSpacing:g,mirror:e.mirror,orientation:e.orientation,padding:e.padding,stroke:e.stroke,tick:e.tick,tickFormatter:e.tickFormatter,tickLine:e.tickLine,tickMargin:e.tickMargin,tickSize:e.tickSize,tickTextProps:e.tickTextProps,ticks:u,unit:e.unit,width:e.width,x:e.x,y:e.y}),k.createElement(mY,{x:e.x,y:e.y,width:e.width,height:e.height,lowerWidth:e.width,upperWidth:e.width},k.createElement(PY,{label:e.label,labelRef:e.labelRef}),e.children)))}),Fx=k.forwardRef((e,t)=>{var n=mn(e,ri);return k.createElement(DQ,Ra({},n,{ref:t}))});Fx.displayName="CartesianAxis";var MQ=["x1","y1","x2","y2","key"],LQ=["offset"],RQ=["xAxisId","yAxisId"],zQ=["xAxisId","yAxisId"];function wE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function nn(e){for(var t=1;t{var{fill:t}=e;if(!t||t==="none")return null;var{fillOpacity:n,x:r,y:i,width:a,height:l,ry:u}=e;return k.createElement("rect",{x:r,y:i,ry:u,width:a,height:l,stroke:"none",fill:t,fillOpacity:n,className:"recharts-cartesian-grid-bg"})};function uT(e){var{option:t,lineItemProps:n}=e,r;if(k.isValidElement(t))r=k.cloneElement(t,n);else if(typeof t=="function")r=t(n);else{var i,{x1:a,y1:l,x2:u,y2:c,key:f}=n,d=Df(n,MQ),h=(i=Zn(d))!==null&&i!==void 0?i:{},{offset:g}=h,y=Df(h,LQ);r=k.createElement("line",ja({},y,{x1:a,y1:l,x2:u,y2:c,fill:"none",key:f}))}return r}function qQ(e){var{x:t,width:n,horizontal:r=!0,horizontalPoints:i}=e;if(!r||!i||!i.length)return null;var{xAxisId:a,yAxisId:l}=e,u=Df(e,RQ),c=i.map((f,d)=>{var h=nn(nn({},u),{},{x1:t,y1:f,x2:t+n,y2:f,key:"line-".concat(d),index:d});return k.createElement(uT,{key:"line-".concat(d),option:r,lineItemProps:h})});return k.createElement("g",{className:"recharts-cartesian-grid-horizontal"},c)}function HQ(e){var{y:t,height:n,vertical:r=!0,verticalPoints:i}=e;if(!r||!i||!i.length)return null;var{xAxisId:a,yAxisId:l}=e,u=Df(e,zQ),c=i.map((f,d)=>{var h=nn(nn({},u),{},{x1:f,y1:t,x2:f,y2:t+n,key:"line-".concat(d),index:d});return k.createElement(uT,{option:r,lineItemProps:h,key:"line-".concat(d)})});return k.createElement("g",{className:"recharts-cartesian-grid-vertical"},c)}function VQ(e){var{horizontalFill:t,fillOpacity:n,x:r,y:i,width:a,height:l,horizontalPoints:u,horizontal:c=!0}=e;if(!c||!t||!t.length||u==null)return null;var f=u.map(h=>Math.round(h+i-i)).sort((h,g)=>h-g);i!==f[0]&&f.unshift(0);var d=f.map((h,g)=>{var y=f[g+1],x=y==null,S=x?i+l-h:y-h;if(S<=0)return null;var w=g%t.length;return k.createElement("rect",{key:"react-".concat(g),y:h,x:r,height:S,width:a,stroke:"none",fill:t[w],fillOpacity:n,className:"recharts-cartesian-grid-bg"})});return k.createElement("g",{className:"recharts-cartesian-gridstripes-horizontal"},d)}function KQ(e){var{vertical:t=!0,verticalFill:n,fillOpacity:r,x:i,y:a,width:l,height:u,verticalPoints:c}=e;if(!t||!n||!n.length)return null;var f=c.map(h=>Math.round(h+i-i)).sort((h,g)=>h-g);i!==f[0]&&f.unshift(0);var d=f.map((h,g)=>{var y=f[g+1],x=y==null,S=x?i+l-h:y-h;if(S<=0)return null;var w=g%n.length;return k.createElement("rect",{key:"react-".concat(g),x:h,y:a,width:S,height:u,stroke:"none",fill:n[w],fillOpacity:r,className:"recharts-cartesian-grid-bg"})});return k.createElement("g",{className:"recharts-cartesian-gridstripes-vertical"},d)}var GQ=(e,t)=>{var{xAxis:n,width:r,height:i,offset:a}=e;return zN($x(nn(nn(nn({},ri),n),{},{ticks:$N(n),viewBox:{x:0,y:0,width:r,height:i}})),a.left,a.left+a.width,t)},YQ=(e,t)=>{var{yAxis:n,width:r,height:i,offset:a}=e;return zN($x(nn(nn(nn({},ri),n),{},{ticks:$N(n),viewBox:{x:0,y:0,width:r,height:i}})),a.top,a.top+a.height,t)},XQ={horizontal:!0,vertical:!0,horizontalPoints:[],verticalPoints:[],stroke:"#ccc",fill:"none",verticalFill:[],horizontalFill:[],xAxisId:0,yAxisId:0,syncWithTicks:!1,zIndex:Rt.grid};function Bx(e){var t=KN(),n=GN(),r=VN(),i=nn(nn({},mn(e,XQ)),{},{x:ge(e.x)?e.x:r.left,y:ge(e.y)?e.y:r.top,width:ge(e.width)?e.width:r.width,height:ge(e.height)?e.height:r.height}),{xAxisId:a,yAxisId:l,x:u,y:c,width:f,height:d,syncWithTicks:h,horizontalValues:g,verticalValues:y}=i,x=on(),S=Pe(H=>hP(H,"xAxis",a,x)),w=Pe(H=>hP(H,"yAxis",l,x));if(!Mr(f)||!Mr(d)||!ge(u)||!ge(c))return null;var P=i.verticalCoordinatesGenerator||GQ,C=i.horizontalCoordinatesGenerator||YQ,{horizontalPoints:O,verticalPoints:A}=i;if((!O||!O.length)&&typeof C=="function"){var I=g&&g.length,E=C({yAxis:w?nn(nn({},w),{},{ticks:I?g:w.ticks}):void 0,width:t??f,height:n??d,offset:r},I?!0:h);af(Array.isArray(E),"horizontalCoordinatesGenerator should return Array but instead it returned [".concat(typeof E,"]")),Array.isArray(E)&&(O=E)}if((!A||!A.length)&&typeof P=="function"){var L=y&&y.length,F=P({xAxis:S?nn(nn({},S),{},{ticks:L?y:S.ticks}):void 0,width:t??f,height:n??d,offset:r},L?!0:h);af(Array.isArray(F),"verticalCoordinatesGenerator should return Array but instead it returned [".concat(typeof F,"]")),Array.isArray(F)&&(A=F)}return k.createElement(nr,{zIndex:i.zIndex},k.createElement("g",{className:"recharts-cartesian-grid"},k.createElement(WQ,{fill:i.fill,fillOpacity:i.fillOpacity,x:i.x,y:i.y,width:i.width,height:i.height,ry:i.ry}),k.createElement(VQ,ja({},i,{horizontalPoints:O})),k.createElement(KQ,ja({},i,{verticalPoints:A})),k.createElement(qQ,ja({},i,{offset:r,horizontalPoints:O,xAxis:S,yAxis:w})),k.createElement(HQ,ja({},i,{offset:r,verticalPoints:A,xAxis:S,yAxis:w}))))}Bx.displayName="CartesianGrid";var QQ={},cT=On({name:"errorBars",initialState:QQ,reducers:{addErrorBar:(e,t)=>{var{itemId:n,errorBar:r}=t.payload;e[n]||(e[n]=[]),e[n].push(r)},replaceErrorBar:(e,t)=>{var{itemId:n,prev:r,next:i}=t.payload;e[n]&&(e[n]=e[n].map(a=>a.dataKey===r.dataKey&&a.direction===r.direction?i:a))},removeErrorBar:(e,t)=>{var{itemId:n,errorBar:r}=t.payload;e[n]&&(e[n]=e[n].filter(i=>i.dataKey!==r.dataKey||i.direction!==r.direction))}}}),{addErrorBar:ene,replaceErrorBar:tne,removeErrorBar:nne}=cT.actions,ZQ=cT.reducer,JQ=["children"];function eZ(e,t){if(e==null)return{};var n,r,i=tZ(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r({x:0,y:0,value:0}),errorBarOffset:0},rZ=k.createContext(nZ);function iZ(e){var{children:t}=e,n=eZ(e,JQ);return k.createElement(rZ.Provider,{value:n},t)}function Ux(e,t){var n,r,i=Pe(f=>gi(f,e)),a=Pe(f=>vi(f,t)),l=(n=i==null?void 0:i.allowDataOverflow)!==null&&n!==void 0?n:Dt.allowDataOverflow,u=(r=a==null?void 0:a.allowDataOverflow)!==null&&r!==void 0?r:Mt.allowDataOverflow,c=l||u;return{needClip:c,needClipX:l,needClipY:u}}function fT(e){var{xAxisId:t,yAxisId:n,clipPathId:r}=e,i=zx(),{needClipX:a,needClipY:l,needClip:u}=Ux(t,n);if(!u||!i)return null;var{x:c,y:f,width:d,height:h}=i;return k.createElement("clipPath",{id:"clipPath-".concat(r)},k.createElement("rect",{x:a?c:c-d/2,y:l?f:f-h/2,width:a?d:d*2,height:l?h:h*2}))}function aZ(e){var t=As(e),n=3,r=2;if(t!=null){var{r:i,strokeWidth:a}=t,l=Number(i),u=Number(a);return(Number.isNaN(l)||l<0)&&(l=n),(Number.isNaN(u)||u<0)&&(u=r),{r:l,strokeWidth:u}}return{r:n,strokeWidth:r}}var Cg={exports:{}},Og={};/** * @license React * use-sync-external-store-with-selector.production.js * @@ -129,7 +129,7 @@ Error generating stack: `+j.message+` * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var bE;function rZ(){if(bE)return Eg;bE=1;var e=Fo();function t(c,f){return c===f&&(c!==0||1/c===1/f)||c!==c&&f!==f}var n=typeof Object.is=="function"?Object.is:t,r=e.useSyncExternalStore,i=e.useRef,a=e.useEffect,l=e.useMemo,u=e.useDebugValue;return Eg.useSyncExternalStoreWithSelector=function(c,f,d,p,g){var y=i(null);if(y.current===null){var x={hasValue:!1,value:null};y.current=x}else x=y.current;y=l(function(){function w(I){if(!P){if(P=!0,C=I,I=p(I),g!==void 0&&x.hasValue){var E=x.value;if(g(E,I))return O=E}return O=I}if(E=O,n(C,I))return E;var L=p(I);return g!==void 0&&g(E,L)?(C=I,E):(C=I,O=L)}var P=!1,C,O,A=d===void 0?null:d;return[function(){return w(f())},A===null?void 0:function(){return w(A())}]},[f,d,p,g]);var S=r(c,y[0],y[1]);return a(function(){x.hasValue=!0,x.value=S},[S]),u(S),S},Eg}var wE;function iZ(){return wE||(wE=1,Pg.exports=rZ()),Pg.exports}iZ();function aZ(e){e()}function oZ(){let e=null,t=null;return{clear(){e=null,t=null},notify(){aZ(()=>{let n=e;for(;n;)n.callback(),n=n.next})},get(){const n=[];let r=e;for(;r;)n.push(r),r=r.next;return n},subscribe(n){let r=!0;const i=t={callback:n,next:null,prev:t};return i.prev?i.prev.next=i:e=i,function(){!r||e===null||(r=!1,i.next?i.next.prev=i.prev:t=i.prev,i.prev?i.prev.next=i.next:e=i.next)}}}}var kE={notify(){},get:()=>[]};function lZ(e,t){let n,r=kE,i=0,a=!1;function l(S){d();const w=r.subscribe(S);let P=!1;return()=>{P||(P=!0,w(),p())}}function u(){r.notify()}function c(){x.onStateChange&&x.onStateChange()}function f(){return a}function d(){i++,n||(n=e.subscribe(c),r=oZ())}function p(){i--,n&&i===0&&(n(),n=void 0,r.clear(),r=kE)}function g(){a||(a=!0,d())}function y(){a&&(a=!1,p())}const x={addNestedSub:l,notifyNestedSubs:u,handleChangeWrapper:c,isSubscribed:f,trySubscribe:g,tryUnsubscribe:y,getListeners:()=>r};return x}var sZ=()=>typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",uZ=sZ(),cZ=()=>typeof navigator<"u"&&navigator.product==="ReactNative",fZ=cZ(),dZ=()=>uZ||fZ?k.useLayoutEffect:k.useEffect,hZ=dZ();function SE(e,t){return e===t?e!==0||t!==0||1/e===1/t:e!==e&&t!==t}function pZ(e,t){if(SE(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;const n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let i=0;i{const c=lZ(i);return{store:i,subscription:c,getServerState:r?()=>r:void 0}},[i,r]),l=k.useMemo(()=>i.getState(),[i]);hZ(()=>{const{subscription:c}=a;return c.onStateChange=c.notifyNestedSubs,c.trySubscribe(),l!==i.getState()&&c.notifyNestedSubs(),()=>{c.tryUnsubscribe(),c.onStateChange=void 0}},[a,l]);const u=n||gZ;return k.createElement(u.Provider,{value:a},t)}var yZ=vZ,xZ=new Set(["axisLine","tickLine","activeBar","activeDot","activeLabel","activeShape","allowEscapeViewBox","background","cursor","dot","label","line","margin","padding","position","shape","style","tick","wrapperStyle","radius"]);function bZ(e,t){return e==null&&t==null?!0:typeof e=="number"&&typeof t=="number"?e===t||e!==e&&t!==t:e===t}function Md(e,t){var n=new Set([...Object.keys(e),...Object.keys(t)]);for(var r of n)if(xZ.has(r)){if(e[r]==null&&t[r]==null)continue;if(!pZ(e[r],t[r]))return!1}else if(!bZ(e[r],t[r]))return!1;return!0}function Fr(e,t){var n,r;return(n=(r=e.graphicalItems.cartesianItems.find(i=>i.id===t))===null||r===void 0?void 0:r.xAxisId)!==null&&n!==void 0?n:rT}function Br(e,t){var n,r;return(n=(r=e.graphicalItems.cartesianItems.find(i=>i.id===t))===null||r===void 0?void 0:r.yAxisId)!==null&&n!==void 0?n:rT}var fT=(e,t,n)=>Zi(e,"xAxis",Fr(e,t),n),dT=(e,t,n)=>Qi(e,"xAxis",Fr(e,t),n),hT=(e,t,n)=>Zi(e,"yAxis",Br(e,t),n),pT=(e,t,n)=>Qi(e,"yAxis",Br(e,t),n),wZ=G([He,fT,hT,dT,pT],(e,t,n,r,i)=>$r(e,"xAxis")?Do(t,r,!1):Do(n,i,!1)),kZ=(e,t)=>t,mT=G([Nd,kZ],(e,t)=>e.filter(n=>n.type==="area").find(n=>n.id===t)),gT=e=>{var t=He(e),n=$r(t,"xAxis");return n?"yAxis":"xAxis"},SZ=(e,t)=>{var n=gT(e);return n==="yAxis"?Br(e,t):Fr(e,t)},jZ=(e,t,n)=>Pf(e,gT(e),SZ(e,t),n),PZ=G([mT,jZ],(e,t)=>{var n;if(!(e==null||t==null)){var{stackId:r}=e,i=Pd(e);if(!(r==null||i==null)){var a=(n=t[r])===null||n===void 0?void 0:n.stackedData,l=a==null?void 0:a.find(u=>u.key===i);if(l!=null)return l.map(u=>[u[0],u[1]])}}}),EZ=G([He,fT,hT,dT,pT,PZ,KA,wZ,mT,lV],(e,t,n,r,i,a,l,u,c,f)=>{var{chartData:d,dataStartIndex:p,dataEndIndex:g}=l;if(!(c==null||e!=="horizontal"&&e!=="vertical"||t==null||n==null||r==null||i==null||r.length===0||i.length===0||u==null)){var{data:y}=c,x;if(y&&y.length>0?x=y:x=d==null?void 0:d.slice(p,g+1),x!=null)return HZ({layout:e,xAxis:t,yAxis:n,xAxisTicks:r,yAxisTicks:i,dataStartIndex:p,areaSettings:c,stackedData:a,displayedData:x,chartBaseValue:f,bandSize:u})}}),CZ=["id"],OZ=["activeDot","animationBegin","animationDuration","animationEasing","connectNulls","dot","fill","fillOpacity","hide","isAnimationActive","legendType","stroke","xAxisId","yAxisId"];function Oa(){return Oa=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{dataKey:t,name:n,stroke:r,fill:i,legendType:a,hide:l}=e;return[{inactive:l,dataKey:t,type:a,color:Tf(r,i),value:rd(n,t),payload:e}]},MZ=k.memo(e=>{var{dataKey:t,data:n,stroke:r,strokeWidth:i,fill:a,name:l,hide:u,unit:c,tooltipType:f,id:d}=e,p={dataDefinedOnItem:n,getPosition:Fa,settings:{stroke:r,strokeWidth:i,fill:a,dataKey:t,nameKey:void 0,name:rd(l,t),hide:u,type:f,color:Tf(r,a),unit:c,graphicalItemId:d}};return k.createElement(ZI,{tooltipEntrySettings:p})});function DZ(e){var{clipPathId:t,points:n,props:r}=e,{needClip:i,dot:a,dataKey:l}=r,u=Jn(r);return k.createElement(PX,{points:n,dot:a,className:"recharts-area-dots",dotClassName:"recharts-area-dot",dataKey:l,baseProps:u,needClip:i,clipPathId:t})}function LZ(e){var{showLabels:t,children:n,points:r}=e,i=r.map(a=>{var l,u,c={x:(l=a.x)!==null&&l!==void 0?l:0,y:(u=a.y)!==null&&u!==void 0?u:0,width:0,lowerWidth:0,upperWidth:0,height:0};return Po(Po({},c),{},{value:a.value,payload:a.payload,parentViewBox:void 0,viewBox:c,fill:void 0})});return k.createElement(UI,{value:t?i:void 0},n)}function PE(e){var{points:t,baseLine:n,needClip:r,clipPathId:i,props:a}=e,{layout:l,type:u,stroke:c,connectNulls:f,isRange:d}=a,{id:p}=a,g=vT(a,CZ),y=Jn(g),x=dn(g);return k.createElement(k.Fragment,null,(t==null?void 0:t.length)>1&&k.createElement(hn,{clipPath:r?"url(#clipPath-".concat(i,")"):void 0},k.createElement(os,Oa({},x,{id:p,points:t,connectNulls:f,type:u,baseLine:n,layout:l,stroke:"none",className:"recharts-area-area"})),c!=="none"&&k.createElement(os,Oa({},y,{className:"recharts-area-curve",layout:l,type:u,connectNulls:f,fill:"none",points:t})),c!=="none"&&d&&k.createElement(os,Oa({},y,{className:"recharts-area-curve",layout:l,type:u,connectNulls:f,fill:"none",points:n}))),k.createElement(DZ,{points:t,props:g,clipPathId:i}))}function RZ(e){var t,n,{alpha:r,baseLine:i,points:a,strokeWidth:l}=e,u=(t=a[0])===null||t===void 0?void 0:t.y,c=(n=a[a.length-1])===null||n===void 0?void 0:n.y;if(!Me(u)||!Me(c))return null;var f=r*Math.abs(u-c),d=Math.max(...a.map(p=>p.x||0));return ge(i)?d=Math.max(i,d):i&&Array.isArray(i)&&i.length&&(d=Math.max(...i.map(p=>p.x||0),d)),ge(d)?k.createElement("rect",{x:0,y:up.y||0));return ge(i)?d=Math.max(i,d):i&&Array.isArray(i)&&i.length&&(d=Math.max(...i.map(p=>p.y||0),d)),ge(d)?k.createElement("rect",{x:u({points:l,baseLine:u}),[l,u]),S=hd(x,"recharts-area-"),w=Dy(),[P,C]=k.useState(!1),O=!P,A=k.useCallback(()=>{typeof y=="function"&&y(),C(!1)},[y]),I=k.useCallback(()=>{typeof g=="function"&&g(),C(!0)},[g]);if(w==null)return null;var E=i.current,L=a.current;return k.createElement(LZ,{showLabels:O,points:l},r.children,k.createElement(dd,{animationId:S,begin:f,duration:d,isActive:c,easing:p,onAnimationEnd:A,onAnimationStart:I,key:S},F=>{if(E){var H=E.length/l.length,R=F===1?l:l.map((M,Z)=>{var Y=Math.floor(Z*H);if(E[Y]){var Q=E[Y];return Po(Po({},M),{},{x:ut(Q.x,M.x,F),y:ut(Q.y,M.y,F)})}return M}),W;return ge(u)?W=ut(L,u,F):mt(u)||gr(u)?W=ut(L,0,F):W=u.map((M,Z)=>{var Y=Math.floor(Z*H);if(Array.isArray(L)&&L[Y]){var Q=L[Y];return Po(Po({},M),{},{x:ut(Q.x,M.x,F),y:ut(Q.y,M.y,F)})}return M}),F>0&&(i.current=R,a.current=W),k.createElement(PE,{points:R,baseLine:W,needClip:t,clipPathId:n,props:r})}return F>0&&(i.current=l,a.current=u),k.createElement(hn,null,c&&k.createElement("defs",null,k.createElement("clipPath",{id:"animationClipPath-".concat(n)},k.createElement($Z,{alpha:F,points:l,baseLine:u,layout:w,strokeWidth:r.strokeWidth}))),k.createElement(hn,{clipPath:"url(#animationClipPath-".concat(n,")")},k.createElement(PE,{points:l,baseLine:u,needClip:t,clipPathId:n,props:r})))}),k.createElement(qI,{label:r.label}))}function BZ(e){var{needClip:t,clipPathId:n,props:r}=e,i=k.useRef(null),a=k.useRef();return k.createElement(FZ,{needClip:t,clipPathId:n,props:r,previousPointsRef:i,previousBaselineRef:a})}class UZ extends k.PureComponent{render(){var{hide:t,dot:n,points:r,className:i,top:a,left:l,needClip:u,xAxisId:c,yAxisId:f,width:d,height:p,id:g,baseLine:y,zIndex:x}=this.props;if(t)return null;var S=Ge("recharts-area",i),w=g,{r:P,strokeWidth:C}=nZ(n),O=GI(n),A=P*2+C,I=u?"url(#clipPath-".concat(O?"":"dots-").concat(w,")"):void 0;return k.createElement(rr,{zIndex:x},k.createElement(hn,{className:S},u&&k.createElement("defs",null,k.createElement(cT,{clipPathId:w,xAxisId:c,yAxisId:f}),!O&&k.createElement("clipPath",{id:"clipPath-dots-".concat(w)},k.createElement("rect",{x:l-A/2,y:a-A/2,width:d+A,height:p+A}))),k.createElement(BZ,{needClip:u,clipPathId:w,props:this.props})),k.createElement(hE,{points:r,mainColor:Tf(this.props.stroke,this.props.fill),itemDataKey:this.props.dataKey,activeDot:this.props.activeDot,clipPath:I}),this.props.isRange&&Array.isArray(y)&&k.createElement(hE,{points:y,mainColor:Tf(this.props.stroke,this.props.fill),itemDataKey:this.props.dataKey,activeDot:this.props.activeDot,clipPath:I}))}}var yT={activeDot:!0,animationBegin:0,animationDuration:1500,animationEasing:"ease",connectNulls:!1,dot:!1,fill:"#3182bd",fillOpacity:.6,hide:!1,isAnimationActive:"auto",legendType:"line",stroke:"#3182bd",strokeWidth:1,type:"linear",label:!1,xAxisId:0,yAxisId:0,zIndex:Rt.area};function WZ(e){var t,n=mn(e,yT),{activeDot:r,animationBegin:i,animationDuration:a,animationEasing:l,connectNulls:u,dot:c,fill:f,fillOpacity:d,hide:p,isAnimationActive:g,legendType:y,stroke:x,xAxisId:S,yAxisId:w}=n,P=vT(n,OZ),C=Ba(),O=bI(),{needClip:A}=Fx(S,w),I=on(),{points:E,isRange:L,baseLine:F}=(t=Pe(Y=>EZ(Y,e.id,I)))!==null&&t!==void 0?t:{},H=Lx();if(C!=="horizontal"&&C!=="vertical"||H==null||O!=="AreaChart"&&O!=="ComposedChart")return null;var{height:R,width:W,x:M,y:Z}=H;return!E||!E.length?null:k.createElement(UZ,Oa({},P,{activeDot:r,animationBegin:i,animationDuration:a,animationEasing:l,baseLine:F,connectNulls:u,dot:c,fill:f,fillOpacity:d,height:R,hide:p,layout:C,isAnimationActive:g==="auto"?!Rs.isSsr:g,isRange:L,legendType:y,needClip:A,points:E,stroke:x,width:W,left:M,top:Z,xAxisId:S,yAxisId:w}))}var qZ=(e,t,n,r,i)=>{var a=n??t;if(ge(a))return a;var l=e==="horizontal"?i:r,u=l.scale.domain();if(l.type==="number"){var c=Math.max(u[0],u[1]),f=Math.min(u[0],u[1]);return a==="dataMin"?f:a==="dataMax"||c<0?c:Math.max(Math.min(u[0],u[1]),0)}return a==="dataMin"?u[0]:a==="dataMax"?u[1]:u[0]};function HZ(e){var{areaSettings:{connectNulls:t,baseValue:n,dataKey:r},stackedData:i,layout:a,chartBaseValue:l,xAxis:u,yAxis:c,displayedData:f,dataStartIndex:d,xAxisTicks:p,yAxisTicks:g,bandSize:y}=e,x=i&&i.length,S=qZ(a,l,n,u,c),w=a==="horizontal",P=!1,C=f.map((A,I)=>{var E,L,F,H;if(x)H=i[d+I];else{var R=St(A,r);Array.isArray(R)?(H=R,P=!0):H=[S,R]}var W=(E=(L=H)===null||L===void 0?void 0:L[1])!==null&&E!==void 0?E:null,M=W==null||x&&!t&&St(A,r)==null;if(w){var Z;return{x:fS({axis:u,ticks:p,bandSize:y,entry:A,index:I}),y:M?null:(Z=c.scale.map(W))!==null&&Z!==void 0?Z:null,value:H,payload:A}}return{x:M?null:(F=u.scale.map(W))!==null&&F!==void 0?F:null,y:fS({axis:c,ticks:g,bandSize:y,entry:A,index:I}),value:H,payload:A}}),O;return x||P?O=C.map(A=>{var I,E=Array.isArray(A.value)?A.value[0]:null;if(w){var L;return{x:A.x,y:E!=null&&A.y!=null&&(L=c.scale.map(E))!==null&&L!==void 0?L:null,payload:A.payload}}return{x:E!=null&&(I=u.scale.map(E))!==null&&I!==void 0?I:null,y:A.y,payload:A.payload}}):O=w?c.scale.map(S):u.scale.map(S),{points:C,baseLine:O??0,isRange:P}}function VZ(e){var t=mn(e,yT),n=on();return k.createElement(eT,{id:t.id,type:"area"},r=>k.createElement(k.Fragment,null,k.createElement(JI,{legendPayload:TZ(t)}),k.createElement(MZ,{dataKey:t.dataKey,data:t.data,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,tooltipType:t.tooltipType,id:r}),k.createElement(nT,{type:"area",id:r,data:t.data,dataKey:t.dataKey,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,stackId:$N(t.stackId),hide:t.hide,barSize:void 0,baseValue:t.baseValue,isPanorama:n,connectNulls:t.connectNulls}),k.createElement(WZ,Oa({},t,{id:r}))))}var Dv=k.memo(VZ,Md);Dv.displayName="Area";var KZ="Invariant failed";function GZ(e,t){throw new Error(KZ)}function Lv(){return Lv=Object.assign?Object.assign.bind():function(e){for(var t=1;t1&&arguments[1]!==void 0?arguments[1]:0;return(r,i)=>{if(ge(t))return t;var a=ge(r)||mt(r);return a?t(r,i):(a||GZ(),n)}},XZ=(e,t,n)=>n,QZ=(e,t)=>t,Gs=G([Nd,QZ],(e,t)=>e.filter(n=>n.type==="bar").find(n=>n.id===t)),ZZ=G([Gs],e=>e==null?void 0:e.maxBarSize),JZ=(e,t,n,r)=>r,eJ=G([He,Nd,Fr,Br,XZ],(e,t,n,r,i)=>t.filter(a=>e==="horizontal"?a.xAxisId===n:a.yAxisId===r).filter(a=>a.isPanorama===i).filter(a=>a.hide===!1).filter(a=>a.type==="bar")),tJ=(e,t,n)=>{var r=He(e),i=Fr(e,t),a=Br(e,t);if(!(i==null||a==null))return r==="horizontal"?Pf(e,"yAxis",a,n):Pf(e,"xAxis",i,n)},nJ=(e,t)=>{var n=He(e),r=Fr(e,t),i=Br(e,t);if(!(r==null||i==null))return n==="horizontal"?fP(e,"xAxis",r):fP(e,"yAxis",i)},rJ=G([eJ,oV,nJ],HX),iJ=(e,t,n)=>{var r,i,a=Gs(e,t);if(a==null)return 0;var l=Fr(e,t),u=Br(e,t);if(l==null||u==null)return 0;var c=He(e),f=a_(e),{maxBarSize:d}=a,p=mt(d)?f:d,g,y;return c==="horizontal"?(g=Zi(e,"xAxis",l,n),y=Qi(e,"xAxis",l,n)):(g=Zi(e,"yAxis",u,n),y=Qi(e,"yAxis",u,n)),(r=(i=Do(g,y,!0))!==null&&i!==void 0?i:p)!==null&&r!==void 0?r:0},xT=(e,t,n)=>{var r=He(e),i=Fr(e,t),a=Br(e,t);if(!(i==null||a==null)){var l,u;return r==="horizontal"?(l=Zi(e,"xAxis",i,n),u=Qi(e,"xAxis",i,n)):(l=Zi(e,"yAxis",a,n),u=Qi(e,"yAxis",a,n)),Do(l,u)}},aJ=G([rJ,a_,aV,o_,iJ,xT,ZZ],XX),oJ=(e,t,n)=>{var r=Fr(e,t);if(r!=null)return Zi(e,"xAxis",r,n)},lJ=(e,t,n)=>{var r=Br(e,t);if(r!=null)return Zi(e,"yAxis",r,n)},sJ=(e,t,n)=>{var r=Fr(e,t);if(r!=null)return Qi(e,"xAxis",r,n)},uJ=(e,t,n)=>{var r=Br(e,t);if(r!=null)return Qi(e,"yAxis",r,n)},cJ=G([aJ,Gs],ZX),fJ=G([tJ,Gs],QX),dJ=G([zt,Iy,oJ,lJ,sJ,uJ,cJ,He,KA,xT,fJ,Gs,JZ],(e,t,n,r,i,a,l,u,c,f,d,p,g)=>{var{chartData:y,dataStartIndex:x,dataEndIndex:S}=c;if(!(p==null||l==null||t==null||u!=="horizontal"&&u!=="vertical"||n==null||r==null||i==null||a==null||f==null)){var{data:w}=p,P;if(w!=null&&w.length>0?P=w:P=y==null?void 0:y.slice(x,S+1),P!=null)return FJ({layout:u,barSettings:p,pos:l,parentViewBox:t,bandSize:f,xAxis:n,yAxis:r,xAxisTicks:i,yAxisTicks:a,stackedData:d,displayedData:P,offset:e,cells:g,dataStartIndex:x})}}),hJ=["index"];function Rv(){return Rv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var t=k.useContext(bT);if(t!=null)return t.stackId;if(e!=null)return $N(e)},vJ=(e,t)=>"recharts-bar-stack-clip-path-".concat(e,"-").concat(t),yJ=e=>{var t=k.useContext(bT);if(t!=null){var{stackId:n}=t;return"url(#".concat(vJ(n,e),")")}},wT=e=>{var{index:t}=e,n=pJ(e,hJ),r=yJ(t);return k.createElement(hn,Rv({className:"recharts-bar-stack-layer",clipPath:r},n))},xJ=["onMouseEnter","onMouseLeave","onClick"],bJ=["value","background","tooltipPosition"],wJ=["id"],kJ=["onMouseEnter","onClick","onMouseLeave"];function ci(){return ci=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{dataKey:t,name:n,fill:r,legendType:i,hide:a}=e;return[{inactive:a,dataKey:t,type:i,color:r,value:rd(n,t),payload:e}]},OJ=k.memo(e=>{var{dataKey:t,stroke:n,strokeWidth:r,fill:i,name:a,hide:l,unit:u,tooltipType:c,id:f}=e,d={dataDefinedOnItem:void 0,getPosition:Fa,settings:{stroke:n,strokeWidth:r,fill:i,dataKey:t,nameKey:void 0,name:rd(a,t),hide:l,type:c,color:i,unit:u,graphicalItemId:f}};return k.createElement(ZI,{tooltipEntrySettings:d})});function NJ(e){var t=Pe(La),{data:n,dataKey:r,background:i,allOtherBarProps:a}=e,{onMouseEnter:l,onMouseLeave:u,onClick:c}=a,f=Df(a,xJ),d=YI(l,r,a.id),p=XI(u),g=QI(c,r,a.id);if(!i||n==null)return null;var y=As(i);return k.createElement(rr,{zIndex:JX(i,Rt.barBackground)},n.map((x,S)=>{var{value:w,background:P,tooltipPosition:C}=x,O=Df(x,bJ);if(!P)return null;var A=d(x,S),I=p(x,S),E=g(x,S),L=un(un(un(un(un({option:i,isActive:String(S)===t},O),{},{fill:"#eee"},P),y),ky(f,x,S)),{},{onMouseEnter:A,onMouseLeave:I,onClick:E,dataKey:r,index:S,className:"recharts-bar-background-rectangle"});return k.createElement(Mf,ci({key:"background-bar-".concat(S)},L))}))}function AJ(e){var{showLabels:t,children:n,rects:r}=e,i=r==null?void 0:r.map(a=>{var l={x:a.x,y:a.y,width:a.width,lowerWidth:a.width,upperWidth:a.width,height:a.height};return un(un({},l),{},{value:a.value,payload:a.payload,parentViewBox:a.parentViewBox,viewBox:l,fill:a.fill})});return k.createElement(UI,{value:t?i:void 0},n)}function _J(e){var{shape:t,activeBar:n,baseProps:r,entry:i,index:a,dataKey:l}=e,u=Pe(La),c=Pe(vI),f=n&&String(a)===u&&(c==null||l===c),d=f?n:t;return f?k.createElement(rr,{zIndex:Rt.activeBar},k.createElement(wT,{index:a},k.createElement(Mf,ci({},r,{name:String(r.name)},i,{isActive:f,option:d,index:a,dataKey:l})))):k.createElement(Mf,ci({},r,{name:String(r.name)},i,{isActive:f,option:d,index:a,dataKey:l}))}function IJ(e){var{shape:t,baseProps:n,entry:r,index:i,dataKey:a}=e;return k.createElement(Mf,ci({},n,{name:String(n.name)},r,{isActive:!1,option:t,index:i,dataKey:a}))}function TJ(e){var t,{data:n,props:r}=e,i=(t=Jn(r))!==null&&t!==void 0?t:{},{id:a}=i,l=Df(i,wJ),{shape:u,dataKey:c,activeBar:f}=r,{onMouseEnter:d,onClick:p,onMouseLeave:g}=r,y=Df(r,kJ),x=YI(d,c,a),S=XI(g),w=QI(p,c,a);return n?k.createElement(k.Fragment,null,n.map((P,C)=>k.createElement(wT,ci({index:C,key:"rectangle-".concat(P==null?void 0:P.x,"-").concat(P==null?void 0:P.y,"-").concat(P==null?void 0:P.value,"-").concat(C),className:"recharts-bar-rectangle"},ky(y,P,C),{onMouseEnter:x(P,C),onMouseLeave:S(P,C),onClick:w(P,C)}),f?k.createElement(_J,{shape:u,activeBar:f,baseProps:l,entry:P,index:C,dataKey:c}):k.createElement(IJ,{shape:u,baseProps:l,entry:P,index:C,dataKey:c})))):null}function MJ(e){var{props:t,previousRectanglesRef:n}=e,{data:r,layout:i,isAnimationActive:a,animationBegin:l,animationDuration:u,animationEasing:c,onAnimationEnd:f,onAnimationStart:d}=t,p=n.current,g=hd(t,"recharts-bar-"),[y,x]=k.useState(!1),S=!y,w=k.useCallback(()=>{typeof f=="function"&&f(),x(!1)},[f]),P=k.useCallback(()=>{typeof d=="function"&&d(),x(!0)},[d]);return k.createElement(AJ,{showLabels:S,rects:r},k.createElement(dd,{animationId:g,begin:l,duration:u,isActive:a,easing:c,onAnimationEnd:w,onAnimationStart:P,key:g},C=>{var O=C===1?r:r==null?void 0:r.map((A,I)=>{var E=p&&p[I];if(E)return un(un({},A),{},{x:ut(E.x,A.x,C),y:ut(E.y,A.y,C),width:ut(E.width,A.width,C),height:ut(E.height,A.height,C)});if(i==="horizontal"){var L=ut(0,A.height,C),F=ut(A.stackedBarStart,A.y,C);return un(un({},A),{},{y:F,height:L})}var H=ut(0,A.width,C),R=ut(A.stackedBarStart,A.x,C);return un(un({},A),{},{width:H,x:R})});return C>0&&(n.current=O??null),O==null?null:k.createElement(hn,null,k.createElement(TJ,{props:t,data:O}))}),k.createElement(qI,{label:t.label}),t.children)}function DJ(e){var t=k.useRef(null);return k.createElement(MJ,{previousRectanglesRef:t,props:e})}var kT=0,LJ=(e,t)=>{var n=Array.isArray(e.value)?e.value[1]:e.value;return{x:e.x,y:e.y,value:n,errorVal:St(e,t)}};class RJ extends k.PureComponent{render(){var{hide:t,data:n,dataKey:r,className:i,xAxisId:a,yAxisId:l,needClip:u,background:c,id:f}=this.props;if(t||n==null)return null;var d=Ge("recharts-bar",i),p=f;return k.createElement(hn,{className:d,id:f},u&&k.createElement("defs",null,k.createElement(cT,{clipPathId:p,xAxisId:a,yAxisId:l})),k.createElement(hn,{className:"recharts-bar-rectangles",clipPath:u?"url(#clipPath-".concat(p,")"):void 0},k.createElement(NJ,{data:n,dataKey:r,background:c,allOtherBarProps:this.props}),k.createElement(DJ,this.props)))}}var zJ={activeBar:!1,animationBegin:0,animationDuration:400,animationEasing:"ease",background:!1,hide:!1,isAnimationActive:"auto",label:!1,legendType:"rect",minPointSize:kT,xAxisId:0,yAxisId:0,zIndex:Rt.bar};function $J(e){var{xAxisId:t,yAxisId:n,hide:r,legendType:i,minPointSize:a,activeBar:l,animationBegin:u,animationDuration:c,animationEasing:f,isAnimationActive:d}=e,{needClip:p}=Fx(t,n),g=Ba(),y=on(),x=BY(e.children,AI),S=Pe(C=>dJ(C,e.id,y,x));if(g!=="vertical"&&g!=="horizontal")return null;var w,P=S==null?void 0:S[0];return P==null||P.height==null||P.width==null?w=0:w=g==="vertical"?P.height/2:P.width/2,k.createElement(tZ,{xAxisId:t,yAxisId:n,data:S,dataPointFormatter:LJ,errorBarOffset:w},k.createElement(RJ,ci({},e,{layout:g,needClip:p,data:S,xAxisId:t,yAxisId:n,hide:r,legendType:i,minPointSize:a,activeBar:l,animationBegin:u,animationDuration:c,animationEasing:f,isAnimationActive:d})))}function FJ(e){var{layout:t,barSettings:{dataKey:n,minPointSize:r},pos:i,bandSize:a,xAxis:l,yAxis:u,xAxisTicks:c,yAxisTicks:f,stackedData:d,displayedData:p,offset:g,cells:y,parentViewBox:x,dataStartIndex:S}=e,w=t==="horizontal"?u:l,P=d?w.scale.domain():null,C=n8({numericAxis:w}),O=w.scale.map(C);return p.map((A,I)=>{var E,L,F,H,R,W;if(d){var M=d[I+S];if(M==null)return null;E=QU(M,P)}else E=St(A,n),Array.isArray(E)||(E=[C,E]);var Z=YZ(r,kT)(E[1],I);if(t==="horizontal"){var Y,Q=u.scale.map(E[0]),he=u.scale.map(E[1]);if(Q==null||he==null)return null;L=dS({axis:l,ticks:c,bandSize:a,offset:i.offset,entry:A,index:I}),F=(Y=he??Q)!==null&&Y!==void 0?Y:void 0,H=i.size;var de=Q-he;if(R=gr(de)?0:de,W={x:L,y:g.top,width:H,height:g.height},Math.abs(Z)>0&&Math.abs(R)0&&Math.abs(H)k.createElement(k.Fragment,null,k.createElement(JI,{legendPayload:CJ(t)}),k.createElement(OJ,{dataKey:t.dataKey,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,tooltipType:t.tooltipType,id:i}),k.createElement(nT,{type:"bar",id:i,data:void 0,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,dataKey:t.dataKey,stackId:n,hide:t.hide,barSize:t.barSize,minPointSize:t.minPointSize,maxBarSize:t.maxBarSize,isPanorama:r}),k.createElement(rr,{zIndex:t.zIndex},k.createElement($J,ci({},t,{id:i})))))}var zv=k.memo(BJ,Md);zv.displayName="Bar";var UJ=["domain","range"],WJ=["domain","range"];function CE(e,t){if(e==null)return{};var n,r,i=qJ(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{if(l!=null)return AE(AE({},a),{},{type:l})},[a,l]);return k.useLayoutEffect(()=>{u!=null&&(n.current===null?t(AX(u)):n.current!==u&&t(_X({prev:n.current,next:u})),n.current=u)},[u,t]),k.useLayoutEffect(()=>()=>{n.current&&(t(IX(n.current)),n.current=null)},[t]),null}var JJ=e=>{var{xAxisId:t,className:n}=e,r=Pe(Iy),i=on(),a="xAxis",l=Pe(P=>X_(P,a,t,i)),u=Pe(P=>V_(P,t)),c=Pe(P=>sK(P,t)),f=Pe(P=>m_(P,t));if(u==null||c==null||f==null)return null;var{dangerouslySetInnerHTML:d,ticks:p,scale:g}=e,y=Fv(e,VJ),{id:x,scale:S}=f,w=Fv(f,KJ);return k.createElement(zx,$v({},y,w,{x:c.x,y:c.y,width:u.width,height:u.height,className:Ge("recharts-".concat(a," ").concat(a),n),viewBox:r,ticks:l,axisType:a}))},eee={allowDataOverflow:Mt.allowDataOverflow,allowDecimals:Mt.allowDecimals,allowDuplicatedCategory:Mt.allowDuplicatedCategory,angle:Mt.angle,axisLine:ri.axisLine,height:Mt.height,hide:!1,includeHidden:Mt.includeHidden,interval:Mt.interval,label:!1,minTickGap:Mt.minTickGap,mirror:Mt.mirror,orientation:Mt.orientation,padding:Mt.padding,reversed:Mt.reversed,scale:Mt.scale,tick:Mt.tick,tickCount:Mt.tickCount,tickLine:ri.tickLine,tickSize:ri.tickSize,type:Mt.type,xAxisId:0},tee=e=>{var t=mn(e,eee);return k.createElement(k.Fragment,null,k.createElement(ZJ,{allowDataOverflow:t.allowDataOverflow,allowDecimals:t.allowDecimals,allowDuplicatedCategory:t.allowDuplicatedCategory,angle:t.angle,dataKey:t.dataKey,domain:t.domain,height:t.height,hide:t.hide,id:t.xAxisId,includeHidden:t.includeHidden,interval:t.interval,minTickGap:t.minTickGap,mirror:t.mirror,name:t.name,orientation:t.orientation,padding:t.padding,reversed:t.reversed,scale:t.scale,tick:t.tick,tickCount:t.tickCount,tickFormatter:t.tickFormatter,ticks:t.ticks,type:t.type,unit:t.unit}),k.createElement(JJ,t))},Bx=k.memo(tee,ST);Bx.displayName="XAxis";var nee=["type"],ree=["dangerouslySetInnerHTML","ticks","scale"],iee=["id","scale"];function Bv(){return Bv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{if(l!=null)return IE(IE({},a),{},{type:l})},[l,a]);return k.useLayoutEffect(()=>{u!=null&&(n.current===null?t(TX(u)):n.current!==u&&t(MX({prev:n.current,next:u})),n.current=u)},[u,t]),k.useLayoutEffect(()=>()=>{n.current&&(t(DX(n.current)),n.current=null)},[t]),null}function cee(e){var{yAxisId:t,className:n,width:r,label:i}=e,a=k.useRef(null),l=k.useRef(null),u=Pe(Iy),c=on(),f=yt(),d="yAxis",p=Pe(E=>K_(E,t)),g=Pe(E=>cK(E,t)),y=Pe(E=>X_(E,d,t,c)),x=Pe(E=>g_(E,t));if(k.useLayoutEffect(()=>{if(!(r!=="auto"||!p||Dx(i)||k.isValidElement(i)||x==null)){var E=a.current;if(E){var L=E.getCalculatedWidth();Math.round(p.width)!==Math.round(L)&&f(LX({id:t,width:L}))}}},[y,p,f,i,t,r,x]),p==null||g==null||x==null)return null;var{dangerouslySetInnerHTML:S,ticks:w,scale:P}=e,C=Uv(e,ree),{id:O,scale:A}=x,I=Uv(x,iee);return k.createElement(zx,Bv({},C,I,{ref:a,labelRef:l,x:g.x,y:g.y,tickTextProps:r==="auto"?{width:void 0}:{width:r},width:p.width,height:p.height,className:Ge("recharts-".concat(d," ").concat(d),n),viewBox:u,ticks:y,axisType:d}))}var fee={allowDataOverflow:Dt.allowDataOverflow,allowDecimals:Dt.allowDecimals,allowDuplicatedCategory:Dt.allowDuplicatedCategory,angle:Dt.angle,axisLine:ri.axisLine,hide:!1,includeHidden:Dt.includeHidden,interval:Dt.interval,label:!1,minTickGap:Dt.minTickGap,mirror:Dt.mirror,orientation:Dt.orientation,padding:Dt.padding,reversed:Dt.reversed,scale:Dt.scale,tick:Dt.tick,tickCount:Dt.tickCount,tickLine:ri.tickLine,tickSize:ri.tickSize,type:Dt.type,width:Dt.width,yAxisId:0},dee=e=>{var t=mn(e,fee);return k.createElement(k.Fragment,null,k.createElement(uee,{interval:t.interval,id:t.yAxisId,scale:t.scale,type:t.type,domain:t.domain,allowDataOverflow:t.allowDataOverflow,dataKey:t.dataKey,allowDuplicatedCategory:t.allowDuplicatedCategory,allowDecimals:t.allowDecimals,tickCount:t.tickCount,padding:t.padding,includeHidden:t.includeHidden,reversed:t.reversed,ticks:t.ticks,width:t.width,orientation:t.orientation,mirror:t.mirror,hide:t.hide,unit:t.unit,name:t.name,angle:t.angle,minTickGap:t.minTickGap,tick:t.tick,tickFormatter:t.tickFormatter}),k.createElement(cee,t))},Es=k.memo(dee,ST);Es.displayName="YAxis";var hee=(e,t)=>t,Ux=G([hee,He,h_,Bt,hI,yi,j7,zt],_7),Wx=e=>{var t=e.currentTarget.getBoundingClientRect(),n=t.width/e.currentTarget.offsetWidth,r=t.height/e.currentTarget.offsetHeight;return{chartX:Math.round((e.clientX-t.left)/n),chartY:Math.round((e.clientY-t.top)/r)}},jT=er("mouseClick"),PT=Ts();PT.startListening({actionCreator:jT,effect:(e,t)=>{var n=e.payload,r=Ux(t.getState(),Wx(n));(r==null?void 0:r.activeIndex)!=null&&t.dispatch(jK({activeIndex:r.activeIndex,activeDataKey:void 0,activeCoordinate:r.activeCoordinate}))}});var Wv=er("mouseMove"),ET=Ts(),Ec=null;ET.startListening({actionCreator:Wv,effect:(e,t)=>{var n=e.payload;Ec!==null&&cancelAnimationFrame(Ec);var r=Wx(n);Ec=requestAnimationFrame(()=>{var i=t.getState(),a=jx(i,i.tooltip.settings.shared);if(a==="axis"){var l=Ux(i,r);(l==null?void 0:l.activeIndex)!=null?t.dispatch(iI({activeIndex:l.activeIndex,activeDataKey:void 0,activeCoordinate:l.activeCoordinate})):t.dispatch(rI())}Ec=null})}});function pee(e,t){return t instanceof HTMLElement?"HTMLElement <".concat(t.tagName,' class="').concat(t.className,'">'):t===window?"global.window":e==="children"&&typeof t=="object"&&t!==null?"<>":t}var TE={accessibilityLayer:!0,barCategoryGap:"10%",barGap:4,barSize:void 0,className:void 0,maxBarSize:void 0,stackOffset:"none",syncId:void 0,syncMethod:"index",baseValue:void 0,reverseStackOrder:!1},CT=On({name:"rootProps",initialState:TE,reducers:{updateOptions:(e,t)=>{var n;e.accessibilityLayer=t.payload.accessibilityLayer,e.barCategoryGap=t.payload.barCategoryGap,e.barGap=(n=t.payload.barGap)!==null&&n!==void 0?n:TE.barGap,e.barSize=t.payload.barSize,e.maxBarSize=t.payload.maxBarSize,e.stackOffset=t.payload.stackOffset,e.syncId=t.payload.syncId,e.syncMethod=t.payload.syncMethod,e.className=t.payload.className,e.baseValue=t.payload.baseValue,e.reverseStackOrder=t.payload.reverseStackOrder}}}),mee=CT.reducer,{updateOptions:gee}=CT.actions,vee=null,yee={updatePolarOptions:(e,t)=>t.payload},OT=On({name:"polarOptions",initialState:vee,reducers:yee}),{updatePolarOptions:tne}=OT.actions,xee=OT.reducer,NT=er("keyDown"),AT=er("focus"),qx=Ts();qx.startListening({actionCreator:NT,effect:(e,t)=>{var n=t.getState(),r=n.rootProps.accessibilityLayer!==!1;if(r){var{keyboardInteraction:i}=n.tooltip,a=e.payload;if(!(a!=="ArrowRight"&&a!=="ArrowLeft"&&a!=="Enter")){var l=Px(i,Qo(n),qs(n),Vs(n)),u=l==null?-1:Number(l);if(!(!Number.isFinite(u)||u<0)){var c=yi(n);if(a==="Enter"){var f=Cf(n,"axis","hover",String(i.index));t.dispatch(Av({active:!i.active,activeIndex:i.index,activeCoordinate:f}));return}var d=pK(n),p=d==="left-to-right"?1:-1,g=a==="ArrowRight"?1:-1,y=u+g*p;if(!(c==null||y>=c.length||y<0)){var x=Cf(n,"axis","hover",String(y));t.dispatch(Av({active:!0,activeIndex:y.toString(),activeCoordinate:x}))}}}}}});qx.startListening({actionCreator:AT,effect:(e,t)=>{var n=t.getState(),r=n.rootProps.accessibilityLayer!==!1;if(r){var{keyboardInteraction:i}=n.tooltip;if(!i.active&&i.index==null){var a="0",l=Cf(n,"axis","hover",String(a));t.dispatch(Av({active:!0,activeIndex:a,activeCoordinate:l}))}}}});var Yn=er("externalEvent"),_T=Ts(),Ng=new Map;_T.startListening({actionCreator:Yn,effect:(e,t)=>{var{handler:n,reactEvent:r}=e.payload;if(n!=null){r.persist();var i=r.type,a=Ng.get(i);a!==void 0&&cancelAnimationFrame(a);var l=requestAnimationFrame(()=>{try{var u=t.getState(),c={activeCoordinate:u7(u),activeDataKey:vI(u),activeIndex:La(u),activeLabel:gI(u),activeTooltipIndex:La(u),isTooltipActive:c7(u)};n(c,r)}finally{Ng.delete(i)}});Ng.set(i,l)}}});var bee=G([Yo],e=>e.tooltipItemPayloads),wee=G([bee,(e,t)=>t,(e,t,n)=>n],(e,t,n)=>{if(t!=null){var r=e.find(a=>a.settings.graphicalItemId===n);if(r!=null){var{getPosition:i}=r;if(i!=null)return i(t)}}}),IT=er("touchMove"),TT=Ts();TT.startListening({actionCreator:IT,effect:(e,t)=>{var n=e.payload;if(!(n.touches==null||n.touches.length===0)){var r=t.getState(),i=jx(r,r.tooltip.settings.shared);if(i==="axis"){var a=n.touches[0];if(a==null)return;var l=Ux(r,Wx({clientX:a.clientX,clientY:a.clientY,currentTarget:n.currentTarget}));(l==null?void 0:l.activeIndex)!=null&&t.dispatch(iI({activeIndex:l.activeIndex,activeDataKey:void 0,activeCoordinate:l.activeCoordinate}))}else if(i==="item"){var u,c=n.touches[0];if(document.elementFromPoint==null||c==null)return;var f=document.elementFromPoint(c.clientX,c.clientY);if(!f||!f.getAttribute)return;var d=f.getAttribute(u8),p=(u=f.getAttribute(c8))!==null&&u!==void 0?u:void 0,g=Xo(r).find(S=>S.id===p);if(d==null||g==null||p==null)return;var{dataKey:y}=g,x=wee(r,d,p);t.dispatch(nI({activeDataKey:y,activeIndex:d,activeCoordinate:x,activeGraphicalItemId:p}))}}}});var kee=sN({brush:tQ,cartesianAxis:RX,chartData:sG,errorBars:YQ,graphicalItems:mX,layout:VU,legend:tW,options:rG,polarAxis:LY,polarOptions:xee,referenceElements:aQ,rootProps:mee,tooltip:PK,zIndex:H7}),See=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"Chart";return vU({reducer:kee,preloadedState:t,middleware:r=>{var i;return r({serializableCheck:!1,immutableCheck:!["commonjs","es6","production"].includes((i="es6")!==null&&i!==void 0?i:"")}).concat([PT.middleware,ET.middleware,qx.middleware,_T.middleware,TT.middleware])},enhancers:r=>{var i=r;return typeof r=="function"&&(i=r()),i.concat(SN({type:"raf"}))},devTools:{serialize:{replacer:pee},name:"recharts-".concat(n)}})};function jee(e){var{preloadedState:t,children:n,reduxStoreName:r}=e,i=on(),a=k.useRef(null);if(i)return n;a.current==null&&(a.current=See(t,r));var l=Py;return k.createElement(yZ,{context:l,store:a.current},n)}function Pee(e){var{layout:t,margin:n}=e,r=yt(),i=on();return k.useEffect(()=>{i||(r(WU(t)),r(UU(n)))},[r,i,t,n]),null}var Eee=k.memo(Pee,Md);function Cee(e){var t=yt();return k.useEffect(()=>{t(gee(e))},[t,e]),null}function ME(e){var{zIndex:t,isPanorama:n}=e,r=k.useRef(null),i=yt();return k.useLayoutEffect(()=>(r.current&&i(W7({zIndex:t,element:r.current,isPanorama:n})),()=>{i(q7({zIndex:t,isPanorama:n}))}),[i,t,n]),k.createElement("g",{tabIndex:-1,ref:r})}function DE(e){var{children:t,isPanorama:n}=e,r=Pe(T7);if(!r||r.length===0)return t;var i=r.filter(l=>l<0),a=r.filter(l=>l>0);return k.createElement(k.Fragment,null,i.map(l=>k.createElement(ME,{key:l,zIndex:l,isPanorama:n})),t,a.map(l=>k.createElement(ME,{key:l,zIndex:l,isPanorama:n})))}var Oee=["children"];function Nee(e,t){if(e==null)return{};var n,r,i=Aee(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{var n=VN(),r=KN(),i=nA();if(!Lr(n)||!Lr(r))return null;var{children:a,otherAttributes:l,title:u,desc:c}=e,f,d;return l!=null&&(typeof l.tabIndex=="number"?f=l.tabIndex:f=i?0:void 0,typeof l.role=="string"?d=l.role:d=i?"application":void 0),k.createElement(PO,Lf({},l,{title:u,desc:c,role:d,tabIndex:f,width:n,height:r,style:_ee,ref:t}),a)}),Tee=e=>{var{children:t}=e,n=Pe(ld);if(!n)return null;var{width:r,height:i,y:a,x:l}=n;return k.createElement(PO,{width:r,height:i,x:l,y:a},t)},LE=k.forwardRef((e,t)=>{var{children:n}=e,r=Nee(e,Oee),i=on();return i?k.createElement(Tee,null,k.createElement(DE,{isPanorama:!0},n)):k.createElement(Iee,Lf({ref:t},r),k.createElement(DE,{isPanorama:!1},n))});function Mee(){var e=yt(),[t,n]=k.useState(null),r=Pe(s8);return k.useEffect(()=>{if(t!=null){var i=t.getBoundingClientRect(),a=i.width/t.offsetWidth;Me(a)&&a!==r&&e(HU(a))}},[t,e,r]),n}function RE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Dee(e){for(var t=1;t(vG(),null);function Rf(e){if(typeof e=="number")return e;if(typeof e=="string"){var t=parseFloat(e);if(!Number.isNaN(t))return t}return 0}var Fee=k.forwardRef((e,t)=>{var n,r,i=k.useRef(null),[a,l]=k.useState({containerWidth:Rf((n=e.style)===null||n===void 0?void 0:n.width),containerHeight:Rf((r=e.style)===null||r===void 0?void 0:r.height)}),u=k.useCallback((f,d)=>{l(p=>{var g=Math.round(f),y=Math.round(d);return p.containerWidth===g&&p.containerHeight===y?p:{containerWidth:g,containerHeight:y}})},[]),c=k.useCallback(f=>{if(typeof t=="function"&&t(f),f!=null&&typeof ResizeObserver<"u"){var{width:d,height:p}=f.getBoundingClientRect();u(d,p);var g=x=>{var S=x[0];if(S!=null){var{width:w,height:P}=S.contentRect;u(w,P)}},y=new ResizeObserver(g);y.observe(f),i.current=y}},[t,u]);return k.useEffect(()=>()=>{var f=i.current;f!=null&&f.disconnect()},[u]),k.createElement(k.Fragment,null,k.createElement(Ds,{width:a.containerWidth,height:a.containerHeight}),k.createElement("div",Yi({ref:c},e)))}),Bee=k.forwardRef((e,t)=>{var{width:n,height:r}=e,[i,a]=k.useState({containerWidth:Rf(n),containerHeight:Rf(r)}),l=k.useCallback((c,f)=>{a(d=>{var p=Math.round(c),g=Math.round(f);return d.containerWidth===p&&d.containerHeight===g?d:{containerWidth:p,containerHeight:g}})},[]),u=k.useCallback(c=>{if(typeof t=="function"&&t(c),c!=null){var{width:f,height:d}=c.getBoundingClientRect();l(f,d)}},[t,l]);return k.createElement(k.Fragment,null,k.createElement(Ds,{width:i.containerWidth,height:i.containerHeight}),k.createElement("div",Yi({ref:u},e)))}),Uee=k.forwardRef((e,t)=>{var{width:n,height:r}=e;return k.createElement(k.Fragment,null,k.createElement(Ds,{width:n,height:r}),k.createElement("div",Yi({ref:t},e)))}),Wee=k.forwardRef((e,t)=>{var{width:n,height:r}=e;return typeof n=="string"||typeof r=="string"?k.createElement(Bee,Yi({},e,{ref:t})):typeof n=="number"&&typeof r=="number"?k.createElement(Uee,Yi({},e,{width:n,height:r,ref:t})):k.createElement(k.Fragment,null,k.createElement(Ds,{width:n,height:r}),k.createElement("div",Yi({ref:t},e)))});function qee(e){return e?Fee:Wee}var Hee=k.forwardRef((e,t)=>{var{children:n,className:r,height:i,onClick:a,onContextMenu:l,onDoubleClick:u,onMouseDown:c,onMouseEnter:f,onMouseLeave:d,onMouseMove:p,onMouseUp:g,onTouchEnd:y,onTouchMove:x,onTouchStart:S,style:w,width:P,responsive:C,dispatchTouchEvents:O=!0}=e,A=k.useRef(null),I=yt(),[E,L]=k.useState(null),[F,H]=k.useState(null),R=Mee(),W=Ty(),M=(W==null?void 0:W.width)>0?W.width:P,Z=(W==null?void 0:W.height)>0?W.height:i,Y=k.useCallback(X=>{R(X),typeof t=="function"&&t(X),L(X),H(X),X!=null&&(A.current=X)},[R,t,L,H]),Q=k.useCallback(X=>{I(jT(X)),I(Yn({handler:a,reactEvent:X}))},[I,a]),he=k.useCallback(X=>{I(Wv(X)),I(Yn({handler:f,reactEvent:X}))},[I,f]),de=k.useCallback(X=>{I(rI()),I(Yn({handler:d,reactEvent:X}))},[I,d]),J=k.useCallback(X=>{I(Wv(X)),I(Yn({handler:p,reactEvent:X}))},[I,p]),ae=k.useCallback(()=>{I(AT())},[I]),T=k.useCallback(X=>{I(NT(X.key))},[I]),$=k.useCallback(X=>{I(Yn({handler:l,reactEvent:X}))},[I,l]),U=k.useCallback(X=>{I(Yn({handler:u,reactEvent:X}))},[I,u]),_=k.useCallback(X=>{I(Yn({handler:c,reactEvent:X}))},[I,c]),te=k.useCallback(X=>{I(Yn({handler:g,reactEvent:X}))},[I,g]),fe=k.useCallback(X=>{I(Yn({handler:S,reactEvent:X}))},[I,S]),ce=k.useCallback(X=>{O&&I(IT(X)),I(Yn({handler:x,reactEvent:X}))},[I,O,x]),Se=k.useCallback(X=>{I(Yn({handler:y,reactEvent:X}))},[I,y]),je=qee(C);return k.createElement(PI.Provider,{value:E},k.createElement(QB.Provider,{value:F},k.createElement(je,{width:M??(w==null?void 0:w.width),height:Z??(w==null?void 0:w.height),className:Ge("recharts-wrapper",r),style:Dee({position:"relative",cursor:"default",width:M,height:Z},w),onClick:Q,onContextMenu:$,onDoubleClick:U,onFocus:ae,onKeyDown:T,onMouseDown:_,onMouseEnter:he,onMouseLeave:de,onMouseMove:J,onMouseUp:te,onTouchEnd:Se,onTouchMove:ce,onTouchStart:fe,ref:Y},k.createElement($ee,null),n)))}),Vee=["width","height","responsive","children","className","style","compact","title","desc"];function Kee(e,t){if(e==null)return{};var n,r,i=Gee(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{var{width:n,height:r,responsive:i,children:a,className:l,style:u,compact:c,title:f,desc:d}=e,p=Kee(e,Vee),g=Jn(p);return c?k.createElement(k.Fragment,null,k.createElement(Ds,{width:n,height:r}),k.createElement(LE,{otherAttributes:g,title:f,desc:d},a)):k.createElement(Hee,{className:l,style:u,width:n,height:r,responsive:i??!1,onClick:e.onClick,onMouseLeave:e.onMouseLeave,onMouseEnter:e.onMouseEnter,onMouseMove:e.onMouseMove,onMouseDown:e.onMouseDown,onMouseUp:e.onMouseUp,onContextMenu:e.onContextMenu,onDoubleClick:e.onDoubleClick,onTouchStart:e.onTouchStart,onTouchMove:e.onTouchMove,onTouchEnd:e.onTouchEnd},k.createElement(LE,{otherAttributes:g,title:f,desc:d,ref:t},k.createElement(lQ,null,a)))});function qv(){return qv=Object.assign?Object.assign.bind():function(e){for(var t=1;tk.createElement(MT,{chartName:"BarChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:Zee,tooltipPayloadSearcher:EI,categoricalChartProps:e,ref:t})),ete=["axis"],tte=k.forwardRef((e,t)=>k.createElement(MT,{chartName:"AreaChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:ete,tooltipPayloadSearcher:EI,categoricalChartProps:e,ref:t}));function DT({active:e,payload:t,label:n,labelFormatter:r,valueFormatter:i}){if(!e||!t||t.length===0)return null;const a=r?r(n||""):n;return m.jsxs("div",{className:"bg-base-200 border border-base-300 rounded-lg px-3 py-2 shadow-lg text-sm",children:[a&&m.jsx("p",{className:"text-base-content font-medium mb-1",children:a}),t.map((l,u)=>{const[c,f]=i?i(l.value,l.name):[l.value,l.name];return m.jsxs("p",{className:"text-base-content/80",children:[m.jsxs("span",{className:"font-medium",children:[f,":"]})," ",c]},u)})]})}function nte({daily:e}){if(!e||e.length===0)return m.jsx("div",{className:"flex items-center justify-center h-48 text-base-content/50",children:"No data available"});const t=e.map(n=>({...n,displayDate:n.date.includes("-")?`${n.date.slice(5,7)}/${n.date.slice(8,10)}`:`${n.date.slice(4,6)}/${n.date.slice(6,8)}`}));return m.jsx("div",{className:"h-64 w-full",children:m.jsx(qN,{width:"100%",height:"100%",debounce:50,children:m.jsxs(tte,{data:t,margin:{top:5,right:20,left:10,bottom:5},children:[m.jsxs("defs",{children:[m.jsxs("linearGradient",{id:"dailyCostGradient",x1:"0",y1:"0",x2:"0",y2:"1",children:[m.jsx("stop",{offset:"5%",stopColor:"#3b82f6",stopOpacity:.6}),m.jsx("stop",{offset:"95%",stopColor:"#3b82f6",stopOpacity:0})]}),m.jsxs("linearGradient",{id:"dailyTokenGradient",x1:"0",y1:"0",x2:"0",y2:"1",children:[m.jsx("stop",{offset:"5%",stopColor:"#8b5cf6",stopOpacity:.3}),m.jsx("stop",{offset:"95%",stopColor:"#8b5cf6",stopOpacity:0})]})]}),m.jsx($x,{strokeDasharray:"3 3",className:"stroke-base-content/10"}),m.jsx(Bx,{dataKey:"displayDate",tick:{fontSize:12},className:"text-base-content/60",tickLine:!1,axisLine:!1}),m.jsx(Es,{yAxisId:"cost",tick:{fontSize:12},className:"text-base-content/60",tickLine:!1,axisLine:!1,tickFormatter:n=>`${n.toFixed(0)}$`}),m.jsx(Es,{yAxisId:"tokens",orientation:"right",tick:{fontSize:12},className:"text-base-content/60",tickLine:!1,axisLine:!1,tickFormatter:n=>Io(n)}),m.jsx(NI,{content:m.jsx(DT,{labelFormatter:n=>`Date: ${n}`,valueFormatter:(n,r)=>r==="totalCost"?[`${Number(n).toFixed(2)}$`,"Cost"]:r==="totalTokens"?[Io(Number(n)),"Tokens"]:[n,r]})}),m.jsx(Dv,{yAxisId:"tokens",type:"monotone",dataKey:"totalTokens",stroke:"#8b5cf6",strokeWidth:1.5,fill:"url(#dailyTokenGradient)"}),m.jsx(Dv,{yAxisId:"cost",type:"monotone",dataKey:"totalCost",stroke:"#3b82f6",strokeWidth:2,fill:"url(#dailyCostGradient)"})]})})})}function rte({monthly:e}){return!e||e.length===0?m.jsx("div",{className:"flex items-center justify-center h-48 text-base-content/50",children:"No data available"}):m.jsx("div",{className:"h-64 w-full",children:m.jsx(qN,{width:"100%",height:"100%",debounce:50,children:m.jsxs(Jee,{data:e,margin:{top:5,right:20,left:10,bottom:5},children:[m.jsx($x,{strokeDasharray:"3 3",className:"stroke-base-content/10"}),m.jsx(Bx,{dataKey:"month",tick:{fontSize:12},className:"text-base-content/60",tickLine:!1,axisLine:!1}),m.jsx(Es,{yAxisId:"cost",tick:{fontSize:12},className:"text-base-content/60",tickLine:!1,axisLine:!1,tickFormatter:t=>`${t.toFixed(0)}$`}),m.jsx(Es,{yAxisId:"tokens",orientation:"right",tick:{fontSize:12},className:"text-base-content/60",tickLine:!1,axisLine:!1,tickFormatter:t=>Io(t)}),m.jsx(NI,{content:m.jsx(DT,{labelFormatter:t=>`Month: ${t}`,valueFormatter:(t,n)=>n==="totalCost"?[`${Number(t).toFixed(2)}$`,"Cost"]:n==="totalTokens"?[Io(Number(t)),"Tokens"]:[t,n]})}),m.jsx(zv,{yAxisId:"tokens",dataKey:"totalTokens",fill:"#8b5cf6",opacity:.4,radius:[4,4,0,0]}),m.jsx(zv,{yAxisId:"cost",dataKey:"totalCost",fill:"#6366f1",opacity:.8,radius:[4,4,0,0]})]})})})}function ite(){var d,p,g,y,x;const{settings:e,isLoading:t}=gC(),n=t?Xn:e,r=S=>mC[S]??S,i=r(((d=n.commands)==null?void 0:d["spec-plan"])??Xn.commands["spec-plan"]),a=r(((p=n.commands)==null?void 0:p["spec-implement"])??Xn.commands["spec-implement"]),l=r(((g=n.commands)==null?void 0:g["spec-verify"])??Xn.commands["spec-verify"]),u=r(((y=n.agents)==null?void 0:y["spec-reviewer-quality"])??Xn.agents["spec-reviewer-quality"]),c=r(((x=n.agents)==null?void 0:x["spec-reviewer-compliance"])??Xn.agents["spec-reviewer-compliance"]),f=r(n.model??Xn.model);return m.jsx("div",{className:"card bg-base-200",children:m.jsxs("div",{className:"card-body",children:[m.jsxs("div",{className:"flex items-baseline justify-between mb-2",children:[m.jsx("h2",{className:"text-lg font-bold",children:"Model Routing"}),m.jsx("a",{href:"#/settings",className:"text-xs text-primary hover:underline",children:"Configure in Settings →"})]}),m.jsxs("div",{className:"space-y-6",children:[m.jsxs("div",{children:[m.jsx("h3",{className:"text-xs font-semibold uppercase tracking-wide text-base-content/50 mb-2",children:"/spec Routing Strategy"}),m.jsx("div",{className:"overflow-x-auto",children:m.jsxs("table",{className:"table table-sm",children:[m.jsx("thead",{children:m.jsxs("tr",{children:[m.jsx("th",{children:"/spec Phase"}),m.jsx("th",{children:"Orchestrator"}),m.jsx("th",{children:"Review Agents"})]})}),m.jsxs("tbody",{children:[m.jsxs("tr",{children:[m.jsx("td",{children:"Planning"}),m.jsx("td",{className:"font-mono text-primary",children:i}),m.jsx("td",{className:"font-mono text-secondary",children:c})]}),m.jsxs("tr",{children:[m.jsx("td",{children:"Implementation"}),m.jsx("td",{className:"font-mono text-secondary",children:a}),m.jsx("td",{className:"text-base-content/40",children:"—"})]}),m.jsxs("tr",{children:[m.jsx("td",{children:"Verification"}),m.jsx("td",{className:"font-mono text-primary",children:l}),m.jsxs("td",{className:"font-mono text-secondary",children:[c," + ",m.jsx("span",{className:"text-primary",children:u})]})]})]})]})}),m.jsxs("p",{className:"text-sm text-base-content/70 mt-2",children:["Quick Mode uses ",m.jsx("span",{className:"font-mono",children:f}),". Routing defaults use Opus for planning and verification orchestration, Sonnet for implementation."]})]}),m.jsxs("div",{className:"alert alert-info",children:[m.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",className:"stroke-current shrink-0 w-5 h-5",children:m.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",d:"M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})}),m.jsxs("span",{className:"text-sm",children:["In quick mode, use ",m.jsx("code",{className:"bg-base-300 px-1 rounded",children:"/model"})," in Claude Code to temporarily switch models. Permanent changes can be configured in ",m.jsx("a",{href:"#/settings",className:"underline",children:"Settings"}),"."]})]}),m.jsxs("div",{children:[m.jsx("h3",{className:"text-xs font-semibold uppercase tracking-wide text-base-content/50 mb-2",children:"Subscription Recommendations"}),m.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-4",children:[m.jsx("a",{href:"https://support.claude.com/en/articles/11049741-what-is-the-max-plan",target:"_blank",rel:"noopener noreferrer",className:"card bg-base-100 shadow hover:shadow-lg transition-shadow cursor-pointer",children:m.jsxs("div",{className:"card-body p-4",children:[m.jsx("h4",{className:"card-title text-base",children:"Max 5x"}),m.jsx("p",{className:"text-sm text-base-content/70",children:"Moderate solo usage"})]})}),m.jsx("a",{href:"https://support.claude.com/en/articles/11049741-what-is-the-max-plan",target:"_blank",rel:"noopener noreferrer",className:"card bg-base-100 shadow hover:shadow-lg transition-shadow cursor-pointer",children:m.jsxs("div",{className:"card-body p-4",children:[m.jsx("h4",{className:"card-title text-base",children:"Max 20x"}),m.jsx("p",{className:"text-sm text-base-content/70",children:"Heavy solo usage"})]})}),m.jsx("a",{href:"https://support.claude.com/en/articles/9266767-what-is-the-team-plan",target:"_blank",rel:"noopener noreferrer",className:"card bg-base-100 shadow hover:shadow-lg transition-shadow cursor-pointer",children:m.jsxs("div",{className:"card-body p-4",children:[m.jsx("h4",{className:"card-title text-base",children:"Team Premium"}),m.jsx("p",{className:"text-sm text-base-content/70",children:"6.25x/member + SSO/admin"})]})})]})]})]})]})})}function ate(){const{daily:e,monthly:t,isLoading:n,error:r,available:i,dataExists:a}=$B();if(n)return m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{className:"flex items-baseline gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Usage"}),m.jsxs("span",{className:"text-xs text-base-content/40 flex items-center gap-2",children:[m.jsx("span",{className:"loading loading-spinner loading-xs"}),"Loading usage data..."]})]}),m.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4",children:[...Array(4)].map((c,f)=>m.jsx("div",{className:"stats shadow bg-base-200 animate-pulse",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"h-3 bg-base-300 rounded w-20 mb-2"}),m.jsx("div",{className:"h-8 bg-base-300 rounded w-24 mb-1"}),m.jsx("div",{className:"h-3 bg-base-300 rounded w-16"})]})},f))}),m.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-3 gap-4",children:[m.jsx("div",{className:"card bg-base-200 lg:col-span-2 animate-pulse",children:m.jsxs("div",{className:"card-body",children:[m.jsx("div",{className:"h-4 bg-base-300 rounded w-48 mb-4"}),m.jsx("div",{className:"h-48 bg-base-300 rounded"})]})}),m.jsx("div",{className:"card bg-base-200 animate-pulse",children:m.jsxs("div",{className:"card-body",children:[m.jsx("div",{className:"h-4 bg-base-300 rounded w-40 mb-4"}),m.jsx("div",{className:"h-48 bg-base-300 rounded"})]})})]})]});if(!i)return m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Usage"}),m.jsx("p",{className:"text-base-content/60",children:"Token usage and API cost tracking"})]}),m.jsxs("div",{className:"alert alert-warning",children:[m.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:"stroke-current shrink-0 h-6 w-6",fill:"none",viewBox:"0 0 24 24",children:m.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",d:"M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"})}),m.jsxs("div",{children:[m.jsx("h3",{className:"font-bold",children:"Usage tracking requires ccusage"}),m.jsxs("div",{className:"text-xs",children:["Install with: ",m.jsx("code",{className:"bg-base-300 px-1 rounded",children:"npm install -g ccusage@latest"})]})]})]})]});if(r)return m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Usage"}),m.jsx("p",{className:"text-base-content/60",children:"Token usage and API cost tracking"})]}),m.jsx("div",{className:"alert alert-error",children:m.jsxs("span",{children:["Failed to load usage data: ",r]})})]});if(!a)return m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Usage"}),m.jsx("p",{className:"text-base-content/60",children:"Token usage and API cost tracking"})]}),m.jsxs("div",{className:"alert alert-info",children:[m.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",className:"stroke-current shrink-0 w-6 h-6",children:m.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",d:"M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})}),m.jsx("span",{children:"No usage data yet. Statistics will appear here after you use Claude Code."})]})]});const l=e.slice(-14),u=t.length<=2;return m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{className:"flex items-baseline gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Usage"}),m.jsx("span",{className:"text-xs text-base-content/40",children:"All projects"})]}),m.jsx(FB,{daily:e}),m.jsxs("div",{className:u?"grid grid-cols-1 lg:grid-cols-3 gap-4":"space-y-4",children:[m.jsx("div",{className:`card bg-base-200 ${u?"lg:col-span-2":""}`,children:m.jsxs("div",{className:"card-body",children:[m.jsx("h2",{className:"card-title text-sm",children:"Daily Cost & Tokens (Last 14 Days)"}),m.jsx(nte,{daily:l})]})}),m.jsx("div",{className:"card bg-base-200",children:m.jsxs("div",{className:"card-body",children:[m.jsx("h2",{className:"card-title text-sm",children:"Monthly Cost & Tokens"}),m.jsx(rte,{monthly:t})]})})]}),m.jsx(ite,{})]})}const ote=2e3,lte=30;function zE(e){if(!e)return NaN;const t=e.replace(/^v/i,"");return parseInt(t,10)}function $E(e,t){const n=new Map;for(const r of t)n.set(r.name,r);return e.map(r=>{const i=n.get(r.name),a=(i==null?void 0:i.version)??null,l=zE(r.latestVersion),u=zE(a),c=i!=null&&!isNaN(l)&&!isNaN(u)&&u{try{const A=await fetch("/api/vault/status");if(!A.ok)throw new Error(`Status fetch failed: ${A.status}`);const I=await A.json();if(!w.current)return;t(I),r($E(I.catalog,I.assets)),u(null)}catch(A){if(!w.current)return;u(A.message)}finally{w.current&&a(!1)}},[]),C=k.useCallback(async A=>{if(!(c.current.has(A)||f.current.has(A))){f.current.add(A),d.current.delete(A),p(I=>I+1);try{const I=await fetch(`/api/vault/detail/${encodeURIComponent(A)}`);if(!I.ok)throw new Error(`Detail fetch failed: ${I.status}`);const E=await I.json();w.current&&c.current.set(A,E)}catch(I){w.current&&(d.current.set(A,I.message),console.error("Failed to fetch vault detail:",A,I))}finally{f.current.delete(A),w.current&&p(I=>I+1)}}},[]),O=k.useCallback(async()=>{y(!0),S(null);try{const A=await fetch("/api/vault/install",{method:"POST"});if(!A.ok){const E=await A.json().catch(()=>({error:"Install failed"}));throw new Error(E.error||"Install failed")}let I=0;for(;IsetTimeout(F,ote)),!w.current)return;I++;const E=await fetch("/api/vault/status");if(!E.ok)continue;const L=await E.json();if(!L.isInstalling){c.current.clear(),d.current.clear(),w.current&&(t(L),r($E(L.catalog,L.assets)),y(!1));return}}w.current&&(S("Install taking longer than expected"),y(!1),await P())}catch(A){w.current&&(S(A.message),y(!1))}},[P]);return k.useEffect(()=>(w.current=!0,P(),()=>{w.current=!1}),[P]),{vaultStatus:e,mergedAssets:n,isLoading:i,error:l,fetchDetail:C,detailCache:c.current,loadingDetails:f.current,detailErrors:d.current,installAll:O,isInstalling:g,installError:x,refresh:P}}function ute({assets:e}){const t=e.length,n=e.reduce((u,c)=>(u[c.type]=(u[c.type]||0)+1,u),{}),r=n.skill||0,i=n.rule||0,a=n.command||0,l=t-r-i-a;return m.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4",children:[m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Total Assets"}),m.jsx("div",{className:"stat-value text-primary",children:t}),m.jsx("div",{className:"stat-desc",children:"In vault catalog"})]})}),m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Skills"}),m.jsx("div",{className:"stat-value",children:r}),m.jsx("div",{className:"stat-desc",children:"Reusable workflows"})]})}),m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Rules"}),m.jsx("div",{className:"stat-value",children:i}),m.jsx("div",{className:"stat-desc",children:"Coding standards"})]})}),m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:l>0?"Commands & Other":"Commands"}),m.jsx("div",{className:"stat-value",children:a+l}),m.jsx("div",{className:"stat-desc",children:"Slash commands"})]})})]})}function cte({detail:e,isLoading:t,onRetry:n}){return t?m.jsxs("div",{className:"p-4 bg-base-200 rounded-b-lg flex items-center gap-2",children:[m.jsx("span",{className:"loading loading-spinner loading-sm"}),m.jsx("span",{className:"text-sm text-base-content/60",children:"Loading details..."})]}):e?m.jsxs("div",{className:"p-4 bg-base-200 rounded-b-lg space-y-3",children:[e.metadata.description&&m.jsx("p",{className:"text-sm text-base-content/70",children:e.metadata.description}),e.versions.length>0&&m.jsxs("div",{children:[m.jsx("h4",{className:"text-xs font-semibold text-base-content/50 uppercase mb-2",children:"Version History"}),m.jsxs("table",{className:"table table-xs w-full",children:[m.jsx("thead",{children:m.jsxs("tr",{children:[m.jsx("th",{children:"Version"}),m.jsx("th",{children:"Date"}),m.jsx("th",{children:"Files"})]})}),m.jsx("tbody",{children:e.versions.map(r=>m.jsxs("tr",{children:[m.jsxs("td",{className:"font-mono",children:["v",r.version]}),m.jsx("td",{className:"text-base-content/60",children:r.createdAt??"—"}),m.jsx("td",{children:r.filesCount})]},r.version))})]})]}),e.metadata.authors.length>0&&m.jsxs("div",{className:"text-xs text-base-content/50",children:["Authors: ",e.metadata.authors.join(", ")]})]}):m.jsxs("div",{className:"p-4 bg-base-200 rounded-b-lg text-sm text-base-content/60",children:[m.jsx("span",{children:"Failed to load details."}),n&&m.jsx("button",{className:"btn btn-ghost btn-xs ml-2",onClick:n,children:"Retry"})]})}const fte={skill:"lucide:wand-2",rule:"lucide:scale",command:"lucide:terminal"},dte={skill:"primary",rule:"info",command:"accent"},hte=[{id:"all",label:"All"},{id:"skill",label:"Skills"},{id:"rule",label:"Rules"},{id:"command",label:"Commands"}];function pte({assets:e,searchQuery:t,activeTab:n,onTabChange:r,onSearchChange:i,expandedAsset:a,onAssetClick:l,fetchDetail:u,detailCache:c,loadingDetails:f}){const d=e.filter(p=>{const g=n==="all"||p.type===n,y=!t||p.name.toLowerCase().includes(t.toLowerCase());return g&&y});return m.jsxs("div",{className:"space-y-4",children:[m.jsxs("div",{className:"flex items-center justify-between gap-4 flex-wrap",children:[m.jsx(JM,{tabs:hte,activeTab:n,onTabChange:r}),m.jsx("input",{type:"text",placeholder:"Search assets...",className:"input input-bordered input-sm w-60",value:t,onChange:p=>i(p.target.value)})]}),d.length===0?m.jsx("div",{className:"text-center py-8 text-base-content/50",children:t?`No assets matching "${t}"`:"No assets in this category"}):m.jsx("div",{className:"overflow-x-auto",children:m.jsxs("table",{className:"table w-full",children:[m.jsx("thead",{children:m.jsxs("tr",{children:[m.jsx("th",{children:"Name"}),m.jsx("th",{children:"Type"}),m.jsx("th",{children:"Installed"}),m.jsx("th",{children:"Latest"}),m.jsx("th",{children:"Scope"})]})}),m.jsx("tbody",{children:d.map(p=>m.jsx(mte,{asset:p,isExpanded:a===p.name,onClick:()=>l(p.name),fetchDetail:u,detail:c.get(p.name)??null,isLoadingDetail:f.has(p.name)},p.name))})]})})]})}function mte({asset:e,isExpanded:t,onClick:n,fetchDetail:r,detail:i,isLoadingDetail:a}){const l=fte[e.type]??"lucide:package",u=dte[e.type]??"ghost",c=()=>{n(),!t&&!i&&!a&&r(e.name)};return m.jsxs(m.Fragment,{children:[m.jsxs("tr",{className:"cursor-pointer hover:bg-base-200 transition-colors",onClick:c,children:[m.jsx("td",{children:m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(se,{icon:l,size:16,className:"text-base-content/50"}),m.jsx("span",{className:"font-medium",children:e.name}),e.hasUpdate&&m.jsx(Te,{variant:"warning",size:"sm",children:"update"})]})}),m.jsx("td",{children:m.jsx(Te,{variant:u,size:"sm",children:e.type})}),m.jsx("td",{className:"font-mono text-sm",children:e.installedVersion??"—"}),m.jsxs("td",{className:"font-mono text-sm",children:["v",e.latestVersion]}),m.jsx("td",{className:"text-sm text-base-content/60",children:e.scope??"—"})]}),t&&m.jsx("tr",{children:m.jsx("td",{colSpan:5,className:"p-0",children:m.jsx(cte,{detail:i,isLoading:a,onRetry:()=>r(e.name)})})})]})}function gte(e){try{const t=new URL(e);return(t.host+t.pathname).replace(/\.git$/,"")}catch{return e}}function vte(){const{vaultStatus:e,mergedAssets:t,isLoading:n,error:r,fetchDetail:i,detailCache:a,loadingDetails:l,installAll:u,isInstalling:c,installError:f}=ste(),d=uC(),p=k.useRef(c),[g,y]=k.useState(""),[x,S]=k.useState("all"),[w,P]=k.useState(null),C=k.useCallback(()=>{u()},[u]),O=k.useCallback(A=>{P(I=>I===A?null:A)},[]);return k.useEffect(()=>{p.current&&!c&&(f?f.includes("longer than expected")?d.warning(f,"Install Timeout"):d.error(f,"Install Failed"):d.success("Vault synced successfully","Sync Complete")),p.current=c},[c,f,d]),n?m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{className:"flex items-baseline gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Vault"}),m.jsxs("span",{className:"text-xs text-base-content/40 flex items-center gap-2",children:[m.jsx("span",{className:"loading loading-spinner loading-xs"}),"Loading vault data..."]})]}),m.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4",children:[...Array(4)].map((A,I)=>m.jsx("div",{className:"stats shadow bg-base-200 animate-pulse",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"h-3 bg-base-300 rounded w-20 mb-2"}),m.jsx("div",{className:"h-8 bg-base-300 rounded w-24 mb-1"}),m.jsx("div",{className:"h-3 bg-base-300 rounded w-16"})]})},I))}),m.jsx("div",{className:"card bg-base-200 animate-pulse",children:m.jsxs("div",{className:"card-body",children:[m.jsx("div",{className:"h-4 bg-base-300 rounded w-48 mb-4"}),m.jsx("div",{className:"h-48 bg-base-300 rounded"})]})})]}):r?m.jsxs("div",{className:"space-y-8",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Vault"}),m.jsx("div",{className:"alert alert-error",children:m.jsxs("span",{children:["Failed to load vault data: ",r]})})]}):e!=null&&e.installed?e.configured?m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{className:"flex items-center justify-between flex-wrap gap-4",children:[m.jsxs("div",{className:"flex items-center gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Vault"}),m.jsx(Te,{variant:"success",size:"sm",children:"Connected"}),f&&m.jsx("span",{className:"text-xs text-warning",children:f})]}),m.jsx(yte,{isInstalling:c,onInstall:C})]}),m.jsxs("div",{className:"flex items-center gap-2 text-sm text-base-content/60",children:[e.vaultUrl&&m.jsxs(m.Fragment,{children:[m.jsx(se,{icon:"lucide:git-branch",size:16}),m.jsx("span",{className:"font-mono text-xs",children:gte(e.vaultUrl)})]}),e.version&&m.jsxs(Te,{variant:"ghost",size:"sm",children:["sx v",e.version]}),m.jsxs("span",{children:["Run ",m.jsx("code",{className:"font-mono text-xs bg-base-300 px-1 rounded",children:"/vault"})," in Claude Code to push or pull skills, rules, and commands."]})]}),m.jsx(ute,{assets:t}),t.length===0?m.jsx(Eo,{icon:"lucide:package",title:"No assets in vault",description:"Push skills, rules, or commands to your vault using /vault in Claude Code."}):m.jsx(pte,{assets:t,searchQuery:g,activeTab:x,onTabChange:S,onSearchChange:y,expandedAsset:w,onAssetClick:O,fetchDetail:i,detailCache:a,loadingDetails:l})]}):m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{className:"flex items-center gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Vault"}),e.version&&m.jsxs(Te,{variant:"ghost",size:"sm",children:["sx v",e.version]})]}),m.jsx(Eo,{icon:"lucide:archive",title:"Vault not configured",description:"Run /vault in Claude Code to configure your vault and push or pull skills, rules, and commands."})]}):m.jsxs("div",{className:"space-y-8",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Vault"}),m.jsx(Eo,{icon:"lucide:archive",title:"sx is not installed",description:"Run /vault in Claude Code to push or pull skills, rules, and commands."})]})}function yte({isInstalling:e,onInstall:t}){return m.jsx("button",{className:"btn btn-primary btn-sm",disabled:e,onClick:t,children:e?m.jsxs(m.Fragment,{children:[m.jsx("span",{className:"loading loading-spinner loading-xs"}),"Syncing..."]}):m.jsxs(m.Fragment,{children:[m.jsx(se,{icon:"lucide:refresh-cw",size:14}),"Sync All"]})})}const Ql=[{key:"DEBUG",label:"Debug",icon:"🔍",color:"text-gray-400"},{key:"INFO",label:"Info",icon:"ℹ️",color:"text-info"},{key:"WARN",label:"Warn",icon:"⚠️",color:"text-warning"},{key:"ERROR",label:"Error",icon:"❌",color:"text-error"}],Zl=[{key:"HOOK",label:"Hook",icon:"🪝",color:"text-purple-400"},{key:"WORKER",label:"Worker",icon:"⚙️",color:"text-info"},{key:"SDK",label:"SDK",icon:"📦",color:"text-success"},{key:"PARSER",label:"Parser",icon:"📄",color:"text-sky-400"},{key:"DB",label:"DB",icon:"🗄️",color:"text-orange-400"},{key:"SYSTEM",label:"System",icon:"💻",color:"text-gray-400"},{key:"HTTP",label:"HTTP",icon:"🌐",color:"text-green-400"},{key:"SESSION",label:"Session",icon:"📋",color:"text-pink-400"},{key:"CHROMA",label:"Chroma",icon:"🔮",color:"text-violet-400"}];function xte(e){const t=/^\[([^\]]+)\]\s+\[(\w+)\s*\]\s+\[(\w+)\s*\]\s+(?:\[([^\]]+)\]\s+)?(.*)$/,n=e.match(t);if(!n)return{raw:e};const[,r,i,a,l,u]=n;let c;return u.startsWith("→")?c="dataIn":u.startsWith("←")?c="dataOut":u.startsWith("✓")?c="success":u.startsWith("✗")?c="failure":u.startsWith("⏱")?c="timing":u.includes("[HAPPY-PATH]")&&(c="happyPath"),{raw:e,timestamp:r,level:i==null?void 0:i.trim(),component:a==null?void 0:a.trim(),correlationId:l||void 0,message:u,isSpecial:c}}function bte({isOpen:e,onClose:t}){const[n,r]=k.useState(""),[i,a]=k.useState(!1),[l,u]=k.useState(null),[c,f]=k.useState(!1),[d,p]=k.useState(350),[g,y]=k.useState(!1),x=k.useRef(0),S=k.useRef(0),w=k.useRef(null),P=k.useRef(!0),[C,O]=k.useState(new Set(["DEBUG","INFO","WARN","ERROR"])),[A,I]=k.useState(new Set(["HOOK","WORKER","SDK","PARSER","DB","SYSTEM","HTTP","SESSION","CHROMA"])),[E,L]=k.useState(!1),F=k.useMemo(()=>n?n.split(` -`).map(xte):[],[n]),H=k.useMemo(()=>F.filter(_=>E?_.raw.includes("[ALIGNMENT]"):!_.level||!_.component?!0:C.has(_.level)&&A.has(_.component)),[F,C,A,E]),R=k.useCallback(()=>{if(!w.current)return!0;const{scrollTop:_,scrollHeight:te,clientHeight:fe}=w.current;return te-_-fe<50},[]),W=k.useCallback(()=>{w.current&&P.current&&(w.current.scrollTop=w.current.scrollHeight)},[]),M=k.useCallback(async()=>{P.current=R(),a(!0),u(null);try{const _=await fetch("/api/logs");if(!_.ok)throw new Error(`Failed to fetch logs: ${_.statusText}`);const te=await _.json();r(te.logs||"")}catch(_){u(_ instanceof Error?_.message:"Unknown error")}finally{a(!1)}},[R]);k.useEffect(()=>{W()},[n,W]);const Z=k.useCallback(async()=>{if(confirm("Are you sure you want to clear all logs?")){a(!0),u(null);try{const _=await fetch("/api/logs/clear",{method:"POST"});if(!_.ok)throw new Error(`Failed to clear logs: ${_.statusText}`);r("")}catch(_){u(_ instanceof Error?_.message:"Unknown error")}finally{a(!1)}}},[]),Y=k.useCallback(_=>{_.preventDefault(),y(!0),x.current=_.clientY,S.current=d},[d]);k.useEffect(()=>{if(!g)return;const _=fe=>{const ce=x.current-fe.clientY,Se=Math.min(Math.max(150,S.current+ce),window.innerHeight-100);p(Se)},te=()=>{y(!1)};return document.addEventListener("mousemove",_),document.addEventListener("mouseup",te),()=>{document.removeEventListener("mousemove",_),document.removeEventListener("mouseup",te)}},[g]),k.useEffect(()=>{e&&(P.current=!0,M())},[e,M]),k.useEffect(()=>{if(!e||!c)return;const _=setInterval(M,2e3);return()=>clearInterval(_)},[e,c,M]);const Q=k.useCallback(_=>{O(te=>{const fe=new Set(te);return fe.has(_)?fe.delete(_):fe.add(_),fe})},[]),he=k.useCallback(_=>{I(te=>{const fe=new Set(te);return fe.has(_)?fe.delete(_):fe.add(_),fe})},[]),de=k.useCallback(_=>{O(_?new Set(["DEBUG","INFO","WARN","ERROR"]):new Set)},[]),J=k.useCallback(_=>{I(_?new Set(["HOOK","WORKER","SDK","PARSER","DB","SYSTEM","HTTP","SESSION","CHROMA"]):new Set)},[]);if(!e)return null;const ae=_=>{const te=Ql.find(fe=>fe.key===_);return(te==null?void 0:te.color)||"text-base-content"},T=_=>{const te=Zl.find(fe=>fe.key===_);return(te==null?void 0:te.color)||"text-base-content"},$=_=>_.level==="ERROR"?"bg-error/10":_.level==="WARN"?"bg-warning/5":"",U=(_,te)=>{var Se,je;if(!_.timestamp)return m.jsx("div",{className:"whitespace-pre-wrap break-all text-base-content/60",children:_.raw},te);const fe=Ql.find(X=>X.key===_.level),ce=Zl.find(X=>X.key===_.component);return m.jsxs("div",{className:`whitespace-pre-wrap break-all py-0.5 px-1 rounded ${$(_)}`,children:[m.jsxs("span",{className:"text-base-content/40",children:["[",_.timestamp,"]"]})," ",m.jsxs("span",{className:`font-medium ${ae(_.level)}`,title:_.level,children:["[",(fe==null?void 0:fe.icon)||""," ",(Se=_.level)==null?void 0:Se.padEnd(5),"]"]})," ",m.jsxs("span",{className:`font-medium ${T(_.component)}`,title:_.component,children:["[",(ce==null?void 0:ce.icon)||""," ",(je=_.component)==null?void 0:je.padEnd(7),"]"]})," ",_.correlationId&&m.jsxs(m.Fragment,{children:[m.jsxs("span",{className:"text-base-content/50",children:["[",_.correlationId,"]"]})," "]}),m.jsx("span",{className:_.isSpecial==="success"?"text-success":_.isSpecial==="failure"?"text-error":"text-base-content",children:_.message})]},te)};return m.jsxs("div",{className:"fixed bottom-0 left-0 right-0 bg-base-100 border-t border-base-300 flex flex-col z-50 shadow-2xl",style:{height:`${d}px`},children:[m.jsx("div",{className:"h-1.5 cursor-ns-resize flex items-center justify-center bg-base-200 hover:bg-base-300 transition-colors",onMouseDown:Y,children:m.jsx("div",{className:"w-12 h-1 bg-base-300 rounded-full"})}),m.jsxs("div",{className:"flex justify-between items-center px-3 h-9 bg-base-200 border-b border-base-300",children:[m.jsx("div",{className:"flex gap-1",children:m.jsx("div",{className:"px-3 py-1 text-xs font-medium bg-base-100 text-base-content rounded",children:"Console"})}),m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsxs("label",{className:"flex items-center gap-1.5 text-xs text-base-content/60 cursor-pointer",children:[m.jsx("input",{type:"checkbox",className:"checkbox checkbox-xs",checked:c,onChange:_=>f(_.target.checked)}),"Auto-refresh"]}),m.jsx("button",{className:"btn btn-ghost btn-xs btn-square",onClick:M,disabled:i,title:"Refresh logs",children:m.jsx(se,{icon:"lucide:refresh-cw",size:14,className:i?"animate-spin":""})}),m.jsx("button",{className:"btn btn-ghost btn-xs btn-square",onClick:()=>{P.current=!0,W()},title:"Scroll to bottom",children:m.jsx(se,{icon:"lucide:arrow-down",size:14})}),m.jsx("button",{className:"btn btn-ghost btn-xs btn-square hover:text-error",onClick:Z,disabled:i,title:"Clear logs",children:m.jsx(se,{icon:"lucide:trash-2",size:14})}),m.jsx("button",{className:"btn btn-ghost btn-xs btn-square",onClick:t,title:"Close console",children:m.jsx(se,{icon:"lucide:x",size:14})})]})]}),m.jsxs("div",{className:"flex flex-wrap gap-3 px-3 py-2 bg-base-200/50 border-b border-base-300 text-xs",children:[m.jsxs("div",{className:"flex items-center gap-1.5",children:[m.jsx("span",{className:"font-medium text-base-content/50 uppercase text-[10px]",children:"Quick:"}),m.jsx("button",{className:`badge badge-sm cursor-pointer ${E?"badge-warning":"badge-ghost opacity-50"}`,onClick:()=>L(!E),title:"Show only session alignment logs",children:"🔗 Alignment"})]}),m.jsxs("div",{className:"flex items-center gap-1.5",children:[m.jsx("span",{className:"font-medium text-base-content/50 uppercase text-[10px]",children:"Levels:"}),m.jsxs("div",{className:"flex flex-wrap gap-1",children:[Ql.map(_=>m.jsxs("button",{className:`badge badge-sm cursor-pointer ${C.has(_.key)?"badge-primary":"badge-ghost opacity-40"}`,onClick:()=>Q(_.key),title:_.label,children:[_.icon," ",_.label]},_.key)),m.jsx("button",{className:"badge badge-sm badge-ghost cursor-pointer",onClick:()=>de(C.size===0),title:C.size===Ql.length?"Select none":"Select all",children:C.size===Ql.length?"○":"●"})]})]}),m.jsxs("div",{className:"flex items-center gap-1.5",children:[m.jsx("span",{className:"font-medium text-base-content/50 uppercase text-[10px]",children:"Components:"}),m.jsxs("div",{className:"flex flex-wrap gap-1",children:[Zl.map(_=>m.jsxs("button",{className:`badge badge-sm cursor-pointer ${A.has(_.key)?"badge-secondary":"badge-ghost opacity-40"}`,onClick:()=>he(_.key),title:_.label,children:[_.icon," ",_.label]},_.key)),m.jsx("button",{className:"badge badge-sm badge-ghost cursor-pointer",onClick:()=>J(A.size===0),title:A.size===Zl.length?"Select none":"Select all",children:A.size===Zl.length?"○":"●"})]})]})]}),l&&m.jsxs("div",{className:"px-3 py-2 bg-error/10 text-error text-xs",children:["⚠ ",l]}),m.jsx("div",{className:"flex-1 overflow-y-auto px-3 py-2",ref:w,children:m.jsx("div",{className:"font-mono text-xs leading-relaxed",children:H.length===0?m.jsx("div",{className:"text-base-content/40 italic",children:"No logs available"}):H.map((_,te)=>U(_,te))})})]})}const Hv={COMMAND_PALETTE:{key:"k",modifiers:["ctrl","meta"],description:"Open command palette",action:"openCommandPalette"},SEARCH:{key:"/",modifiers:["ctrl","meta"],description:"Focus search",action:"focusSearch"},ESCAPE:{key:"Escape",description:"Close modal/palette",action:"escape"},TOGGLE_THEME:{key:"t",modifiers:["ctrl","meta"],description:"Toggle theme",action:"toggleTheme"},TOGGLE_SIDEBAR:{key:"b",modifiers:["ctrl","meta"],description:"Toggle sidebar",action:"toggleSidebar"}},wte=[{sequence:["g","d"],description:"Go to Dashboard",action:"navigate:/"},{sequence:["g","m"],description:"Go to Memories",action:"navigate:/memories"},{sequence:["g","v"],description:"Go to Vault",action:"navigate:/vault"}];function FE(e){var r,i,a,l;const t=typeof navigator<"u"&&navigator.platform.includes("Mac"),n=[];return((r=e.modifiers)!=null&&r.includes("ctrl")||(i=e.modifiers)!=null&&i.includes("meta"))&&n.push(t?"⌘":"Ctrl"),(a=e.modifiers)!=null&&a.includes("shift")&&n.push(t?"⇧":"Shift"),(l=e.modifiers)!=null&&l.includes("alt")&&n.push(t?"⌥":"Alt"),n.push(e.key.toUpperCase()),n.join(t?"":"+")}function kte({open:e,onClose:t,onNavigate:n,onToggleTheme:r,onToggleSidebar:i}){const[a,l]=k.useState(""),[u,c]=k.useState(0),f=k.useRef(null),d=k.useRef(null),p=k.useMemo(()=>[{id:"nav-dashboard",label:"Go to Dashboard",shortcut:"G D",category:"navigation",icon:"lucide:layout-dashboard",action:()=>n("/")},{id:"nav-memories",label:"Go to Memories",shortcut:"G M",category:"navigation",icon:"lucide:brain",action:()=>n("/memories")},{id:"nav-usage",label:"Go to Usage",shortcut:"G U",category:"navigation",icon:"lucide:bar-chart-3",action:()=>n("/usage")},{id:"nav-vault",label:"Go to Vault",shortcut:"G V",category:"navigation",icon:"lucide:archive",action:()=>n("/vault")},{id:"action-theme",label:"Toggle Theme",shortcut:FE(Hv.TOGGLE_THEME),category:"action",icon:"lucide:sun-moon",action:r},{id:"action-sidebar",label:"Toggle Sidebar",shortcut:FE(Hv.TOGGLE_SIDEBAR),category:"action",icon:"lucide:panel-left",action:i}],[n,r,i]),g=k.useMemo(()=>{if(!a)return p;const C=a.toLowerCase();return p.filter(O=>O.label.toLowerCase().includes(C)||O.category.toLowerCase().includes(C))},[p,a]);k.useEffect(()=>{c(0)},[a]),k.useEffect(()=>{e&&(l(""),c(0),setTimeout(()=>{var C;return(C=f.current)==null?void 0:C.focus()},50))},[e]),k.useEffect(()=>{if(!d.current)return;const C=d.current.querySelector('[data-selected="true"]');C==null||C.scrollIntoView({block:"nearest"})},[u]);const y=C=>{C.action(),t()},x=C=>{switch(C.key){case"ArrowDown":C.preventDefault(),c(O=>(O+1)%g.length);break;case"ArrowUp":C.preventDefault(),c(O=>(O-1+g.length)%g.length);break;case"Enter":C.preventDefault(),g[u]&&y(g[u]);break;case"Escape":C.preventDefault(),t();break}};if(!e)return null;const S=g.reduce((C,O)=>(C[O.category]||(C[O.category]=[]),C[O.category].push(O),C),{}),w={navigation:"Navigation",action:"Actions",theme:"Theme"};let P=0;return m.jsxs("dialog",{className:"modal modal-open",children:[m.jsxs("div",{className:"modal-box max-w-xl p-0 overflow-hidden",children:[m.jsxs("div",{className:"flex items-center gap-2 p-3 border-b border-base-300",children:[m.jsx(se,{icon:"lucide:search",size:18,className:"text-base-content/50"}),m.jsx("input",{ref:f,type:"text",placeholder:"Type a command or search...",value:a,onChange:C=>l(C.target.value),onKeyDown:x,className:"flex-1 bg-transparent outline-none text-base"}),m.jsx("kbd",{className:"kbd kbd-sm",children:"ESC"})]}),m.jsx("div",{ref:d,className:"max-h-80 overflow-y-auto p-2",children:g.length===0?m.jsx("div",{className:"text-center py-8 text-base-content/50",children:"No commands found"}):Object.entries(S).map(([C,O])=>m.jsxs("div",{children:[m.jsx("div",{className:"text-xs font-medium text-base-content/50 px-2 py-1 mt-2 first:mt-0",children:w[C]||C}),O.map(A=>{const I=P===u,E=P;return P++,m.jsxs("button",{"data-selected":I,className:`w-full flex items-center gap-3 px-3 py-2 rounded-lg text-left transition-colors ${I?"bg-primary text-primary-content":"hover:bg-base-200"}`,onClick:()=>y(A),onMouseEnter:()=>c(E),children:[m.jsx(se,{icon:A.icon,size:16,className:I?"text-primary-content":"text-base-content/60"}),m.jsx("span",{className:"flex-1",children:A.label}),A.shortcut&&m.jsx("kbd",{className:`kbd kbd-sm ${I?"bg-primary-content/20 text-primary-content":""}`,children:A.shortcut})]},A.id)})]},C))}),m.jsxs("div",{className:"border-t border-base-300 px-3 py-2 text-xs text-base-content/50 flex gap-4",children:[m.jsxs("span",{children:[m.jsx("kbd",{className:"kbd kbd-xs",children:"↑↓"})," Navigate"]}),m.jsxs("span",{children:[m.jsx("kbd",{className:"kbd kbd-xs",children:"↵"})," Select"]}),m.jsxs("span",{children:[m.jsx("kbd",{className:"kbd kbd-xs",children:"ESC"})," Close"]})]})]}),m.jsx("form",{method:"dialog",className:"modal-backdrop bg-black/50",children:m.jsx("button",{onClick:t,children:"close"})})]})}function Ste({license:e,onActivated:t}){const[n,r]=k.useState(""),[i,a]=k.useState(null),[l,u]=k.useState(!1),c=k.useCallback(async()=>{const y=n.trim();if(y){a(null),u(!0);try{const S=await(await fetch("/api/license/activate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:y})})).json();S.success?(r(""),a(null),t()):a(S.error??"Activation failed")}catch{a("Connection failed. Is the Pilot worker running?")}finally{u(!1)}}},[n,t]),f=k.useCallback(y=>{y.key==="Enter"&&!l&&c()},[c,l]),d=(e==null?void 0:e.isExpired)===!0,p=d?"License Expired":"License Required",g=d?"Your Claude Pilot license has expired. Please activate a new license to continue using the Console.":"Claude Pilot Console requires an active license or trial. Activate your license key below to get started.";return m.jsx("div",{className:"min-h-screen flex items-center justify-center bg-base-200 p-4",children:m.jsx("div",{className:"card bg-base-100 shadow-xl w-full max-w-md",children:m.jsxs("div",{className:"card-body items-center text-center gap-4",children:[m.jsx("div",{className:"text-5xl mb-2",children:d?"🚫":"🔒"}),m.jsx("h1",{className:"card-title text-2xl",children:p}),m.jsx("p",{className:"text-base-content/60 text-sm",children:g}),m.jsxs("div",{className:"w-full space-y-3 mt-2",children:[m.jsx("input",{type:"text",className:"input input-bordered w-full",placeholder:"Enter your license key",value:n,onChange:y=>{r(y.target.value),a(null)},onKeyDown:f,disabled:l,autoFocus:!0}),i&&m.jsx("p",{className:"text-error text-sm text-left",children:i}),m.jsx("button",{className:"btn btn-primary w-full",onClick:c,disabled:l||!n.trim(),children:l?"Activating...":"Activate License"})]}),m.jsx("div",{className:"divider text-base-content/40 text-xs my-1",children:"or"}),m.jsx("a",{href:"https://claude-pilot.com/#pricing",target:"_blank",rel:"noopener noreferrer",className:"btn btn-outline btn-sm w-full",children:"Get a License"}),m.jsxs("p",{className:"text-base-content/40 text-xs mt-2",children:["Visit"," ",m.jsx("a",{href:"https://claude-pilot.com",target:"_blank",rel:"noopener noreferrer",className:"text-primary hover:underline",children:"claude-pilot.com"})," ","to learn more about Claude Pilot."]})]})})})}const LT="pilot-memory-theme";function jte(){return typeof window>"u"||window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}function BE(){try{const e=localStorage.getItem(LT);if(e==="system"||e==="light"||e==="dark")return e}catch(e){console.warn("Failed to read theme preference from localStorage:",e)}return"system"}function UE(e){return e==="system"?jte():e}function WE(e){return e==="dark"?"claude-pilot":"claude-pilot-light"}function Pte(){const[e,t]=k.useState(BE),[n,r]=k.useState(()=>UE(BE()));return k.useEffect(()=>{const a=UE(e);r(a),document.documentElement.setAttribute("data-theme",WE(a))},[e]),k.useEffect(()=>{if(e!=="system")return;const a=window.matchMedia("(prefers-color-scheme: dark)"),l=u=>{const c=u.matches?"dark":"light";r(c),document.documentElement.setAttribute("data-theme",WE(c))};return a.addEventListener("change",l),()=>a.removeEventListener("change",l)},[e]),{preference:e,resolvedTheme:n,setThemePreference:a=>{try{localStorage.setItem(LT,a),t(a)}catch(l){console.warn("Failed to save theme preference to localStorage:",l),t(a)}}}}function Ete(e,t={}){const{enabled:n=!0}=t,r=k.useRef([]),i=k.useRef(null),a=k.useCallback(()=>{r.current=[],i.current&&(clearTimeout(i.current),i.current=null)},[]);k.useEffect(()=>{if(!n)return;const l=u=>{const c=u.target;if(c.tagName==="INPUT"||c.tagName==="TEXTAREA"||c.isContentEditable){u.key==="Escape"&&e("escape");return}navigator.platform.includes("Mac");const f=u.ctrlKey||u.metaKey;for(const d of Object.values(Hv)){const p=!d.modifiers||d.modifiers.some(x=>x==="ctrl"?u.ctrlKey:x==="meta"?u.metaKey:x==="shift"?u.shiftKey:x==="alt"?u.altKey:!1),g=u.key.toLowerCase()===d.key.toLowerCase(),y=d.modifiers&&d.modifiers.length>0;if(g&&p&&(y?f:!f)){u.preventDefault(),e(d.action),a();return}}if(!f&&!u.shiftKey&&!u.altKey){i.current&&clearTimeout(i.current),r.current.push(u.key.toLowerCase()),i.current=setTimeout(a,1e3);for(const d of wte){const p=r.current,g=d.sequence;if(g.slice(0,p.length).every((x,S)=>x===p[S])){if(p.length===g.length){u.preventDefault(),e(d.action),a();return}return}}a()}};return document.addEventListener("keydown",l),()=>{document.removeEventListener("keydown",l),a()}},[n,e,a])}const Cte=[{path:"/",component:RL},{path:"/spec",component:RB},{path:"/memories",component:Zw},{path:"/memories/:type",component:Zw},{path:"/sessions",component:rR},{path:"/usage",component:ate},{path:"/vault",component:vte},{path:"/settings",component:lR}],qE="pilot-memory-sidebar-collapsed";function Ote(){const{path:e,navigate:t}=hC(),{resolvedTheme:n,setThemePreference:r}=Pte(),{workerStatus:i}=pC(),{license:a,isLoading:l,refetch:u}=dC(),[c,f]=k.useState(()=>{if(typeof window<"u"&&window.innerWidth<1024)return!0;try{return localStorage.getItem(qE)==="true"}catch{return!1}}),[d,p]=k.useState(!1),[g,y]=k.useState(!1),x=k.useCallback(()=>{r(n==="light"?"dark":"light")},[n,r]),S=k.useCallback(()=>{f(O=>{const A=!O;try{localStorage.setItem(qE,String(A))}catch{}return A})},[]),w=k.useCallback(()=>{p(O=>!O)},[]),P=k.useCallback(O=>{if(O==="openCommandPalette")y(!0);else if(O==="escape")y(!1),p(!1);else if(O==="toggleTheme")r(n==="light"?"dark":"light");else if(O==="toggleSidebar")S();else if(O==="focusSearch"){const A=document.querySelector('input[type="search"]');A==null||A.focus()}else O.startsWith("navigate:")&&t(O.replace("navigate:",""))},[n,r,t,S]);Ete(P);const C=!l&&(a==null?void 0:a.valid)===!0&&!a.isExpired;return l?m.jsx("div",{className:"min-h-screen flex items-center justify-center bg-base-200","data-theme":n==="dark"?"claude-pilot":"claude-pilot-light",children:m.jsx("span",{className:"loading loading-spinner loading-lg text-primary"})}):C?m.jsx(gL,{children:m.jsxs(pL,{children:[m.jsx(SL,{currentPath:`#${e}`,workerStatus:i.status,version:i.version,queueDepth:i.queueDepth,theme:n,onToggleTheme:x,onToggleLogs:w,sidebarCollapsed:c,onToggleSidebar:S,children:m.jsx(jL,{routes:Cte})}),m.jsx(bte,{isOpen:d,onClose:()=>p(!1)}),m.jsx(kte,{open:g,onClose:()=>y(!1),onNavigate:t,onToggleTheme:x,onToggleSidebar:S})]})}):m.jsx("div",{"data-theme":n==="dark"?"claude-pilot":"claude-pilot-light",children:m.jsx(Ste,{license:a,onActivated:u})})}class Nte extends k.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?m.jsxs("div",{style:{padding:"20px",color:"#ff6b6b",backgroundColor:"#1a1a1a",minHeight:"100vh"},children:[m.jsx("h1",{style:{fontSize:"24px",marginBottom:"10px"},children:"Something went wrong"}),m.jsx("p",{style:{marginBottom:"10px",color:"#8b949e"},children:"The application encountered an error. Please refresh the page to try again."}),this.state.error&&m.jsxs("details",{style:{marginTop:"20px",color:"#8b949e"},children:[m.jsx("summary",{style:{cursor:"pointer",marginBottom:"10px"},children:"Error details"}),m.jsxs("pre",{style:{backgroundColor:"#0d1117",padding:"10px",borderRadius:"6px",overflow:"auto"},children:[this.state.error.toString(),this.state.errorInfo&&` + */var kE;function oZ(){if(kE)return Og;kE=1;var e=Fo();function t(c,f){return c===f&&(c!==0||1/c===1/f)||c!==c&&f!==f}var n=typeof Object.is=="function"?Object.is:t,r=e.useSyncExternalStore,i=e.useRef,a=e.useEffect,l=e.useMemo,u=e.useDebugValue;return Og.useSyncExternalStoreWithSelector=function(c,f,d,h,g){var y=i(null);if(y.current===null){var x={hasValue:!1,value:null};y.current=x}else x=y.current;y=l(function(){function w(I){if(!P){if(P=!0,C=I,I=h(I),g!==void 0&&x.hasValue){var E=x.value;if(g(E,I))return O=E}return O=I}if(E=O,n(C,I))return E;var L=h(I);return g!==void 0&&g(E,L)?(C=I,E):(C=I,O=L)}var P=!1,C,O,A=d===void 0?null:d;return[function(){return w(f())},A===null?void 0:function(){return w(A())}]},[f,d,h,g]);var S=r(c,y[0],y[1]);return a(function(){x.hasValue=!0,x.value=S},[S]),u(S),S},Og}var SE;function lZ(){return SE||(SE=1,Cg.exports=oZ()),Cg.exports}lZ();function sZ(e){e()}function uZ(){let e=null,t=null;return{clear(){e=null,t=null},notify(){sZ(()=>{let n=e;for(;n;)n.callback(),n=n.next})},get(){const n=[];let r=e;for(;r;)n.push(r),r=r.next;return n},subscribe(n){let r=!0;const i=t={callback:n,next:null,prev:t};return i.prev?i.prev.next=i:e=i,function(){!r||e===null||(r=!1,i.next?i.next.prev=i.prev:t=i.prev,i.prev?i.prev.next=i.next:e=i.next)}}}}var jE={notify(){},get:()=>[]};function cZ(e,t){let n,r=jE,i=0,a=!1;function l(S){d();const w=r.subscribe(S);let P=!1;return()=>{P||(P=!0,w(),h())}}function u(){r.notify()}function c(){x.onStateChange&&x.onStateChange()}function f(){return a}function d(){i++,n||(n=e.subscribe(c),r=uZ())}function h(){i--,n&&i===0&&(n(),n=void 0,r.clear(),r=jE)}function g(){a||(a=!0,d())}function y(){a&&(a=!1,h())}const x={addNestedSub:l,notifyNestedSubs:u,handleChangeWrapper:c,isSubscribed:f,trySubscribe:g,tryUnsubscribe:y,getListeners:()=>r};return x}var fZ=()=>typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",dZ=fZ(),pZ=()=>typeof navigator<"u"&&navigator.product==="ReactNative",hZ=pZ(),mZ=()=>dZ||hZ?k.useLayoutEffect:k.useEffect,gZ=mZ();function PE(e,t){return e===t?e!==0||t!==0||1/e===1/t:e!==e&&t!==t}function vZ(e,t){if(PE(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;const n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let i=0;i{const c=cZ(i);return{store:i,subscription:c,getServerState:r?()=>r:void 0}},[i,r]),l=k.useMemo(()=>i.getState(),[i]);gZ(()=>{const{subscription:c}=a;return c.onStateChange=c.notifyNestedSubs,c.trySubscribe(),l!==i.getState()&&c.notifyNestedSubs(),()=>{c.tryUnsubscribe(),c.onStateChange=void 0}},[a,l]);const u=n||xZ;return k.createElement(u.Provider,{value:a},t)}var wZ=bZ,kZ=new Set(["axisLine","tickLine","activeBar","activeDot","activeLabel","activeShape","allowEscapeViewBox","background","cursor","dot","label","line","margin","padding","position","shape","style","tick","wrapperStyle","radius"]);function SZ(e,t){return e==null&&t==null?!0:typeof e=="number"&&typeof t=="number"?e===t||e!==e&&t!==t:e===t}function Ld(e,t){var n=new Set([...Object.keys(e),...Object.keys(t)]);for(var r of n)if(kZ.has(r)){if(e[r]==null&&t[r]==null)continue;if(!vZ(e[r],t[r]))return!1}else if(!SZ(e[r],t[r]))return!1;return!0}function $r(e,t){var n,r;return(n=(r=e.graphicalItems.cartesianItems.find(i=>i.id===t))===null||r===void 0?void 0:r.xAxisId)!==null&&n!==void 0?n:iT}function Fr(e,t){var n,r;return(n=(r=e.graphicalItems.cartesianItems.find(i=>i.id===t))===null||r===void 0?void 0:r.yAxisId)!==null&&n!==void 0?n:iT}var dT=(e,t,n)=>Zi(e,"xAxis",$r(e,t),n),pT=(e,t,n)=>Qi(e,"xAxis",$r(e,t),n),hT=(e,t,n)=>Zi(e,"yAxis",Fr(e,t),n),mT=(e,t,n)=>Qi(e,"yAxis",Fr(e,t),n),jZ=G([He,dT,hT,pT,mT],(e,t,n,r,i)=>zr(e,"xAxis")?Mo(t,r,!1):Mo(n,i,!1)),PZ=(e,t)=>t,gT=G([_d,PZ],(e,t)=>e.filter(n=>n.type==="area").find(n=>n.id===t)),vT=e=>{var t=He(e),n=zr(t,"xAxis");return n?"yAxis":"xAxis"},EZ=(e,t)=>{var n=vT(e);return n==="yAxis"?Fr(e,t):$r(e,t)},CZ=(e,t,n)=>Cf(e,vT(e),EZ(e,t),n),OZ=G([gT,CZ],(e,t)=>{var n;if(!(e==null||t==null)){var{stackId:r}=e,i=Cd(e);if(!(r==null||i==null)){var a=(n=t[r])===null||n===void 0?void 0:n.stackedData,l=a==null?void 0:a.find(u=>u.key===i);if(l!=null)return l.map(u=>[u[0],u[1]])}}}),NZ=G([He,dT,hT,pT,mT,OZ,GA,jZ,gT,cV],(e,t,n,r,i,a,l,u,c,f)=>{var{chartData:d,dataStartIndex:h,dataEndIndex:g}=l;if(!(c==null||e!=="horizontal"&&e!=="vertical"||t==null||n==null||r==null||i==null||r.length===0||i.length===0||u==null)){var{data:y}=c,x;if(y&&y.length>0?x=y:x=d==null?void 0:d.slice(h,g+1),x!=null)return GZ({layout:e,xAxis:t,yAxis:n,xAxisTicks:r,yAxisTicks:i,dataStartIndex:h,areaSettings:c,stackedData:a,displayedData:x,chartBaseValue:f,bandSize:u})}}),AZ=["id"],_Z=["activeDot","animationBegin","animationDuration","animationEasing","connectNulls","dot","fill","fillOpacity","hide","isAnimationActive","legendType","stroke","xAxisId","yAxisId"];function Oa(){return Oa=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{dataKey:t,name:n,stroke:r,fill:i,legendType:a,hide:l}=e;return[{inactive:l,dataKey:t,type:a,color:Mf(r,i),value:ad(n,t),payload:e}]},RZ=k.memo(e=>{var{dataKey:t,data:n,stroke:r,strokeWidth:i,fill:a,name:l,hide:u,unit:c,tooltipType:f,id:d}=e,h={dataDefinedOnItem:n,getPosition:Fa,settings:{stroke:r,strokeWidth:i,fill:a,dataKey:t,nameKey:void 0,name:ad(l,t),hide:u,type:f,color:Mf(r,a),unit:c,graphicalItemId:d}};return k.createElement(JI,{tooltipEntrySettings:h})});function zZ(e){var{clipPathId:t,points:n,props:r}=e,{needClip:i,dot:a,dataKey:l}=r,u=Zn(r);return k.createElement(OX,{points:n,dot:a,className:"recharts-area-dots",dotClassName:"recharts-area-dot",dataKey:l,baseProps:u,needClip:i,clipPathId:t})}function $Z(e){var{showLabels:t,children:n,points:r}=e,i=r.map(a=>{var l,u,c={x:(l=a.x)!==null&&l!==void 0?l:0,y:(u=a.y)!==null&&u!==void 0?u:0,width:0,lowerWidth:0,upperWidth:0,height:0};return Po(Po({},c),{},{value:a.value,payload:a.payload,parentViewBox:void 0,viewBox:c,fill:void 0})});return k.createElement(WI,{value:t?i:void 0},n)}function CE(e){var{points:t,baseLine:n,needClip:r,clipPathId:i,props:a}=e,{layout:l,type:u,stroke:c,connectNulls:f,isRange:d}=a,{id:h}=a,g=yT(a,AZ),y=Zn(g),x=dn(g);return k.createElement(k.Fragment,null,(t==null?void 0:t.length)>1&&k.createElement(pn,{clipPath:r?"url(#clipPath-".concat(i,")"):void 0},k.createElement(os,Oa({},x,{id:h,points:t,connectNulls:f,type:u,baseLine:n,layout:l,stroke:"none",className:"recharts-area-area"})),c!=="none"&&k.createElement(os,Oa({},y,{className:"recharts-area-curve",layout:l,type:u,connectNulls:f,fill:"none",points:t})),c!=="none"&&d&&k.createElement(os,Oa({},y,{className:"recharts-area-curve",layout:l,type:u,connectNulls:f,fill:"none",points:n}))),k.createElement(zZ,{points:t,props:g,clipPathId:i}))}function FZ(e){var t,n,{alpha:r,baseLine:i,points:a,strokeWidth:l}=e,u=(t=a[0])===null||t===void 0?void 0:t.y,c=(n=a[a.length-1])===null||n===void 0?void 0:n.y;if(!De(u)||!De(c))return null;var f=r*Math.abs(u-c),d=Math.max(...a.map(h=>h.x||0));return ge(i)?d=Math.max(i,d):i&&Array.isArray(i)&&i.length&&(d=Math.max(...i.map(h=>h.x||0),d)),ge(d)?k.createElement("rect",{x:0,y:uh.y||0));return ge(i)?d=Math.max(i,d):i&&Array.isArray(i)&&i.length&&(d=Math.max(...i.map(h=>h.y||0),d)),ge(d)?k.createElement("rect",{x:u({points:l,baseLine:u}),[l,u]),S=md(x,"recharts-area-"),w=Ry(),[P,C]=k.useState(!1),O=!P,A=k.useCallback(()=>{typeof y=="function"&&y(),C(!1)},[y]),I=k.useCallback(()=>{typeof g=="function"&&g(),C(!0)},[g]);if(w==null)return null;var E=i.current,L=a.current;return k.createElement($Z,{showLabels:O,points:l},r.children,k.createElement(hd,{animationId:S,begin:f,duration:d,isActive:c,easing:h,onAnimationEnd:A,onAnimationStart:I,key:S},F=>{if(E){var H=E.length/l.length,R=F===1?l:l.map((D,Z)=>{var Y=Math.floor(Z*H);if(E[Y]){var Q=E[Y];return Po(Po({},D),{},{x:ut(Q.x,D.x,F),y:ut(Q.y,D.y,F)})}return D}),W;return ge(u)?W=ut(L,u,F):mt(u)||mr(u)?W=ut(L,0,F):W=u.map((D,Z)=>{var Y=Math.floor(Z*H);if(Array.isArray(L)&&L[Y]){var Q=L[Y];return Po(Po({},D),{},{x:ut(Q.x,D.x,F),y:ut(Q.y,D.y,F)})}return D}),F>0&&(i.current=R,a.current=W),k.createElement(CE,{points:R,baseLine:W,needClip:t,clipPathId:n,props:r})}return F>0&&(i.current=l,a.current=u),k.createElement(pn,null,c&&k.createElement("defs",null,k.createElement("clipPath",{id:"animationClipPath-".concat(n)},k.createElement(UZ,{alpha:F,points:l,baseLine:u,layout:w,strokeWidth:r.strokeWidth}))),k.createElement(pn,{clipPath:"url(#animationClipPath-".concat(n,")")},k.createElement(CE,{points:l,baseLine:u,needClip:t,clipPathId:n,props:r})))}),k.createElement(HI,{label:r.label}))}function qZ(e){var{needClip:t,clipPathId:n,props:r}=e,i=k.useRef(null),a=k.useRef();return k.createElement(WZ,{needClip:t,clipPathId:n,props:r,previousPointsRef:i,previousBaselineRef:a})}class HZ extends k.PureComponent{render(){var{hide:t,dot:n,points:r,className:i,top:a,left:l,needClip:u,xAxisId:c,yAxisId:f,width:d,height:h,id:g,baseLine:y,zIndex:x}=this.props;if(t)return null;var S=Ge("recharts-area",i),w=g,{r:P,strokeWidth:C}=aZ(n),O=YI(n),A=P*2+C,I=u?"url(#clipPath-".concat(O?"":"dots-").concat(w,")"):void 0;return k.createElement(nr,{zIndex:x},k.createElement(pn,{className:S},u&&k.createElement("defs",null,k.createElement(fT,{clipPathId:w,xAxisId:c,yAxisId:f}),!O&&k.createElement("clipPath",{id:"clipPath-dots-".concat(w)},k.createElement("rect",{x:l-A/2,y:a-A/2,width:d+A,height:h+A}))),k.createElement(qZ,{needClip:u,clipPathId:w,props:this.props})),k.createElement(mE,{points:r,mainColor:Mf(this.props.stroke,this.props.fill),itemDataKey:this.props.dataKey,activeDot:this.props.activeDot,clipPath:I}),this.props.isRange&&Array.isArray(y)&&k.createElement(mE,{points:y,mainColor:Mf(this.props.stroke,this.props.fill),itemDataKey:this.props.dataKey,activeDot:this.props.activeDot,clipPath:I}))}}var xT={activeDot:!0,animationBegin:0,animationDuration:1500,animationEasing:"ease",connectNulls:!1,dot:!1,fill:"#3182bd",fillOpacity:.6,hide:!1,isAnimationActive:"auto",legendType:"line",stroke:"#3182bd",strokeWidth:1,type:"linear",label:!1,xAxisId:0,yAxisId:0,zIndex:Rt.area};function VZ(e){var t,n=mn(e,xT),{activeDot:r,animationBegin:i,animationDuration:a,animationEasing:l,connectNulls:u,dot:c,fill:f,fillOpacity:d,hide:h,isAnimationActive:g,legendType:y,stroke:x,xAxisId:S,yAxisId:w}=n,P=yT(n,_Z),C=Ba(),O=wI(),{needClip:A}=Ux(S,w),I=on(),{points:E,isRange:L,baseLine:F}=(t=Pe(Y=>NZ(Y,e.id,I)))!==null&&t!==void 0?t:{},H=zx();if(C!=="horizontal"&&C!=="vertical"||H==null||O!=="AreaChart"&&O!=="ComposedChart")return null;var{height:R,width:W,x:D,y:Z}=H;return!E||!E.length?null:k.createElement(HZ,Oa({},P,{activeDot:r,animationBegin:i,animationDuration:a,animationEasing:l,baseLine:F,connectNulls:u,dot:c,fill:f,fillOpacity:d,height:R,hide:h,layout:C,isAnimationActive:g==="auto"?!Rs.isSsr:g,isRange:L,legendType:y,needClip:A,points:E,stroke:x,width:W,left:D,top:Z,xAxisId:S,yAxisId:w}))}var KZ=(e,t,n,r,i)=>{var a=n??t;if(ge(a))return a;var l=e==="horizontal"?i:r,u=l.scale.domain();if(l.type==="number"){var c=Math.max(u[0],u[1]),f=Math.min(u[0],u[1]);return a==="dataMin"?f:a==="dataMax"||c<0?c:Math.max(Math.min(u[0],u[1]),0)}return a==="dataMin"?u[0]:a==="dataMax"?u[1]:u[0]};function GZ(e){var{areaSettings:{connectNulls:t,baseValue:n,dataKey:r},stackedData:i,layout:a,chartBaseValue:l,xAxis:u,yAxis:c,displayedData:f,dataStartIndex:d,xAxisTicks:h,yAxisTicks:g,bandSize:y}=e,x=i&&i.length,S=KZ(a,l,n,u,c),w=a==="horizontal",P=!1,C=f.map((A,I)=>{var E,L,F,H;if(x)H=i[d+I];else{var R=St(A,r);Array.isArray(R)?(H=R,P=!0):H=[S,R]}var W=(E=(L=H)===null||L===void 0?void 0:L[1])!==null&&E!==void 0?E:null,D=W==null||x&&!t&&St(A,r)==null;if(w){var Z;return{x:pS({axis:u,ticks:h,bandSize:y,entry:A,index:I}),y:D?null:(Z=c.scale.map(W))!==null&&Z!==void 0?Z:null,value:H,payload:A}}return{x:D?null:(F=u.scale.map(W))!==null&&F!==void 0?F:null,y:pS({axis:c,ticks:g,bandSize:y,entry:A,index:I}),value:H,payload:A}}),O;return x||P?O=C.map(A=>{var I,E=Array.isArray(A.value)?A.value[0]:null;if(w){var L;return{x:A.x,y:E!=null&&A.y!=null&&(L=c.scale.map(E))!==null&&L!==void 0?L:null,payload:A.payload}}return{x:E!=null&&(I=u.scale.map(E))!==null&&I!==void 0?I:null,y:A.y,payload:A.payload}}):O=w?c.scale.map(S):u.scale.map(S),{points:C,baseLine:O??0,isRange:P}}function YZ(e){var t=mn(e,xT),n=on();return k.createElement(tT,{id:t.id,type:"area"},r=>k.createElement(k.Fragment,null,k.createElement(eT,{legendPayload:LZ(t)}),k.createElement(RZ,{dataKey:t.dataKey,data:t.data,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,tooltipType:t.tooltipType,id:r}),k.createElement(rT,{type:"area",id:r,data:t.data,dataKey:t.dataKey,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,stackId:FN(t.stackId),hide:t.hide,barSize:void 0,baseValue:t.baseValue,isPanorama:n,connectNulls:t.connectNulls}),k.createElement(VZ,Oa({},t,{id:r}))))}var Rv=k.memo(YZ,Ld);Rv.displayName="Area";var XZ="Invariant failed";function QZ(e,t){throw new Error(XZ)}function zv(){return zv=Object.assign?Object.assign.bind():function(e){for(var t=1;t1&&arguments[1]!==void 0?arguments[1]:0;return(r,i)=>{if(ge(t))return t;var a=ge(r)||mt(r);return a?t(r,i):(a||QZ(),n)}},JZ=(e,t,n)=>n,eJ=(e,t)=>t,Gs=G([_d,eJ],(e,t)=>e.filter(n=>n.type==="bar").find(n=>n.id===t)),tJ=G([Gs],e=>e==null?void 0:e.maxBarSize),nJ=(e,t,n,r)=>r,rJ=G([He,_d,$r,Fr,JZ],(e,t,n,r,i)=>t.filter(a=>e==="horizontal"?a.xAxisId===n:a.yAxisId===r).filter(a=>a.isPanorama===i).filter(a=>a.hide===!1).filter(a=>a.type==="bar")),iJ=(e,t,n)=>{var r=He(e),i=$r(e,t),a=Fr(e,t);if(!(i==null||a==null))return r==="horizontal"?Cf(e,"yAxis",a,n):Cf(e,"xAxis",i,n)},aJ=(e,t)=>{var n=He(e),r=$r(e,t),i=Fr(e,t);if(!(r==null||i==null))return n==="horizontal"?pP(e,"xAxis",r):pP(e,"yAxis",i)},oJ=G([rJ,uV,aJ],GX),lJ=(e,t,n)=>{var r,i,a=Gs(e,t);if(a==null)return 0;var l=$r(e,t),u=Fr(e,t);if(l==null||u==null)return 0;var c=He(e),f=o_(e),{maxBarSize:d}=a,h=mt(d)?f:d,g,y;return c==="horizontal"?(g=Zi(e,"xAxis",l,n),y=Qi(e,"xAxis",l,n)):(g=Zi(e,"yAxis",u,n),y=Qi(e,"yAxis",u,n)),(r=(i=Mo(g,y,!0))!==null&&i!==void 0?i:h)!==null&&r!==void 0?r:0},bT=(e,t,n)=>{var r=He(e),i=$r(e,t),a=Fr(e,t);if(!(i==null||a==null)){var l,u;return r==="horizontal"?(l=Zi(e,"xAxis",i,n),u=Qi(e,"xAxis",i,n)):(l=Zi(e,"yAxis",a,n),u=Qi(e,"yAxis",a,n)),Mo(l,u)}},sJ=G([oJ,o_,sV,l_,lJ,bT,tJ],JX),uJ=(e,t,n)=>{var r=$r(e,t);if(r!=null)return Zi(e,"xAxis",r,n)},cJ=(e,t,n)=>{var r=Fr(e,t);if(r!=null)return Zi(e,"yAxis",r,n)},fJ=(e,t,n)=>{var r=$r(e,t);if(r!=null)return Qi(e,"xAxis",r,n)},dJ=(e,t,n)=>{var r=Fr(e,t);if(r!=null)return Qi(e,"yAxis",r,n)},pJ=G([sJ,Gs],tQ),hJ=G([iJ,Gs],eQ),mJ=G([zt,Dy,uJ,cJ,fJ,dJ,pJ,He,GA,bT,hJ,Gs,nJ],(e,t,n,r,i,a,l,u,c,f,d,h,g)=>{var{chartData:y,dataStartIndex:x,dataEndIndex:S}=c;if(!(h==null||l==null||t==null||u!=="horizontal"&&u!=="vertical"||n==null||r==null||i==null||a==null||f==null)){var{data:w}=h,P;if(w!=null&&w.length>0?P=w:P=y==null?void 0:y.slice(x,S+1),P!=null)return WJ({layout:u,barSettings:h,pos:l,parentViewBox:t,bandSize:f,xAxis:n,yAxis:r,xAxisTicks:i,yAxisTicks:a,stackedData:d,displayedData:P,offset:e,cells:g,dataStartIndex:x})}}),gJ=["index"];function $v(){return $v=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var t=k.useContext(wT);if(t!=null)return t.stackId;if(e!=null)return FN(e)},bJ=(e,t)=>"recharts-bar-stack-clip-path-".concat(e,"-").concat(t),wJ=e=>{var t=k.useContext(wT);if(t!=null){var{stackId:n}=t;return"url(#".concat(bJ(n,e),")")}},kT=e=>{var{index:t}=e,n=vJ(e,gJ),r=wJ(t);return k.createElement(pn,$v({className:"recharts-bar-stack-layer",clipPath:r},n))},kJ=["onMouseEnter","onMouseLeave","onClick"],SJ=["value","background","tooltipPosition"],jJ=["id"],PJ=["onMouseEnter","onClick","onMouseLeave"];function ci(){return ci=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{dataKey:t,name:n,fill:r,legendType:i,hide:a}=e;return[{inactive:a,dataKey:t,type:i,color:r,value:ad(n,t),payload:e}]},_J=k.memo(e=>{var{dataKey:t,stroke:n,strokeWidth:r,fill:i,name:a,hide:l,unit:u,tooltipType:c,id:f}=e,d={dataDefinedOnItem:void 0,getPosition:Fa,settings:{stroke:n,strokeWidth:r,fill:i,dataKey:t,nameKey:void 0,name:ad(a,t),hide:l,type:c,color:i,unit:u,graphicalItemId:f}};return k.createElement(JI,{tooltipEntrySettings:d})});function IJ(e){var t=Pe(La),{data:n,dataKey:r,background:i,allOtherBarProps:a}=e,{onMouseEnter:l,onMouseLeave:u,onClick:c}=a,f=Rf(a,kJ),d=XI(l,r,a.id),h=QI(u),g=ZI(c,r,a.id);if(!i||n==null)return null;var y=As(i);return k.createElement(nr,{zIndex:nQ(i,Rt.barBackground)},n.map((x,S)=>{var{value:w,background:P,tooltipPosition:C}=x,O=Rf(x,SJ);if(!P)return null;var A=d(x,S),I=h(x,S),E=g(x,S),L=un(un(un(un(un({option:i,isActive:String(S)===t},O),{},{fill:"#eee"},P),y),jy(f,x,S)),{},{onMouseEnter:A,onMouseLeave:I,onClick:E,dataKey:r,index:S,className:"recharts-bar-background-rectangle"});return k.createElement(Lf,ci({key:"background-bar-".concat(S)},L))}))}function TJ(e){var{showLabels:t,children:n,rects:r}=e,i=r==null?void 0:r.map(a=>{var l={x:a.x,y:a.y,width:a.width,lowerWidth:a.width,upperWidth:a.width,height:a.height};return un(un({},l),{},{value:a.value,payload:a.payload,parentViewBox:a.parentViewBox,viewBox:l,fill:a.fill})});return k.createElement(WI,{value:t?i:void 0},n)}function DJ(e){var{shape:t,activeBar:n,baseProps:r,entry:i,index:a,dataKey:l}=e,u=Pe(La),c=Pe(yI),f=n&&String(a)===u&&(c==null||l===c),d=f?n:t;return f?k.createElement(nr,{zIndex:Rt.activeBar},k.createElement(kT,{index:a},k.createElement(Lf,ci({},r,{name:String(r.name)},i,{isActive:f,option:d,index:a,dataKey:l})))):k.createElement(Lf,ci({},r,{name:String(r.name)},i,{isActive:f,option:d,index:a,dataKey:l}))}function MJ(e){var{shape:t,baseProps:n,entry:r,index:i,dataKey:a}=e;return k.createElement(Lf,ci({},n,{name:String(n.name)},r,{isActive:!1,option:t,index:i,dataKey:a}))}function LJ(e){var t,{data:n,props:r}=e,i=(t=Zn(r))!==null&&t!==void 0?t:{},{id:a}=i,l=Rf(i,jJ),{shape:u,dataKey:c,activeBar:f}=r,{onMouseEnter:d,onClick:h,onMouseLeave:g}=r,y=Rf(r,PJ),x=XI(d,c,a),S=QI(g),w=ZI(h,c,a);return n?k.createElement(k.Fragment,null,n.map((P,C)=>k.createElement(kT,ci({index:C,key:"rectangle-".concat(P==null?void 0:P.x,"-").concat(P==null?void 0:P.y,"-").concat(P==null?void 0:P.value,"-").concat(C),className:"recharts-bar-rectangle"},jy(y,P,C),{onMouseEnter:x(P,C),onMouseLeave:S(P,C),onClick:w(P,C)}),f?k.createElement(DJ,{shape:u,activeBar:f,baseProps:l,entry:P,index:C,dataKey:c}):k.createElement(MJ,{shape:u,baseProps:l,entry:P,index:C,dataKey:c})))):null}function RJ(e){var{props:t,previousRectanglesRef:n}=e,{data:r,layout:i,isAnimationActive:a,animationBegin:l,animationDuration:u,animationEasing:c,onAnimationEnd:f,onAnimationStart:d}=t,h=n.current,g=md(t,"recharts-bar-"),[y,x]=k.useState(!1),S=!y,w=k.useCallback(()=>{typeof f=="function"&&f(),x(!1)},[f]),P=k.useCallback(()=>{typeof d=="function"&&d(),x(!0)},[d]);return k.createElement(TJ,{showLabels:S,rects:r},k.createElement(hd,{animationId:g,begin:l,duration:u,isActive:a,easing:c,onAnimationEnd:w,onAnimationStart:P,key:g},C=>{var O=C===1?r:r==null?void 0:r.map((A,I)=>{var E=h&&h[I];if(E)return un(un({},A),{},{x:ut(E.x,A.x,C),y:ut(E.y,A.y,C),width:ut(E.width,A.width,C),height:ut(E.height,A.height,C)});if(i==="horizontal"){var L=ut(0,A.height,C),F=ut(A.stackedBarStart,A.y,C);return un(un({},A),{},{y:F,height:L})}var H=ut(0,A.width,C),R=ut(A.stackedBarStart,A.x,C);return un(un({},A),{},{width:H,x:R})});return C>0&&(n.current=O??null),O==null?null:k.createElement(pn,null,k.createElement(LJ,{props:t,data:O}))}),k.createElement(HI,{label:t.label}),t.children)}function zJ(e){var t=k.useRef(null);return k.createElement(RJ,{previousRectanglesRef:t,props:e})}var ST=0,$J=(e,t)=>{var n=Array.isArray(e.value)?e.value[1]:e.value;return{x:e.x,y:e.y,value:n,errorVal:St(e,t)}};class FJ extends k.PureComponent{render(){var{hide:t,data:n,dataKey:r,className:i,xAxisId:a,yAxisId:l,needClip:u,background:c,id:f}=this.props;if(t||n==null)return null;var d=Ge("recharts-bar",i),h=f;return k.createElement(pn,{className:d,id:f},u&&k.createElement("defs",null,k.createElement(fT,{clipPathId:h,xAxisId:a,yAxisId:l})),k.createElement(pn,{className:"recharts-bar-rectangles",clipPath:u?"url(#clipPath-".concat(h,")"):void 0},k.createElement(IJ,{data:n,dataKey:r,background:c,allOtherBarProps:this.props}),k.createElement(zJ,this.props)))}}var BJ={activeBar:!1,animationBegin:0,animationDuration:400,animationEasing:"ease",background:!1,hide:!1,isAnimationActive:"auto",label:!1,legendType:"rect",minPointSize:ST,xAxisId:0,yAxisId:0,zIndex:Rt.bar};function UJ(e){var{xAxisId:t,yAxisId:n,hide:r,legendType:i,minPointSize:a,activeBar:l,animationBegin:u,animationDuration:c,animationEasing:f,isAnimationActive:d}=e,{needClip:h}=Ux(t,n),g=Ba(),y=on(),x=qY(e.children,_I),S=Pe(C=>mJ(C,e.id,y,x));if(g!=="vertical"&&g!=="horizontal")return null;var w,P=S==null?void 0:S[0];return P==null||P.height==null||P.width==null?w=0:w=g==="vertical"?P.height/2:P.width/2,k.createElement(iZ,{xAxisId:t,yAxisId:n,data:S,dataPointFormatter:$J,errorBarOffset:w},k.createElement(FJ,ci({},e,{layout:g,needClip:h,data:S,xAxisId:t,yAxisId:n,hide:r,legendType:i,minPointSize:a,activeBar:l,animationBegin:u,animationDuration:c,animationEasing:f,isAnimationActive:d})))}function WJ(e){var{layout:t,barSettings:{dataKey:n,minPointSize:r},pos:i,bandSize:a,xAxis:l,yAxis:u,xAxisTicks:c,yAxisTicks:f,stackedData:d,displayedData:h,offset:g,cells:y,parentViewBox:x,dataStartIndex:S}=e,w=t==="horizontal"?u:l,P=d?w.scale.domain():null,C=a8({numericAxis:w}),O=w.scale.map(C);return h.map((A,I)=>{var E,L,F,H,R,W;if(d){var D=d[I+S];if(D==null)return null;E=e8(D,P)}else E=St(A,n),Array.isArray(E)||(E=[C,E]);var Z=ZZ(r,ST)(E[1],I);if(t==="horizontal"){var Y,Q=u.scale.map(E[0]),pe=u.scale.map(E[1]);if(Q==null||pe==null)return null;L=hS({axis:l,ticks:c,bandSize:a,offset:i.offset,entry:A,index:I}),F=(Y=pe??Q)!==null&&Y!==void 0?Y:void 0,H=i.size;var de=Q-pe;if(R=mr(de)?0:de,W={x:L,y:g.top,width:H,height:g.height},Math.abs(Z)>0&&Math.abs(R)0&&Math.abs(H)k.createElement(k.Fragment,null,k.createElement(eT,{legendPayload:AJ(t)}),k.createElement(_J,{dataKey:t.dataKey,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,tooltipType:t.tooltipType,id:i}),k.createElement(rT,{type:"bar",id:i,data:void 0,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,dataKey:t.dataKey,stackId:n,hide:t.hide,barSize:t.barSize,minPointSize:t.minPointSize,maxBarSize:t.maxBarSize,isPanorama:r}),k.createElement(nr,{zIndex:t.zIndex},k.createElement(UJ,ci({},t,{id:i})))))}var Fv=k.memo(qJ,Ld);Fv.displayName="Bar";var HJ=["domain","range"],VJ=["domain","range"];function NE(e,t){if(e==null)return{};var n,r,i=KJ(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{if(l!=null)return IE(IE({},a),{},{type:l})},[a,l]);return k.useLayoutEffect(()=>{u!=null&&(n.current===null?t(TX(u)):n.current!==u&&t(DX({prev:n.current,next:u})),n.current=u)},[u,t]),k.useLayoutEffect(()=>()=>{n.current&&(t(MX(n.current)),n.current=null)},[t]),null}var nee=e=>{var{xAxisId:t,className:n}=e,r=Pe(Dy),i=on(),a="xAxis",l=Pe(P=>Q_(P,a,t,i)),u=Pe(P=>K_(P,t)),c=Pe(P=>fK(P,t)),f=Pe(P=>g_(P,t));if(u==null||c==null||f==null)return null;var{dangerouslySetInnerHTML:d,ticks:h,scale:g}=e,y=Uv(e,YJ),{id:x,scale:S}=f,w=Uv(f,XJ);return k.createElement(Fx,Bv({},y,w,{x:c.x,y:c.y,width:u.width,height:u.height,className:Ge("recharts-".concat(a," ").concat(a),n),viewBox:r,ticks:l,axisType:a}))},ree={allowDataOverflow:Dt.allowDataOverflow,allowDecimals:Dt.allowDecimals,allowDuplicatedCategory:Dt.allowDuplicatedCategory,angle:Dt.angle,axisLine:ri.axisLine,height:Dt.height,hide:!1,includeHidden:Dt.includeHidden,interval:Dt.interval,label:!1,minTickGap:Dt.minTickGap,mirror:Dt.mirror,orientation:Dt.orientation,padding:Dt.padding,reversed:Dt.reversed,scale:Dt.scale,tick:Dt.tick,tickCount:Dt.tickCount,tickLine:ri.tickLine,tickSize:ri.tickSize,type:Dt.type,xAxisId:0},iee=e=>{var t=mn(e,ree);return k.createElement(k.Fragment,null,k.createElement(tee,{allowDataOverflow:t.allowDataOverflow,allowDecimals:t.allowDecimals,allowDuplicatedCategory:t.allowDuplicatedCategory,angle:t.angle,dataKey:t.dataKey,domain:t.domain,height:t.height,hide:t.hide,id:t.xAxisId,includeHidden:t.includeHidden,interval:t.interval,minTickGap:t.minTickGap,mirror:t.mirror,name:t.name,orientation:t.orientation,padding:t.padding,reversed:t.reversed,scale:t.scale,tick:t.tick,tickCount:t.tickCount,tickFormatter:t.tickFormatter,ticks:t.ticks,type:t.type,unit:t.unit}),k.createElement(nee,t))},Wx=k.memo(iee,jT);Wx.displayName="XAxis";var aee=["type"],oee=["dangerouslySetInnerHTML","ticks","scale"],lee=["id","scale"];function Wv(){return Wv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{if(l!=null)return DE(DE({},a),{},{type:l})},[l,a]);return k.useLayoutEffect(()=>{u!=null&&(n.current===null?t(LX(u)):n.current!==u&&t(RX({prev:n.current,next:u})),n.current=u)},[u,t]),k.useLayoutEffect(()=>()=>{n.current&&(t(zX(n.current)),n.current=null)},[t]),null}function pee(e){var{yAxisId:t,className:n,width:r,label:i}=e,a=k.useRef(null),l=k.useRef(null),u=Pe(Dy),c=on(),f=yt(),d="yAxis",h=Pe(E=>G_(E,t)),g=Pe(E=>pK(E,t)),y=Pe(E=>Q_(E,d,t,c)),x=Pe(E=>v_(E,t));if(k.useLayoutEffect(()=>{if(!(r!=="auto"||!h||Rx(i)||k.isValidElement(i)||x==null)){var E=a.current;if(E){var L=E.getCalculatedWidth();Math.round(h.width)!==Math.round(L)&&f($X({id:t,width:L}))}}},[y,h,f,i,t,r,x]),h==null||g==null||x==null)return null;var{dangerouslySetInnerHTML:S,ticks:w,scale:P}=e,C=qv(e,oee),{id:O,scale:A}=x,I=qv(x,lee);return k.createElement(Fx,Wv({},C,I,{ref:a,labelRef:l,x:g.x,y:g.y,tickTextProps:r==="auto"?{width:void 0}:{width:r},width:h.width,height:h.height,className:Ge("recharts-".concat(d," ").concat(d),n),viewBox:u,ticks:y,axisType:d}))}var hee={allowDataOverflow:Mt.allowDataOverflow,allowDecimals:Mt.allowDecimals,allowDuplicatedCategory:Mt.allowDuplicatedCategory,angle:Mt.angle,axisLine:ri.axisLine,hide:!1,includeHidden:Mt.includeHidden,interval:Mt.interval,label:!1,minTickGap:Mt.minTickGap,mirror:Mt.mirror,orientation:Mt.orientation,padding:Mt.padding,reversed:Mt.reversed,scale:Mt.scale,tick:Mt.tick,tickCount:Mt.tickCount,tickLine:ri.tickLine,tickSize:ri.tickSize,type:Mt.type,width:Mt.width,yAxisId:0},mee=e=>{var t=mn(e,hee);return k.createElement(k.Fragment,null,k.createElement(dee,{interval:t.interval,id:t.yAxisId,scale:t.scale,type:t.type,domain:t.domain,allowDataOverflow:t.allowDataOverflow,dataKey:t.dataKey,allowDuplicatedCategory:t.allowDuplicatedCategory,allowDecimals:t.allowDecimals,tickCount:t.tickCount,padding:t.padding,includeHidden:t.includeHidden,reversed:t.reversed,ticks:t.ticks,width:t.width,orientation:t.orientation,mirror:t.mirror,hide:t.hide,unit:t.unit,name:t.name,angle:t.angle,minTickGap:t.minTickGap,tick:t.tick,tickFormatter:t.tickFormatter}),k.createElement(pee,t))},Es=k.memo(mee,jT);Es.displayName="YAxis";var gee=(e,t)=>t,qx=G([gee,He,h_,Bt,hI,yi,C7,zt],D7),Hx=e=>{var t=e.currentTarget.getBoundingClientRect(),n=t.width/e.currentTarget.offsetWidth,r=t.height/e.currentTarget.offsetHeight;return{chartX:Math.round((e.clientX-t.left)/n),chartY:Math.round((e.clientY-t.top)/r)}},PT=Jn("mouseClick"),ET=Ts();ET.startListening({actionCreator:PT,effect:(e,t)=>{var n=e.payload,r=qx(t.getState(),Hx(n));(r==null?void 0:r.activeIndex)!=null&&t.dispatch(CK({activeIndex:r.activeIndex,activeDataKey:void 0,activeCoordinate:r.activeCoordinate}))}});var Hv=Jn("mouseMove"),CT=Ts(),Oc=null;CT.startListening({actionCreator:Hv,effect:(e,t)=>{var n=e.payload;Oc!==null&&cancelAnimationFrame(Oc);var r=Hx(n);Oc=requestAnimationFrame(()=>{var i=t.getState(),a=Ex(i,i.tooltip.settings.shared);if(a==="axis"){var l=qx(i,r);(l==null?void 0:l.activeIndex)!=null?t.dispatch(aI({activeIndex:l.activeIndex,activeDataKey:void 0,activeCoordinate:l.activeCoordinate})):t.dispatch(iI())}Oc=null})}});function vee(e,t){return t instanceof HTMLElement?"HTMLElement <".concat(t.tagName,' class="').concat(t.className,'">'):t===window?"global.window":e==="children"&&typeof t=="object"&&t!==null?"<>":t}var ME={accessibilityLayer:!0,barCategoryGap:"10%",barGap:4,barSize:void 0,className:void 0,maxBarSize:void 0,stackOffset:"none",syncId:void 0,syncMethod:"index",baseValue:void 0,reverseStackOrder:!1},OT=On({name:"rootProps",initialState:ME,reducers:{updateOptions:(e,t)=>{var n;e.accessibilityLayer=t.payload.accessibilityLayer,e.barCategoryGap=t.payload.barCategoryGap,e.barGap=(n=t.payload.barGap)!==null&&n!==void 0?n:ME.barGap,e.barSize=t.payload.barSize,e.maxBarSize=t.payload.maxBarSize,e.stackOffset=t.payload.stackOffset,e.syncId=t.payload.syncId,e.syncMethod=t.payload.syncMethod,e.className=t.payload.className,e.baseValue=t.payload.baseValue,e.reverseStackOrder=t.payload.reverseStackOrder}}}),yee=OT.reducer,{updateOptions:xee}=OT.actions,bee=null,wee={updatePolarOptions:(e,t)=>t.payload},NT=On({name:"polarOptions",initialState:bee,reducers:wee}),{updatePolarOptions:rne}=NT.actions,kee=NT.reducer,AT=Jn("keyDown"),_T=Jn("focus"),Vx=Ts();Vx.startListening({actionCreator:AT,effect:(e,t)=>{var n=t.getState(),r=n.rootProps.accessibilityLayer!==!1;if(r){var{keyboardInteraction:i}=n.tooltip,a=e.payload;if(!(a!=="ArrowRight"&&a!=="ArrowLeft"&&a!=="Enter")){var l=Cx(i,Qo(n),qs(n),Vs(n)),u=l==null?-1:Number(l);if(!(!Number.isFinite(u)||u<0)){var c=yi(n);if(a==="Enter"){var f=Nf(n,"axis","hover",String(i.index));t.dispatch(Iv({active:!i.active,activeIndex:i.index,activeCoordinate:f}));return}var d=vK(n),h=d==="left-to-right"?1:-1,g=a==="ArrowRight"?1:-1,y=u+g*h;if(!(c==null||y>=c.length||y<0)){var x=Nf(n,"axis","hover",String(y));t.dispatch(Iv({active:!0,activeIndex:y.toString(),activeCoordinate:x}))}}}}}});Vx.startListening({actionCreator:_T,effect:(e,t)=>{var n=t.getState(),r=n.rootProps.accessibilityLayer!==!1;if(r){var{keyboardInteraction:i}=n.tooltip;if(!i.active&&i.index==null){var a="0",l=Nf(n,"axis","hover",String(a));t.dispatch(Iv({active:!0,activeIndex:a,activeCoordinate:l}))}}}});var Yn=Jn("externalEvent"),IT=Ts(),_g=new Map;IT.startListening({actionCreator:Yn,effect:(e,t)=>{var{handler:n,reactEvent:r}=e.payload;if(n!=null){r.persist();var i=r.type,a=_g.get(i);a!==void 0&&cancelAnimationFrame(a);var l=requestAnimationFrame(()=>{try{var u=t.getState(),c={activeCoordinate:d7(u),activeDataKey:yI(u),activeIndex:La(u),activeLabel:vI(u),activeTooltipIndex:La(u),isTooltipActive:p7(u)};n(c,r)}finally{_g.delete(i)}});_g.set(i,l)}}});var See=G([Yo],e=>e.tooltipItemPayloads),jee=G([See,(e,t)=>t,(e,t,n)=>n],(e,t,n)=>{if(t!=null){var r=e.find(a=>a.settings.graphicalItemId===n);if(r!=null){var{getPosition:i}=r;if(i!=null)return i(t)}}}),TT=Jn("touchMove"),DT=Ts();DT.startListening({actionCreator:TT,effect:(e,t)=>{var n=e.payload;if(!(n.touches==null||n.touches.length===0)){var r=t.getState(),i=Ex(r,r.tooltip.settings.shared);if(i==="axis"){var a=n.touches[0];if(a==null)return;var l=qx(r,Hx({clientX:a.clientX,clientY:a.clientY,currentTarget:n.currentTarget}));(l==null?void 0:l.activeIndex)!=null&&t.dispatch(aI({activeIndex:l.activeIndex,activeDataKey:void 0,activeCoordinate:l.activeCoordinate}))}else if(i==="item"){var u,c=n.touches[0];if(document.elementFromPoint==null||c==null)return;var f=document.elementFromPoint(c.clientX,c.clientY);if(!f||!f.getAttribute)return;var d=f.getAttribute(d8),h=(u=f.getAttribute(p8))!==null&&u!==void 0?u:void 0,g=Xo(r).find(S=>S.id===h);if(d==null||g==null||h==null)return;var{dataKey:y}=g,x=jee(r,d,h);t.dispatch(rI({activeDataKey:y,activeIndex:d,activeCoordinate:x,activeGraphicalItemId:h}))}}}});var Pee=uN({brush:iQ,cartesianAxis:FX,chartData:fG,errorBars:ZQ,graphicalItems:yX,layout:YU,legend:iW,options:oG,polarAxis:$Y,polarOptions:kee,referenceElements:sQ,rootProps:yee,tooltip:OK,zIndex:G7}),Eee=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"Chart";return bU({reducer:Pee,preloadedState:t,middleware:r=>{var i;return r({serializableCheck:!1,immutableCheck:!["commonjs","es6","production"].includes((i="es6")!==null&&i!==void 0?i:"")}).concat([ET.middleware,CT.middleware,Vx.middleware,IT.middleware,DT.middleware])},enhancers:r=>{var i=r;return typeof r=="function"&&(i=r()),i.concat(jN({type:"raf"}))},devTools:{serialize:{replacer:vee},name:"recharts-".concat(n)}})};function Cee(e){var{preloadedState:t,children:n,reduxStoreName:r}=e,i=on(),a=k.useRef(null);if(i)return n;a.current==null&&(a.current=Eee(t,r));var l=Cy;return k.createElement(wZ,{context:l,store:a.current},n)}function Oee(e){var{layout:t,margin:n}=e,r=yt(),i=on();return k.useEffect(()=>{i||(r(VU(t)),r(HU(n)))},[r,i,t,n]),null}var Nee=k.memo(Oee,Ld);function Aee(e){var t=yt();return k.useEffect(()=>{t(xee(e))},[t,e]),null}function LE(e){var{zIndex:t,isPanorama:n}=e,r=k.useRef(null),i=yt();return k.useLayoutEffect(()=>(r.current&&i(V7({zIndex:t,element:r.current,isPanorama:n})),()=>{i(K7({zIndex:t,isPanorama:n}))}),[i,t,n]),k.createElement("g",{tabIndex:-1,ref:r})}function RE(e){var{children:t,isPanorama:n}=e,r=Pe(L7);if(!r||r.length===0)return t;var i=r.filter(l=>l<0),a=r.filter(l=>l>0);return k.createElement(k.Fragment,null,i.map(l=>k.createElement(LE,{key:l,zIndex:l,isPanorama:n})),t,a.map(l=>k.createElement(LE,{key:l,zIndex:l,isPanorama:n})))}var _ee=["children"];function Iee(e,t){if(e==null)return{};var n,r,i=Tee(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{var n=KN(),r=GN(),i=rA();if(!Mr(n)||!Mr(r))return null;var{children:a,otherAttributes:l,title:u,desc:c}=e,f,d;return l!=null&&(typeof l.tabIndex=="number"?f=l.tabIndex:f=i?0:void 0,typeof l.role=="string"?d=l.role:d=i?"application":void 0),k.createElement(EO,zf({},l,{title:u,desc:c,role:d,tabIndex:f,width:n,height:r,style:Dee,ref:t}),a)}),Lee=e=>{var{children:t}=e,n=Pe(ud);if(!n)return null;var{width:r,height:i,y:a,x:l}=n;return k.createElement(EO,{width:r,height:i,x:l,y:a},t)},zE=k.forwardRef((e,t)=>{var{children:n}=e,r=Iee(e,_ee),i=on();return i?k.createElement(Lee,null,k.createElement(RE,{isPanorama:!0},n)):k.createElement(Mee,zf({ref:t},r),k.createElement(RE,{isPanorama:!1},n))});function Ree(){var e=yt(),[t,n]=k.useState(null),r=Pe(f8);return k.useEffect(()=>{if(t!=null){var i=t.getBoundingClientRect(),a=i.width/t.offsetWidth;De(a)&&a!==r&&e(GU(a))}},[t,e,r]),n}function $E(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function zee(e){for(var t=1;t(bG(),null);function $f(e){if(typeof e=="number")return e;if(typeof e=="string"){var t=parseFloat(e);if(!Number.isNaN(t))return t}return 0}var Wee=k.forwardRef((e,t)=>{var n,r,i=k.useRef(null),[a,l]=k.useState({containerWidth:$f((n=e.style)===null||n===void 0?void 0:n.width),containerHeight:$f((r=e.style)===null||r===void 0?void 0:r.height)}),u=k.useCallback((f,d)=>{l(h=>{var g=Math.round(f),y=Math.round(d);return h.containerWidth===g&&h.containerHeight===y?h:{containerWidth:g,containerHeight:y}})},[]),c=k.useCallback(f=>{if(typeof t=="function"&&t(f),f!=null&&typeof ResizeObserver<"u"){var{width:d,height:h}=f.getBoundingClientRect();u(d,h);var g=x=>{var S=x[0];if(S!=null){var{width:w,height:P}=S.contentRect;u(w,P)}},y=new ResizeObserver(g);y.observe(f),i.current=y}},[t,u]);return k.useEffect(()=>()=>{var f=i.current;f!=null&&f.disconnect()},[u]),k.createElement(k.Fragment,null,k.createElement(Ms,{width:a.containerWidth,height:a.containerHeight}),k.createElement("div",Yi({ref:c},e)))}),qee=k.forwardRef((e,t)=>{var{width:n,height:r}=e,[i,a]=k.useState({containerWidth:$f(n),containerHeight:$f(r)}),l=k.useCallback((c,f)=>{a(d=>{var h=Math.round(c),g=Math.round(f);return d.containerWidth===h&&d.containerHeight===g?d:{containerWidth:h,containerHeight:g}})},[]),u=k.useCallback(c=>{if(typeof t=="function"&&t(c),c!=null){var{width:f,height:d}=c.getBoundingClientRect();l(f,d)}},[t,l]);return k.createElement(k.Fragment,null,k.createElement(Ms,{width:i.containerWidth,height:i.containerHeight}),k.createElement("div",Yi({ref:u},e)))}),Hee=k.forwardRef((e,t)=>{var{width:n,height:r}=e;return k.createElement(k.Fragment,null,k.createElement(Ms,{width:n,height:r}),k.createElement("div",Yi({ref:t},e)))}),Vee=k.forwardRef((e,t)=>{var{width:n,height:r}=e;return typeof n=="string"||typeof r=="string"?k.createElement(qee,Yi({},e,{ref:t})):typeof n=="number"&&typeof r=="number"?k.createElement(Hee,Yi({},e,{width:n,height:r,ref:t})):k.createElement(k.Fragment,null,k.createElement(Ms,{width:n,height:r}),k.createElement("div",Yi({ref:t},e)))});function Kee(e){return e?Wee:Vee}var Gee=k.forwardRef((e,t)=>{var{children:n,className:r,height:i,onClick:a,onContextMenu:l,onDoubleClick:u,onMouseDown:c,onMouseEnter:f,onMouseLeave:d,onMouseMove:h,onMouseUp:g,onTouchEnd:y,onTouchMove:x,onTouchStart:S,style:w,width:P,responsive:C,dispatchTouchEvents:O=!0}=e,A=k.useRef(null),I=yt(),[E,L]=k.useState(null),[F,H]=k.useState(null),R=Ree(),W=My(),D=(W==null?void 0:W.width)>0?W.width:P,Z=(W==null?void 0:W.height)>0?W.height:i,Y=k.useCallback(X=>{R(X),typeof t=="function"&&t(X),L(X),H(X),X!=null&&(A.current=X)},[R,t,L,H]),Q=k.useCallback(X=>{I(PT(X)),I(Yn({handler:a,reactEvent:X}))},[I,a]),pe=k.useCallback(X=>{I(Hv(X)),I(Yn({handler:f,reactEvent:X}))},[I,f]),de=k.useCallback(X=>{I(iI()),I(Yn({handler:d,reactEvent:X}))},[I,d]),J=k.useCallback(X=>{I(Hv(X)),I(Yn({handler:h,reactEvent:X}))},[I,h]),ae=k.useCallback(()=>{I(_T())},[I]),T=k.useCallback(X=>{I(AT(X.key))},[I]),$=k.useCallback(X=>{I(Yn({handler:l,reactEvent:X}))},[I,l]),U=k.useCallback(X=>{I(Yn({handler:u,reactEvent:X}))},[I,u]),_=k.useCallback(X=>{I(Yn({handler:c,reactEvent:X}))},[I,c]),te=k.useCallback(X=>{I(Yn({handler:g,reactEvent:X}))},[I,g]),fe=k.useCallback(X=>{I(Yn({handler:S,reactEvent:X}))},[I,S]),ce=k.useCallback(X=>{O&&I(TT(X)),I(Yn({handler:x,reactEvent:X}))},[I,O,x]),Se=k.useCallback(X=>{I(Yn({handler:y,reactEvent:X}))},[I,y]),je=Kee(C);return k.createElement(EI.Provider,{value:E},k.createElement(e5.Provider,{value:F},k.createElement(je,{width:D??(w==null?void 0:w.width),height:Z??(w==null?void 0:w.height),className:Ge("recharts-wrapper",r),style:zee({position:"relative",cursor:"default",width:D,height:Z},w),onClick:Q,onContextMenu:$,onDoubleClick:U,onFocus:ae,onKeyDown:T,onMouseDown:_,onMouseEnter:pe,onMouseLeave:de,onMouseMove:J,onMouseUp:te,onTouchEnd:Se,onTouchMove:ce,onTouchStart:fe,ref:Y},k.createElement(Uee,null),n)))}),Yee=["width","height","responsive","children","className","style","compact","title","desc"];function Xee(e,t){if(e==null)return{};var n,r,i=Qee(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r{var{width:n,height:r,responsive:i,children:a,className:l,style:u,compact:c,title:f,desc:d}=e,h=Xee(e,Yee),g=Zn(h);return c?k.createElement(k.Fragment,null,k.createElement(Ms,{width:n,height:r}),k.createElement(zE,{otherAttributes:g,title:f,desc:d},a)):k.createElement(Gee,{className:l,style:u,width:n,height:r,responsive:i??!1,onClick:e.onClick,onMouseLeave:e.onMouseLeave,onMouseEnter:e.onMouseEnter,onMouseMove:e.onMouseMove,onMouseDown:e.onMouseDown,onMouseUp:e.onMouseUp,onContextMenu:e.onContextMenu,onDoubleClick:e.onDoubleClick,onTouchStart:e.onTouchStart,onTouchMove:e.onTouchMove,onTouchEnd:e.onTouchEnd},k.createElement(zE,{otherAttributes:g,title:f,desc:d,ref:t},k.createElement(cQ,null,a)))});function Vv(){return Vv=Object.assign?Object.assign.bind():function(e){for(var t=1;tk.createElement(MT,{chartName:"BarChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:tte,tooltipPayloadSearcher:CI,categoricalChartProps:e,ref:t})),rte=["axis"],ite=k.forwardRef((e,t)=>k.createElement(MT,{chartName:"AreaChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:rte,tooltipPayloadSearcher:CI,categoricalChartProps:e,ref:t}));function LT({active:e,payload:t,label:n,labelFormatter:r,valueFormatter:i}){if(!e||!t||t.length===0)return null;const a=r?r(n||""):n;return m.jsxs("div",{className:"bg-base-200 border border-base-300 rounded-lg px-3 py-2 shadow-lg text-sm",children:[a&&m.jsx("p",{className:"text-base-content font-medium mb-1",children:a}),t.map((l,u)=>{const[c,f]=i?i(l.value,l.name):[l.value,l.name];return m.jsxs("p",{className:"text-base-content/80",children:[m.jsxs("span",{className:"font-medium",children:[f,":"]})," ",c]},u)})]})}function ate({daily:e}){if(!e||e.length===0)return m.jsx("div",{className:"flex items-center justify-center h-48 text-base-content/50",children:"No data available"});const t=e.map(n=>({...n,displayDate:n.date.includes("-")?`${n.date.slice(5,7)}/${n.date.slice(8,10)}`:`${n.date.slice(4,6)}/${n.date.slice(6,8)}`}));return m.jsx("div",{className:"h-80 w-full",children:m.jsx(HN,{width:"100%",height:"100%",debounce:50,children:m.jsxs(ite,{data:t,margin:{top:5,right:20,left:10,bottom:5},children:[m.jsxs("defs",{children:[m.jsxs("linearGradient",{id:"dailyCostGradient",x1:"0",y1:"0",x2:"0",y2:"1",children:[m.jsx("stop",{offset:"5%",stopColor:"#3b82f6",stopOpacity:.6}),m.jsx("stop",{offset:"95%",stopColor:"#3b82f6",stopOpacity:0})]}),m.jsxs("linearGradient",{id:"dailyTokenGradient",x1:"0",y1:"0",x2:"0",y2:"1",children:[m.jsx("stop",{offset:"5%",stopColor:"#8b5cf6",stopOpacity:.3}),m.jsx("stop",{offset:"95%",stopColor:"#8b5cf6",stopOpacity:0})]})]}),m.jsx(Bx,{strokeDasharray:"3 3",className:"stroke-base-content/10"}),m.jsx(Wx,{dataKey:"displayDate",tick:{fontSize:12},className:"text-base-content/60",tickLine:!1,axisLine:!1}),m.jsx(Es,{yAxisId:"cost",tick:{fontSize:12},className:"text-base-content/60",tickLine:!1,axisLine:!1,tickFormatter:n=>`${n.toFixed(0)}$`}),m.jsx(Es,{yAxisId:"tokens",orientation:"right",tick:{fontSize:12},className:"text-base-content/60",tickLine:!1,axisLine:!1,tickFormatter:n=>Io(n)}),m.jsx(AI,{content:m.jsx(LT,{labelFormatter:n=>`Date: ${n}`,valueFormatter:(n,r)=>r==="totalCost"?[`${Number(n).toFixed(2)}$`,"Cost"]:r==="totalTokens"?[Io(Number(n)),"Tokens"]:[n,r]})}),m.jsx(Rv,{yAxisId:"tokens",type:"monotone",dataKey:"totalTokens",stroke:"#8b5cf6",strokeWidth:1.5,fill:"url(#dailyTokenGradient)"}),m.jsx(Rv,{yAxisId:"cost",type:"monotone",dataKey:"totalCost",stroke:"#3b82f6",strokeWidth:2,fill:"url(#dailyCostGradient)"})]})})})}function ote({monthly:e}){return!e||e.length===0?m.jsx("div",{className:"flex items-center justify-center h-48 text-base-content/50",children:"No data available"}):m.jsx("div",{className:"h-80 w-full",children:m.jsx(HN,{width:"100%",height:"100%",debounce:50,children:m.jsxs(nte,{data:e,margin:{top:5,right:20,left:10,bottom:5},children:[m.jsx(Bx,{strokeDasharray:"3 3",className:"stroke-base-content/10"}),m.jsx(Wx,{dataKey:"month",tick:{fontSize:12},className:"text-base-content/60",tickLine:!1,axisLine:!1}),m.jsx(Es,{yAxisId:"cost",tick:{fontSize:12},className:"text-base-content/60",tickLine:!1,axisLine:!1,tickFormatter:t=>`${t.toFixed(0)}$`}),m.jsx(Es,{yAxisId:"tokens",orientation:"right",tick:{fontSize:12},className:"text-base-content/60",tickLine:!1,axisLine:!1,tickFormatter:t=>Io(t)}),m.jsx(AI,{content:m.jsx(LT,{labelFormatter:t=>`Month: ${t}`,valueFormatter:(t,n)=>n==="totalCost"?[`${Number(t).toFixed(2)}$`,"Cost"]:n==="totalTokens"?[Io(Number(t)),"Tokens"]:[t,n]})}),m.jsx(Fv,{yAxisId:"tokens",dataKey:"totalTokens",fill:"#8b5cf6",opacity:.4,radius:[4,4,0,0]}),m.jsx(Fv,{yAxisId:"cost",dataKey:"totalCost",fill:"#6366f1",opacity:.8,radius:[4,4,0,0]})]})})})}function lte(){const{daily:e,monthly:t,isLoading:n,error:r,available:i,dataExists:a}=UB();if(n)return m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{className:"flex items-baseline gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Usage"}),m.jsxs("span",{className:"text-xs text-base-content/40 flex items-center gap-2",children:[m.jsx("span",{className:"loading loading-spinner loading-xs"}),"Loading usage data..."]})]}),m.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4",children:[...Array(4)].map((c,f)=>m.jsx("div",{className:"stats shadow bg-base-200 animate-pulse",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"h-3 bg-base-300 rounded w-20 mb-2"}),m.jsx("div",{className:"h-8 bg-base-300 rounded w-24 mb-1"}),m.jsx("div",{className:"h-3 bg-base-300 rounded w-16"})]})},f))}),m.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-3 gap-4",children:[m.jsx("div",{className:"card bg-base-200 lg:col-span-2 animate-pulse",children:m.jsxs("div",{className:"card-body",children:[m.jsx("div",{className:"h-4 bg-base-300 rounded w-48 mb-4"}),m.jsx("div",{className:"h-48 bg-base-300 rounded"})]})}),m.jsx("div",{className:"card bg-base-200 animate-pulse",children:m.jsxs("div",{className:"card-body",children:[m.jsx("div",{className:"h-4 bg-base-300 rounded w-40 mb-4"}),m.jsx("div",{className:"h-48 bg-base-300 rounded"})]})})]})]});if(!i)return m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Usage"}),m.jsx("p",{className:"text-base-content/60",children:"Token usage and API cost tracking"})]}),m.jsxs("div",{className:"alert alert-warning",children:[m.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:"stroke-current shrink-0 h-6 w-6",fill:"none",viewBox:"0 0 24 24",children:m.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",d:"M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"})}),m.jsxs("div",{children:[m.jsx("h3",{className:"font-bold",children:"Usage tracking requires ccusage"}),m.jsxs("div",{className:"text-xs",children:["Install with:"," ",m.jsx("code",{className:"bg-base-300 px-1 rounded",children:"npm install -g ccusage@latest"})]})]})]})]});if(r)return m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Usage"}),m.jsx("p",{className:"text-base-content/60",children:"Token usage and API cost tracking"})]}),m.jsx("div",{className:"alert alert-error",children:m.jsxs("span",{children:["Failed to load usage data: ",r]})})]});if(!a)return m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Usage"}),m.jsx("p",{className:"text-base-content/60",children:"Token usage and API cost tracking"})]}),m.jsxs("div",{className:"alert alert-info",children:[m.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",className:"stroke-current shrink-0 w-6 h-6",children:m.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",d:"M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})}),m.jsx("span",{children:"No usage data yet. Statistics will appear here after you use Claude Code."})]})]});const l=e.slice(-14),u=t.length<=2;return m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{className:"flex items-baseline gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Usage"}),m.jsx("span",{className:"text-xs text-base-content/40",children:"All projects"})]}),m.jsx(WB,{daily:e}),m.jsxs("div",{className:u?"grid grid-cols-1 lg:grid-cols-3 gap-4":"space-y-4",children:[m.jsx("div",{className:`card bg-base-200 ${u?"lg:col-span-2":""}`,children:m.jsxs("div",{className:"card-body",children:[m.jsx("h2",{className:"card-title text-sm",children:"Daily Cost & Tokens (Last 14 Days)"}),m.jsx(ate,{daily:l})]})}),m.jsx("div",{className:"card bg-base-200",children:m.jsxs("div",{className:"card-body",children:[m.jsx("h2",{className:"card-title text-sm",children:"Monthly Cost & Tokens"}),m.jsx(ote,{monthly:t})]})})]})]})}const ste=2e3,ute=30;function FE(e){if(!e)return NaN;const t=e.replace(/^v/i,"");return parseInt(t,10)}function BE(e,t){const n=new Map;for(const r of t)n.set(r.name,r);return e.map(r=>{const i=n.get(r.name),a=(i==null?void 0:i.version)??null,l=FE(r.latestVersion),u=FE(a),c=i!=null&&!isNaN(l)&&!isNaN(u)&&u{try{const A=await fetch("/api/vault/status");if(!A.ok)throw new Error(`Status fetch failed: ${A.status}`);const I=await A.json();if(!w.current)return;t(I),r(BE(I.catalog,I.assets)),u(null)}catch(A){if(!w.current)return;u(A.message)}finally{w.current&&a(!1)}},[]),C=k.useCallback(async A=>{if(!(c.current.has(A)||f.current.has(A))){f.current.add(A),d.current.delete(A),h(I=>I+1);try{const I=await fetch(`/api/vault/detail/${encodeURIComponent(A)}`);if(!I.ok)throw new Error(`Detail fetch failed: ${I.status}`);const E=await I.json();w.current&&c.current.set(A,E)}catch(I){w.current&&(d.current.set(A,I.message),console.error("Failed to fetch vault detail:",A,I))}finally{f.current.delete(A),w.current&&h(I=>I+1)}}},[]),O=k.useCallback(async()=>{y(!0),S(null);try{const A=await fetch("/api/vault/install",{method:"POST"});if(!A.ok){const E=await A.json().catch(()=>({error:"Install failed"}));throw new Error(E.error||"Install failed")}let I=0;for(;IsetTimeout(F,ste)),!w.current)return;I++;const E=await fetch("/api/vault/status");if(!E.ok)continue;const L=await E.json();if(!L.isInstalling){c.current.clear(),d.current.clear(),w.current&&(t(L),r(BE(L.catalog,L.assets)),y(!1));return}}w.current&&(S("Install taking longer than expected"),y(!1),await P())}catch(A){w.current&&(S(A.message),y(!1))}},[P]);return k.useEffect(()=>(w.current=!0,P(),()=>{w.current=!1}),[P]),{vaultStatus:e,mergedAssets:n,isLoading:i,error:l,fetchDetail:C,detailCache:c.current,loadingDetails:f.current,detailErrors:d.current,installAll:O,isInstalling:g,installError:x,refresh:P}}function fte({assets:e}){const t=e.length,n=e.reduce((u,c)=>(u[c.type]=(u[c.type]||0)+1,u),{}),r=n.skill||0,i=n.rule||0,a=n.command||0,l=t-r-i-a;return m.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4",children:[m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Total Assets"}),m.jsx("div",{className:"stat-value text-primary",children:t}),m.jsx("div",{className:"stat-desc",children:"In vault catalog"})]})}),m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Skills"}),m.jsx("div",{className:"stat-value",children:r}),m.jsx("div",{className:"stat-desc",children:"Reusable workflows"})]})}),m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:"Rules"}),m.jsx("div",{className:"stat-value",children:i}),m.jsx("div",{className:"stat-desc",children:"Coding standards"})]})}),m.jsx("div",{className:"stats shadow bg-base-200",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"stat-title",children:l>0?"Commands & Other":"Commands"}),m.jsx("div",{className:"stat-value",children:a+l}),m.jsx("div",{className:"stat-desc",children:"Slash commands"})]})})]})}function dte({detail:e,isLoading:t,onRetry:n}){return t?m.jsxs("div",{className:"p-4 bg-base-200 rounded-b-lg flex items-center gap-2",children:[m.jsx("span",{className:"loading loading-spinner loading-sm"}),m.jsx("span",{className:"text-sm text-base-content/60",children:"Loading details..."})]}):e?m.jsxs("div",{className:"p-4 bg-base-200 rounded-b-lg space-y-3",children:[e.metadata.description&&m.jsx("p",{className:"text-sm text-base-content/70",children:e.metadata.description}),e.versions.length>0&&m.jsxs("div",{children:[m.jsx("h4",{className:"text-xs font-semibold text-base-content/50 uppercase mb-2",children:"Version History"}),m.jsxs("table",{className:"table table-xs w-full",children:[m.jsx("thead",{children:m.jsxs("tr",{children:[m.jsx("th",{children:"Version"}),m.jsx("th",{children:"Date"}),m.jsx("th",{children:"Files"})]})}),m.jsx("tbody",{children:e.versions.map(r=>m.jsxs("tr",{children:[m.jsxs("td",{className:"font-mono",children:["v",r.version]}),m.jsx("td",{className:"text-base-content/60",children:r.createdAt??"—"}),m.jsx("td",{children:r.filesCount})]},r.version))})]})]}),e.metadata.authors.length>0&&m.jsxs("div",{className:"text-xs text-base-content/50",children:["Authors: ",e.metadata.authors.join(", ")]})]}):m.jsxs("div",{className:"p-4 bg-base-200 rounded-b-lg text-sm text-base-content/60",children:[m.jsx("span",{children:"Failed to load details."}),n&&m.jsx("button",{className:"btn btn-ghost btn-xs ml-2",onClick:n,children:"Retry"})]})}const pte={skill:"lucide:wand-2",rule:"lucide:scale",command:"lucide:terminal"},hte={skill:"primary",rule:"info",command:"accent"},mte=[{id:"all",label:"All"},{id:"skill",label:"Skills"},{id:"rule",label:"Rules"},{id:"command",label:"Commands"}];function gte({assets:e,searchQuery:t,activeTab:n,onTabChange:r,onSearchChange:i,expandedAsset:a,onAssetClick:l,fetchDetail:u,detailCache:c,loadingDetails:f}){const d=e.filter(h=>{const g=n==="all"||h.type===n,y=!t||h.name.toLowerCase().includes(t.toLowerCase());return g&&y});return m.jsxs("div",{className:"space-y-4",children:[m.jsxs("div",{className:"flex items-center justify-between gap-4 flex-wrap",children:[m.jsx(eM,{tabs:mte,activeTab:n,onTabChange:r}),m.jsx("input",{type:"text",placeholder:"Search assets...",className:"input input-bordered input-sm w-60",value:t,onChange:h=>i(h.target.value)})]}),d.length===0?m.jsx("div",{className:"text-center py-8 text-base-content/50",children:t?`No assets matching "${t}"`:"No assets in this category"}):m.jsx("div",{className:"overflow-x-auto",children:m.jsxs("table",{className:"table w-full",children:[m.jsx("thead",{children:m.jsxs("tr",{children:[m.jsx("th",{children:"Name"}),m.jsx("th",{children:"Type"}),m.jsx("th",{children:"Installed"}),m.jsx("th",{children:"Latest"}),m.jsx("th",{children:"Scope"})]})}),m.jsx("tbody",{children:d.map(h=>m.jsx(vte,{asset:h,isExpanded:a===h.name,onClick:()=>l(h.name),fetchDetail:u,detail:c.get(h.name)??null,isLoadingDetail:f.has(h.name)},h.name))})]})})]})}function vte({asset:e,isExpanded:t,onClick:n,fetchDetail:r,detail:i,isLoadingDetail:a}){const l=pte[e.type]??"lucide:package",u=hte[e.type]??"ghost",c=()=>{n(),!t&&!i&&!a&&r(e.name)};return m.jsxs(m.Fragment,{children:[m.jsxs("tr",{className:"cursor-pointer hover:bg-base-200 transition-colors",onClick:c,children:[m.jsx("td",{children:m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsx(se,{icon:l,size:16,className:"text-base-content/50"}),m.jsx("span",{className:"font-medium",children:e.name}),e.hasUpdate&&m.jsx(Te,{variant:"warning",size:"sm",children:"update"})]})}),m.jsx("td",{children:m.jsx(Te,{variant:u,size:"sm",children:e.type})}),m.jsx("td",{className:"font-mono text-sm",children:e.installedVersion??"—"}),m.jsxs("td",{className:"font-mono text-sm",children:["v",e.latestVersion]}),m.jsx("td",{className:"text-sm text-base-content/60",children:e.scope??"—"})]}),t&&m.jsx("tr",{children:m.jsx("td",{colSpan:5,className:"p-0",children:m.jsx(dte,{detail:i,isLoading:a,onRetry:()=>r(e.name)})})})]})}function yte(e){try{const t=new URL(e);return(t.host+t.pathname).replace(/\.git$/,"")}catch{return e}}function xte(){const{vaultStatus:e,mergedAssets:t,isLoading:n,error:r,fetchDetail:i,detailCache:a,loadingDetails:l,installAll:u,isInstalling:c,installError:f}=cte(),d=fC(),h=k.useRef(c),[g,y]=k.useState(""),[x,S]=k.useState("all"),[w,P]=k.useState(null),C=k.useCallback(()=>{u()},[u]),O=k.useCallback(A=>{P(I=>I===A?null:A)},[]);return k.useEffect(()=>{h.current&&!c&&(f?f.includes("longer than expected")?d.warning(f,"Install Timeout"):d.error(f,"Install Failed"):d.success("Vault synced successfully","Sync Complete")),h.current=c},[c,f,d]),n?m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{className:"flex items-baseline gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Vault"}),m.jsxs("span",{className:"text-xs text-base-content/40 flex items-center gap-2",children:[m.jsx("span",{className:"loading loading-spinner loading-xs"}),"Loading vault data..."]})]}),m.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4",children:[...Array(4)].map((A,I)=>m.jsx("div",{className:"stats shadow bg-base-200 animate-pulse",children:m.jsxs("div",{className:"stat",children:[m.jsx("div",{className:"h-3 bg-base-300 rounded w-20 mb-2"}),m.jsx("div",{className:"h-8 bg-base-300 rounded w-24 mb-1"}),m.jsx("div",{className:"h-3 bg-base-300 rounded w-16"})]})},I))}),m.jsx("div",{className:"card bg-base-200 animate-pulse",children:m.jsxs("div",{className:"card-body",children:[m.jsx("div",{className:"h-4 bg-base-300 rounded w-48 mb-4"}),m.jsx("div",{className:"h-48 bg-base-300 rounded"})]})})]}):r?m.jsxs("div",{className:"space-y-8",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Vault"}),m.jsx("div",{className:"alert alert-error",children:m.jsxs("span",{children:["Failed to load vault data: ",r]})})]}):e!=null&&e.installed?e.configured?m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{className:"flex items-center justify-between flex-wrap gap-4",children:[m.jsxs("div",{className:"flex items-center gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Vault"}),m.jsx(Te,{variant:"success",size:"sm",children:"Connected"}),f&&m.jsx("span",{className:"text-xs text-warning",children:f})]}),m.jsx(bte,{isInstalling:c,onInstall:C})]}),m.jsxs("div",{className:"flex items-center gap-2 text-sm text-base-content/60",children:[e.vaultUrl&&m.jsxs(m.Fragment,{children:[m.jsx(se,{icon:"lucide:git-branch",size:16}),m.jsx("span",{className:"font-mono text-xs",children:yte(e.vaultUrl)})]}),e.version&&m.jsxs(Te,{variant:"ghost",size:"sm",children:["sx v",e.version]}),m.jsxs("span",{children:["Run ",m.jsx("code",{className:"font-mono text-xs bg-base-300 px-1 rounded",children:"/vault"})," in Claude Code to push or pull skills, rules, and commands."]})]}),m.jsx(fte,{assets:t}),t.length===0?m.jsx(Eo,{icon:"lucide:package",title:"No assets in vault",description:"Push skills, rules, or commands to your vault using /vault in Claude Code."}):m.jsx(gte,{assets:t,searchQuery:g,activeTab:x,onTabChange:S,onSearchChange:y,expandedAsset:w,onAssetClick:O,fetchDetail:i,detailCache:a,loadingDetails:l})]}):m.jsxs("div",{className:"space-y-8",children:[m.jsxs("div",{className:"flex items-center gap-3",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Vault"}),e.version&&m.jsxs(Te,{variant:"ghost",size:"sm",children:["sx v",e.version]})]}),m.jsx(Eo,{icon:"lucide:archive",title:"Vault not configured",description:"Run /vault in Claude Code to configure your vault and push or pull skills, rules, and commands."})]}):m.jsxs("div",{className:"space-y-8",children:[m.jsx("h1",{className:"text-2xl font-bold",children:"Vault"}),m.jsx(Eo,{icon:"lucide:archive",title:"sx is not installed",description:"Run /vault in Claude Code to push or pull skills, rules, and commands."})]})}function bte({isInstalling:e,onInstall:t}){return m.jsx("button",{className:"btn btn-primary btn-sm",disabled:e,onClick:t,children:e?m.jsxs(m.Fragment,{children:[m.jsx("span",{className:"loading loading-spinner loading-xs"}),"Syncing..."]}):m.jsxs(m.Fragment,{children:[m.jsx(se,{icon:"lucide:refresh-cw",size:14}),"Sync All"]})})}const Ql=[{key:"DEBUG",label:"Debug",icon:"🔍",color:"text-gray-400"},{key:"INFO",label:"Info",icon:"ℹ️",color:"text-info"},{key:"WARN",label:"Warn",icon:"⚠️",color:"text-warning"},{key:"ERROR",label:"Error",icon:"❌",color:"text-error"}],Zl=[{key:"HOOK",label:"Hook",icon:"🪝",color:"text-purple-400"},{key:"WORKER",label:"Worker",icon:"⚙️",color:"text-info"},{key:"SDK",label:"SDK",icon:"📦",color:"text-success"},{key:"PARSER",label:"Parser",icon:"📄",color:"text-sky-400"},{key:"DB",label:"DB",icon:"🗄️",color:"text-orange-400"},{key:"SYSTEM",label:"System",icon:"💻",color:"text-gray-400"},{key:"HTTP",label:"HTTP",icon:"🌐",color:"text-green-400"},{key:"SESSION",label:"Session",icon:"📋",color:"text-pink-400"},{key:"CHROMA",label:"Chroma",icon:"🔮",color:"text-violet-400"}];function wte(e){const t=/^\[([^\]]+)\]\s+\[(\w+)\s*\]\s+\[(\w+)\s*\]\s+(?:\[([^\]]+)\]\s+)?(.*)$/,n=e.match(t);if(!n)return{raw:e};const[,r,i,a,l,u]=n;let c;return u.startsWith("→")?c="dataIn":u.startsWith("←")?c="dataOut":u.startsWith("✓")?c="success":u.startsWith("✗")?c="failure":u.startsWith("⏱")?c="timing":u.includes("[HAPPY-PATH]")&&(c="happyPath"),{raw:e,timestamp:r,level:i==null?void 0:i.trim(),component:a==null?void 0:a.trim(),correlationId:l||void 0,message:u,isSpecial:c}}function kte({isOpen:e,onClose:t}){const[n,r]=k.useState(""),[i,a]=k.useState(!1),[l,u]=k.useState(null),[c,f]=k.useState(!1),[d,h]=k.useState(350),[g,y]=k.useState(!1),x=k.useRef(0),S=k.useRef(0),w=k.useRef(null),P=k.useRef(!0),[C,O]=k.useState(new Set(["DEBUG","INFO","WARN","ERROR"])),[A,I]=k.useState(new Set(["HOOK","WORKER","SDK","PARSER","DB","SYSTEM","HTTP","SESSION","CHROMA"])),[E,L]=k.useState(!1),F=k.useMemo(()=>n?n.split(` +`).map(wte):[],[n]),H=k.useMemo(()=>F.filter(_=>E?_.raw.includes("[ALIGNMENT]"):!_.level||!_.component?!0:C.has(_.level)&&A.has(_.component)),[F,C,A,E]),R=k.useCallback(()=>{if(!w.current)return!0;const{scrollTop:_,scrollHeight:te,clientHeight:fe}=w.current;return te-_-fe<50},[]),W=k.useCallback(()=>{w.current&&P.current&&(w.current.scrollTop=w.current.scrollHeight)},[]),D=k.useCallback(async()=>{P.current=R(),a(!0),u(null);try{const _=await fetch("/api/logs");if(!_.ok)throw new Error(`Failed to fetch logs: ${_.statusText}`);const te=await _.json();r(te.logs||"")}catch(_){u(_ instanceof Error?_.message:"Unknown error")}finally{a(!1)}},[R]);k.useEffect(()=>{W()},[n,W]);const Z=k.useCallback(async()=>{if(confirm("Are you sure you want to clear all logs?")){a(!0),u(null);try{const _=await fetch("/api/logs/clear",{method:"POST"});if(!_.ok)throw new Error(`Failed to clear logs: ${_.statusText}`);r("")}catch(_){u(_ instanceof Error?_.message:"Unknown error")}finally{a(!1)}}},[]),Y=k.useCallback(_=>{_.preventDefault(),y(!0),x.current=_.clientY,S.current=d},[d]);k.useEffect(()=>{if(!g)return;const _=fe=>{const ce=x.current-fe.clientY,Se=Math.min(Math.max(150,S.current+ce),window.innerHeight-100);h(Se)},te=()=>{y(!1)};return document.addEventListener("mousemove",_),document.addEventListener("mouseup",te),()=>{document.removeEventListener("mousemove",_),document.removeEventListener("mouseup",te)}},[g]),k.useEffect(()=>{e&&(P.current=!0,D())},[e,D]),k.useEffect(()=>{if(!e||!c)return;const _=setInterval(D,2e3);return()=>clearInterval(_)},[e,c,D]);const Q=k.useCallback(_=>{O(te=>{const fe=new Set(te);return fe.has(_)?fe.delete(_):fe.add(_),fe})},[]),pe=k.useCallback(_=>{I(te=>{const fe=new Set(te);return fe.has(_)?fe.delete(_):fe.add(_),fe})},[]),de=k.useCallback(_=>{O(_?new Set(["DEBUG","INFO","WARN","ERROR"]):new Set)},[]),J=k.useCallback(_=>{I(_?new Set(["HOOK","WORKER","SDK","PARSER","DB","SYSTEM","HTTP","SESSION","CHROMA"]):new Set)},[]);if(!e)return null;const ae=_=>{const te=Ql.find(fe=>fe.key===_);return(te==null?void 0:te.color)||"text-base-content"},T=_=>{const te=Zl.find(fe=>fe.key===_);return(te==null?void 0:te.color)||"text-base-content"},$=_=>_.level==="ERROR"?"bg-error/10":_.level==="WARN"?"bg-warning/5":"",U=(_,te)=>{var Se,je;if(!_.timestamp)return m.jsx("div",{className:"whitespace-pre-wrap break-all text-base-content/60",children:_.raw},te);const fe=Ql.find(X=>X.key===_.level),ce=Zl.find(X=>X.key===_.component);return m.jsxs("div",{className:`whitespace-pre-wrap break-all py-0.5 px-1 rounded ${$(_)}`,children:[m.jsxs("span",{className:"text-base-content/40",children:["[",_.timestamp,"]"]})," ",m.jsxs("span",{className:`font-medium ${ae(_.level)}`,title:_.level,children:["[",(fe==null?void 0:fe.icon)||""," ",(Se=_.level)==null?void 0:Se.padEnd(5),"]"]})," ",m.jsxs("span",{className:`font-medium ${T(_.component)}`,title:_.component,children:["[",(ce==null?void 0:ce.icon)||""," ",(je=_.component)==null?void 0:je.padEnd(7),"]"]})," ",_.correlationId&&m.jsxs(m.Fragment,{children:[m.jsxs("span",{className:"text-base-content/50",children:["[",_.correlationId,"]"]})," "]}),m.jsx("span",{className:_.isSpecial==="success"?"text-success":_.isSpecial==="failure"?"text-error":"text-base-content",children:_.message})]},te)};return m.jsxs("div",{className:"fixed bottom-0 left-0 right-0 bg-base-100 border-t border-base-300 flex flex-col z-50 shadow-2xl",style:{height:`${d}px`},children:[m.jsx("div",{className:"h-1.5 cursor-ns-resize flex items-center justify-center bg-base-200 hover:bg-base-300 transition-colors",onMouseDown:Y,children:m.jsx("div",{className:"w-12 h-1 bg-base-300 rounded-full"})}),m.jsxs("div",{className:"flex justify-between items-center px-3 h-9 bg-base-200 border-b border-base-300",children:[m.jsx("div",{className:"flex gap-1",children:m.jsx("div",{className:"px-3 py-1 text-xs font-medium bg-base-100 text-base-content rounded",children:"Console"})}),m.jsxs("div",{className:"flex items-center gap-2",children:[m.jsxs("label",{className:"flex items-center gap-1.5 text-xs text-base-content/60 cursor-pointer",children:[m.jsx("input",{type:"checkbox",className:"checkbox checkbox-xs",checked:c,onChange:_=>f(_.target.checked)}),"Auto-refresh"]}),m.jsx("button",{className:"btn btn-ghost btn-xs btn-square",onClick:D,disabled:i,title:"Refresh logs",children:m.jsx(se,{icon:"lucide:refresh-cw",size:14,className:i?"animate-spin":""})}),m.jsx("button",{className:"btn btn-ghost btn-xs btn-square",onClick:()=>{P.current=!0,W()},title:"Scroll to bottom",children:m.jsx(se,{icon:"lucide:arrow-down",size:14})}),m.jsx("button",{className:"btn btn-ghost btn-xs btn-square hover:text-error",onClick:Z,disabled:i,title:"Clear logs",children:m.jsx(se,{icon:"lucide:trash-2",size:14})}),m.jsx("button",{className:"btn btn-ghost btn-xs btn-square",onClick:t,title:"Close console",children:m.jsx(se,{icon:"lucide:x",size:14})})]})]}),m.jsxs("div",{className:"flex flex-wrap gap-3 px-3 py-2 bg-base-200/50 border-b border-base-300 text-xs",children:[m.jsxs("div",{className:"flex items-center gap-1.5",children:[m.jsx("span",{className:"font-medium text-base-content/50 uppercase text-[10px]",children:"Quick:"}),m.jsx("button",{className:`badge badge-sm cursor-pointer ${E?"badge-warning":"badge-ghost opacity-50"}`,onClick:()=>L(!E),title:"Show only session alignment logs",children:"🔗 Alignment"})]}),m.jsxs("div",{className:"flex items-center gap-1.5",children:[m.jsx("span",{className:"font-medium text-base-content/50 uppercase text-[10px]",children:"Levels:"}),m.jsxs("div",{className:"flex flex-wrap gap-1",children:[Ql.map(_=>m.jsxs("button",{className:`badge badge-sm cursor-pointer ${C.has(_.key)?"badge-primary":"badge-ghost opacity-40"}`,onClick:()=>Q(_.key),title:_.label,children:[_.icon," ",_.label]},_.key)),m.jsx("button",{className:"badge badge-sm badge-ghost cursor-pointer",onClick:()=>de(C.size===0),title:C.size===Ql.length?"Select none":"Select all",children:C.size===Ql.length?"○":"●"})]})]}),m.jsxs("div",{className:"flex items-center gap-1.5",children:[m.jsx("span",{className:"font-medium text-base-content/50 uppercase text-[10px]",children:"Components:"}),m.jsxs("div",{className:"flex flex-wrap gap-1",children:[Zl.map(_=>m.jsxs("button",{className:`badge badge-sm cursor-pointer ${A.has(_.key)?"badge-secondary":"badge-ghost opacity-40"}`,onClick:()=>pe(_.key),title:_.label,children:[_.icon," ",_.label]},_.key)),m.jsx("button",{className:"badge badge-sm badge-ghost cursor-pointer",onClick:()=>J(A.size===0),title:A.size===Zl.length?"Select none":"Select all",children:A.size===Zl.length?"○":"●"})]})]})]}),l&&m.jsxs("div",{className:"px-3 py-2 bg-error/10 text-error text-xs",children:["⚠ ",l]}),m.jsx("div",{className:"flex-1 overflow-y-auto px-3 py-2",ref:w,children:m.jsx("div",{className:"font-mono text-xs leading-relaxed",children:H.length===0?m.jsx("div",{className:"text-base-content/40 italic",children:"No logs available"}):H.map((_,te)=>U(_,te))})})]})}const Kv={COMMAND_PALETTE:{key:"k",modifiers:["ctrl","meta"],description:"Open command palette",action:"openCommandPalette"},SEARCH:{key:"/",modifiers:["ctrl","meta"],description:"Focus search",action:"focusSearch"},ESCAPE:{key:"Escape",description:"Close modal/palette",action:"escape"},TOGGLE_THEME:{key:"t",modifiers:["ctrl","meta"],description:"Toggle theme",action:"toggleTheme"},TOGGLE_SIDEBAR:{key:"b",modifiers:["ctrl","meta"],description:"Toggle sidebar",action:"toggleSidebar"}},Ste=[{sequence:["g","d"],description:"Go to Dashboard",action:"navigate:/"},{sequence:["g","m"],description:"Go to Memories",action:"navigate:/memories"},{sequence:["g","v"],description:"Go to Vault",action:"navigate:/vault"}];function UE(e){var r,i,a,l;const t=typeof navigator<"u"&&navigator.platform.includes("Mac"),n=[];return((r=e.modifiers)!=null&&r.includes("ctrl")||(i=e.modifiers)!=null&&i.includes("meta"))&&n.push(t?"⌘":"Ctrl"),(a=e.modifiers)!=null&&a.includes("shift")&&n.push(t?"⇧":"Shift"),(l=e.modifiers)!=null&&l.includes("alt")&&n.push(t?"⌥":"Alt"),n.push(e.key.toUpperCase()),n.join(t?"":"+")}function jte({open:e,onClose:t,onNavigate:n,onToggleTheme:r,onToggleSidebar:i}){const[a,l]=k.useState(""),[u,c]=k.useState(0),f=k.useRef(null),d=k.useRef(null),h=k.useMemo(()=>[{id:"nav-dashboard",label:"Go to Dashboard",shortcut:"G D",category:"navigation",icon:"lucide:layout-dashboard",action:()=>n("/")},{id:"nav-memories",label:"Go to Memories",shortcut:"G M",category:"navigation",icon:"lucide:brain",action:()=>n("/memories")},{id:"nav-usage",label:"Go to Usage",shortcut:"G U",category:"navigation",icon:"lucide:bar-chart-3",action:()=>n("/usage")},{id:"nav-vault",label:"Go to Vault",shortcut:"G V",category:"navigation",icon:"lucide:archive",action:()=>n("/vault")},{id:"action-theme",label:"Toggle Theme",shortcut:UE(Kv.TOGGLE_THEME),category:"action",icon:"lucide:sun-moon",action:r},{id:"action-sidebar",label:"Toggle Sidebar",shortcut:UE(Kv.TOGGLE_SIDEBAR),category:"action",icon:"lucide:panel-left",action:i}],[n,r,i]),g=k.useMemo(()=>{if(!a)return h;const C=a.toLowerCase();return h.filter(O=>O.label.toLowerCase().includes(C)||O.category.toLowerCase().includes(C))},[h,a]);k.useEffect(()=>{c(0)},[a]),k.useEffect(()=>{e&&(l(""),c(0),setTimeout(()=>{var C;return(C=f.current)==null?void 0:C.focus()},50))},[e]),k.useEffect(()=>{if(!d.current)return;const C=d.current.querySelector('[data-selected="true"]');C==null||C.scrollIntoView({block:"nearest"})},[u]);const y=C=>{C.action(),t()},x=C=>{switch(C.key){case"ArrowDown":C.preventDefault(),c(O=>(O+1)%g.length);break;case"ArrowUp":C.preventDefault(),c(O=>(O-1+g.length)%g.length);break;case"Enter":C.preventDefault(),g[u]&&y(g[u]);break;case"Escape":C.preventDefault(),t();break}};if(!e)return null;const S=g.reduce((C,O)=>(C[O.category]||(C[O.category]=[]),C[O.category].push(O),C),{}),w={navigation:"Navigation",action:"Actions",theme:"Theme"};let P=0;return m.jsxs("dialog",{className:"modal modal-open",children:[m.jsxs("div",{className:"modal-box max-w-xl p-0 overflow-hidden",children:[m.jsxs("div",{className:"flex items-center gap-2 p-3 border-b border-base-300",children:[m.jsx(se,{icon:"lucide:search",size:18,className:"text-base-content/50"}),m.jsx("input",{ref:f,type:"text",placeholder:"Type a command or search...",value:a,onChange:C=>l(C.target.value),onKeyDown:x,className:"flex-1 bg-transparent outline-none text-base"}),m.jsx("kbd",{className:"kbd kbd-sm",children:"ESC"})]}),m.jsx("div",{ref:d,className:"max-h-80 overflow-y-auto p-2",children:g.length===0?m.jsx("div",{className:"text-center py-8 text-base-content/50",children:"No commands found"}):Object.entries(S).map(([C,O])=>m.jsxs("div",{children:[m.jsx("div",{className:"text-xs font-medium text-base-content/50 px-2 py-1 mt-2 first:mt-0",children:w[C]||C}),O.map(A=>{const I=P===u,E=P;return P++,m.jsxs("button",{"data-selected":I,className:`w-full flex items-center gap-3 px-3 py-2 rounded-lg text-left transition-colors ${I?"bg-primary text-primary-content":"hover:bg-base-200"}`,onClick:()=>y(A),onMouseEnter:()=>c(E),children:[m.jsx(se,{icon:A.icon,size:16,className:I?"text-primary-content":"text-base-content/60"}),m.jsx("span",{className:"flex-1",children:A.label}),A.shortcut&&m.jsx("kbd",{className:`kbd kbd-sm ${I?"bg-primary-content/20 text-primary-content":""}`,children:A.shortcut})]},A.id)})]},C))}),m.jsxs("div",{className:"border-t border-base-300 px-3 py-2 text-xs text-base-content/50 flex gap-4",children:[m.jsxs("span",{children:[m.jsx("kbd",{className:"kbd kbd-xs",children:"↑↓"})," Navigate"]}),m.jsxs("span",{children:[m.jsx("kbd",{className:"kbd kbd-xs",children:"↵"})," Select"]}),m.jsxs("span",{children:[m.jsx("kbd",{className:"kbd kbd-xs",children:"ESC"})," Close"]})]})]}),m.jsx("form",{method:"dialog",className:"modal-backdrop bg-black/50",children:m.jsx("button",{onClick:t,children:"close"})})]})}function Pte({license:e,onActivated:t}){const[n,r]=k.useState(""),[i,a]=k.useState(null),[l,u]=k.useState(!1),c=k.useCallback(async()=>{const y=n.trim();if(y){a(null),u(!0);try{const S=await(await fetch("/api/license/activate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:y})})).json();S.success?(r(""),a(null),t()):a(S.error??"Activation failed")}catch{a("Connection failed. Is the Pilot worker running?")}finally{u(!1)}}},[n,t]),f=k.useCallback(y=>{y.key==="Enter"&&!l&&c()},[c,l]),d=(e==null?void 0:e.isExpired)===!0,h=d?"License Expired":"License Required",g=d?"Your Claude Pilot license has expired. Please activate a new license to continue using the Console.":"Claude Pilot Console requires an active license or trial. Activate your license key below to get started.";return m.jsx("div",{className:"min-h-screen flex items-center justify-center bg-base-200 p-4",children:m.jsx("div",{className:"card bg-base-100 shadow-xl w-full max-w-md",children:m.jsxs("div",{className:"card-body items-center text-center gap-4",children:[m.jsx("div",{className:"text-5xl mb-2",children:d?"🚫":"🔒"}),m.jsx("h1",{className:"card-title text-2xl",children:h}),m.jsx("p",{className:"text-base-content/60 text-sm",children:g}),m.jsxs("div",{className:"w-full space-y-3 mt-2",children:[m.jsx("input",{type:"text",className:"input input-bordered w-full",placeholder:"Enter your license key",value:n,onChange:y=>{r(y.target.value),a(null)},onKeyDown:f,disabled:l,autoFocus:!0}),i&&m.jsx("p",{className:"text-error text-sm text-left",children:i}),m.jsx("button",{className:"btn btn-primary w-full",onClick:c,disabled:l||!n.trim(),children:l?"Activating...":"Activate License"})]}),m.jsx("div",{className:"divider text-base-content/40 text-xs my-1",children:"or"}),m.jsx("a",{href:"https://claude-pilot.com/#pricing",target:"_blank",rel:"noopener noreferrer",className:"btn btn-outline btn-sm w-full",children:"Get a License"}),m.jsxs("p",{className:"text-base-content/40 text-xs mt-2",children:["Visit"," ",m.jsx("a",{href:"https://claude-pilot.com",target:"_blank",rel:"noopener noreferrer",className:"text-primary hover:underline",children:"claude-pilot.com"})," ","to learn more about Claude Pilot."]})]})})})}const RT="pilot-memory-theme";function Ete(){return typeof window>"u"||window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}function WE(){try{const e=localStorage.getItem(RT);if(e==="system"||e==="light"||e==="dark")return e}catch(e){console.warn("Failed to read theme preference from localStorage:",e)}return"system"}function qE(e){return e==="system"?Ete():e}function HE(e){return e==="dark"?"claude-pilot":"claude-pilot-light"}function Cte(){const[e,t]=k.useState(WE),[n,r]=k.useState(()=>qE(WE()));return k.useEffect(()=>{const a=qE(e);r(a),document.documentElement.setAttribute("data-theme",HE(a))},[e]),k.useEffect(()=>{if(e!=="system")return;const a=window.matchMedia("(prefers-color-scheme: dark)"),l=u=>{const c=u.matches?"dark":"light";r(c),document.documentElement.setAttribute("data-theme",HE(c))};return a.addEventListener("change",l),()=>a.removeEventListener("change",l)},[e]),{preference:e,resolvedTheme:n,setThemePreference:a=>{try{localStorage.setItem(RT,a),t(a)}catch(l){console.warn("Failed to save theme preference to localStorage:",l),t(a)}}}}function Ote(e,t={}){const{enabled:n=!0}=t,r=k.useRef([]),i=k.useRef(null),a=k.useCallback(()=>{r.current=[],i.current&&(clearTimeout(i.current),i.current=null)},[]);k.useEffect(()=>{if(!n)return;const l=u=>{const c=u.target;if(c.tagName==="INPUT"||c.tagName==="TEXTAREA"||c.isContentEditable){u.key==="Escape"&&e("escape");return}navigator.platform.includes("Mac");const f=u.ctrlKey||u.metaKey;for(const d of Object.values(Kv)){const h=!d.modifiers||d.modifiers.some(x=>x==="ctrl"?u.ctrlKey:x==="meta"?u.metaKey:x==="shift"?u.shiftKey:x==="alt"?u.altKey:!1),g=u.key.toLowerCase()===d.key.toLowerCase(),y=d.modifiers&&d.modifiers.length>0;if(g&&h&&(y?f:!f)){u.preventDefault(),e(d.action),a();return}}if(!f&&!u.shiftKey&&!u.altKey){i.current&&clearTimeout(i.current),r.current.push(u.key.toLowerCase()),i.current=setTimeout(a,1e3);for(const d of Ste){const h=r.current,g=d.sequence;if(g.slice(0,h.length).every((x,S)=>x===h[S])){if(h.length===g.length){u.preventDefault(),e(d.action),a();return}return}}a()}};return document.addEventListener("keydown",l),()=>{document.removeEventListener("keydown",l),a()}},[n,e,a])}const Nte=[{path:"/",component:zL},{path:"/spec",component:FB},{path:"/memories",component:e1},{path:"/memories/:type",component:e1},{path:"/sessions",component:iR},{path:"/usage",component:lte},{path:"/vault",component:xte},{path:"/settings",component:cR}],VE="pilot-memory-sidebar-collapsed";function Ate(){const{path:e,navigate:t}=mC(),{resolvedTheme:n,setThemePreference:r}=Cte(),{workerStatus:i}=gC(),{license:a,isLoading:l,refetch:u}=hC(),[c,f]=k.useState(()=>{if(typeof window<"u"&&window.innerWidth<1024)return!0;try{return localStorage.getItem(VE)==="true"}catch{return!1}}),[d,h]=k.useState(!1),[g,y]=k.useState(!1),x=k.useCallback(()=>{r(n==="light"?"dark":"light")},[n,r]),S=k.useCallback(()=>{f(O=>{const A=!O;try{localStorage.setItem(VE,String(A))}catch{}return A})},[]),w=k.useCallback(()=>{h(O=>!O)},[]),P=k.useCallback(O=>{if(O==="openCommandPalette")y(!0);else if(O==="escape")y(!1),h(!1);else if(O==="toggleTheme")r(n==="light"?"dark":"light");else if(O==="toggleSidebar")S();else if(O==="focusSearch"){const A=document.querySelector('input[type="search"]');A==null||A.focus()}else O.startsWith("navigate:")&&t(O.replace("navigate:",""))},[n,r,t,S]);Ote(P);const C=!l&&(a==null?void 0:a.valid)===!0&&!a.isExpired;return l?m.jsx("div",{className:"min-h-screen flex items-center justify-center bg-base-200","data-theme":n==="dark"?"claude-pilot":"claude-pilot-light",children:m.jsx("span",{className:"loading loading-spinner loading-lg text-primary"})}):C?m.jsx(vL,{children:m.jsxs(mL,{children:[m.jsx(jL,{currentPath:`#${e}`,workerStatus:i.status,version:i.version,queueDepth:i.queueDepth,theme:n,onToggleTheme:x,onToggleLogs:w,sidebarCollapsed:c,onToggleSidebar:S,children:m.jsx(PL,{routes:Nte})}),m.jsx(kte,{isOpen:d,onClose:()=>h(!1)}),m.jsx(jte,{open:g,onClose:()=>y(!1),onNavigate:t,onToggleTheme:x,onToggleSidebar:S})]})}):m.jsx("div",{"data-theme":n==="dark"?"claude-pilot":"claude-pilot-light",children:m.jsx(Pte,{license:a,onActivated:u})})}class _te extends k.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?m.jsxs("div",{style:{padding:"20px",color:"#ff6b6b",backgroundColor:"#1a1a1a",minHeight:"100vh"},children:[m.jsx("h1",{style:{fontSize:"24px",marginBottom:"10px"},children:"Something went wrong"}),m.jsx("p",{style:{marginBottom:"10px",color:"#8b949e"},children:"The application encountered an error. Please refresh the page to try again."}),this.state.error&&m.jsxs("details",{style:{marginTop:"20px",color:"#8b949e"},children:[m.jsx("summary",{style:{cursor:"pointer",marginBottom:"10px"},children:"Error details"}),m.jsxs("pre",{style:{backgroundColor:"#0d1117",padding:"10px",borderRadius:"6px",overflow:"auto"},children:[this.state.error.toString(),this.state.errorInfo&&` -`+this.state.errorInfo.componentStack]})]})]}):this.props.children}}const RT=document.getElementById("root");if(!RT)throw new Error("Root element not found");const Ate=UM.createRoot(RT);Ate.render(m.jsx(Nte,{children:m.jsx(Ote,{})})); +`+this.state.errorInfo.componentStack]})]})]}):this.props.children}}const zT=document.getElementById("root");if(!zT)throw new Error("Root element not found");const Ite=WD.createRoot(zT);Ite.render(m.jsx(_te,{children:m.jsx(Ate,{})})); diff --git a/pilot/ui/viewer.css b/pilot/ui/viewer.css index 743b0076..f426818e 100644 --- a/pilot/ui/viewer.css +++ b/pilot/ui/viewer.css @@ -1 +1 @@ -/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-orange-400:oklch(75% .183 55.934);--color-green-400:oklch(79.2% .209 151.711);--color-sky-400:oklch(74.6% .16 232.661);--color-violet-400:oklch(70.2% .183 293.541);--color-purple-400:oklch(71.4% .203 305.504);--color-pink-400:oklch(71.8% .202 349.761);--color-gray-400:oklch(70.7% .022 261.325);--color-black:#000;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-xl:36rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-5xl:3rem;--text-5xl--line-height:1;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--tracking-wider:.05em;--leading-relaxed:1.625;--radius-md:.375rem;--radius-lg:.5rem;--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}:where(:root),:root:has(input.theme-controller[value=light]:checked),[data-theme=light]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(98% 0 0);--color-base-300:oklch(95% 0 0);--color-base-content:oklch(21% .006 285.885);--color-primary:oklch(45% .24 277.023);--color-primary-content:oklch(93% .034 272.788);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}@media(prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--color-base-100:oklch(25.33% .016 252.42);--color-base-200:oklch(23.26% .014 253.1);--color-base-300:oklch(21.15% .012 254.09);--color-base-content:oklch(97.807% .029 256.847);--color-primary:oklch(58% .233 277.117);--color-primary-content:oklch(96% .018 272.314);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}}:root:has(input.theme-controller[value=light]:checked),[data-theme=light]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(98% 0 0);--color-base-300:oklch(95% 0 0);--color-base-content:oklch(21% .006 285.885);--color-primary:oklch(45% .24 277.023);--color-primary-content:oklch(93% .034 272.788);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}:root:has(input.theme-controller[value=dark]:checked),[data-theme=dark]{color-scheme:dark;--color-base-100:oklch(25.33% .016 252.42);--color-base-200:oklch(23.26% .014 253.1);--color-base-300:oklch(21.15% .012 254.09);--color-base-content:oklch(97.807% .029 256.847);--color-primary:oklch(58% .233 277.117);--color-primary-content:oklch(96% .018 272.314);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}:root{--fx-noise:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.34' numOctaves='4' stitchTiles='stitch'%3E%3C/feTurbulence%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23a)' opacity='0.2'%3E%3C/rect%3E%3C/svg%3E");scrollbar-color:currentColor #0000}@supports (color:color-mix(in lab,red,red)){:root{scrollbar-color:color-mix(in oklch,currentColor 35%,#0000)#0000}}:root:not(span){overflow:var(--page-overflow)}:root,[data-theme]{background:var(--page-scroll-bg,var(--root-bg));color:var(--color-base-content)}:where(:root,[data-theme]){--root-bg:var(--color-base-100)}@media(prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--root-bg:#121212;--layout-sidebar-background:#1a1a1a;--layout-topbar-background:#1a1a1a;--color-base-100:#1a1a1a;--color-base-200:#262626;--color-base-300:#333;--color-base-content:#fafafa;--color-primary:#5b9ed9;--color-primary-content:#fff;--color-secondary:#a855f7;--color-secondary-content:#fff;--color-accent:#5b9ed9;--color-accent-content:#fff;--color-neutral:#d1d5db;--color-neutral-content:#1e2832;--color-info:#0ea5e9;--color-info-content:#fff;--color-success:#22c55e;--color-success-content:#fff;--color-warning:#f59e0b;--color-warning-content:#150a00;--color-error:#ef4444;--color-error-content:#fff;--radius-field:.375rem;--radius-box:.5rem;--rounded-box:.5rem;--radius-selector:.375rem;--border:1px}}:where(:root),:root:has(input.theme-controller[value=claude-pilot]:checked),[data-theme=claude-pilot]{color-scheme:dark;--root-bg:#121212;--layout-sidebar-background:#1a1a1a;--layout-topbar-background:#1a1a1a;--color-base-100:#1a1a1a;--color-base-200:#262626;--color-base-300:#333;--color-base-content:#fafafa;--color-primary:#5b9ed9;--color-primary-content:#fff;--color-secondary:#a855f7;--color-secondary-content:#fff;--color-accent:#5b9ed9;--color-accent-content:#fff;--color-neutral:#d1d5db;--color-neutral-content:#1e2832;--color-info:#0ea5e9;--color-info-content:#fff;--color-success:#22c55e;--color-success-content:#fff;--color-warning:#f59e0b;--color-warning-content:#150a00;--color-error:#ef4444;--color-error-content:#fff;--radius-field:.375rem;--radius-box:.5rem;--rounded-box:.5rem;--radius-selector:.375rem;--border:1px}:root:has(input.theme-controller[value=claude-pilot-light]:checked),[data-theme=claude-pilot-light]{color-scheme:light;--root-bg:#f5f5f5;--layout-sidebar-background:#fff;--layout-topbar-background:#fff;--color-base-100:#fff;--color-base-200:#f5f5f5;--color-base-300:#e5e5e5;--color-base-content:#171717;--color-primary:#4a90c7;--color-primary-content:#fff;--color-secondary:#9333ea;--color-secondary-content:#fff;--color-accent:#4a90c7;--color-accent-content:#fff;--color-neutral:#1f2937;--color-neutral-content:#fafcff;--color-info:#0284c7;--color-info-content:#fff;--color-success:#16a34a;--color-success-content:#fff;--color-warning:#d97706;--color-warning-content:#150a00;--color-error:#dc2626;--color-error-content:#fff;--radius-field:.375rem;--radius-box:.5rem;--rounded-box:.5rem;--radius-selector:.375rem;--border:1px}}@layer components;@layer utilities{@layer daisyui.l1.l2.l3{.diff{webkit-user-select:none;-webkit-user-select:none;user-select:none;direction:ltr;grid-template-rows:1fr 1.8rem 1fr;grid-template-columns:auto 1fr;width:100%;display:grid;position:relative;overflow:hidden;container-type:inline-size}.diff:focus-visible,.diff:has(.diff-item-1:focus-visible){outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px;outline-color:var(--color-base-content)}.diff:focus-visible .diff-resizer{min-width:95cqi;max-width:95cqi}.diff:has(.diff-item-1:focus-visible){outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px}.diff:has(.diff-item-1:focus-visible) .diff-resizer{min-width:5cqi;max-width:5cqi}@supports (-webkit-overflow-scrolling:touch) and (overflow:-webkit-paged-x){.diff:focus .diff-resizer{min-width:5cqi;max-width:5cqi}.diff:has(.diff-item-1:focus) .diff-resizer{min-width:95cqi;max-width:95cqi}}.modal{pointer-events:none;visibility:hidden;width:100%;max-width:none;height:100%;max-height:none;color:inherit;transition:visibility .3s allow-discrete,background-color .3s ease-out,opacity .1s ease-out;overscroll-behavior:contain;z-index:999;scrollbar-gutter:auto;background-color:#0000;place-items:center;margin:0;padding:0;display:grid;position:fixed;top:0;right:0;bottom:0;left:0;overflow:clip}.modal::backdrop{display:none}.tooltip{--tt-bg:var(--color-neutral);--tt-off: calc(100% + .5rem) ;--tt-tail: calc(100% + 1px + .25rem) ;display:inline-block;position:relative}.tooltip>.tooltip-content,.tooltip[data-tip]:before{border-radius:var(--radius-field);text-align:center;white-space:normal;max-width:20rem;color:var(--color-neutral-content);opacity:0;background-color:var(--tt-bg);pointer-events:none;z-index:2;--tw-content:attr(data-tip);content:var(--tw-content);width:max-content;padding-block:.25rem;padding-inline:.5rem;font-size:.875rem;line-height:1.25;position:absolute}.tooltip:after{opacity:0;background-color:var(--tt-bg);content:"";pointer-events:none;--mask-tooltip:url("data:image/svg+xml,%3Csvg width='10' height='4' viewBox='0 0 8 4' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.500009 1C3.5 1 3.00001 4 5.00001 4C7 4 6.5 1 9.5 1C10 1 10 0.499897 10 0H0C-1.99338e-08 0.5 0 1 0.500009 1Z' fill='black'/%3E%3C/svg%3E%0A");width:.625rem;height:.25rem;-webkit-mask-position:-1px 0;mask-position:-1px 0;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-image:var(--mask-tooltip);mask-image:var(--mask-tooltip);display:block;position:absolute}@media(prefers-reduced-motion:no-preference){.tooltip>.tooltip-content,.tooltip[data-tip]:before,.tooltip:after{transition:opacity .2s cubic-bezier(.4,0,.2,1) 75ms,transform .2s cubic-bezier(.4,0,.2,1) 75ms}}:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))>.tooltip-content,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))[data-tip]:before,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible)):after{opacity:1;--tt-pos:0rem}@media(prefers-reduced-motion:no-preference){:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))>.tooltip-content,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))[data-tip]:before,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible)):after{transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1)}}.tab{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:center;webkit-user-select:none;-webkit-user-select:none;user-select:none;flex-wrap:wrap;justify-content:center;align-items:center;display:inline-flex;position:relative}@media(hover:hover){.tab:hover{color:var(--color-base-content)}}.tab{--tab-p:.75rem;--tab-bg:var(--color-base-100);--tab-border-color:var(--color-base-300);--tab-radius-ss:0;--tab-radius-se:0;--tab-radius-es:0;--tab-radius-ee:0;--tab-order:0;--tab-radius-min:calc(.75rem - var(--border));--tab-radius-limit:min(var(--radius-field),var(--tab-radius-min));--tab-radius-grad:#0000 calc(69% - var(--border)),var(--tab-border-color)calc(69% - var(--border) + .25px),var(--tab-border-color)69%,var(--tab-bg) calc(69% + .25px) ;order:var(--tab-order);height:var(--tab-height);padding-inline:var(--tab-p);border-color:#0000;font-size:.875rem}.tab:is(input[type=radio]){min-width:fit-content}.tab:is(input[type=radio]):after{--tw-content:attr(aria-label);content:var(--tw-content)}.tab:is(label){position:relative}.tab:is(label) input{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;opacity:0;position:absolute;top:0;right:0;bottom:0;left:0}:is(.tab:checked,.tab:is(label:has(:checked)),.tab:is(.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]))+.tab-content{display:block}.tab:not(:checked,label:has(:checked),:hover,.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]){color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.tab:not(:checked,label:has(:checked),:hover,.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]){color:color-mix(in oklab,var(--color-base-content)50%,transparent)}}.tab:not(input):empty{cursor:default;flex-grow:1}.tab:focus{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.tab:focus{outline-offset:2px;outline:2px solid #0000}}.tab:focus-visible,.tab:is(label:has(:checked:focus-visible)){outline-offset:-5px;outline:2px solid}.tab[disabled]{pointer-events:none;opacity:.4}.menu{--menu-active-fg:var(--color-neutral-content);--menu-active-bg:var(--color-neutral);flex-flow:column wrap;width:fit-content;padding:.5rem;font-size:.875rem;display:flex}.menu :where(li ul){white-space:nowrap;margin-inline-start:1rem;padding-inline-start:.5rem;position:relative}.menu :where(li ul):before{background-color:var(--color-base-content);opacity:.1;width:var(--border);content:"";inset-inline-start:0;position:absolute;top:.75rem;bottom:.75rem}.menu :where(li>.menu-dropdown:not(.menu-dropdown-show)){display:none}.menu :where(li:not(.menu-title)>:not(ul,details,.menu-title,.btn)),.menu :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);text-align:start;text-wrap:balance;-webkit-user-select:none;user-select:none;grid-auto-columns:minmax(auto,max-content) auto max-content;grid-auto-flow:column;align-content:flex-start;align-items:center;gap:.5rem;padding-block:.375rem;padding-inline:.75rem;transition-property:color,background-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:grid}.menu :where(li>details>summary){--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.menu :where(li>details>summary){outline-offset:2px;outline:2px solid #0000}}.menu :where(li>details>summary)::-webkit-details-marker{display:none}:is(.menu :where(li>details>summary),.menu :where(li>.menu-dropdown-toggle)):after{content:"";transform-origin:50%;pointer-events:none;justify-self:flex-end;width:.375rem;height:.375rem;transition-property:rotate,translate;transition-duration:.2s;display:block;translate:0 -1px;rotate:-135deg;box-shadow:inset 2px 2px}.menu details{interpolate-size:allow-keywords;overflow:hidden}.menu details::details-content{block-size:0}@media(prefers-reduced-motion:no-preference){.menu details::details-content{transition-behavior:allow-discrete;transition-property:block-size,content-visibility;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1)}}.menu details[open]::details-content{block-size:auto}.menu :where(li>details[open]>summary):after,.menu :where(li>.menu-dropdown-toggle.menu-dropdown-show):after{translate:0 1px;rotate:45deg}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{cursor:pointer;background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{background-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{color:var(--color-base-content);--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{outline-offset:2px;outline:2px solid #0000}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){cursor:pointer;background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){background-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){outline-offset:2px;outline:2px solid #0000}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){box-shadow:inset 0 1px #00000003,inset 0 -1px #ffffff03}.menu :where(li:empty){background-color:var(--color-base-content);opacity:.1;height:1px;margin:.5rem 1rem}.menu :where(li){flex-flow:column wrap;flex-shrink:0;align-items:stretch;display:flex;position:relative}.menu :where(li) .badge{justify-self:flex-end}.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active{outline-offset:2px;outline:2px solid #0000}}.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active{color:var(--menu-active-fg);background-color:var(--menu-active-bg);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise)}:is(.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active):not(:is(.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active):active){box-shadow:0 2px calc(var(--depth)*3px) -2px var(--menu-active-bg)}.menu :where(li).menu-disabled{pointer-events:none;color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.menu :where(li).menu-disabled{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}.menu .dropdown:focus-within .menu-dropdown-toggle:after{translate:0 1px;rotate:45deg}.menu .dropdown-content{margin-top:.5rem;padding:.5rem}.menu .dropdown-content:before{display:none}.dropdown{position-area:var(--anchor-v,bottom)var(--anchor-h,span-right);display:inline-block;position:relative}.dropdown>:not(:has(~[class*=dropdown-content])):focus{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.dropdown>:not(:has(~[class*=dropdown-content])):focus{outline-offset:2px;outline:2px solid #0000}}.dropdown .dropdown-content{position:absolute}.dropdown.dropdown-close .dropdown-content,.dropdown:not(details,.dropdown-open,.dropdown-hover:hover,:focus-within) .dropdown-content,.dropdown.dropdown-hover:not(:hover) [tabindex]:first-child:focus:not(:focus-visible)~.dropdown-content{transform-origin:top;opacity:0;display:none;scale:95%}.dropdown[popover],.dropdown .dropdown-content{z-index:999}@media(prefers-reduced-motion:no-preference){.dropdown[popover],.dropdown .dropdown-content{transition-behavior:allow-discrete;transition-property:opacity,scale,display;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);animation:.2s dropdown}}@starting-style{.dropdown[popover],.dropdown .dropdown-content{opacity:0;scale:95%}}:is(.dropdown:not(.dropdown-close).dropdown-open,.dropdown:not(.dropdown-close):not(.dropdown-hover):focus,.dropdown:not(.dropdown-close):focus-within)>[tabindex]:first-child{pointer-events:none}:is(.dropdown:not(.dropdown-close).dropdown-open,.dropdown:not(.dropdown-close):not(.dropdown-hover):focus,.dropdown:not(.dropdown-close):focus-within) .dropdown-content,.dropdown:not(.dropdown-close).dropdown-hover:hover .dropdown-content{opacity:1;scale:100%}.dropdown:is(details) summary::-webkit-details-marker{display:none}.dropdown:where([popover]){background:0 0}.dropdown[popover]{color:inherit;position:fixed}@supports not (position-area:bottom){.dropdown[popover]{margin:auto}.dropdown[popover].dropdown-close{transform-origin:top;opacity:0;display:none;scale:95%}.dropdown[popover].dropdown-open:not(:popover-open){transform-origin:top;opacity:0;display:none;scale:95%}.dropdown[popover]::backdrop{background-color:oklab(0% none none/.3)}}:is(.dropdown[popover].dropdown-close,.dropdown[popover]:not(.dropdown-open,:popover-open)){transform-origin:top;opacity:0;display:none;scale:95%}:where(.btn){width:unset}.btn{cursor:pointer;text-align:center;vertical-align:middle;outline-offset:2px;webkit-user-select:none;-webkit-user-select:none;user-select:none;padding-inline:var(--btn-p);color:var(--btn-fg);--tw-prose-links:var(--btn-fg);height:var(--size);font-size:var(--fontsize,.875rem);outline-color:var(--btn-color,var(--color-base-content));background-color:var(--btn-bg);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--btn-noise);border-width:var(--border);border-style:solid;border-color:var(--btn-border);text-shadow:0 .5px oklch(100% 0 0/calc(var(--depth)*.15));touch-action:manipulation;box-shadow:0 .5px 0 .5px oklch(100% 0 0/calc(var(--depth)*6%)) inset,var(--btn-shadow);--size:calc(var(--size-field,.25rem)*10);--btn-bg:var(--btn-color,var(--color-base-200));--btn-fg:var(--color-base-content);--btn-p:1rem;--btn-border:var(--btn-bg);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-wrap:nowrap;flex-shrink:0;justify-content:center;align-items:center;gap:.375rem;font-weight:600;transition-property:color,background-color,border-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:inline-flex}@supports (color:color-mix(in lab,red,red)){.btn{--btn-border:color-mix(in oklab,var(--btn-bg),#000 calc(var(--depth)*5%))}}.btn{--btn-shadow:0 3px 2px -2px var(--btn-bg),0 4px 3px -2px var(--btn-bg)}@supports (color:color-mix(in lab,red,red)){.btn{--btn-shadow:0 3px 2px -2px color-mix(in oklab,var(--btn-bg)calc(var(--depth)*30%),#0000),0 4px 3px -2px color-mix(in oklab,var(--btn-bg)calc(var(--depth)*30%),#0000)}}.btn{--btn-noise:var(--fx-noise)}@media(hover:hover){.btn:hover{--btn-bg:var(--btn-color,var(--color-base-200))}@supports (color:color-mix(in lab,red,red)){.btn:hover{--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%)}}}.btn:focus-visible,.btn:has(:focus-visible){isolation:isolate;outline-width:2px;outline-style:solid}.btn:active:not(.btn-active){--btn-bg:var(--btn-color,var(--color-base-200));translate:0 .5px}@supports (color:color-mix(in lab,red,red)){.btn:active:not(.btn-active){--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 5%)}}.btn:active:not(.btn-active){--btn-border:var(--btn-color,var(--color-base-200))}@supports (color:color-mix(in lab,red,red)){.btn:active:not(.btn-active){--btn-border:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%)}}.btn:active:not(.btn-active){--btn-shadow:0 0 0 0 oklch(0% 0 0/0),0 0 0 0 oklch(0% 0 0/0)}.btn:is(input[type=checkbox],input[type=radio]){-webkit-appearance:none;-moz-appearance:none;appearance:none}.btn:is(input[type=checkbox],input[type=radio])[aria-label]:after{--tw-content:attr(aria-label);content:var(--tw-content)}.btn:where(input:checked:not(.filter .btn)){--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content);isolation:isolate}.loading{pointer-events:none;aspect-ratio:1;vertical-align:middle;width:calc(var(--size-selector,.25rem)*6);background-color:currentColor;display:inline-block;-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:100%;mask-size:100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.collapse{border-radius:var(--radius-box,1rem);isolation:isolate;grid-template-rows:max-content 0fr;grid-template-columns:minmax(0,1fr);width:100%;display:grid;position:relative;overflow:hidden}@media(prefers-reduced-motion:no-preference){.collapse{transition:grid-template-rows .2s}}.collapse>input:is([type=checkbox],[type=radio]){-webkit-appearance:none;-moz-appearance:none;appearance:none;opacity:0;z-index:1;grid-row-start:1;grid-column-start:1;width:100%;min-height:1lh;padding:1rem;padding-inline-end:3rem;transition:background-color .2s ease-out}.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close)),.collapse:not(.collapse-close):has(>input:is([type=checkbox],[type=radio]):checked){grid-template-rows:max-content 1fr}.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close))>.collapse-content,.collapse:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){content-visibility:visible;min-height:fit-content}@supports not (content-visibility:visible){.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close))>.collapse-content,.collapse:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){visibility:visible}}.collapse:focus-visible,.collapse:has(>input:is([type=checkbox],[type=radio]):focus-visible),.collapse:has(summary:focus-visible){outline-color:var(--color-base-content);outline-offset:2px;outline-width:2px;outline-style:solid}.collapse:not(.collapse-close)>input[type=checkbox],.collapse:not(.collapse-close)>input[type=radio]:not(:checked),.collapse:not(.collapse-close)>.collapse-title{cursor:pointer}:is(.collapse[tabindex]:focus:not(.collapse-close,.collapse[open]),.collapse[tabindex]:focus-within:not(.collapse-close,.collapse[open]))>.collapse-title{cursor:unset}.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close))>:where(.collapse-content),.collapse:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){padding-bottom:1rem}.collapse:is(details){width:100%}@media(prefers-reduced-motion:no-preference){.collapse:is(details)::details-content{transition:content-visibility .2s allow-discrete,visibility .2s allow-discrete,min-height .2s ease-out allow-discrete,padding .1s ease-out 20ms,background-color .2s ease-out,height .2s;interpolate-size:allow-keywords;height:0}.collapse:is(details):where([open])::details-content{height:auto}}.collapse:is(details) summary{display:block;position:relative}.collapse:is(details) summary::-webkit-details-marker{display:none}.collapse:is(details)>.collapse-content{content-visibility:visible}.collapse:is(details) summary{outline:none}.list{flex-direction:column;font-size:.875rem;display:flex}.list .list-row{--list-grid-cols:minmax(0,auto)1fr;border-radius:var(--radius-box);word-break:break-word;grid-auto-flow:column;grid-template-columns:var(--list-grid-cols);gap:1rem;padding:1rem;display:grid;position:relative}:is(.list>:not(:last-child).list-row,.list>:not(:last-child) .list-row):after{content:"";border-bottom:var(--border)solid;inset-inline:var(--radius-box);border-color:var(--color-base-content);position:absolute;bottom:0}@supports (color:color-mix(in lab,red,red)){:is(.list>:not(:last-child).list-row,.list>:not(:last-child) .list-row):after{border-color:color-mix(in oklab,var(--color-base-content)5%,transparent)}}.toast{translate:var(--toast-x,0)var(--toast-y,0);inset-inline:auto 1rem;background-color:#0000;flex-direction:column;gap:.5rem;width:max-content;max-width:calc(100vw - 2rem);display:flex;position:fixed;top:auto;bottom:1rem}@media(prefers-reduced-motion:no-preference){.toast>*{animation:.25s ease-out toast}}.toggle{border:var(--border)solid currentColor;color:var(--input-color);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;vertical-align:middle;webkit-user-select:none;-webkit-user-select:none;user-select:none;--radius-selector-max:calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));border-radius:calc(var(--radius-selector) + min(var(--toggle-p),var(--radius-selector-max)) + min(var(--border),var(--radius-selector-max)));padding:var(--toggle-p);flex-shrink:0;grid-template-columns:0fr 1fr 1fr;place-content:center;display:inline-grid;position:relative;box-shadow:inset 0 1px}@supports (color:color-mix(in lab,red,red)){.toggle{box-shadow:0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000) inset}}.toggle{--input-color:var(--color-base-content);transition:color .3s,grid-template-columns .2s}@supports (color:color-mix(in lab,red,red)){.toggle{--input-color:color-mix(in oklab,var(--color-base-content)50%,#0000)}}.toggle{--toggle-p:calc(var(--size)*.125);--size:calc(var(--size-selector,.25rem)*6);width:calc((var(--size)*2) - (var(--border) + var(--toggle-p))*2);height:var(--size)}.toggle>*{z-index:1;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#0000;border:none;grid-column:2/span 1;grid-row-start:1;height:100%;padding:.125rem;transition:opacity .2s,rotate .4s}.toggle>:focus{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.toggle>:focus{outline-offset:2px;outline:2px solid #0000}}.toggle>:nth-child(2){color:var(--color-base-100);rotate:none}.toggle>:nth-child(3){color:var(--color-base-100);opacity:0;rotate:-15deg}.toggle:has(:checked)>:nth-child(2){opacity:0;rotate:15deg}.toggle:has(:checked)>:nth-child(3){opacity:1;rotate:none}.toggle:before{aspect-ratio:1;border-radius:var(--radius-selector);--tw-content:"";content:var(--tw-content);width:100%;height:100%;box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1)) inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1)) inset,0 1px currentColor;background-color:currentColor;grid-row-start:1;grid-column-start:2;transition:background-color .1s,translate .2s,inset-inline-start .2s;position:relative;inset-inline-start:0;translate:0}@supports (color:color-mix(in lab,red,red)){.toggle:before{box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1)) inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1)) inset,0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000)}}.toggle:before{background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise)}@media(forced-colors:active){.toggle:before{outline-style:var(--tw-outline-style);outline-offset:-1px;outline-width:1px}}@media print{.toggle:before{outline-offset:-1rem;outline:.25rem solid}}.toggle:focus-visible,.toggle:has(:focus-visible){outline-offset:2px;outline:2px solid}.toggle:checked,.toggle[aria-checked=true],.toggle:has(>input:checked){background-color:var(--color-base-100);--input-color:var(--color-base-content);grid-template-columns:1fr 1fr 0fr}:is(.toggle:checked,.toggle[aria-checked=true],.toggle:has(>input:checked)):before{background-color:currentColor}@starting-style{:is(.toggle:checked,.toggle[aria-checked=true],.toggle:has(>input:checked)):before{opacity:0}}.toggle:indeterminate{grid-template-columns:.5fr 1fr .5fr}.toggle:disabled{cursor:not-allowed;opacity:.3}.toggle:disabled:before{border:var(--border)solid currentColor;background-color:#0000}.input{cursor:text;border:var(--border)solid #0000;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--color-base-100);vertical-align:middle;white-space:nowrap;width:clamp(3rem,20rem,100%);height:var(--size);font-size:max(var(--font-size,.875rem),.875rem);touch-action:manipulation;border-color:var(--input-color);box-shadow:0 1px var(--input-color) inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1)) inset;border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.5rem;padding-inline:.75rem;display:inline-flex;position:relative}@supports (color:color-mix(in lab,red,red)){.input{box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000) inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1)) inset}}.input{--size:calc(var(--size-field,.25rem)*10);--input-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.input{--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000)}}.input:where(input){display:inline-flex}.input :where(input){-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#0000;border:none;width:100%;height:100%;display:inline-flex}.input :where(input):focus,.input :where(input):focus-within{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.input :where(input):focus,.input :where(input):focus-within{outline-offset:2px;outline:2px solid #0000}}.input :where(input[type=url]),.input :where(input[type=email]){direction:ltr}.input :where(input[type=date]){display:inline-flex}.input:focus,.input:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px var(--input-color)}@supports (color:color-mix(in lab,red,red)){.input:focus,.input:focus-within{box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)}}.input:focus,.input:focus-within{outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}@media(pointer:coarse){@supports (-webkit-touch-callout:none){.input:focus,.input:focus-within{--font-size:1rem}}}.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input{cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input{color:color-mix(in oklab,var(--color-base-content)40%,transparent)}}:is(.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input)::placeholder{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){:is(.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input)::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input{box-shadow:none}.input:has(>input[disabled])>input[disabled]{cursor:not-allowed}.input::-webkit-date-and-time-value{text-align:inherit}.input[type=number]::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}.input::-webkit-calendar-picker-indicator{position:absolute;inset-inline-end:.75em}.input:has(>input[type=date]) :where(input[type=date]){webkit-appearance:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex}.input:has(>input[type=date]) input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;width:1em;height:1em;position:absolute;inset-inline-end:.75em}.indicator{width:max-content;display:inline-flex;position:relative}.indicator :where(.indicator-item){z-index:1;white-space:nowrap;top:var(--indicator-t,0);bottom:var(--indicator-b,auto);left:var(--indicator-s,auto);right:var(--indicator-e,0);translate:var(--indicator-x,50%)var(--indicator-y,-50%);position:absolute}.table{border-collapse:separate;--tw-border-spacing-x: 0rem ;--tw-border-spacing-y: 0rem ;width:100%;border-spacing:var(--tw-border-spacing-x)var(--tw-border-spacing-y);border-radius:var(--radius-box);text-align:left;font-size:.875rem;position:relative}.table:where(:dir(rtl),[dir=rtl],[dir=rtl] *){text-align:right}@media(hover:hover){:is(.table tr.row-hover,.table tr.row-hover:nth-child(2n)):hover{background-color:var(--color-base-200)}}.table :where(th,td){vertical-align:middle;padding-block:.75rem;padding-inline:1rem}.table :where(thead,tfoot){white-space:nowrap;color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.table :where(thead,tfoot){color:color-mix(in oklab,var(--color-base-content)60%,transparent)}}.table :where(thead,tfoot){font-size:.875rem;font-weight:600}.table :where(tfoot tr:first-child :is(td,th)){border-top:var(--border)solid var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.table :where(tfoot tr:first-child :is(td,th)){border-top:var(--border)solid color-mix(in oklch,var(--color-base-content)5%,#0000)}}.table :where(.table-pin-rows thead tr){z-index:1;background-color:var(--color-base-100);position:sticky;top:0}.table :where(.table-pin-rows tfoot tr){z-index:1;background-color:var(--color-base-100);position:sticky;bottom:0}.table :where(.table-pin-cols tr th){background-color:var(--color-base-100);position:sticky;left:0;right:0}.table :where(thead tr :is(td,th),tbody tr:not(:last-child) :is(td,th)){border-bottom:var(--border)solid var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.table :where(thead tr :is(td,th),tbody tr:not(:last-child) :is(td,th)){border-bottom:var(--border)solid color-mix(in oklch,var(--color-base-content)5%,#0000)}}.select{border:var(--border)solid #0000;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--color-base-100);vertical-align:middle;width:clamp(3rem,20rem,100%);height:var(--size);touch-action:manipulation;white-space:nowrap;text-overflow:ellipsis;box-shadow:0 1px var(--input-color) inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1)) inset;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 20px) calc(1px + 50%),calc(100% - 16.1px) calc(1px + 50%);background-repeat:no-repeat;background-size:4px 4px,4px 4px;border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.375rem;padding-inline:.75rem 1.75rem;font-size:.875rem;display:inline-flex;position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.select{box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000) inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1)) inset}}.select{border-color:var(--input-color);--input-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.select{--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000)}}.select{--size:calc(var(--size-field,.25rem)*10)}[dir=rtl] .select{background-position:12px calc(1px + 50%),16px calc(1px + 50%)}[dir=rtl] .select::picker(select){translate:.5rem}[dir=rtl] .select select::picker(select){translate:.5rem}.select[multiple]{background-image:none;height:auto;padding-block:.75rem;padding-inline-end:.75rem;overflow:auto}.select select{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:calc(100% + 2.75rem);height:calc(100% - calc(var(--border)*2));background:inherit;border-radius:inherit;border-style:none;align-items:center;margin-inline:-.75rem -1.75rem;padding-inline:.75rem 1.75rem}.select select:focus,.select select:focus-within{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.select select:focus,.select select:focus-within{outline-offset:2px;outline:2px solid #0000}}.select select:not(:last-child){background-image:none;margin-inline-end:-1.375rem}.select:focus,.select:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px var(--input-color)}@supports (color:color-mix(in lab,red,red)){.select:focus,.select:focus-within{box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)}}.select:focus,.select:focus-within{outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select{cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select{color:color-mix(in oklab,var(--color-base-content)40%,transparent)}}:is(.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select)::placeholder{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){:is(.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select)::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}.select:has(>select[disabled])>select[disabled]{cursor:not-allowed}@supports (appearance:base-select){.select,.select select{-webkit-appearance:base-select;-moz-appearance:base-select;appearance:base-select}:is(.select,.select select)::picker(select){-webkit-appearance:base-select;-moz-appearance:base-select;appearance:base-select}}:is(.select,.select select)::picker(select){color:inherit;border:var(--border)solid var(--color-base-200);border-radius:var(--radius-box);background-color:inherit;max-height:min(24rem,70dvh);box-shadow:0 2px calc(var(--depth)*3px) -2px #0003;box-shadow:0 20px 25px -5px rgb(0 0 0/calc(var(--depth)*.1)),0 8px 10px -6px rgb(0 0 0/calc(var(--depth)*.1));margin-block:.5rem;margin-inline:.5rem;padding:.5rem;translate:-.5rem}:is(.select,.select select)::picker-icon{display:none}:is(.select,.select select) optgroup{padding-top:.5em}:is(.select,.select select) optgroup option:first-child{margin-top:.5em}:is(.select,.select select) option{border-radius:var(--radius-field);white-space:normal;padding-block:.375rem;padding-inline:.75rem;transition-property:color,background-color;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1)}:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{cursor:pointer;background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{background-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{outline-offset:2px;outline:2px solid #0000}}:is(.select,.select select) option:not(:disabled):active{background-color:var(--color-neutral);color:var(--color-neutral-content);box-shadow:0 2px calc(var(--depth)*3px) -2px var(--color-neutral)}.timeline{display:flex;position:relative}.timeline>li{grid-template-rows:var(--timeline-row-start,minmax(0,1fr))auto var(--timeline-row-end,minmax(0,1fr));grid-template-columns:var(--timeline-col-start,minmax(0,1fr))auto var(--timeline-col-end,minmax(0,1fr));flex-shrink:0;align-items:center;display:grid;position:relative}.timeline>li>hr{border:none;width:100%}.timeline>li>hr:first-child{grid-row-start:2;grid-column-start:1}.timeline>li>hr:last-child{grid-area:2/3/auto/none}@media print{.timeline>li>hr{border:.1px solid var(--color-base-300)}}.timeline :where(hr){background-color:var(--color-base-300);height:.25rem}.timeline:has(.timeline-middle hr):first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}.timeline:has(.timeline-middle hr):last-child,.timeline:not(:has(.timeline-middle)) :first-child hr:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}.timeline:not(:has(.timeline-middle)) :last-child hr:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}.checkbox{border:var(--border)solid var(--input-color,var(--color-base-content))}@supports (color:color-mix(in lab,red,red)){.checkbox{border:var(--border)solid var(--input-color,color-mix(in oklab,var(--color-base-content)20%,#0000))}}.checkbox{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--radius-selector);vertical-align:middle;color:var(--color-base-content);box-shadow:0 1px oklch(0% 0 0/calc(var(--depth)*.1)) inset,0 0 #0000 inset,0 0 #0000;--size:calc(var(--size-selector,.25rem)*6);width:var(--size);height:var(--size);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);flex-shrink:0;padding:.25rem;transition:background-color .2s,box-shadow .2s;display:inline-block;position:relative}.checkbox:before{--tw-content:"";content:var(--tw-content);opacity:0;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,70% 80%,70% 100%);width:100%;height:100%;box-shadow:0 3px oklch(100% 0 0/calc(var(--depth)*.1)) inset;background-color:currentColor;font-size:1rem;line-height:.75;transition:clip-path .3s .1s,opacity .1s .1s,rotate .3s .1s,translate .3s .1s;display:block;rotate:45deg}.checkbox:focus-visible{outline:2px solid var(--input-color,currentColor);outline-offset:2px}.checkbox:checked,.checkbox[aria-checked=true]{background-color:var(--input-color,#0000);box-shadow:0 0 #0000 inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1)) inset,0 1px oklch(0% 0 0/calc(var(--depth)*.1))}:is(.checkbox:checked,.checkbox[aria-checked=true]):before{clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 0%,70% 0%,70% 100%);opacity:1}@media(forced-colors:active){:is(.checkbox:checked,.checkbox[aria-checked=true]):before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:none}}@media print{:is(.checkbox:checked,.checkbox[aria-checked=true]):before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:none}}.checkbox:indeterminate{background-color:var(--input-color,var(--color-base-content))}@supports (color:color-mix(in lab,red,red)){.checkbox:indeterminate{background-color:var(--input-color,color-mix(in oklab,var(--color-base-content)20%,#0000))}}.checkbox:indeterminate:before{opacity:1;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,80% 80%,80% 100%);translate:0 -35%;rotate:none}.card{border-radius:var(--radius-box);outline-offset:2px;outline:0 solid #0000;flex-direction:column;transition:outline .2s ease-in-out;display:flex;position:relative}.card:focus{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.card:focus{outline-offset:2px;outline:2px solid #0000}}.card:focus-visible{outline-color:currentColor}.card :where(figure:first-child){border-start-start-radius:inherit;border-start-end-radius:inherit;border-end-end-radius:unset;border-end-start-radius:unset;overflow:hidden}.card :where(figure:last-child){border-start-start-radius:unset;border-start-end-radius:unset;border-end-end-radius:inherit;border-end-start-radius:inherit;overflow:hidden}.card figure{justify-content:center;align-items:center;display:flex}.card:has(>input:is(input[type=checkbox],input[type=radio])){cursor:pointer;-webkit-user-select:none;user-select:none}.card:has(>:checked){outline:2px solid}.stats{border-radius:var(--radius-box);grid-auto-flow:column;display:inline-grid;position:relative;overflow-x:auto}.progress{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--radius-box);background-color:currentColor;width:100%;height:.5rem;position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.progress{background-color:color-mix(in oklab,currentcolor 20%,transparent)}}.progress{color:var(--color-base-content)}.progress:indeterminate{background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%}@media(prefers-reduced-motion:no-preference){.progress:indeterminate{animation:5s ease-in-out infinite progress}}@supports ((-moz-appearance:none)){.progress:indeterminate::-moz-progress-bar{background-color:#0000}@media(prefers-reduced-motion:no-preference){.progress:indeterminate::-moz-progress-bar{background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%;animation:5s ease-in-out infinite progress}}.progress::-moz-progress-bar{border-radius:var(--radius-box);background-color:currentColor}}@supports ((-webkit-appearance:none)){.progress::-webkit-progress-bar{border-radius:var(--radius-box);background-color:#0000}.progress::-webkit-progress-value{border-radius:var(--radius-box);background-color:currentColor}}.modal-backdrop{color:#0000;z-index:-1;grid-row-start:1;grid-column-start:1;place-self:stretch stretch;display:grid}.modal-backdrop button{cursor:pointer}.modal-box{background-color:var(--color-base-100);border-top-left-radius:var(--modal-tl,var(--radius-box));border-top-right-radius:var(--modal-tr,var(--radius-box));border-bottom-left-radius:var(--modal-bl,var(--radius-box));border-bottom-right-radius:var(--modal-br,var(--radius-box));opacity:0;overscroll-behavior:contain;grid-row-start:1;grid-column-start:1;width:91.6667%;max-width:32rem;max-height:100vh;padding:1.5rem;transition:translate .3s ease-out,scale .3s ease-out,opacity .2s ease-out 50ms,box-shadow .3s ease-out;overflow-y:auto;scale:95%;box-shadow:0 25px 50px -12px #00000040}.stat-value{white-space:nowrap;grid-column-start:1;font-size:2rem;font-weight:800}.stat-desc{white-space:nowrap;color:var(--color-base-content);grid-column-start:1}@supports (color:color-mix(in lab,red,red)){.stat-desc{color:color-mix(in oklab,var(--color-base-content)60%,transparent)}}.stat-desc{font-size:.75rem}.stat-title{white-space:nowrap;color:var(--color-base-content);grid-column-start:1}@supports (color:color-mix(in lab,red,red)){.stat-title{color:color-mix(in oklab,var(--color-base-content)60%,transparent)}}.stat-title{font-size:.75rem}.divider{white-space:nowrap;height:1rem;margin:var(--divider-m,1rem 0);--divider-color:var(--color-base-content);flex-direction:row;align-self:stretch;align-items:center;display:flex}@supports (color:color-mix(in lab,red,red)){.divider{--divider-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.divider:before,.divider:after{content:"";background-color:var(--divider-color);flex-grow:1;width:100%;height:.125rem}@media print{.divider:before,.divider:after{border:.5px solid}}.divider:not(:empty){gap:1rem}.filter{flex-wrap:wrap;display:flex}.filter input[type=radio]{width:auto}.filter input{opacity:1;transition:margin .1s,opacity .3s,padding .3s,border-width .1s;overflow:hidden;scale:1}.filter input:not(:last-child){margin-inline-end:.25rem}.filter input.filter-reset{aspect-ratio:1}.filter input.filter-reset:after{--tw-content:"×";content:var(--tw-content)}.filter:not(:has(input:checked:not(.filter-reset))) .filter-reset,.filter:not(:has(input:checked:not(.filter-reset))) input[type=reset],.filter:has(input:checked:not(.filter-reset)) input:not(:checked,.filter-reset,input[type=reset]){opacity:0;border-width:0;width:0;margin-inline:0;padding-inline:0;scale:0}.label{white-space:nowrap;color:currentColor;align-items:center;gap:.375rem;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.label{color:color-mix(in oklab,currentcolor 60%,transparent)}}.label:has(input){cursor:pointer}.label:is(.input>*,.select>*){white-space:nowrap;height:calc(100% - .5rem);font-size:inherit;align-items:center;padding-inline:.75rem;display:flex}.label:is(.input>*,.select>*):first-child{border-inline-end:var(--border)solid currentColor;margin-inline:-.75rem .75rem}@supports (color:color-mix(in lab,red,red)){.label:is(.input>*,.select>*):first-child{border-inline-end:var(--border)solid color-mix(in oklab,currentColor 10%,#0000)}}.label:is(.input>*,.select>*):last-child{border-inline-start:var(--border)solid currentColor;margin-inline:.75rem -.75rem}@supports (color:color-mix(in lab,red,red)){.label:is(.input>*,.select>*):last-child{border-inline-start:var(--border)solid color-mix(in oklab,currentColor 10%,#0000)}}.modal-action{justify-content:flex-end;gap:.5rem;margin-top:1.5rem;display:flex}.status{aspect-ratio:1;border-radius:var(--radius-selector);background-color:var(--color-base-content);width:.5rem;height:.5rem;display:inline-block}@supports (color:color-mix(in lab,red,red)){.status{background-color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}.status{vertical-align:middle;color:#0000004d;background-position:50%;background-repeat:no-repeat}@supports (color:color-mix(in lab,red,red)){.status{color:color-mix(in oklab,var(--color-black)30%,transparent)}}.status{background-image:radial-gradient(circle at 35% 30%,oklch(1 0 0/calc(var(--depth)*.5)),#0000);box-shadow:0 2px 3px -1px}@supports (color:color-mix(in lab,red,red)){.status{box-shadow:0 2px 3px -1px color-mix(in oklab,currentColor calc(var(--depth)*100%),#0000)}}.badge{border-radius:var(--radius-selector);vertical-align:middle;color:var(--badge-fg);border:var(--border)solid var(--badge-color,var(--color-base-200));background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);background-color:var(--badge-bg);--badge-bg:var(--badge-color,var(--color-base-100));--badge-fg:var(--color-base-content);--size:calc(var(--size-selector,.25rem)*6);width:fit-content;height:var(--size);padding-inline:calc(var(--size)/2 - var(--border));justify-content:center;align-items:center;gap:.5rem;font-size:.875rem;display:inline-flex}.kbd{border-radius:var(--radius-field);background-color:var(--color-base-200);vertical-align:middle;border:var(--border)solid var(--color-base-content);justify-content:center;align-items:center;padding-inline:.5em;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.kbd{border:var(--border)solid color-mix(in srgb,var(--color-base-content)20%,#0000)}}.kbd{border-bottom:calc(var(--border) + 1px)solid var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.kbd{border-bottom:calc(var(--border) + 1px)solid color-mix(in srgb,var(--color-base-content)20%,#0000)}}.kbd{--size:calc(var(--size-selector,.25rem)*6);height:var(--size);min-width:var(--size);font-size:.875rem}.tabs{--tabs-height:auto;--tabs-direction:row;--tab-height:calc(var(--size-field,.25rem)*10);height:var(--tabs-height);flex-wrap:wrap;flex-direction:var(--tabs-direction);display:flex}.footer{grid-auto-flow:row;place-items:start;gap:2.5rem 1rem;width:100%;font-size:.875rem;line-height:1.25rem;display:grid}.footer>*{place-items:start;gap:.5rem;display:grid}.footer.footer-center{text-align:center;grid-auto-flow:column dense;place-items:center}.footer.footer-center>*{place-items:center}.stat{grid-template-columns:repeat(1,1fr);column-gap:1rem;width:100%;padding-block:1rem;padding-inline:1.5rem;display:inline-grid}.stat:not(:last-child){border-inline-end:var(--border)dashed currentColor}@supports (color:color-mix(in lab,red,red)){.stat:not(:last-child){border-inline-end:var(--border)dashed color-mix(in oklab,currentColor 10%,#0000)}}.stat:not(:last-child){border-block-end:none}.card-body{padding:var(--card-p,1.5rem);font-size:var(--card-fs,.875rem);flex-direction:column;flex:auto;gap:.5rem;display:flex}.card-body :where(p){flex-grow:1}.alert{--alert-border-color:var(--color-base-200);border-radius:var(--radius-box);color:var(--color-base-content);background-color:var(--alert-color,var(--color-base-200));text-align:start;background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);box-shadow:0 3px 0 -2px oklch(100% 0 0/calc(var(--depth)*.08)) inset,0 1px #000,0 4px 3px -2px oklch(0% 0 0/calc(var(--depth)*.08));border-style:solid;grid-template-columns:auto;grid-auto-flow:column;justify-content:start;place-items:center start;gap:1rem;padding-block:.75rem;padding-inline:1rem;font-size:.875rem;line-height:1.25rem;display:grid}@supports (color:color-mix(in lab,red,red)){.alert{box-shadow:0 3px 0 -2px oklch(100% 0 0/calc(var(--depth)*.08)) inset,0 1px color-mix(in oklab,color-mix(in oklab,#000 20%,var(--alert-color,var(--color-base-200)))calc(var(--depth)*20%),#0000),0 4px 3px -2px oklch(0% 0 0/calc(var(--depth)*.08))}}.alert:has(:nth-child(2)){grid-template-columns:auto minmax(auto,1fr)}.card-actions{flex-wrap:wrap;align-items:flex-start;gap:.5rem;display:flex}.card-title{font-size:var(--cardtitle-fs,1.125rem);align-items:center;gap:.5rem;font-weight:600;display:flex}.btn-error{--btn-color:var(--color-error);--btn-fg:var(--color-error-content)}.btn-primary{--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content)}.btn-secondary{--btn-color:var(--color-secondary);--btn-fg:var(--color-secondary-content)}}@layer daisyui.l1.l2{.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal{pointer-events:auto;visibility:visible;opacity:1;transition:visibility 0s allow-discrete,background-color .3s ease-out,opacity .1s ease-out;background-color:#0006}:is(.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal) .modal-box{opacity:1;translate:0;scale:1}:root:has(:is(.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal)){--page-has-backdrop:1;--page-overflow:hidden;--page-scroll-bg:var(--page-scroll-bg-on);--page-scroll-gutter:stable;--page-scroll-transition:var(--page-scroll-transition-on);animation:forwards set-page-has-scroll;animation-timeline:scroll()}@starting-style{.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal{opacity:0}}.tooltip>.tooltip-content,.tooltip[data-tip]:before{transform:translate(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-off)50%}.tooltip:after{transform:translate(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-tail)50%}.btn:disabled:not(.btn-link,.btn-ghost){background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.btn:disabled:not(.btn-link,.btn-ghost){background-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.btn:disabled:not(.btn-link,.btn-ghost){box-shadow:none}.btn:disabled{pointer-events:none;--btn-border:#0000;--btn-noise:none;--btn-fg:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.btn:disabled{--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000)}}.btn[disabled]:not(.btn-link,.btn-ghost){background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.btn[disabled]:not(.btn-link,.btn-ghost){background-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.btn[disabled]:not(.btn-link,.btn-ghost){box-shadow:none}.btn[disabled]{pointer-events:none;--btn-border:#0000;--btn-noise:none;--btn-fg:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.btn[disabled]{--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000)}}@media(prefers-reduced-motion:no-preference){.collapse[open].collapse-arrow>.collapse-title:after,.collapse.collapse-open.collapse-arrow>.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}.collapse.collapse-open.collapse-plus>.collapse-title:after{--tw-content:"−";content:var(--tw-content)}:is(.collapse[tabindex].collapse-arrow:focus:not(.collapse-close),.collapse.collapse-arrow[tabindex]:focus-within:not(.collapse-close))>.collapse-title:after,.collapse.collapse-arrow:not(.collapse-close)>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{transform:translateY(-50%)rotate(225deg)}.collapse[open].collapse-plus>.collapse-title:after,.collapse[tabindex].collapse-plus:focus:not(.collapse-close)>.collapse-title:after,.collapse.collapse-plus:not(.collapse-close)>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{--tw-content:"−";content:var(--tw-content)}.list .list-row:has(.list-col-grow:first-child){--list-grid-cols:1fr}.list .list-row:has(.list-col-grow:nth-child(2)){--list-grid-cols:minmax(0,auto)1fr}.list .list-row:has(.list-col-grow:nth-child(3)){--list-grid-cols:minmax(0,auto)minmax(0,auto)1fr}.list .list-row:has(.list-col-grow:nth-child(4)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}.list .list-row:has(.list-col-grow:nth-child(5)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}.list .list-row:has(.list-col-grow:nth-child(6)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}.list .list-row>*{grid-row-start:1}.checkbox:disabled{cursor:not-allowed;opacity:.2}.tooltip-bottom>.tooltip-content,.tooltip-bottom[data-tip]:before{transform:translate(-50%)translateY(var(--tt-pos,-.25rem));inset:var(--tt-off)auto auto 50%}.tooltip-bottom:after{transform:translate(-50%)translateY(var(--tt-pos,-.25rem))rotate(180deg);inset:var(--tt-tail)auto auto 50%}.tooltip-left>.tooltip-content,.tooltip-left[data-tip]:before{transform:translate(calc(var(--tt-pos,.25rem) - .25rem))translateY(-50%);inset:50% var(--tt-off)auto auto}.tooltip-left:after{transform:translate(var(--tt-pos,.25rem))translateY(-50%)rotate(-90deg);inset:50% calc(var(--tt-tail) + 1px)auto auto}.tooltip-right>.tooltip-content,.tooltip-right[data-tip]:before{transform:translate(calc(var(--tt-pos,-.25rem) + .25rem))translateY(-50%);inset:50% auto auto var(--tt-off)}.tooltip-right:after{transform:translate(var(--tt-pos,-.25rem))translateY(-50%)rotate(90deg);inset:50% auto auto calc(var(--tt-tail) + 1px)}.tooltip-top>.tooltip-content,.tooltip-top[data-tip]:before{transform:translate(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-off)50%}.tooltip-top:after{transform:translate(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-tail)50%}.toast-end{--toast-x:0;inset-inline:auto 1rem}.dropdown-end{--anchor-h:span-left}.dropdown-end :where(.dropdown-content){inset-inline-end:0;translate:0}[dir=rtl] :is(.dropdown-end :where(.dropdown-content)){translate:0}.dropdown-end.dropdown-left{--anchor-h:left;--anchor-v:span-top}.dropdown-end.dropdown-left .dropdown-content{top:auto;bottom:0}.dropdown-end.dropdown-right{--anchor-h:right;--anchor-v:span-top}.dropdown-end.dropdown-right .dropdown-content{top:auto;bottom:0}.toast-bottom{--toast-y:0;top:auto;bottom:1rem}.input-lg{--size:calc(var(--size-field,.25rem)*12);font-size:max(var(--font-size,1.125rem),1.125rem)}.input-lg[type=number]::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}.input-sm{--size:calc(var(--size-field,.25rem)*8);font-size:max(var(--font-size,.75rem),.75rem)}.input-sm[type=number]::-webkit-inner-spin-button{margin-block:-.5rem;margin-inline-end:-.75rem}.input-xs{--size:calc(var(--size-field,.25rem)*6);font-size:max(var(--font-size,.6875rem),.6875rem)}.input-xs[type=number]::-webkit-inner-spin-button{margin-block:-.25rem;margin-inline-end:-.75rem}.btn-circle{width:var(--size);height:var(--size);border-radius:3.40282e38px;padding-inline:0}.btn-square{width:var(--size);height:var(--size);padding-inline:0}.loading-lg{width:calc(var(--size-selector,.25rem)*7)}.loading-md{width:calc(var(--size-selector,.25rem)*6)}.loading-sm{width:calc(var(--size-selector,.25rem)*5)}.loading-xs{width:calc(var(--size-selector,.25rem)*4)}.badge-ghost{border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content);background-image:none}.badge-outline{color:var(--badge-color);--badge-bg:#0000;background-image:none;border-color:currentColor}.loading-spinner{-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E")}.checkbox-xs{--size:calc(var(--size-selector,.25rem)*4);padding:.125rem}.select-lg{--size:calc(var(--size-field,.25rem)*12);font-size:1.125rem}.select-lg option{padding-block:.375rem;padding-inline:1rem}.select-sm{--size:calc(var(--size-field,.25rem)*8);font-size:.75rem}.select-sm option{padding-block:.25rem;padding-inline:.625rem}.select-xs{--size:calc(var(--size-field,.25rem)*6);font-size:.6875rem}.select-xs option{padding-block:.25rem;padding-inline:.5rem}.table-sm :not(thead,tfoot) tr{font-size:.75rem}.table-sm :where(th,td){padding-block:.5rem;padding-inline:.75rem}.table-xs :not(thead,tfoot) tr{font-size:.6875rem}.table-xs :where(th,td){padding-block:.25rem;padding-inline:.5rem}.badge-lg{--size:calc(var(--size-selector,.25rem)*7);font-size:1rem}.badge-sm{--size:calc(var(--size-selector,.25rem)*5);font-size:.75rem}.badge-xs{--size:calc(var(--size-selector,.25rem)*4);font-size:.625rem}.kbd-sm{--size:calc(var(--size-selector,.25rem)*5);font-size:.75rem}.kbd-xs{--size:calc(var(--size-selector,.25rem)*4);font-size:.625rem}.alert-error{color:var(--color-error-content);--alert-border-color:var(--color-error);--alert-color:var(--color-error)}.alert-info{color:var(--color-info-content);--alert-border-color:var(--color-info);--alert-color:var(--color-info)}.alert-success{color:var(--color-success-content);--alert-border-color:var(--color-success);--alert-color:var(--color-success)}.alert-warning{color:var(--color-warning-content);--alert-border-color:var(--color-warning);--alert-color:var(--color-warning)}.checkbox-primary{color:var(--color-primary-content);--input-color:var(--color-primary)}.progress-accent{color:var(--color-accent)}.progress-error{color:var(--color-error)}.progress-info{color:var(--color-info)}.progress-primary{color:var(--color-primary)}.progress-secondary{color:var(--color-secondary)}.progress-success{color:var(--color-success)}.progress-warning{color:var(--color-warning)}.btn-lg{--fontsize:1.125rem;--btn-p:1.25rem;--size:calc(var(--size-field,.25rem)*12)}.btn-sm{--fontsize:.75rem;--btn-p:.75rem;--size:calc(var(--size-field,.25rem)*8)}.btn-xs{--fontsize:.6875rem;--btn-p:.5rem;--size:calc(var(--size-field,.25rem)*6)}.badge-accent{--badge-color:var(--color-accent);--badge-fg:var(--color-accent-content)}.badge-error{--badge-color:var(--color-error);--badge-fg:var(--color-error-content)}.badge-info{--badge-color:var(--color-info);--badge-fg:var(--color-info-content)}.badge-primary{--badge-color:var(--color-primary);--badge-fg:var(--color-primary-content)}.badge-secondary{--badge-color:var(--color-secondary);--badge-fg:var(--color-secondary-content)}.badge-success{--badge-color:var(--color-success);--badge-fg:var(--color-success-content)}.badge-warning{--badge-color:var(--color-warning);--badge-fg:var(--color-warning-content)}.input-error,.input-error:focus,.input-error:focus-within,.select-error,.select-error:focus,.select-error:focus-within{--input-color:var(--color-error)}.toggle-info:checked,.toggle-info[aria-checked=true]{--input-color:var(--color-info)}.toggle-lg[type=checkbox],.toggle-lg:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*7)}.toggle-primary:checked,.toggle-primary[aria-checked=true]{--input-color:var(--color-primary)}.toggle-sm[type=checkbox],.toggle-sm:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*5)}.toggle-xs[type=checkbox],.toggle-xs:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*4)}}.prose :where(a.btn:not(.btn-link)):not(:where([class~=not-prose],[class~=not-prose] *)){text-decoration-line:none}.collapse:not(td,tr,colgroup){visibility:revert-layer}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.top-0{top:calc(var(--spacing)*0)}.top-1\/2{top:50%}.top-3{top:calc(var(--spacing)*3)}.right-0{right:calc(var(--spacing)*0)}.bottom-0{bottom:calc(var(--spacing)*0)}.-left-9{left:calc(var(--spacing)*-9)}.left-0{left:calc(var(--spacing)*0)}.left-3{left:calc(var(--spacing)*3)}.left-4{left:calc(var(--spacing)*4)}.z-10{z-index:10}.z-50{z-index:50}.col-span-2{grid-column:span 2/span 2}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.my-1{margin-block:calc(var(--spacing)*1)}.my-3{margin-block:calc(var(--spacing)*3)}.my-6{margin-block:calc(var(--spacing)*6)}.mt-0\.5{margin-top:calc(var(--spacing)*.5)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-1\.5{margin-top:calc(var(--spacing)*1.5)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-3{margin-top:calc(var(--spacing)*3)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-6{margin-top:calc(var(--spacing)*6)}.mr-1{margin-right:calc(var(--spacing)*1)}.mr-1\.5{margin-right:calc(var(--spacing)*1.5)}.mr-auto{margin-right:auto}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-1\.5{margin-bottom:calc(var(--spacing)*1.5)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-8{margin-left:calc(var(--spacing)*8)}.ml-auto{margin-left:auto}.kbd{box-shadow:none}.alert{border-width:var(--border);border-color:var(--alert-border-color,var(--color-base-200))}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-1{height:calc(var(--spacing)*1)}.h-1\.5{height:calc(var(--spacing)*1.5)}.h-2{height:calc(var(--spacing)*2)}.h-3{height:calc(var(--spacing)*3)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-8{height:calc(var(--spacing)*8)}.h-9{height:calc(var(--spacing)*9)}.h-14{height:calc(var(--spacing)*14)}.h-48{height:calc(var(--spacing)*48)}.h-64{height:calc(var(--spacing)*64)}.h-full{height:100%}.h-screen{height:100vh}.max-h-40{max-height:calc(var(--spacing)*40)}.max-h-80{max-height:calc(var(--spacing)*80)}.max-h-96{max-height:calc(var(--spacing)*96)}.min-h-screen{min-height:100vh}.w-1\/2{width:50%}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-8{width:calc(var(--spacing)*8)}.w-12{width:calc(var(--spacing)*12)}.w-16{width:calc(var(--spacing)*16)}.w-20{width:calc(var(--spacing)*20)}.w-24{width:calc(var(--spacing)*24)}.w-32{width:calc(var(--spacing)*32)}.w-40{width:calc(var(--spacing)*40)}.w-48{width:calc(var(--spacing)*48)}.w-52{width:calc(var(--spacing)*52)}.w-60{width:calc(var(--spacing)*60)}.w-64{width:calc(var(--spacing)*64)}.w-\[72px\]{width:72px}.w-full{width:100%}.max-w-24{max-width:calc(var(--spacing)*24)}.max-w-32{max-width:calc(var(--spacing)*32)}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:calc(var(--spacing)*0)}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.translate-x-0{--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-4{--tw-translate-x:calc(var(--spacing)*4);translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-ns-resize{cursor:ns-resize}.cursor-pointer{cursor:pointer}.resize{resize:both}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*8)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*8)*calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-box{border-radius:var(--radius-box)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-b-lg{border-bottom-right-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-base-100{border-color:var(--color-base-100)}.border-base-200{border-color:var(--color-base-200)}.border-base-300,.border-base-300\/50{border-color:var(--color-base-300)}@supports (color:color-mix(in lab,red,red)){.border-base-300\/50{border-color:color-mix(in oklab,var(--color-base-300)50%,transparent)}}.border-base-content\/10{border-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.border-base-content\/10{border-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.border-primary\/30{border-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.border-primary\/30{border-color:color-mix(in oklab,var(--color-primary)30%,transparent)}}.border-primary\/50{border-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.border-primary\/50{border-color:color-mix(in oklab,var(--color-primary)50%,transparent)}}.border-warning\/30{border-color:var(--color-warning)}@supports (color:color-mix(in lab,red,red)){.border-warning\/30{border-color:color-mix(in oklab,var(--color-warning)30%,transparent)}}.border-l-accent{border-left-color:var(--color-accent)}.border-l-info{border-left-color:var(--color-info)}.border-l-warning{border-left-color:var(--color-warning)}.bg-base-100{background-color:var(--color-base-100)}.bg-base-200,.bg-base-200\/50{background-color:var(--color-base-200)}@supports (color:color-mix(in lab,red,red)){.bg-base-200\/50{background-color:color-mix(in oklab,var(--color-base-200)50%,transparent)}}.bg-base-200\/60{background-color:var(--color-base-200)}@supports (color:color-mix(in lab,red,red)){.bg-base-200\/60{background-color:color-mix(in oklab,var(--color-base-200)60%,transparent)}}.bg-base-300,.bg-base-300\/50{background-color:var(--color-base-300)}@supports (color:color-mix(in lab,red,red)){.bg-base-300\/50{background-color:color-mix(in oklab,var(--color-base-300)50%,transparent)}}.bg-base-content\/30{background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.bg-base-content\/30{background-color:color-mix(in oklab,var(--color-base-content)30%,transparent)}}.bg-base-content\/50{background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.bg-base-content\/50{background-color:color-mix(in oklab,var(--color-base-content)50%,transparent)}}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black)50%,transparent)}}.bg-error,.bg-error\/10{background-color:var(--color-error)}@supports (color:color-mix(in lab,red,red)){.bg-error\/10{background-color:color-mix(in oklab,var(--color-error)10%,transparent)}}.bg-info{background-color:var(--color-info)}.bg-primary{background-color:var(--color-primary)}.bg-primary-content\/20{background-color:var(--color-primary-content)}@supports (color:color-mix(in lab,red,red)){.bg-primary-content\/20{background-color:color-mix(in oklab,var(--color-primary-content)20%,transparent)}}.bg-primary\/10{background-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/10{background-color:color-mix(in oklab,var(--color-primary)10%,transparent)}}.bg-secondary{background-color:var(--color-secondary)}.bg-success,.bg-success\/10{background-color:var(--color-success)}@supports (color:color-mix(in lab,red,red)){.bg-success\/10{background-color:color-mix(in oklab,var(--color-success)10%,transparent)}}.bg-transparent{background-color:#0000}.bg-warning,.bg-warning\/5{background-color:var(--color-warning)}@supports (color:color-mix(in lab,red,red)){.bg-warning\/5{background-color:color-mix(in oklab,var(--color-warning)5%,transparent)}}.bg-warning\/10{background-color:var(--color-warning)}@supports (color:color-mix(in lab,red,red)){.bg-warning\/10{background-color:color-mix(in oklab,var(--color-warning)10%,transparent)}}.stroke-base-content\/10{stroke:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.stroke-base-content\/10{stroke:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.stroke-current{stroke:currentColor}.p-0{padding:calc(var(--spacing)*0)}.p-1\.5{padding:calc(var(--spacing)*1.5)}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-5{padding:calc(var(--spacing)*5)}.p-6{padding:calc(var(--spacing)*6)}.px-1{padding-inline:calc(var(--spacing)*1)}.px-1\.5{padding-inline:calc(var(--spacing)*1.5)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-2\.5{padding-inline:calc(var(--spacing)*2.5)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-0\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-2\.5{padding-block:calc(var(--spacing)*2.5)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-8{padding-block:calc(var(--spacing)*8)}.py-12{padding-block:calc(var(--spacing)*12)}.pt-3{padding-top:calc(var(--spacing)*3)}.pt-4{padding-top:calc(var(--spacing)*4)}.pr-4{padding-right:calc(var(--spacing)*4)}.pb-2{padding-bottom:calc(var(--spacing)*2)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.pl-3{padding-left:calc(var(--spacing)*3)}.pl-4{padding-left:calc(var(--spacing)*4)}.pl-6{padding-left:calc(var(--spacing)*6)}.pl-10{padding-left:calc(var(--spacing)*10)}.pl-12{padding-left:calc(var(--spacing)*12)}.text-center{text-align:center}.text-left{text-align:left}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-accent{color:var(--color-accent)}.text-base-content,.text-base-content\/20{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/20{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}.text-base-content\/30{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/30{color:color-mix(in oklab,var(--color-base-content)30%,transparent)}}.text-base-content\/40{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/40{color:color-mix(in oklab,var(--color-base-content)40%,transparent)}}.text-base-content\/50{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/50{color:color-mix(in oklab,var(--color-base-content)50%,transparent)}}.text-base-content\/60{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/60{color:color-mix(in oklab,var(--color-base-content)60%,transparent)}}.text-base-content\/70{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/70{color:color-mix(in oklab,var(--color-base-content)70%,transparent)}}.text-base-content\/80{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/80{color:color-mix(in oklab,var(--color-base-content)80%,transparent)}}.text-base-content\/90{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/90{color:color-mix(in oklab,var(--color-base-content)90%,transparent)}}.text-error{color:var(--color-error)}.text-error-content{color:var(--color-error-content)}.text-gray-400{color:var(--color-gray-400)}.text-green-400{color:var(--color-green-400)}.text-info{color:var(--color-info)}.text-info-content{color:var(--color-info-content)}.text-orange-400{color:var(--color-orange-400)}.text-pink-400{color:var(--color-pink-400)}.text-primary{color:var(--color-primary)}.text-primary-content{color:var(--color-primary-content)}.text-primary\/60{color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.text-primary\/60{color:color-mix(in oklab,var(--color-primary)60%,transparent)}}.text-primary\/70{color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.text-primary\/70{color:color-mix(in oklab,var(--color-primary)70%,transparent)}}.text-purple-400{color:var(--color-purple-400)}.text-secondary{color:var(--color-secondary)}.text-sky-400{color:var(--color-sky-400)}.text-success{color:var(--color-success)}.text-success-content{color:var(--color-success-content)}.text-violet-400{color:var(--color-violet-400)}.text-warning{color:var(--color-warning)}.text-warning-content{color:var(--color-warning-content)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-primary{--tw-ring-color:var(--color-primary)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}@layer daisyui.l1{.btn-ghost:not(.btn-active,:hover,:active:focus,:focus-visible,input:checked:not(.filter .btn)){--btn-shadow:"";--btn-bg:#0000;--btn-border:#0000;--btn-noise:none}.btn-ghost:not(.btn-active,:hover,:active:focus,:focus-visible,input:checked:not(.filter .btn)):not(:disabled,[disabled],.btn-disabled){--btn-fg:var(--btn-color,currentColor);outline-color:currentColor}@media(hover:none){.btn-ghost:not(.btn-active,:active,:focus-visible,input:checked:not(.filter .btn)):hover{--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color,currentColor);--btn-border:#0000;--btn-noise:none;outline-color:currentColor}}.btn-outline:not(.btn-active,:hover,:active:focus,:focus-visible,input:checked:not(.filter .btn),:disabled,[disabled],.btn-disabled){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}@media(hover:none){.btn-outline:not(.btn-active,:active,:focus-visible,input:checked:not(.filter .btn)):hover{--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}}}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.first\:mt-0:first-child{margin-top:calc(var(--spacing)*0)}@media(hover:hover){.hover\:scale-\[1\.02\]:hover{scale:1.02}.hover\:bg-base-200:hover{background-color:var(--color-base-200)}.hover\:bg-base-300:hover{background-color:var(--color-base-300)}.hover\:text-error:hover{color:var(--color-error)}.hover\:text-primary:hover{color:var(--color-primary)}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-sm:hover{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}@media(min-width:40rem){.sm\:block{display:block}}@media(min-width:48rem){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:64rem){.lg\:col-span-2{grid-column:span 2/span 2}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.\[\&\>\*\]\:h-full>*{height:100%}}:root{--layout-sidebar-width:256px}.dashboard-layout{background:var(--root-bg)}.dashboard-sidebar{background:var(--layout-sidebar-background);border-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.dashboard-sidebar{border-color:color-mix(in srgb,var(--color-base-content)8%,transparent)}}.dashboard-topbar{background:var(--layout-topbar-background);border-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.dashboard-topbar{border-color:color-mix(in srgb,var(--color-base-content)8%,transparent)}}.sidebar-header{border-bottom-style:var(--tw-border-style);padding-inline:calc(var(--spacing)*4);padding-block:calc(var(--spacing)*3);border-bottom-width:1px;border-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.sidebar-header{border-color:color-mix(in srgb,var(--color-base-content)6%,transparent)}}.sidebar-header-title{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.sidebar-header-title{color:color-mix(in srgb,var(--color-base-content)50%,transparent)}}.sidebar-section{padding-inline:calc(var(--spacing)*3);padding-block:calc(var(--spacing)*2)}.sidebar-section-title{margin-bottom:calc(var(--spacing)*2);padding-inline:calc(var(--spacing)*1);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.sidebar-section-title{color:color-mix(in srgb,var(--color-base-content)45%,transparent)}}.nav-item{cursor:pointer;align-items:center;gap:calc(var(--spacing)*2);border-radius:var(--radius-lg);padding-inline:calc(var(--spacing)*2.5);padding-block:calc(var(--spacing)*2);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;transition-duration:.15s;display:flex}.nav-item:hover:not(.active){background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.nav-item:hover:not(.active){background:color-mix(in srgb,var(--color-base-content)5%,transparent)}}.nav-item.active{background:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.nav-item.active{background:color-mix(in srgb,var(--color-primary)15%,transparent)}}.nav-item.active{box-shadow:inset 0 0 0 1px var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.nav-item.active{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-primary)30%,transparent)}}.memory-card{border-radius:var(--radius-lg);padding:calc(var(--spacing)*3);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;background:var(--color-base-content);transition-duration:.15s}@supports (color:color-mix(in lab,red,red)){.memory-card{background:color-mix(in srgb,var(--color-base-content)4%,transparent)}}.memory-card:hover{background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.memory-card:hover{background:color-mix(in srgb,var(--color-base-content)6%,transparent)}}.stats-card{border-radius:var(--radius-lg);padding:calc(var(--spacing)*4);background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.stats-card{background:color-mix(in srgb,var(--color-base-content)4%,transparent)}}.property-card{border-radius:var(--radius-lg);padding:calc(var(--spacing)*3);background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.property-card{background:color-mix(in srgb,var(--color-base-content)4%,transparent)}}.property-label{margin-bottom:calc(var(--spacing)*1);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--color-base-content);display:block}@supports (color:color-mix(in lab,red,red)){.property-label{color:color-mix(in srgb,var(--color-base-content)55%,transparent)}}.settings-collapse{border-radius:var(--radius-lg);background:var(--color-base-content);overflow:hidden}@supports (color:color-mix(in lab,red,red)){.settings-collapse{background:color-mix(in srgb,var(--color-base-content)3%,transparent)}}.settings-collapse .collapse-title{min-height:calc(var(--spacing)*0);padding-block:calc(var(--spacing)*2.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.status-indicator{align-items:center;gap:calc(var(--spacing)*1.5);padding-inline:calc(var(--spacing)*2);padding-block:calc(var(--spacing)*.5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);border-radius:3.40282e38px;display:inline-flex}.status-indicator.online{background:var(--color-success)}@supports (color:color-mix(in lab,red,red)){.status-indicator.online{background:color-mix(in srgb,var(--color-success)15%,transparent)}}.status-indicator.online{color:var(--color-success)}.status-indicator.offline{background:var(--color-error)}@supports (color:color-mix(in lab,red,red)){.status-indicator.offline{background:color-mix(in srgb,var(--color-error)15%,transparent)}}.status-indicator.offline{color:var(--color-error)}.status-indicator.processing{background:var(--color-warning)}@supports (color:color-mix(in lab,red,red)){.status-indicator.processing{background:color-mix(in srgb,var(--color-warning)15%,transparent)}}.status-indicator.processing{color:var(--color-warning)}@layer daisyui.l1.l2.l3{.search-input{cursor:text;border:var(--border)solid #0000;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--color-base-100);vertical-align:middle;white-space:nowrap;width:clamp(3rem,20rem,100%);height:var(--size);font-size:max(var(--font-size,.875rem),.875rem);touch-action:manipulation;border-color:var(--input-color);box-shadow:0 1px var(--input-color) inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1)) inset;border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.5rem;padding-inline:.75rem;display:inline-flex;position:relative}@supports (color:color-mix(in lab,red,red)){.search-input{box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000) inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1)) inset}}.search-input{--size:calc(var(--size-field,.25rem)*10);--input-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.search-input{--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000)}}.search-input:where(input){display:inline-flex}.search-input :where(input){-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#0000;border:none;width:100%;height:100%;display:inline-flex}.search-input :where(input):focus,.search-input :where(input):focus-within{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.search-input :where(input):focus,.search-input :where(input):focus-within{outline-offset:2px;outline:2px solid #0000}}.search-input :where(input[type=url]),.search-input :where(input[type=email]){direction:ltr}.search-input :where(input[type=date]){display:inline-flex}.search-input:focus,.search-input:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px var(--input-color)}@supports (color:color-mix(in lab,red,red)){.search-input:focus,.search-input:focus-within{box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)}}.search-input:focus,.search-input:focus-within{outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}@media(pointer:coarse){@supports (-webkit-touch-callout:none){.search-input:focus,.search-input:focus-within{--font-size:1rem}}}.search-input:has(>input[disabled]),.search-input:is(:disabled,[disabled]),fieldset:disabled .search-input{cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.search-input:has(>input[disabled]),.search-input:is(:disabled,[disabled]),fieldset:disabled .search-input{color:color-mix(in oklab,var(--color-base-content)40%,transparent)}}:is(.search-input:has(>input[disabled]),.search-input:is(:disabled,[disabled]),fieldset:disabled .search-input)::placeholder{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){:is(.search-input:has(>input[disabled]),.search-input:is(:disabled,[disabled]),fieldset:disabled .search-input)::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}.search-input:has(>input[disabled]),.search-input:is(:disabled,[disabled]),fieldset:disabled .search-input{box-shadow:none}.search-input:has(>input[disabled])>input[disabled]{cursor:not-allowed}.search-input::-webkit-date-and-time-value{text-align:inherit}.search-input[type=number]::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}.search-input::-webkit-calendar-picker-indicator{position:absolute;inset-inline-end:.75em}.search-input:has(>input[type=date]) :where(input[type=date]){webkit-appearance:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex}.search-input:has(>input[type=date]) input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;width:1em;height:1em;position:absolute;inset-inline-end:.75em}}@layer daisyui.l1.l2{.search-input{--size:calc(var(--size-field,.25rem)*8);font-size:max(var(--font-size,.75rem),.75rem)}.search-input[type=number]::-webkit-inner-spin-button{margin-block:-.5rem;margin-inline-end:-.75rem}.badge-observation{--badge-color:var(--color-info);--badge-fg:var(--color-info-content)}.badge-summary{--badge-color:var(--color-warning);--badge-fg:var(--color-warning-content)}.badge-prompt{--badge-color:var(--color-secondary);--badge-fg:var(--color-secondary-content)}.badge-bugfix{--badge-color:var(--color-error);--badge-fg:var(--color-error-content)}.badge-feature{--badge-color:var(--color-success);--badge-fg:var(--color-success-content)}.badge-refactor{--badge-color:var(--color-accent);--badge-fg:var(--color-accent-content)}.badge-discovery{--badge-color:var(--color-info);--badge-fg:var(--color-info-content)}.badge-decision{--badge-color:var(--color-warning);--badge-fg:var(--color-warning-content)}.badge-change{--badge-color:var(--color-secondary);--badge-fg:var(--color-secondary-content)}}.search-input{border-style:var(--tw-border-style);background:var(--color-base-content);border-width:1px;width:100%}@supports (color:color-mix(in lab,red,red)){.search-input{background:color-mix(in srgb,var(--color-base-content)4%,transparent)}}.search-input{border-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.search-input{border-color:color-mix(in srgb,var(--color-base-content)10%,transparent)}}.search-input:focus{border-color:var(--color-primary);background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.search-input:focus{background:color-mix(in srgb,var(--color-base-content)6%,transparent)}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--color-base-content)15%,transparent)}}::-webkit-scrollbar-thumb{border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--color-base-content)25%,transparent)}}@keyframes rating{0%,40%{filter:brightness(1.05)contrast(1.05);scale:1.1}}@keyframes dropdown{0%{opacity:0}}@keyframes radio{0%{padding:5px}50%{padding:3px}}@keyframes toast{0%{opacity:0;scale:.9}to{opacity:1;scale:1}}@keyframes rotator{89.9999%,to{--first-item-position:0 0%}90%,99.9999%{--first-item-position:0 calc(var(--items)*100%)}to{translate:0 -100%}}@keyframes skeleton{0%{background-position:150%}to{background-position:-50%}}@keyframes menu{0%{opacity:0}}@keyframes progress{50%{background-position-x:-115%}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}} +/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-orange-400:oklch(75% .183 55.934);--color-green-400:oklch(79.2% .209 151.711);--color-sky-400:oklch(74.6% .16 232.661);--color-violet-400:oklch(70.2% .183 293.541);--color-purple-400:oklch(71.4% .203 305.504);--color-pink-400:oklch(71.8% .202 349.761);--color-gray-400:oklch(70.7% .022 261.325);--color-black:#000;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-xl:36rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-5xl:3rem;--text-5xl--line-height:1;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--tracking-wider:.05em;--leading-relaxed:1.625;--radius-md:.375rem;--radius-lg:.5rem;--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}:where(:root),:root:has(input.theme-controller[value=light]:checked),[data-theme=light]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(98% 0 0);--color-base-300:oklch(95% 0 0);--color-base-content:oklch(21% .006 285.885);--color-primary:oklch(45% .24 277.023);--color-primary-content:oklch(93% .034 272.788);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}@media(prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--color-base-100:oklch(25.33% .016 252.42);--color-base-200:oklch(23.26% .014 253.1);--color-base-300:oklch(21.15% .012 254.09);--color-base-content:oklch(97.807% .029 256.847);--color-primary:oklch(58% .233 277.117);--color-primary-content:oklch(96% .018 272.314);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}}:root:has(input.theme-controller[value=light]:checked),[data-theme=light]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(98% 0 0);--color-base-300:oklch(95% 0 0);--color-base-content:oklch(21% .006 285.885);--color-primary:oklch(45% .24 277.023);--color-primary-content:oklch(93% .034 272.788);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}:root:has(input.theme-controller[value=dark]:checked),[data-theme=dark]{color-scheme:dark;--color-base-100:oklch(25.33% .016 252.42);--color-base-200:oklch(23.26% .014 253.1);--color-base-300:oklch(21.15% .012 254.09);--color-base-content:oklch(97.807% .029 256.847);--color-primary:oklch(58% .233 277.117);--color-primary-content:oklch(96% .018 272.314);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}:root{--fx-noise:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.34' numOctaves='4' stitchTiles='stitch'%3E%3C/feTurbulence%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23a)' opacity='0.2'%3E%3C/rect%3E%3C/svg%3E");scrollbar-color:currentColor #0000}@supports (color:color-mix(in lab,red,red)){:root{scrollbar-color:color-mix(in oklch,currentColor 35%,#0000)#0000}}:root:not(span){overflow:var(--page-overflow)}:root,[data-theme]{background:var(--page-scroll-bg,var(--root-bg));color:var(--color-base-content)}:where(:root,[data-theme]){--root-bg:var(--color-base-100)}@media(prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--root-bg:#121212;--layout-sidebar-background:#1a1a1a;--layout-topbar-background:#1a1a1a;--color-base-100:#1a1a1a;--color-base-200:#262626;--color-base-300:#333;--color-base-content:#fafafa;--color-primary:#5b9ed9;--color-primary-content:#fff;--color-secondary:#a855f7;--color-secondary-content:#fff;--color-accent:#5b9ed9;--color-accent-content:#fff;--color-neutral:#d1d5db;--color-neutral-content:#1e2832;--color-info:#0ea5e9;--color-info-content:#fff;--color-success:#22c55e;--color-success-content:#fff;--color-warning:#f59e0b;--color-warning-content:#150a00;--color-error:#ef4444;--color-error-content:#fff;--radius-field:.375rem;--radius-box:.5rem;--rounded-box:.5rem;--radius-selector:.375rem;--border:1px}}:where(:root),:root:has(input.theme-controller[value=claude-pilot]:checked),[data-theme=claude-pilot]{color-scheme:dark;--root-bg:#121212;--layout-sidebar-background:#1a1a1a;--layout-topbar-background:#1a1a1a;--color-base-100:#1a1a1a;--color-base-200:#262626;--color-base-300:#333;--color-base-content:#fafafa;--color-primary:#5b9ed9;--color-primary-content:#fff;--color-secondary:#a855f7;--color-secondary-content:#fff;--color-accent:#5b9ed9;--color-accent-content:#fff;--color-neutral:#d1d5db;--color-neutral-content:#1e2832;--color-info:#0ea5e9;--color-info-content:#fff;--color-success:#22c55e;--color-success-content:#fff;--color-warning:#f59e0b;--color-warning-content:#150a00;--color-error:#ef4444;--color-error-content:#fff;--radius-field:.375rem;--radius-box:.5rem;--rounded-box:.5rem;--radius-selector:.375rem;--border:1px}:root:has(input.theme-controller[value=claude-pilot-light]:checked),[data-theme=claude-pilot-light]{color-scheme:light;--root-bg:#f5f5f5;--layout-sidebar-background:#fff;--layout-topbar-background:#fff;--color-base-100:#fff;--color-base-200:#f5f5f5;--color-base-300:#e5e5e5;--color-base-content:#171717;--color-primary:#4a90c7;--color-primary-content:#fff;--color-secondary:#9333ea;--color-secondary-content:#fff;--color-accent:#4a90c7;--color-accent-content:#fff;--color-neutral:#1f2937;--color-neutral-content:#fafcff;--color-info:#0284c7;--color-info-content:#fff;--color-success:#16a34a;--color-success-content:#fff;--color-warning:#d97706;--color-warning-content:#150a00;--color-error:#dc2626;--color-error-content:#fff;--radius-field:.375rem;--radius-box:.5rem;--rounded-box:.5rem;--radius-selector:.375rem;--border:1px}}@layer components;@layer utilities{@layer daisyui.l1.l2.l3{.diff{webkit-user-select:none;-webkit-user-select:none;user-select:none;direction:ltr;grid-template-rows:1fr 1.8rem 1fr;grid-template-columns:auto 1fr;width:100%;display:grid;position:relative;overflow:hidden;container-type:inline-size}.diff:focus-visible,.diff:has(.diff-item-1:focus-visible){outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px;outline-color:var(--color-base-content)}.diff:focus-visible .diff-resizer{min-width:95cqi;max-width:95cqi}.diff:has(.diff-item-1:focus-visible){outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px}.diff:has(.diff-item-1:focus-visible) .diff-resizer{min-width:5cqi;max-width:5cqi}@supports (-webkit-overflow-scrolling:touch) and (overflow:-webkit-paged-x){.diff:focus .diff-resizer{min-width:5cqi;max-width:5cqi}.diff:has(.diff-item-1:focus) .diff-resizer{min-width:95cqi;max-width:95cqi}}.modal{pointer-events:none;visibility:hidden;width:100%;max-width:none;height:100%;max-height:none;color:inherit;transition:visibility .3s allow-discrete,background-color .3s ease-out,opacity .1s ease-out;overscroll-behavior:contain;z-index:999;scrollbar-gutter:auto;background-color:#0000;place-items:center;margin:0;padding:0;display:grid;position:fixed;top:0;right:0;bottom:0;left:0;overflow:clip}.modal::backdrop{display:none}.tooltip{--tt-bg:var(--color-neutral);--tt-off: calc(100% + .5rem) ;--tt-tail: calc(100% + 1px + .25rem) ;display:inline-block;position:relative}.tooltip>.tooltip-content,.tooltip[data-tip]:before{border-radius:var(--radius-field);text-align:center;white-space:normal;max-width:20rem;color:var(--color-neutral-content);opacity:0;background-color:var(--tt-bg);pointer-events:none;z-index:2;--tw-content:attr(data-tip);content:var(--tw-content);width:max-content;padding-block:.25rem;padding-inline:.5rem;font-size:.875rem;line-height:1.25;position:absolute}.tooltip:after{opacity:0;background-color:var(--tt-bg);content:"";pointer-events:none;--mask-tooltip:url("data:image/svg+xml,%3Csvg width='10' height='4' viewBox='0 0 8 4' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.500009 1C3.5 1 3.00001 4 5.00001 4C7 4 6.5 1 9.5 1C10 1 10 0.499897 10 0H0C-1.99338e-08 0.5 0 1 0.500009 1Z' fill='black'/%3E%3C/svg%3E%0A");width:.625rem;height:.25rem;-webkit-mask-position:-1px 0;mask-position:-1px 0;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-image:var(--mask-tooltip);mask-image:var(--mask-tooltip);display:block;position:absolute}@media(prefers-reduced-motion:no-preference){.tooltip>.tooltip-content,.tooltip[data-tip]:before,.tooltip:after{transition:opacity .2s cubic-bezier(.4,0,.2,1) 75ms,transform .2s cubic-bezier(.4,0,.2,1) 75ms}}:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))>.tooltip-content,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))[data-tip]:before,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible)):after{opacity:1;--tt-pos:0rem}@media(prefers-reduced-motion:no-preference){:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))>.tooltip-content,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible))[data-tip]:before,:is(.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))).tooltip-open,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):hover,.tooltip:is([data-tip]:not([data-tip=""]),:has(.tooltip-content:not(:empty))):has(:focus-visible)):after{transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1)}}.tab{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:center;webkit-user-select:none;-webkit-user-select:none;user-select:none;flex-wrap:wrap;justify-content:center;align-items:center;display:inline-flex;position:relative}@media(hover:hover){.tab:hover{color:var(--color-base-content)}}.tab{--tab-p:.75rem;--tab-bg:var(--color-base-100);--tab-border-color:var(--color-base-300);--tab-radius-ss:0;--tab-radius-se:0;--tab-radius-es:0;--tab-radius-ee:0;--tab-order:0;--tab-radius-min:calc(.75rem - var(--border));--tab-radius-limit:min(var(--radius-field),var(--tab-radius-min));--tab-radius-grad:#0000 calc(69% - var(--border)),var(--tab-border-color)calc(69% - var(--border) + .25px),var(--tab-border-color)69%,var(--tab-bg) calc(69% + .25px) ;order:var(--tab-order);height:var(--tab-height);padding-inline:var(--tab-p);border-color:#0000;font-size:.875rem}.tab:is(input[type=radio]){min-width:fit-content}.tab:is(input[type=radio]):after{--tw-content:attr(aria-label);content:var(--tw-content)}.tab:is(label){position:relative}.tab:is(label) input{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;opacity:0;position:absolute;top:0;right:0;bottom:0;left:0}:is(.tab:checked,.tab:is(label:has(:checked)),.tab:is(.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]))+.tab-content{display:block}.tab:not(:checked,label:has(:checked),:hover,.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]){color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.tab:not(:checked,label:has(:checked),:hover,.tab-active,[aria-selected=true],[aria-current=true],[aria-current=page]){color:color-mix(in oklab,var(--color-base-content)50%,transparent)}}.tab:not(input):empty{cursor:default;flex-grow:1}.tab:focus{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.tab:focus{outline-offset:2px;outline:2px solid #0000}}.tab:focus-visible,.tab:is(label:has(:checked:focus-visible)){outline-offset:-5px;outline:2px solid}.tab[disabled]{pointer-events:none;opacity:.4}.menu{--menu-active-fg:var(--color-neutral-content);--menu-active-bg:var(--color-neutral);flex-flow:column wrap;width:fit-content;padding:.5rem;font-size:.875rem;display:flex}.menu :where(li ul){white-space:nowrap;margin-inline-start:1rem;padding-inline-start:.5rem;position:relative}.menu :where(li ul):before{background-color:var(--color-base-content);opacity:.1;width:var(--border);content:"";inset-inline-start:0;position:absolute;top:.75rem;bottom:.75rem}.menu :where(li>.menu-dropdown:not(.menu-dropdown-show)){display:none}.menu :where(li:not(.menu-title)>:not(ul,details,.menu-title,.btn)),.menu :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);text-align:start;text-wrap:balance;-webkit-user-select:none;user-select:none;grid-auto-columns:minmax(auto,max-content) auto max-content;grid-auto-flow:column;align-content:flex-start;align-items:center;gap:.5rem;padding-block:.375rem;padding-inline:.75rem;transition-property:color,background-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:grid}.menu :where(li>details>summary){--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.menu :where(li>details>summary){outline-offset:2px;outline:2px solid #0000}}.menu :where(li>details>summary)::-webkit-details-marker{display:none}:is(.menu :where(li>details>summary),.menu :where(li>.menu-dropdown-toggle)):after{content:"";transform-origin:50%;pointer-events:none;justify-self:flex-end;width:.375rem;height:.375rem;transition-property:rotate,translate;transition-duration:.2s;display:block;translate:0 -1px;rotate:-135deg;box-shadow:inset 2px 2px}.menu details{interpolate-size:allow-keywords;overflow:hidden}.menu details::details-content{block-size:0}@media(prefers-reduced-motion:no-preference){.menu details::details-content{transition-behavior:allow-discrete;transition-property:block-size,content-visibility;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1)}}.menu details[open]::details-content{block-size:auto}.menu :where(li>details[open]>summary):after,.menu :where(li>.menu-dropdown-toggle.menu-dropdown-show):after{translate:0 1px;rotate:45deg}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{cursor:pointer;background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{background-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{color:var(--color-base-content);--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{outline-offset:2px;outline:2px solid #0000}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){cursor:pointer;background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){background-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){outline-offset:2px;outline:2px solid #0000}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){box-shadow:inset 0 1px #00000003,inset 0 -1px #ffffff03}.menu :where(li:empty){background-color:var(--color-base-content);opacity:.1;height:1px;margin:.5rem 1rem}.menu :where(li){flex-flow:column wrap;flex-shrink:0;align-items:stretch;display:flex;position:relative}.menu :where(li) .badge{justify-self:flex-end}.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active{outline-offset:2px;outline:2px solid #0000}}.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active{color:var(--menu-active-fg);background-color:var(--menu-active-bg);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise)}:is(.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active):not(:is(.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active):active){box-shadow:0 2px calc(var(--depth)*3px) -2px var(--menu-active-bg)}.menu :where(li).menu-disabled{pointer-events:none;color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.menu :where(li).menu-disabled{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}.menu .dropdown:focus-within .menu-dropdown-toggle:after{translate:0 1px;rotate:45deg}.menu .dropdown-content{margin-top:.5rem;padding:.5rem}.menu .dropdown-content:before{display:none}.dropdown{position-area:var(--anchor-v,bottom)var(--anchor-h,span-right);display:inline-block;position:relative}.dropdown>:not(:has(~[class*=dropdown-content])):focus{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.dropdown>:not(:has(~[class*=dropdown-content])):focus{outline-offset:2px;outline:2px solid #0000}}.dropdown .dropdown-content{position:absolute}.dropdown.dropdown-close .dropdown-content,.dropdown:not(details,.dropdown-open,.dropdown-hover:hover,:focus-within) .dropdown-content,.dropdown.dropdown-hover:not(:hover) [tabindex]:first-child:focus:not(:focus-visible)~.dropdown-content{transform-origin:top;opacity:0;display:none;scale:95%}.dropdown[popover],.dropdown .dropdown-content{z-index:999}@media(prefers-reduced-motion:no-preference){.dropdown[popover],.dropdown .dropdown-content{transition-behavior:allow-discrete;transition-property:opacity,scale,display;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);animation:.2s dropdown}}@starting-style{.dropdown[popover],.dropdown .dropdown-content{opacity:0;scale:95%}}:is(.dropdown:not(.dropdown-close).dropdown-open,.dropdown:not(.dropdown-close):not(.dropdown-hover):focus,.dropdown:not(.dropdown-close):focus-within)>[tabindex]:first-child{pointer-events:none}:is(.dropdown:not(.dropdown-close).dropdown-open,.dropdown:not(.dropdown-close):not(.dropdown-hover):focus,.dropdown:not(.dropdown-close):focus-within) .dropdown-content,.dropdown:not(.dropdown-close).dropdown-hover:hover .dropdown-content{opacity:1;scale:100%}.dropdown:is(details) summary::-webkit-details-marker{display:none}.dropdown:where([popover]){background:0 0}.dropdown[popover]{color:inherit;position:fixed}@supports not (position-area:bottom){.dropdown[popover]{margin:auto}.dropdown[popover].dropdown-close{transform-origin:top;opacity:0;display:none;scale:95%}.dropdown[popover].dropdown-open:not(:popover-open){transform-origin:top;opacity:0;display:none;scale:95%}.dropdown[popover]::backdrop{background-color:oklab(0% none none/.3)}}:is(.dropdown[popover].dropdown-close,.dropdown[popover]:not(.dropdown-open,:popover-open)){transform-origin:top;opacity:0;display:none;scale:95%}:where(.btn){width:unset}.btn{cursor:pointer;text-align:center;vertical-align:middle;outline-offset:2px;webkit-user-select:none;-webkit-user-select:none;user-select:none;padding-inline:var(--btn-p);color:var(--btn-fg);--tw-prose-links:var(--btn-fg);height:var(--size);font-size:var(--fontsize,.875rem);outline-color:var(--btn-color,var(--color-base-content));background-color:var(--btn-bg);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--btn-noise);border-width:var(--border);border-style:solid;border-color:var(--btn-border);text-shadow:0 .5px oklch(100% 0 0/calc(var(--depth)*.15));touch-action:manipulation;box-shadow:0 .5px 0 .5px oklch(100% 0 0/calc(var(--depth)*6%)) inset,var(--btn-shadow);--size:calc(var(--size-field,.25rem)*10);--btn-bg:var(--btn-color,var(--color-base-200));--btn-fg:var(--color-base-content);--btn-p:1rem;--btn-border:var(--btn-bg);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-wrap:nowrap;flex-shrink:0;justify-content:center;align-items:center;gap:.375rem;font-weight:600;transition-property:color,background-color,border-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:inline-flex}@supports (color:color-mix(in lab,red,red)){.btn{--btn-border:color-mix(in oklab,var(--btn-bg),#000 calc(var(--depth)*5%))}}.btn{--btn-shadow:0 3px 2px -2px var(--btn-bg),0 4px 3px -2px var(--btn-bg)}@supports (color:color-mix(in lab,red,red)){.btn{--btn-shadow:0 3px 2px -2px color-mix(in oklab,var(--btn-bg)calc(var(--depth)*30%),#0000),0 4px 3px -2px color-mix(in oklab,var(--btn-bg)calc(var(--depth)*30%),#0000)}}.btn{--btn-noise:var(--fx-noise)}@media(hover:hover){.btn:hover{--btn-bg:var(--btn-color,var(--color-base-200))}@supports (color:color-mix(in lab,red,red)){.btn:hover{--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%)}}}.btn:focus-visible,.btn:has(:focus-visible){isolation:isolate;outline-width:2px;outline-style:solid}.btn:active:not(.btn-active){--btn-bg:var(--btn-color,var(--color-base-200));translate:0 .5px}@supports (color:color-mix(in lab,red,red)){.btn:active:not(.btn-active){--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 5%)}}.btn:active:not(.btn-active){--btn-border:var(--btn-color,var(--color-base-200))}@supports (color:color-mix(in lab,red,red)){.btn:active:not(.btn-active){--btn-border:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%)}}.btn:active:not(.btn-active){--btn-shadow:0 0 0 0 oklch(0% 0 0/0),0 0 0 0 oklch(0% 0 0/0)}.btn:is(input[type=checkbox],input[type=radio]){-webkit-appearance:none;-moz-appearance:none;appearance:none}.btn:is(input[type=checkbox],input[type=radio])[aria-label]:after{--tw-content:attr(aria-label);content:var(--tw-content)}.btn:where(input:checked:not(.filter .btn)){--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content);isolation:isolate}.loading{pointer-events:none;aspect-ratio:1;vertical-align:middle;width:calc(var(--size-selector,.25rem)*6);background-color:currentColor;display:inline-block;-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:100%;mask-size:100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.collapse{border-radius:var(--radius-box,1rem);isolation:isolate;grid-template-rows:max-content 0fr;grid-template-columns:minmax(0,1fr);width:100%;display:grid;position:relative;overflow:hidden}@media(prefers-reduced-motion:no-preference){.collapse{transition:grid-template-rows .2s}}.collapse>input:is([type=checkbox],[type=radio]){-webkit-appearance:none;-moz-appearance:none;appearance:none;opacity:0;z-index:1;grid-row-start:1;grid-column-start:1;width:100%;min-height:1lh;padding:1rem;padding-inline-end:3rem;transition:background-color .2s ease-out}.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close)),.collapse:not(.collapse-close):has(>input:is([type=checkbox],[type=radio]):checked){grid-template-rows:max-content 1fr}.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close))>.collapse-content,.collapse:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){content-visibility:visible;min-height:fit-content}@supports not (content-visibility:visible){.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close))>.collapse-content,.collapse:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){visibility:visible}}.collapse:focus-visible,.collapse:has(>input:is([type=checkbox],[type=radio]):focus-visible),.collapse:has(summary:focus-visible){outline-color:var(--color-base-content);outline-offset:2px;outline-width:2px;outline-style:solid}.collapse:not(.collapse-close)>input[type=checkbox],.collapse:not(.collapse-close)>input[type=radio]:not(:checked),.collapse:not(.collapse-close)>.collapse-title{cursor:pointer}:is(.collapse[tabindex]:focus:not(.collapse-close,.collapse[open]),.collapse[tabindex]:focus-within:not(.collapse-close,.collapse[open]))>.collapse-title{cursor:unset}.collapse:is([open],[tabindex]:focus:not(.collapse-close),[tabindex]:focus-within:not(.collapse-close))>:where(.collapse-content),.collapse:not(.collapse-close)>:where(input:is([type=checkbox],[type=radio]):checked~.collapse-content){padding-bottom:1rem}.collapse:is(details){width:100%}@media(prefers-reduced-motion:no-preference){.collapse:is(details)::details-content{transition:content-visibility .2s allow-discrete,visibility .2s allow-discrete,min-height .2s ease-out allow-discrete,padding .1s ease-out 20ms,background-color .2s ease-out,height .2s;interpolate-size:allow-keywords;height:0}.collapse:is(details):where([open])::details-content{height:auto}}.collapse:is(details) summary{display:block;position:relative}.collapse:is(details) summary::-webkit-details-marker{display:none}.collapse:is(details)>.collapse-content{content-visibility:visible}.collapse:is(details) summary{outline:none}.collapse-content{content-visibility:hidden;min-height:0;cursor:unset;grid-row-start:2;grid-column-start:1;padding-left:1rem;padding-right:1rem}@supports not (content-visibility:hidden){.collapse-content{visibility:hidden}}@media(prefers-reduced-motion:no-preference){.collapse-content{transition:content-visibility .2s allow-discrete,visibility .2s allow-discrete,min-height .2s ease-out allow-discrete,padding .1s ease-out 20ms,background-color .2s ease-out}}.list{flex-direction:column;font-size:.875rem;display:flex}.list .list-row{--list-grid-cols:minmax(0,auto)1fr;border-radius:var(--radius-box);word-break:break-word;grid-auto-flow:column;grid-template-columns:var(--list-grid-cols);gap:1rem;padding:1rem;display:grid;position:relative}:is(.list>:not(:last-child).list-row,.list>:not(:last-child) .list-row):after{content:"";border-bottom:var(--border)solid;inset-inline:var(--radius-box);border-color:var(--color-base-content);position:absolute;bottom:0}@supports (color:color-mix(in lab,red,red)){:is(.list>:not(:last-child).list-row,.list>:not(:last-child) .list-row):after{border-color:color-mix(in oklab,var(--color-base-content)5%,transparent)}}.toast{translate:var(--toast-x,0)var(--toast-y,0);inset-inline:auto 1rem;background-color:#0000;flex-direction:column;gap:.5rem;width:max-content;max-width:calc(100vw - 2rem);display:flex;position:fixed;top:auto;bottom:1rem}@media(prefers-reduced-motion:no-preference){.toast>*{animation:.25s ease-out toast}}.toggle{border:var(--border)solid currentColor;color:var(--input-color);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;vertical-align:middle;webkit-user-select:none;-webkit-user-select:none;user-select:none;--radius-selector-max:calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));border-radius:calc(var(--radius-selector) + min(var(--toggle-p),var(--radius-selector-max)) + min(var(--border),var(--radius-selector-max)));padding:var(--toggle-p);flex-shrink:0;grid-template-columns:0fr 1fr 1fr;place-content:center;display:inline-grid;position:relative;box-shadow:inset 0 1px}@supports (color:color-mix(in lab,red,red)){.toggle{box-shadow:0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000) inset}}.toggle{--input-color:var(--color-base-content);transition:color .3s,grid-template-columns .2s}@supports (color:color-mix(in lab,red,red)){.toggle{--input-color:color-mix(in oklab,var(--color-base-content)50%,#0000)}}.toggle{--toggle-p:calc(var(--size)*.125);--size:calc(var(--size-selector,.25rem)*6);width:calc((var(--size)*2) - (var(--border) + var(--toggle-p))*2);height:var(--size)}.toggle>*{z-index:1;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#0000;border:none;grid-column:2/span 1;grid-row-start:1;height:100%;padding:.125rem;transition:opacity .2s,rotate .4s}.toggle>:focus{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.toggle>:focus{outline-offset:2px;outline:2px solid #0000}}.toggle>:nth-child(2){color:var(--color-base-100);rotate:none}.toggle>:nth-child(3){color:var(--color-base-100);opacity:0;rotate:-15deg}.toggle:has(:checked)>:nth-child(2){opacity:0;rotate:15deg}.toggle:has(:checked)>:nth-child(3){opacity:1;rotate:none}.toggle:before{aspect-ratio:1;border-radius:var(--radius-selector);--tw-content:"";content:var(--tw-content);width:100%;height:100%;box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1)) inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1)) inset,0 1px currentColor;background-color:currentColor;grid-row-start:1;grid-column-start:2;transition:background-color .1s,translate .2s,inset-inline-start .2s;position:relative;inset-inline-start:0;translate:0}@supports (color:color-mix(in lab,red,red)){.toggle:before{box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1)) inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1)) inset,0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000)}}.toggle:before{background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise)}@media(forced-colors:active){.toggle:before{outline-style:var(--tw-outline-style);outline-offset:-1px;outline-width:1px}}@media print{.toggle:before{outline-offset:-1rem;outline:.25rem solid}}.toggle:focus-visible,.toggle:has(:focus-visible){outline-offset:2px;outline:2px solid}.toggle:checked,.toggle[aria-checked=true],.toggle:has(>input:checked){background-color:var(--color-base-100);--input-color:var(--color-base-content);grid-template-columns:1fr 1fr 0fr}:is(.toggle:checked,.toggle[aria-checked=true],.toggle:has(>input:checked)):before{background-color:currentColor}@starting-style{:is(.toggle:checked,.toggle[aria-checked=true],.toggle:has(>input:checked)):before{opacity:0}}.toggle:indeterminate{grid-template-columns:.5fr 1fr .5fr}.toggle:disabled{cursor:not-allowed;opacity:.3}.toggle:disabled:before{border:var(--border)solid currentColor;background-color:#0000}.input{cursor:text;border:var(--border)solid #0000;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--color-base-100);vertical-align:middle;white-space:nowrap;width:clamp(3rem,20rem,100%);height:var(--size);font-size:max(var(--font-size,.875rem),.875rem);touch-action:manipulation;border-color:var(--input-color);box-shadow:0 1px var(--input-color) inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1)) inset;border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.5rem;padding-inline:.75rem;display:inline-flex;position:relative}@supports (color:color-mix(in lab,red,red)){.input{box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000) inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1)) inset}}.input{--size:calc(var(--size-field,.25rem)*10);--input-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.input{--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000)}}.input:where(input){display:inline-flex}.input :where(input){-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#0000;border:none;width:100%;height:100%;display:inline-flex}.input :where(input):focus,.input :where(input):focus-within{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.input :where(input):focus,.input :where(input):focus-within{outline-offset:2px;outline:2px solid #0000}}.input :where(input[type=url]),.input :where(input[type=email]){direction:ltr}.input :where(input[type=date]){display:inline-flex}.input:focus,.input:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px var(--input-color)}@supports (color:color-mix(in lab,red,red)){.input:focus,.input:focus-within{box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)}}.input:focus,.input:focus-within{outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}@media(pointer:coarse){@supports (-webkit-touch-callout:none){.input:focus,.input:focus-within{--font-size:1rem}}}.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input{cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input{color:color-mix(in oklab,var(--color-base-content)40%,transparent)}}:is(.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input)::placeholder{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){:is(.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input)::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}.input:has(>input[disabled]),.input:is(:disabled,[disabled]),fieldset:disabled .input{box-shadow:none}.input:has(>input[disabled])>input[disabled]{cursor:not-allowed}.input::-webkit-date-and-time-value{text-align:inherit}.input[type=number]::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}.input::-webkit-calendar-picker-indicator{position:absolute;inset-inline-end:.75em}.input:has(>input[type=date]) :where(input[type=date]){webkit-appearance:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex}.input:has(>input[type=date]) input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;width:1em;height:1em;position:absolute;inset-inline-end:.75em}.indicator{width:max-content;display:inline-flex;position:relative}.indicator :where(.indicator-item){z-index:1;white-space:nowrap;top:var(--indicator-t,0);bottom:var(--indicator-b,auto);left:var(--indicator-s,auto);right:var(--indicator-e,0);translate:var(--indicator-x,50%)var(--indicator-y,-50%);position:absolute}.table{border-collapse:separate;--tw-border-spacing-x: 0rem ;--tw-border-spacing-y: 0rem ;width:100%;border-spacing:var(--tw-border-spacing-x)var(--tw-border-spacing-y);border-radius:var(--radius-box);text-align:left;font-size:.875rem;position:relative}.table:where(:dir(rtl),[dir=rtl],[dir=rtl] *){text-align:right}@media(hover:hover){:is(.table tr.row-hover,.table tr.row-hover:nth-child(2n)):hover{background-color:var(--color-base-200)}}.table :where(th,td){vertical-align:middle;padding-block:.75rem;padding-inline:1rem}.table :where(thead,tfoot){white-space:nowrap;color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.table :where(thead,tfoot){color:color-mix(in oklab,var(--color-base-content)60%,transparent)}}.table :where(thead,tfoot){font-size:.875rem;font-weight:600}.table :where(tfoot tr:first-child :is(td,th)){border-top:var(--border)solid var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.table :where(tfoot tr:first-child :is(td,th)){border-top:var(--border)solid color-mix(in oklch,var(--color-base-content)5%,#0000)}}.table :where(.table-pin-rows thead tr){z-index:1;background-color:var(--color-base-100);position:sticky;top:0}.table :where(.table-pin-rows tfoot tr){z-index:1;background-color:var(--color-base-100);position:sticky;bottom:0}.table :where(.table-pin-cols tr th){background-color:var(--color-base-100);position:sticky;left:0;right:0}.table :where(thead tr :is(td,th),tbody tr:not(:last-child) :is(td,th)){border-bottom:var(--border)solid var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.table :where(thead tr :is(td,th),tbody tr:not(:last-child) :is(td,th)){border-bottom:var(--border)solid color-mix(in oklch,var(--color-base-content)5%,#0000)}}.select{border:var(--border)solid #0000;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--color-base-100);vertical-align:middle;width:clamp(3rem,20rem,100%);height:var(--size);touch-action:manipulation;white-space:nowrap;text-overflow:ellipsis;box-shadow:0 1px var(--input-color) inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1)) inset;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 20px) calc(1px + 50%),calc(100% - 16.1px) calc(1px + 50%);background-repeat:no-repeat;background-size:4px 4px,4px 4px;border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.375rem;padding-inline:.75rem 1.75rem;font-size:.875rem;display:inline-flex;position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.select{box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000) inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1)) inset}}.select{border-color:var(--input-color);--input-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.select{--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000)}}.select{--size:calc(var(--size-field,.25rem)*10)}[dir=rtl] .select{background-position:12px calc(1px + 50%),16px calc(1px + 50%)}[dir=rtl] .select::picker(select){translate:.5rem}[dir=rtl] .select select::picker(select){translate:.5rem}.select[multiple]{background-image:none;height:auto;padding-block:.75rem;padding-inline-end:.75rem;overflow:auto}.select select{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:calc(100% + 2.75rem);height:calc(100% - calc(var(--border)*2));background:inherit;border-radius:inherit;border-style:none;align-items:center;margin-inline:-.75rem -1.75rem;padding-inline:.75rem 1.75rem}.select select:focus,.select select:focus-within{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.select select:focus,.select select:focus-within{outline-offset:2px;outline:2px solid #0000}}.select select:not(:last-child){background-image:none;margin-inline-end:-1.375rem}.select:focus,.select:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px var(--input-color)}@supports (color:color-mix(in lab,red,red)){.select:focus,.select:focus-within{box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)}}.select:focus,.select:focus-within{outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select{cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select{color:color-mix(in oklab,var(--color-base-content)40%,transparent)}}:is(.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select)::placeholder{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){:is(.select:has(>select[disabled]),.select:is(:disabled,[disabled]),fieldset:disabled .select)::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}.select:has(>select[disabled])>select[disabled]{cursor:not-allowed}@supports (appearance:base-select){.select,.select select{-webkit-appearance:base-select;-moz-appearance:base-select;appearance:base-select}:is(.select,.select select)::picker(select){-webkit-appearance:base-select;-moz-appearance:base-select;appearance:base-select}}:is(.select,.select select)::picker(select){color:inherit;border:var(--border)solid var(--color-base-200);border-radius:var(--radius-box);background-color:inherit;max-height:min(24rem,70dvh);box-shadow:0 2px calc(var(--depth)*3px) -2px #0003;box-shadow:0 20px 25px -5px rgb(0 0 0/calc(var(--depth)*.1)),0 8px 10px -6px rgb(0 0 0/calc(var(--depth)*.1));margin-block:.5rem;margin-inline:.5rem;padding:.5rem;translate:-.5rem}:is(.select,.select select)::picker-icon{display:none}:is(.select,.select select) optgroup{padding-top:.5em}:is(.select,.select select) optgroup option:first-child{margin-top:.5em}:is(.select,.select select) option{border-radius:var(--radius-field);white-space:normal;padding-block:.375rem;padding-inline:.75rem;transition-property:color,background-color;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1)}:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{cursor:pointer;background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{background-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){:is(.select,.select select) option:not(:disabled):hover,:is(.select,.select select) option:not(:disabled):focus-visible{outline-offset:2px;outline:2px solid #0000}}:is(.select,.select select) option:not(:disabled):active{background-color:var(--color-neutral);color:var(--color-neutral-content);box-shadow:0 2px calc(var(--depth)*3px) -2px var(--color-neutral)}.timeline{display:flex;position:relative}.timeline>li{grid-template-rows:var(--timeline-row-start,minmax(0,1fr))auto var(--timeline-row-end,minmax(0,1fr));grid-template-columns:var(--timeline-col-start,minmax(0,1fr))auto var(--timeline-col-end,minmax(0,1fr));flex-shrink:0;align-items:center;display:grid;position:relative}.timeline>li>hr{border:none;width:100%}.timeline>li>hr:first-child{grid-row-start:2;grid-column-start:1}.timeline>li>hr:last-child{grid-area:2/3/auto/none}@media print{.timeline>li>hr{border:.1px solid var(--color-base-300)}}.timeline :where(hr){background-color:var(--color-base-300);height:.25rem}.timeline:has(.timeline-middle hr):first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}.timeline:has(.timeline-middle hr):last-child,.timeline:not(:has(.timeline-middle)) :first-child hr:last-child{border-start-start-radius:var(--radius-selector);border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:var(--radius-selector)}.timeline:not(:has(.timeline-middle)) :last-child hr:first-child{border-start-start-radius:0;border-start-end-radius:var(--radius-selector);border-end-end-radius:var(--radius-selector);border-end-start-radius:0}.collapse-title{grid-row-start:1;grid-column-start:1;width:100%;min-height:1lh;padding:1rem;padding-inline-end:3rem;transition:background-color .2s ease-out;position:relative}.checkbox{border:var(--border)solid var(--input-color,var(--color-base-content))}@supports (color:color-mix(in lab,red,red)){.checkbox{border:var(--border)solid var(--input-color,color-mix(in oklab,var(--color-base-content)20%,#0000))}}.checkbox{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--radius-selector);vertical-align:middle;color:var(--color-base-content);box-shadow:0 1px oklch(0% 0 0/calc(var(--depth)*.1)) inset,0 0 #0000 inset,0 0 #0000;--size:calc(var(--size-selector,.25rem)*6);width:var(--size);height:var(--size);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);flex-shrink:0;padding:.25rem;transition:background-color .2s,box-shadow .2s;display:inline-block;position:relative}.checkbox:before{--tw-content:"";content:var(--tw-content);opacity:0;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,70% 80%,70% 100%);width:100%;height:100%;box-shadow:0 3px oklch(100% 0 0/calc(var(--depth)*.1)) inset;background-color:currentColor;font-size:1rem;line-height:.75;transition:clip-path .3s .1s,opacity .1s .1s,rotate .3s .1s,translate .3s .1s;display:block;rotate:45deg}.checkbox:focus-visible{outline:2px solid var(--input-color,currentColor);outline-offset:2px}.checkbox:checked,.checkbox[aria-checked=true]{background-color:var(--input-color,#0000);box-shadow:0 0 #0000 inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1)) inset,0 1px oklch(0% 0 0/calc(var(--depth)*.1))}:is(.checkbox:checked,.checkbox[aria-checked=true]):before{clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 0%,70% 0%,70% 100%);opacity:1}@media(forced-colors:active){:is(.checkbox:checked,.checkbox[aria-checked=true]):before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:none}}@media print{:is(.checkbox:checked,.checkbox[aria-checked=true]):before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:none}}.checkbox:indeterminate{background-color:var(--input-color,var(--color-base-content))}@supports (color:color-mix(in lab,red,red)){.checkbox:indeterminate{background-color:var(--input-color,color-mix(in oklab,var(--color-base-content)20%,#0000))}}.checkbox:indeterminate:before{opacity:1;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,80% 80%,80% 100%);translate:0 -35%;rotate:none}.card{border-radius:var(--radius-box);outline-offset:2px;outline:0 solid #0000;flex-direction:column;transition:outline .2s ease-in-out;display:flex;position:relative}.card:focus{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.card:focus{outline-offset:2px;outline:2px solid #0000}}.card:focus-visible{outline-color:currentColor}.card :where(figure:first-child){border-start-start-radius:inherit;border-start-end-radius:inherit;border-end-end-radius:unset;border-end-start-radius:unset;overflow:hidden}.card :where(figure:last-child){border-start-start-radius:unset;border-start-end-radius:unset;border-end-end-radius:inherit;border-end-start-radius:inherit;overflow:hidden}.card figure{justify-content:center;align-items:center;display:flex}.card:has(>input:is(input[type=checkbox],input[type=radio])){cursor:pointer;-webkit-user-select:none;user-select:none}.card:has(>:checked){outline:2px solid}.stats{border-radius:var(--radius-box);grid-auto-flow:column;display:inline-grid;position:relative;overflow-x:auto}.progress{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--radius-box);background-color:currentColor;width:100%;height:.5rem;position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.progress{background-color:color-mix(in oklab,currentcolor 20%,transparent)}}.progress{color:var(--color-base-content)}.progress:indeterminate{background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%}@media(prefers-reduced-motion:no-preference){.progress:indeterminate{animation:5s ease-in-out infinite progress}}@supports ((-moz-appearance:none)){.progress:indeterminate::-moz-progress-bar{background-color:#0000}@media(prefers-reduced-motion:no-preference){.progress:indeterminate::-moz-progress-bar{background-image:repeating-linear-gradient(90deg,currentColor -1% 10%,#0000 10% 90%);background-position-x:15%;background-size:200%;animation:5s ease-in-out infinite progress}}.progress::-moz-progress-bar{border-radius:var(--radius-box);background-color:currentColor}}@supports ((-webkit-appearance:none)){.progress::-webkit-progress-bar{border-radius:var(--radius-box);background-color:#0000}.progress::-webkit-progress-value{border-radius:var(--radius-box);background-color:currentColor}}.modal-backdrop{color:#0000;z-index:-1;grid-row-start:1;grid-column-start:1;place-self:stretch stretch;display:grid}.modal-backdrop button{cursor:pointer}.modal-box{background-color:var(--color-base-100);border-top-left-radius:var(--modal-tl,var(--radius-box));border-top-right-radius:var(--modal-tr,var(--radius-box));border-bottom-left-radius:var(--modal-bl,var(--radius-box));border-bottom-right-radius:var(--modal-br,var(--radius-box));opacity:0;overscroll-behavior:contain;grid-row-start:1;grid-column-start:1;width:91.6667%;max-width:32rem;max-height:100vh;padding:1.5rem;transition:translate .3s ease-out,scale .3s ease-out,opacity .2s ease-out 50ms,box-shadow .3s ease-out;overflow-y:auto;scale:95%;box-shadow:0 25px 50px -12px #00000040}.stat-value{white-space:nowrap;grid-column-start:1;font-size:2rem;font-weight:800}.stat-desc{white-space:nowrap;color:var(--color-base-content);grid-column-start:1}@supports (color:color-mix(in lab,red,red)){.stat-desc{color:color-mix(in oklab,var(--color-base-content)60%,transparent)}}.stat-desc{font-size:.75rem}.stat-title{white-space:nowrap;color:var(--color-base-content);grid-column-start:1}@supports (color:color-mix(in lab,red,red)){.stat-title{color:color-mix(in oklab,var(--color-base-content)60%,transparent)}}.stat-title{font-size:.75rem}.divider{white-space:nowrap;height:1rem;margin:var(--divider-m,1rem 0);--divider-color:var(--color-base-content);flex-direction:row;align-self:stretch;align-items:center;display:flex}@supports (color:color-mix(in lab,red,red)){.divider{--divider-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.divider:before,.divider:after{content:"";background-color:var(--divider-color);flex-grow:1;width:100%;height:.125rem}@media print{.divider:before,.divider:after{border:.5px solid}}.divider:not(:empty){gap:1rem}.filter{flex-wrap:wrap;display:flex}.filter input[type=radio]{width:auto}.filter input{opacity:1;transition:margin .1s,opacity .3s,padding .3s,border-width .1s;overflow:hidden;scale:1}.filter input:not(:last-child){margin-inline-end:.25rem}.filter input.filter-reset{aspect-ratio:1}.filter input.filter-reset:after{--tw-content:"×";content:var(--tw-content)}.filter:not(:has(input:checked:not(.filter-reset))) .filter-reset,.filter:not(:has(input:checked:not(.filter-reset))) input[type=reset],.filter:has(input:checked:not(.filter-reset)) input:not(:checked,.filter-reset,input[type=reset]){opacity:0;border-width:0;width:0;margin-inline:0;padding-inline:0;scale:0}.label{white-space:nowrap;color:currentColor;align-items:center;gap:.375rem;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.label{color:color-mix(in oklab,currentcolor 60%,transparent)}}.label:has(input){cursor:pointer}.label:is(.input>*,.select>*){white-space:nowrap;height:calc(100% - .5rem);font-size:inherit;align-items:center;padding-inline:.75rem;display:flex}.label:is(.input>*,.select>*):first-child{border-inline-end:var(--border)solid currentColor;margin-inline:-.75rem .75rem}@supports (color:color-mix(in lab,red,red)){.label:is(.input>*,.select>*):first-child{border-inline-end:var(--border)solid color-mix(in oklab,currentColor 10%,#0000)}}.label:is(.input>*,.select>*):last-child{border-inline-start:var(--border)solid currentColor;margin-inline:.75rem -.75rem}@supports (color:color-mix(in lab,red,red)){.label:is(.input>*,.select>*):last-child{border-inline-start:var(--border)solid color-mix(in oklab,currentColor 10%,#0000)}}.modal-action{justify-content:flex-end;gap:.5rem;margin-top:1.5rem;display:flex}.status{aspect-ratio:1;border-radius:var(--radius-selector);background-color:var(--color-base-content);width:.5rem;height:.5rem;display:inline-block}@supports (color:color-mix(in lab,red,red)){.status{background-color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}.status{vertical-align:middle;color:#0000004d;background-position:50%;background-repeat:no-repeat}@supports (color:color-mix(in lab,red,red)){.status{color:color-mix(in oklab,var(--color-black)30%,transparent)}}.status{background-image:radial-gradient(circle at 35% 30%,oklch(1 0 0/calc(var(--depth)*.5)),#0000);box-shadow:0 2px 3px -1px}@supports (color:color-mix(in lab,red,red)){.status{box-shadow:0 2px 3px -1px color-mix(in oklab,currentColor calc(var(--depth)*100%),#0000)}}.badge{border-radius:var(--radius-selector);vertical-align:middle;color:var(--badge-fg);border:var(--border)solid var(--badge-color,var(--color-base-200));background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);background-color:var(--badge-bg);--badge-bg:var(--badge-color,var(--color-base-100));--badge-fg:var(--color-base-content);--size:calc(var(--size-selector,.25rem)*6);width:fit-content;height:var(--size);padding-inline:calc(var(--size)/2 - var(--border));justify-content:center;align-items:center;gap:.5rem;font-size:.875rem;display:inline-flex}.kbd{border-radius:var(--radius-field);background-color:var(--color-base-200);vertical-align:middle;border:var(--border)solid var(--color-base-content);justify-content:center;align-items:center;padding-inline:.5em;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.kbd{border:var(--border)solid color-mix(in srgb,var(--color-base-content)20%,#0000)}}.kbd{border-bottom:calc(var(--border) + 1px)solid var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.kbd{border-bottom:calc(var(--border) + 1px)solid color-mix(in srgb,var(--color-base-content)20%,#0000)}}.kbd{--size:calc(var(--size-selector,.25rem)*6);height:var(--size);min-width:var(--size);font-size:.875rem}.tabs{--tabs-height:auto;--tabs-direction:row;--tab-height:calc(var(--size-field,.25rem)*10);height:var(--tabs-height);flex-wrap:wrap;flex-direction:var(--tabs-direction);display:flex}.footer{grid-auto-flow:row;place-items:start;gap:2.5rem 1rem;width:100%;font-size:.875rem;line-height:1.25rem;display:grid}.footer>*{place-items:start;gap:.5rem;display:grid}.footer.footer-center{text-align:center;grid-auto-flow:column dense;place-items:center}.footer.footer-center>*{place-items:center}.stat{grid-template-columns:repeat(1,1fr);column-gap:1rem;width:100%;padding-block:1rem;padding-inline:1.5rem;display:inline-grid}.stat:not(:last-child){border-inline-end:var(--border)dashed currentColor}@supports (color:color-mix(in lab,red,red)){.stat:not(:last-child){border-inline-end:var(--border)dashed color-mix(in oklab,currentColor 10%,#0000)}}.stat:not(:last-child){border-block-end:none}.card-body{padding:var(--card-p,1.5rem);font-size:var(--card-fs,.875rem);flex-direction:column;flex:auto;gap:.5rem;display:flex}.card-body :where(p){flex-grow:1}.alert{--alert-border-color:var(--color-base-200);border-radius:var(--radius-box);color:var(--color-base-content);background-color:var(--alert-color,var(--color-base-200));text-align:start;background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);box-shadow:0 3px 0 -2px oklch(100% 0 0/calc(var(--depth)*.08)) inset,0 1px #000,0 4px 3px -2px oklch(0% 0 0/calc(var(--depth)*.08));border-style:solid;grid-template-columns:auto;grid-auto-flow:column;justify-content:start;place-items:center start;gap:1rem;padding-block:.75rem;padding-inline:1rem;font-size:.875rem;line-height:1.25rem;display:grid}@supports (color:color-mix(in lab,red,red)){.alert{box-shadow:0 3px 0 -2px oklch(100% 0 0/calc(var(--depth)*.08)) inset,0 1px color-mix(in oklab,color-mix(in oklab,#000 20%,var(--alert-color,var(--color-base-200)))calc(var(--depth)*20%),#0000),0 4px 3px -2px oklch(0% 0 0/calc(var(--depth)*.08))}}.alert:has(:nth-child(2)){grid-template-columns:auto minmax(auto,1fr)}.chat{--mask-chat:url("data:image/svg+xml,%3csvg width='13' height='13' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='M0 11.5004C0 13.0004 2 13.0004 2 13.0004H12H13V0.00036329L12.5 0C12.5 0 11.977 2.09572 11.8581 2.50033C11.6075 3.35237 10.9149 4.22374 9 5.50036C6 7.50036 0 10.0004 0 11.5004Z'/%3e%3c/svg%3e");grid-auto-rows:min-content;column-gap:.75rem;padding-block:.25rem;display:grid}.card-actions{flex-wrap:wrap;align-items:flex-start;gap:.5rem;display:flex}.card-title{font-size:var(--cardtitle-fs,1.125rem);align-items:center;gap:.5rem;font-weight:600;display:flex}.btn-error{--btn-color:var(--color-error);--btn-fg:var(--color-error-content)}.btn-primary{--btn-color:var(--color-primary);--btn-fg:var(--color-primary-content)}.btn-secondary{--btn-color:var(--color-secondary);--btn-fg:var(--color-secondary-content)}}@layer daisyui.l1.l2{.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal{pointer-events:auto;visibility:visible;opacity:1;transition:visibility 0s allow-discrete,background-color .3s ease-out,opacity .1s ease-out;background-color:#0006}:is(.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal) .modal-box{opacity:1;translate:0;scale:1}:root:has(:is(.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal)){--page-has-backdrop:1;--page-overflow:hidden;--page-scroll-bg:var(--page-scroll-bg-on);--page-scroll-gutter:stable;--page-scroll-transition:var(--page-scroll-transition-on);animation:forwards set-page-has-scroll;animation-timeline:scroll()}@starting-style{.modal.modal-open,.modal[open],.modal:target,.modal-toggle:checked+.modal{opacity:0}}.tooltip>.tooltip-content,.tooltip[data-tip]:before{transform:translate(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-off)50%}.tooltip:after{transform:translate(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-tail)50%}.collapse-arrow>.collapse-title:after{width:.5rem;height:.5rem;display:block;position:absolute;transform:translateY(-100%)rotate(45deg)}@media(prefers-reduced-motion:no-preference){.collapse-arrow>.collapse-title:after{transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}}.collapse-arrow>.collapse-title:after{content:"";transform-origin:75% 75%;pointer-events:none;top:50%;inset-inline-end:1.4rem;box-shadow:2px 2px}.btn:disabled:not(.btn-link,.btn-ghost){background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.btn:disabled:not(.btn-link,.btn-ghost){background-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.btn:disabled:not(.btn-link,.btn-ghost){box-shadow:none}.btn:disabled{pointer-events:none;--btn-border:#0000;--btn-noise:none;--btn-fg:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.btn:disabled{--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000)}}.btn[disabled]:not(.btn-link,.btn-ghost){background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.btn[disabled]:not(.btn-link,.btn-ghost){background-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.btn[disabled]:not(.btn-link,.btn-ghost){box-shadow:none}.btn[disabled]{pointer-events:none;--btn-border:#0000;--btn-noise:none;--btn-fg:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.btn[disabled]{--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000)}}@media(prefers-reduced-motion:no-preference){.collapse[open].collapse-arrow>.collapse-title:after,.collapse.collapse-open.collapse-arrow>.collapse-title:after{transform:translateY(-50%)rotate(225deg)}}.collapse.collapse-open.collapse-plus>.collapse-title:after{--tw-content:"−";content:var(--tw-content)}:is(.collapse[tabindex].collapse-arrow:focus:not(.collapse-close),.collapse.collapse-arrow[tabindex]:focus-within:not(.collapse-close))>.collapse-title:after,.collapse.collapse-arrow:not(.collapse-close)>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{transform:translateY(-50%)rotate(225deg)}.collapse[open].collapse-plus>.collapse-title:after,.collapse[tabindex].collapse-plus:focus:not(.collapse-close)>.collapse-title:after,.collapse.collapse-plus:not(.collapse-close)>input:is([type=checkbox],[type=radio]):checked~.collapse-title:after{--tw-content:"−";content:var(--tw-content)}.list .list-row:has(.list-col-grow:first-child){--list-grid-cols:1fr}.list .list-row:has(.list-col-grow:nth-child(2)){--list-grid-cols:minmax(0,auto)1fr}.list .list-row:has(.list-col-grow:nth-child(3)){--list-grid-cols:minmax(0,auto)minmax(0,auto)1fr}.list .list-row:has(.list-col-grow:nth-child(4)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}.list .list-row:has(.list-col-grow:nth-child(5)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}.list .list-row:has(.list-col-grow:nth-child(6)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}.list .list-row>*{grid-row-start:1}.checkbox:disabled{cursor:not-allowed;opacity:.2}.tooltip-bottom>.tooltip-content,.tooltip-bottom[data-tip]:before{transform:translate(-50%)translateY(var(--tt-pos,-.25rem));inset:var(--tt-off)auto auto 50%}.tooltip-bottom:after{transform:translate(-50%)translateY(var(--tt-pos,-.25rem))rotate(180deg);inset:var(--tt-tail)auto auto 50%}.tooltip-left>.tooltip-content,.tooltip-left[data-tip]:before{transform:translate(calc(var(--tt-pos,.25rem) - .25rem))translateY(-50%);inset:50% var(--tt-off)auto auto}.tooltip-left:after{transform:translate(var(--tt-pos,.25rem))translateY(-50%)rotate(-90deg);inset:50% calc(var(--tt-tail) + 1px)auto auto}.tooltip-right>.tooltip-content,.tooltip-right[data-tip]:before{transform:translate(calc(var(--tt-pos,-.25rem) + .25rem))translateY(-50%);inset:50% auto auto var(--tt-off)}.tooltip-right:after{transform:translate(var(--tt-pos,-.25rem))translateY(-50%)rotate(90deg);inset:50% auto auto calc(var(--tt-tail) + 1px)}.tooltip-top>.tooltip-content,.tooltip-top[data-tip]:before{transform:translate(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-off)50%}.tooltip-top:after{transform:translate(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-tail)50%}.toast-end{--toast-x:0;inset-inline:auto 1rem}.dropdown-end{--anchor-h:span-left}.dropdown-end :where(.dropdown-content){inset-inline-end:0;translate:0}[dir=rtl] :is(.dropdown-end :where(.dropdown-content)){translate:0}.dropdown-end.dropdown-left{--anchor-h:left;--anchor-v:span-top}.dropdown-end.dropdown-left .dropdown-content{top:auto;bottom:0}.dropdown-end.dropdown-right{--anchor-h:right;--anchor-v:span-top}.dropdown-end.dropdown-right .dropdown-content{top:auto;bottom:0}.toast-bottom{--toast-y:0;top:auto;bottom:1rem}.input-lg{--size:calc(var(--size-field,.25rem)*12);font-size:max(var(--font-size,1.125rem),1.125rem)}.input-lg[type=number]::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}.input-sm{--size:calc(var(--size-field,.25rem)*8);font-size:max(var(--font-size,.75rem),.75rem)}.input-sm[type=number]::-webkit-inner-spin-button{margin-block:-.5rem;margin-inline-end:-.75rem}.input-xs{--size:calc(var(--size-field,.25rem)*6);font-size:max(var(--font-size,.6875rem),.6875rem)}.input-xs[type=number]::-webkit-inner-spin-button{margin-block:-.25rem;margin-inline-end:-.75rem}.btn-circle{width:var(--size);height:var(--size);border-radius:3.40282e38px;padding-inline:0}.btn-square{width:var(--size);height:var(--size);padding-inline:0}.loading-lg{width:calc(var(--size-selector,.25rem)*7)}.loading-md{width:calc(var(--size-selector,.25rem)*6)}.loading-sm{width:calc(var(--size-selector,.25rem)*5)}.loading-xs{width:calc(var(--size-selector,.25rem)*4)}.badge-ghost{border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content);background-image:none}.badge-outline{color:var(--badge-color);--badge-bg:#0000;background-image:none;border-color:currentColor}.loading-spinner{-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E")}.checkbox-xs{--size:calc(var(--size-selector,.25rem)*4);padding:.125rem}.select-lg{--size:calc(var(--size-field,.25rem)*12);font-size:1.125rem}.select-lg option{padding-block:.375rem;padding-inline:1rem}.select-sm{--size:calc(var(--size-field,.25rem)*8);font-size:.75rem}.select-sm option{padding-block:.25rem;padding-inline:.625rem}.select-xs{--size:calc(var(--size-field,.25rem)*6);font-size:.6875rem}.select-xs option{padding-block:.25rem;padding-inline:.5rem}.table-sm :not(thead,tfoot) tr{font-size:.75rem}.table-sm :where(th,td){padding-block:.5rem;padding-inline:.75rem}.table-xs :not(thead,tfoot) tr{font-size:.6875rem}.table-xs :where(th,td){padding-block:.25rem;padding-inline:.5rem}.badge-lg{--size:calc(var(--size-selector,.25rem)*7);font-size:1rem}.badge-sm{--size:calc(var(--size-selector,.25rem)*5);font-size:.75rem}.badge-xs{--size:calc(var(--size-selector,.25rem)*4);font-size:.625rem}.kbd-sm{--size:calc(var(--size-selector,.25rem)*5);font-size:.75rem}.kbd-xs{--size:calc(var(--size-selector,.25rem)*4);font-size:.625rem}.alert-error{color:var(--color-error-content);--alert-border-color:var(--color-error);--alert-color:var(--color-error)}.alert-info{color:var(--color-info-content);--alert-border-color:var(--color-info);--alert-color:var(--color-info)}.alert-success{color:var(--color-success-content);--alert-border-color:var(--color-success);--alert-color:var(--color-success)}.alert-warning{color:var(--color-warning-content);--alert-border-color:var(--color-warning);--alert-color:var(--color-warning)}.checkbox-primary{color:var(--color-primary-content);--input-color:var(--color-primary)}.progress-accent{color:var(--color-accent)}.progress-error{color:var(--color-error)}.progress-info{color:var(--color-info)}.progress-primary{color:var(--color-primary)}.progress-secondary{color:var(--color-secondary)}.progress-success{color:var(--color-success)}.progress-warning{color:var(--color-warning)}.btn-lg{--fontsize:1.125rem;--btn-p:1.25rem;--size:calc(var(--size-field,.25rem)*12)}.btn-sm{--fontsize:.75rem;--btn-p:.75rem;--size:calc(var(--size-field,.25rem)*8)}.btn-xs{--fontsize:.6875rem;--btn-p:.5rem;--size:calc(var(--size-field,.25rem)*6)}.badge-accent{--badge-color:var(--color-accent);--badge-fg:var(--color-accent-content)}.badge-error{--badge-color:var(--color-error);--badge-fg:var(--color-error-content)}.badge-info{--badge-color:var(--color-info);--badge-fg:var(--color-info-content)}.badge-primary{--badge-color:var(--color-primary);--badge-fg:var(--color-primary-content)}.badge-secondary{--badge-color:var(--color-secondary);--badge-fg:var(--color-secondary-content)}.badge-success{--badge-color:var(--color-success);--badge-fg:var(--color-success-content)}.badge-warning{--badge-color:var(--color-warning);--badge-fg:var(--color-warning-content)}.input-error,.input-error:focus,.input-error:focus-within,.select-error,.select-error:focus,.select-error:focus-within{--input-color:var(--color-error)}.toggle-info:checked,.toggle-info[aria-checked=true]{--input-color:var(--color-info)}.toggle-lg[type=checkbox],.toggle-lg:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*7)}.toggle-primary:checked,.toggle-primary[aria-checked=true]{--input-color:var(--color-primary)}.toggle-sm[type=checkbox],.toggle-sm:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*5)}.toggle-xs[type=checkbox],.toggle-xs:has([type=checkbox]){--size:calc(var(--size-selector,.25rem)*4)}}.prose :where(a.btn:not(.btn-link)):not(:where([class~=not-prose],[class~=not-prose] *)){text-decoration-line:none}.collapse:not(td,tr,colgroup){visibility:revert-layer}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.top-0{top:calc(var(--spacing)*0)}.top-1\/2{top:50%}.top-3{top:calc(var(--spacing)*3)}.right-0{right:calc(var(--spacing)*0)}.bottom-0{bottom:calc(var(--spacing)*0)}.-left-9{left:calc(var(--spacing)*-9)}.left-0{left:calc(var(--spacing)*0)}.left-3{left:calc(var(--spacing)*3)}.left-4{left:calc(var(--spacing)*4)}.z-10{z-index:10}.z-50{z-index:50}.col-span-2{grid-column:span 2/span 2}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.my-1{margin-block:calc(var(--spacing)*1)}.my-3{margin-block:calc(var(--spacing)*3)}.my-6{margin-block:calc(var(--spacing)*6)}.mt-0\.5{margin-top:calc(var(--spacing)*.5)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-1\.5{margin-top:calc(var(--spacing)*1.5)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-3{margin-top:calc(var(--spacing)*3)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-6{margin-top:calc(var(--spacing)*6)}.mr-1{margin-right:calc(var(--spacing)*1)}.mr-1\.5{margin-right:calc(var(--spacing)*1.5)}.mr-auto{margin-right:auto}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-1\.5{margin-bottom:calc(var(--spacing)*1.5)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-8{margin-left:calc(var(--spacing)*8)}.ml-auto{margin-left:auto}.kbd{box-shadow:none}.alert{border-width:var(--border);border-color:var(--alert-border-color,var(--color-base-200))}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-1{height:calc(var(--spacing)*1)}.h-1\.5{height:calc(var(--spacing)*1.5)}.h-2{height:calc(var(--spacing)*2)}.h-3{height:calc(var(--spacing)*3)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-8{height:calc(var(--spacing)*8)}.h-9{height:calc(var(--spacing)*9)}.h-14{height:calc(var(--spacing)*14)}.h-48{height:calc(var(--spacing)*48)}.h-64{height:calc(var(--spacing)*64)}.h-80{height:calc(var(--spacing)*80)}.h-full{height:100%}.h-screen{height:100vh}.max-h-40{max-height:calc(var(--spacing)*40)}.max-h-80{max-height:calc(var(--spacing)*80)}.max-h-96{max-height:calc(var(--spacing)*96)}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-screen{min-height:100vh}.w-1\/2{width:50%}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-8{width:calc(var(--spacing)*8)}.w-12{width:calc(var(--spacing)*12)}.w-16{width:calc(var(--spacing)*16)}.w-20{width:calc(var(--spacing)*20)}.w-24{width:calc(var(--spacing)*24)}.w-32{width:calc(var(--spacing)*32)}.w-40{width:calc(var(--spacing)*40)}.w-48{width:calc(var(--spacing)*48)}.w-52{width:calc(var(--spacing)*52)}.w-60{width:calc(var(--spacing)*60)}.w-64{width:calc(var(--spacing)*64)}.w-\[72px\]{width:72px}.w-full{width:100%}.max-w-24{max-width:calc(var(--spacing)*24)}.max-w-32{max-width:calc(var(--spacing)*32)}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:calc(var(--spacing)*0)}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.translate-x-0{--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-4{--tw-translate-x:calc(var(--spacing)*4);translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-ns-resize{cursor:ns-resize}.cursor-pointer{cursor:pointer}.resize{resize:both}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*8)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*8)*calc(1 - var(--tw-space-y-reverse)))}.gap-x-6{column-gap:calc(var(--spacing)*6)}.gap-y-0\.5{row-gap:calc(var(--spacing)*.5)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-box{border-radius:var(--radius-box)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-b-lg{border-bottom-right-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-base-100{border-color:var(--color-base-100)}.border-base-200{border-color:var(--color-base-200)}.border-base-300,.border-base-300\/50{border-color:var(--color-base-300)}@supports (color:color-mix(in lab,red,red)){.border-base-300\/50{border-color:color-mix(in oklab,var(--color-base-300)50%,transparent)}}.border-base-content\/10{border-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.border-base-content\/10{border-color:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.border-primary\/30{border-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.border-primary\/30{border-color:color-mix(in oklab,var(--color-primary)30%,transparent)}}.border-primary\/50{border-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.border-primary\/50{border-color:color-mix(in oklab,var(--color-primary)50%,transparent)}}.border-warning\/30{border-color:var(--color-warning)}@supports (color:color-mix(in lab,red,red)){.border-warning\/30{border-color:color-mix(in oklab,var(--color-warning)30%,transparent)}}.border-l-accent{border-left-color:var(--color-accent)}.border-l-info{border-left-color:var(--color-info)}.border-l-warning{border-left-color:var(--color-warning)}.bg-base-100{background-color:var(--color-base-100)}.bg-base-200,.bg-base-200\/50{background-color:var(--color-base-200)}@supports (color:color-mix(in lab,red,red)){.bg-base-200\/50{background-color:color-mix(in oklab,var(--color-base-200)50%,transparent)}}.bg-base-200\/60{background-color:var(--color-base-200)}@supports (color:color-mix(in lab,red,red)){.bg-base-200\/60{background-color:color-mix(in oklab,var(--color-base-200)60%,transparent)}}.bg-base-300,.bg-base-300\/50{background-color:var(--color-base-300)}@supports (color:color-mix(in lab,red,red)){.bg-base-300\/50{background-color:color-mix(in oklab,var(--color-base-300)50%,transparent)}}.bg-base-content\/30{background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.bg-base-content\/30{background-color:color-mix(in oklab,var(--color-base-content)30%,transparent)}}.bg-base-content\/50{background-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.bg-base-content\/50{background-color:color-mix(in oklab,var(--color-base-content)50%,transparent)}}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black)50%,transparent)}}.bg-error,.bg-error\/10{background-color:var(--color-error)}@supports (color:color-mix(in lab,red,red)){.bg-error\/10{background-color:color-mix(in oklab,var(--color-error)10%,transparent)}}.bg-info{background-color:var(--color-info)}.bg-primary{background-color:var(--color-primary)}.bg-primary-content\/20{background-color:var(--color-primary-content)}@supports (color:color-mix(in lab,red,red)){.bg-primary-content\/20{background-color:color-mix(in oklab,var(--color-primary-content)20%,transparent)}}.bg-primary\/10{background-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/10{background-color:color-mix(in oklab,var(--color-primary)10%,transparent)}}.bg-secondary{background-color:var(--color-secondary)}.bg-success,.bg-success\/10{background-color:var(--color-success)}@supports (color:color-mix(in lab,red,red)){.bg-success\/10{background-color:color-mix(in oklab,var(--color-success)10%,transparent)}}.bg-transparent{background-color:#0000}.bg-warning,.bg-warning\/5{background-color:var(--color-warning)}@supports (color:color-mix(in lab,red,red)){.bg-warning\/5{background-color:color-mix(in oklab,var(--color-warning)5%,transparent)}}.bg-warning\/10{background-color:var(--color-warning)}@supports (color:color-mix(in lab,red,red)){.bg-warning\/10{background-color:color-mix(in oklab,var(--color-warning)10%,transparent)}}.stroke-base-content\/10{stroke:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.stroke-base-content\/10{stroke:color-mix(in oklab,var(--color-base-content)10%,transparent)}}.stroke-current{stroke:currentColor}.p-0{padding:calc(var(--spacing)*0)}.p-1\.5{padding:calc(var(--spacing)*1.5)}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-5{padding:calc(var(--spacing)*5)}.p-6{padding:calc(var(--spacing)*6)}.px-1{padding-inline:calc(var(--spacing)*1)}.px-1\.5{padding-inline:calc(var(--spacing)*1.5)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-2\.5{padding-inline:calc(var(--spacing)*2.5)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-0\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-2\.5{padding-block:calc(var(--spacing)*2.5)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-8{padding-block:calc(var(--spacing)*8)}.py-12{padding-block:calc(var(--spacing)*12)}.pt-3{padding-top:calc(var(--spacing)*3)}.pt-4{padding-top:calc(var(--spacing)*4)}.pr-4{padding-right:calc(var(--spacing)*4)}.pb-2{padding-bottom:calc(var(--spacing)*2)}.pb-20{padding-bottom:calc(var(--spacing)*20)}.pl-3{padding-left:calc(var(--spacing)*3)}.pl-4{padding-left:calc(var(--spacing)*4)}.pl-6{padding-left:calc(var(--spacing)*6)}.pl-10{padding-left:calc(var(--spacing)*10)}.pl-12{padding-left:calc(var(--spacing)*12)}.text-center{text-align:center}.text-left{text-align:left}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-accent{color:var(--color-accent)}.text-base-content,.text-base-content\/20{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/20{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}.text-base-content\/30{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/30{color:color-mix(in oklab,var(--color-base-content)30%,transparent)}}.text-base-content\/40{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/40{color:color-mix(in oklab,var(--color-base-content)40%,transparent)}}.text-base-content\/50{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/50{color:color-mix(in oklab,var(--color-base-content)50%,transparent)}}.text-base-content\/60{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/60{color:color-mix(in oklab,var(--color-base-content)60%,transparent)}}.text-base-content\/70{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/70{color:color-mix(in oklab,var(--color-base-content)70%,transparent)}}.text-base-content\/80{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/80{color:color-mix(in oklab,var(--color-base-content)80%,transparent)}}.text-base-content\/90{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.text-base-content\/90{color:color-mix(in oklab,var(--color-base-content)90%,transparent)}}.text-error{color:var(--color-error)}.text-error-content{color:var(--color-error-content)}.text-gray-400{color:var(--color-gray-400)}.text-green-400{color:var(--color-green-400)}.text-info{color:var(--color-info)}.text-info-content{color:var(--color-info-content)}.text-orange-400{color:var(--color-orange-400)}.text-pink-400{color:var(--color-pink-400)}.text-primary{color:var(--color-primary)}.text-primary-content{color:var(--color-primary-content)}.text-primary\/60{color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.text-primary\/60{color:color-mix(in oklab,var(--color-primary)60%,transparent)}}.text-primary\/70{color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.text-primary\/70{color:color-mix(in oklab,var(--color-primary)70%,transparent)}}.text-purple-400{color:var(--color-purple-400)}.text-secondary{color:var(--color-secondary)}.text-sky-400{color:var(--color-sky-400)}.text-success{color:var(--color-success)}.text-success-content{color:var(--color-success-content)}.text-violet-400{color:var(--color-violet-400)}.text-warning{color:var(--color-warning)}.text-warning-content{color:var(--color-warning-content)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-primary{--tw-ring-color:var(--color-primary)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}@layer daisyui.l1{.btn-ghost:not(.btn-active,:hover,:active:focus,:focus-visible,input:checked:not(.filter .btn)){--btn-shadow:"";--btn-bg:#0000;--btn-border:#0000;--btn-noise:none}.btn-ghost:not(.btn-active,:hover,:active:focus,:focus-visible,input:checked:not(.filter .btn)):not(:disabled,[disabled],.btn-disabled){--btn-fg:var(--btn-color,currentColor);outline-color:currentColor}@media(hover:none){.btn-ghost:not(.btn-active,:active,:focus-visible,input:checked:not(.filter .btn)):hover{--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color,currentColor);--btn-border:#0000;--btn-noise:none;outline-color:currentColor}}.btn-outline:not(.btn-active,:hover,:active:focus,:focus-visible,input:checked:not(.filter .btn),:disabled,[disabled],.btn-disabled){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}@media(hover:none){.btn-outline:not(.btn-active,:active,:focus-visible,input:checked:not(.filter .btn)):hover{--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}}}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.first\:mt-0:first-child{margin-top:calc(var(--spacing)*0)}@media(hover:hover){.hover\:scale-\[1\.02\]:hover{scale:1.02}.hover\:bg-base-200:hover{background-color:var(--color-base-200)}.hover\:bg-base-300:hover{background-color:var(--color-base-300)}.hover\:text-error:hover{color:var(--color-error)}.hover\:text-primary:hover{color:var(--color-primary)}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-sm:hover{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}@media(min-width:40rem){.sm\:block{display:block}}@media(min-width:48rem){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:64rem){.lg\:col-span-2{grid-column:span 2/span 2}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.\[\&\>\*\]\:h-full>*{height:100%}}:root{--layout-sidebar-width:256px}.dashboard-layout{background:var(--root-bg)}.dashboard-sidebar{background:var(--layout-sidebar-background);border-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.dashboard-sidebar{border-color:color-mix(in srgb,var(--color-base-content)8%,transparent)}}.dashboard-topbar{background:var(--layout-topbar-background);border-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.dashboard-topbar{border-color:color-mix(in srgb,var(--color-base-content)8%,transparent)}}.sidebar-header{border-bottom-style:var(--tw-border-style);padding-inline:calc(var(--spacing)*4);padding-block:calc(var(--spacing)*3);border-bottom-width:1px;border-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.sidebar-header{border-color:color-mix(in srgb,var(--color-base-content)6%,transparent)}}.sidebar-header-title{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.sidebar-header-title{color:color-mix(in srgb,var(--color-base-content)50%,transparent)}}.sidebar-section{padding-inline:calc(var(--spacing)*3);padding-block:calc(var(--spacing)*2)}.sidebar-section-title{margin-bottom:calc(var(--spacing)*2);padding-inline:calc(var(--spacing)*1);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.sidebar-section-title{color:color-mix(in srgb,var(--color-base-content)45%,transparent)}}.nav-item{cursor:pointer;align-items:center;gap:calc(var(--spacing)*2);border-radius:var(--radius-lg);padding-inline:calc(var(--spacing)*2.5);padding-block:calc(var(--spacing)*2);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;transition-duration:.15s;display:flex}.nav-item:hover:not(.active){background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.nav-item:hover:not(.active){background:color-mix(in srgb,var(--color-base-content)5%,transparent)}}.nav-item.active{background:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.nav-item.active{background:color-mix(in srgb,var(--color-primary)15%,transparent)}}.nav-item.active{box-shadow:inset 0 0 0 1px var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.nav-item.active{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-primary)30%,transparent)}}.memory-card{border-radius:var(--radius-lg);padding:calc(var(--spacing)*3);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;background:var(--color-base-content);transition-duration:.15s}@supports (color:color-mix(in lab,red,red)){.memory-card{background:color-mix(in srgb,var(--color-base-content)4%,transparent)}}.memory-card:hover{background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.memory-card:hover{background:color-mix(in srgb,var(--color-base-content)6%,transparent)}}.stats-card{border-radius:var(--radius-lg);padding:calc(var(--spacing)*4);background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.stats-card{background:color-mix(in srgb,var(--color-base-content)4%,transparent)}}.property-card{border-radius:var(--radius-lg);padding:calc(var(--spacing)*3);background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.property-card{background:color-mix(in srgb,var(--color-base-content)4%,transparent)}}.property-label{margin-bottom:calc(var(--spacing)*1);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--color-base-content);display:block}@supports (color:color-mix(in lab,red,red)){.property-label{color:color-mix(in srgb,var(--color-base-content)55%,transparent)}}.settings-collapse{border-radius:var(--radius-lg);background:var(--color-base-content);overflow:hidden}@supports (color:color-mix(in lab,red,red)){.settings-collapse{background:color-mix(in srgb,var(--color-base-content)3%,transparent)}}.settings-collapse .collapse-title{min-height:calc(var(--spacing)*0);padding-block:calc(var(--spacing)*2.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.status-indicator{align-items:center;gap:calc(var(--spacing)*1.5);padding-inline:calc(var(--spacing)*2);padding-block:calc(var(--spacing)*.5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);border-radius:3.40282e38px;display:inline-flex}.status-indicator.online{background:var(--color-success)}@supports (color:color-mix(in lab,red,red)){.status-indicator.online{background:color-mix(in srgb,var(--color-success)15%,transparent)}}.status-indicator.online{color:var(--color-success)}.status-indicator.offline{background:var(--color-error)}@supports (color:color-mix(in lab,red,red)){.status-indicator.offline{background:color-mix(in srgb,var(--color-error)15%,transparent)}}.status-indicator.offline{color:var(--color-error)}.status-indicator.processing{background:var(--color-warning)}@supports (color:color-mix(in lab,red,red)){.status-indicator.processing{background:color-mix(in srgb,var(--color-warning)15%,transparent)}}.status-indicator.processing{color:var(--color-warning)}@layer daisyui.l1.l2.l3{.search-input{cursor:text;border:var(--border)solid #0000;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--color-base-100);vertical-align:middle;white-space:nowrap;width:clamp(3rem,20rem,100%);height:var(--size);font-size:max(var(--font-size,.875rem),.875rem);touch-action:manipulation;border-color:var(--input-color);box-shadow:0 1px var(--input-color) inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1)) inset;border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.5rem;padding-inline:.75rem;display:inline-flex;position:relative}@supports (color:color-mix(in lab,red,red)){.search-input{box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000) inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1)) inset}}.search-input{--size:calc(var(--size-field,.25rem)*10);--input-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.search-input{--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000)}}.search-input:where(input){display:inline-flex}.search-input :where(input){-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#0000;border:none;width:100%;height:100%;display:inline-flex}.search-input :where(input):focus,.search-input :where(input):focus-within{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.search-input :where(input):focus,.search-input :where(input):focus-within{outline-offset:2px;outline:2px solid #0000}}.search-input :where(input[type=url]),.search-input :where(input[type=email]){direction:ltr}.search-input :where(input[type=date]){display:inline-flex}.search-input:focus,.search-input:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px var(--input-color)}@supports (color:color-mix(in lab,red,red)){.search-input:focus,.search-input:focus-within{box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)}}.search-input:focus,.search-input:focus-within{outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}@media(pointer:coarse){@supports (-webkit-touch-callout:none){.search-input:focus,.search-input:focus-within{--font-size:1rem}}}.search-input:has(>input[disabled]),.search-input:is(:disabled,[disabled]),fieldset:disabled .search-input{cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.search-input:has(>input[disabled]),.search-input:is(:disabled,[disabled]),fieldset:disabled .search-input{color:color-mix(in oklab,var(--color-base-content)40%,transparent)}}:is(.search-input:has(>input[disabled]),.search-input:is(:disabled,[disabled]),fieldset:disabled .search-input)::placeholder{color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){:is(.search-input:has(>input[disabled]),.search-input:is(:disabled,[disabled]),fieldset:disabled .search-input)::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}}.search-input:has(>input[disabled]),.search-input:is(:disabled,[disabled]),fieldset:disabled .search-input{box-shadow:none}.search-input:has(>input[disabled])>input[disabled]{cursor:not-allowed}.search-input::-webkit-date-and-time-value{text-align:inherit}.search-input[type=number]::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}.search-input::-webkit-calendar-picker-indicator{position:absolute;inset-inline-end:.75em}.search-input:has(>input[type=date]) :where(input[type=date]){webkit-appearance:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex}.search-input:has(>input[type=date]) input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;width:1em;height:1em;position:absolute;inset-inline-end:.75em}}@layer daisyui.l1.l2{.search-input{--size:calc(var(--size-field,.25rem)*8);font-size:max(var(--font-size,.75rem),.75rem)}.search-input[type=number]::-webkit-inner-spin-button{margin-block:-.5rem;margin-inline-end:-.75rem}.badge-observation{--badge-color:var(--color-info);--badge-fg:var(--color-info-content)}.badge-summary{--badge-color:var(--color-warning);--badge-fg:var(--color-warning-content)}.badge-prompt{--badge-color:var(--color-secondary);--badge-fg:var(--color-secondary-content)}.badge-bugfix{--badge-color:var(--color-error);--badge-fg:var(--color-error-content)}.badge-feature{--badge-color:var(--color-success);--badge-fg:var(--color-success-content)}.badge-refactor{--badge-color:var(--color-accent);--badge-fg:var(--color-accent-content)}.badge-discovery{--badge-color:var(--color-info);--badge-fg:var(--color-info-content)}.badge-decision{--badge-color:var(--color-warning);--badge-fg:var(--color-warning-content)}.badge-change{--badge-color:var(--color-secondary);--badge-fg:var(--color-secondary-content)}}.search-input{border-style:var(--tw-border-style);background:var(--color-base-content);border-width:1px;width:100%}@supports (color:color-mix(in lab,red,red)){.search-input{background:color-mix(in srgb,var(--color-base-content)4%,transparent)}}.search-input{border-color:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.search-input{border-color:color-mix(in srgb,var(--color-base-content)10%,transparent)}}.search-input:focus{border-color:var(--color-primary);background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){.search-input:focus{background:color-mix(in srgb,var(--color-base-content)6%,transparent)}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--color-base-content)15%,transparent)}}::-webkit-scrollbar-thumb{border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-base-content)}@supports (color:color-mix(in lab,red,red)){::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--color-base-content)25%,transparent)}}@keyframes rating{0%,40%{filter:brightness(1.05)contrast(1.05);scale:1.1}}@keyframes dropdown{0%{opacity:0}}@keyframes radio{0%{padding:5px}50%{padding:3px}}@keyframes toast{0%{opacity:0;scale:.9}to{opacity:1;scale:1}}@keyframes rotator{89.9999%,to{--first-item-position:0 0%}90%,99.9999%{--first-item-position:0 calc(var(--items)*100%)}to{translate:0 -100%}}@keyframes skeleton{0%{background-position:150%}to{background-position:-50%}}@keyframes menu{0%{opacity:0}}@keyframes progress{50%{background-position-x:-115%}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}

_|SZ_IFFQ#vj z4^vomk&zXU>i|6e&qqa#Hcg+5-kutD{Wh=;*b}{upE>>VDg!xjlLR>f_>ck0UKRk3 zpIB?#>={RjB*b~U^7`{(@nvXwn}M_>jaGc|Ivg0M)xgt(n=%g>eXh2U3egfWp~E-y zzg<_i-QXQTmF%UBex6;4E`pHajHIAw8+nFcbiKP)|x?xb$g7W^=Oso9?D`WjD{jAg&{Iy z#N@mvd^iqzJFAEg(eQ=Ox;3n06_VC>aY0Szr@d;9Zzbf|rQ6IHZnYfr?*Iw53a+!D zVG${SFp5qJP6n(}gW$j&x(y~D(zEh5tqW@Rz!~C5Eq(tFImv(q_rX~SxP{@c?2XAP z7u}M)uFofeWz@{g-?zmtA+6vQ;LX&#Jr&}|M3>Lzq0Nl5{$clKFM#S>@iSyQujU$O z3tGoR2z6ZF8W8R%Lz1JHRL3;&k^{{IqYUyNYT;mwO&wcHMsrd)JDpAI-54ssfZ`xC zd1R(*H9qB!mY6m(=g0N*nIoTbYs=z$37D+xnQR;4sM+tLP&urICU_s#omNdqvq@C4 z$AqB;Qrfv|3o}WBXiUT%HWj6^%Pq8TcUgslfChw->;=5e9&4?P-$LUC(YnUs2ZiTd zBk}4p#(sw_rOl$mZa^5#*#ab&UY)66$?WIL>~pDP(vxrnn<@62@AQ0)Mmys0w!i+# zbl85HnzpqgQOuEMu&n>L&Cdmjf)o-HsyI)+8=hi83DwK)UV;JnT2{~fZAs63QA-tEj+3tB zGCeU5+TujUX78lXn?!zioFnocbrq7$1nsOa(S>}nDuq0%^f0?&PE$kdS92HIF0Bwi z7MxVz%kebaU0*-h?s%L`tFn}zQ}ciE6!KN22fYIM@LBaC)4i?#Gi2gXN3yuM(+ms!YFVtoS<14=&)0aJ3q32ag+Y=scKrzo zotx>HE}+j>6$pL1PBeAZwBitEz4Q<5HN#;Btpm1)p^JBO7B`aZp3m zGASzvK>3nDB7q32Ganj;ULl)n={O5sk65_@Y`n@5oS&L0(okh~l}L&(kM%7zV5SO9 zlxQ+T^$9p<&_O1Rfvi6YFKBkgI*+o4`d&WK){mriX5+M+ce1-N$Pq;l0M71Ros(Oj literal 11398 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 UyE=)tKP0vF+omyrTnc?C^ZrI1#sB~S diff --git a/launcher/model_config.py b/launcher/model_config.py index 787eedae09bc36ae589c48f87152aded68722fa2..9cf8bdd7ff263e12b96bbc66e8f62c4f6f0b7129 100644 GIT binary patch literal 4610 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 diff --git a/launcher/settings_injector.py b/launcher/settings_injector.py index 9ed4f62855bfc96dfc774e21ab377fcb3dfd6886..eeb328cbb7ff966e5064efd5f509ead4ef027548 100644 GIT binary patch literal 8857 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 bL4krvkc9U>l8%&0*w|2O1njtshwsTd-6s<` literal 7957 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 Lg$}bVXKuvJAyr;G diff --git a/launcher/statusline/tips.py b/launcher/statusline/tips.py new file mode 100644 index 0000000000000000000000000000000000000000..e8d2f09ad89ca13417c7734b7296fc4cb05f3754 GIT binary patch literal 5532 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

Agent ModelDefault
- {AGENT_LABELS[agent] ?? agent} + + {AGENT_LABELS[agent] ?? agent} + updateAgent(agent, model)} id={`agent-${agent}`} /> + +