@lineman-io/mcp 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/.claude-plugin/plugin.json +27 -0
  2. package/README.md +86 -0
  3. package/dist/main.js +2 -0
  4. package/hooks/core/build-snapshot.mjs +1 -0
  5. package/hooks/core/extract-events.mjs +1 -0
  6. package/hooks/core/ingest-claude-md.mjs +1 -0
  7. package/hooks/core/mcp-ready.mjs +1 -0
  8. package/hooks/core/narrative.mjs +1 -0
  9. package/hooks/core/routing.mjs +1 -0
  10. package/hooks/core/security/chain-split.mjs +1 -0
  11. package/hooks/core/security/decide.mjs +1 -0
  12. package/hooks/core/security/patterns.mjs +1 -0
  13. package/hooks/core/security/policies.mjs +1 -0
  14. package/hooks/core/security/shell-escape.mjs +1 -0
  15. package/hooks/core/session-cleanup.mjs +1 -0
  16. package/hooks/core/session-db.mjs +1 -0
  17. package/hooks/core/stdin.mjs +1 -0
  18. package/hooks/core/summary-envelope.mjs +1 -0
  19. package/hooks/core/tool-aliases.mjs +1 -0
  20. package/hooks/core/tool-naming.mjs +1 -0
  21. package/hooks/core/truncate.mjs +1 -0
  22. package/hooks/ensure-deps.mjs +1 -0
  23. package/hooks/file-changed.mjs +2 -0
  24. package/hooks/hooks.json +230 -0
  25. package/hooks/lineman-call.mjs +1 -0
  26. package/hooks/metrics.mjs +2 -0
  27. package/hooks/permission-request.mjs +2 -0
  28. package/hooks/plugin-paths.mjs +1 -0
  29. package/hooks/post-compact.mjs +2 -0
  30. package/hooks/post-tool-use-failure.mjs +2 -0
  31. package/hooks/post-tool-use.mjs +2 -0
  32. package/hooks/pre-compact.mjs +2 -0
  33. package/hooks/pre-tool-use.mjs +2 -0
  34. package/hooks/runpod-state-reader.mjs +1 -0
  35. package/hooks/sentry-hook.mjs +1 -0
  36. package/hooks/session-start.mjs +2 -0
  37. package/hooks/settings.json +95 -0
  38. package/hooks/stop.mjs +2 -0
  39. package/hooks/suppress-stderr.mjs +1 -0
  40. package/hooks/user-prompt-submit.mjs +2 -0
  41. package/package.json +47 -0
  42. package/skills/doctor/SKILL.md +19 -0
  43. package/skills/lineman/SKILL.md +23 -0
  44. package/skills/stats/SKILL.md +13 -0
  45. package/start.mjs +31 -0
