dap-mcp-server 0.1.10 → 0.1.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -2
- package/SKILL.md +175 -28
- package/TODO.md +32 -0
- package/build/adapters/builtin.js +27 -3
- package/build/adapters/builtin.js.map +1 -1
- package/build/dap/dap-client.d.ts +71 -4
- package/build/dap/dap-client.js +324 -53
- package/build/dap/dap-client.js.map +1 -1
- package/build/dap/types.d.ts +29 -7
- package/build/server.js +229 -34
- package/build/server.js.map +1 -1
- package/build/session/inspect.d.ts +64 -0
- package/build/session/inspect.js +116 -0
- package/build/session/inspect.js.map +1 -0
- package/build/session/run.d.ts +52 -0
- package/build/session/run.js +111 -0
- package/build/session/run.js.map +1 -0
- package/build/session/session.d.ts +8 -9
- package/build/session/session.js +67 -9
- package/build/session/session.js.map +1 -1
- package/package.json +1 -1
- package/src/adapters/builtin.ts +28 -3
- package/src/adapters/registry.test.ts +3 -2
- package/src/dap/dap-client.test.ts +31 -0
- package/src/dap/dap-client.ts +402 -52
- package/src/dap/types.ts +30 -7
- package/src/integration/debug-lifecycle.test.ts +21 -0
- package/src/server.ts +254 -34
- package/src/session/inspect.test.ts +126 -0
- package/src/session/inspect.ts +160 -0
- package/src/session/run.test.ts +74 -0
- package/src/session/run.ts +144 -0
- package/src/session/session.test.ts +42 -0
- package/src/session/session.ts +68 -21
- package/src/test-fixtures/mock-adapter.js +23 -1
- package/src/test-fixtures/no-stop-adapter.js +77 -0
- package/src/test-fixtures/tcp-mock-adapter.js +87 -0
package/build/server.js
CHANGED
|
@@ -23,10 +23,24 @@ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
|
23
23
|
import { z } from "zod";
|
|
24
24
|
import os from "node:os";
|
|
25
25
|
import path from "node:path";
|
|
26
|
+
import { readFileSync } from "node:fs";
|
|
27
|
+
import { fileURLToPath } from "node:url";
|
|
26
28
|
import { AdapterRegistry } from "./adapters/registry.js";
|
|
27
29
|
import { SessionManager } from "./session/session-manager.js";
|
|
28
30
|
import { DebugSession } from "./session/session.js";
|
|
31
|
+
import { runDebugInspect } from "./session/inspect.js";
|
|
32
|
+
import { runDebugRun } from "./session/run.js";
|
|
29
33
|
import { checkAdapterAvailable } from "./adapters/detect.js";
|
|
34
|
+
function readPackageVersion() {
|
|
35
|
+
try {
|
|
36
|
+
const here = path.dirname(fileURLToPath(import.meta.url));
|
|
37
|
+
const pkg = JSON.parse(readFileSync(path.join(here, "..", "package.json"), "utf-8"));
|
|
38
|
+
return pkg.version ?? "0.0.0";
|
|
39
|
+
}
|
|
40
|
+
catch {
|
|
41
|
+
return "0.0.0";
|
|
42
|
+
}
|
|
43
|
+
}
|
|
30
44
|
export function createServer() {
|
|
31
45
|
const globalDir = path.join(os.homedir(), ".dap-mcp");
|
|
32
46
|
const projectDir = path.join(process.cwd(), ".dap-mcp");
|
|
@@ -38,46 +52,49 @@ export function createServer() {
|
|
|
38
52
|
});
|
|
39
53
|
const server = new McpServer({
|
|
40
54
|
name: "dap-mcp-server",
|
|
41
|
-
version:
|
|
55
|
+
version: readPackageVersion(),
|
|
42
56
|
}, {
|
|
43
57
|
instructions: [
|
|
44
58
|
"This server provides AI-driven debugging via the Debug Adapter Protocol (DAP).",
|
|
45
59
|
"",
|
|
46
|
-
"##
|
|
60
|
+
"## When to use which tool",
|
|
61
|
+
"",
|
|
62
|
+
"- **`debug_inspect`** — One-shot 'what is X at line N?'. Launches, hits a breakpoint, evaluates expressions,",
|
|
63
|
+
" disconnects. Use this first; it collapses a multi-call workflow into a single call.",
|
|
64
|
+
"- **`debug_run`** — Run a program with no stops and collect all output. Combine with `logpoints` (breakpoints",
|
|
65
|
+
" with `logMessage`) for printf-style debugging without modifying source.",
|
|
66
|
+
"- **`debug_launch` + step/evaluate** — Interactive multi-step session when you need to explore.",
|
|
47
67
|
"",
|
|
48
|
-
"
|
|
49
|
-
"
|
|
50
|
-
"
|
|
51
|
-
"
|
|
52
|
-
"
|
|
53
|
-
"
|
|
54
|
-
"4. `step` —
|
|
55
|
-
"
|
|
56
|
-
"
|
|
57
|
-
"
|
|
58
|
-
"7. `
|
|
59
|
-
"8. `
|
|
68
|
+
"## Interactive Debugging Workflow",
|
|
69
|
+
"",
|
|
70
|
+
"1. `list_adapters` — discover available adapters; the response includes a summary and install hints.",
|
|
71
|
+
"2. `debug_launch` (or `debug_attach`) — start a session. With breakpoints provided, `stopOnEntry` defaults",
|
|
72
|
+
" to false so the program runs to the first breakpoint. Returns sessionId + initial stopped state.",
|
|
73
|
+
"3. Inspect state with `get_state` — threads + call stack + scopes + variables in one call.",
|
|
74
|
+
"4. `step` — continue, next, stepIn, stepOut, pause. Blocks until stopped; returns new state directly.",
|
|
75
|
+
"5. `evaluate` — expressions in the context of a stopped frame.",
|
|
76
|
+
"6. `set_breakpoints` / `set_exception_breakpoints` — modify breakpoints mid-session. Use `logMessage`",
|
|
77
|
+
" on a breakpoint to make it a logpoint (emits formatted text without pausing).",
|
|
78
|
+
"7. `list_breakpoints` — see what's currently set.",
|
|
79
|
+
"8. `get_output` — retrieve stdout/stderr/console output (10K-line ring buffer).",
|
|
80
|
+
"9. `debug_disconnect` — end. `debug_restart` replays the launch config with preserved breakpoints.",
|
|
60
81
|
"",
|
|
61
82
|
"## Key Conventions",
|
|
62
83
|
"",
|
|
63
|
-
"- **Auto-session resolution**:
|
|
64
|
-
"
|
|
65
|
-
"- **
|
|
66
|
-
"
|
|
67
|
-
"- **
|
|
68
|
-
"
|
|
69
|
-
"-
|
|
70
|
-
"
|
|
71
|
-
"- **Adapter registration**: Use `configure_adapter` to register adapters. Configs are persisted to",
|
|
72
|
-
" `~/.dap-mcp/adapters.json` (global) or `./.dap-mcp/adapters.json` (project), with project overriding global.",
|
|
73
|
-
"- **Error handling**: All tool errors are returned as `isError: true` results with an error message.",
|
|
74
|
-
" The session remains usable after most errors.",
|
|
84
|
+
"- **Auto-session resolution**: tools accept an optional `sessionId`; with one active session, omit it.",
|
|
85
|
+
"- **Synchronous stepping**: `step` returns the new stopped state. Don't follow it with `get_state`.",
|
|
86
|
+
"- **Variable depth**: `get_state` accepts `variableDepth` (default 1). With `> 1`, container variables",
|
|
87
|
+
" expose their entries as a structured `children` array.",
|
|
88
|
+
"- **stopOnEntry default**: false when `debug_launch` is given breakpoints, true otherwise.",
|
|
89
|
+
"- **Adapter registration**: `configure_adapter` persists to `~/.dap-mcp/adapters.json` (global) or",
|
|
90
|
+
" `./.dap-mcp/adapters.json` (project); project overrides global.",
|
|
91
|
+
"- **Error handling**: tool errors return `isError: true`. The session usually remains usable.",
|
|
75
92
|
].join("\n"),
|
|
76
93
|
});
|
|
77
94
|
// ────────────────────────────────────────────────────────────────────────────
|
|
78
95
|
// 1. list_adapters
|
|
79
96
|
// ────────────────────────────────────────────────────────────────────────────
|
|
80
|
-
server.tool("list_adapters", "List all known debug adapters with their availability status on this machine.", {}, async () => {
|
|
97
|
+
server.tool("list_adapters", "List all known debug adapters with their availability status on this machine. Returns a summary line, the full adapter list, and a separate 'missing' list with installation hints for adapters that aren't installed.", {}, async () => {
|
|
81
98
|
try {
|
|
82
99
|
const adapters = registry.listAll();
|
|
83
100
|
const results = await Promise.all(adapters.map(async (a) => {
|
|
@@ -85,8 +102,20 @@ export function createServer() {
|
|
|
85
102
|
const available = cmd ? await checkAdapterAvailable(cmd) : false;
|
|
86
103
|
return { ...a, available };
|
|
87
104
|
}));
|
|
105
|
+
const available = results.filter((r) => r.available);
|
|
106
|
+
const missing = results
|
|
107
|
+
.filter((r) => !r.available)
|
|
108
|
+
.map((r) => ({ type: r.type, installHint: r.installHint }));
|
|
109
|
+
const summary = missing.length === 0
|
|
110
|
+
? `${available.length}/${results.length} adapters available`
|
|
111
|
+
: `${available.length}/${results.length} adapters available; missing: ${missing.map((m) => m.type).join(", ")}`;
|
|
88
112
|
return {
|
|
89
|
-
content: [
|
|
113
|
+
content: [
|
|
114
|
+
{
|
|
115
|
+
type: "text",
|
|
116
|
+
text: JSON.stringify({ summary, adapters: results, missing }, null, 2),
|
|
117
|
+
},
|
|
118
|
+
],
|
|
90
119
|
};
|
|
91
120
|
}
|
|
92
121
|
catch (err) {
|
|
@@ -138,7 +167,10 @@ export function createServer() {
|
|
|
138
167
|
args: z.array(z.string()).optional().describe("Program arguments"),
|
|
139
168
|
cwd: z.string().optional().describe("Working directory for the program"),
|
|
140
169
|
env: z.record(z.string(), z.string()).optional().describe("Environment variables"),
|
|
141
|
-
stopOnEntry: z
|
|
170
|
+
stopOnEntry: z
|
|
171
|
+
.boolean()
|
|
172
|
+
.optional()
|
|
173
|
+
.describe("Stop on program entry. Defaults to false when breakpoints are provided (run to first breakpoint), true otherwise."),
|
|
142
174
|
breakpoints: z
|
|
143
175
|
.array(z.object({
|
|
144
176
|
file: z.string().describe("Source file path"),
|
|
@@ -161,11 +193,14 @@ export function createServer() {
|
|
|
161
193
|
args: z.array(z.string()).optional(),
|
|
162
194
|
launchDefaults: z.record(z.string(), z.unknown()).optional(),
|
|
163
195
|
installHint: z.string().optional(),
|
|
196
|
+
transport: z.enum(["stdio", "tcp"]).optional(),
|
|
197
|
+
portMatcher: z.string().optional(),
|
|
164
198
|
})
|
|
165
199
|
.optional()
|
|
166
200
|
.describe("Override adapter config inline instead of looking up from registry"),
|
|
167
201
|
}, async ({ adapter, program, args, cwd, env, stopOnEntry, breakpoints, exceptionBreakpoints, adapterConfig, }) => {
|
|
168
|
-
|
|
202
|
+
// Default: if breakpoints are provided, run to the first one; otherwise stop at entry.
|
|
203
|
+
const shouldStop = stopOnEntry ?? !(breakpoints !== undefined && breakpoints.length > 0);
|
|
169
204
|
let session;
|
|
170
205
|
try {
|
|
171
206
|
const config = adapterConfig ??
|
|
@@ -198,9 +233,25 @@ export function createServer() {
|
|
|
198
233
|
launchArgs.cwd = cwd;
|
|
199
234
|
if (env !== undefined)
|
|
200
235
|
launchArgs.env = env;
|
|
236
|
+
// Adapter-specific arg normalization. delve's `cwd` is the debuggee's
|
|
237
|
+
// working directory; the *build* (go build) runs from delve's own
|
|
238
|
+
// process cwd, controlled by `dlvCwd`. Mirror cwd → dlvCwd so a
|
|
239
|
+
// user-supplied cwd is found by `go build` looking for go.mod.
|
|
240
|
+
if (config.type === "go" && cwd !== undefined && launchArgs.dlvCwd === undefined) {
|
|
241
|
+
launchArgs.dlvCwd = cwd;
|
|
242
|
+
}
|
|
201
243
|
// Send launch first (don't await — real adapters like debugpy block
|
|
202
244
|
// the launch response until configurationDone arrives)
|
|
203
245
|
const launchPromise = session.launch(launchArgs);
|
|
246
|
+
// Suppress unhandled rejection: the real `await launchPromise` below
|
|
247
|
+
// will still throw if launch fails. Without this, an early launch
|
|
248
|
+
// rejection (e.g. adapter rejects the request) crashes the MCP server.
|
|
249
|
+
launchPromise.catch(() => { });
|
|
250
|
+
// Wait for the adapter to emit the "initialized" event before sending
|
|
251
|
+
// configuration requests. Some adapters (delve) emit it right after the
|
|
252
|
+
// initialize response; others (debugpy) only emit it after receiving
|
|
253
|
+
// launch — that's why we fire launch first and wait for initialized here.
|
|
254
|
+
await session.waitForInitialized(10000);
|
|
204
255
|
// Set breakpoints grouped by file
|
|
205
256
|
if (breakpoints && breakpoints.length > 0) {
|
|
206
257
|
const byFile = new Map();
|
|
@@ -276,6 +327,8 @@ export function createServer() {
|
|
|
276
327
|
args: z.array(z.string()).optional(),
|
|
277
328
|
launchDefaults: z.record(z.string(), z.unknown()).optional(),
|
|
278
329
|
installHint: z.string().optional(),
|
|
330
|
+
transport: z.enum(["stdio", "tcp"]).optional(),
|
|
331
|
+
portMatcher: z.string().optional(),
|
|
279
332
|
})
|
|
280
333
|
.optional()
|
|
281
334
|
.describe("Override adapter config inline"),
|
|
@@ -311,6 +364,10 @@ export function createServer() {
|
|
|
311
364
|
attachArgs.processId = processId;
|
|
312
365
|
// Send attach first (don't await — real adapters block until configurationDone)
|
|
313
366
|
const attachPromise = session.attach(attachArgs);
|
|
367
|
+
// Suppress unhandled rejection: the real `await attachPromise` below
|
|
368
|
+
// will still throw if attach fails.
|
|
369
|
+
attachPromise.catch(() => { });
|
|
370
|
+
await session.waitForInitialized(10000);
|
|
314
371
|
await session.configurationDone();
|
|
315
372
|
await attachPromise;
|
|
316
373
|
return {
|
|
@@ -463,7 +520,7 @@ export function createServer() {
|
|
|
463
520
|
content: [
|
|
464
521
|
{
|
|
465
522
|
type: "text",
|
|
466
|
-
text: `Error: Session is not stopped (current state: ${session.state}).
|
|
523
|
+
text: `Error: Session is not stopped (current state: ${session.state}). Expressions can only be evaluated at a stopped frame. Set a breakpoint where you want to inspect (set_breakpoints) and continue to it (step with action 'continue'), then retry.`,
|
|
467
524
|
},
|
|
468
525
|
],
|
|
469
526
|
isError: true,
|
|
@@ -575,17 +632,21 @@ export function createServer() {
|
|
|
575
632
|
// ────────────────────────────────────────────────────────────────────────────
|
|
576
633
|
// 10. get_output
|
|
577
634
|
// ────────────────────────────────────────────────────────────────────────────
|
|
578
|
-
server.tool("get_output", "Get buffered stdout/stderr and debug adapter output for a session.", {
|
|
635
|
+
server.tool("get_output", "Get buffered stdout/stderr and debug adapter output for a session. Pass `since` (the `nextSince` from a previous call) to get only newly-emitted entries — useful for polling logpoint output without re-reading the full buffer.", {
|
|
579
636
|
sessionId: z.string().optional().describe("Session ID (omit if only one session is active)"),
|
|
580
637
|
category: z
|
|
581
638
|
.string()
|
|
582
639
|
.optional()
|
|
583
640
|
.describe("Filter by output category: 'stdout', 'stderr', 'console', etc."),
|
|
584
641
|
clear: z.boolean().optional().describe("Clear the output buffer after reading (default: false)"),
|
|
585
|
-
|
|
642
|
+
since: z
|
|
643
|
+
.number()
|
|
644
|
+
.optional()
|
|
645
|
+
.describe("Return only entries with seq > since. Pass the `nextSince` value from a prior call to fetch incremental output."),
|
|
646
|
+
}, async ({ sessionId, category, clear, since }) => {
|
|
586
647
|
try {
|
|
587
648
|
const session = sessions.resolve(sessionId);
|
|
588
|
-
const result = session.getOutput(category, clear ?? false);
|
|
649
|
+
const result = session.getOutput(category, clear ?? false, since);
|
|
589
650
|
return {
|
|
590
651
|
content: [{ type: "text", text: JSON.stringify(result, null, 2) }],
|
|
591
652
|
};
|
|
@@ -674,6 +735,10 @@ export function createServer() {
|
|
|
674
735
|
await newSession.initialize();
|
|
675
736
|
// Send launch first (don't await — real adapters block until configurationDone)
|
|
676
737
|
const launchPromise = newSession.launch(launchConfig);
|
|
738
|
+
// Suppress unhandled rejection: the real `await launchPromise` below
|
|
739
|
+
// will still throw if launch fails.
|
|
740
|
+
launchPromise.catch(() => { });
|
|
741
|
+
await newSession.waitForInitialized(10000);
|
|
677
742
|
// Re-apply saved breakpoints
|
|
678
743
|
for (const [file, bps] of savedBreakpoints) {
|
|
679
744
|
await newSession.setBreakpoints(file, bps);
|
|
@@ -715,6 +780,136 @@ export function createServer() {
|
|
|
715
780
|
}
|
|
716
781
|
});
|
|
717
782
|
// ────────────────────────────────────────────────────────────────────────────
|
|
783
|
+
// 13. debug_inspect
|
|
784
|
+
// ────────────────────────────────────────────────────────────────────────────
|
|
785
|
+
server.tool("debug_inspect", "One-shot inspection: launch a program, run to a breakpoint, evaluate a list of expressions in that frame, then disconnect. Collapses launch + wait + evaluate + disconnect into a single call. Use for 'what is X at line N?' debugging.", {
|
|
786
|
+
adapter: z.string().describe("Adapter type to use (e.g. 'python', 'node')"),
|
|
787
|
+
program: z.string().describe("Path to the program to debug"),
|
|
788
|
+
args: z.array(z.string()).optional().describe("Program arguments"),
|
|
789
|
+
cwd: z.string().optional().describe("Working directory for the program"),
|
|
790
|
+
env: z.record(z.string(), z.string()).optional().describe("Environment variables"),
|
|
791
|
+
at: z
|
|
792
|
+
.object({
|
|
793
|
+
file: z.string().describe("Absolute path to the source file"),
|
|
794
|
+
line: z.number().describe("Line number (1-based)"),
|
|
795
|
+
condition: z.string().optional().describe("Conditional breakpoint expression"),
|
|
796
|
+
hitCondition: z.string().optional().describe("Hit-count condition (e.g. '5' for 5th hit)"),
|
|
797
|
+
})
|
|
798
|
+
.describe("Breakpoint location to stop at"),
|
|
799
|
+
expressions: z
|
|
800
|
+
.array(z.string())
|
|
801
|
+
.optional()
|
|
802
|
+
.describe("Expressions to evaluate when stopped at the breakpoint. Omit to just verify the line is reached."),
|
|
803
|
+
timeout: z
|
|
804
|
+
.number()
|
|
805
|
+
.optional()
|
|
806
|
+
.describe("Milliseconds to wait for the breakpoint to be hit (default: 30000)"),
|
|
807
|
+
adapterConfig: z
|
|
808
|
+
.object({
|
|
809
|
+
type: z.string(),
|
|
810
|
+
program: z.string(),
|
|
811
|
+
runtime: z.string().optional(),
|
|
812
|
+
args: z.array(z.string()).optional(),
|
|
813
|
+
launchDefaults: z.record(z.string(), z.unknown()).optional(),
|
|
814
|
+
installHint: z.string().optional(),
|
|
815
|
+
transport: z.enum(["stdio", "tcp"]).optional(),
|
|
816
|
+
portMatcher: z.string().optional(),
|
|
817
|
+
})
|
|
818
|
+
.optional()
|
|
819
|
+
.describe("Override adapter config inline"),
|
|
820
|
+
}, async (opts) => {
|
|
821
|
+
try {
|
|
822
|
+
const result = await runDebugInspect(registry, sessions, opts);
|
|
823
|
+
return {
|
|
824
|
+
content: [{ type: "text", text: JSON.stringify(result, null, 2) }],
|
|
825
|
+
};
|
|
826
|
+
}
|
|
827
|
+
catch (err) {
|
|
828
|
+
return {
|
|
829
|
+
content: [{ type: "text", text: `Error: ${String(err)}` }],
|
|
830
|
+
isError: true,
|
|
831
|
+
};
|
|
832
|
+
}
|
|
833
|
+
});
|
|
834
|
+
// ────────────────────────────────────────────────────────────────────────────
|
|
835
|
+
// 14. list_breakpoints
|
|
836
|
+
// ────────────────────────────────────────────────────────────────────────────
|
|
837
|
+
server.tool("list_breakpoints", "List the breakpoints currently registered with a session, grouped by source file. Includes regular breakpoints, conditional breakpoints, and logpoints.", {
|
|
838
|
+
sessionId: z.string().optional().describe("Session ID (omit if only one session is active)"),
|
|
839
|
+
}, async ({ sessionId }) => {
|
|
840
|
+
try {
|
|
841
|
+
const session = sessions.resolve(sessionId);
|
|
842
|
+
const bps = session.getBreakpoints();
|
|
843
|
+
const files = Array.from(bps.entries()).map(([file, breakpoints]) => ({
|
|
844
|
+
file,
|
|
845
|
+
breakpoints,
|
|
846
|
+
}));
|
|
847
|
+
const totalCount = files.reduce((n, f) => n + f.breakpoints.length, 0);
|
|
848
|
+
return {
|
|
849
|
+
content: [
|
|
850
|
+
{
|
|
851
|
+
type: "text",
|
|
852
|
+
text: JSON.stringify({ count: totalCount, files }, null, 2),
|
|
853
|
+
},
|
|
854
|
+
],
|
|
855
|
+
};
|
|
856
|
+
}
|
|
857
|
+
catch (err) {
|
|
858
|
+
return {
|
|
859
|
+
content: [{ type: "text", text: `Error: ${String(err)}` }],
|
|
860
|
+
isError: true,
|
|
861
|
+
};
|
|
862
|
+
}
|
|
863
|
+
});
|
|
864
|
+
// ────────────────────────────────────────────────────────────────────────────
|
|
865
|
+
// 15. debug_run
|
|
866
|
+
// ────────────────────────────────────────────────────────────────────────────
|
|
867
|
+
server.tool("debug_run", "Launch a program with no stops, let it run to completion, and return all stdout/stderr/console output. Optionally inject logpoints (breakpoints with logMessage) for printf-style debugging without modifying source. Use for 'what does this script actually do?' cases where you don't need to inspect intermediate state.", {
|
|
868
|
+
adapter: z.string().describe("Adapter type to use (e.g. 'python', 'node')"),
|
|
869
|
+
program: z.string().describe("Path to the program to debug"),
|
|
870
|
+
args: z.array(z.string()).optional().describe("Program arguments"),
|
|
871
|
+
cwd: z.string().optional().describe("Working directory for the program"),
|
|
872
|
+
env: z.record(z.string(), z.string()).optional().describe("Environment variables"),
|
|
873
|
+
logpoints: z
|
|
874
|
+
.array(z.object({
|
|
875
|
+
file: z.string().describe("Absolute path to the source file"),
|
|
876
|
+
line: z.number().describe("Line number (1-based)"),
|
|
877
|
+
logMessage: z.string().describe("Message template; expressions in {braces} are evaluated in scope"),
|
|
878
|
+
}))
|
|
879
|
+
.optional()
|
|
880
|
+
.describe("Logpoints to emit per-hit messages without pausing execution"),
|
|
881
|
+
timeout: z
|
|
882
|
+
.number()
|
|
883
|
+
.optional()
|
|
884
|
+
.describe("Total wall-clock timeout for the whole run in milliseconds (default: 60000)"),
|
|
885
|
+
adapterConfig: z
|
|
886
|
+
.object({
|
|
887
|
+
type: z.string(),
|
|
888
|
+
program: z.string(),
|
|
889
|
+
runtime: z.string().optional(),
|
|
890
|
+
args: z.array(z.string()).optional(),
|
|
891
|
+
launchDefaults: z.record(z.string(), z.unknown()).optional(),
|
|
892
|
+
installHint: z.string().optional(),
|
|
893
|
+
transport: z.enum(["stdio", "tcp"]).optional(),
|
|
894
|
+
portMatcher: z.string().optional(),
|
|
895
|
+
})
|
|
896
|
+
.optional()
|
|
897
|
+
.describe("Override adapter config inline"),
|
|
898
|
+
}, async (opts) => {
|
|
899
|
+
try {
|
|
900
|
+
const result = await runDebugRun(registry, sessions, opts);
|
|
901
|
+
return {
|
|
902
|
+
content: [{ type: "text", text: JSON.stringify(result, null, 2) }],
|
|
903
|
+
};
|
|
904
|
+
}
|
|
905
|
+
catch (err) {
|
|
906
|
+
return {
|
|
907
|
+
content: [{ type: "text", text: `Error: ${String(err)}` }],
|
|
908
|
+
isError: true,
|
|
909
|
+
};
|
|
910
|
+
}
|
|
911
|
+
});
|
|
912
|
+
// ────────────────────────────────────────────────────────────────────────────
|
|
718
913
|
// Resource: dap://sessions
|
|
719
914
|
// ────────────────────────────────────────────────────────────────────────────
|
|
720
915
|
// NOTE: This resource does not emit change notifications.
|
package/build/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,SAAS,kBAAkB;IACzB,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1D,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CACpB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,CACrC,CAAC;QAC1B,OAAO,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,OAAO,CAAC;IACjB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,YAAY;IAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;IACtD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,UAAU,CAAC,CAAC;IAExD,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAC5D,MAAM,QAAQ,GAAG,IAAI,cAAc,EAAE,CAAC;IAEtC,yEAAyE;IACzE,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;QACrC,OAAO,CAAC,KAAK,CAAC,0CAA0C,EAAE,GAAG,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,IAAI,SAAS,CAC1B;QACE,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,kBAAkB,EAAE;KAC9B,EACD;QACE,YAAY,EAAE;YACZ,gFAAgF;YAChF,EAAE;YACF,2BAA2B;YAC3B,EAAE;YACF,8GAA8G;YAC9G,uFAAuF;YACvF,+GAA+G;YAC/G,2EAA2E;YAC3E,iGAAiG;YACjG,EAAE;YACF,mCAAmC;YACnC,EAAE;YACF,sGAAsG;YACtG,4GAA4G;YAC5G,qGAAqG;YACrG,4FAA4F;YAC5F,uGAAuG;YACvG,gEAAgE;YAChE,uGAAuG;YACvG,kFAAkF;YAClF,mDAAmD;YACnD,iFAAiF;YACjF,oGAAoG;YACpG,EAAE;YACF,oBAAoB;YACpB,EAAE;YACF,wGAAwG;YACxG,qGAAqG;YACrG,wGAAwG;YACxG,0DAA0D;YAC1D,4FAA4F;YAC5F,oGAAoG;YACpG,mEAAmE;YACnE,+FAA+F;SAChG,CAAC,IAAI,CAAC,IAAI,CAAC;KACb,CACF,CAAC;IAEF,+EAA+E;IAC/E,mBAAmB;IACnB,+EAA+E;IAC/E,MAAM,CAAC,IAAI,CACT,eAAe,EACf,wNAAwN,EACxN,EAAE,EACF,KAAK,IAAI,EAAE;QACT,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;YACpC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;gBACvB,MAAM,GAAG,GAAG,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC;gBACnC,MAAM,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;gBACjE,OAAO,EAAE,GAAG,CAAC,EAAE,SAAS,EAAE,CAAC;YAC7B,CAAC,CAAC,CACH,CAAC;YACF,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YACrD,MAAM,OAAO,GAAG,OAAO;iBACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;iBAC3B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;YAC9D,MAAM,OAAO,GACX,OAAO,CAAC,MAAM,KAAK,CAAC;gBAClB,CAAC,CAAC,GAAG,SAAS,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,qBAAqB;gBAC5D,CAAC,CAAC,GAAG,SAAS,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,iCAAiC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACpH,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;qBACvE;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,UAAU,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACnE,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,+EAA+E;IAC/E,uBAAuB;IACvB,+EAA+E;IAC/E,MAAM,CAAC,IAAI,CACT,mBAAmB,EACnB,0EAA0E,EAC1E;QACE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC;QAClF,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4CAA4C,CAAC;QAC1E,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iEAAiE,CAAC;QAC1G,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;QAC5F,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;QAChH,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0CAA0C,CAAC;QACvF,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wDAAwD,CAAC;KACnH,EACD,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,EAAE;QAC7E,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC;YAC7E,MAAM,SAAS,GAAG,KAAK,IAAI,SAAS,CAAC;YACrC,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;YACrC,MAAM,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC/B,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;qBACzE;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,UAAU,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACnE,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,+EAA+E;IAC/E,kBAAkB;IAClB,+EAA+E;IAC/E,MAAM,CAAC,IAAI,CACT,cAAc,EACd,8IAA8I,EAC9I;QACE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;QAC3E,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;QAC5D,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;QAClE,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;QACxE,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;QAClF,WAAW,EAAE,CAAC;aACX,OAAO,EAAE;aACT,QAAQ,EAAE;aACV,QAAQ,CAAC,mHAAmH,CAAC;QAChI,WAAW,EAAE,CAAC;aACX,KAAK,CACJ,CAAC,CAAC,MAAM,CAAC;YACP,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;YAC7C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;YACxC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAChC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YACnC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;SAClC,CAAC,CACH;aACA,QAAQ,EAAE;aACV,QAAQ,CAAC,qCAAqC,CAAC;QAClD,oBAAoB,EAAE,CAAC;aACpB,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;aACjB,QAAQ,EAAE;aACV,QAAQ,CAAC,oDAAoD,CAAC;QACjE,aAAa,EAAE,CAAC;aACb,MAAM,CAAC;YACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;YAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;YACnB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC9B,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;YACpC,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;YAC5D,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAClC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE;YAC9C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;SACnC,CAAC;aACD,QAAQ,EAAE;aACV,QAAQ,CAAC,oEAAoE,CAAC;KAClF,EACD,KAAK,EAAE,EACL,OAAO,EACP,OAAO,EACP,IAAI,EACJ,GAAG,EACH,GAAG,EACH,WAAW,EACX,WAAW,EACX,oBAAoB,EACpB,aAAa,GACd,EAAE,EAAE;QACH,uFAAuF;QACvF,MAAM,UAAU,GACd,WAAW,IAAI,CAAC,CAAC,WAAW,KAAK,SAAS,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACxE,IAAI,OAAiC,CAAC;QACtC,IAAI,CAAC;YACH,MAAM,MAAM,GACV,aAAa;gBACb,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAExB,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,mBAAmB,OAAO,gGAAgG;yBACjI;qBACF;oBACD,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;YAED,MAAM,EAAE,GAAG,QAAQ,CAAC,UAAU,EAAE,CAAC;YACjC,OAAO,GAAG,IAAI,YAAY,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;YACvC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAEtB,0DAA0D;YAC1D,MAAM,OAAO,CAAC,UAAU,EAAE,CAAC;YAE3B,uBAAuB;YACvB,MAAM,UAAU,GAA4B;gBAC1C,GAAG,MAAM,CAAC,cAAc;gBACxB,OAAO;gBACP,WAAW,EAAE,UAAU;aACxB,CAAC;YACF,IAAI,IAAI,KAAK,SAAS;gBAAE,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC;YAC/C,IAAI,GAAG,KAAK,SAAS;gBAAE,UAAU,CAAC,GAAG,GAAG,GAAG,CAAC;YAC5C,IAAI,GAAG,KAAK,SAAS;gBAAE,UAAU,CAAC,GAAG,GAAG,GAAG,CAAC;YAE5C,sEAAsE;YACtE,kEAAkE;YAClE,gEAAgE;YAChE,+DAA+D;YAC/D,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,IAAI,UAAU,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBACjF,UAAU,CAAC,MAAM,GAAG,GAAG,CAAC;YAC1B,CAAC;YAED,oEAAoE;YACpE,uDAAuD;YACvD,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YACjD,qEAAqE;YACrE,kEAAkE;YAClE,uEAAuE;YACvE,aAAa,CAAC,KAAK,CAAC,GAAG,EAAE,GAA0B,CAAC,CAAC,CAAC;YAEtD,sEAAsE;YACtE,wEAAwE;YACxE,qEAAqE;YACrE,0EAA0E;YAC1E,MAAM,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;YAExC,kCAAkC;YAClC,IAAI,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1C,MAAM,MAAM,GAAG,IAAI,GAAG,EAA8B,CAAC;gBACrD,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;oBAC7B,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBAC3C,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBAClB,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;gBAChC,CAAC;gBACD,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,MAAM,EAAE,CAAC;oBACjC,MAAM,OAAO,CAAC,cAAc,CAC1B,IAAI,EACJ,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBACd,IAAI,EAAE,CAAC,CAAC,IAAI;wBACZ,SAAS,EAAE,CAAC,CAAC,SAAS;wBACtB,YAAY,EAAE,CAAC,CAAC,YAAY;wBAC5B,UAAU,EAAE,CAAC,CAAC,UAAU;qBACzB,CAAC,CAAC,CACJ,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,4BAA4B;YAC5B,IAAI,oBAAoB,IAAI,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5D,MAAM,OAAO,CAAC,uBAAuB,CAAC,oBAAoB,CAAC,CAAC;YAC9D,CAAC;YAED,kEAAkE;YAClE,MAAM,OAAO,CAAC,iBAAiB,EAAE,CAAC;YAElC,gCAAgC;YAChC,MAAM,aAAa,CAAC;YAEpB,IAAI,SAAkC,CAAC;YACvC,IAAI,UAAU,EAAE,CAAC;gBACf,IAAI,CAAC;oBACH,MAAM,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;oBACpC,SAAS,GAAG,CAAC,MAAM,OAAO,CAAC,YAAY,EAAE,CAAuC,CAAC;gBACnF,CAAC;gBAAC,MAAM,CAAC;oBACP,SAAS,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;gBACxC,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,SAAS,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;YACxC,CAAC;YAED,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,GAAG,SAAS,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;qBAC/D;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,OAAO,EAAE,CAAC;gBACZ,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBAC5B,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YAC9C,CAAC;YACD,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,UAAU,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACnE,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,+EAA+E;IAC/E,kBAAkB;IAClB,+EAA+E;IAC/E,MAAM,CAAC,IAAI,CACT,cAAc,EACd,uDAAuD,EACvD;QACE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;QACnD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;QAC/D,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;QAC9E,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6BAA6B,CAAC;QACxE,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2CAA2C,CAAC;QAChH,aAAa,EAAE,CAAC;aACb,MAAM,CAAC;YACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;YAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;YACnB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC9B,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;YACpC,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;YAC5D,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAClC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE;YAC9C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;SACnC,CAAC;aACD,QAAQ,EAAE;aACV,QAAQ,CAAC,gCAAgC,CAAC;KAC9C,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,EAAE,EAAE;QACxE,IAAI,OAAiC,CAAC;QACtC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,aAAa,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACtD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,mBAAmB,OAAO,cAAc;yBAC/C;qBACF;oBACD,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;YAED,MAAM,EAAE,GAAG,QAAQ,CAAC,UAAU,EAAE,CAAC;YACjC,OAAO,GAAG,IAAI,YAAY,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;YACvC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAEtB,MAAM,OAAO,CAAC,UAAU,EAAE,CAAC;YAE3B,kGAAkG;YAClG,MAAM,UAAU,GAA4B;gBAC1C,GAAG,MAAM,CAAC,cAAc;gBACxB,GAAG,YAAY;aAChB,CAAC;YACF,IAAI,IAAI,KAAK,SAAS;gBAAE,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC;YAC/C,IAAI,IAAI,KAAK,SAAS;gBAAE,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC;YAC/C,IAAI,SAAS,KAAK,SAAS;gBAAE,UAAU,CAAC,SAAS,GAAG,SAAS,CAAC;YAE9D,gFAAgF;YAChF,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YACjD,qEAAqE;YACrE,oCAAoC;YACpC,aAAa,CAAC,KAAK,CAAC,GAAG,EAAE,GAA0B,CAAC,CAAC,CAAC;YACtD,MAAM,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;YACxC,MAAM,OAAO,CAAC,iBAAiB,EAAE,CAAC;YAClC,MAAM,aAAa,CAAC;YAEpB,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;qBACxE;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,OAAO,EAAE,CAAC;gBACZ,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBAC5B,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YAC9C,CAAC;YACD,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,UAAU,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACnE,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,+EAA+E;IAC/E,qBAAqB;IACrB,+EAA+E;IAC/E,MAAM,CAAC,IAAI,CACT,iBAAiB,EACjB,+DAA+D,EAC/D;QACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iDAAiD,CAAC;QAC5F,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;QAC7D,WAAW,EAAE,CAAC;aACX,KAAK,CACJ,CAAC,CAAC,MAAM,CAAC;YACP,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;YAClD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;YACjE,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;YACnE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;SACrE,CAAC,CACH;aACA,QAAQ,CAAC,oBAAoB,CAAC;KAClC,EACD,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE;QACzC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAC5C,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;YAChE,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;aAC7E,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,UAAU,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACnE,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,+EAA+E;IAC/E,+BAA+B;IAC/B,+EAA+E;IAC/E,MAAM,CAAC,IAAI,CACT,2BAA2B,EAC3B,8DAA8D,EAC9D;QACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iDAAiD,CAAC;QAC5F,OAAO,EAAE,CAAC;aACP,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;aACjB,QAAQ,CAAC,yFAAyF,CAAC;KACvG,EACD,KAAK,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE;QAC/B,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAC5C,MAAM,OAAO,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;YAC/C,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;qBAC1D;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,UAAU,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACnE,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,+EAA+E;IAC/E,eAAe;IACf,+EAA+E;IAC/E,MAAM,CAAC,IAAI,CACT,WAAW,EACX,4IAA4I,EAC5I;QACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iDAAiD,CAAC;QAC5F,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4CAA4C,CAAC;QACtF,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;QACxE,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;QACtF,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,iGAAiG,CAAC;KAC/G,EACD,KAAK,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,EAAE,EAAE;QAC/D,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAC5C,MAAM,MAAM,GAAG,OAAO,IAAI,CAAC,CAAC;YAE5B,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBAChC,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,EAAE,aAAa,IAAI,CAAC,CAAC,CAAC;gBACpF,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;iBAC3E,CAAC;YACJ,CAAC;YAED,IAAI,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC9C,IAAI,CAAC;oBACH,MAAM,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;oBACrC,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,EAAE,aAAa,IAAI,CAAC,CAAC,CAAC;oBACpF,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;qBAC3E,CAAC;gBACJ,CAAC;gBAAC,MAAM,CAAC;oBACP,oDAAoD;gBACtD,CAAC;YACH,CAAC;YAED,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;YACvC,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB;4BACE,MAAM,EAAE,OAAO,CAAC,KAAK;4BACrB,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;yBAClC,EACD,IAAI,EACJ,CAAC,CACF;qBACF;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,UAAU,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACnE,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,+EAA+E;IAC/E,cAAc;IACd,+EAA+E;IAC/E,MAAM,CAAC,IAAI,CACT,UAAU,EACV,mEAAmE,EACnE;QACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iDAAiD,CAAC;QAC5F,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;QACzD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gDAAgD,CAAC;QACzF,OAAO,EAAE,CAAC;aACP,IAAI,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;aAChC,QAAQ,EAAE;aACV,QAAQ,CAAC,oCAAoC,CAAC;KAClD,EACD,KAAK,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE;QACpD,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAC5C,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBAChC,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,iDAAiD,OAAO,CAAC,KAAK,qLAAqL;yBAC1P;qBACF;oBACD,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,IAAI,MAAM,CAAC,CAAC;YAC9E,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;aAC5E,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,UAAU,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACnE,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,+EAA+E;IAC/E,UAAU;IACV,+EAA+E;IAC/E,MAAM,CAAC,IAAI,CACT,MAAM,EACN,2JAA2J,EAC3J;QACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iDAAiD,CAAC;QAC5F,MAAM,EAAE,CAAC;aACN,IAAI,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;aACxD,QAAQ,CAAC,0BAA0B,CAAC;QACvC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4CAA4C,CAAC;QACtF,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,gFAAgF,CAAC;KAC9F,EACD,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE;QACjD,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAC5C,MAAM,MAAM,GAAG,OAAO,IAAI,KAAK,CAAC;YAChC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAE7B,oEAAoE;YACpE,IAAI,MAAM,KAAK,OAAO,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBACtD,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;gBACnD,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;iBAC3E,CAAC;YACJ,CAAC;YAED,QAAQ,MAAM,EAAE,CAAC;gBACf,KAAK,UAAU;oBACb,MAAM,OAAO,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;oBAC1C,MAAM;gBACR,KAAK,MAAM;oBACT,MAAM,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAC7B,MAAM;gBACR,KAAK,QAAQ;oBACX,MAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;oBAC/B,MAAM;gBACR,KAAK,SAAS;oBACZ,MAAM,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;oBAChC,MAAM;gBACR,KAAK,OAAO;oBACV,MAAM,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;oBAC9B,MAAM;YACV,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YACvC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,wBAAwB;gBACxB,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;gBACvC,IAAI,OAAO,CAAC,KAAK,KAAK,YAAY,EAAE,CAAC;oBACnC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;oBACvC,OAAO;wBACL,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,MAAe;gCACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAC3D,IAAI,EACJ,CAAC,CACF;6BACF;yBACF;qBACF,CAAC;gBACJ,CAAC;gBACD,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;yBACzE;qBACF;iBACF,CAAC;YACJ,CAAC;YAED,IAAI,OAAO,CAAC,KAAK,KAAK,YAAY,EAAE,CAAC;gBACnC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;gBACvC,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAC3D,IAAI,EACJ,CAAC,CACF;yBACF;qBACF;iBACF,CAAC;YACJ,CAAC;YAED,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YACnD,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;aAC3E,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,UAAU,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACnE,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,+EAA+E;IAC/E,iBAAiB;IACjB,+EAA+E;IAC/E,MAAM,CAAC,IAAI,CACT,YAAY,EACZ,mOAAmO,EACnO;QACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iDAAiD,CAAC;QAC5F,QAAQ,EAAE,CAAC;aACR,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,gEAAgE,CAAC;QAC7E,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wDAAwD,CAAC;QAChG,KAAK,EAAE,CAAC;aACL,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,iHAAiH,CAClH;KACJ,EACD,KAAK,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;QAC9C,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAC5C,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,QAAQ,EAAE,KAAK,IAAI,KAAK,EAAE,KAAK,CAAC,CAAC;YAClE,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;aAC5E,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,UAAU,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACnE,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,+EAA+E;IAC/E,uBAAuB;IACvB,+EAA+E;IAC/E,MAAM,CAAC,IAAI,CACT,kBAAkB,EAClB,wEAAwE,EACxE;QACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iDAAiD,CAAC;QAC5F,iBAAiB,EAAE,CAAC;aACjB,OAAO,EAAE;aACT,QAAQ,EAAE;aACV,QAAQ,CAAC,qGAAqG,CAAC;KACnH,EACD,KAAK,EAAE,EAAE,SAAS,EAAE,iBAAiB,EAAE,EAAE,EAAE;QACzC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAC5C,MAAM,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;YAC5C,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC5B,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;qBACxE;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,UAAU,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACnE,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,+EAA+E;IAC/E,oBAAoB;IACpB,+EAA+E;IAC/E,MAAM,CAAC,IAAI,CACT,eAAe,EACf,yEAAyE,EACzE;QACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4DAA4D,CAAC;KACxG,EACD,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;QACtB,IAAI,UAAoC,CAAC;QACzC,IAAI,UAAoC,CAAC;QACzC,IAAI,CAAC;YACH,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YACzC,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,EAAE,CAAC;YAE9C,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;gBAC5B,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,mFAAmF;yBAC1F;qBACF;oBACD,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;YAED,MAAM,YAAY,GAAG,UAAU,CAAC,eAAe,EAAE,CAAC;YAClD,MAAM,aAAa,GAAG,UAAU,CAAC,gBAAgB,EAAE,CAAC;YACpD,MAAM,gBAAgB,GAAG,UAAU,CAAC,cAAc,EAAE,CAAC;YAErD,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,wDAAwD;yBAC/D;qBACF;oBACD,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;YAED,yBAAyB;YACzB,MAAM,UAAU,CAAC,UAAU,EAAE,CAAC;YAC9B,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YAE/B,8CAA8C;YAC9C,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,EAAE,CAAC;YACpC,UAAU,GAAG,IAAI,YAAY,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;YACpD,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAEzB,0DAA0D;YAC1D,MAAM,UAAU,CAAC,UAAU,EAAE,CAAC;YAE9B,gFAAgF;YAChF,MAAM,aAAa,GAAG,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YACtD,qEAAqE;YACrE,oCAAoC;YACpC,aAAa,CAAC,KAAK,CAAC,GAAG,EAAE,GAA0B,CAAC,CAAC,CAAC;YACtD,MAAM,UAAU,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;YAE3C,6BAA6B;YAC7B,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,gBAAgB,EAAE,CAAC;gBAC3C,MAAM,UAAU,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAC7C,CAAC;YAED,MAAM,UAAU,CAAC,iBAAiB,EAAE,CAAC;YACrC,MAAM,aAAa,CAAC;YAEpB,MAAM,WAAW,GAAG,YAAY,CAAC,WAAW,KAAK,KAAK,CAAC;YACvD,IAAI,SAAkC,CAAC;YACvC,IAAI,WAAW,EAAE,CAAC;gBAChB,IAAI,CAAC;oBACH,MAAM,UAAU,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;oBACvC,SAAS,GAAG,CAAC,MAAM,UAAU,CAAC,YAAY,EAAE,CAAuC,CAAC;gBACtF,CAAC;gBAAC,MAAM,CAAC;oBACP,SAAS,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,CAAC;gBAC3C,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,SAAS,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,CAAC;YAC3C,CAAC;YAED,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB,EAAE,SAAS,EAAE,KAAK,EAAE,iBAAiB,EAAE,UAAU,CAAC,EAAE,EAAE,GAAG,SAAS,EAAE,EACpE,IAAI,EACJ,CAAC,CACF;qBACF;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,UAAU,EAAE,CAAC;gBACf,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;gBAC/B,UAAU,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YACjD,CAAC;YACD,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,UAAU,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACnE,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,+EAA+E;IAC/E,oBAAoB;IACpB,+EAA+E;IAC/E,MAAM,CAAC,IAAI,CACT,eAAe,EACf,0OAA0O,EAC1O;QACE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;QAC3E,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;QAC5D,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;QAClE,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;QACxE,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;QAClF,EAAE,EAAE,CAAC;aACF,MAAM,CAAC;YACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;YAC7D,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;YAClD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;YAC9E,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4CAA4C,CAAC;SAC3F,CAAC;aACD,QAAQ,CAAC,gCAAgC,CAAC;QAC7C,WAAW,EAAE,CAAC;aACX,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;aACjB,QAAQ,EAAE;aACV,QAAQ,CAAC,kGAAkG,CAAC;QAC/G,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,oEAAoE,CAAC;QACjF,aAAa,EAAE,CAAC;aACb,MAAM,CAAC;YACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;YAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;YACnB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC9B,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;YACpC,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;YAC5D,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAClC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE;YAC9C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;SACnC,CAAC;aACD,QAAQ,EAAE;aACV,QAAQ,CAAC,gCAAgC,CAAC;KAC9C,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;QACb,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;YAC/D,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;aAC5E,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,UAAU,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACnE,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,+EAA+E;IAC/E,uBAAuB;IACvB,+EAA+E;IAC/E,MAAM,CAAC,IAAI,CACT,kBAAkB,EAClB,yJAAyJ,EACzJ;QACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iDAAiD,CAAC;KAC7F,EACD,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;QACtB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAC5C,MAAM,GAAG,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;YACrC,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;gBACpE,IAAI;gBACJ,WAAW;aACZ,CAAC,CAAC,CAAC;YACJ,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YACvE,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;qBAC5D;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,UAAU,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACnE,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,+EAA+E;IAC/E,gBAAgB;IAChB,+EAA+E;IAC/E,MAAM,CAAC,IAAI,CACT,WAAW,EACX,8TAA8T,EAC9T;QACE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;QAC3E,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;QAC5D,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;QAClE,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;QACxE,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;QAClF,SAAS,EAAE,CAAC;aACT,KAAK,CACJ,CAAC,CAAC,MAAM,CAAC;YACP,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;YAC7D,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;YAClD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kEAAkE,CAAC;SACpG,CAAC,CACH;aACA,QAAQ,EAAE;aACV,QAAQ,CAAC,8DAA8D,CAAC;QAC3E,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,6EAA6E,CAAC;QAC1F,aAAa,EAAE,CAAC;aACb,MAAM,CAAC;YACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;YAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;YACnB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC9B,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;YACpC,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;YAC5D,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAClC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE;YAC9C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;SACnC,CAAC;aACD,QAAQ,EAAE;aACV,QAAQ,CAAC,gCAAgC,CAAC;KAC9C,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;QACb,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;YAC3D,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;aAC5E,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,UAAU,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACnE,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,+EAA+E;IAC/E,2BAA2B;IAC3B,+EAA+E;IAC/E,0DAA0D;IAC1D,2EAA2E;IAC3E,MAAM,CAAC,QAAQ,CACb,UAAU,EACV,gBAAgB,EAChB;QACE,WAAW,EAAE,8DAA8D;QAC3E,QAAQ,EAAE,kBAAkB;KAC7B,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;QACb,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACzC,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,WAAW,EAAE,CAAC,CAAC,gBAAgB,EAAE,CAAC,IAAI;SACvC,CAAC,CAAC,CAAC;QACJ,OAAO;YACL,QAAQ,EAAE;gBACR;oBACE,GAAG,EAAE,gBAAgB;oBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;iBACnC;aACF;SACF,CAAC;IACJ,CAAC,CACF,CAAC;IAEF,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2026 Ivan Iraci <ivan.iraci@professioneit.com>
|
|
3
|
+
*
|
|
4
|
+
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
5
|
+
* of this software and associated documentation files (the "Software"), to deal
|
|
6
|
+
* in the Software without restriction, including without limitation the rights
|
|
7
|
+
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
8
|
+
* copies of the Software, and to permit persons to whom the Software is
|
|
9
|
+
* furnished to do so, subject to the following conditions:
|
|
10
|
+
*
|
|
11
|
+
* The above copyright notice and this permission notice shall be included in
|
|
12
|
+
* all copies or substantial portions of the Software.
|
|
13
|
+
*
|
|
14
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
15
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
16
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
17
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
18
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
19
|
+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
20
|
+
* SOFTWARE.
|
|
21
|
+
*/
|
|
22
|
+
import { AdapterRegistry } from "../adapters/registry.js";
|
|
23
|
+
import { SessionManager } from "./session-manager.js";
|
|
24
|
+
import { AdapterConfig } from "../dap/types.js";
|
|
25
|
+
export interface InspectOptions {
|
|
26
|
+
adapter: string;
|
|
27
|
+
program: string;
|
|
28
|
+
args?: string[];
|
|
29
|
+
cwd?: string;
|
|
30
|
+
env?: Record<string, string>;
|
|
31
|
+
at: {
|
|
32
|
+
file: string;
|
|
33
|
+
line: number;
|
|
34
|
+
condition?: string;
|
|
35
|
+
hitCondition?: string;
|
|
36
|
+
};
|
|
37
|
+
expressions?: string[];
|
|
38
|
+
timeout?: number;
|
|
39
|
+
adapterConfig?: AdapterConfig;
|
|
40
|
+
}
|
|
41
|
+
export interface InspectValueResult {
|
|
42
|
+
result?: string;
|
|
43
|
+
type?: string;
|
|
44
|
+
error?: string;
|
|
45
|
+
}
|
|
46
|
+
export interface InspectResult {
|
|
47
|
+
hit: boolean;
|
|
48
|
+
reason?: string;
|
|
49
|
+
location?: {
|
|
50
|
+
file: string;
|
|
51
|
+
line: number;
|
|
52
|
+
functionName?: string;
|
|
53
|
+
column?: number;
|
|
54
|
+
};
|
|
55
|
+
values?: Record<string, InspectValueResult>;
|
|
56
|
+
output?: string[];
|
|
57
|
+
status?: string;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Launch a program, run until it hits the given breakpoint, evaluate a set of
|
|
61
|
+
* expressions in that frame, and disconnect. Collapses a multi-call workflow
|
|
62
|
+
* into a single operation suitable for "what is X at line N?" debugging.
|
|
63
|
+
*/
|
|
64
|
+
export declare function runDebugInspect(registry: AdapterRegistry, sessions: SessionManager, opts: InspectOptions): Promise<InspectResult>;
|