@@ -0,0 +1,27 @@
1
+ {
2
+ "name": "lineman",
3
+ "version": "2.0.0",
4
+ "description": "AI-powered code assistant that uses a secondary LLM to handle data-heavy tasks — saves context window tokens on large-file reads, error classification, and build-output triage.",
5
+ "author": {
6
+ "name": "Lineman",
7
+ "url": "https://lineman.io"
8
+ },
9
+ "homepage": "https://lineman.io",
10
+ "repository": "https://github.com/lineman-io/lineman-mono",
11
+ "license": "UNLICENSED",
12
+ "keywords": [
13
+ "mcp",
14
+ "context-window",
15
+ "secondary-llm",
16
+ "token-saving"
17
+ ],
18
+ "skills": "./skills/",
19
+ "mcpServers": {
20
+ "core": {
21
+ "command": "node",
22
+ "args": [
23
+ "${CLAUDE_PLUGIN_ROOT}/start.mjs"
24
+ ]
25
+ }
26
+ }
27
+ }
package/README.md ADDED
@@ -0,0 +1,86 @@
1
+ # @lineman-io/mcp
2
+
3
+ Lineman — AI-powered code assistant that routes data-heavy work (large-file reads, error classification, build-output triage) to a secondary LLM so your primary Claude context window stays free for reasoning.
4
+
5
+ ## Install (primary — Claude Code plugin)
6
+
7
+ The plugin bundles the MCP server, lifecycle hooks, and skills as a single unit:
8
+
9
+ ```
10
+ /plugin marketplace add lineman-io/lineman-mono
11
+ /plugin install lineman@lineman
12
+ /reload-plugins
13
+ ```
14
+
15
+ Verify the install:
16
+
17
+ ```
18
+ /lineman:doctor
19
+ ```
20
+
21
+ All checks should be green. If any fail, the command prints the remediation step inline (usually: run `npx lineman-mcp auth` to set an API token).
22
+
23
+ ## Install (alternative — MCP only)
24
+
25
+ <details>
26
+ <summary>Raw MCP install without hooks or skills</summary>
27
+
28
+ If you only want the `assist` tool and don't want Lineman's lifecycle hooks or auto-routing skill, register the MCP server directly:
29
+
30
+ ```
31
+ claude mcp add lineman -- npx -y @lineman-io/mcp
32
+ ```
33
+
34
+ This gives you a callable tool but no automatic routing — you must invoke Lineman explicitly from prompts. Most users should prefer the plugin install above.
35
+
36
+ </details>
37
+
38
+ ## Usage
39
+
40
+ Once the plugin is installed, the `lineman` skill auto-loads when your prompt matches a data-heavy trigger ("read the file", "classify error", "summarize build output", etc.) and routes the work through `mcp__plugin_lineman_core__assist`. Results come back tagged `[[LM_SUMMARY]]` / `[[LM_VERBATIM]]` / `[[LM_CONTEXT]]` / `[[LM_RESULT]]` and should be treated as authoritative.
41
+
42
+ Two user-invocable slash commands:
43
+
44
+ | Command | Purpose |
45
+ |---------|---------|
46
+ | `/lineman:doctor` | Diagnostic checklist — MCP reachable, token valid, tier recognized, hooks installed, channels capability, last-call latency. |
47
+ | `/lineman:stats` | Session metrics — total `assist` calls, input tokens saved, output tokens consumed, average latency, savings ratio, and a by-task-type breakdown. |
48
+
49
+ ## Configuration
50
+
51
+ User config lives at `~/.goodex/lineman.json`:
52
+
53
+ ```json
54
+ {
55
+ "serverUrl": "https://api.lineman.sh",
56
+ "apiToken": "<set by npx lineman-mcp auth>",
57
+ "userId": "<set after auth>",
58
+ "tier": "free"
59
+ }
60
+ ```
61
+
62
+ Environment variables take precedence:
63
+
64
+ | Variable | Overrides |
65
+ |----------|-----------|
66
+ | `LINEMAN_SERVER_URL` | `serverUrl` |
67
+ | `LINEMAN_API_TOKEN` | `apiToken` |
68
+
69
+ ### Auth at use time
70
+
71
+ Lineman MCP tools (`assist`, `edit_file`) always register, even before authentication. Tool calls return a structured `not_authenticated` error envelope (`{ error: { reason: "not_authenticated", message, auth_url } }`) until `LINEMAN_API_TOKEN` is set (or `apiToken` is written to `~/.goodex/lineman.json` via `npx lineman-mcp auth`). This means a fresh `claude --plugin-dir apps/lineman-mcp` session always sees the tools listed — the model gets a clear, actionable error pointing at the auth flow rather than silently missing tools — and the moment the env var lands, subsequent tool calls succeed without restarting the MCP server.
72
+
73
+ Runtime state (metrics, sentinels, pending prompts) is written to `$CLAUDE_PLUGIN_DATA/` by the plugin — not to `~/.goodex/`. In dev / tests without Claude Code present, it falls back to `$TMPDIR/lineman/`.
74
+
75
+ ## Troubleshooting
76
+
77
+ Run `/lineman:doctor`. It probes the MCP server, the API token, the configured tier, hook installation, channels capability, and last-call latency, and prints `fail` entries with actionable details (e.g. "no API token in ~/.goodex/lineman.json"). If everything is green but results look wrong, check `$CLAUDE_PLUGIN_DATA/lineman-metrics.jsonl` for per-call records.
78
+
79
+ ## Requirements
80
+
81
+ - Node.js >= 20
82
+ - Claude Code CLI with plugin support
83
+
84
+ ## License
85
+
86
+ Proprietary — see [lineman.io](https://lineman.io) for terms.
package/dist/main.js ADDED
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ function _0x2a16(){const _0x16c332=['WQW0CxCpfmoU','WPJcLSoL','aZVdSmkAW50xiSkQ','WRPDWPNdKCkOW7CCW6ddK8o6s2OGegFcJvNdGgydF8ktheBdKSo7','WQivF8kDu8kwmGzsE07dL8o9oSkLW6VcUw7dRsBcSXW','W7jdWPRcNq7cPG','cbdcHCk9WPFdQq','ecaodmot','WQ59WQtcMX7cNSo+','tmkaumkXWQ8JymoAwSklW68iW4qA','W4JdQ8k9WRKqrJhdUCkLrHBdOCo0gxSkW7NcH8kw','wZpcGSoqnCk1FNDolfLG','gr3dVZxcPa','dCkYW5O','W7qBjSk2W5qxW4XEW6yt','qmkSDapcLahdSZtdMxOb','W4yQW6RdUtNcMSk3fsWEm8oLz8kMgYrIFSkGWObBW7G/sSkLW4FcV3bEvG','W73dKapcNCka','WQP9ExO','fGhcG8k1WP3dR8o2W5C','W4ddTCkKWO8iCdFdUmk/','WOlcLSo9WQC','matcIKZcQSkbW7BdIa','lJ0FWQDaW7vZiwydW5S','dcy7mCoF','W6yBc8kkW4e','w17dMG','W7LAnSkumWqq','lmksW7PdudBcRvxdPmkoW7ldMNBdQdNdQSoT','naBcMSk5WPC','hW3cHmkGWOVdP8oGW4n1BshdKq','WOpcI8o+','W7ldSSkRWPSN','WQ4OfxJdOSk3WOW','WQ5sCCo+WQy','BSk9WRJdTmk2','lvnHW7GIhSoI','E8onoSodWQ3dU8kGW6hcVu7dQftcOSomySk4WQCVewb1','ymk1W7/dRSkGrLJcGokaHefVeYXYW4DUWR47','WQBdI8oPyG','W5JcI8oHWR8','xCkWxHpcJHRdIs/dNNygWQldNLLq','W4X1pmkrWOFcSSow','ztBdNmkHxG','WRyMqmkHrq','jCklW5RdJ8km','fGhcHmkNWPJdQCoN','WPPcx8kmbaK3WPe4pbpdMwNcLSo5Fmkn','Av46W4WadHW','WPldImkQWQVdHmorWQRcHtm','W5n1kCkhWRhcT8omB8om','W75rWOtcS8kO','W7ZdL8oWE8k/','a1BcLCoOlq','WRy8WQ7dVq4TWQfWWQpcP3bi','ACoIvW/dHhZcOfG','WPrOumkNhW','kHtdSLtcSmofW6dcT8oHDsDLy2RdVa','r8kZCW/cJG','W5j1oSkvWOVcO8oWCCof','wqVdJ8kLW4mOmG','fmoRCW/cLbFdN2e','W7ZdPtlcUmkr','lJ7cU8k8WPO','CmoehmkO','WOpdTSk0WQegDJ7dICkMuWpcRq','W43cGsH4W4xcLr3cMmosxmkiW5Pj','WRv8Dq','WOVdGCoKzmoZW4/cHSkvWQf6WRqMWORdO8o6W53cVmoPzmkSWRdcHmk5ufzobKWKFCoLDNXMkmkTdmkFfCkZWQDhf8oAzI17emkhW63dUCo7qG','BuawW6JdSSo1avy9','WPyWWRhdQWq','WRKzhCopWOekpH4QWRFcUcxcMgRdK8kT','CCkxWQTqWRu','dGJdQutcRCo8zNNcG8kTyd1ZWPGqj0ldVq','WQzzrCky','WOddJ8kRWQVdMCoc','WRCOeN7dLmkMWOOi','WR3cKN3dQW3dJmkIka','WRFdISo4ySkmW6xcHSkxWQeTW7u4W4VdTSoXWP7cTSoVACk5W6dcImoQeKLufLCKDW','W4RcIYP4W4e','xLtdLfG','WQ4Ae8oqW5WxnWWqWRZcUqJcGMS','W4OPW4FdTKO','WQ1HvMRdOWldSSklW4hcG8o0lb3cOgC','lmk1W7VdN8kXwGxdGxW+FqKKCmosmCoQCmkagWlcV8kKrSk7aaW','mrNdRwxcVCoEW7u','caBdQYBcIa','eHpdTLhcSmk1fIpcNmkHAG','W7fjWPZcGGBcQCo4','fZNdQMdcRG','drm7emo5bfxcHNpdSsrLW5NdSmo6pmkxnvZdLmobF2foW68xdSk1b8keW4RdRCoke2/cOaib','W71ma8kukayA','WQbSjSk+W6jJ','WRHxx8kv','W4XFWQZcMrO','WOZdMCkSWQpdJSoxWRFcGG','eseDWPHh','jurNW6u5','WRnLzW','wCkMBbxcMXxdIq','WQiuC8ker8kx','WQDJjSksW74','W6ywamoEbW','W6ZdGrxdHmoq','A0GqW6/dImoGhgu1smk5WONcOW','bCklW7vxza','WQ8Od23dV8k8','wXdcMmk/WPZdOmoXWP8','rIJdKmoyk8k7n2vy','E8oimCo5WRRdRCkOW6JcTG','W7xdMr7cTSkCFeZdPCkpW4xcJgC9ECodeGvWWPNdQdOfjSoSWRfgW4G','WQD6yNhdVdxdTmkkW4dcHmoJ','ALewW7ddIComgK82','W6ialSk8W7K','cCkEs8kWWRGJh8kgaW','WRjMBCkGg8k0W63cNmksW57dOSocW5dcJSo3W45FW54zWRNcSmo1WRFcVglcUSkNj8ohxCoDW5fVW4zi','W6RdGqhcGmkgDfhdOSkA','WPHlDCkGjG','W754pCkHjvldVCovamo9Dmob','WRKFfSkdkrndWOKsDxGRh8kbxmkAW7jkWOW3ACoL4OwtxbpcJI17W7TuAmkFWRqTtglcQmoCWRnRjZ8jmCo+WQKi','w8kttmk6WRi9','BCoug8kYWRFcMCk1','W4ZcIr5oW4y','tI/cGmkxkSopkdK','W4rIoSkmWPW','WQOFbSkdW50Bj1G/WRJcUqNcIdNcM8oKgLyogKvQW5LdW73dGG','WQ00A2ishW','WQDNEMRdUWVdO8kmW4pcJ8oipWZcTNBdRmoRcSo4W69nuSkk','WRKxaCoiW7akkauQ','WPi8WRpdVq','xCkQpSoMW4ChuCo5WQJdPuVcJ08','aY7dT8k+W4fgAmoRW4y1WRBcQ2RdSa7cPvGCqCoCtMK','fXpdQsJcIaq','lai7amoLgq','oxFcMG','FeSqW7dcG8o3auKOsmk5WONcOW','wtNdJmowmCk0','WQ3dJSkqWQJdVW','WOlcSe3dQWK','cHNdS1pcQSkU','WOxdNCkSWQm','WQpcGMRdUGhdNmkI','F1KRW4ax','WR8te8ohW7ayobKQWOBcRq/cGxu','WP0jFmkvx8kfnvX2bw7cMCo4iCk0W4ZcVwtdPtFcUaToW7NcQXFcGCkpiSoheCkLW5G','W4JcHYPPW7/cNqJcS8ow','r8kRFHBcNXy','WQaHBfOtgCo8W6tcJmkPhdNcNSkdWQu','uWRdLSoHda','WPe9WQldQaq8','W7Hap8oDhW','fHNdOYRcKa','utxdKCobjmkOpwTYm05RW4yDW7D8xW','q8otimkSWO0','WQiKBmo4BWNdG8oX','gaVcK8kXWQBdVSoJW4jPwZZdMSk3rd0l','ErxdRmo0cmkDefXYaM5yW6iIW4fhASoS','rSkMFGlcPrtdHs3dJW','WR3dGSo1sCkGW7FcNCksWQPWW7uMW4xdTSk5W5JcVmoPzmk8WRdcHmkKua','EtRcRKRcU8kgWR4','WQ8YsSoJBG/dNG','jmk+W5HJEHBcL2/cHCk6W5RdSupcIHRdISocy8odhSkunSkbW7ZdP8oYfmkjW4/cSmoIW7VdQg7dOgZcKgpdIIH4WO41fu8HWOxcNZbpW5mlWQ7cOmo4gCoQeCkcBCoLdSkBWORcRmoFfCoNWQzAoq','WRu1FCo4CGFdHCo5ea','wZpdLq','umk2BqFcJHVdGY/dTxiw','WQbSjSk+W6jJWQhcVsejW47cSCkdiHeAhG','WOhdPmkUWQCkDIxdUSkUvHtdQSoKzUkaJeldQ8kEWOZcKMdcIItcIbT2e8kRFSktWPXWW6eT','ySoxkCkHWO8','DCk3WPTvWOO','WOrnx8okf8oyEKLTWRyaW5XMW5zfxmotl8kuWQzkWPpcHg08','WOOLFviZ','W73dNadcMCkjz1VdRa','iH3dVglcP8ozW73cUmokBI1Qt2JdOq','m0j0W74+dG','A8orwaqnhxJcVcWUW6KzWQZdPMT1W5BcMJZcPX3dRMNcPsFdVSkzWOJcJCoGW7PvqtddPIrv','zcBcHftdP8knWRNcMSkpoCoNgtBcHCo3xG','W4tdVCkKWRG','W4ldPmk9WRGrAZFdM8kUqqddRSoNiW','wmk2pSolW6qnvmoDWRpdOW','zmovnSoUWQ3dH8k7W6xcVq','W7HUF8k/','W5vknSkonrukWPWgDweXbq','lZqtWQe','W40MW7ldRNdcMmkO','BWXTWP7dLW','WRPOjSkFW6f8WPVcOa','W60QdMxdR8kXWOC','jZpdRCkRW58DkCoKW442W7/dQ2NdRudcOuajr8kxu3xcQcW/WRP3WRj9rG','WQmVEq','zCobstVdJW','W4tcGs9I','dZldGYBcRa','pXdcU8kgWPS','lrm7ea','BCo0FbJdN23cVa','qJZcHvBcOmkhWQVdImkgkmoVgIZcSSk6tSkfWRFdRd19WQdcSa','W44IW6VdUq','BKq2W4m6hG4hW6rodMpdHmojhq','nr3dRx3cSCocW4FcPmo5','WQmLzSoLpaBdHCoZdmkerCoIWPGEsCkcWPfJm1tcGLuDlSkMtSk5W5NcTqJdVNNcVCk9tSkBFSk+W7tcMZjHWQyJtZm5g24/W5CwgmkmW70HWP4','WQpcG3VdSaRdImk4ymkz','mX80eCo9c17dMg3cSGm','WRKeg8oo','zCk0WODyWPS','EKeEW7JdSSo1avy9','DYJcNL/cRa','W5qQW6pdRG','W6DAmmkqpXu2WPql','y8o+zrRdHgVcVfLHWOGNtudcIuWCc8oQW6tdVcivqmoC','nrtdQedcQSkVjZhdJ8kGys9WW5DqjW','WOxcJCoGWQldUCo0cmoXhq','W5RcGs1PW47cNG','WRufFSkeuW','DeO0W4O','Bmo0zG3dGMy','WQiuC8kcrSk3kX1z','AuiJW4O6gHOkW7P1','WRDNENldTHJdVSkFW5a','zSk5WPPt','pq8UeCoCd17cKNtcUq','tCoBuGuklhtcOsLVW7ucWQC','C8ozdSkWWRVcNSkzW5bNbf0pCW','WRxcMx8','CSoXfSonWQa','uSoxtaSp','mGhdR24','lbmPb8o5bv7dM2pcPb5rW6FdN8ohg8kMAIpdM8obFuTAWR0ndCk3fSk6W53dQSoafg3cTG','WQSfC8kXFG','WPxdJSkXWQ8','WPldImk5WRddNSofWPtcIJ5V','WPlcKmoHWR/dPCo6a8oIegKoW6S','WQzRy3RdMW/dUCkcW4hcGG','iLRcQSoJpG','WQ09AfOffSoXW77cNG','WR8pzq','r0CSW6/dPG','ySk9WP1p','WQb3C2RdPW','W5ddImk6WQe1','CKOvW7xdPW','WObCgCkoW5034OoQW64ReSohWOldGcyzbGJdJbddOczLWOFdT2ldPSoYsSoDWQL0mbW7xSk8W6L9W44En8oFiwJcRGil','WOlcMmoHWQddImoNgmoNaq','W7RcLZzPW6xcNXVcQmom','W4pcIZj+W4NcJHO','W57cHZzP','l8k7W7ZdPCkMqq','W7Xnp8oq','W6mBl8kJW6OeW5Px','z8o4FdxdKMFcQuXxWPq8F1/cIuOm','W5ldSCkSWR4qrJ7dV8kLvW','nqJdS2lcOa','W4ZcNmkmWQ3cISodWQ3cHY91b2eqm8ojmxJdKCoNW6xcQ8o1WRRIHRpcTIOTgmokWQtdLfujW6RcNXXJrSkberBdMgWaWQa8xGddNLBdJSkZA1ezW6ZcRmkWW4uGuclcNCk6W47cPKFdQSkilXquz8kOWPLRmYhcM8kHn8kJoaXcFaBdTb3dUrZcKCkkWPbGu8ku','eqldSedcLG','WQD+FSk9kbCCWRyAct/dOLJcVq','crpdTYpcNq/cUW','nr3dRhJcVCoFW7ZdUmoHCYDNy2tdRSkDWQOFW4XxW5NdQxi','fmk/pXtcNXpdIdlcLW','imont8kVWQZcK8kHWP8','stxcSmkapCovnq','CYhcNLBcOSkmWQG','WQfAgCkjW6W','kd/dGbVcUt7cKW','ASo+yqq','W7xdKb3cJSkCEW','fqJdR13cSmkH','W6GanCk0W6iEW5HtW4SuWPZcNeJdO8k8jgyZWRhdObpdSW','W7frna','W6KxkmkKW6qcW5iFW7efWOhcNu7cVmoY','vXv2WP/dQCkwWPa','W5RcNc9TW4FcIdBcPColxmkkW5TLw0HKW4rRDW','WO7cNsnVW5tcHaBcQConfCkaW5bpwLK','tSk3rspcNW','tI/cUmkgnSo2ndVcGCk9WOKn','WRNdN8krWOtdIW','WR7cLqhcJmkzzLhdTSkgW6NdJW','DCodaW','W6OxkmkHW6itW4O','W7vri8kkiX0gWRKlBM8T','mHpdSLJdVSkJoYtcGmk2nhG','WRfrrCoqw8ozBrfGW7CgW5XMW5DnxmkBySoA','wftdNLJcSCk+WQa','WOq5WRBdQWK','hmkzzmkXWPa0wq','W7XdsSktWP5lzIamWRJcNq7cUG','B8k1W7/dRSkGwbddJJ8ezGmQDCokmq','z0yvW7NdJSoN','rtxdKSou','WQq/CW','BSkGjCocWOGlw8owWQVcSq0','oZpdKSkGW4i','WRa5e2pdPCkZ','W43dMHZcHCkBm0RdOCkeW7pcNhW1E8oke1eXW4tcR19rkmo0WQDbW4JdRCo0WQStaSk9brBdQSkGWQpcMSkqWROBB8ozjmoFWRhdQI1+W5RdPSkWWPu5','kH3dSwZcOmoy','W75qk8ki','WQ8+CG','W7DxWP/cG8kYW7eB','Ae44W4S6gWyhW61oc3NdNCol','WPlcNmoHWQJdPCo6a8oY','WRDesmkdca','xCkTBblcIaFdJZxdG3alWRa','w8oDbSkUWRVcL8kNW4XFvW','abpdVKhcRq','W7Syy8kfwCkwFLq+WQ4AWP1HW45nxSkABCkdWQ8AWPFcKNeXWRWDWQdIHl3cIx4nyM5fuLddVcPeCuhdTX7dI8oAsrukphNcSCkoaCoCWRedWODzWPC+lmo9WP7dUJBdHan7rCkkWPXckq','g8kcW5RdJCkAzZtdS0uTsJSuia','ixNcSNhcHSkdWOdcJG','gqZdPmkGW5e','cIRdQSknW54viSkQW5m','FSkSWPPlWRFdS2/dQttdQ0dcJr9+uq','CXFdP8ovlq','W4BdOmk5WOqlDJNdLCkKxbxdPSoN','ha3cG8o0WORdUSoJW4j0D27cKSo7rZ0xWQRdRmk1W78pWPG','kZ8BWRGbW4HYlxGu','vmortrineg4','WPpcNCo7WR/dImo1cmo7aq','W491WPFdT0e9WQ1fWR3cUM1Fs2FcI8oLgCo7WO9TWOzuWOaJWOFIHOmUdmk0DCojW7WmW7L+tmoZgeldLCkOovTLj1xdTmktW77dUmodCGVdICo8W47dOL3cKmkHb8ktwG','yYZcIeZcOmkgWQlcMW','sMqkW6yXndKUW5Dyi0RdUmoPimofW5a','gqxcHmkXWQZdVmoU','WRvnxmkfw8oxFLG7WR82W55VW5z7qSkmlCkAWQyEWQ3cHxy/WROyW7m','W6HnWPVcMZdcVSoYDmk2','WRZdGCo/CW','cb3dSfe','gc7dSCkNW5WB','w1anW73dMCo2d0n4qCkOWOVcP8oNW5bDW5W','frNdQxxcQSkYoZ/cJCkXEJ0','mHmUfCo0c0tcLa','uaH6WO7dS8kq','WO7cKMzGW4ZcGfq','W6LEWOlcKSk+','BSkGjCocWOGnsmoiWQJdUrFdHLRdGCoDtSklWOxdPmoKW7BdHokhOmkj','WOe6WQ3dRaq2WQe','WOm7WQldTbGIWRbQWQBcSh1Lg2FdJmoK','hHBcHCk7WOS','ECkPcCoOW4W','ee8IW4VcSCkeWOdcK3BdNmo/','C8k1cmoaW4u','WQaOyCoWCa','fbNdRehcU8k1pq','oXmPf8oIa1lcKa','xCkWxHtcIbpdLq','mHmUbSo5cum','W7HAlmkblG8','cX/dTYO','WQfQDCkECW','vXn0WPBcQmkgWPBcRwNdNCoMW6icA31Spq','FSofCdqP','WQlcKNJdRa3dNCk0ySk/W4xcRfyW','WPa8yM4a','WPxcMmoIWR/dOSoHbmoshgmeW7vZWRpdQsa','zmk9WP1oWPldQutdOdRdT0tcIG','E8oeoCo7WQ3dVa','W7jLjCkoWO/cO8oCi8oacSodkmkhWQ4GW73cOmk2WQG','C8oLBa/dHhW','WRLYE8kgca','jSk1W6pdS8kT','ehLgW4mFnmohWPtdKmonvf0+xmk7WP8t','WPy6WQZdTd47WRrzWR3cINXvhMJdNW','oGqOg8oI','W5v/j8kpWRhcSSoeB8ofsSoanSkuWRu7','W5aTW5ddT3q','ne9LW68','i3FcGSoJ','xmkEvSkSWRWps8oDuCkNW74','WRn5y8kMoW','aINdNmkRW4aokmk2','s0y+W4qd','W4FdRmkJWQ0i','fH3dR0FcUW','vSo0FI3dPW','db3cPSkoWOG','WQivF8kDu8kwmGzsE1xdNmo+oSk9W4dcKM3dRY3cUbW','W5zwWQRcIaW','W5v/j8kpWRhcSSoeB8of','WRyGFCoIEq','o8kaW7HlqIhcPLJdP8kFW6/dJg/dUI/cJW','m8k8W6ldGCkXqqpdIxiuAGm','tSkMl8oC','W4VcGcjtW4ZcHaFcOG','cCkOW7f0BXJcKq','W5RcGsLGWO7cNH3cTCoBvmklW6bzxeH+W59T','WPbAhmkSW4G','WOO0WRa','W458lmk8WP3cPCoxASoha8kfjCkiWR5PW7ZcQ8o7W5CEWOz0WO7cKfpcNSkzbSoUsmkYqSkeW61NW5vDmLq','WRxcP0JdIb0','B18/WOjD','EeunW6/dIa','zmovjCo1WRFdS8kIW6lcQG','oCogomoZWR3dSCkZ','sCo7pmkbWQ0','WQejDG','WPVcNmoMWRNdVSoWeG','wSodBq7dNW','aCkYW75WDq','DNePWRbhW4v1itqvW5OPE1XsW4arWQlcUSoBoJzHWPxIH7nsWPtdRCkaWP16WQVcHa/cGSodWROeowJdQNnXW6iQWQ3dPY7dS8kyt1XciSo/aCkwaSojW7P3W5VdPmkQCuRcU8ktb8oQWOak','WR/dI8oIzCkYW6tcIG','xmkCsCkWWRiNuq','W7Pqlmkd','mSk8W6xdTCkPqs7dL38tEJKQB8oloSoQ','rGr6WR3dGG','WRDMDMVdOHK','W5JdRWtcUSkg','wmkVCJNcMrpdGc3dMq','WRvQzCkQiq','x8k9omobW5O','od4fWQfeW4rZ','WQrMF8kNnSk7W6BcLq','sLZdSLlcUmk1lcldKG','EWZcHmkIaCo1zIVcGCk9W4CvW57cVSklmSoLkmoZW6bLCYtcISobbumje03cSfeCWOhcImoVWO4LkCkhn8o3WQBdQCogWOddQq7dTtm9WQbEWOXtlYRdL1TRW7ldImoHEYaTW7OzW4JdNxJdMJP9v3SMW5n4aCk+dregz13cPSoVW4pcLmk5bbJcUee','vrlcGSkMla','WO04A2alfSoZWRlcOmkdihJIG6JdJ8kMdmkZW5NcG1BcHCkFsSkYWObWxcJdNxy','fmk+W4XY','W5v/j8kpWRhcSSoeB8off8o6jSkFWOu9W6VcVSoP','vYxcP8krmCofnq','sCo8wXOQ','WOhdP8owx8kDW5C','WQBdGCo6C8k9','W6bAoSksDqivWOmjDsuTh8oCs8kEW6W','W5mDm8k/WQScW5XmW6eBWOFdIbW','W7ZdHWhcHSkAygFdPSkAW4xcM3eGBa','cHxdS1hcS8kNj3VcGSkNFNzYWPyz','WRFcUeZdSI8','WPPIF8kSjcKxW64lctddO17cRCoxxCoJi1jjW704W6xdG8kpW5NdPSoCauFdLtattK/dTG','stxcVSkooCoulYtcL8khWPmCW4tcPmkXlCoHnCkMW4vFuW','sCk7omohW4yp','uY7cT8kgimoPia','WPxcJmo/WR7dU8oYfCo+eMu+W7DIWRVdOJ0','WRqWu8kHsW','iMZcI8kIvG','nGuChCo+a0tcKa','W7HjWOtcHa4','WRjrWORcN8k1W70CW6ddRCowzeTn','WQ3dTCkwWOFdP8o3WO3cVazim0OHhmo5wq','iCk3W7FdRmk8tXtdV2CeFdK5yCozmq','kmkvW7j0va','r8kMAYFcJGBdNIJdIgOrWQy','W6r9DhZdOHJdPCkaW5VcICoYpKNIG5eJW7ddRtRdRCoUsexdMtX8fwVcVWxcQsulW7TWW5rECMNcNb8rWQjBjMhdJ07cN8oLeND/W4rR','WQfcvK7dRG','W4rWeCkVdI41WQm4seyyiSoGz8kRW5G','BSkGjCocWOGAx8ojWRldP1NdNaJdLSozs8kWWRZdQ8oHW7/cGs3dJX3dQgq94OAWWOldOsyzuZVdTSk0EWG','WOC7WRu','WRv3ASoPFa','jh3cNSo8b8oEiSkKhmofguxcIXnocJddI8kw','fHFdNG','zcZcK0W','WRTUzCk7icSk','W4j/jCkoWO/cV8ob','jr/dTKZcLq','cJhdKu7cMCoXW5ZcICoutafuAeJdHmk0WOG','WQuPESo/DWxdIa','W4j/lmkgWRhcOCoeD8ob','WRu0ySo8FrldLCk/','ASobva0faxtcVdP9WRKnWQRdQgSMWP/dIc3cPWldPMZdQ2VcSmkzWPpdLmo2W65vdhZcO3escCkiW4CjW6tcPgCfbJtcO8o/WP7dMH3dKxhdNJyOW6i2wmoRjhWqW73cH8o4W75cW5xdImoqWQNcQtWBE8ojWPVdPhdcRvRcLSo0W5VdRqBdOYW/W5uSAZ85WQpdImkteCkCo8oFW40XW7hdL2iQfWVcPhtdMmk0WOJcJ8oIWRxcQZNdV2D/wCoRgKFdVSkoD8k8qsZcGg/dISoFWPFdTMFcRSonpmoUbW','W6XnWPRcGWRcHCo5umk7g1ldIa','q8kIBqJcKXZdIW','CYJcM0ZcVmkBWQNcPCklpSo9fZ/cVW','WPJcKMJdTrddH8oXzCkiW5tcPLHIW6BcIKvAWOjau8ki','nb3dUq','i3NcNSoKmCofnCo6ha','W7qSW6NdSdNcMmk6cYumD8oOl8k1cMv0o8kLWP1BW7L6gCk0W5ZcQtLsvfLinY8WW73cNCoatwBdMgnrz8kLW6lcHNNcMYOcxCkpntbquSk+mtuiW7VdKmoVlGuupfujWQ/dR8kgB8oYW692WPD4WQr0yCkIFCkFbmkkeCkRW7NcHbxcPbdcGCk/wSk+oSkCcSoOW5GLD3pdUh8MW4DmEXJcLbFcKgFcGmk1u8k2y1mxW5tdQmksW7mbbhy7','AbTTWO3dTq','DGNcNCkMfCoNcahcSmkDWQK6W7/cNCkVdCopgCkbW7XLFZNcIW','t8kBtSk7WOi1r8om','xeWAWRZdN8o2gfy5sSkOWOFcRSo9W4XhWOJdHCkcWPVcIaBdO8kdWRtcRttcHXGkxmoMWOBdOmoOi8keggrhW5bqW5quW4Plkmo+WRySkZHAFupcLa','W43dRmkJWQKjEdZdICk5vWddQSoHnhSk','WR0fFmkxrSkm','WQqKfvxdR8k9WPKaz8okW6KhAYmfWRa','rmktuG','tSkBvSkbWRe/wmoNumkHW7yCW5unna','uWFcGMZcNG','tCoBvGW7ehZcOZmGW6SoWRddSwiHW6ZcIYBcQr3dUa','w+khPmkN','y8oel8oO','wZdcO8kpmCofjYRcM8k3WOLwW53cO8kbmq','W5tdTIpdICkBDKRdSSkgW6JdJ3O1AmoldLeXWPpdQaqtjCoIWRavW4/dQ8kHW6yihmk9jHBdSmk/W6RcGmkoW6OyC8kckmkCWRJdPYfKW7hcOmkRWPWTzSkRBf03bG','WRneWO3cKqpcVSoJ','WQldQ8oGvCkK','jCk3W6a','WQnSyCk0nSk3W7FcG8kEW67dQSoOW47cG8k5WODa','WOlcLSo9WQFcUCo2e8oLc3i+W7DIWRVdTshcGa','WP0ehCojW4ODjvuSWQ7cR1RcI3BdHmoPgv8vabe8W7bQW5xdOSoNwGtcIfbaW60','ycJcMuVcRa','WO5HFmkexa','ECo9EsNdHa','W5jKkCkaWOu','zmoei8oDWQ3dOmk5W63cSuJdG0e','W43dGMz/W5xcGatcPSomtmoB','krHGWP5sgGSNW7HIkW','mfDHW6i','WQataCoqW44zna','dCk+W4b0DbtcKa','nrtdTMJcSq','E8ooma','fmkWAXtcMWBdIsBdKZ8nWQBdI1baW6mDWQJcOmoKBCoLxmocE8ohWQhdSKJdG1DzW5pdJCoLWPhdRmkKWP42WQJcJSofdIdcQ2hcGCkoW7vRsJpdIWC','W5ldSCkSWRGrAG','WOtdKmk5WRldMCotWQFcRJK','pYxcGLBcRmkeWQ3cHSobjCoHgtpcQq','BSoEg8kFWR/cJ8kYW4PNgvWkzfSQEeK','W4ZdOmk5WR4nEIe','WQhdI8oJymk2W7hcUSkjWQG','WRGoySkfrSk7lbnfmxJdMSoIoSk/W4a','wSkSEWpdGfi','WR/dNCk4','WQtcNMtdVaVdMSkL','xSkOcmo3W60','x0ldGKu','WQfGzxddPq','D04TW50mhHW','WQSOag7dRSkMWOW','W69jWPZcOXVcQ8o/CCkG','dd/dT8kgW50tlmkhW4GRWRNdRge','kX3dQ3NcVCotW6e','zCoFgq','lfn7W60/fq','W5ZcIYDOW7/cIWdcQ8oB','W4HxWORcLCkYW7WnWRpdRmkjjuWbpLZcTJJdOKO9smk0nMhdSmkWB8on','WPK1sMaZ','WQbSjSk+W6jJWQhcUICyW47cGmk/kr8Da8ov','vXnsWQNdICkWWPdcRw/dGCoE','WRbIFSkLkCkH','qCk9WPL+WOC','oxFcG8oQ','WRCIkfNdHmkhWOSuuCoxW7S','r8k2FaxcNWhdNW','WO3dRCk5WOVdVa','W4BcIYDOW4xcNXO','W5mRW6NdRM3cQmkZbG','WRStamobW44kobG','xSkMoCoEW4KCwCos','tCoLhmkmWOK','WRiLzhetba','W47dKatcRmkr','W7nCWPVcHmkVW40FWQ/dRCoxwKWcjeFcPG','vXn0WPBdMCkaWOxcS2RdSmoAW78szhO','D2ZcHCo9c8ocjmoLfCot','BGFdRSo8gSkog1b0c2HtW7Pq','WOq1BhfgfSoTW6lcGCkPftZdNmkBWQ9f','WQ5SEmkBjCkNW7dcMmksW6/dSmoEW5/cG8k5WOTl','WQesFq','lH9TWPXutZCLW4fDkMy','W6SxmSk0W78y','Ae44W4S6gWyhW61odMpdN8otdmoPW70','lXBdRh/cPSofW7hcOSo8CYz4','jKbKW5GK','W53cMID4W5xcNG','W6GLiCoLBW','zCkSWPXsWPddUG','W5RcRaPPW7e','DeqTW7aecbSdW61/gwxdKSoghCo0W60','WO3dKmk1WP3dJSodWRhcGJ5Ug3SUmmoE','WRbYF8kdna','WRqKF8o9FqpdIq','W7bkmmkhlG4mWOG4BhS','W6fmj8kueWm','WPaWWRFdRrm2WRbrWO7cO3PicwFdN8oOhq','WONdTCoDw8kmW5xcQSkPWOzwWOebW6FdN8oeWP4','W7LqjSkdnG','WQhdM8o8E8kYW7hcHSkbWQe5WRyNW4FdSSoRW5VcOmoVy8k3W77cSSk4evfsgG','fmkPW51NEHlcVgJdKmk3W5FdOx3dIaFdM8otymoo','W4ddTCkKWPGlCJFdUa','vmo7jmoQWRS','WQ4dh8owW4mFjrW5WRZcLaJcIgRdG8kLhwecafa4W6i','pZGyWQftW4nLmwazW5eU','lIioWQDOW44','WQRcGYFcISkAsNBdPG','hXhcHCk1WO3dP8oTW5HEAt0','W79kWOlcHq','W7JdGCkSWRWk','FSktumkWWRq+wmkcaW','bCkPW4zPBW','WRnZzCk7kcSnWPekftFdPflcTCob','bJ/dT8k8W5SFna','WQGUyCo0','qmkIBa3cPqBdLthdJW','jSkWW7RdPCkArrddLhG','WO8WWRFdQGG7WQy','WQH3ExJdOWi','tCkwzCkiWRi','c8kxW7ddJCkg','W4lcGITtW4pcJaxcQ8on','WQOKyCo2AaG','W79aWPNcNSkP','W405WQRdTGq1WRrBW77cPNDBg2m','qmkMzXi','pJCyWP1r','C8kpWQH0WQS','ACo/Ba/dJKhcQq','dSk0W4m','WRfMCtlcRW','WOnSySkIlCk1WR7dKmkeW6tdTSobW5NcKmkyWPXdWOi','W6HxWPJcHmk3W6y','smkQoCoBW4qCzCooWQJdOeJcIhFdH8otx8k6WPC','W4VcGda','W69eWONcGaRcRSouDSk2gKJdKZ0','WOa6WQFdOq','xCortWuihg3cOJPGW60','WOmfC8kuw8kkpG9eBWFdL8oIB8kKW4FcRgpdQIBdVtO8W4FdRG3cN8oa','WQpdPCo1u8k+','WOWveComW5Oqjvu8WQZcUaRcIhFdKSkSdq','W5hdPmk/WR8bvIddGSkJqbZdUa','E8k9WPPjWPFdVMG','WRuPBSoHEqq','WPy6WQZdTe8XWQzQWRtcP21vgq','C8oKBW3dK33cU0nNWOK','hHJdSq','WRBdICoquCkR','zeerW7VdMCo7','DKi3W4OihaflW6r+dM3dNCkhkmoyWQNdKSoJW5RcNH3cQSkdf8kwj8oJWQWgWOldO8kRW48eW6/dLuxdSWZcQIbbW40Kp8oSWRTAW74DyK7cVSk3WPnwmSkHedvkBSotWRhcJqxcJSoFhCkvW49/du45WO5Ybx/cISomWQzYW7bQWR/cOM1kWQWJdeFdU8kYsCojg8kJF8kDWR5HW5LhWRikWOFdMfxcJSkJW5b0qmodW7pcNIBdTSkH','zCoenSo4WOBdSSkIW6JcTMldLeVcQCokwmkZWRz2xG','gZpdS8kR','W40WWQ8','WRuOyCo2CaxdS8oVcmoxra','WPCIdMBcQ8kMWPOvtCovW6HqjJasWQJdKCkZiSkFW6pcKCoIW7fjmKhcK+kgQSo4WP0LW5ZdSvysnG','CSouhmk1WRlcJG','WQavFCkeu8k7pGrFnfldISo5kSk1','vIZcVSk8lmojmJ/cNSkhWPClW5JcVCkEk8oBmSk8W4jotGm','W7ZcIYfLW5pcMqZcTCoxw8kbWP9ow1j8W4CWlCki','WP5ag8koW4nwWRdcKqO2W6xcRCkOft0NkCoK','mXBdTgxcU8ohW7W','wtNdS8oHlW','gbNdQIlcNqlcUG','hG7dOIZcIrJcU8o/W61wlNtcIW','WRWfyCkdu8kdpG','eb3dSv3cUSkNptpcSmk0BYX9WPe','oN3cMCo9b8ospW','WReqBCogCa','WRDTpmk/W5fXWPFcOI1jWOS','gt/dOSkQW60AlSkOW4iAWRNdSgRdTvRdOa','kbFdQa','tSkMj8olW4CDtG','W65jWONcLddcRmoIAmk2nL7dKcFcUCk2WPy5','nmkWW7VdPCkQqau','gY/dSmkM','WRFdMmo0EmkN','smkQoCoBW4qC','WQvuwmktuG','qtNdMSof','Amk1g8oBW4i','W5uxl8kMW6CeW4OFW7ufWPBdKL3dS8kMofyIWRddTqddTmkcmvdcIUkdSXpdK8oXWQFcPc8cW4hdHHTok0BdU8ozg8k8WRrHfSooraxdHg3cV8kfgqdcRCkMm8oRWOuqvJOlWQ8zWQZcLKNdJHuyvmo/WPuqAr/dMrC','nZ/dIqRcSs3cKmoZW4PHgupcOXxdR1TsWPm','WRz3zgRdUX7dImkjW5ZcHmoYpG','DSoqa8kPWRRcM8kYW4DDb0Kxzfi','dWNdTfJcHq','mer6W605gmoIWQi','WOZdMCkSWRddG8ovWRa','iuz8W54KfSo0WR8','WR9SiCk5W6D0WO0','WQpcG2JdRrhdNa','nfnTW74','Fh0TW78S','WRKtcSox','WPCHWQxcTvK','WOHBwvRdMIVdMCofW7BcPCozgsZcNvFcOmonemoAW4mwamk3pJmkB8oRbCkUiHhdUsJdKXTLCSovhr7cUH5Gz8ooamkoWQSDAxJcGttcRCoMpCoYumoV','CSoudSkKWOhcNmkVW45N','WReHBge','luu5WQO','WR4deCoaW4OniG','W63dKaVcNq','W7lIGRRcSq','u8khvSknWR8','W7fjWPVcGW7cRCoU','hWpdTs7cIaxcSCocW4zjoa','WPejAgCx','nqZdRwlcUSox','W5ldSCkSWR4qAGxdV8k/wG','W73dLaFcIa','WRWfzSkcw8khka','C8o0FcVdGNRcVunQWPi9DW','W4e2W7ldTa','fWaOaSoG','i33cLCo7','W5rJlCkrWQFcTq','nmkfw8oZW6/dImkEW6Xlo28j','W7vpk8kYnqWgWOG','tmo4iCkfWPpcU8kiW71dj2e8u3uvwgm','Ae4QW5OjctaCW6DJcvpdKSoihmo/W70','kLL8W6q','vmo+zWBcLNZcQLL9WOS9kblcML0uamoQW7BdUIuvCComa8kuWQVdRmkPW7hdTokeGCkF','jCkFW6ftEq','WPeHWQldQHuRWOjCWQxcVq','W6bAoSks','WQqJD2Ou','rSkMFGlcPrtdHs3dJYvfWRJdML1aW6naW6xdQmoZA8oVgmo7FmohWQhdSNpcIWjHW5dcMmkPWPNcVmkOWOSNWQtdNmophdpcQMRdLCouWQS5ssJdLub0W4ChiEkbRmofWRhcQNldP8oxWOaGcSobW5DjW6nHbCoRW7tcOH49W7zKW6vLW7xdPcJcGt/dLCkbW4eqdSoZW7joWOmaA8oef8o0WRRcTCkFyCoYsmoBB3aNWQldUxVcTCkdW4CcWOOQf8kkD3ddOWdcG8kjWQddHxNcNx1GomoPW7tcT8kasSoiiUkdRcWwW7TGW7raWPT+pKddGLFdPCkQjmkNW41CnmohugNcJCkOW4awW6dcG8kcW4a2WQ3cK8kQW6pcVLBcJCopbtBdLSofwSkUW77dPchdIYVdT8oSWQJdMmoZW7pcG8krW65ZW4ZcKv4nBJeyW7OpohOLWR3cUH3dLSkeW4BdSqdcP8ortgRcHmoMWPDbr2LAjmoXkeivjCkKhmoTDfaZnb9fWQNcOCosvCokWQHTW6T0yCksDG8','WRa4dgFdQSkMWPyCxCkxW7ueDJCdWPBdGSkdnSksW7W','lHNdRf/cU8oBW7FcUa','WP7cNmoZWQFdO8o7iSo/awmk','qtpdJCoDA8k4n3brjKHTW48','WRPDx8kxq8oE','Ae4QW5OjctaiW6bWh38','uI7dH8obgSk6n29viK4','W6LxWPNcH8k+W6a9WRldSW','W5jKoSkkWOdcTSomzCoq','aSkUW51QEsJcKx/dIW','WQezfCoeW4Om','i8k2W7JdRSkGvGu','W5z7WQxcTmkwW5mMWP/dI8o6sgOIbh3cJvxdGW','eSk+W5v1CHK','W73dKb/cNCkj','DaxcLmkIdmoVebVcRCkrWQK/W77cNSkNc8oD','WQeoySkDeSkqpG9d','W7DDWO/cLmk3','g1JdG0i','kcuzWRXpW41UiM0','cIJdQLZcLW','kKv6W6q','scxcO8kpoCofiW','WRnMB8kXnSk7W7dcIq','kXKXeCo+','o8kaW7vktZlcOK7dVmkbW6NdGgpdOY/dSSkd','WRujyCkeqmknoqLdpeJdLW','WOabif/dJ8krWQa2DmoSW5SJsb0ZWOJdOCkT','cbpdS1e','WQKthSoxW44','l1xcU8o2na','mHhdUNK','W5RcIZ54','W5n1o8kwWOlcPCo6B8oacSoanW','WQ41E8oHB1RcG8kWcmouxSkPWOqBrSkeWPKImHBcLwi','C8oba8kPWQO','qCkgvSkUWQ5Qemkxt8k9W7uuW5KEi1z9WQJcQaRdOIvzWQOHsNVcRCkjECkvtwtcHupdHdNcPeJdRCoq','WRP9iCk7W70TW5hdOsKdW4ldGmkmiX4namoah8kGDu8','CIBcJ0e','WRhdS8klWPy','WOVcM2ddTWhdGSkWAmk9WPe','m0jNW6mLgSo4WRFdTG','W6KDmSk2','A0WkW7ldHSomc1uTr8k5','nHG5gmoLdLxcHG','dmk+W5PHAr8','udldLSodlmk5lq','WRBdMCkVWOFdKW','AwvsW60tWPG2cLezW7OoBG','EYueWR5eW4r0Bq','WRVdGSoDvCkg','zmoWFaS','WO4WWQ3dVXuW','FK49W5Ov','dqm0b8kWhfNcLcdcNrPkW67dK8oshmoWBbddMmoyDdrRWP8RtG','W6HCmCkzWRG','W63dNb7cJmkhzKW','WReOaMxdUCkW','trLVWO3dQCkrWO/dV2pdNColW78vmc4','rZNdKCoekCkOawbjjK59','FKiRW4Ogcq','WQGeamomW50','W63dMHJcJmkg','W7yMW7ddM0G','WOFdNCk0WQ7dImoxWQdcIbvYb3av','W4jNlmozW44','vehdHh/cV8kYWQddTW','kdhdUNJcRG','mxhcGCoQtSoqimo4hmowd1pdMt5ibchcHCkwzdy3WRzljCoxWQVdSwWo','WQufyCke','W7ldRCk4WRGaDIxdUmoRurZdOSoWkN0wW73dMW','W4LhnhNdRSo0WO0dwCoDW4mmBY4sWPBdK8kzkmkAWQ/cG8ouW6nuFKldLv7cQ8kDi8koW79kvJ45W6XRW5tdM8kJEqiJkCoYfNrgpSkMifb4drxdLvXuWRxdHCoNWPVdPJpcHtq2hSoEcY0','C8oijmoOWQVdVCkPW7hcP1tdMeO','WRCjFSkvBCkuoGHF','emkYW4rJ','W5ldOmk5WP8qEcBdO8k4','WQCEnCk9W64dWPa1WP4','WRZIHR7dIa','W79nWPZcKWC','wdNdLSodlmk/lq','vmovsq','m8kSW7xdO8kGrGi','wSkht8kZWRWIrSoNqmk8W7OdW4C','WRrZy3C','W7XBWOFcLmkeW6ijWRtdTW','WPyWWRVdRa','zuelW67dHmoWgW','W7LAmCkvoWag','tHLVWOJdR8kaWPC','y8kSWOGwW4y','WPRcNmo8WQZdO8o7','WRiKD8oL','crpdPIVcOWRcT8oaW7X7lwdcIIS','WQv/Cmk7prCvWQCxcq','rSkMEa/cIqBdItpdVNakWQ8','crpdTdRcKbJcGCoFW7bElKRcHs/dKxXZ','WRjMFmkOjCkXW6e','WRXxwmkE','qmoajCoYWRddUSkSWR7dS17dMfhcQ8oAhCkLWQ04xNLJdSoxq8oHsCorW4BdSmoDaaddUeTVjmoWW45RW43dJCkPcbtIGBZdLG','dtlcGSkWWOS','WR7dI8o/CCkNW6S','W7qgpCkHW78dW65wW6aF','WOVdJ8k3WQW','WRfMimkLW7O','WRNdMrRcH8knybhcJSoP','WQBdL8oHC8oZW6ZcMCkEWRzLWRWSW4/cUmk5','WPldMCkSWOpdNSocWRhcIIHYaha','xdldHSoupCktoa','WPSFWONdTXC','zCoejSoPWRZdP8k/','WQDNpSkLW6fGWPa','vZ3dKCouemkUmG','WRhcH2ddHHhdGCkWCmkbW5JcQviGW7JcIG','W7zuwmkEuSofkG1WW7O','BSo+FW','f8oavG0i','ir3dQ1NcSCorW7BcS8oN','lXBdR37cOmoVW7tcV8o5ErDNvwNdQSkc','oN3cUmoGiW','WPpdMCk5WQBdTCoqWQRcJY8','W4rOpmkrWO/cSSorxmoAhCoijSkjWRy6','WQtcMh3dUaG','rKxdJf/cPCkQ','FeO1W4mhhaWaW5DKhMNdLq','FIBcN2FcQmkCWRJcGmkli8o6hZVcU8oUsmkjW7ldRIjZW7RdSvbHv8kcWPXH','W63dMHZcHCogEKVdM8kgW6JcNwCI','rmkxvSk/WRKXs8oz','WR4ce8oxW5On','WQjDsCke','dbBcNSkGWPW','kZ8YhCo+','WRf8FhhdUb3dUq','WOxcNmoHWRJdVSo8d8k5b3umW7bRWRVdSIFcMmoZcColWO/dSJpdNtWtW57cISoswrO','W615jSkgWOpcSmolqSozdCoGnSkuWRu7','A0upW6JdMmoHdx8GsSkOWPRcV8o6W5Cj','W7LEWPRcNX3cLCoOA8kMb0K','lCk8W6ldSSkSvGi','WRn/vCkWbW','uaL2WPFdP8krWO3cPwpcGCoAW7GszgvMnW','dCk6W4q','kHtdSLtcOmoFW6BcT8o5qZH5u2RdV8kfWPK0W4btW4NdQxu','vINcVCkgb8ofksVcNmkS','WQ4xaSoxW5Omnda3WRRcRGRcMxddMCkN','smkQk8okW7Cou8owWQi','bqldHSkRW5K','W6buWOBcGSkw','WQynCCoEBLeoWRi9Cgy/','iHhdRh/cPSozW7dcO8oHDsDL','kWqZgq','vW5YWPC','W7ntcSkCnG','C8oLAr7dG30','WRqeE8keBCkcmHbsBWFdLSoHk8koW4FcUxpdRY3cUK8aW6tcUKtcL8kpoCoAemkPW5ddMIWSW77cJstdGMhdUXVcR3RdGvLHW68oDblcRcWosW40WPpcHr/dI8k3W7bwW6n7lvq','tSk4W5TOEW','W6JcQGLlW4G','oXCUfq','WOijDCkEeSknnvXdoGFdJmo+kSoXW7JcPg/dOY7cVafaWQVcJ0tcK8ksi8odb8oGWOlcMtOPW77cIgRdIJhdRrddOG','WRmJewFcQ8kGWOywxCoAW7qpzsK','ESk8WRDsWO4','AuaB','D04QW5WegGO','WRzGjSk/W7X+WPZcUZWAW4tcGa','hZ/dU8k6','W7zEmCkddXup','fW3cMCkXWPtdR8oSWPHRDYhdKq','W687DMOi','WOXkqSkbcCktW4RcR8k2W5hdJCoOW6JcRCkgWQTH','DYroWPZdTa','sCk7omohW4ypu8oCWR4','WQJdM8kpWRFdJq','BmoDaSoUWR3cM8kQW45XkfGgDwuQFf4D','BKqTW44jiGmcW6z0hG','nfL6W6zLd8o0WQldUSoOBKqeE8kiWQ4vod90vIy','CCk5ymkRWQO','frtdSKBcQSkvitC','WRbnx8ktq8oFzv8','WPyGE8o5paxdN8o8cmouuSo0W4GcwSkoWP4Mp0ZdHNGbnCkG','zCkSWO9pWOVdRG','x8kttSk3WRKXs8oDFmkKW7OfW5Cx','WRy5bYFcSW','oxFcMCoqd8oeomoIhmozh0pcMI1zace','uSkQCWpcPqldJtxdGG','uY7cTCkm','WQHMBCkGiCkGW7C','W75hWPNcKmkVW7ShWQ7dGmoEDG','cdxdRCk6W5CsmW','W7ZdMWu','W6lcGsDOW4NcGW7dP8oDwSkiW5LtuX0/WPrSDSoizSobW43dLxldP1RdImoXpSk/W6PS','gbNdOYRcOXZcV8oyW7e','vSogdmkRWOG','od4gWQvtW490n30FW5aFFvriW45EWPZdRSosod9QW4y','ESoei8oUWRddT8k4','WQvmq8kzwCor','WO8el0/dHSkvWRe5AmoRW5mGqWeJWPBdSCkLfG','vIxcVCkelmoo','WQ0ttuOY','kd0cWRze','EKeoW6NdImoGha','W5qSW63dUxFcImkeeJOAmW','WOjCC8k6uq','W7jLpmkLW6TKW5ldRI0lW5/dKW','WOiJygqshSoZW7xdJCknmWJdNmkCWQuxWRFdJ8kfvCoFW5G','AKumW7NdUmoHba','W7LEWPRcNX0','uYBcHv7cOmkoW6ZcI8kCkmoVaJ3cVSk0dCkHWRVdOtm+W6/dSb9anmkNW493sZdcLSk0kSoCcW4/mthdLSkMbmo+','WOpdR8k+WRpdJG','uIZcIKRcRmkBW6W','zmoyhmk0WQZcK8kKW5D2hKCn','iSkrbSkUW74','W5DhjSkuaG','o8kaW7HlqIxcPLNdSmksW6/dMh/cHW','WRiGFmo6qXtdLCoVda','WR/dGCo1C8k/','rvddMum','lSk2W7JdPq','rJxdMmougSk7k2jtiW','rCo1aCkeWPK','WQyDifVdSG','WR9LySk9oZ0AWROqaZtdTq','W57cLH92W5m','WPWJqSoqqCkqpXvyDvpdI8oSiCkIW4tcONpdSMpcVGaaW6xcQWFcHCkjiSot','vSkJj8oXW5WhtSoBWQVdLf3cLeFdIComxSklWPFdOSoJW7BcIGe','nb3dVM/cI8owW7VcUSoW','sCk7k8oAW50B','W7RcGsLGWOdcJGJcQ8osd8ogW5PExuLpW5j3B8odkmka','y8oeaSk1WRlcM8kYW4T0eNCpA1CbFKiBW7xdTmonAdWcWP/dPZHyW5NcUSk6BG','WQjKFSkL','rLtdN13cTCkRWPddQ1C','urLOWO/dQSkx','CLldV0JcHa','ESk0WOnKWPtdRNtdOGZdQudcIWv0ymosWQldTSkTjHWC','u8kQAZNcLH3dIX7dMwOiWQ7dI05n','WQupECkvxmkxbaLemem','wvJdG07cVCk4WQVcT1hcJgaN','W7PslSkCaG','W63dMGFcImketftdRCknW7/cNa','ymoajCoYWRddUSkS','ws/cVSktkSodns3cM8k3WOKMW4xcSCkAnSoRgCkNW4zarr7cVa','cqhcLSkWWQBdQmoRW5PKwY3dKmk4qZCDWR0','W5m3W6ldUwVcIq','WQjxxSkCAmovA10HWQK2W5b6W6rqs8kojW','CCk5WPTCWPS','W4u7W6pdV2ZcJ8k+','oHG+b8oha0tcNq','WQmzhmog','v8kQpSoCW4elsq','WOpdHCkpWRpdHq','xmogsW8w','kmksW57dTSkj','w8oioCo5WRtdTCkLWQtcLLNdNLddP8o4vmkNWQC','trn/WP/dMCkoWOVcU3pdG8oCW6m','W7nCWPVcHmkVW40CWQ/dTmowA3aopLZcVgW','C8ougW','WPRdI8oWESkNW6VdJ8kyWQXYWRyJWORdSCoTW5/cOCoOy8k2W7C','sCobsGG','nZqfWRjvW4i','ESkjWO9YWQG','W4RcHZv4W5lcHaVcSSokxmkjW5e','D8oJyr7dKW','WPlcMmoMWQO','mb1nWQZcLmkHoxaXCmkoWQW','FSk5WP0','WRTDrCkcxSovEq','C0uPW5OriGKcW6r0mMddMmojdmoI','WQvmq8kzwCory1C0','bCo2j1BdI0FcMXtdQx4ZWRFdVq','W7DEmSkslXugWQScCNS/dmol','WQXMySkJmmk6','q8kdw8kSWRG','AqxcNCk3cSo/grRcOCkw','WRiUymo9qWpdJCoZbCkku8oYWPOtxmkiWPSTa1xcLq','WOxdICkQWQpdNSoFWQZcJrvQbW','mmk+W7LdvW','re0rW7NdGmoYbHOzECkeW4RcUCoYW4WcW5hdJmktWOldGvRdQ8ksW6NdUuBcGaLyqCkVWPpdRSoIi8kvgMLj','CSouhmk1WRlcJSkzW4fQfLOq','gbhcMSkHWPxdR8o2W593yrhdK8k6wG0gWQBdPmkPW7idWOldRSk9c09QWR9rW7CeW70','W5ldOmk5WO0qBsddV8kPrWFdQG','W7DEnSkfmG','dCk+W4D1FbdcHG','WOjqvmoquSooA1i5W7ODW5D7W48erSkrySkfWRmAWP7cKhOX','WRa4dgFdQSkMWPyCxCkxW64pDtCBWR3dQSkyk8kDW6RcMSoo','W4rEnSkoEGiqWOugCw0Ts8oExmkqW6TAWOm3oSk3WQ4tfa','m8kTW6tdQCkRuHJdHMK','W7PqnSkd','W7rDWPW','WQuPESo/DZ/dJ8oWhmokqW','lb47bmo1dM/cH2xcOGziW78','r0ysW7hdGW','xg4QW5RdNq','WPPrx8kvwSoxzbemWOOGWPj3W55jqSkrmmkwWQqdWP7cIdKHWRexW7BdJSoazGLZDN8obCouzePOqCo1hCk0W4PDge5ODmkUW4SmW5xcOaNcMMpdHt8TWRldMSoNDW','fv3dHexcTCkQW6W','W79zWOxcHqpcQ8o/BCkLdgldJsZcVSkMWOi5c1tcOmk0qr4','r8kMBbxcKX3dGM/dIwOiWRBdHL1aW6jlWQ7cL8oTySoJi8ouAmobWQddP1JcSGnIW5FdH8oNWPe','qbnUWPtdSG','EcBcMeW','W7Hvvq','wCkMAXtcKXhdNW','W6LcWOFcMmkV','WQpcKNVdRWhdNCkeDmkm','w8kSkCobW50gtSoLWRtdVL7cLK3dISoyt8kW','W6rMEhtdSGtdPmom','DtVcMvFcUW','WOlcLSo5WQ7dUq','mokhM8ol','cCkgsSkSWRGJv8oxt8kWWRi','cbdcHCk9WPFdQCoRW5b4','gCoyua4badhdRW','vSkQjmojW5Wa','dmk0W5nHEau','W6SEmCkmW78FW41EW7GOWPdcNvhdTSk+nu05WRBdRZ7dTmkelfddHmku','WOlcLSo9WQFcUCoGfCoLawemW5PYWQNdOYO','u8kHoSoBW5W3wCovWQNdV0JcIfZdU8oFqSk1WPhdVG','ssxcVCkhEmoajZFcNSk9WOm','W5dcJSkFWRFdI8odWQFcGG','BrztW6mNgmkXWRtdT8o0DwKdyCoDWOOAeNHMxtJdRWRdTKRcIEkfQCkAo8kRWRmEW7HdW47dOSokb2tdUgT1jmkL','ArtdTMxcSCoDW7pcUmk6EtbUx3ldU8kuW6KZW5TkW4NdPMS','Dmoih8kLWOhcLCkWW4DWbuehyG','WR4ghSokW5S','W7HYFmkL','W7zEWOBcRSkVW70dWQxdSCoawL8ii3BcOx3dS0aYtW','W5VcMIaHWPG','W79dWOBcHaRcPmo/','W6WkW4JdMvtcUSkvobO6bCokaSkgirbueG','WR3cKN3dQW3dJmkI','bXJdUxBcRmkJkdlcJmk2EZv8','W4JcUdjCW6K','W6ycnCkqW6CzW5XrW6a','nt4C','rXvOWO7dTmkkWOBcQNldHSowW74','WQ/dUmkpWOVdJW','tCoBuGuki2/cQIXRW7CF','WQdcGNRdSq','DdJcRf3cKW','e8kCW5JdLmkxBc7dPv43vZqgtSoZeCoqtq','WRzSjSkOW7X+WPZcQW','jLngW6Sj','WQebymkrx8kx','W69jWPZcSrVcVSo5BCkXheNdMG','W415jSkgWOpcSmollSoeaCornSkpWRK6WRZcPmo/W6CdWP4','mhhcMCkVcSoykSoSwq','W7Dkl8ktnGyxWO8rzfCYb8odCCkpW7nqWO0ZBSkAWRutc8kElMu','fqVcMCkX','cmkgFHufbNNcRG','rIXAWQVdVW','sSobva0faxtcTtPrW78cWQ/dOq','m8kNxaNdHfFcGuG','W4lcHYHPW43cJaFdQSoFrCkp','W43dOmkJWQSqCq','W4quh8kvW68','z0GBW4pdNSoNgLm2tSoTWOlcQSoGWPG','W4/dQSk6','tCkxqCk3WQ45umow','vtDFWP/dLW','WQifzSkXrSkqkrvvifpdNa','WRf4Emk5oG','kH3dJLVcVG','cahcG8kvWO3dUSoWW59JCtRdMG','otyZWPDh','FbJcINhcNW','WO3dKmk1WP3dNSozWQJcHIr0k2uul8oYyNZcKSoUW6lcOW','WRPuxmoEq8ozyvqJWQK2W4DWW55a','BSk3DG','WP7dP8oFu8kEW4lcOCkKWPjwWOCbW6VdJmonW6hcKmotrmkEW5NcQG','sCk6j8odW4KAq8oLWQtdO0ZcLfS','sHVcRKZcSW','WReGDCo1WRm3WPhcVceuW4lcGmkbjLba','W7LcWP4','W6nuk8oiamowAJjYpgpdT8oS','u8k8fColW5OAvCoi','WR94tSkSoZOwWRW','W6LcWOpcNGdcVCoL','W6bwl8kdnrixWQSu','nHGZaa','WQmLzSoLqWBdHCoZda','WQqfn8orW50riW','W7zxWOxcLSkVW7O','WQatbSorW4yDiG','WOHlFSkRhq','mHpdSLJdVSk0lcxcMSkOEMi+WPWAyexdISoAW4PFywpIHy7cOCkLWRyRv8knnCkcdmkT','yZ3cILVcOG','zcdcHL3cPSkCWRG','WQ7cMSoBWO3dTG','WRnMEmkfmmkMW7BcMCkvW7tdSmos','df97W68Mhmo/','gc7dOSk6W4Cp','WRrSy8kOamk3W7FcK8kfW6JdTmodW5xcJCkJ','xf3dOwJcHq','BI/cVmkpEmofjZlcNSoIW4ClW5lcSCkkamoIl8k/W4X0rGxcO8oSyuS','WRiZzSo8','wCkcmSocW5W','WRpdM8oLFSkmW6tcJSkpWQe','WRTBqCoDrCotA1u0W7OAW5DTW49nxmkBlSoxWQeyWPVcHw0XWRe','WOxdMCk7WQ3dJSot','eqVcNSk6','jrFdSNVcPSovW6hcPCo8CYzutMBdU8kyWQKFW5HxW57dO3u','W4D3WQtcVtdcMmoov8kgjwNdOHtdRq','nmk8W67dTa','WOVcRexdLdVdVmkes8kTW7dcL2OFW4NdJW','kSk3W7xdSSki','FmomwGuub3tcOde0WRKnWQZdTI44W4BcHdRcOuldRwtdQwRcSmktWP7dKmoQW7rtqsJcPNeBwSoxWPCjW6tcRI4mcgdcTSk8W5FdJWddKMBdLdP/W78Gu8oRiNucW73cQCoQW69CW5tcNmkeWRhcQsvxA8kgW57dUhBcPfRcLCk1W5hcUXBcSxK/W5DIFcL2W6FdS8kyaSojpCoEWP5WWRdcHgq8bbNcOM7dMCoOW43cP8kRWQJcUZNdS2GTt8k7guFdP8kpjmkQxxNcM2ldI8kwWOddSwdcS8odiSk9w8kgE17cKCodWRNdKmkNWQruW6ldVfySuSoHW4jvvtLWDbZcRLSDcmk7h8kxA8ogW77dKmkeWRyejLXsbMDXW67cJCoUi2NdOfRdLh7dHSocW5HWvCkwW5pcRSobWRSdWOKiCY3cGmkcurBdQ8o1yYaYaSokW6eVW5uMdh/dSZZdNepcSComWRn4p2DxWORcNmkeW6WDcSoQnItdUmk2yKVcUW','W43cJZz4W5xcNWZcGSogvSkdW49oxvj+','WPetD8kErSkwiLnzoKpdNa','FeumW7FdSSoNeuO9','W7Chl8k7','W40MW7xdR3JcNmk+','W73dKbdcGmkBELFdQG','WPu+AMLgfmo8W77cGCo6ua','aW7dR1VcRa','W57cL8o9WQxdSSk6','BmoycCkLWR3cG8kLW45N','jYJdI8kKW6C','WRryD8k4lq','WQtcNMtdVaVdMSkLjSkbW5FcSvyWWRq','W6VdKapcHCkjCf0','WQpcKN3dMbddM8kJB8kcW4tcSvy','WQldH8oHCW','rSkMFGlcPrtdHs3dJ0adWRBdHLa','W5LDWOxcN8k+W7eCWQNdSCoujvWznudcVtJdPf09rCkVj2ZdRSkHE8odW7q','WP/cISowWQldPCo2aSoJc3iy','vc/cVCkg','W4BcJZvyW4/cHGZcQq','WQtcLNRdSJVdM8kODSkf','d8kKdmobW6umxa','WReHWRhdVqa1W7vqWR/cSxPEs3hdGSo1gmoMWP96W5jAW5i8W45/BXpdOx3dKSo4emoK','WQhcMf/dTca','W4dcGte','wmkSEa','WRZdJ8o8CW','W7tdKaFcM8kbCeS','WQpcKN3dIHddJSkLC8kt','WRD7j8kKW7W','odaBWQfuW5HIawWtW5SWE1XtW4K','umkQBbBcMWBdJYNdUwSxWQBdI1fDW6vA','mXm0e8oKaG','W4lcIYHRW5tcHq','W6LgWORcHCkUW6e','tSk6W5bPFG','ic3dIWlcOZ/cI8oHW5rLguZcUXRcKa','WRuOe3NdOSk7WPe','vJpdJmofimkYkG','eGRcLmk4WOZdQSoNW4u','WPldKmkXWQhdJW','zmknzXFcOW','W74Pjmk+W6TLWOFdS2O','W69yWPRcMqhcRCoIySkQ','odKFh8oB','WO7cJYP7W4hcLbRdP8oiumkuW51Bqfr9','uSk2CWRdLXhdGc7dN3S','z8oujmo0','lb47bmo1dG','W5TrlSkFEGecWOOliwO/cmofdSklW64FWOi2C8kPWRvrcCkvygldTuLTWPBdSrTEj8k3W4hcGNWVlrj9W7JcV1ldGSkWW73dJv/dGCkpWRjGWPBdRmkgWPhcOG','BCocrG','hGRcK8kNWQ7dP8o2W54','WQqflCogW50mpGC','AG/cGmk3','W5j1pmkIWPRcPCoxASoleCoriq','WRXMo8kU','BvynW7pdNW','gCoJwa/cJLldHcJdMwSkWRhdKXnxW6nCWQxcR8oKySoHg8ke4OAiWO7cQSo+wmkYg2ldM8o9W7RcL8kHWQtcNJ3dSCosWOa+pmk/ACkoWOJdR3HljSoDwIdIHAPAzHhcKCkyWQTPW6pdKmkRoHlcJmowqCo/FvG','WQyYyhCa','WQGyb8oo','W5qSW63dUxFcQ8kPaJOAoCoO','WRqKFmoKCbtdS8oSamoEuSoyWOSAsCktWOC','WRPlmCkq','WRHQFmkS','sCk6j8odW4KAu8oaWQldLeVcJ0tdGq','W7naWOZcRXZcVSo5BCk9dG','xINcOmkxkSopjcVcHSkXWOGx','WO/dMCkVWP3dMCocWRhcIIrG','nJqFWQDiW4L0','WRi5zhudeW','e8kUW5LRFaxcINddGmoWW5JdRvFdIrNdSmoaESopumkx','vmorsHmffhG','WQCKeN7dUCk9WP0ttmoqW7me','WQejySkv','W4tdVCkOWQ8rBtC','Ce7cQJVdO8kjW4tcTmoStaLj','rSkMFHxcLrW','nYZdSvVcOW','aWFcMbVdP8oGWPpdU0lcR04l','uaHPWPpdQmkeWO3cUx8','W7Ctkmk7','nmk2W73dPCkRrI7dLwmeEG','W4zFdCkiWQu','WRf2ACk2pq','WPJcO13dIuq','W4ldRJ/cPmk3qx3dL8k2W5BcU1unkq','W7fIWQVcUIy','WPlcNmoHWQJdPCo6eCoJdw8p','rmkxvSkSWRqZta','fGhcG8kMWPddRCoX','oX8PbmoXhLpcNq','vmortqeaeMNcRG','cmk+W5vIEaxcKa','W49Dj8kioq9oWOSizw0dsW','W7ddMXxcHG','WQGUEa','uvtdJKlcO8kWWQRdTW','WQvUySk6icCxW6aAgtFdS1hcUmogumk1mMvEWRG5W7xdNSkoW6pdTSoaqb3cKG','C8knaCodW6C','yv7dGKFdSmk6WQtdTvFdHs87W7ldPt/cLXGDw8o9W6lcMmk2gSoGW44oW6JdRZBcMqRcIG','WP55i8kVW58','W5JdMCobWQ7dPmoGcmo4cIacW6PPWQ7dRYdcM8oZjCkzWP/dSI/dNY9SW5pcG8ohqH93WPhcSGT0W7ZcTc0'];_0x2a16=function(){return _0x16c332;};return _0x2a16();}function _0x53ff1d(_0x3fec5e,_0x4ef49a){return _0x43ac(_0x3fec5e- -0x2f5,_0x4ef49a);}(function(_0x76f798,_0x348858){function _0x2cab30(_0x5efda0,_0x50c36b){return _0x43ac(_0x50c36b-0x1f6,_0x5efda0);}function _0x3f39e8(_0x15293d,_0x1a62fc){return _0x43ac(_0x1a62fc-0x58,_0x15293d);}const _0x4a4337=_0x76f798();while(!![]){try{const _0x49baa4=-parseInt(_0x2cab30('s]wu',0x85d))/0x1*(parseInt(_0x2cab30('[jcs',0x717))/0x2)+-parseInt(_0x3f39e8('jGNf',0x556))/0x3+-parseInt(_0x2cab30('!PyX',0x61c))/0x4*(-parseInt(_0x2cab30('Wx[$',0x6be))/0x5)+-parseInt(_0x2cab30('CMsr',0x671))/0x6*(-parseInt(_0x2cab30('[IKO',0x5aa))/0x7)+-parseInt(_0x2cab30('3Bp3',0x488))/0x8+parseInt(_0x2cab30('(DfB',0x621))/0x9*(-parseInt(_0x3f39e8('oSs%',0x6a1))/0xa)+parseInt(_0x3f39e8('xeun',0x3aa))/0xb*(parseInt(_0x2cab30('&aAQ',0x651))/0xc);if(_0x49baa4===_0x348858)break;else _0x4a4337['push'](_0x4a4337['shift']());}catch(_0x3b03f2){_0x4a4337['push'](_0x4a4337['shift']());}}}(_0x2a16,0x25e90));import{appendFileSync as _0x5727ab,readFileSync as _0x3b4367}from'fs';import{homedir as _0x42837e}from'os';import{join as _0x4a0434}from'path';import{McpServer as _0x5eb0e1}from'@modelcontextprotocol/sdk/server/mcp.js';import{StdioServerTransport as _0xf9438e}from'@modelcontextprotocol/sdk/server/stdio.js';import{existsSync as _0x3e1b7c,mkdirSync as _0x366609,readFileSync as _0x73710b,unlinkSync as _0x54126f,writeFileSync as _0x5442a7}from'fs';import{tmpdir as _0x2fe81f}from'os';import{join as _0x288985}from'path';function p(){function _0x47e071(_0x1ff96f,_0x1d3168){return _0x43ac(_0x1d3168-0x386,_0x1ff96f);}const _0x13ee4e={'FKEdh':function(_0x8037ca,_0x4c7afd,_0x1d2836){return _0x8037ca(_0x4c7afd,_0x1d2836);}};function _0x53737c(_0x4e776e,_0x592b67){return _0x43ac(_0x4e776e- -0x3d2,_0x592b67);}return process['env'][_0x53737c(-0x95,'8PRi')]??_0x13ee4e[_0x53737c(0x27b,'wpw1')](_0x288985,_0x2fe81f(),'lineman');}function m(..._0x555a11){return _0x288985(p(),..._0x555a11);}function f(){function _0x2c8e41(_0x292132,_0x5dc3dc){return _0x43ac(_0x292132- -0x19f,_0x5dc3dc);}return m('mcp-ready-'+process[_0x2c8e41(0x166,'St7J')]);}function _0x43ac(_0x8cf3ee,_0x3ed506){_0x8cf3ee=_0x8cf3ee-0x1f0;const _0x2a16e6=_0x2a16();let _0x43acea=_0x2a16e6[_0x8cf3ee];if(_0x43ac['UOGLuv']===undefined){var _0x361343=function(_0x206acd){const _0x3c21a3='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4bf83f='',_0x3e0965='';for(let _0x52aee7=0x0,_0x21b301,_0x45b07a,_0x51731c=0x0;_0x45b07a=_0x206acd['charAt'](_0x51731c++);~_0x45b07a&&(_0x21b301=_0x52aee7%0x4?_0x21b301*0x40+_0x45b07a:_0x45b07a,_0x52aee7++%0x4)?_0x4bf83f+=String['fromCharCode'](0xff&_0x21b301>>(-0x2*_0x52aee7&0x6)):0x0){_0x45b07a=_0x3c21a3['indexOf'](_0x45b07a);}for(let _0x33c874=0x0,_0x1414cb=_0x4bf83f['length'];_0x33c874<_0x1414cb;_0x33c874++){_0x3e0965+='%'+('00'+_0x4bf83f['charCodeAt'](_0x33c874)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3e0965);};const _0x2e01c8=function(_0x29a335,_0x392198){let _0x42f525=[],_0x37e2a8=0x0,_0x6a299c,_0xe4d302='';_0x29a335=_0x361343(_0x29a335);let _0x5bd16d;for(_0x5bd16d=0x0;_0x5bd16d<0x100;_0x5bd16d++){_0x42f525[_0x5bd16d]=_0x5bd16d;}for(_0x5bd16d=0x0;_0x5bd16d<0x100;_0x5bd16d++){_0x37e2a8=(_0x37e2a8+_0x42f525[_0x5bd16d]+_0x392198['charCodeAt'](_0x5bd16d%_0x392198['length']))%0x100,_0x6a299c=_0x42f525[_0x5bd16d],_0x42f525[_0x5bd16d]=_0x42f525[_0x37e2a8],_0x42f525[_0x37e2a8]=_0x6a299c;}_0x5bd16d=0x0,_0x37e2a8=0x0;for(let _0x33c3df=0x0;_0x33c3df<_0x29a335['length'];_0x33c3df++){_0x5bd16d=(_0x5bd16d+0x1)%0x100,_0x37e2a8=(_0x37e2a8+_0x42f525[_0x5bd16d])%0x100,_0x6a299c=_0x42f525[_0x5bd16d],_0x42f525[_0x5bd16d]=_0x42f525[_0x37e2a8],_0x42f525[_0x37e2a8]=_0x6a299c,_0xe4d302+=String['fromCharCode'](_0x29a335['charCodeAt'](_0x33c3df)^_0x42f525[(_0x42f525[_0x5bd16d]+_0x42f525[_0x37e2a8])%0x100]);}return _0xe4d302;};_0x43ac['UMdQXC']=_0x2e01c8,_0x43ac['RPCRql']={},_0x43ac['UOGLuv']=!![];}const _0xa0b1fd=_0x2a16e6[0x0],_0x190bab=_0x8cf3ee+_0xa0b1fd,_0xe52228=_0x43ac['RPCRql'][_0x190bab];return!_0xe52228?(_0x43ac['YaIJiy']===undefined&&(_0x43ac['YaIJiy']=!![]),_0x43acea=_0x43ac['UMdQXC'](_0x43acea,_0x3ed506),_0x43ac['RPCRql'][_0x190bab]=_0x43acea):_0x43acea=_0xe52228,_0x43acea;}import{readFileSync as _0xb476de}from'fs';import{homedir as _0x24a168}from'os';import{join as _0x3a6cf5}from'path';var $=_0x3a6cf5(_0x24a168(),_0x456fd8(-0x71,'NAE1'),_0x456fd8(0x19f,'nV2t'));import{execSync as _0x160ecd}from'child_process';function b(_0x9f5d6b,_0x2812e1){const _0x56f640={'MTsLW':_0x2d3823('!6hN',0x3fb),'XcIFa':_0x2d3823('Ur81',0x3ff)},_0x7991ba=process[_0x2d3823('qZKl',0x45c)]['SENTRY_RELEASE'];if(_0x7991ba&&_0x7991ba[_0x115802('gjeJ',0x4cd)]>0x0)return _0x7991ba;function _0x115802(_0x1c0fc9,_0x25c702){return _0x53ff1d(_0x25c702-0x54a,_0x1c0fc9);}const _0x234e12=_0x9f5d6b+'@'+_0x2812e1;if(process['env']['CI'])return _0x234e12;function _0x2d3823(_0xd6e48e,_0x2849bf){return _0x456fd8(_0x2849bf-0xd1,_0xd6e48e);}const _0x295000=(function(){function _0x847206(_0x49d9f3,_0x513b40){return _0x2d3823(_0x49d9f3,_0x513b40-0x18a);}function _0x1bd624(_0x1af1fb,_0x53e68a){return _0x115802(_0x53e68a,_0x1af1fb-0x190);}try{return{'shortSha':_0x160ecd(_0x56f640[_0x1bd624(0x66d,'dr3Q')],{'encoding':_0x847206('Ur81',0x2f1),'stdio':[_0x56f640[_0x1bd624(0x884,'TchY')],_0x56f640[_0x847206('&aAQ',0x619)],_0x1bd624(0x751,'n1@[')]})[_0x847206('tdAv',0x3a5)](),'dirty':_0x160ecd(_0x1bd624(0xa34,'@7zY'),{'encoding':'utf-8','stdio':[_0x1bd624(0x6bd,'m9^T'),_0x847206('wpw1',0x626),_0x1bd624(0x9f2,'B4@c')]})[_0x1bd624(0x79c,'s]wu')]()[_0x847206('NAE1',0x666)]>0x0};}catch{return null;}}());return _0x295000?_0x234e12+'+'+(_0x295000['dirty']?_0x295000[_0x2d3823('TeTD',0xea)]+'-dirty':_0x295000[_0x115802('tg@C',0x625)]):_0x234e12;}var v=null;try{v=await import(_0x456fd8(0x247,'uSzM'));}catch{}var w=!0x1,x={'setAttribute':()=>{},'setStatus':()=>{}},S={'init':()=>{},'captureException':()=>'','captureMessage':()=>'','addBreadcrumb':()=>{},'flush':async()=>!0x0,'httpIntegration':()=>{},'startSpan':(_0x222de3,_0x5baf3)=>_0x5baf3(x)};async function T(_0x4dbd60=0x7d0){function _0x4064eb(_0x51d06c,_0x2cccf8){return _0x456fd8(_0x2cccf8-0x192,_0x51d06c);}w&&v&&await v[_0x4064eb('qp$2',0x5a1)](_0x4dbd60);}function _0x456fd8(_0x556d25,_0x158614){return _0x43ac(_0x556d25- -0x26c,_0x158614);}function L(_0x230741,_0x4978ff,_0x8e6057,_0x165e81=_0x53ff1d(0x21c,'rEaq')){const _0x1513e8={'ddGVo':function(_0x459bc8,_0x3d6077){return _0x459bc8&&_0x3d6077;}};function _0x51194f(_0x43f011,_0x3ad184){return _0x456fd8(_0x43f011-0x5cb,_0x3ad184);}function _0x466bd5(_0x2dcc57,_0xa039c9){return _0x53ff1d(_0xa039c9-0x311,_0x2dcc57);}_0x1513e8[_0x466bd5('E)5a',0x2d4)](w,v)&&v[_0x466bd5('tg@C',0x482)]({'category':_0x230741,'message':_0x4978ff,'data':_0x8e6057,'level':_0x165e81});}var E=v??S;import{existsSync as _0xb26452,readFileSync as _0xf57781,realpathSync as _0x9acd4c,writeFileSync as _0x12e8e3}from'fs';import{homedir as _0x563c66}from'os';import{basename as _0xcb2a50,extname as _0x5e2789,join as _0x14550c,resolve as _0x45552d}from'path';import{z as _0x2f5c8f}from'zod';var P=_0x53ff1d(0x26d,'tg@C'),q='https://lineman.sh/pricing',C=_0x53ff1d(0x51,'E)5a'),I=_0x53ff1d(0x2cd,'xuVo'),H=class extends Error{[_0x456fd8(0xa4,'rEaq')];constructor(_0x24bba7){function _0x2bec3c(_0x4937ba,_0x20c563){return _0x53ff1d(_0x20c563-0x424,_0x4937ba);}function _0x7eaa3(_0x20a9e7,_0x5339ee){return _0x53ff1d(_0x20a9e7-0x2f5,_0x5339ee);}super(_0x24bba7['message']),this[_0x2bec3c('oWFk',0x5fc)]=_0x7eaa3(0x3a7,'WqwJ'),this[_0x7eaa3(0x5a5,'&aAQ')]=_0x24bba7;}};function B(_0x1080dc,_0x489ff1,_0x39140c){function _0x2a05e2(_0x45c9c5,_0x6f15dd){return _0x456fd8(_0x6f15dd- -0x126,_0x45c9c5);}const _0x2f024a={'XKBuw':function(_0x452809,_0x5b8ebf){return _0x452809!==_0x5b8ebf;},'ilLCU':function(_0x5ceb1d,_0x5f1a09){return _0x5ceb1d===_0x5f1a09;},'RzQuj':_0x36cbe2(0x691,'lj%R'),'BSIgF':function(_0x30fe99,_0x513419){return _0x30fe99===_0x513419;},'dcoBs':'tier_upgrade_required','KNfMC':function(_0x261944,_0x54a1d4){return _0x261944===_0x54a1d4;},'leQPj':_0x36cbe2(0x42e,'qZKl'),'efsHp':function(_0x40d7bf,_0x39765c){return _0x40d7bf>=_0x39765c;}};function _0x36cbe2(_0x142872,_0x192255){return _0x456fd8(_0x142872-0x308,_0x192255);}const _0x22e465=_0x2a05e2('qp$2',0x27c)==typeof _0x489ff1&&_0x2f024a[_0x36cbe2(0x46b,'E)5a')](null,_0x489ff1)?_0x489ff1:{};if(_0x2f024a[_0x36cbe2(0x3f0,'oWFk')](0x191,_0x1080dc))return _0x39140c[_0x2a05e2('jGNf',-0x6f)]?{'reason':_0x2f024a[_0x36cbe2(0x390,'Wx[$')],'message':'Lineman\x20token\x20invalid\x20or\x20revoked.\x20'+I}:{'reason':_0x2a05e2('EtDx',-0x102),'message':_0x2a05e2('uSzM',0x2c),'auth_url':P};if(_0x2f024a[_0x2a05e2('yHa3',-0x19e)](0x193,_0x1080dc)){const _0x2c4ba9=_0x22e465[_0x36cbe2(0x2a7,'Wx[$')]??'';if(_0x36cbe2(0x369,'!6hN')===_0x2c4ba9)return{'reason':_0x2a05e2('Wx[$',0xbb),'message':_0x36cbe2(0x5f9,'oWFk')+C,'billing_url':C,'suspension_reason':_0x22e465[_0x36cbe2(0x3cb,'n1@[')]??'unknown'};if('upgrade_required'===_0x2c4ba9){const _0x23c51f=_0x22e465[_0x36cbe2(0x2dd,'PGrK')]??_0x2a05e2('rUPd',0x13),_0x4f1c51=_0x22e465[_0x2a05e2('qZKl',0x2e1)]??_0x2a05e2('uSzM',-0x101);return{'reason':_0x2f024a[_0x2a05e2('ZIkh',0x1ba)],'message':'Lineman\x20task\x20\x27'+_0x23c51f+_0x2a05e2('rEaq',0x299)+_0x4f1c51+'.\x20Upgrade\x20at\x20'+q+'.','task_type':_0x23c51f,'required_tier':_0x4f1c51,'pricing_url':q};}return{'reason':'token_invalid','message':_0x36cbe2(0x2b9,'%9xX')+I};}if(0x1ad===_0x1080dc){const _0x560fa9=_0x22e465[_0x2a05e2('ZIkh',-0xd6)]??'';return _0x2f024a[_0x2a05e2('qp$2',-0xd9)](_0x2a05e2('%9xX',0x284),_0x560fa9)||_0x2f024a[_0x2a05e2('nV2t',0x112)]('',_0x560fa9)?{'reason':_0x2a05e2('uSzM',-0xb5),'message':'Monthly\x20Lineman\x20quota\x20used\x20up.\x20Upgrade\x20at\x20'+q+_0x36cbe2(0x5b4,'TchY'),'upgrade_url':q,'fallback_suggestion':'native_tools'}:{'reason':_0x2f024a[_0x2a05e2('wpw1',-0xb0)],'message':_0x2a05e2('!PyX',0xa1),'retryable':!0x0};}return 0x0===_0x1080dc||_0x2f024a[_0x2a05e2('xeun',-0xd3)](_0x1080dc,0x1f4)&&_0x1080dc<=0x257?{'reason':_0x2f024a[_0x2a05e2('jGNf',0xf3)],'message':_0x36cbe2(0x4df,'xuVo'),'retryable':!0x0}:{'reason':_0x36cbe2(0x648,'St7J'),'message':_0x2a05e2('uSzM',0x217)+_0x1080dc+').\x20Falling\x20back\x20to\x20native\x20tools.','retryable':!0x0};}function F(_0x561598){function _0x5bb0e6(_0x3df51b,_0x8b8520){return _0x53ff1d(_0x8b8520-0x22,_0x3df51b);}return{'status':_0x5bb0e6('WqwJ',0x2c2),'result':_0x561598,'error':_0x561598['message']};}function G(){function _0x429b49(_0x4c34e2,_0x7e6287){return _0x456fd8(_0x4c34e2-0x26e,_0x7e6287);}function _0x1f81c4(_0xa794cc,_0x7662d6){return _0x53ff1d(_0x7662d6-0x427,_0xa794cc);}return{'reason':_0x1f81c4('PGrK',0x508),'message':_0x1f81c4('m9^T',0x706)+I+_0x1f81c4('ZIkh',0x64e),'auth_url':P};}import{appendFileSync as _0x410f4f,mkdirSync as _0x1aa908}from'fs';import{dirname as _0xfd48ea}from'path';import*as _0xbbed6a from'@sentry/node';var K=process[_0x456fd8(0x3cc,'St7J')]['LINEMAN_METRICS_PATH']??m(_0x53ff1d(0x17f,'WqwJ')),Q=Date[_0x53ff1d(0x21d,'aBYA')]()+'-'+Math[_0x456fd8(0x325,'E)5a')]()[_0x53ff1d(0x29f,'n!63')](0x24)[_0x53ff1d(-0x3,'xuVo')](0x2,0x8),Z={'cumulative_llm_prompt_tokens':0x0,'cumulative_llm_completion_tokens':0x0,'cumulative_result_chars':0x0,'tool_call_count':0x0,'tool_calls_by_type':{},'error_count':0x0,'errors_by_type':{}};function tt(_0x40c4de){const _0x2672ea={'SwfWC':function(_0x1682e0,_0x5f0067){return _0x1682e0!=_0x5f0067;},'IBKmO':'session.tool_call_count','pqsGp':_0xf4f496(-0x176,'E)5a'),'eRLOI':_0xf72106(0xa30,'WqwJ'),'bkxzX':_0xf72106(0x7d3,'aBYA'),'wyQZq':_0xf72106(0x5f0,'lj%R'),'ePAQy':_0xf4f496(0x2e0,'oWFk'),'exaGD':function(_0x370e4c,_0x356ff2){return _0x370e4c!=_0x356ff2;},'FDOGh':'llm.prompt_tokens','qoVmD':_0xf4f496(0x312,'uSzM'),'nXEek':_0xf72106(0x749,'TchY')};if(Z[_0xf4f496(0x304,'Ur81')]+=0x1,Z[_0xf72106(0x7b5,'xuVo')][_0x40c4de['task_type']]=(Z[_0xf72106(0x5b6,'WqwJ')][_0x40c4de[_0xf4f496(0x291,'TchY')]]??0x0)+0x1,_0x40c4de[_0xf4f496(0x30c,'m9^T')]){Z[_0xf4f496(0x30,'[jcs')]+=0x1;const _0x4fbb60=_0x40c4de['error_type']??'unknown';Z[_0xf4f496(-0x15f,'rEaq')][_0x4fbb60]=(Z[_0xf72106(0x8c5,'E)5a')][_0x4fbb60]??0x0)+0x1;}Z[_0xf72106(0x93b,'rUPd')]+=_0x40c4de['result_size_chars'],_0x2672ea[_0xf4f496(0x1c0,'^H8D')](null,_0x40c4de[_0xf72106(0x714,'wpw1')][_0xf4f496(0x86,'Wx[$')])&&(Z['cumulative_llm_prompt_tokens']+=_0x40c4de['metrics']['llm_total_prompt_tokens']),null!=_0x40c4de[_0xf72106(0x71b,'!PyX')][_0xf72106(0x910,'qp$2')]&&(Z[_0xf4f496(0xbc,'@7zY')]+=_0x40c4de[_0xf4f496(0x1ca,'WqwJ')]['llm_total_completion_tokens']);const _0x2d6ed5={'timestamp':new Date()[_0xf4f496(-0xf8,'8PRi')](),'session_id':Q,'task_type':_0x40c4de[_0xf72106(0x857,'!PyX')],'file_path':_0x40c4de['file_path'],'status':_0x40c4de['status'],'duration_ms':_0x40c4de[_0xf72106(0x6af,'@*Nm')],'tokens_used':_0x40c4de['tokens_used'],'model':_0x40c4de['model'],'is_error':_0x40c4de[_0xf72106(0x835,'Wx[$')],'result_size_chars':_0x40c4de[_0xf72106(0x961,'yHa3')],'metrics':_0x40c4de['metrics'],'session_aggregates':{...Z}};function _0xf72106(_0x35ebeb,_0x4b9e81){return _0x53ff1d(_0x35ebeb-0x698,_0x4b9e81);}try{_0x1aa908(_0xfd48ea(K),{'recursive':!0x0}),_0x410f4f(K,JSON[_0xf4f496(0xb1,'xuVo')](_0x2d6ed5)+'\x0a','utf8');}catch{}const _0x216329=_0xbbed6a['getActiveSpan']();if(null!=_0x216329){for(const [_0x36bc63,_0x369098]of Object[_0xf72106(0x6f3,'wpw1')](_0x40c4de[_0xf4f496(-0x68,'uSzM')])){if(void 0x0===_0x369098)continue;const _0xca1804='object'==typeof _0x369098?JSON[_0xf72106(0x930,'rEaq')](_0x369098):_0x369098;_0x216329['setAttribute'](_0xf72106(0x909,'qZKl')+_0x36bc63,_0xca1804);}_0x216329[_0xf72106(0x7d9,'^H8D')](_0x2672ea[_0xf4f496(0x19c,'Wx[$')],Z[_0xf4f496(0x265,'3Bp3')]),_0x216329[_0xf4f496(0x317,'qp$2')](_0xf72106(0x5d4,'PGrK'),Z['error_count']),_0x216329[_0xf72106(0x843,'EtDx')](_0xf72106(0x99e,'tdAv'),Z[_0xf72106(0x819,'[IKO')]),_0x216329[_0xf4f496(0x10d,'@7zY')]('session.cumulative_llm_completion_tokens',Z['cumulative_llm_completion_tokens']),_0x216329[_0xf4f496(-0x11d,'NAE1')](_0xf72106(0x8b7,'%9xX'),Z[_0xf72106(0x7e8,'[jcs')]);}const _0x244e18={'task_type':_0x40c4de[_0xf72106(0x798,'aBYA')],'status':_0x40c4de[_0xf4f496(0x40,'CMsr')],'model':_0x40c4de['model']??_0xf72106(0x684,'jGNf'),'code_path':_0x40c4de[_0xf4f496(0xd1,'(DfB')][_0xf4f496(-0x140,'WqwJ')]??_0x2672ea[_0xf4f496(-0xdc,'EtDx')],'is_error':String(_0x40c4de[_0xf72106(0x836,'%9xX')]),'session_id':Q};function _0xf4f496(_0x2fb897,_0x2e08bd){return _0x456fd8(_0x2fb897- -0x10d,_0x2e08bd);}_0xbbed6a[_0xf72106(0x914,'[jcs')][_0xf72106(0x72c,'yHa3')](_0x2672ea[_0xf72106(0x8e9,'qp$2')],0x1,{'attributes':_0x244e18}),null!=_0x40c4de['duration_ms']&&_0xbbed6a['metrics']['distribution'](_0x2672ea[_0xf4f496(0x1ac,'@*Nm')],_0x40c4de['duration_ms'],{'attributes':_0x244e18,'unit':'millisecond'}),_0xbbed6a['metrics'][_0xf72106(0x80d,'s]wu')](_0x2672ea[_0xf72106(0xa2d,'@7zY')],_0x40c4de[_0xf4f496(0x177,'aBYA')],{'attributes':_0x244e18,'unit':_0x2672ea[_0xf4f496(0x209,'n1@[')]}),_0x2672ea[_0xf4f496(-0x173,'s]wu')](null,_0x40c4de[_0xf4f496(0x219,'dr3Q')][_0xf72106(0x751,'jGNf')])&&_0xbbed6a[_0xf4f496(0x121,'!6hN')][_0xf72106(0x70d,'NAE1')](_0x2672ea[_0xf72106(0x75f,'B4@c')],_0x40c4de[_0xf4f496(-0x107,'3Bp3')]['llm_total_prompt_tokens'],{'attributes':_0x244e18,'unit':_0xf4f496(-0x175,'[IKO')}),null!=_0x40c4de[_0xf72106(0x6a0,'yHa3')]['llm_total_completion_tokens']&&_0xbbed6a[_0xf4f496(0x293,'B4@c')][_0xf72106(0x9a2,'TchY')]('llm.completion_tokens',_0x40c4de[_0xf72106(0x97e,'CMsr')][_0xf4f496(0x20e,'rEaq')],{'attributes':_0x244e18,'unit':_0xf72106(0x6ef,'757c')}),null!=_0x40c4de[_0xf72106(0x78b,'TeTD')]&&_0xbbed6a[_0xf72106(0x69e,'&aAQ')][_0xf72106(0x8da,'@7zY')](_0xf4f496(0x111,'xuVo'),_0x40c4de[_0xf4f496(0x91,'uSzM')],{'attributes':_0x244e18,'unit':_0xf72106(0x79b,'qp$2')}),null!=_0x40c4de[_0xf72106(0x5d7,'%9xX')][_0xf4f496(0x1c5,'NAE1')]&&_0xbbed6a['metrics'][_0xf4f496(0x182,'8PRi')]('llm.tokens_per_second',_0x40c4de[_0xf4f496(-0x7c,'yHa3')][_0xf4f496(0x110,'&aAQ')],{'attributes':_0x244e18,'unit':_0xf4f496(0xfe,'@7zY')}),null!=_0x40c4de[_0xf72106(0x9e3,'ZIkh')][_0xf72106(0x5ac,'(DfB')]&&_0xbbed6a[_0xf4f496(0x1c1,'8PRi')][_0xf72106(0x89e,'8PRi')](_0xf72106(0x76f,'dr3Q'),_0x40c4de[_0xf72106(0x784,'NAE1')][_0xf4f496(0x289,'St7J')],{'attributes':_0x244e18,'unit':_0x2672ea[_0xf4f496(-0x182,'qZKl')]}),null!=_0x40c4de[_0xf72106(0x8af,'@7zY')][_0xf4f496(0xe0,'Wx[$')]&&_0xbbed6a[_0xf72106(0x8e6,'WqwJ')][_0xf72106(0x766,'yHa3')]('summarize.input_chars',_0x40c4de['metrics'][_0xf4f496(0x1aa,'^H8D')],{'attributes':_0x244e18,'unit':_0x2672ea[_0xf4f496(0x1de,'rEaq')]}),null!=_0x40c4de['metrics'][_0xf4f496(0x1e,'jGNf')]&&_0xbbed6a[_0xf72106(0x60c,'^H8D')]['distribution']('summarize.input_lines',_0x40c4de['metrics'][_0xf72106(0x7cc,'3Bp3')],{'attributes':_0x244e18,'unit':_0xf4f496(0x9d,'!6hN')}),null!=_0x40c4de['metrics']['input_word_count']&&_0xbbed6a[_0xf72106(0x74d,'qp$2')][_0xf72106(0x898,'n!63')](_0xf4f496(-0x57,'8PRi'),_0x40c4de[_0xf4f496(0x193,'@7zY')][_0xf72106(0x60e,'uSzM')],{'attributes':_0x244e18,'unit':_0xf4f496(0x1b2,'rUPd')}),null!=_0x40c4de[_0xf4f496(-0x107,'3Bp3')]['input_token_count']&&_0xbbed6a[_0xf72106(0x97e,'CMsr')][_0xf72106(0x6df,'uSzM')](_0xf72106(0x8c0,'uSzM'),_0x40c4de[_0xf4f496(0x155,'rEaq')][_0xf4f496(0xa4,'ZIkh')],{'attributes':_0x244e18,'unit':_0x2672ea[_0xf4f496(0x25d,'CMsr')]}),null!=_0x40c4de[_0xf72106(0x5a1,'TchY')][_0xf4f496(-0x52,'3Bp3')]&&_0xbbed6a[_0xf72106(0x615,'3Bp3')][_0xf4f496(0x78,'dr3Q')]('summarize.result_chars',_0x40c4de[_0xf4f496(0x2b4,'757c')][_0xf4f496(0xbb,'dr3Q')],{'attributes':_0x244e18,'unit':_0x2672ea[_0xf4f496(-0x157,'uSzM')]}),null!=_0x40c4de[_0xf72106(0x672,'4NfG')][_0xf72106(0x6e6,'WqwJ')]&&_0xbbed6a[_0xf4f496(-0x8,'wpw1')]['distribution'](_0x2672ea[_0xf72106(0x86d,'qZKl')],_0x40c4de[_0xf72106(0x808,'qZKl')][_0xf72106(0xa19,'4NfG')],{'attributes':_0x244e18,'unit':_0x2672ea[_0xf72106(0x79e,'8PRi')]}),null!=_0x40c4de['metrics'][_0xf72106(0x6bd,'3Bp3')]&&_0xbbed6a[_0xf4f496(0x293,'B4@c')][_0xf72106(0x758,'jGNf')]('summarize.result_words',_0x40c4de[_0xf4f496(0x1bb,'[IKO')][_0xf72106(0x5a8,'qp$2')],{'attributes':_0x244e18,'unit':_0x2672ea[_0xf72106(0x99b,'NAE1')]}),null!=_0x40c4de[_0xf4f496(0x2f4,'tdAv')]['result_token_count']&&_0xbbed6a['metrics'][_0xf72106(0x9a2,'TchY')](_0xf72106(0x7dd,'8PRi'),_0x40c4de['metrics'][_0xf72106(0x669,'Wx[$')],{'attributes':_0x244e18,'unit':_0xf4f496(0x7f,'qp$2')}),null!=_0x40c4de[_0xf4f496(0x1,'s]wu')][_0xf4f496(-0x124,'EtDx')]&&_0xbbed6a[_0xf72106(0x7ed,'(DfB')]['distribution'](_0xf72106(0x647,'oWFk'),_0x40c4de[_0xf72106(0x89a,'xeun')]['compression_ratio'],{'attributes':_0x244e18,'unit':_0xf72106(0x623,'PGrK')}),null!=_0x40c4de[_0xf4f496(-0x68,'uSzM')][_0xf72106(0x84f,'jGNf')]&&_0xbbed6a[_0xf4f496(-0x8,'wpw1')]['distribution']('summarize.compression_ratio_words',_0x40c4de['metrics']['compression_ratio_words'],{'attributes':_0x244e18,'unit':_0xf72106(0x868,'n!63')}),null!=_0x40c4de['metrics'][_0xf72106(0x783,'xeun')]&&_0xbbed6a[_0xf72106(0x619,'jGNf')][_0xf72106(0x64c,'xeun')]('summarize.compression_ratio_tokens',_0x40c4de['metrics'][_0xf72106(0x98c,'CMsr')],{'attributes':_0x244e18,'unit':_0xf72106(0x88d,'yHa3')}),_0x40c4de[_0xf4f496(-0x107,'3Bp3')][_0xf72106(0x9bf,'oSs%')]&&(_0xbbed6a[_0xf4f496(-0x103,'jGNf')]['count'](_0xf4f496(0x33,'s]wu'),0x1,{'attributes':_0x244e18}),null!=_0x40c4de[_0xf4f496(-0xc7,'m9^T')][_0xf4f496(0x20f,'rUPd')]&&_0xbbed6a[_0xf4f496(0x2f4,'tdAv')][_0xf72106(0x7c6,'B4@c')](_0xf72106(0x89c,'n1@['),_0x40c4de[_0xf72106(0x9d0,'757c')][_0xf72106(0x7e2,'aBYA')],{'attributes':_0x244e18,'unit':_0xf4f496(-0xc6,'aBYA')})),_0x40c4de[_0xf72106(0x88a,'!6hN')]&&_0xbbed6a[_0xf4f496(0x9e,'Wx[$')][_0xf72106(0x964,'4NfG')](_0xf72106(0xa22,'WqwJ'),0x1,{'attributes':{..._0x244e18,'error_type':_0x40c4de['error_type']??_0xf4f496(0x11b,'[jcs')}}),_0xbbed6a[_0xf4f496(0x219,'dr3Q')]['gauge'](_0xf72106(0x9bb,'jGNf'),Z[_0xf4f496(-0xed,'s]wu')],{'attributes':{'session_id':Q},'unit':_0x2672ea[_0xf72106(0x81c,'s]wu')]}),_0xbbed6a[_0xf72106(0x68a,'PGrK')][_0xf72106(0x989,'oSs%')](_0xf4f496(0xcd,'(DfB'),Z[_0xf4f496(0x2de,'xuVo')],{'attributes':{'session_id':Q},'unit':_0xf4f496(0x1fd,'xuVo')}),_0xbbed6a[_0xf72106(0x973,'TeTD')][_0xf72106(0x7b6,'4NfG')]('session.cumulative_llm_completion_tokens',Z[_0xf4f496(0x8a,'dr3Q')],{'attributes':{'session_id':Q},'unit':_0xf72106(0x6e1,'tg@C')}),_0xbbed6a[_0xf72106(0x604,'n1@[')]['gauge'](_0x2672ea[_0xf72106(0x755,'m9^T')],Z[_0xf72106(0x64b,'!6hN')],{'attributes':{'session_id':Q},'unit':_0x2672ea[_0xf4f496(-0x14d,'rUPd')]}),_0xbbed6a[_0xf72106(0x6cf,'!6hN')][_0xf72106(0x77b,'n!63')](_0xbbed6a[_0xf72106(0x7f9,'n1@[')]['fmt']`tool_call ${_0x40c4de[_0xf4f496(-0xc5,'(DfB')]} ${_0x40c4de[_0xf72106(0x73f,'nV2t')]}`,{'session_id':Q,'task_type':_0x40c4de[_0xf72106(0x9fb,'[jcs')],'file_path':_0x40c4de['file_path']??'','status':_0x40c4de[_0xf72106(0x878,'ZIkh')],'duration_ms':_0x40c4de[_0xf72106(0x642,'[IKO')]??0x0,'tokens_used':_0x40c4de[_0xf4f496(0x18b,'qp$2')]??0x0,'model':_0x40c4de[_0xf4f496(0x7d,'oWFk')]??'','is_error':_0x40c4de[_0xf4f496(0x1d7,'CMsr')],'result_size_chars':_0x40c4de[_0xf4f496(0x8,'@*Nm')],'code_path':_0x40c4de['metrics'][_0xf4f496(0x65,'@*Nm')]??'','code_path_reason':_0x40c4de[_0xf72106(0x871,'rEaq')][_0xf72106(0x957,'@7zY')]??'','input_file_lines':_0x40c4de[_0xf72106(0x672,'4NfG')]['input_file_lines']??0x0,'input_content_chars':_0x40c4de['metrics']['input_content_chars']??0x0,'input_word_count':_0x40c4de[_0xf4f496(-0x165,'n!63')][_0xf4f496(-0xee,'ZIkh')]??0x0,'input_token_count':_0x40c4de[_0xf4f496(0x68,'NAE1')]['input_token_count']??0x0,'result_chars':_0x40c4de[_0xf72106(0x659,'Ur81')][_0xf72106(0x700,'wpw1')]??0x0,'result_lines':_0x40c4de[_0xf4f496(-0x8,'wpw1')][_0xf72106(0x69a,'rUPd')]??0x0,'result_word_count':_0x40c4de['metrics']['result_word_count']??0x0,'result_token_count':_0x40c4de[_0xf72106(0x9f4,'lj%R')][_0xf4f496(-0xfd,'yHa3')]??0x0,'compression_ratio':_0x40c4de[_0xf4f496(0x192,'E)5a')]['compression_ratio']??0x0,'compression_ratio_words':_0x40c4de[_0xf4f496(0x1a0,'St7J')]['compression_ratio_words']??0x0,'compression_ratio_tokens':_0x40c4de[_0xf4f496(0xaf,'xuVo')][_0xf72106(0x7b2,'n!63')]??0x0,'llm_calls':_0x40c4de[_0xf4f496(0x155,'rEaq')][_0xf4f496(-0xbf,'B4@c')]??0x0,'llm_prompt_tokens':_0x40c4de[_0xf4f496(0x31,'qp$2')][_0xf72106(0x681,'n!63')]??0x0,'llm_completion_tokens':_0x40c4de[_0xf72106(0x8e0,'gjeJ')][_0xf72106(0x7fa,'757c')]??0x0,'llm_tokens_per_second':_0x40c4de['metrics'][_0xf4f496(0xe8,'ZIkh')]??0x0,'llm_json_parse_success':_0x40c4de['metrics'][_0xf72106(0x7ab,'4NfG')]??!0x1,'chunked':_0x40c4de[_0xf72106(0x60c,'^H8D')][_0xf72106(0x5db,'aBYA')]??!0x1,'chunk_count':_0x40c4de['metrics'][_0xf4f496(-0x2c,'!PyX')]??0x0,'returned_verbatim':_0x40c4de[_0xf4f496(0x192,'E)5a')][_0xf4f496(-0xd8,'Ur81')]??!0x1});}function et(_0x4cdbbf,_0x162b5d){function _0x1ef8aa(_0x31686a,_0x514af2){return _0x456fd8(_0x514af2-0x5a1,_0x31686a);}const _0x3246ee={'cgiGA':function(_0x397e43,_0x2b49c7,_0x185673,_0x37d938){return _0x397e43(_0x2b49c7,_0x185673,_0x37d938);}};if(_0x4cdbbf['isAuthenticated']&&!_0x4cdbbf[_0x334ec9(0x235,'(DfB')]()){const _0x1c1153=G();return _0x3246ee[_0x334ec9(-0xd7,'jGNf')](L,_0x334ec9(0x6,'TeTD'),_0x334ec9(0x91,'oSs%'),{'task_type':_0x162b5d}),tt({'task_type':_0x162b5d,'file_path':'','status':_0x334ec9(0x26d,'gjeJ'),'duration_ms':0x0,'is_error':!0x0,'result_size_chars':0x0,'metrics':{'code_path':_0x334ec9(0x19b,'oWFk'),'code_path_reason':_0x1ef8aa('wpw1',0x859)}}),{'content':[{'type':_0x334ec9(-0x5,'rEaq'),'text':JSON[_0x334ec9(0x2d4,'qZKl')]({'error':_0x1c1153},null,0x2)}],'isError':!0x0};}function _0x334ec9(_0x36eb4a,_0x1da36a){return _0x53ff1d(_0x36eb4a- -0x18,_0x1da36a);}return null;}var rt=new Set([_0x53ff1d(-0x50,'n1@['),_0x53ff1d(-0xae,'^H8D')]),nt=_0x22855d=>{function _0x3e6b96(_0x27f8e7,_0x4c320){return _0x53ff1d(_0x27f8e7-0x2f8,_0x4c320);}const _0x1c9603={'jjAjS':_0x3e6b96(0x266,'NAE1')};function _0x56c7af(_0x113ec9,_0x39ead6){return _0x456fd8(_0x113ec9-0x610,_0x39ead6);}process[_0x56c7af(0xa1d,'CMsr')]['write'](_0x56c7af(0x6ee,'qZKl')+_0x22855d+'\x0a'),L(_0x1c9603[_0x56c7af(0x90f,'TeTD')],_0x22855d);},st=new Map(),ot=0x0,it=!0x1,at=!0x1;function lt(_0x1ef427){function _0x4bd8c2(_0x1b36c9,_0x37696a){return _0x53ff1d(_0x1b36c9-0x344,_0x37696a);}const _0x3ed19a={'TdUDd':function(_0x293f1f,_0x1ac806){return _0x293f1f(_0x1ac806);},'meUoM':function(_0x5804ab,_0x498465,_0x5884f1,_0x14a9c5){return _0x5804ab(_0x498465,_0x5884f1,_0x14a9c5);},'VjhZM':_0x1af5b0(0x163,'E)5a')},_0x4601d9=null!=_0x1ef427[_0x4bd8c2(0x3c3,'E)5a')]?_0x1af5b0(0x2fc,'dr3Q')+_0x1ef427[_0x4bd8c2(0x671,'757c')]+_0x1af5b0(-0xc1,'B4@c')+_0x1ef427[_0x1af5b0(0x16f,'Wx[$')]+'c':'',_0xac4862=null!=_0x1ef427[_0x4bd8c2(0x5a1,'jGNf')]?_0x4bd8c2(0x6af,'B4@c')+_0x1ef427[_0x1af5b0(-0x82,'&aAQ')]+'ms':'';function _0x1af5b0(_0x5534cb,_0x13abf3){return _0x53ff1d(_0x5534cb- -0x29,_0x13abf3);}_0x3ed19a['TdUDd'](nt,'[decision]\x20'+_0x1ef427[_0x1af5b0(0x163,'E)5a')]+'\x20'+_0x1ef427[_0x1af5b0(0xb9,'(DfB')]+'\x20('+_0x1ef427[_0x4bd8c2(0x3fe,'n!63')]+_0x4bd8c2(0x4a3,'lj%R')+_0x1ef427[_0x4bd8c2(0x294,'E)5a')]+')\x20—\x20'+_0x1ef427[_0x1af5b0(0x2a7,'jGNf')]+_0x4601d9+_0xac4862+_0x1af5b0(0x2fb,'(DfB')+_0x1ef427[_0x1af5b0(-0xfd,'TchY')]),_0x3ed19a[_0x1af5b0(0x7a,'PGrK')](L,_0x3ed19a['VjhZM'],'smart_read:\x20'+_0x1ef427[_0x4bd8c2(0x562,'nV2t')],{..._0x1ef427});}function ct(_0x3e4348,_0x4081db){function _0x7828ac(_0x1f07ab,_0x16bea7){return _0x456fd8(_0x1f07ab-0xb4,_0x16bea7);}if(_0x274620('!6hN',-0x24)===_0x3e4348[_0x274620('!6hN',0x1e)])return E[_0x274620('[IKO',0xa9)]('Strategy\x20error:\x20'+(_0x4081db??'unknown')+_0x274620('@*Nm',-0x135)+_0x3e4348[_0x7828ac(0x297,'oSs%')],{'level':_0x7828ac(0x85,'(DfB'),'tags':{'task_type':_0x4081db??_0x274620('yHa3',0xd),'strategy_status':_0x274620('ZIkh',-0xc7)},'extra':{'error':_0x3e4348['error'],'result':_0x3e4348['result']}}),{'content':[{'type':_0x274620('aBYA',-0x6),'text':JSON[_0x274620('wpw1',0x202)]({'error':_0x3e4348[_0x274620('n1@[',-0xd3)],..._0x3e4348[_0x274620('dr3Q',-0xa7)]},null,0x2)}],'isError':!0x0};const _0x4b100b={..._0x3e4348[_0x274620('ZIkh',-0xbe)],'t':{'status':_0x3e4348[_0x7828ac(0x146,'qZKl')],'model':_0x3e4348['model'],'tokens_used':_0x3e4348[_0x274620('tg@C',0x1ed)],'duration_ms':_0x3e4348[_0x7828ac(0x279,'&aAQ')],..._0x3e4348[_0x274620('[IKO',0xba)]?{'note':_0x3e4348['note']}:{},..._0x3e4348[_0x7828ac(0x1e5,'3Bp3')]?{'fallback_used':_0x3e4348[_0x7828ac(0x1aa,'&aAQ')]}:{}}};function _0x274620(_0x178565,_0x3a1b97){return _0x53ff1d(_0x3a1b97- -0x8e,_0x178565);}return{'content':[{'type':_0x7828ac(0x97,'NAE1'),'text':(ut[_0x4081db??'']??'')+JSON['stringify'](_0x4b100b,null,0x2)}]};}var ut={'summarize_file':_0x456fd8(0x188,'n1@['),'read_file':_0x53ff1d(0x1ba,'qZKl'),'read_file_context':'[[LM_CONTEXT]]\x20','summarize_content':_0x456fd8(0x22,'wpw1'),'analyze_web_page':_0x456fd8(0x188,'n1@['),'triage_build_output':_0x456fd8(0x241,'[jcs'),'analyze_logs':_0x456fd8(0x29c,'rEaq'),'grep_filter':_0x456fd8(0x3dc,'qp$2'),'validate_patch':_0x456fd8(0x3dc,'qp$2')};function _t(_0x4aa2f2,_0x2f7b54){const _0x20bddc=_0x45552d(_0x4aa2f2,_0x2f7b54);let _0x4881e6,_0x3230a6;try{_0x4881e6=_0xb26452(_0x20bddc)?_0x9acd4c(_0x20bddc):_0x9acd4c(_0x45552d(_0x20bddc,'..'))+_0x20bddc['slice'](_0x45552d(_0x20bddc,'..')[_0x307161('xeun',0x626)]),_0x3230a6=_0x9acd4c(_0x4aa2f2);}catch{return null;}function _0x479f29(_0x3c052f,_0x523f76){return _0x53ff1d(_0x523f76-0x6c2,_0x3c052f);}function _0x307161(_0x4f5bf0,_0x366bfb){return _0x53ff1d(_0x366bfb-0x4fa,_0x4f5bf0);}return _0x4881e6[_0x307161('757c',0x58c)](_0x3230a6)?_0x20bddc:null;}var dt=new Set([_0x456fd8(0x1dd,'xuVo'),'.txt',_0x53ff1d(0x24c,'TchY'),_0x456fd8(0x26a,'n1@['),_0x53ff1d(0xd2,'St7J'),_0x53ff1d(0x258,'oWFk'),_0x53ff1d(0x16b,'%9xX'),_0x53ff1d(0xa0,'lj%R'),'.d.ts',_0x456fd8(0x361,'%9xX'),_0x53ff1d(0x3f,'nV2t'),'.cfg',_0x456fd8(0x14f,'n1@['),'.csv',_0x456fd8(0x285,'[IKO')]);function pt(_0xdd04f6){function _0x3f8b1d(_0x8069fb,_0x3a8c36){return _0x456fd8(_0x8069fb-0x392,_0x3a8c36);}const _0x3c7838=_0xcb2a50(_0xdd04f6);return/\.(test|spec)\.[^.]+$/['test'](_0x3c7838)||/_(test|spec)\.[^.]+$/[_0x3f8b1d(0x72b,'4NfG')](_0x3c7838);}var mt=0x12c;import{mkdirSync as _0x1cf556,readFileSync as _0x1a7109,writeFileSync as _0x5f5bc1}from'fs';import{homedir as _0xd8fb03}from'os';import{join as _0x5c921b}from'path';var kt=_0x5c921b(_0xd8fb03(),'.goodex'),bt=_0x5c921b(kt,'lineman.json'),vt=process[_0x53ff1d(0xe7,'rEaq')][_0x456fd8(0x8a,'@*Nm')]??_0x53ff1d(0x2a7,'m9^T');function wt(_0x5090fc){const _0x2fba59={'RGDrm':function(_0x29c927,_0xb664f3){return _0x29c927&&_0xb664f3;},'VZRWy':function(_0x3580c6,_0x507d88){return _0x3580c6??_0x507d88;}};function _0x116c74(_0x5acbe3,_0x3e88da){return _0x53ff1d(_0x5acbe3-0x32e,_0x3e88da);}const _0x467a25=process[_0x116c74(0x300,'B4@c')][_0x116c74(0x49d,'TeTD')],_0xbbdeee=process[_0x32ecc0('[IKO',0x9a0)][_0x116c74(0x352,'dr3Q')];if(_0x2fba59[_0x32ecc0('qZKl',0x920)](!_0x467a25,!_0xbbdeee))return _0x5090fc;function _0x32ecc0(_0x11a2c3,_0x49172d){return _0x53ff1d(_0x49172d-0x672,_0x11a2c3);}const _0x40b16f=_0x2fba59['VZRWy'](_0x5090fc,{'serverUrl':vt});return{'serverUrl':_0x467a25??_0x40b16f['serverUrl'],'apiToken':_0xbbdeee??_0x40b16f[_0x116c74(0x335,'gjeJ')],'userId':_0x40b16f[_0x32ecc0('xeun',0x627)],'tier':_0x40b16f[_0x32ecc0('jGNf',0x6be)]};}var xt=_0x5bbbcc=>process['stderr'][_0x53ff1d(0xae,'@7zY')](_0x5bbbcc+'\x0a'),St=_0x456fd8(0xdb,'yHa3'),Tt=class{[_0x456fd8(0x180,'!PyX')];[_0x53ff1d(0x15b,'TchY')];[_0x456fd8(0x232,'oSs%')];constructor(_0x454d9d,_0x3dbd27,_0x2ac4a9){function _0x2959e2(_0x7dc5f2,_0x1d2185){return _0x456fd8(_0x1d2185-0x327,_0x7dc5f2);}const _0x58fe25={'pnVkm':function(_0x1d324b,_0x22b054){return _0x1d324b==_0x22b054;},'hDbNU':'number','IzBnm':function(_0x169b13,_0x347352){return _0x169b13>_0x347352;}};function _0x835140(_0x1a02a3,_0x2f2ce8){return _0x53ff1d(_0x2f2ce8-0x414,_0x1a02a3);}if(this[_0x835140('@7zY',0x775)]=_0x454d9d['replace'](/\/$/,''),this[_0x2959e2('oWFk',0x2d2)]=_0x3dbd27??process['env'][_0x835140('%9xX',0x667)]??'',_0x58fe25[_0x2959e2('TeTD',0x73b)](_0x58fe25['hDbNU'],typeof _0x2ac4a9))this[_0x835140('Wx[$',0x40b)]=_0x2ac4a9;else{const _0x45a0ff=Number(process[_0x835140('qZKl',0x716)][_0x835140('ZIkh',0x44d)]);this[_0x835140('qp$2',0x40d)]=Number[_0x2959e2('tdAv',0x2df)](_0x45a0ff)&&_0x58fe25[_0x2959e2('Wx[$',0x723)](_0x45a0ff,0x0)?_0x45a0ff:0xea60;}}[_0x53ff1d(0xe4,'EtDx')](){function _0x599516(_0x1230bb,_0x1e64bf){return _0x53ff1d(_0x1230bb-0x30a,_0x1e64bf);}const _0x55eb22={'Content-Type':_0x2ea6f0(-0x17e,'n!63')};function _0x2ea6f0(_0x3b5781,_0x484816){return _0x456fd8(_0x3b5781- -0x162,_0x484816);}return this['token']&&(_0x55eb22[_0x599516(0x5e3,'[IKO')]=_0x2ea6f0(0x22,'oSs%')+this[_0x599516(0x34f,'tdAv')]),_0x55eb22;}async[_0x456fd8(-0x30,'[jcs')](_0x340287){function _0x20a8e3(_0x45ef0d,_0x14cd8c){return _0x53ff1d(_0x45ef0d-0x660,_0x14cd8c);}if(_0x340287['ok'])return await _0x340287[_0x20a8e3(0x6f3,'&aAQ')]();let _0x53ed28=null;function _0x15303f(_0x59d145,_0x11f3f2){return _0x456fd8(_0x59d145-0x12b,_0x11f3f2);}try{_0x53ed28=await _0x340287[_0x20a8e3(0x5db,'nV2t')]();}catch{_0x53ed28=await _0x340287['text']()[_0x15303f(0x22f,'[jcs')](()=>null);}throw new H(B(_0x340287[_0x20a8e3(0x931,'gjeJ')],_0x53ed28,{'hasToken':''!==this[_0x15303f(0x30f,'TchY')]}));}async[_0x456fd8(0x17b,'!PyX')](_0x2a397f,_0x236e65){const _0x46f08d={'gcerf':function(_0x1ebf96,_0x4031cc){return _0x1ebf96 instanceof _0x4031cc;},'TwPYu':function(_0x13b482,_0x2151f5,_0x5555f3,_0x59f3dc){return _0x13b482(_0x2151f5,_0x5555f3,_0x59f3dc);},'cMxlt':function(_0x2dbe3e,_0x97b789){return _0x2dbe3e!==_0x97b789;}};function _0x38a7e6(_0x36ce7a,_0x1758f9){return _0x456fd8(_0x1758f9-0x6e,_0x36ce7a);}function _0x40ca35(_0x4aa422,_0x2ad994){return _0x456fd8(_0x2ad994-0x27f,_0x4aa422);}try{const _0x2db7e7=await fetch(''+this[_0x40ca35('[IKO',0x3d8)]+_0x2a397f,{..._0x236e65,'signal':AbortSignal[_0x40ca35('rEaq',0x36d)](this[_0x40ca35('qZKl',0x281)])});return await this[_0x38a7e6('^H8D',0xd0)](_0x2db7e7);}catch(_0x788ea7){if(_0x46f08d[_0x40ca35('St7J',0x500)](_0x788ea7,H))throw _0x788ea7;throw new H(_0x46f08d['TwPYu'](B,0x0,null,{'hasToken':_0x46f08d[_0x38a7e6('Wx[$',0x2a9)]('',this['token'])}));}}['shape'](_0x1ba909,_0x416e44,_0x1fced9){function _0x10f107(_0x23672d,_0x247763){return _0x456fd8(_0x247763-0xf0,_0x23672d);}const _0x1ca9f8={'AZwSn':_0x10f107('Ur81',0x141),'wQbWl':_0x50a6bb(0x74,'&aAQ')};function _0x50a6bb(_0x261ce8,_0x165223){return _0x53ff1d(_0x261ce8-0x20,_0x165223);}return this[_0x50a6bb(0xba,'NAE1')](_0x1ca9f8[_0x50a6bb(-0xcd,'rEaq')],{'method':_0x1ca9f8[_0x10f107('aBYA',0x16c)],'headers':this[_0x50a6bb(-0x51,'B4@c')](),'body':JSON[_0x50a6bb(0x316,'TchY')]({'task_type':_0x1ba909,'raw_result':_0x416e44,'context':_0x1fced9})});}[_0x456fd8(0x291,'^H8D')](_0x32d5ad,_0x266d40,_0xbbe8ea){function _0x2cfedb(_0x2f4f7a,_0x3be071){return _0x53ff1d(_0x2f4f7a-0x229,_0x3be071);}function _0x128d33(_0x469bcf,_0x57ee18){return _0x53ff1d(_0x57ee18- -0x52,_0x469bcf);}return this[_0x2cfedb(0x59e,'tg@C')](_0x128d33('qp$2',0x2ee),{'method':'POST','headers':this[_0x128d33('8PRi',-0xd4)](),'body':JSON[_0x128d33('xuVo',0xe3)]({'task_type':_0x32d5ad,'content':_0x266d40,'params':_0xbbe8ea})});}async*[_0x53ff1d(-0x11,'@*Nm')](_0x3035c9,_0x2d59ea,_0x2822fc){const _0x55d966={'FqYYU':function(_0x365017,_0x2a7844){return _0x365017+_0x2a7844;},'IJSAs':function(_0x483582,_0x3d090b){return _0x483582(_0x3d090b);},'umlsd':function(_0x57b545,_0x10091a,_0xa0321){return _0x57b545(_0x10091a,_0xa0321);},'AhWwM':_0x80117d(0x275,'n!63'),'tiltu':_0xe5b024('[IKO',0x1ce)};let _0x75731e;try{_0x75731e=await _0x55d966['umlsd'](fetch,this['baseUrl']+_0xe5b024('jGNf',0x413),{'method':_0x55d966['AhWwM'],'headers':{...this['headers'](),'Accept':_0x55d966['tiltu']},'body':JSON[_0xe5b024('qp$2',0x3f2)]({'task_type':_0x3035c9,'content':_0x2d59ea,'params':_0x2822fc})});}catch{throw new H(B(0x0,null,{'hasToken':''!==this['token']}));}function _0xe5b024(_0x5c591e,_0x493dec){return _0x53ff1d(_0x493dec-0x2ab,_0x5c591e);}function _0x80117d(_0x4c4c47,_0xa1d54e){return _0x456fd8(_0x4c4c47- -0x7,_0xa1d54e);}if(!_0x75731e['ok']||!_0x75731e[_0xe5b024('Ur81',0x27f)]){let _0x12292b=null;try{_0x12292b=await _0x75731e[_0x80117d(0xc4,'gjeJ')]();}catch{_0x12292b=await _0x75731e[_0xe5b024('xuVo',0x358)]()[_0xe5b024('[IKO',0x3ed)](()=>null);}throw new H(B(_0x75731e[_0x80117d(0x32b,'tdAv')],_0x12292b,{'hasToken':''!==this[_0x80117d(0xed,'rEaq')]}));}yield*async function*(_0x3e5aa3){const _0x11b2b1=_0x3e5aa3[_0x337c39('jGNf',0x24)](),_0x11d5df=new TextDecoder();function _0x160d4(_0x20ab2f,_0x1b4c88){return _0x80117d(_0x20ab2f-0x3c9,_0x1b4c88);}let _0x4408e3='';function _0x337c39(_0x387782,_0x204de5){return _0xe5b024(_0x387782,_0x204de5- -0x328);}try{for(;;){const {value:_0x273a9a,done:_0xb20911}=await _0x11b2b1[_0x337c39('tdAv',0x268)]();if(_0xb20911)break;_0x4408e3+=_0x11d5df[_0x337c39('&aAQ',0x138)](_0x273a9a,{'stream':!0x0});let _0xc29197=_0x4408e3[_0x160d4(0x4e3,'wpw1')]('\x0a\x0a');for(;-0x1!==_0xc29197;){const _0x15a799=_0x4408e3['slice'](0x0,_0xc29197);_0x4408e3=_0x4408e3[_0x337c39('jGNf',-0x110)](_0x55d966['FqYYU'](_0xc29197,0x2));const _0x5184b5=_0x55d966[_0x337c39('dr3Q',-0x176)](Lt,_0x15a799);_0x5184b5&&(yield _0x5184b5),_0xc29197=_0x4408e3[_0x337c39('n!63',-0x152)]('\x0a\x0a');}}}finally{try{_0x11b2b1['releaseLock']();}catch{}}}(_0x75731e[_0xe5b024('oSs%',0x2fe)]);}[_0x456fd8(0x9,'m9^T')](){function _0x1f29db(_0x15c6ae,_0x53aee9){return _0x456fd8(_0x15c6ae-0x5ea,_0x53aee9);}function _0xf2b736(_0x5bff66,_0x249a54){return _0x53ff1d(_0x249a54- -0x83,_0x5bff66);}return this['request'](_0x1f29db(0x5e5,'oSs%'),{'method':_0xf2b736('E)5a',0x113),'headers':this[_0xf2b736('n1@[',0x197)]()});}async['health'](){function _0x23fde9(_0x3ddc1c,_0x3af474){return _0x53ff1d(_0x3ddc1c-0x3a6,_0x3af474);}try{return(await fetch(this[_0x23fde9(0x442,'wpw1')]+'/health',{'signal':AbortSignal['timeout'](0x1388)}))['ok'];}catch{return!0x1;}}};function Lt(_0x1856b3){const _0x1214dc={'Obmmn':function(_0x1ad3a6,_0x5af1f1){return _0x1ad3a6===_0x5af1f1;},'TJUFp':_0x1c8ec6(0x57b,'TchY'),'nIesz':_0x4f2c5f(0x562,'uSzM'),'xeWSC':function(_0x198faf,_0x20aa72){return _0x198faf===_0x20aa72;},'ztZEe':_0x1c8ec6(0x7bf,'aBYA')};let _0x4a40c8='message';function _0x4f2c5f(_0x5a4b07,_0x10930d){return _0x53ff1d(_0x5a4b07-0x26a,_0x10930d);}const _0x33094f=[];for(const _0x563f04 of _0x1856b3[_0x1c8ec6(0x49b,'dr3Q')]('\x0a')){if(!_0x563f04||_0x563f04['startsWith'](':'))continue;const _0xea7f65=_0x563f04[_0x1c8ec6(0x417,'CMsr')](':'),_0x56602b=_0x1214dc['Obmmn'](-0x1,_0xea7f65)?_0x563f04:_0x563f04[_0x4f2c5f(0x5d6,'ZIkh')](0x0,_0xea7f65),_0x5ad345=_0x1214dc['Obmmn'](-0x1,_0xea7f65)?'':_0x563f04[_0x4f2c5f(0x559,'4NfG')](_0xea7f65+0x1)[_0x1c8ec6(0x76d,'@*Nm')](/^ /,'');_0x1c8ec6(0x446,'oWFk')===_0x56602b?_0x4a40c8=_0x5ad345:_0x1214dc[_0x4f2c5f(0x3b7,'!PyX')]===_0x56602b&&_0x33094f[_0x1c8ec6(0x60b,'757c')](_0x5ad345);}if(0x0===_0x33094f['length'])return null;function _0x1c8ec6(_0x4c6945,_0x477950){return _0x456fd8(_0x4c6945-0x3c2,_0x477950);}let _0x3fca25;try{_0x3fca25=JSON[_0x4f2c5f(0x603,'aBYA')](_0x33094f[_0x4f2c5f(0x594,'CMsr')]('\x0a'));}catch{return null;}return _0x1214dc[_0x4f2c5f(0x4ab,'@7zY')]('delta',_0x4a40c8)?{'type':_0x1214dc[_0x4f2c5f(0x2da,'jGNf')],'delta':_0x4f2c5f(0x20e,'4NfG')==typeof _0x3fca25[_0x4f2c5f(0x19a,'[jcs')]?_0x3fca25[_0x4f2c5f(0x2a5,'rEaq')]:''}:_0x1214dc['xeWSC'](_0x1214dc[_0x1c8ec6(0x77e,'(DfB')],_0x4a40c8)?{'type':_0x1c8ec6(0x7dd,'^H8D'),..._0x3fca25}:_0x1214dc[_0x1c8ec6(0x597,'!PyX')](_0x4f2c5f(0x5f3,'tdAv'),_0x4a40c8)?{'type':_0x4f2c5f(0x3c4,'oSs%'),'message':_0x1c8ec6(0x375,'Wx[$')==typeof _0x3fca25['message']?_0x3fca25[_0x4f2c5f(0x1d5,'!6hN')]:'stream\x20error'}:null;}import{execSync as _0x12bb0c}from'child_process';import{readFileSync as _0x28bef5,readdirSync as _0x4f611e,realpathSync as _0xafcc95,statSync as _0x2dc47c}from'fs';import{join as _0x26e17f,resolve as _0x45e534}from'path';function Rt(_0x474979,_0xa6c85){const _0x414a65={'wGDGL':function(_0x4088b8,_0x4dc55e,_0x5e74e3,_0x695d89,_0x4840a4,_0x1f75fb){return _0x4088b8(_0x4dc55e,_0x5e74e3,_0x695d89,_0x4840a4,_0x1f75fb);},'CfCFd':function(_0x3a16be,_0x4f1751,_0xa2e826){return _0x3a16be(_0x4f1751,_0xa2e826);},'qMwmQ':_0x3f6332(0x457,'tg@C'),'eZDSg':'summarize_directory','JpvMf':_0x30036e(-0xd1,'8PRi'),'ZRedi':_0x30036e(0x11,'n1@['),'LPmHU':'test_run'},_0x402acc=_0x474979[_0x30036e(0x158,'uSzM')];function _0x3f6332(_0x286382,_0x24d1a1){return _0x53ff1d(_0x286382-0x466,_0x24d1a1);}switch(_0x474979[_0x30036e(0x27f,'!6hN')]){case _0x30036e(0x1d9,'Wx[$'):case _0x30036e(-0x69,'%9xX'):return jt(_0xa6c85,_0x402acc['path']);case'read_file_context':return function(_0x341bfc,_0x34f936){const _0x1f9123=jt(_0x341bfc,_0x34f936);return void 0x0===_0x1f9123?void 0x0:_0x1f9123['split']('\x0a')['map']((_0x4bb96b,_0x99f777)=>_0x99f777+0x1+'\x09'+_0x4bb96b)['join']('\x0a');}(_0xa6c85,_0x402acc[_0x30036e(0xdd,'nV2t')]);case _0x414a65[_0x30036e(0x2ed,'^H8D')]:return jt(_0xa6c85,_0x402acc[_0x30036e(0x51,'uSzM')]);case _0x414a65['eZDSg']:return function(_0xc6cd23,_0xd6933c,_0x4d2863){const _0x2e7144=_0x45e534(_0xc6cd23,_0xd6933c);function _0x306566(_0x13cec4,_0x2fbaf8){return _0x30036e(_0x2fbaf8-0x6da,_0x13cec4);}function _0x31dbd5(_0x33468b,_0x4f8e7e){return _0x3f6332(_0x4f8e7e- -0x191,_0x33468b);}try{const _0x5568e4=_0xafcc95(_0x2e7144),_0x3f621a=_0xafcc95(_0xc6cd23);if(!_0x5568e4[_0x306566('^H8D',0x6cf)](_0x3f621a))return'Path\x20escapes\x20project\x20root';}catch{return _0x306566('[IKO',0x7fb);}const _0x79b57d=[];return _0x414a65[_0x306566('EtDx',0xa03)](Jt,_0x2e7144,'',_0x4d2863,0x0,_0x79b57d),_0x79b57d[_0x306566('gjeJ',0x6db)]('\x0a');}(_0xa6c85,_0x402acc[_0x30036e(0x1e9,'757c')],_0x402acc[_0x30036e(0x210,'rEaq')]??0x3);case _0x414a65[_0x3f6332(0x6ea,'xeun')]:return Ut(_0xa6c85,(_0x3c479f=_0x402acc[_0x30036e(-0xda,'jGNf')])?_0x3f6332(0x5e6,'PGrK')+_0x3c479f:'git\x20diff\x20HEAD');case _0x30036e(0xef,'(DfB'):return Ut(_0xa6c85,_0x30036e(0x316,'xuVo')+(_0x402acc[_0x30036e(0x12d,'s]wu')]??0x14));case _0x414a65[_0x30036e(-0x11b,'CMsr')]:return Ut(_0xa6c85,_0x402acc[_0x30036e(-0xe5,'WqwJ')]??_0x3f6332(0x7c1,'xeun'));case _0x414a65['LPmHU']:return Ut(_0xa6c85,_0x402acc['command']??_0x3f6332(0x4a3,'uSzM'));case'typecheck_run':return _0x414a65[_0x3f6332(0x5ef,'757c')](Ut,_0xa6c85,_0x402acc[_0x3f6332(0x454,'@*Nm')]??_0x3f6332(0x530,'8PRi'));case _0x30036e(-0xf2,'qp$2'):return function(_0x348c7a){function _0x1da2cb(_0x8e4072,_0x3536c5){return _0x3f6332(_0x3536c5-0x113,_0x8e4072);}function _0x5a25d3(_0x197ad6,_0x382e91){return _0x3f6332(_0x197ad6-0x52,_0x382e91);}try{return _0x414a65[_0x1da2cb('Wx[$',0x8ea)](_0x12bb0c,'curl\x20-sL\x20--max-time\x2015\x20'+JSON[_0x5a25d3(0x4ed,'WqwJ')](_0x348c7a),{'encoding':_0x5a25d3(0x53e,'4NfG'),'timeout':0x4e20,'maxBuffer':0x100000});}catch{return;}}(_0x402acc['url']);default:return;}function _0x30036e(_0x16b137,_0xf855d){return _0x456fd8(_0x16b137- -0xae,_0xf855d);}var _0x3c479f;}function jt(_0x11138b,_0x353977){function _0xef78c9(_0x360e53,_0x37ed42){return _0x53ff1d(_0x360e53-0x136,_0x37ed42);}const _0xee541e={'vVudr':function(_0x126966,_0x50a9ee,_0x1654bc){return _0x126966(_0x50a9ee,_0x1654bc);},'CNiTW':function(_0x21996c,_0x8d67f1){return _0x21996c(_0x8d67f1);},'ILyzV':function(_0x16bd07,_0x29cafe,_0xa46b52){return _0x16bd07(_0x29cafe,_0xa46b52);}};function _0x22137c(_0x1090bd,_0x3953e5){return _0x456fd8(_0x3953e5-0x303,_0x1090bd);}try{const _0x550f9e=_0xee541e[_0x22137c('@7zY',0x41c)](_0x45e534,_0x11138b,_0x353977),_0x10732e=_0xafcc95(_0x550f9e),_0x536ad1=_0xee541e[_0xef78c9(0x8d,'oSs%')](_0xafcc95,_0x11138b);if(!_0x10732e['startsWith'](_0x536ad1))return;return _0xee541e[_0x22137c('WqwJ',0x3f0)](_0x28bef5,_0x550f9e,_0x22137c('rEaq',0x617));}catch{return;}}function Jt(_0x36d8bc,_0x50275f,_0x248955,_0x5c17aa,_0x18cb11){const _0x5dc52e={'TdBJf':function(_0x3dba56,_0x558872){return _0x3dba56(_0x558872);}};function _0x1db151(_0xb47b8f,_0x59e8b4){return _0x53ff1d(_0x59e8b4-0x63d,_0xb47b8f);}function _0x19e3c1(_0x5b3db3,_0x31bf39){return _0x456fd8(_0x31bf39-0x1fe,_0x5b3db3);}if(!(_0x5c17aa>=_0x248955))try{const _0x532062=_0x4f611e(_0x36d8bc);for(const _0x4f6d9f of _0x532062){if(_0x4f6d9f[_0x1db151('Ur81',0x666)]('.')||_0x19e3c1('s]wu',0x3ae)===_0x4f6d9f)continue;const _0xa756a1=_0x26e17f(_0x36d8bc,_0x4f6d9f),_0x2c415c=_0x50275f?_0x50275f+'/'+_0x4f6d9f:_0x4f6d9f;try{_0x5dc52e[_0x1db151('xuVo',0x731)](_0x2dc47c,_0xa756a1)[_0x19e3c1('TchY',0x456)]()?(_0x18cb11[_0x1db151('lj%R',0x768)](_0x2c415c+'/'),Jt(_0xa756a1,_0x2c415c,_0x248955,_0x5c17aa+0x1,_0x18cb11)):_0x18cb11[_0x1db151('dr3Q',0x8a1)](_0x2c415c);}catch{}}}catch{_0x18cb11[_0x1db151('NAE1',0x82a)](_0x1db151('ZIkh',0x56e)+(_0x50275f||_0x36d8bc)+')');}}function Ut(_0x5c7ab1,_0x39f00f){function _0x582473(_0x3144b1,_0x41d8ec){return _0x53ff1d(_0x41d8ec- -0x47,_0x3144b1);}function _0x4ca703(_0x5a9a64,_0x2c9f26){return _0x456fd8(_0x5a9a64-0x581,_0x2c9f26);}try{return _0x12bb0c(_0x39f00f,{'cwd':_0x5c7ab1,'encoding':_0x4ca703(0x5d8,'rUPd'),'timeout':0x7530,'maxBuffer':0x100000,'stdio':[_0x582473('uSzM',0x1c0),_0x582473('@*Nm',0x333),_0x4ca703(0x7d6,'oWFk')]});}catch(_0x1f579e){const _0x2c15d3=_0x1f579e;return _0x2c15d3['stdout']??_0x2c15d3[_0x4ca703(0x726,'TeTD')]??_0x2c15d3[_0x4ca703(0x7cb,'TeTD')]??String(_0x1f579e);}}var Pt,qt=class{['name']=_0x53ff1d(0x1ec,'(DfB');[_0x53ff1d(0x356,'m9^T')];[_0x53ff1d(0x1d1,'B4@c')];constructor(_0x3e113f,_0x381b3e){function _0x554ccc(_0x107440,_0x4c9fc4){return _0x456fd8(_0x4c9fc4-0x3c1,_0x107440);}function _0x1df6bb(_0x7271e8,_0xe09d3d){return _0x53ff1d(_0xe09d3d-0x207,_0x7271e8);}this['apiClient']=new Tt(_0x3e113f,_0x381b3e),this[_0x1df6bb('m9^T',0x42d)]=''!==(_0x381b3e??process['env'][_0x554ccc('EtDx',0x51d)]??'')[_0x1df6bb('!6hN',0x4f5)]();}['tokenPresent'](){function _0x3fea3b(_0x3bef6b,_0x3798a5){return _0x456fd8(_0x3bef6b-0x608,_0x3798a5);}function _0x5b4fb6(_0x34a966,_0x5c272d){return _0x53ff1d(_0x5c272d-0x54f,_0x34a966);}const _0x535e19={'nmlzX':function(_0x5a2464,_0x2e90e8){return _0x5a2464!==_0x2e90e8;}};return!!this[_0x3fea3b(0x96e,'yHa3')]||_0x535e19[_0x5b4fb6('[IKO',0x666)]('',(process[_0x3fea3b(0x5cb,'Ur81')][_0x3fea3b(0x5d3,'jGNf')]??'')[_0x5b4fb6('aBYA',0x700)]());}[_0x53ff1d(0x277,'rUPd')](){function _0x433b59(_0x510466,_0x4a42ca){return _0x53ff1d(_0x4a42ca-0x5fa,_0x510466);}return this[_0x433b59('TeTD',0x7f4)]();}async[_0x53ff1d(0x2cf,'rEaq')](_0x418406,_0x4c57c3){const _0x3e156d={'NDWIe':function(_0x32ae2e,_0x172ea0){return _0x32ae2e(_0x172ea0);},'yJJov':function(_0x30f78b){return _0x30f78b();},'xauau':_0x154ce0('!6hN',0x3cd)};function _0x20818d(_0x19cccb,_0x2a039d){return _0x456fd8(_0x19cccb-0x5df,_0x2a039d);}if(!this[_0x154ce0('lj%R',0x532)]())return _0x3e156d[_0x154ce0('&aAQ',0x531)](F,_0x3e156d[_0x20818d(0x701,'Ur81')](G));const _0x2ad844=Rt(_0x418406,_0x4c57c3);function _0x154ce0(_0x11e01e,_0x26208b){return _0x53ff1d(_0x26208b-0x3bb,_0x11e01e);}try{const _0x4d8985=await this['apiClient'][_0x154ce0('TeTD',0x4da)](_0x418406['task_type'],_0x2ad844,_0x418406['params']),_0x492fed=_0x154ce0('rUPd',0x337)===_0x4d8985['metadata']['status'];return{'status':_0x492fed?_0x154ce0('oSs%',0x515):_0x3e156d['xauau'],'result':_0x4d8985[_0x154ce0('tdAv',0x506)],'error':_0x492fed?_0x4d8985['shaped_result'][_0x154ce0('rUPd',0x337)]:void 0x0,'tokens_used':_0x4d8985['metadata']['tokens_used'],'model':_0x4d8985[_0x20818d(0x881,'lj%R')][_0x20818d(0x616,'[IKO')],'duration_ms':_0x4d8985[_0x20818d(0x89f,'@7zY')][_0x20818d(0x74d,'ZIkh')]};}catch(_0x1bfffc){if(_0x1bfffc instanceof H)return F(_0x1bfffc[_0x154ce0('tdAv',0x483)]);throw _0x1bfffc;}}async[_0x456fd8(0x266,'(DfB')](_0x4ca60e,_0x4a11aa,_0x592179){const _0x45bba6={'byWqo':function(_0x2d9394){return _0x2d9394();},'IqkSQ':function(_0x541a08,_0x384391){return _0x541a08===_0x384391;},'VevGQ':_0x37dadc(0x592,'!PyX'),'VGFcw':_0x37dadc(0x5f0,'3Bp3')};if(!this[_0x1a3c18(0x602,'n!63')]())return F(_0x45bba6[_0x37dadc(0x4bf,'&aAQ')](G));const _0x5399ae=Rt(_0x4ca60e,_0x4a11aa);let _0x46495d='';function _0x1a3c18(_0x154a77,_0x5b9663){return _0x456fd8(_0x154a77-0x245,_0x5b9663);}function _0x37dadc(_0x48d081,_0x1ad109){return _0x53ff1d(_0x48d081-0x39c,_0x1ad109);}try{let _0x2aec06=null,_0x4efca7=null;for await(const _0x36db3a of this['apiClient']['executeStream'](_0x4ca60e[_0x1a3c18(0x4a0,'qZKl')],_0x5399ae,_0x4ca60e[_0x1a3c18(0x257,'EtDx')]))if('delta'===_0x36db3a['type']){if(!_0x36db3a['delta'])continue;_0x46495d+=_0x36db3a[_0x1a3c18(0x318,'!6hN')],await _0x592179({'delta':_0x36db3a[_0x1a3c18(0x541,'B4@c')],'accumulated':_0x46495d});}else _0x45bba6[_0x1a3c18(0x2d2,'jGNf')]('final',_0x36db3a[_0x1a3c18(0x65a,'gjeJ')])?_0x2aec06=_0x36db3a:_0x1a3c18(0x2f9,'St7J')===_0x36db3a['type']&&(_0x4efca7=_0x36db3a['message']);if(_0x4efca7)return{'status':_0x1a3c18(0x4a9,'yHa3'),'error':_0x4efca7,'result':{}};if(!_0x2aec06)return{'status':_0x45bba6[_0x37dadc(0x408,'TeTD')],'error':_0x1a3c18(0x4a2,'Ur81'),'result':{}};const _0xc4f73a=_0x1a3c18(0x563,'757c')===_0x2aec06[_0x1a3c18(0x587,'Ur81')][_0x37dadc(0x705,'tdAv')][_0x1a3c18(0x23e,'^H8D')];return{'status':_0xc4f73a?_0x45bba6[_0x37dadc(0x730,'CMsr')]:_0x45bba6['VGFcw'],'result':_0x2aec06[_0x37dadc(0x58a,'tdAv')][_0x1a3c18(0x2a1,'[jcs')],'error':_0xc4f73a?_0x2aec06[_0x37dadc(0x59f,'St7J')][_0x37dadc(0x69d,'dr3Q')][_0x37dadc(0x494,'[jcs')]:void 0x0,'tokens_used':_0x2aec06[_0x1a3c18(0x5c5,'B4@c')]?.[_0x1a3c18(0x374,'qZKl')]??_0x2aec06[_0x1a3c18(0x584,'(DfB')][_0x1a3c18(0x551,'&aAQ')]['tokens_used'],'model':_0x2aec06['shaped'][_0x37dadc(0x447,'E)5a')]['model'],'duration_ms':_0x2aec06[_0x37dadc(0x353,'@7zY')]??_0x2aec06[_0x1a3c18(0x2a9,'aBYA')]['metadata'][_0x1a3c18(0x596,'(DfB')]};}catch(_0x384a40){if(_0x384a40 instanceof H)return F(_0x384a40[_0x1a3c18(0x32e,'CMsr')]);throw _0x384a40;}}async[_0x53ff1d(0x2a6,'Wx[$')](){function _0x1309f9(_0x191e9b,_0x30bf6f){return _0x53ff1d(_0x30bf6f-0x3ef,_0x191e9b);}function _0x5643bc(_0x13ae4e,_0x526922){return _0x53ff1d(_0x526922-0x28,_0x13ae4e);}return this[_0x5643bc('757c',0x19b)][_0x1309f9('^H8D',0x748)]();}async['healthCheck'](){function _0x5808a6(_0xace77b,_0xf3ceb0){return _0x456fd8(_0xf3ceb0-0x54f,_0xace77b);}return this[_0x5808a6('^H8D',0x810)]['health']();}},Ct=process[_0x456fd8(0x30f,'%9xX')][_0x53ff1d(-0xce,'&aAQ')]??_0x4a0434(_0x42837e(),'.goodex',_0x53ff1d(-0xda,'tg@C'));function It(_0x1eb3fb){const _0x487c95='['+new Date()[_0x2d20c0(0x510,'s]wu')]()+']\x20'+_0x1eb3fb;function _0x2d20c0(_0x37c4a2,_0x9700d6){return _0x53ff1d(_0x37c4a2-0x588,_0x9700d6);}function _0xb9d50e(_0x50bcc8,_0x3c1455){return _0x456fd8(_0x50bcc8-0x5af,_0x3c1455);}process['stderr'][_0x2d20c0(0x6b7,'CMsr')](_0x2d20c0(0x8d8,'dr3Q')+_0x1eb3fb+'\x0a');try{_0x5727ab(Ct,_0x487c95+'\x0a');}catch{}}Pt=It,nt=_0x300e44=>{function _0x4da1ed(_0x3fc1aa,_0x4abbbf){return _0x53ff1d(_0x4abbbf-0x42e,_0x3fc1aa);}Pt(_0x300e44),L(_0x4da1ed('(DfB',0x605),_0x300e44);},async function(){const _0x557352={'lQaIV':_0x455e73('PGrK',0x177),'PsDiu':function(_0x37578d,_0x1f09bf){return _0x37578d(_0x1f09bf);},'WewEy':function(_0x35854d,_0x43369c){return _0x35854d==_0x43369c;},'NxdIR':_0x455e73('jGNf',0x262),'gOEkK':function(_0x3933bf,_0x507366){return _0x3933bf(_0x507366);},'Qmgkf':function(_0x4f1235,_0x570a9d){return _0x4f1235(_0x570a9d);},'Hvrvp':_0x54280c('PGrK',0x55f),'bgXBf':function(_0x181c4e,_0x594db8,_0x12a058){return _0x181c4e(_0x594db8,_0x12a058);},'mNCJI':'lineman-mcp','fvqRo':_0x455e73('aBYA',0x298),'BnWrj':function(_0x50dabe,_0x38b1f2){return _0x50dabe<_0x38b1f2;},'HNFrI':function(_0x257709,_0x2a8f56){return _0x257709<=_0x2a8f56;},'LPuWC':function(_0x8b90c,_0x2837c2){return _0x8b90c-_0x2837c2;},'bfFaQ':function(_0x22808f,_0x2af75d){return _0x22808f+_0x2af75d;},'lhbsn':_0x54280c('EtDx',0x354),'zutSb':'success','aiWYJ':_0x54280c('3Bp3',0x2b6),'GqITM':function(_0x447e96,_0x32c1fe){return _0x447e96(_0x32c1fe);},'DtLRb':'notifications/progress','tBLeQ':_0x455e73('TchY',0x3ac),'HHroY':_0x54280c('&aAQ',0x57f),'oRQEt':_0x54280c('WqwJ',0x566),'VwckV':'summarize_content','kcukk':_0x54280c('B4@c',0x641),'UZLhc':_0x455e73('E)5a',0x328),'zfmsM':'summarize_directory','rtbNL':_0x54280c('!6hN',0x585),'TrDEK':_0x455e73('8PRi',0x4b9),'gsips':'typecheck_run','pblpR':_0x455e73('(DfB',0x275),'LiCwE':'Edits\x20a\x20file\x20by\x20replacing\x20exact\x20text.\x20Validates\x20the\x20old_string\x20match\x20before\x20applying\x20—\x20no\x20need\x20to\x20Read\x20first.','qEwTp':'Absolute\x20path\x20to\x20the\x20file\x20to\x20modify','RVsQx':'Starting\x20Lineman\x20MCP\x20server...','XYMtk':_0x54280c('B4@c',0x3f8),'ZknAt':_0x455e73('dr3Q',0x40f),'mNDSo':'-\x20Error/stack\x20trace/crash\x20→\x20classify_error\x20before\x20diagnosing.','etDyN':_0x54280c('xeun',0x21c),'RUTTu':_0x455e73('gjeJ',0x3f5),'GcRcT':function(_0x213d9d,_0x12f4c5,_0x333104){return _0x213d9d(_0x12f4c5,_0x333104);},'sSLBb':_0x54280c('uSzM',0x419),'SHGvr':function(_0x671116,_0x2fa70b){return _0x671116 instanceof _0x2fa70b;}};It(_0x557352['RVsQx']),It(_0x455e73('WqwJ',0x2b7)+process['cwd']()),It(_0x54280c('(DfB',0x287)+process[_0x54280c('8PRi',0x4f3)]),It(_0x557352[_0x54280c('xuVo',0x274)]);const _0xbb9015=await(async function(){const _0xd5b58c=(function(){function _0x44634c(_0x36fa0d,_0x527b48){return _0x43ac(_0x36fa0d- -0xd,_0x527b48);}function _0x4721d9(_0x62a38,_0x2fc730){return _0x43ac(_0x62a38-0x1a3,_0x2fc730);}try{const _0x3f613e=_0x1a7109(bt,_0x557352[_0x44634c(0x276,'&aAQ')]),_0x3120e4=JSON[_0x4721d9(0x39c,'!PyX')](_0x3f613e);return _0x557352['PsDiu'](wt,{'serverUrl':_0x557352[_0x44634c(0x272,'4NfG')](_0x4721d9(0x7c4,'tg@C'),typeof _0x3120e4[_0x4721d9(0x5a8,'nV2t')])?_0x3120e4[_0x44634c(0x43f,'qZKl')]:vt,'apiToken':_0x557352[_0x4721d9(0x4f4,'&aAQ')](_0x557352['NxdIR'],typeof _0x3120e4[_0x4721d9(0x4bb,'[IKO')])?_0x3120e4[_0x4721d9(0x507,'nV2t')]:void 0x0,'userId':_0x4721d9(0x585,'xuVo')==typeof _0x3120e4[_0x4721d9(0x4b9,'WqwJ')]?_0x3120e4[_0x44634c(0x293,'[IKO')]:void 0x0,'tier':'string'==typeof _0x3120e4[_0x4721d9(0x78a,'TeTD')]?_0x3120e4[_0x4721d9(0x393,'Wx[$')]:void 0x0});}catch{return _0x557352['gOEkK'](wt,void 0x0);}}());function _0x55abf6(_0x32ea92,_0x5378f1){return _0x455e73(_0x5378f1,_0x32ea92-0x1ce);}if(_0xd5b58c)return _0xd5b58c[_0x55abf6(0x70a,'[IKO')]?_0xd5b58c:{..._0xd5b58c,'serverUrl':St};xt(_0x55abf6(0x333,'St7J')),_0x557352[_0x11d51a('St7J',0x8d1)](xt,'');function _0x11d51a(_0x5404d2,_0x4ba13c){return _0x455e73(_0x5404d2,_0x4ba13c-0x309);}const _0x2a69e2={'serverUrl':St};return function(_0x4ec8ae){_0x1cf556(kt,{'recursive':!0x0}),_0x5f5bc1(bt,JSON['stringify'](_0x4ec8ae,null,0x2)+'\x0a');}(_0x2a69e2),xt(_0x11d51a('oSs%',0x64b)),xt(''),_0x2a69e2;}());It(_0x54280c('EtDx',0x2df)+(_0xbb9015[_0x54280c('WqwJ',0x56f)]||_0x455e73('TchY',0x40e))),(function(){if(!v)return;function _0x3e7284(_0x59ea8d,_0x43d179){return _0x54280c(_0x59ea8d,_0x43d179-0x28a);}function _0x273868(_0xe10ffb,_0x58fc3b){return _0x54280c(_0xe10ffb,_0x58fc3b-0x29b);}const _0xf03cdc=process[_0x3e7284('aBYA',0x87a)][_0x3e7284('n!63',0x6d4)];if(!_0xf03cdc)return;const _0x78ad58=_0x557352[_0x3e7284('tdAv',0x5b9)],_0x2fd363=process['env'][_0x273868('wpw1',0x86b)]??'',_0x201715=[/^https?:\/\/localhost(:\d+)?/,/^https?:\/\/127\.0\.0\.1(:\d+)?/,/lineman-api/,/goodex/];if(_0x2fd363)try{const _0x2ffc81=new URL(_0x2fd363)[_0x3e7284('oSs%',0x6ed)];_0x2ffc81&&_0x201715[_0x273868('m9^T',0x5a5)](_0x2ffc81);}catch{}v[_0x3e7284('tdAv',0x73b)]({'dsn':_0xf03cdc,'environment':process[_0x3e7284('qp$2',0x4f9)][_0x273868('qp$2',0x725)]??_0x273868('lj%R',0x580),'release':_0x557352[_0x273868('B4@c',0x849)](b,_0x273868('tdAv',0x898),_0x78ad58),'tracesSampleRate':0x1,'enableLogs':!0x0,'sendDefaultPii':!0x1,'includeLocalVariables':!0x0,'integrations':[v[_0x273868('4NfG',0x902)]()],'tracePropagationTargets':_0x201715,'initialScope':{'tags':{'service':_0x557352[_0x273868('[jcs',0x7bf)],'version':_0x78ad58,'backend':_0x3e7284('B4@c',0x721),'benchmark_run_id':process[_0x273868('@*Nm',0x589)][_0x273868('n!63',0x4fa)]??'','benchmark_task_id':process[_0x273868('dr3Q',0x52d)]['LINEMAN_BENCHMARK_TASK_ID']??''}}}),w=!0x0;}()),It('Sentry\x20initialised'),(async function(){const _0xfff861={'pxYzs':function(_0x234d62,_0x24da9a){return _0x234d62===_0x24da9a;},'JzBxc':_0x597e36('B4@c',0x723),'OcSsK':function(_0x314bfa,_0x155803){function _0x14bf20(_0x17ffd6,_0x2459cf){return _0x597e36(_0x2459cf,_0x17ffd6- -0x422);}return _0x557352[_0x14bf20(0x37c,'3Bp3')](_0x314bfa,_0x155803);},'PXmbq':'GET'};function _0x597e36(_0x478f05,_0x36abd7){return _0x455e73(_0x478f05,_0x36abd7-0x1c4);}function _0x503552(_0x510b9a,_0x376a1c){return _0x54280c(_0x376a1c,_0x510b9a- -0x126);}try{const _0x49315c=function(_0x533778){let _0x35328e,_0x3d2ceb;try{_0x35328e=_0xb476de(_0x533778,_0x557352[_0x30ec48(0xad,'oSs%')]);}catch{return null;}try{_0x3d2ceb=JSON[_0x30ec48(-0x183,'oSs%')](_0x35328e);}catch{return null;}if(null===_0x3d2ceb||_0x30ec48(0x25b,'!PyX')!=typeof _0x3d2ceb)return null;const _0x27b020=_0x3d2ceb,_0x272421=_0x557352[_0x30ec48(-0x151,'rEaq')]('string',typeof _0x27b020[_0x30ec48(0x15d,'TchY')])?_0x27b020['url'][_0x30ec48(0x222,'&aAQ')]():'';function _0x2e667a(_0x58057f,_0x23dd83){return _0x597e36(_0x23dd83,_0x58057f- -0x26a);}function _0x30ec48(_0x9ae78f,_0x22e586){return _0x597e36(_0x22e586,_0x9ae78f- -0x4f3);}return _0x272421||(('string'==typeof _0x27b020[_0x2e667a(0x118,'oWFk')]?_0x27b020[_0x30ec48(0x204,'jGNf')]['trim']():'')||null);}($);if(!_0x49315c)return void _0x557352['gOEkK'](It,_0x503552(0x1c0,'uSzM')+$+'\x20—\x20skipping\x20cloud\x20probe.\x20Set\x20`url`\x20(or\x20`serverUrl`)\x20before\x20invoking\x20tools.');const _0x5b8bb4=await async function(_0x47d53a,_0xf4cf04={}){function _0x2da5a2(_0x5a7ccb,_0x50fe86){return _0x503552(_0x5a7ccb- -0x257,_0x50fe86);}function _0x303234(_0x9703cb,_0x290350){return _0x597e36(_0x290350,_0x9703cb- -0x2b2);}const _0x438650=_0xf4cf04[_0x303234(0x2fb,'[IKO')]??0x1388,_0x416afd=_0x47d53a[_0x2da5a2(-0x2a,'n!63')](/\/+$/,'')+_0x2da5a2(-0x110,'[jcs'),_0x3e29cc=Date[_0x2da5a2(-0x77,'jGNf')]();try{const _0x1d4427=await fetch(_0x416afd,{'method':_0xfff861[_0x303234(0x173,'St7J')],'signal':AbortSignal[_0x303234(0x48b,'s]wu')](_0x438650)}),_0x3ebfdf=Date[_0x303234(0x405,'PGrK')]()-_0x3e29cc;return _0x1d4427['ok']?{'ok':!0x0,'url':_0x416afd,'elapsedMs':_0x3ebfdf}:{'ok':!0x1,'url':_0x416afd,'reason':_0x303234(0x36d,'qZKl')+_0x1d4427[_0x303234(0x267,'Wx[$')]};}catch(_0x123b84){const _0x548f16=function(_0x63d237,_0x2a53cf){function _0x156abe(_0x1bc1d3,_0x23721b){return _0x303234(_0x23721b-0x97,_0x1bc1d3);}function _0x3c2170(_0x50ad49,_0x1fb534){return _0x2da5a2(_0x1fb534-0x217,_0x50ad49);}if(_0x63d237 instanceof Error){if(_0xfff861[_0x156abe('B4@c',0x2fa)](_0x3c2170('Ur81',0x404),_0x63d237['name'])||/aborted/i[_0x156abe('uSzM',0x264)](_0x63d237['message']))return _0x156abe('qZKl',0x3bb)+_0x2a53cf+'ms';if(_0xfff861[_0x3c2170('[jcs',0x541)]===_0x63d237[_0x156abe('%9xX',0x3ef)]){const _0x33a58=_0x63d237['cause'];if(_0x33a58&&'object'==typeof _0x33a58){const _0x4693fb=_0x33a58['code'];if(_0x4693fb)return _0x156abe('s]wu',0x259)+_0x4693fb;}return _0x3c2170('757c',0x4d9)+_0x63d237[_0x156abe('(DfB',0x479)];}return _0x63d237[_0x3c2170('[jcs',0x1c0)];}return _0xfff861[_0x3c2170('!PyX',0x4b9)](String,_0x63d237);}(_0x123b84,_0x438650);return{'ok':!0x1,'url':_0x416afd,'reason':_0x548f16};}}(_0x49315c,{'timeoutMs':0x1388});if(_0x5b8bb4['ok'])return void It(_0x503552(0x16f,'ZIkh')+_0x5b8bb4[_0x503552(0x521,'dr3Q')]+'\x20('+_0x5b8bb4[_0x503552(0x15b,'&aAQ')]+'ms)');_0x557352[_0x503552(0x3d4,'tdAv')](It,_0x503552(0x468,'tdAv')+_0x5b8bb4['url']+_0x597e36('oWFk',0x421)+_0x5b8bb4[_0x597e36('(DfB',0x617)]),It(_0x597e36('TeTD',0x35a));}catch(_0x3e2015){It(_0x503552(0x4bc,'lj%R')+(_0x3e2015 instanceof Error?_0x3e2015[_0x597e36('nV2t',0x749)]:String(_0x3e2015)));}}());const _0xec1cf2=await async function(_0x2d9d84){function _0x3e666c(_0x4d431f,_0x1bd683){return _0x455e73(_0x1bd683,_0x4d431f- -0x297);}function _0x57e0ee(_0x4f5738,_0x2022eb){return _0x455e73(_0x4f5738,_0x2022eb- -0x312);}const _0x5c3276=_0x2d9d84[_0x57e0ee('ZIkh',-0x95)]||_0x557352[_0x3e666c(-0xad,'gjeJ')],_0x544d4e=_0x2d9d84[_0x57e0ee('^H8D',-0x118)]??process[_0x57e0ee('[jcs',0xd2)][_0x57e0ee('n1@[',0x177)];return It('Using\x20cloud\x20strategy\x20→\x20'+_0x5c3276+(_0x544d4e?'':'\x20(no\x20token\x20—\x20auth\x20required\x20at\x20use\x20time)')),new qt(_0x5c3276,_0x544d4e);}(_0xbb9015);It('Active\x20strategy:\x20'+_0xec1cf2[_0x455e73('3Bp3',0x542)]);{_0x557352['PsDiu'](It,_0x455e73('oSs%',0x530)),L(_0x557352['ZknAt'],_0x455e73('oWFk',0x373));const _0x3c1ff2=await _0xec1cf2[_0x455e73('TchY',0x278)]();It(_0x54280c('!PyX',0x677)+_0x3c1ff2),L(_0x455e73('NAE1',0x4da),_0x455e73('qZKl',0x193)+_0x3c1ff2,{'strategy':_0xec1cf2[_0x54280c('tg@C',0x675)]}),_0x3c1ff2||It(_0x54280c('E)5a',0x2ca)+_0xec1cf2[_0x54280c('TeTD',0x5f8)]+_0x455e73('(DfB',0x1b8));}_0x557352[_0x455e73('[jcs',0x4cb)](It,_0x54280c('St7J',0x406));const _0x2d577d=[_0x455e73('n!63',0x163),_0x455e73('n1@[',0x50e),'',_0x455e73('yHa3',0x55d),_0x54280c('&aAQ',0x62f),_0x455e73('Ur81',0x5a7),_0x557352['mNDSo'],'-\x20Build/compiler/CI\x20output\x20→\x20triage_build_output\x20(not\x20inline\x20parsing).',_0x557352[_0x54280c('%9xX',0x3c6)],_0x54280c('gjeJ',0x477),_0x455e73('xuVo',0x59b),_0x455e73('[IKO',0x4e4),_0x455e73('(DfB',0x440),'',_0x54280c('tdAv',0x373),_0x455e73('757c',0x249),_0x455e73('[IKO',0x438),'',_0x455e73('lj%R',0x405)];let _0x495a66;const _0x4f499f=process['env'][_0x455e73('oWFk',0x3e0)];if(_0x4f499f)try{const _0x779c37=JSON[_0x54280c('tg@C',0x6a3)](_0x3b4367(_0x4f499f,_0x54280c('8PRi',0x3f0)));if(Array[_0x455e73('(DfB',0x5c0)](_0x779c37['instructions']?.[_0x455e73('!PyX',0x315)])&&_0x2d577d[_0x455e73('qZKl',0x3c1)](..._0x779c37[_0x54280c('%9xX',0x417)]['add']),Array[_0x455e73('[IKO',0x4c8)](_0x779c37[_0x455e73('(DfB',0x598)]?.[_0x455e73('rEaq',0x413)]))for(const {find:_0x272418,replace:_0x1f047b}of _0x779c37[_0x455e73('jGNf',0x1e9)][_0x455e73('n!63',0x28c)]){const _0x41558e=_0x2d577d['indexOf'](_0x272418);-0x1!==_0x41558e&&(_0x2d577d[_0x41558e]=_0x1f047b);}_0x779c37['toolDescription']&&(_0x495a66=_0x779c37[_0x54280c('EtDx',0x4be)]);}catch{}const _0x5301c8=new _0x5eb0e1({'name':_0x557352['RUTTu'],'version':_0x455e73('xuVo',0x4d3)},{'instructions':_0x2d577d[_0x455e73('B4@c',0x52b)]('\x0a'),'capabilities':{}});{const _0x2e82d4=process[_0x455e73('[IKO',0x577)][_0x54280c('8PRi',0x3fe)]??process[_0x455e73('%9xX',0x4b0)]();It(_0x54280c('!6hN',0x272)+_0x2e82d4),It(_0x54280c('B4@c',0x2fa)),function(_0x314acb,_0x321ac6,_0x35d9cd,_0x2c5a38){const _0x118db8={'OInJV':function(_0x17d489,_0x3adcb1){return _0x17d489!==_0x3adcb1;},'IgWug':_0x557352[_0xb6de8f('@7zY',0x53b)],'pHbzN':_0xb6de8f('3Bp3',0x15a),'gFRQw':_0x557352[_0xb6de8f('B4@c',0x1fc)],'KtxWU':function(_0x598eee,_0x26b341){return _0x598eee instanceof _0x26b341;},'JJmSr':_0x45c662(0x40f,'dr3Q'),'CxdrX':function(_0x3f5d36){return _0x3f5d36();},'ESJzb':'error','rVgnc':'tool.is_error'};function _0xb6de8f(_0x18bcd8,_0x1b50dd){return _0x54280c(_0x18bcd8,_0x1b50dd- -0xb9);}function _0x45c662(_0x2d5156,_0x285541){return _0x455e73(_0x285541,_0x2d5156-0x253);}_0x314acb[_0xb6de8f('(DfB',0x2e2)](_0x557352[_0x45c662(0x642,'EtDx')],{'title':'Lineman','description':_0x2c5a38??_0xb6de8f('lj%R',0x19d),'annotations':{'readOnlyHint':!0x1,'destructiveHint':!0x1,'idempotentHint':!0x1,'openWorldHint':!0x1},'t':{'anthropic/alwaysLoad':!0x0,'anthropic/searchHint':_0xb6de8f('3Bp3',0x238)},'inputSchema':{'task_type':_0x2f5c8f[_0xb6de8f('!6hN',0x450)]([_0x557352[_0x45c662(0x3b7,'n!63')],_0x45c662(0x669,'(DfB'),_0xb6de8f('3Bp3',0x1f6),_0xb6de8f('lj%R',0x3dc),_0x557352[_0x45c662(0x586,'dr3Q')],_0xb6de8f('Ur81',0x5c6),_0x557352[_0x45c662(0x7a0,'lj%R')],_0x45c662(0x7d5,'[IKO'),_0x45c662(0x4cf,'wpw1'),_0x557352[_0xb6de8f('@7zY',0x4ba)],_0xb6de8f('WqwJ',0x2fc),'summarize_diff',_0x557352[_0x45c662(0x55a,'ZIkh')],_0x557352['rtbNL'],_0x45c662(0x3c5,'n!63'),_0xb6de8f('CMsr',0x573),_0x45c662(0x3f2,'E)5a'),_0xb6de8f('!PyX',0x4eb),_0x557352['TrDEK'],_0x557352[_0x45c662(0x62b,'%9xX')]])[_0x45c662(0x812,'tdAv')]('The\x20task\x20to\x20perform'),'params':_0x2f5c8f[_0x45c662(0x502,'8PRi')](_0x2f5c8f['unknown']())[_0xb6de8f('yHa3',0x3d2)](_0x557352['pblpR'])}},async({task_type:_0x58f930,params:_0x363a21},_0x4850d8)=>{function _0x1d5de9(_0x11ca06,_0x2b0266){return _0x45c662(_0x2b0266- -0x2f3,_0x11ca06);}const _0x120341={'feSaB':function(_0x3b1f38,_0x3db037,_0x7a214){function _0x3d44a2(_0x1fccda,_0x272ef7){return _0x43ac(_0x1fccda-0x69,_0x272ef7);}return _0x557352[_0x3d44a2(0x4f0,'xeun')](_0x3b1f38,_0x3db037,_0x7a214);},'TXUfr':function(_0x229761,_0x4ed4ae,_0x519ab5,_0x5f552e){return _0x229761(_0x4ed4ae,_0x519ab5,_0x5f552e);},'ldYip':_0x1d5de9('@7zY',0x27a),'jqyre':_0x557352[_0x1d5de9('4NfG',0x2d6)]};function _0x215db3(_0x2e1f14,_0xfa816e){return _0x45c662(_0xfa816e- -0x3b0,_0x2e1f14);}const _0x561dee=_0x363a21,_0x52d32a=_0x4850d8?.['t']?.['progressToken'],_0x33057d=_0x4850d8?.['sendNotification'];return E[_0x1d5de9('NAE1',0x480)]({'name':'tool:'+_0x58f930,'op':_0x1d5de9('!PyX',0x454),'attributes':{'tool.task_type':_0x58f930,'tool.file_path':_0x561dee[_0x215db3('4NfG',0x3ea)]??_0x561dee[_0x1d5de9('ZIkh',0x22a)]??'','tool.params_keys':JSON[_0x215db3('&aAQ',0x341)](Object[_0x215db3('nV2t',0x360)](_0x561dee))}},async _0x36de01=>{const _0x3fb55c={'PiQnp':function(_0x4dcdca,_0x5434f2){return _0x118db8['OInJV'](_0x4dcdca,_0x5434f2);},'BcAnV':_0x118db8[_0x128174(0x133,'&aAQ')],'TmQcM':function(_0x356978,_0x580356){return _0x356978??_0x580356;},'qKdEm':function(_0xb0d34e,_0xa0ea5f,_0x30f904){return _0xb0d34e(_0xa0ea5f,_0x30f904);},'EDnDG':_0x118db8[_0x128174(-0x83,'lj%R')],'cTgRr':'read_file_full\x20always\x20verbatim','dgBYE':function(_0x3dd2cd,_0x5bd0fd){return _0x3dd2cd>=_0x5bd0fd;},'PeMEJ':_0x41696d(0x759,'jGNf'),'znjiJ':_0x118db8[_0x41696d(0x89e,'uSzM')],'oyjOA':function(_0x23a63a,_0x498f15){return _0x23a63a-_0x498f15;},'pEqCw':function(_0x3c9aa8,_0x4f4141){return _0x3c9aa8(_0x4f4141);},'ylqCr':'tool.status','XdOeU':function(_0x5d0bc6,_0x290182){function _0x2ba981(_0x4fc184,_0x10d563){return _0x41696d(_0x10d563- -0x715,_0x4fc184);}return _0x118db8[_0x2ba981('St7J',0x207)](_0x5d0bc6,_0x290182);}},_0x48cdd7=et(_0x321ac6,_0x58f930);if(_0x48cdd7)return _0x36de01[_0x128174(-0x24,'[jcs')]({'code':0x2,'message':_0x118db8['JJmSr']}),_0x36de01[_0x41696d(0x583,'(DfB')](_0x128174(0x107,'rEaq'),!0x0),_0x36de01[_0x41696d(0x819,'qZKl')](_0x128174(-0x42,'TchY'),_0x118db8['JJmSr']),await _0x118db8[_0x41696d(0x74c,'[IKO')](T),_0x48cdd7;if(process[_0x41696d(0x5ad,'qp$2')][_0x128174(0x48,'yHa3')]||((()=>{function _0x2f7e60(_0x968f9b,_0x4ec7bc){return _0x41696d(_0x968f9b- -0x323,_0x4ec7bc);}function _0x3a23af(_0x1bb107,_0x3ea7c6){return _0x41696d(_0x1bb107- -0x1a3,_0x3ea7c6);}try{return JSON[_0x3a23af(0x40e,'oSs%')](_0x120341[_0x2f7e60(0x4a7,'gjeJ')](_0xf57781,_0x120341[_0x2f7e60(0x3ff,'s]wu')](_0x14550c,_0x563c66(),_0x3a23af(0x789,'8PRi'),_0x120341[_0x2f7e60(0x3f6,'4NfG')]),_0x120341[_0x2f7e60(0x464,'E)5a')]))['benchMode'];}catch{return!0x1;}})()))return nt(_0x128174(0x3a1,'Wx[$')+_0x58f930+'\x20('+JSON[_0x41696d(0x6a4,'gjeJ')](Object['keys'](_0x561dee))+')'),{'content':[{'type':'text','text':_0x128174(0x278,'[IKO')+_0x58f930+_0x41696d(0x918,'^H8D')}]};function _0x41696d(_0x5f0ba9,_0x5dcbbc){return _0x215db3(_0x5dcbbc,_0x5f0ba9-0x562);}const _0x1996a0=await((async()=>{const _0x8f44e1={'bSfqd':_0x5cb809('m9^T',-0x19),'hKHvL':function(_0x42a48d,_0x1f8e24){return _0x3fb55c['TmQcM'](_0x42a48d,_0x1f8e24);},'hLXMj':function(_0x5db2c6,_0x15281b,_0x4fd247){function _0x51e300(_0x131b17,_0x17d02a){return _0x5cb809(_0x17d02a,_0x131b17-0x44d);}return _0x3fb55c[_0x51e300(0x33c,'oWFk')](_0x5db2c6,_0x15281b,_0x4fd247);},'XHydb':function(_0x468f75,_0x526d58){return _0x468f75+_0x526d58;},'zeaAL':_0x3fb55c[_0x28d666(0x745,'dr3Q')],'LrHjU':_0x5cb809('!6hN',-0x157),'jncrM':_0x3fb55c['cTgRr'],'TNxgC':function(_0x48269b,_0x238ed6){return _0x48269b(_0x238ed6);},'uBGlP':function(_0x4abda9,_0x401c5d){return _0x4abda9(_0x401c5d);},'ZREtz':_0x5cb809('[jcs',-0xf0),'fVtPI':function(_0x335160,_0x50fe8b){return _0x335160(_0x50fe8b);},'NSSJB':_0x5cb809('NAE1',0x31),'YDapn':function(_0x496128,_0xa3282c){return _0x496128!==_0xa3282c;},'dqGeZ':_0x28d666(0x5e3,'aBYA'),'PNxqY':function(_0x34791f,_0x4c3f0d){return _0x34791f-_0x4c3f0d;},'JMHkE':function(_0x550edd,_0x3341ac){return _0x550edd===_0x3341ac;},'lBHOT':function(_0x3372fe,_0x552fa6){return _0x3372fe<=_0x552fa6;},'ujsYp':_0x28d666(0x9ce,'E)5a'),'CZsvb':_0x5cb809('%9xX',0x2a7),'SPaEO':function(_0x434fdc,_0x560ec8){return _0x434fdc-_0x560ec8;},'dgAGx':function(_0x149eab,_0x44d5da){function _0x530d21(_0x3ad187,_0x108e29){return _0x28d666(_0x108e29- -0xa0,_0x3ad187);}return _0x3fb55c[_0x530d21('Wx[$',0x51a)](_0x149eab,_0x44d5da);}};if(_0x5cb809('3Bp3',0x264)===_0x58f930)return at=!0x0,function(_0x5cf6cd,_0x2cc738){const _0x3488c6=_0x2cc738[_0x2c4626(0x7de,'4NfG')],_0x5b3fbe=_0x2cc738['offset']??0x0,_0x2bd956=_0x2cc738['limit'];nt(_0x151e55('n!63',0x2ed)+_0x3488c6+_0x2c4626(0x3f9,'tg@C')+_0x5b3fbe+',\x20limit='+(_0x2bd956??'all')+')');function _0x2c4626(_0xa75778,_0x28e816){return _0x28d666(_0xa75778- -0x160,_0x28e816);}const _0x4f5e0c=Date[_0x151e55('TchY',0x362)](),_0x3dcfa9=_t(_0x5cf6cd,_0x3488c6);if(!_0x3dcfa9)return L('security',_0x2c4626(0x777,'EtDx'),{'path':_0x3488c6}),{'content':[{'type':_0x8f44e1[_0x151e55('%9xX',0x305)],'text':JSON[_0x2c4626(0x5b5,'Wx[$')]({'error':'Path\x20escapes\x20project\x20root'})}],'isError':!0x0};L(_0x151e55('TchY',0x376),_0x2c4626(0x4d5,'m9^T')+_0x3488c6+'\x20offset='+_0x5b3fbe+'\x20limit='+_0x8f44e1[_0x2c4626(0x605,'qp$2')](_0x2bd956,'all'));function _0x151e55(_0x2e2395,_0x128fe1){return _0x5cb809(_0x2e2395,_0x128fe1-0x225);}try{const _0x11a83b=_0x8f44e1['hLXMj'](_0xf57781,_0x3dcfa9,_0x151e55('EtDx',0x78)),_0x11ca40=_0x11a83b[_0x151e55('!6hN',0x2a7)]('\x0a'),_0x126901=_0x5b3fbe,_0x4fa735=_0x2bd956?_0x8f44e1[_0x2c4626(0x779,'EtDx')](_0x126901,_0x2bd956):_0x11ca40['length'],_0x131c1c=_0x11ca40['slice'](_0x126901,_0x4fa735)['map']((_0x2b68d2,_0x1599f5)=>_0x126901+_0x1599f5+0x1+'\x09'+_0x2b68d2)[_0x2c4626(0x56e,'xuVo')]('\x0a');return nt(_0x151e55('Wx[$',0x76)+(Date['now']()-_0x4f5e0c)+'ms,\x20'+_0x11ca40[_0x151e55('[IKO',0x4b6)]+_0x2c4626(0x62f,'nV2t')),tt({'task_type':_0x151e55('@*Nm',0x1c6),'file_path':_0x3488c6,'status':_0x2c4626(0x55e,'qp$2'),'duration_ms':Date['now']()-_0x4f5e0c,'is_error':!0x1,'result_size_chars':_0x131c1c['length'],'metrics':{'input_file_size_bytes':Buffer[_0x151e55('Wx[$',0x413)](_0x11a83b,_0x8f44e1[_0x2c4626(0x7e7,'uSzM')]),'input_file_lines':_0x11ca40[_0x151e55('tg@C',0x3ec)],'returned_verbatim':!0x0,'code_path':_0x8f44e1[_0x2c4626(0x6a7,'m9^T')],'code_path_reason':_0x8f44e1[_0x151e55('qp$2',0x2f8)]}}),{'content':[{'type':_0x2c4626(0x3fd,'n1@['),'text':_0x131c1c}]};}catch(_0x484e8f){return nt(_0x151e55('8PRi',0x123)+(Date[_0x151e55('wpw1',0x404)]()-_0x4f5e0c)+'ms)'),E[_0x2c4626(0x59b,'!6hN')](_0x484e8f,{'tags':{'task_type':_0x151e55('!6hN',0x3f0)},'extra':{'path':_0x3488c6}}),{'content':[{'type':_0x151e55('qp$2',0x2f6),'text':JSON['stringify']({'error':'Could\x20not\x20read:\x20'+(_0x484e8f instanceof Error?_0x484e8f[_0x2c4626(0x4d0,'uSzM')]:_0x8f44e1[_0x2c4626(0x739,'PGrK')](String,_0x484e8f))})}],'isError':!0x0};}}(_0x35d9cd,_0x561dee);function _0x28d666(_0x121235,_0x15b5f4){return _0x41696d(_0x121235- -0xe,_0x15b5f4);}function _0x5cb809(_0x378727,_0x2ec678){return _0x41696d(_0x2ec678- -0x736,_0x378727);}if('read_file_context'===_0x58f930)return async function(_0x894fb5,_0x221942,_0x4f492d){function _0x186bec(_0x42a781,_0x5a364e){return _0x28d666(_0x42a781- -0x2f1,_0x5a364e);}const _0x5445cb=_0x4f492d[_0x2f0543(0x3a7,'rUPd')],_0x53a675=_0x4f492d[_0x2f0543(0x538,'EtDx')],_0xe369fa=_0x4f492d[_0x2f0543(0x58d,'B4@c')];_0x8f44e1[_0x186bec(0x65b,'PGrK')](nt,'Tool\x20call:\x20read_file_context\x20('+_0x5445cb+_0x2f0543(0x50f,'yHa3')+_0x53a675+'\x22)');function _0x2f0543(_0x3b8a06,_0x181148){return _0x5cb809(_0x181148,_0x3b8a06-0x40f);}const _0x470bb6=Date['now']();let _0x1ebb6d;try{_0x1ebb6d=await _0x894fb5[_0x186bec(0x567,'tdAv')]({'task_type':_0x8f44e1[_0x186bec(0x4e8,'oSs%')],'params':{'path':_0x5445cb,'query':_0x53a675,'context_lines':_0xe369fa}},_0x221942);}catch(_0x47f1aa){const _0x50ce41=Date[_0x2f0543(0x470,'ZIkh')]()-_0x470bb6,_0x4283a8=_0x47f1aa instanceof Error?_0x47f1aa[_0x2f0543(0x52c,'lj%R')]:String(_0x47f1aa);return _0x8f44e1[_0x186bec(0x4c1,'B4@c')](nt,'Tool\x20error:\x20read_file_context\x20→\x20'+_0x4283a8+'\x20('+_0x50ce41+_0x2f0543(0x264,'@7zY')),E[_0x186bec(0x50c,'B4@c')](_0x47f1aa,{'tags':{'task_type':'read_file_context'},'extra':{'path':_0x5445cb,'query':_0x53a675,'elapsed_ms':_0x50ce41}}),{'content':[{'type':_0x2f0543(0x3a9,'Ur81'),'text':JSON[_0x186bec(0x615,'aBYA')]({'error':_0x4283a8})}],'isError':!0x0};}const _0x49f7bf=Date[_0x2f0543(0x565,'nV2t')]()-_0x470bb6;if(nt(_0x2f0543(0x34e,'CMsr')+_0x1ebb6d[_0x186bec(0x261,'rUPd')]+'\x20('+_0x49f7bf+'ms,\x20'+(_0x1ebb6d[_0x2f0543(0x55a,'(DfB')]??0x0)+_0x2f0543(0x385,'xeun')),_0x2f0543(0x352,'St7J')===_0x1ebb6d[_0x186bec(0x2e3,'St7J')])return E[_0x186bec(0x624,'^H8D')]('read_file_context\x20strategy\x20error:\x20'+_0x1ebb6d['error'],{'level':_0x8f44e1['NSSJB'],'tags':{'task_type':'read_file_context'},'extra':{'path':_0x5445cb,'query':_0x53a675,'error':_0x1ebb6d['error'],'result':_0x1ebb6d['result'],'elapsed_ms':_0x49f7bf}}),{'content':[{'type':_0x2f0543(0x333,'!6hN'),'text':JSON[_0x186bec(0x5a4,'&aAQ')]({'error':_0x1ebb6d[_0x2f0543(0x4eb,'tg@C')],..._0x1ebb6d[_0x186bec(0x5cf,'yHa3')]},null,0x2)}],'isError':!0x0};const _0x4f8a1e=_0x1ebb6d[_0x186bec(0x34b,'Wx[$')],_0x817d53=_0x4f8a1e[_0x2f0543(0x686,'oSs%')];return _0x817d53&&_0x8f44e1[_0x2f0543(0x2e0,'^H8D')](0x0,_0x817d53[_0x186bec(0x2a2,'uSzM')])?(L(_0x2f0543(0x6b4,'PGrK'),_0x2f0543(0x309,'NAE1')+_0x817d53[_0x186bec(0x5fe,'tg@C')]+_0x2f0543(0x659,'B4@c'),{'path':_0x5445cb,'query':_0x53a675,'sectionCount':_0x817d53[_0x186bec(0x43e,'n!63')],'totalLines':_0x4f8a1e[_0x186bec(0x427,'3Bp3')]}),{'content':[{'type':_0x2f0543(0x572,'oWFk'),'text':(ut[_0x186bec(0x46a,'@7zY')]??'')+(_0x5445cb+'\x20('+_0x4f8a1e[_0x2f0543(0x43f,'rEaq')]+_0x2f0543(0x571,'qp$2')+_0x53a675+'\x22,\x20'+_0x817d53[_0x2f0543(0x4af,'^H8D')]+'\x20section(s):\x0a')+_0x817d53[_0x2f0543(0x3df,'n1@[')]((_0x152c1a,_0x11d7ff)=>(_0x817d53[_0x2f0543(0x487,'Wx[$')]>0x1?'---\x20Section\x20'+(_0x11d7ff+0x1)+'/'+_0x817d53[_0x2f0543(0x5d3,'wpw1')]+':\x20'+_0x152c1a[_0x2f0543(0x53c,'TchY')]+_0x186bec(0x5b0,'(DfB')+_0x152c1a[_0x2f0543(0x3b1,'%9xX')]+'-'+_0x152c1a[_0x186bec(0x24b,'B4@c')]+_0x186bec(0x595,'757c'):_0x2f0543(0x641,'uSzM')+_0x152c1a['description']+'\x20(lines\x20'+_0x152c1a[_0x186bec(0x66c,'^H8D')]+'-'+_0x152c1a['end_line']+_0x2f0543(0x5e1,'uSzM'))+'\x0a'+_0x152c1a[_0x186bec(0x6bd,'Ur81')])['join']('\x0a\x0a')}]}):{'content':[{'type':_0x8f44e1[_0x186bec(0x449,'&aAQ')],'text':_0x186bec(0x35d,'rUPd')+_0x53a675+_0x2f0543(0x424,'dr3Q')+_0x5445cb+'.'}]};}(_0x321ac6,_0x35d9cd,_0x561dee);if(_0x3fb55c[_0x28d666(0x77d,'n1@[')]===_0x58f930)return async function(_0x1eefb6,_0x4b82d5,_0x13386d){const _0x1dc935={'tDDiP':function(_0x1e22d3,_0x5eb7d){return _0x1e22d3(_0x5eb7d);}},_0xf524ac=_0x13386d['path'],_0x2644ed=_0x13386d[_0x231524('tg@C',0x54c)],_0x5b2817=Date[_0x1d9041(0x224,'B4@c')](),_0xc09b9=_0xf524ac[_0x1d9041(0x16e,'tdAv')]('.d.ts')?_0x8f44e1[_0x1d9041(0x1c7,'oSs%')]:_0x5e2789(_0xf524ac)['toLowerCase'](),_0x15bedb=_0xf524ac[_0x231524('&aAQ',0x504)](_0x4b82d5)?_0xf524ac['slice'](_0x4b82d5['length'])[_0x1d9041(0xdb,'EtDx')](/^\//,''):_0xf524ac;ot++;let _0x48d48b='',_0x2e197b=0x0;try{const _0x6c3ec=_0x45552d(_0x4b82d5,_0xf524ac);_0x48d48b=_0xf57781(_0x6c3ec,'utf-8'),_0x2e197b=_0x48d48b[_0x231524('(DfB',0x459)]('\x0a')[_0x1d9041(-0x14,'757c')];}catch{}if(nt(_0x1d9041(0x26f,'nV2t')+_0xf524ac+',\x20'+_0x2e197b+_0x1d9041(0x143,'yHa3')+_0xc09b9+')'),st['has'](_0xf524ac))return _0x8f44e1[_0x1d9041(0x59,'3Bp3')](lt,{'file_path':_0xf524ac,'line_count':_0x2e197b,'file_ext':_0xc09b9,'decision':_0x231524('3Bp3',0x25d),'decision_reason':_0x1d9041(0x282,'TeTD'),'original_content_chars':_0x48d48b['length'],'cumulative_reads':ot}),tt({'task_type':_0x231524('!PyX',0x4eb),'file_path':_0xf524ac,'status':_0x231524('(DfB',0x188),'duration_ms':_0x8f44e1['PNxqY'](Date[_0x231524('uSzM',0x509)](),_0x5b2817),'is_error':!0x1,'result_size_chars':0x32,'metrics':{'input_file_lines':_0x2e197b,'returned_verbatim':!0x1,'code_path':_0x231524('rUPd',0x50c),'code_path_reason':_0x1d9041(0xbf,'PGrK')}}),{'content':[{'type':_0x1d9041(0x6e,'PGrK'),'text':_0x1d9041(0x94,'n1@[')+_0x15bedb}]};const _0xe16fe8=function(_0x54a3d9){function _0x5d5cc(_0xacf113,_0x28b861){return _0x1d9041(_0x28b861- -0x4e,_0xacf113);}function _0x48b82a(_0xe6f129,_0x4eb507){return _0x231524(_0x4eb507,_0xe6f129- -0x12);}const _0x4a4263=_0x5e2789(_0x54a3d9)['toLowerCase']();return _0x54a3d9[_0x48b82a(0x3da,'@7zY')](_0x5d5cc('qp$2',0x247))||dt[_0x48b82a(0x31b,'4NfG')](_0x4a4263)?Number[_0x5d5cc('gjeJ',0x387)]:_0x1dc935[_0x5d5cc('@*Nm',0x2e3)](pt,_0x54a3d9)?0x1f4:mt;}(_0xf524ac);if(_0x2e197b>0x0&&(_0x2e197b<=_0xe16fe8||_0x8f44e1['JMHkE'](_0xe16fe8,Number['POSITIVE_INFINITY']))){const _0x3d9854=_0xe16fe8===Number[_0x1d9041(0x3ae,'3Bp3')]?_0x231524('oWFk',0x291)+_0xc09b9+_0x1d9041(0x239,'B4@c'):_0x2e197b<=mt?_0x2e197b+'\x20lines\x20<=\x20'+mt+_0x231524('PGrK',0x193):_0x2e197b+_0x231524('xuVo',0x299)+_0xe16fe8+'\x20('+(pt(_0xf524ac)?'test\x20file':_0x231524('jGNf',0x500))+_0x1d9041(0x1ab,'E)5a'),_0xd014e0=_0xe16fe8===Number[_0x1d9041(-0x7a,'[IKO')]?_0x231524('dr3Q',0x364):_0x8f44e1[_0x1d9041(0x2fb,'&aAQ')];_0x8f44e1[_0x1d9041(0x306,'wpw1')](lt,{'file_path':_0xf524ac,'line_count':_0x2e197b,'file_ext':_0xc09b9,'decision':_0xd014e0,'decision_reason':_0x3d9854,'original_content_chars':_0x48d48b[_0x1d9041(0x2fd,'tg@C')],'cumulative_reads':ot});const _0x161d93=_0x48d48b[_0x231524('@*Nm',0x475)]('\x0a')[_0x231524('E)5a',0x150)]((_0x24dbd8,_0x1bec07)=>_0x1bec07+0x1+'\x09'+_0x24dbd8)[_0x231524('@7zY',0x3b1)]('\x0a');return st['set'](_0xf524ac,_0x161d93[_0x1d9041(0x396,'jGNf')]),tt({'task_type':'read_file','file_path':_0xf524ac,'status':_0x231524('qZKl',0x4ac),'duration_ms':Date[_0x231524('n1@[',0x1c8)]()-_0x5b2817,'is_error':!0x1,'result_size_chars':_0x161d93['length'],'metrics':{'input_file_size_bytes':Buffer[_0x231524('rUPd',0x506)](_0x48d48b,'utf-8'),'input_file_lines':_0x2e197b,'input_content_chars':_0x48d48b[_0x1d9041(0x2f6,'@*Nm')],'returned_verbatim':!0x0,'code_path':_0xd014e0,'code_path_reason':_0x3d9854}}),{'content':[{'type':_0x1d9041(0x58,'gjeJ'),'text':_0x1d9041(0x3e8,'n1@[')+_0x15bedb+'\x20('+_0x2e197b+_0x1d9041(0xc7,'757c')+_0x161d93}]};}const _0x104cb5=it?_0x1d9041(0x289,'xeun'):_0x8f44e1[_0x1d9041(0x13e,'St7J')](ot,0x5)?_0x231524('[jcs',0x424):ot<=0xf?_0x231524('Ur81',0x465):_0x8f44e1[_0x1d9041(0x2d7,'yHa3')],_0x1415bc=Date['now']();let _0x86ad5;try{_0x86ad5=await _0x1eefb6['dispatch']({'task_type':'summarize_file','params':{'path':_0xf524ac,'focus':_0x2644ed,'tier':_0x104cb5}},_0x4b82d5);}catch(_0x126d4a){const _0x52952d=Date[_0x231524('TchY',0x420)]()-_0x1415bc,_0x162110=_0x126d4a instanceof Error?_0x126d4a[_0x231524('@7zY',0x44d)]:String(_0x126d4a);return nt(_0x1d9041(0x3bb,'Wx[$')+_0x162110+'\x20('+_0x52952d+_0x1d9041(0x23e,'dr3Q')),E['captureException'](_0x126d4a,{'tags':{'task_type':_0x1d9041(0xf2,'&aAQ')},'extra':{'path':_0xf524ac,'lineCount':_0x2e197b,'elapsed_ms':_0x52952d}}),tt({'task_type':_0x1d9041(0x10a,'Wx[$'),'file_path':_0xf524ac,'status':_0x8f44e1[_0x231524('NAE1',0x1ad)],'duration_ms':_0x52952d,'is_error':!0x0,'result_size_chars':0x0,'metrics':{'time_before_failure_ms':_0x52952d,'error_recoverable':!0x1}}),{'content':[{'type':'text','text':JSON['stringify']({'error':_0x162110})}],'isError':!0x0};}const _0x43eb8d=_0x8f44e1[_0x231524('tdAv',0x437)](Date['now'](),_0x1415bc);nt('Tool\x20result:\x20read_file\x20→\x20'+_0x86ad5[_0x1d9041(0x12c,'4NfG')]+'\x20('+_0x43eb8d+_0x1d9041(0x5f,'gjeJ')+(_0x86ad5['tokens_used']??0x0)+_0x231524('rUPd',0x354));const _0x383203=ct(_0x86ad5,_0x1d9041(0x5d,'dr3Q')),_0x4f6bdd=_0x383203[_0x1d9041(-0x9b,'xeun')][0x0]?.[_0x1d9041(0x17,'(DfB')]??'';function _0x231524(_0x596632,_0x3ee05b){return _0x28d666(_0x3ee05b- -0x445,_0x596632);}if(!_0x383203[_0x231524('n1@[',0xf8)]&&_0x8f44e1[_0x1d9041(0x2d,'oWFk')](_0x4f6bdd[_0x1d9041(0xd5,'TchY')],_0x48d48b[_0x231524('Wx[$',0x35b)])&&_0x48d48b[_0x1d9041(0xd5,'TchY')]>0x0){E[_0x1d9041(-0x69,'oSs%')](_0x231524('WqwJ',0x57e)+_0xf524ac+'\x20('+_0x4f6bdd[_0x1d9041(0x17a,'xeun')]+'c\x20>=\x20'+_0x48d48b['length']+'c\x20original)',{'level':_0x1d9041(0x2c7,'jGNf'),'tags':{'task_type':_0x231524('(DfB',0x4bc),'guard':_0x1d9041(0x34a,'3Bp3')},'extra':{'path':_0xf524ac,'lineCount':_0x2e197b,'summary_chars':_0x4f6bdd[_0x231524('8PRi',0x489)],'original_chars':_0x48d48b[_0x1d9041(0xd5,'TchY')]}}),lt({'file_path':_0xf524ac,'line_count':_0x2e197b,'file_ext':_0xc09b9,'decision':_0x231524('757c',0x42d),'decision_reason':'summary\x20('+_0x4f6bdd[_0x1d9041(0x22d,'B4@c')]+_0x1d9041(0x1e8,'yHa3')+_0x48d48b['length']+'c)\x20—\x20returning\x20verbatim','original_content_chars':_0x48d48b[_0x1d9041(0x2f0,'St7J')],'summary_chars':_0x4f6bdd[_0x1d9041(0x348,'CMsr')],'cumulative_reads':ot,'llm_duration_ms':_0x43eb8d});const _0x439a1d=_0x48d48b[_0x1d9041(0x36c,'jGNf')]('\x0a')[_0x231524('lj%R',0x278)]((_0x3b604d,_0x4e9d38)=>_0x4e9d38+0x1+'\x09'+_0x3b604d)[_0x231524('[IKO',0x544)]('\x0a');return st[_0x231524('dr3Q',0x324)](_0xf524ac,_0x439a1d[_0x231524('jGNf',0x543)]),tt({'task_type':_0x231524('B4@c',0x17f),'file_path':_0xf524ac,'status':_0x231524('n!63',0x521),'duration_ms':_0x8f44e1[_0x231524('(DfB',0x3e2)](Date['now'](),_0x5b2817),'is_error':!0x1,'result_size_chars':_0x439a1d[_0x1d9041(0x2e,'!PyX')],'metrics':{'input_file_size_bytes':Buffer[_0x231524('tdAv',0x4fa)](_0x48d48b,'utf-8'),'input_file_lines':_0x2e197b,'input_content_chars':_0x48d48b[_0x231524('ZIkh',0x39f)],'returned_verbatim':!0x0,'code_path':_0x1d9041(0x152,'wpw1'),'code_path_reason':_0x231524('aBYA',0x140)+_0x4f6bdd[_0x231524('jGNf',0x543)]+'c\x20>=\x20original\x20'+_0x48d48b[_0x231524('Wx[$',0x35b)]+'c'}}),{'content':[{'type':'text','text':_0x231524('oWFk',0x1a8)+_0x15bedb+'\x20('+_0x2e197b+'\x20lines\x20—\x20summary\x20was\x20larger\x20than\x20original)\x0a\x0a'+_0x439a1d}]};}function _0x1d9041(_0x31a57a,_0x181d38){return _0x5cb809(_0x181d38,_0x31a57a-0x136);}if(tt({'task_type':'read_file','file_path':_0xf524ac,'status':_0x86ad5[_0x231524('m9^T',0x3a8)],'duration_ms':_0x43eb8d,'tokens_used':_0x86ad5[_0x231524('qp$2',0x40a)],'model':_0x86ad5[_0x1d9041(0x8c,'ZIkh')],'is_error':'error'===_0x86ad5[_0x231524('B4@c',0x19d)],'result_size_chars':_0x4f6bdd[_0x231524('EtDx',0x333)],'metrics':_0x86ad5[_0x231524('qZKl',0x36b)]??{'input_file_lines':_0x2e197b,'code_path':_0x231524('aBYA',0x1e0)}}),!_0x383203['isError']){const _0x2a80de=_0x383203['content'][0x0][_0x231524('B4@c',0x248)],_0xfb8823=_0x2a80de[_0x1d9041(0xa7,'tdAv')](_0x1d9041(0x2b3,'^H8D'));let _0x2b40a1='';_0x2e197b>0x1f4?_0x2b40a1='\x0a\x0aTo\x20inspect\x20specific\x20sections,\x20use\x20read_file_context\x20with\x20a\x20query\x20describing\x20what\x20you\x20need.\x0aTo\x20see\x20exact\x20lines\x20for\x20editing,\x20use\x20read_file_full\x20with\x20offset\x20and\x20limit\x20(e.g.\x20offset:\x20200,\x20limit:\x2050).':_0xfb8823&&!at&&(_0x2b40a1=_0x1d9041(0xc2,'8PRi')),_0x383203[_0x1d9041(0x134,'m9^T')][0x0][_0x1d9041(0x9b,'B4@c')]=_0x1d9041(0x230,'@*Nm')+_0x15bedb+'\x20('+_0x2e197b+_0x231524('rEaq',0x290)+_0x2a80de+_0x2b40a1,lt({'file_path':_0xf524ac,'line_count':_0x2e197b,'file_ext':_0xc09b9,'decision':_0x1d9041(0x34b,'rUPd'),'decision_reason':_0x2e197b+_0x1d9041(0x2e4,'E)5a')+_0xe16fe8+'\x20threshold,\x20tier='+_0x104cb5,'original_content_chars':_0x48d48b[_0x231524('rUPd',0x1bd)],'summary_chars':_0x2a80de[_0x231524('rEaq',0x526)],'cumulative_reads':ot,'llm_duration_ms':_0x43eb8d});}return st['set'](_0xf524ac,_0x4f6bdd[_0x231524('B4@c',0x3da)]),_0x383203;}(_0x321ac6,_0x35d9cd,_0x561dee);nt(_0x28d666(0x803,'St7J')+_0x58f930+'\x20('+JSON[_0x28d666(0x680,'xeun')](Object['keys'](_0x561dee))+')');const _0x253268=Date[_0x5cb809('St7J',0x262)]();try{const _0x378057=rt[_0x28d666(0x540,'Ur81')](_0x58f930)&&_0x28d666(0x71c,'xuVo')==typeof _0x321ac6[_0x5cb809('wpw1',0x1d4)];let _0x7a9407=0x0;const _0x2bfe76=_0x378057?await _0x321ac6['dispatchStreaming']?.({'task_type':_0x58f930,'params':_0x561dee},_0x35d9cd,async({delta:_0x1a1c63,accumulated:_0x5aee6e})=>{function _0x4fd3c0(_0x5e4e59,_0xdb21f5){return _0x28d666(_0xdb21f5- -0x11b,_0x5e4e59);}function _0x4237bd(_0x416792,_0x178ea6){return _0x28d666(_0x416792-0x32,_0x178ea6);}if(_0x7a9407+=0x1,_0x3fb55c[_0x4237bd(0x9b7,'m9^T')](void 0x0,_0x52d32a)&&_0x33057d)try{await _0x33057d({'method':_0x3fb55c[_0x4fd3c0('%9xX',0x781)],'params':{'progressToken':_0x52d32a,'progress':_0x5aee6e[_0x4fd3c0('Ur81',0x586)],'message':_0x1a1c63}});}catch(_0x51157c){L(_0x4fd3c0('gjeJ',0x52a),_0x4fd3c0('n!63',0x68a),{'err':_0x51157c instanceof Error?_0x51157c[_0x4fd3c0('oWFk',0x432)]:String(_0x51157c)});}}):await _0x321ac6[_0x28d666(0x95b,'757c')]({'task_type':_0x58f930,'params':_0x561dee},_0x35d9cd);if(!_0x2bfe76)throw new Error('Strategy\x20returned\x20no\x20response');_0x378057&&(_0x36de01[_0x5cb809('tg@C',0x280)](_0x5cb809('B4@c',-0x1ea),_0x7a9407),_0x36de01[_0x28d666(0x9db,'qp$2')](_0x3fb55c[_0x5cb809('!PyX',0x22b)],!0x0));const _0x1b3b75=_0x3fb55c[_0x28d666(0x9c5,'%9xX')](Date[_0x5cb809('PGrK',0x1c2)](),_0x253268);_0x3fb55c[_0x28d666(0x59e,'oWFk')](nt,_0x28d666(0x564,'757c')+_0x58f930+_0x5cb809('[jcs',-0x6e)+_0x2bfe76[_0x5cb809('uSzM',0x1a0)]+'\x20('+_0x1b3b75+'ms,\x20'+(_0x2bfe76['tokens_used']??0x0)+_0x5cb809('@7zY',0x1a7)),_0x36de01['setAttribute'](_0x28d666(0x913,'oSs%'),_0x1b3b75),_0x36de01[_0x5cb809('EtDx',0xc3)](_0x28d666(0x8ab,'!6hN'),_0x2bfe76['tokens_used']??0x0),_0x36de01[_0x5cb809('[jcs',0x96)](_0x3fb55c[_0x5cb809('CMsr',-0x183)],_0x2bfe76['status']);const _0x1110eb=ct(_0x2bfe76,_0x58f930),_0x55341e=_0x1110eb['content']?.[0x0]?.[_0x5cb809('xeun',0x1f2)]??'';return tt({'task_type':_0x58f930,'file_path':_0x561dee[_0x5cb809('gjeJ',-0x17e)]??_0x561dee[_0x28d666(0x600,'qp$2')]??'','status':_0x2bfe76[_0x28d666(0x71e,'4NfG')],'duration_ms':_0x2bfe76['duration_ms']??_0x1b3b75,'tokens_used':_0x2bfe76['tokens_used'],'model':_0x2bfe76[_0x5cb809('@*Nm',0x1d3)],'is_error':!!_0x1110eb['isError'],'result_size_chars':_0x55341e[_0x5cb809('n1@[',-0x8e)],'metrics':_0x2bfe76[_0x5cb809('gjeJ',0x160)]??{}}),_0x1110eb;}catch(_0x36ef65){const _0x141975=Date[_0x28d666(0x7cb,'^H8D')]()-_0x253268,_0x91390b=_0x3fb55c[_0x28d666(0x5c6,'St7J')](_0x36ef65,Error)?_0x36ef65[_0x5cb809('[IKO',-0x64)]:String(_0x36ef65);return nt(_0x28d666(0x97a,'tg@C')+_0x58f930+_0x28d666(0x79c,'oSs%')+_0x91390b+'\x20('+_0x141975+_0x5cb809('TeTD',-0x104)),E[_0x5cb809('xeun',0xf4)](_0x36ef65,{'tags':{'task_type':_0x58f930},'extra':{'params':_0x561dee,'elapsed_ms':_0x141975}}),tt({'task_type':_0x58f930,'file_path':_0x561dee[_0x5cb809('xuVo',0x186)]??_0x561dee[_0x5cb809('B4@c',0x1cd)]??'','status':_0x5cb809('lj%R',0x3c),'duration_ms':_0x141975,'is_error':!0x0,'result_size_chars':0x0,'metrics':{'time_before_failure_ms':_0x141975,'error_recoverable':!0x1}}),{'content':[{'type':_0x5cb809('m9^T',-0x19),'text':JSON[_0x28d666(0x79e,'@7zY')]({'error':_0x91390b})}],'isError':!0x0};}})());function _0x128174(_0x4c1c69,_0x45aee5){return _0x1d5de9(_0x45aee5,_0x4c1c69- -0x14c);}if(_0x1996a0[_0x128174(0x200,'!6hN')]){_0x36de01[_0x128174(0x237,'qZKl')]({'code':0x2,'message':_0x118db8['ESJzb']}),_0x36de01[_0x41696d(0x7dc,'uSzM')](_0x118db8[_0x41696d(0x9a3,'m9^T')],!0x0);const _0x1e239a=_0x1996a0[_0x128174(0x241,'wpw1')]?.[0x0]?.[_0x128174(-0x86,'n1@[')]??'';_0x36de01[_0x41696d(0x842,'WqwJ')]('tool.error_text',_0x1e239a[_0x128174(0x14e,'xeun')](0x0,0x1f4));}else{_0x36de01['setStatus']({'code':0x1,'message':'ok'});const _0x440a32=_0x1996a0[_0x41696d(0x565,'xeun')]?.[0x0]?.[_0x41696d(0x5a8,'NAE1')]??'';_0x36de01[_0x41696d(0x6e5,'&aAQ')](_0x128174(0x136,'gjeJ'),_0x440a32['length']);}return await T(),_0x1996a0;});}),_0x314acb['registerTool']('edit_file',{'title':_0x45c662(0x5c2,'NAE1'),'description':_0x557352['LiCwE'],'annotations':{'readOnlyHint':!0x1,'destructiveHint':!0x1,'idempotentHint':!0x0,'openWorldHint':!0x1},'t':{'anthropic/alwaysLoad':!0x0,'anthropic/searchHint':_0xb6de8f('aBYA',0x542)},'inputSchema':{'file_path':_0x2f5c8f[_0xb6de8f('@7zY',0x481)]()[_0xb6de8f('tdAv',0x5cd)](_0x557352[_0x45c662(0x719,'tg@C')]),'old_string':_0x2f5c8f[_0x45c662(0x7e2,'8PRi')]()[_0xb6de8f('EtDx',0x16f)](_0xb6de8f('xuVo',0x39b)),'new_string':_0x2f5c8f[_0xb6de8f('m9^T',0x5bd)]()[_0xb6de8f('TchY',0x5a4)](_0xb6de8f('!PyX',0x1a8))}},async({file_path:_0x3b3d63,old_string:_0x1b68ea,new_string:_0x4ba1b2})=>E[_0xb6de8f('uSzM',0x552)]({'name':'tool:edit_file','op':_0xb6de8f('wpw1',0x287),'attributes':{'tool.task_type':_0x45c662(0x7f9,'TchY'),'tool.file_path':_0x3b3d63,'tool.old_string_length':_0x1b68ea[_0x45c662(0x815,'[IKO')],'tool.new_string_length':_0x4ba1b2[_0x45c662(0x640,'ZIkh')]}},async _0x4a9cea=>{const _0x48c296={'XvxpD':function(_0x252173,_0x25df2a){return _0x252173===_0x25df2a;},'LpvdQ':function(_0x28094d,_0x2cb023){return _0x557352['BnWrj'](_0x28094d,_0x2cb023);},'qTnPw':function(_0x2f1185,_0x91ba87){function _0x44700c(_0x33ae7a,_0x45e1c0){return _0x43ac(_0x33ae7a- -0x53,_0x45e1c0);}return _0x557352[_0x44700c(0x1d6,'n1@[')](_0x2f1185,_0x91ba87);},'NxqkJ':function(_0x36c2f4,_0x440c48){function _0x194ea1(_0x467a87,_0x22cee9){return _0x43ac(_0x467a87- -0x3e0,_0x22cee9);}return _0x557352[_0x194ea1(-0xaa,'jGNf')](_0x36c2f4,_0x440c48);},'WzoKB':function(_0x59e47c,_0x441270){return _0x59e47c>_0x441270;},'aiJvh':function(_0x508ae4,_0x459af1){function _0x45ef4c(_0x4f7f39,_0x23ed9f){return _0x43ac(_0x23ed9f-0x64,_0x4f7f39);}return _0x557352[_0x45ef4c('dr3Q',0x624)](_0x508ae4,_0x459af1);},'OVTxC':_0x557352['lhbsn'],'tIhin':_0x41808d(0x456,'oWFk'),'vKDeQ':_0x546326(0x646,'%9xX'),'xMVyZ':_0x546326(0x6a4,'B4@c'),'eWFOU':function(_0xf75dd5,_0x135b8d){return _0xf75dd5(_0x135b8d);},'CbOlS':_0x41808d(0x4a2,'aBYA'),'vNoIr':function(_0x15a627,_0x33075e,_0x572244){return _0x15a627(_0x33075e,_0x572244);},'wRDnD':_0x41808d(0x2a9,'uSzM'),'Kgvws':function(_0x154fa6,_0x53e99e){return _0x154fa6===_0x53e99e;},'EDUUd':_0x557352[_0x41808d(0x1f9,'E)5a')],'glHzl':_0x546326(0x811,'xeun')},_0x5c0512=et(_0x321ac6,_0x546326(0x7a0,'!PyX'));function _0x41808d(_0x21751f,_0x1a8c93){return _0xb6de8f(_0x1a8c93,_0x21751f- -0x73);}if(_0x5c0512)return _0x4a9cea[_0x546326(0x5af,'^H8D')]({'code':0x2,'message':'not_authenticated'}),_0x4a9cea['setAttribute'](_0x41808d(0x1c0,'Ur81'),!0x0),_0x4a9cea[_0x41808d(0x201,'CMsr')](_0x41808d(0x560,'s]wu'),_0x557352[_0x546326(0x774,'757c')]),await T(),_0x5c0512;const _0x79ee7a=Date[_0x546326(0x75c,'TchY')](),_0x5d6f41=await async function(_0x4738c8,_0x274bbd,_0x502214){const _0x883e01=_0x502214['file_path'],_0x1eec27=_0x502214[_0x510b50(0x895,'[jcs')],_0x1c0eef=_0x502214[_0xf725e9(0x387,'&aAQ')];nt(_0x510b50(0x7a3,'B4@c')+_0x883e01+')');const _0x12367e=Date[_0x510b50(0x735,'CMsr')](),_0xbacda=_t(_0x274bbd,_0x883e01);if(!_0xbacda)return L(_0x48c296[_0x510b50(0x8c1,'tdAv')],_0x48c296[_0x510b50(0x745,'tdAv')],{'file_path':_0x883e01}),{'content':[{'type':'text','text':JSON[_0x510b50(0x59b,'NAE1')]({'error':_0x510b50(0x773,'aBYA')})}],'isError':!0x0};let _0x523e3f;L(_0x48c296[_0xf725e9(0x313,'s]wu')],'edit_file:\x20'+_0x883e01,{'oldStringLength':_0x1eec27[_0x510b50(0x6f7,'Ur81')],'newStringLength':_0x1c0eef['length']});try{_0x523e3f=_0xf57781(_0xbacda,_0x48c296[_0xf725e9(0x1d1,'PGrK')]);}catch(_0x1cf3ed){return E['captureException'](_0x1cf3ed,{'tags':{'task_type':'edit_file'},'extra':{'file_path':_0x883e01}}),{'content':[{'type':_0x510b50(0x6c0,'[IKO'),'text':JSON['stringify']({'error':'Could\x20not\x20read:\x20'+(_0x1cf3ed instanceof Error?_0x1cf3ed[_0xf725e9(0x253,'3Bp3')]:_0x48c296[_0xf725e9(0x151,'4NfG')](String,_0x1cf3ed))})}],'isError':!0x0};}function _0x510b50(_0x3f85d1,_0x5ced85){return _0x41808d(_0x3f85d1-0x4b2,_0x5ced85);}if(_0x1eec27===_0x1c0eef)return{'content':[{'type':_0xf725e9(0x208,'Ur81'),'text':JSON[_0x510b50(0x8a3,'s]wu')]({'error':_0x510b50(0x597,'WqwJ')})}],'isError':!0x0};if(_0x523e3f[_0x510b50(0x87b,'@7zY')](_0x1eec27)){const _0x50f193=_0x523e3f[_0x510b50(0x7ec,'ZIkh')](_0x1eec27)['length']-0x1;if(_0x50f193>0x1)return L(_0x48c296[_0xf725e9(0x443,'dr3Q')],_0x510b50(0x68a,'yHa3')+_0x50f193+'\x20occurrences,\x20rejecting',{'file_path':_0x883e01,'occurrences':_0x50f193}),{'content':[{'type':'text','text':JSON['stringify']({'error':_0x510b50(0x820,'!PyX')+_0x50f193+_0x510b50(0x5cc,'rUPd')})}],'isError':!0x0};const _0x4bc5bc=_0x523e3f[_0xf725e9(0x12f,'aBYA')](_0x1eec27,_0x1c0eef);return _0x48c296['vNoIr'](_0x12e8e3,_0xbacda,_0x4bc5bc),it=!0x0,nt(_0x510b50(0x83d,'tg@C')+(Date['now']()-_0x12367e)+_0x510b50(0x60e,'oWFk')),{'content':[{'type':_0xf725e9(0xc4,'oSs%'),'text':_0x510b50(0x630,'St7J')+_0x883e01+'.'}]};}nt(_0x48c296[_0x510b50(0xa11,'xuVo')]),L(_0x510b50(0x858,'rEaq'),'edit_file:\x20old_string\x20not\x20found,\x20calling\x20validate_patch',{'file_path':_0x883e01});let _0x1e8691='',_0x5db782='';try{const _0x224e08=await _0x4738c8[_0xf725e9(0x118,'Wx[$')]({'task_type':_0x510b50(0x699,'dr3Q'),'params':{'file_path':_0x883e01,'old_string':_0x1eec27}},_0x274bbd);_0x48c296[_0x510b50(0x5e4,'s]wu')](_0x48c296[_0xf725e9(0x1ae,'n1@[')],_0x224e08[_0xf725e9(0x4f0,'s]wu')])&&(_0x1e8691=_0x224e08[_0xf725e9(0x297,'s]wu')][_0xf725e9(0x412,'!PyX')]??'',_0x5db782=_0x224e08['result'][_0x510b50(0x673,'CMsr')]??'');}catch(_0x1539a7){E[_0xf725e9(0x239,'!PyX')](_0x1539a7,{'tags':{'task_type':'edit_file','sub_task':'validate_patch'},'extra':{'file_path':_0x883e01,'old_string_length':_0x1eec27['length']}});}function _0xf725e9(_0x20b015,_0x13d15b){return _0x41808d(_0x20b015- -0x5e,_0x13d15b);}const _0x38f44d=_0x1e8691||function(_0x46562c,_0x19c1bc){function _0xe01726(_0x17f370,_0x54840b){return _0xf725e9(_0x17f370-0x34f,_0x54840b);}const _0x250534=_0x19c1bc[_0x5212b7('tdAv',0x210)];if(_0x48c296['XvxpD'](0x0,_0x250534)||_0x48c296[_0x5212b7('s]wu',0x30e)](_0x46562c[_0xe01726(0x49b,'aBYA')],_0x250534))return'';const _0x2ede8a=Math[_0xe01726(0x706,'n1@[')](_0x250534,0xc8);let _0xef2969=Number[_0xe01726(0x511,'n!63')],_0x232db0=0x0;for(let _0x3b8d6c=0x0;_0x48c296[_0xe01726(0x6e0,'jGNf')](_0x3b8d6c,_0x48c296['NxqkJ'](_0x46562c[_0xe01726(0x506,'xuVo')],_0x2ede8a));_0x3b8d6c++){let _0x3c42f3=0x0;for(let _0x241144=0x0;_0x48c296[_0x5212b7('yHa3',0x254)](_0x241144,_0x2ede8a);_0x241144++)_0x46562c[_0x3b8d6c+_0x241144]===_0x19c1bc[_0x241144]&&_0x3c42f3++;_0x48c296[_0x5212b7('jGNf',0x352)](_0x3c42f3,_0xef2969)&&(_0xef2969=_0x3c42f3,_0x232db0=_0x3b8d6c);}function _0x5212b7(_0x1f2a7a,_0x35f35c){return _0x510b50(_0x35f35c- -0x664,_0x1f2a7a);}return _0xef2969<_0x2ede8a/0x2?'':_0x46562c[_0xe01726(0x6bb,'&aAQ')](_0x232db0,_0x48c296[_0xe01726(0x3e0,'n1@[')](_0x232db0,_0x2ede8a));}(_0x523e3f,_0x1eec27),_0x5024d1=_0x5db782;return{'content':[{'type':_0x48c296[_0xf725e9(0x249,'[IKO')],'text':_0xf725e9(0x448,'oWFk')+_0x883e01+'.'+(_0x38f44d?_0x510b50(0x8d0,'oSs%')+JSON[_0x510b50(0x87f,'[jcs')](_0x38f44d):'')+(_0x5024d1?'\x20'+_0x5024d1:'')}],'isError':!0x0};}(_0x321ac6,_0x35d9cd,{'file_path':_0x3b3d63,'old_string':_0x1b68ea,'new_string':_0x4ba1b2}),_0xde9d42=_0x5d6f41[_0x546326(0x6a5,'[jcs')]?.[0x0]?.[_0x546326(0x535,'wpw1')]??'';function _0x546326(_0x57db06,_0x3db49e){return _0x45c662(_0x57db06-0x9b,_0x3db49e);}return _0x557352[_0x546326(0x8b4,'lj%R')](tt,{'task_type':_0x546326(0x6d9,'aBYA'),'file_path':_0x3b3d63,'status':_0x5d6f41[_0x546326(0x7fa,'oSs%')]?_0x546326(0x8a7,'@7zY'):'success','duration_ms':Date[_0x546326(0x6ab,'xeun')]()-_0x79ee7a,'is_error':!!_0x5d6f41[_0x41808d(0x4a7,'oSs%')],'result_size_chars':_0xde9d42[_0x546326(0x591,'n1@[')],'metrics':{'old_string_length':_0x1b68ea[_0x41808d(0x182,'757c')],'new_string_length':_0x4ba1b2[_0x41808d(0x275,'oWFk')],'code_path':_0x546326(0x5a0,'3Bp3')}}),_0x5d6f41[_0x41808d(0x4a8,'aBYA')]?_0x4a9cea[_0x41808d(0x163,'[jcs')]({'code':0x2,'message':_0x41808d(0x496,'3Bp3')}):_0x4a9cea['setStatus']({'code':0x1,'message':'ok'}),await T(),_0x5d6f41;}));}(_0x5301c8,_0xec1cf2,_0x2e82d4,_0x495a66),_0x557352[_0x54280c('4NfG',0x57c)](It,_0x455e73('rEaq',0x590));}function _0x54280c(_0x1964ff,_0x442d98){return _0x456fd8(_0x442d98-0x287,_0x1964ff);}It(_0x455e73('ZIkh',0x417)),_0x557352[_0x455e73('nV2t',0x35b)](L,_0x557352['ZknAt'],_0x557352[_0x455e73('yHa3',0x571)]);const _0xd79ab5=new _0xf9438e();function _0x455e73(_0x5bcd3c,_0x45b8ef){return _0x53ff1d(_0x45b8ef-0x249,_0x5bcd3c);}await _0x5301c8[_0x455e73('qp$2',0x281)](_0xd79ab5);try{_0x366609(p(),{'recursive':!0x0}),_0x5442a7(f(),String(process[_0x54280c('uSzM',0x218)])),It(_0x455e73('xuVo',0x3fd));}catch(_0x353cc2){It(_0x54280c('NAE1',0x39f)+(_0x557352['SHGvr'](_0x353cc2,Error)?_0x353cc2['message']:String(_0x353cc2)));}It(_0x54280c('rEaq',0x26c));const _0x37e706=async()=>{function _0x36c0bf(_0x404605,_0x2f5818){return _0x54280c(_0x404605,_0x2f5818-0x25e);}const _0x2ffc4d={'hHfbw':function(_0x290573,_0x2e68bc){function _0x2bc442(_0x39e5d0,_0x80fbea){return _0x43ac(_0x39e5d0- -0x2ab,_0x80fbea);}return _0x557352[_0x2bc442(-0x8f,'qZKl')](_0x290573,_0x2e68bc);}};function _0x321a5d(_0x15099b,_0x53328c){return _0x455e73(_0x15099b,_0x53328c-0xa8);}It(_0x36c0bf('tg@C',0x863)),(function(){try{_0x2ffc4d['hHfbw'](_0x54126f,f());}catch{}}()),await _0x5301c8['close'](),_0x557352[_0x36c0bf('WqwJ',0x77e)](It,_0x36c0bf('^H8D',0x5e1)),process[_0x36c0bf('ZIkh',0x526)](0x0);};process['on'](_0x54280c('oWFk',0x231),_0x37e706),process['on'](_0x54280c('@*Nm',0x639),_0x37e706);}()[_0x456fd8(-0x62,'%9xX')](async _0x46c76a=>{function _0x4fb708(_0x16fe27,_0x427356){return _0x53ff1d(_0x16fe27- -0x6,_0x427356);}const _0x17b8c3={'PhAwt':function(_0x262254,_0x507b28){return _0x262254 instanceof _0x507b28;}};function _0x3b7b8a(_0x4f4cd3,_0x5346a0){return _0x456fd8(_0x5346a0-0x393,_0x4f4cd3);}It('FATAL:\x20'+(_0x46c76a instanceof Error?_0x46c76a[_0x4fb708(0x13d,'n1@[')]:String(_0x46c76a))),_0x17b8c3['PhAwt'](_0x46c76a,Error)&&_0x46c76a[_0x3b7b8a('oSs%',0x5c4)]&&It(_0x46c76a[_0x4fb708(-0xa0,'WqwJ')]),E[_0x4fb708(0x37a,'TchY')](_0x46c76a),await E[_0x4fb708(0x337,'Ur81')](0x7d0),process[_0x4fb708(0x2ce,'^H8D')](0x1);});
@@ -0,0 +1 @@
1
+ const n=6e3,t=24e3,e="\n…[rule truncated]";export function buildResumeSnapshot(e,s={}){const c=Array.isArray(e)?e:[],a=c.filter(n=>function(n){return!(!n||"object"!=typeof n)&&"rule"===n.type}(n)),u=c.filter(n=>function(n){return!(!n||"object"!=typeof n||"decision"!==n.category&&"decision"!==n.type)}(n));if(0===a.length&&0===u.length)return"";const l=function(n){const t=['<lineman_resume version="1"'];return void 0!==n?.eventCount&&t.push(`events="${Number(n.eventCount)}"`),void 0!==n?.compactCount&&t.push(`compacts="${Number(n.compactCount)}"`),`${t.join(" ")}>`}(s),h=[];if(a.length>0){const t=new Set,e=[];for(let n=a.length-1;n>=0;n--){const o=a[n],i=String(o?.data?.path??"")||`__idx_${n}`;t.has(i)||(t.add(i),e.unshift(o))}const i=o(e.slice(-10),n);i.length>0&&h.push(i)}if(u.length>0){const n=u.slice(-10).map(n=>` <decision>${r(i(String(n?.data?.text??""),200))}</decision>`);h.push(`<decisions>\n${n.join("\n")}\n</decisions>`)}let g=`${l}\n${h.join("\n")}\n</lineman_resume>`;return g.length>t&&a.length>0&&(g=function(e,s,c,a){const u=new Set,l=[];for(let n=s.length-1;n>=0;n--){const t=s[n],e=String(t?.data?.path??"")||`__idx_${n}`;u.has(e)||(u.add(e),l.unshift(t))}const h=l.slice(-10),g=Math.max(1,h.length);let p=e;for(let e=n;e>=200;e=Math.floor(e/2)){const n=Math.max(200,Math.floor(e/Math.sqrt(g))),s=[];if(s.push(o(h,n)),c.length>0){const n=c.slice(-10).map(n=>` <decision>${r(i(String(n?.data?.text??""),200))}</decision>`);s.push(`<decisions>\n${n.join("\n")}\n</decisions>`)}if(p=`${a}\n${s.join("\n")}\n</lineman_resume>`,p.length<=t)return p}return p}(g,a,u,l)),g}function o(n,t){const o=[];for(const i of n){const n=String(i?.data?.path??""),s=String(i?.data?.content??"");if(0===s.length)continue;const c=!0===i?.data?.truncated,a=r(s.length>t?s.slice(0,t)+e:c?s+e:s),u=r(n),l=n?` source="${u}"`:"";o.push(` <rule${l}>\n${a}\n </rule>`)}return 0===o.length?"":`<rules>\n${o.join("\n")}\n</rules>`}function i(n,t){return"string"!=typeof n?"":n.length<=t?n:`${n.slice(0,t-1)}…`}function r(n){return String(n).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;")}export const _internals={MAX_SECTION_ITEMS:10,SNAPSHOT_SOFT_LIMIT:2e3,SNAPSHOT_HARD_LIMIT:t,DECISION_CLIP_CHARS:200,RULE_CLIP_CHARS:n};
@@ -0,0 +1 @@
1
+ const t=["commit","push","pull","fetch","merge","rebase","stash","checkout","branch","tag","cherry-pick","reset","revert","log","diff","status","add","rm","mv","clone","worktree"],e=/^(source\b|export\b|nvm\b|pyenv\b|conda\b|(npm|pip|cargo|yarn|pnpm|bun|go)\s+install\b)/,r=[{mode:"investigate",rx:/\b(why|how|explain|understand|analy[sz]e|debug|trace)\b/i},{mode:"implement",rx:/\b(create|add|build|write|make|develop|fix|implement|refactor)\b/i},{mode:"discuss",rx:/\b(think about|consider|should we|pros and cons|opinion|recommend)\b/i},{mode:"review",rx:/\b(review|check|audit|verify|test|validate|inspect)\b/i}];export function extractToolEvents(r){if(!r||"object"!=typeof r)return[];const o=r.tool_name??"",a=r.tool_input??{},s=[];if("Read"===o){const t=a.file_path??a.path;t&&(s.push({type:"file_read",category:"file",priority:1,data:{path:t}}),"string"==typeof t&&/\bCLAUDE\.md$/.test(t)&&s.push({type:"rule_content",category:"rule",priority:1,data:{path:t}}))}if("Edit"===o||"NotebookEdit"===o){const t=a.file_path??a.path;t&&s.push({type:"file_edit",category:"file",priority:1,data:{path:t}})}if("Write"===o){const t=a.file_path??a.path;t&&s.push({type:"file_write",category:"file",priority:1,data:{path:t}})}if("Glob"===o){const t=a.pattern;t&&s.push({type:"file_glob",category:"file",priority:3,data:{pattern:t}})}if("Grep"===o){const t=a.pattern;t&&s.push({type:"file_search",category:"file",priority:3,data:{pattern:t}})}if("Bash"===o&&"string"==typeof a.command){const r=a.command.trim(),i=r.match(/^cd\s+(\S+)/);i&&s.push({type:"cwd",category:"cwd",priority:2,data:{to:i[1]}});const o=r.match(/^git\s+(\S+)/);o&&t.includes(o[1])&&s.push({type:"git",category:"git",priority:2,data:{operation:o[1],command:r.slice(0,200)}}),e.test(r)&&s.push({type:"env",category:"env",priority:2,data:{command:r.slice(0,200)}})}if("TodoWrite"===o&&s.push({type:"task",category:"task",priority:1,data:{count:Array.isArray(a.todos)?a.todos.length:void 0}}),"TaskCreate"===o&&s.push({type:"task_create",category:"task",priority:1,data:{subject:i(a.subject).slice(0,200)}}),"TaskUpdate"===o&&s.push({type:"task_update",category:"task",priority:1,data:{taskId:a.taskId,status:a.status}}),"EnterPlanMode"===o&&s.push({type:"plan_enter",category:"plan",priority:2,data:{}}),"ExitPlanMode"===o&&s.push({type:"plan_exit",category:"plan",priority:2,data:{}}),"Skill"===o&&s.push({type:"skill",category:"skill",priority:3,data:{name:i(a.skill).slice(0,120)}}),"Agent"===o&&s.push({type:"subagent_launched",category:"subagent",priority:3,data:{subagent_type:a.subagent_type,description:i(a.description).slice(0,200)}}),"AskUserQuestion"===o&&s.push({type:"decision_question",category:"decision",priority:2,data:{question:i(a.question).slice(0,200)}}),"EnterWorktree"===o&&s.push({type:"worktree",category:"env",priority:2,data:{path:i(a.worktree_path)}}),"string"==typeof o&&o.startsWith("mcp__")){const t=function(t){if(t&&"object"==typeof t)for(const e of Object.values(t))if("string"==typeof e&&e.length>0)return e}(a);s.push({type:"mcp",category:"mcp",priority:3,data:{tool:o,first_param:t?.slice(0,200)}})}return s}export function extractFailureEvents(t){if(!t||"object"!=typeof t)return[];const e=i(t.tool_name);if(!0===t.is_interrupt)return[];const r=i(t.error);return 0===r.length&&0===e.length?[]:[{type:"error_tool",category:"error",priority:2,data:{tool:e,summary:r.slice(0,300)}}]}export function extractUserEvents(t){if(!t||"object"!=typeof t)return[];const e=("string"==typeof t.prompt?t.prompt:"").trim();if(0===e.length)return[];if(/^<(task-notification|system-reminder|context_guidance|tool-result)/.test(e))return[];const i=[];i.push({type:"prompt",category:"prompt",priority:1,data:{text:e.slice(0,2e3),length:e.length}}),/\b(don'?t|never|always|instead of|prefer|use\s.+\sinstead|no,?\s*do)\b/i.test(e)&&i.push({type:"decision",category:"decision",priority:2,data:{text:e.slice(0,500)}}),/\b(act as|you are|behave like|persona|senior|staff engineer|principal)\b/i.test(e)&&i.push({type:"role",category:"role",priority:3,data:{text:e.slice(0,200)}});for(const{mode:t,rx:o}of r)if(o.test(e)){i.push({type:"intent",category:"intent",priority:4,data:{mode:t}});break}return e.length>1024&&i.push({type:"data",category:"data",priority:4,data:{length:e.length,preview:e.slice(0,200)}}),i}function i(t){if("string"==typeof t)return t;if(null==t)return"";try{return String(t)}catch{return""}}
@@ -0,0 +1 @@
1
+ import{readFileSync as t,statSync as e}from"node:fs";import{homedir as n}from"node:os";import{join as a}from"node:path";export const CLAUDE_MD_MAX_BYTES=51200;export function claudeMdCandidatePaths(t,e=n()){const r=[];return e&&r.push(a(e,".claude","CLAUDE.md")),t&&r.push(a(t,".claude","CLAUDE.md")),t&&r.push(a(t,"CLAUDE.md")),r}export function readClaudeMdFile(n){try{const a=e(n);if(!a.isFile())return null;const r=a.size;if(0===r)return{content:"",truncated:!1,bytesRead:0,totalBytes:0};const o=t(n);return o.length<=51200?{content:o.toString("utf8"),truncated:!1,bytesRead:o.length,totalBytes:r}:{content:o.subarray(0,51200).toString("utf8")+"\n\n[lineman: file truncated at 50KB cap]",truncated:!0,bytesRead:51200,totalBytes:r}}catch{return null}}function r(t,e){const n=t.getEvents(2e3);for(const t of n)if("rule"===t.type&&"claude_md"===t.category&&t?.data?.path===e)return!0;return!1}export function ingestClaudeMd({db:t,cwd:e,home:n}){const a=[],o=[],d=claudeMdCandidatePaths(e,n);for(const e of d){const n=readClaudeMdFile(e);if(null===n){o.push({path:e,reason:"missing"});continue}if(0===n.content.length){o.push({path:e,reason:"empty"});continue}let d=!1;try{d=r(t,e)}catch{d=!1}d?o.push({path:e,reason:"already-ingested"}):t.insertEvent({type:"rule",category:"claude_md",priority:1,data:{path:e,content:n.content,truncated:n.truncated,totalBytes:n.totalBytes}},"session-start")?a.push({path:e,bytes:n.bytesRead,truncated:n.truncated}):o.push({path:e,reason:"insert-deduped-or-failed"})}return{inserted:a,skipped:o}}
@@ -0,0 +1 @@
1
+ import{existsSync as e,mkdirSync as t,readFileSync as n,unlinkSync as r,writeFileSync as o}from"node:fs";import{homedir as i}from"node:os";import{join as c}from"node:path";import{pluginDataDir as a,pluginDataPath as s}from"../plugin-paths.mjs";const u=c(i(),".goodex","lineman.json");let l=null;function p(){return s(`mcp-ready-${process.ppid}`)}export function writeReadySentinel(){t(a(),{recursive:!0}),o(p(),String(process.pid))}export function clearReadySentinel(){try{r(p())}catch{}}export function isMcpReady(){const t=p();if(!e(t))return!1;try{const e=Number.parseInt(n(t,"utf-8").trim(),10);return!!Number.isFinite(e)&&(process.kill(e,0),!0)}catch{return!1}}export async function isCloudReachable(e={}){const t=e.now??Date.now;if(l&&t()-l.at<3e4)return l.healthy;const r=function(){const e=process.env.LINEMAN_SERVER_URL;if(e)return e;try{const e=JSON.parse(n(u,"utf-8"));if("string"==typeof e?.serverUrl)return e.serverUrl}catch{}return null}();if(!r)return!1;const o=new AbortController,i="number"==typeof e.timeoutMs&&e.timeoutMs>0?e.timeoutMs:1e3,c=setTimeout(()=>o.abort(),i);let a;try{a=await fetch(`${r}/health`,{signal:o.signal})}catch{return l=null,clearTimeout(c),!1}clearTimeout(c);try{a.body?.cancel?.()}catch{}const s=a.ok;return l=s?{healthy:!0,at:t()}:null,s}export async function getFullHealth(e={}){const t=isMcpReady(),n=!!t&&await isCloudReachable(e);return{mcp:t,cloud:n,healthy:t&&n}}export function degradationMarker({mcp:e,cloud:t}){return e&&t?null:`<context_mode_degraded>${e?"Lineman cloud API is unreachable.":"Lineman MCP server is not running in this session."} Tools are in passthrough mode until recovery; no compression until then.</context_mode_degraded>`}export function _clearHealthCache(){l=null}
@@ -0,0 +1 @@
1
+ import{readFileSync as t}from"node:fs";import{homedir as e}from"node:os";import{join as n}from"node:path";const r=n(e(),".goodex","lineman.json"),o=process.env.LINEMAN_SERVER_URL??"https://api.lineman.sh";function s(){const e=process.env.LINEMAN_API_TOKEN,n=process.env.LINEMAN_SERVER_URL;let s=null;try{s=JSON.parse(t(r,"utf-8"))}catch{}const i=n??("string"==typeof s?.serverUrl?s.serverUrl:o),l=e??("string"==typeof s?.apiToken?s.apiToken:null);return l?{serverUrl:i,apiToken:l}:null}function i(t){const e=t?.result;if(!e||"object"!=typeof e)return null;const n=e.narrative;if("string"!=typeof n)return null;const r=n.trim();return 0===r.length?null:r.length>500?`${r.slice(0,499)}…`:r}export async function generateNarrative(t,e={}){if("string"!=typeof t||0===t.length)return null;const n=s();if(!n)return null;const r="number"==typeof e.timeoutMs&&e.timeoutMs>0?e.timeoutMs:2e3,o=new AbortController,l=setTimeout(()=>o.abort(),r);try{const e=await fetch(`${n.serverUrl}/lineman/execute`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${n.apiToken}`},body:JSON.stringify({task_type:"summarize_session",content:t}),signal:o.signal});return e.ok?i(await e.json().catch(()=>null)):null}catch{return null}finally{clearTimeout(l)}}export const _internals={NARRATIVE_TIMEOUT_MS:2e3,NARRATIVE_MAX_CHARS:500,extractNarrative:i,loadCloudConfig:s};
@@ -0,0 +1 @@
1
+ import{wrapSummary as t}from"./summary-envelope.mjs";import{canonicalize as e}from"./tool-aliases.mjs";import{MCP_TOOL_NAME as o,MCP_TOOL_NAME_EDIT_FILE as n}from"./tool-naming.mjs";export function routeHookDecision(r,c){const u=e(r?.tool_name),l=r?.tool_input??{};return"Read"===u?function(e,n){const i=e.file_path??e.path;if(!i)return{action:"continue"};if(void 0!==e.offset||void 0!==e.limit)return{action:"continue"};const s=n?.fileStats;if(!s||!1===s.exists)return{action:"continue"};const a=n?.config?.read_file_threshold??300;if(s.lineCount<=a)return{action:"continue"};if(!n?.mcpReady)return{action:"continue"};const r=`MANDATORY: Call ${o} with task_type="read_file" and params={"path":"${i}"} instead. For verbatim code sections, use task_type="read_file_context" with a query. Do NOT use cat/head/tail in Bash.`;return{action:"block",reason:`File has ${s.lineCount} lines — too large for direct Read.`,redirect:{additionalContext:t(r,{sourceTool:"Read",sourcePath:i,taskTypeForVerbatim:"read_file_full"})}}}(l,c):"Edit"===u?function(e,o){const i=e.file_path,s=e.old_string;return i&&void 0!==s&&o?.mcpReady?{action:"block",reason:"Native Edit is restricted; use Lineman edit_file (validates old_string with closest-match suggestions, no Read prerequisite).",redirect:{additionalContext:t(`Native Edit is restricted. Call ${n} with the same { file_path, old_string, new_string } — it validates old_string against the file before applying, with closest-match suggestions if there's a typo. No need to Read first.`,{sourceTool:"Edit",sourcePath:i,taskTypeForVerbatim:"read_file_full"})}}:{action:"continue"}}(l,c):"Bash"===u?function(t,e){const o=t?.command??"";if("string"!=typeof o||0===o.length)return{action:"continue"};if(!e?.mcpReady)return{action:"continue"};const n=function(t){let e="",o=0;for(;o<t.length;){const n=t[o];if("\\"===n&&o+1<t.length)e+=t.slice(o,o+2),o+=2;else{if('"'===n||"'"===n||"`"===n){const i=n;for(o+=1;o<t.length;)if("\\"===t[o]&&o+1<t.length)o+=2;else{if(t[o]===i){o+=1;break}o+=1}e+=" ";continue}e+=n,o+=1}}return e}(o);return!/\b(curl|wget)\b/.test(r=n)||/\s-[oO]\s+[^-\s]/.test(r)||/\s-O\b/.test(r)&&!/\s-O\s*-\b/.test(r)||/--output-document=\S/.test(r)||/--output=\S/.test(r)||/>\s*[^-\s&][^\s]*$/.test(r)?function(t){return!!/(^|\s|\/)gradlew?\b/.test(t)||!!/(^|\s|\/)mvnw?\b/.test(t)}(n)?a(s):function(t){return!!(/\bfetch\s*\(\s*["'`]https?:/.test(t)||/\brequests\.(get|post|put|delete|patch|head)\s*\(\s*["']https?:/.test(t)||/\bhttp(s)?\.(get|request)\s*\(\s*["']https?:/.test(t)||/\burllib\.request\.urlopen\s*\(\s*["']https?:/.test(t)||/\baxios\.(get|post|put|delete)\s*\(\s*["'`]https?:/.test(t))}(o)?a(i):{action:"continue"}:a(i);var r}(l,c):{action:"continue"}}const i=`Lineman: this command floods context with raw HTTP response bodies. Call ${o} with task_type="analyze_web_page" and params containing the URL for compressed output, or re-run natively (e.g. add -o <file> to save to disk) if you actually need the raw bytes.`,s=`Lineman: build-tool output is too large to keep in context. Call ${o} with task_type="triage_build_output" and params={"content": <paste output>} for a compressed summary, or re-run natively if you need the full log.`;function a(t){return t.includes("'")?{action:"continue"}:{action:"modify",updatedInput:{command:`echo '${t}'`}}}
@@ -0,0 +1 @@
1
+ export function splitChainedCommands(n){const e=[];if("string"!=typeof n||0===n.length)return e;let t="",i=!1,o=!1,s=!1,c=0;const f=n.length,l=n=>{const i=t.trim();i.length>0&&e.push({command:i,separator:n}),t=""};for(;c<f;){const e=n[c];if("\\"===e&&c+1<f)t+=n[c]+n[c+1],c+=2;else if(o||s||"'"!==e)if(i||s||'"'!==e)if(i||o||"`"!==e){if(!i&&!o&&!s){const t=n.slice(c,c+2);if("&&"===t||"||"===t){l(t),c+=2;continue}if(";"===e){l(";"),c+=1;continue}if("|"===e){"|"===n[c+1]?(l("||"),c+=2):(l("|"),c+=1);continue}}t+=e,c+=1}else s=!s,t+=e,c+=1;else o=!o,t+=e,c+=1;else i=!i,t+=e,c+=1}return l(null),e}export function commandsOf(n){return splitChainedCommands(n).map(n=>n.command)}
@@ -0,0 +1 @@
1
+ import{splitChainedCommands as o}from"./chain-split.mjs";import{compilePatterns as t,matchPattern as n}from"./patterns.mjs";import{scanCommand as e}from"./shell-escape.mjs";function c(o){const t=[];let n=0;const e=o.length;for(;n<e;){const c=o[n];if("\\"===c&&n+1<e)n+=2;else{if("$"===c&&"("===o[n+1]){let c=1,s=n+2;for(;s<e&&c>0;){const t=o[s];"\\"===t&&s+1<e?s+=2:("("===t?c++:")"===t&&c--,c>0&&s++)}if(0===c){const e=o.slice(n+2,s);e.length>0&&t.push(e),n=s+1;continue}}if("`"===c){let c=n+1;for(;c<e;)if("\\"===o[c]&&c+1<e)c+=2;else{if("`"===o[c])break;c++}if(c<e){const e=o.slice(n+1,c);e.length>0&&t.push(e),n=c+1;continue}}n++}}return t}export function compilePolicies(o){return{deny:t(o.deny??[]),ask:t(o.ask??[]),allow:t(o.allow??[])}}function s(o,t,e){for(const c of o)if(n(c,t,e))return c;return null}export function enumerateSubjects(t){if("Bash"!==t.tool)return t.subject?[t.subject]:[];const n=t.command??"",s=o(n).map(o=>o.command),r=[],a=new Set;for(;s.length>0;){const t=s.shift();if(!t||a.has(t))continue;a.add(t),r.push(t);const n=e(t);for(const t of n.commands){const n=o(t).map(o=>o.command);s.push(...n.length>0?n:[t])}const i=c(t);for(const t of i){const n=o(t).map(o=>o.command);s.push(...n.length>0?n:[t])}}return r}export function decide(o,t){const n=enumerateSubjects(o);for(const e of n){const n=s(t.deny,o.tool,e);if(n)return{action:"deny",reason:`Denied by policy "${n.raw}" — matched ${o.tool} subject ${JSON.stringify(e)}`,matched:{subject:e,pattern:n.raw,tool:o.tool}}}for(const e of n){const n=s(t.ask,o.tool,e);if(n)return{action:"ask",reason:`Requires confirmation by policy "${n.raw}" — matched ${JSON.stringify(e)}`,matched:{subject:e,pattern:n.raw,tool:o.tool}}}for(const e of n){const n=s(t.allow,o.tool,e);if(n)return{action:"allow",reason:`Allowed by policy "${n.raw}" — matched ${JSON.stringify(e)}`,matched:{subject:e,pattern:n.raw,tool:o.tool}}}return{action:"allow",reason:"No matching policy — default allow"}}
@@ -0,0 +1 @@
1
+ export function parsePattern(e){if("string"!=typeof e||0===e.length)return null;if("*"===e)return{raw:e,tool:"*",body:"*",bodyKind:"plain",regex:/^.*$/s};const n=e.indexOf("(");if(n<=0||!e.endsWith(")"))return null;const t=e.slice(0,n);if(!/^[A-Za-z_][\w-]*$|^\*$/.test(t))return null;const r=e.slice(n+1,-1);if(0===r.length)return null;const o=function(e){const n=e.indexOf(":"),t=e.indexOf(" "),r=t>=0,o=n>=0&&(!r||n<t),l=r&&!o;if(o){const t=e.slice(0,n),r=e.slice(n+1);return{regex:new RegExp(`^${globToRegex(t)}(?:\\s+${globToRegex(r)})?$`,"s"),kind:"colon"}}if(l){const n=e.slice(0,t),r=e.slice(t+1);return{regex:new RegExp(`^${globToRegex(n)}\\s+${globToRegex(r)}$`,"s"),kind:"space"}}return{regex:new RegExp(`^${globToRegex(e)}$`,"s"),kind:"plain"}}(r);return{raw:e,tool:t,body:r,bodyKind:o.kind,regex:o.regex}}export function globToRegex(e){const n="\0GS_SLASH\0",t="\0GS\0",r="\0STAR\0";let o=e.replace(/\*\*\//g,n).replace(/\*\*/g,t).replace(/\*/g,r).replace(/\?/g,"\0Q\0");return o=o.replace(/[.+^${}()|[\]\\/]/g,"\\$&"),o=o.replace(new RegExp(n,"g"),"(?:.*/)?").replace(new RegExp(t,"g"),".*").replace(new RegExp(r,"g"),".*").replace(new RegExp("\0Q\0","g"),"."),o}export function matchPattern(e,n,t){return("*"===e.tool||e.tool===n)&&"string"==typeof t&&e.regex.test(t)}export function compilePatterns(e){const n=[];for(const t of e){const e=parsePattern(t);e&&n.push(e)}return n}
@@ -0,0 +1 @@
1
+ import{existsSync as r,readFileSync as o}from"node:fs";import{homedir as n}from"node:os";import{join as e}from"node:path";export function loadPolicies(o){const c=o.homeDir??n(),a=[e(o.projectDir,".claude","settings.local.json"),e(o.projectDir,".claude","settings.json"),e(c,".claude","settings.json")],f=[],u=[],p=[],l=[];for(const o of a){if(!r(o))continue;const n=t(o);if(n.error){l.push({path:o,reason:n.error});continue}const e=s(n.contents);if(e.error){l.push({path:o,reason:e.error});continue}const c=e.value?.permissions??{};i(f,c.deny),i(u,c.ask),i(p,c.allow)}return{deny:f,ask:u,allow:p,errors:l}}function t(r){try{return{contents:o(r,"utf-8")}}catch(r){return{error:r instanceof Error?r.message:String(r)}}}function s(r){try{return{value:JSON.parse(r)}}catch(r){return{error:r instanceof Error?r.message:"parse failed"}}}function i(r,o){if(Array.isArray(o))for(const n of o)"string"==typeof n&&n.length>0&&r.push(n)}
@@ -0,0 +1 @@
1
+ const e={python:[/os\.system\(\s*(['"])(.*?)\1\s*\)/g,/subprocess\.(?:run|call|Popen|check_output|check_call)\(\s*(['"])(.*?)\1/g],javascript:[/exec(?:Sync|File|FileSync)?\(\s*(['"`])(.*?)\1/g,/spawn(?:Sync)?\(\s*(['"`])(.*?)\1/g],typescript:[/exec(?:Sync|File|FileSync)?\(\s*(['"`])(.*?)\1/g,/spawn(?:Sync)?\(\s*(['"`])(.*?)\1/g],ruby:[/\bsystem\(\s*(['"])(.*?)\1/g,/`(.*?)`/g],go:[/exec\.Command\(\s*(['"`])(.*?)\1/g],php:[/shell_exec\(\s*(['"`])(.*?)\1/g,/(?:^|[^.])\bexec\(\s*(['"`])(.*?)\1/g,/(?:^|[^.])\bsystem\(\s*(['"`])(.*?)\1/g,/passthru\(\s*(['"`])(.*?)\1/g,/proc_open\(\s*(['"`])(.*?)\1/g],rust:[/Command::new\(\s*(['"`])(.*?)\1/g],shell:[/^([\s\S]*)$/g]},t=/subprocess\.(?:run|call|Popen|check_output|check_call)\(\s*(?:args\s*=\s*)?[[(]\s*((?:['"][^\\'"]*(?:\\.[^\\'"]*)*['"]\s*,?\s*)+)\s*[\])]/g,s=/(['"])((?:[^\\]|\\.)*?)\1/g;export function detectLanguage(e){if("string"!=typeof e||0===e.length)return null;const t=e.trim().split(/\s+/)[0];if(!t)return null;const s=t.replace(/^.*\//,"");return/^python3?(?:\.\d+)?$/.test(s)?"python":/^node$/.test(s)?"javascript":/^tsx?$/.test(s)||/^ts-node$/.test(s)?"typescript":/^ruby$/.test(s)?"ruby":/^go$/.test(s)&&/\s+run\b/.test(e)?"go":/^php$/.test(s)?"php":/^cargo$/.test(s)&&/\s+run\b/.test(e)?"rust":/^(?:bash|sh|zsh|dash|fish|ksh)$/.test(s)?"shell":null}export function extractEmbeddedCommands(n,c){if("string"!=typeof n||0===n.length)return[];const o=[];for(const t of e[c]){t.lastIndex=0;let e=t.exec(n);for(;null!==e;){const s=e[2]??e[1];s&&s.length>0&&o.push(s),e=t.exec(n)}}if("python"===c){t.lastIndex=0;let e=t.exec(n);for(;null!==e;){const c=e[1],l=[];s.lastIndex=0;let r=s.exec(c);for(;null!==r;)l.push(r[2]),r=s.exec(c);l.length>0&&o.push(l.join(" ")),e=t.exec(n)}}return o}export function extractInlinePayloads(e){const t=/(?:\s|^)(?:-c|-e|--command)\s*(['"`])((?:[^\\]|\\.)*?)\1/g,s=[];let n=t.exec(e);for(;null!==n;)s.push(n[2]),n=t.exec(e);return s}export function extractInlinePayload(e){return extractInlinePayloads(e)[0]??null}export function scanCommand(e){const t=detectLanguage(e);if(!t)return{lang:null,commands:[]};const s=extractInlinePayloads(e);if(0===s.length)return{lang:t,commands:[]};const n=[];for(const e of s)"shell"===t?e.length>0&&n.push(e):n.push(...extractEmbeddedCommands(e,t));return{lang:t,commands:n}}
@@ -0,0 +1 @@
1
+ import{existsSync as n,readFileSync as e,writeFileSync as t}from"node:fs";import{pluginDataPath as r}from"../plugin-paths.mjs";const o="session-cleanup-last-run",s=864e5;function a(){return r(o)}export function isDue(t={}){const r=t.now??Date.now,o=a();if(!n(o))return!0;try{const n=e(o,"utf-8").trim(),t=Date.parse(n);return!Number.isFinite(t)||r()-t>=s}catch{return!0}}export function markCleanupRan(n=Date.now){const e=new Date(n()).toISOString();try{t(a(),e)}catch{}}export function runCleanupIfDue(n){const e=n.now??Date.now;if(!isDue({now:e}))return{ran:!1,reason:"skipped: not due"};try{const t=n.openDb(n.sessionId,n.projectDir);try{const{sessionsDeleted:r}=t.cleanupOldSessions(n.retentionDays??7);return markCleanupRan(e),{ran:!0,sessionsDeleted:r}}finally{t.close()}}catch(n){return{ran:!1,reason:`error: ${n instanceof Error?n.message:String(n)}`}}}export const _internals={SENTINEL:o,MIN_INTERVAL_MS:s,DEFAULT_RETENTION_DAYS:7,sentinelPath:a};