@trenchwork/erosolar 1.1.31 → 1.1.32

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.

Potentially problematic release.


This version of @trenchwork/erosolar might be problematic. Click here for more details.

Files changed (44) hide show
  1. package/dist/bin/deepseek.js +13 -0
  2. package/dist/bin/deepseek.js.map +1 -1
  3. package/dist/capabilities/_binaryRequirements.d.ts +101 -0
  4. package/dist/capabilities/_binaryRequirements.d.ts.map +1 -0
  5. package/dist/capabilities/_binaryRequirements.js +288 -0
  6. package/dist/capabilities/_binaryRequirements.js.map +1 -0
  7. package/dist/capabilities/_opsContext.d.ts +129 -0
  8. package/dist/capabilities/_opsContext.d.ts.map +1 -0
  9. package/dist/capabilities/_opsContext.js +274 -0
  10. package/dist/capabilities/_opsContext.js.map +1 -0
  11. package/dist/capabilities/_processRunner.d.ts +32 -0
  12. package/dist/capabilities/_processRunner.d.ts.map +1 -1
  13. package/dist/capabilities/_processRunner.js +126 -0
  14. package/dist/capabilities/_processRunner.js.map +1 -1
  15. package/dist/capabilities/engagementCapability.d.ts.map +1 -1
  16. package/dist/capabilities/engagementCapability.js +14 -3
  17. package/dist/capabilities/engagementCapability.js.map +1 -1
  18. package/dist/capabilities/index.d.ts +1 -0
  19. package/dist/capabilities/index.d.ts.map +1 -1
  20. package/dist/capabilities/index.js +1 -0
  21. package/dist/capabilities/index.js.map +1 -1
  22. package/dist/capabilities/llmRedteamCapability.d.ts +38 -0
  23. package/dist/capabilities/llmRedteamCapability.d.ts.map +1 -0
  24. package/dist/capabilities/llmRedteamCapability.js +340 -0
  25. package/dist/capabilities/llmRedteamCapability.js.map +1 -0
  26. package/dist/cli/offsecInstall.d.ts +43 -0
  27. package/dist/cli/offsecInstall.d.ts.map +1 -0
  28. package/dist/cli/offsecInstall.js +258 -0
  29. package/dist/cli/offsecInstall.js.map +1 -0
  30. package/dist/headless/interactiveShell.d.ts.map +1 -1
  31. package/dist/headless/interactiveShell.js +25 -0
  32. package/dist/headless/interactiveShell.js.map +1 -1
  33. package/dist/runtime/node.d.ts.map +1 -1
  34. package/dist/runtime/node.js +58 -2
  35. package/dist/runtime/node.js.map +1 -1
  36. package/dist/runtime/phaseEmitter.d.ts +63 -0
  37. package/dist/runtime/phaseEmitter.d.ts.map +1 -0
  38. package/dist/runtime/phaseEmitter.js +207 -0
  39. package/dist/runtime/phaseEmitter.js.map +1 -0
  40. package/dist/tools/engagementTools.d.ts +23 -0
  41. package/dist/tools/engagementTools.d.ts.map +1 -1
  42. package/dist/tools/engagementTools.js +45 -0
  43. package/dist/tools/engagementTools.js.map +1 -1
  44. package/package.json +1 -1
@@ -0,0 +1,207 @@
1
+ /**
2
+ * Phase emitter — auto-instruments offsec tools so the portal's
3
+ * Engagement → Target → Finding phase tabs populate without the
4
+ * operator manually calling FindingUpdatePhase after every tool run.
5
+ *
6
+ * The mapping below routes a tool name (e.g. 'kali_subfinder',
7
+ * 'bin_radare2_cmd', 'afl_fuzz_start') to one of the canonical phase
8
+ * names the portal renders (recon, static, fuzz, triage, exploit,
9
+ * validate, disclose). On a successful tool result, the emitter:
10
+ *
11
+ * 1. Reads the active engagement / target / finding selection from
12
+ * the EngagementCapability in-process state. If no finding is
13
+ * selected, no-op (we don't invent a finding for a tool run).
14
+ * 2. Calls the cliFindingUpdate Lambda with `{ <phase>: { tool, args,
15
+ * output, ts } }` merged into the finding doc. The CLI does not
16
+ * block on Lambda — emit is fire-and-forget.
17
+ * 3. For long-running tools (afl_fuzz_start, ghidra_batch), also
18
+ * writes a `users/<uid>/jobs/<id>` row via cliJobStart so the
19
+ * portal's Jobs rail shows it live.
20
+ *
21
+ * Gating: only fires when the active profile is offsec (variant-research
22
+ * / engagement-delivery). Default coding sessions never emit. Best-
23
+ * effort throughout — a Lambda failure or unauthenticated session
24
+ * silently drops the emit; the tool result is unaffected.
25
+ */
26
+ import { isOffsecProfile } from './profileGates.js';
27
+ import { callLambda } from '../utils/lambdaClient.js';
28
+ import { getEngagementSelection } from '../tools/engagementTools.js';
29
+ /**
30
+ * Tool name → phase. Uses prefix matching so adding a new bin_xxx
31
+ * tool gets static-phase emission for free without touching this map.
32
+ */
33
+ const TOOL_PREFIX_TO_PHASE = [
34
+ // Recon — Kali enumeration / surface mapping
35
+ ['kali_subfinder', 'recon'],
36
+ ['kali_amass', 'recon'],
37
+ ['kali_masscan', 'recon'],
38
+ ['kali_gobuster', 'recon'],
39
+ ['kali_ffuf', 'recon'],
40
+ ['kali_feroxbuster', 'recon'],
41
+ ['kali_nikto', 'recon'],
42
+ ['kali_wpscan', 'recon'],
43
+ // Static analysis — every bin_* + ghidra_* + radare2 invocation
44
+ ['bin_', 'static'],
45
+ ['ghidra_', 'static'],
46
+ // Fuzzing — AFL++ campaign + corpus tools
47
+ ['afl_', 'fuzz'],
48
+ // Triage — gdb / pwndbg / GEF
49
+ ['gdb_', 'triage'],
50
+ // Exploit dev — pwntools (ROP search, primitives, packing)
51
+ ['pwn_', 'exploit'],
52
+ // Validation — Kali post-exploit / vuln-confirmation tools
53
+ ['kali_sqlmap', 'validate'],
54
+ ['kali_hydra', 'validate'],
55
+ ['kali_john', 'validate'],
56
+ ['kali_hashcat', 'validate'],
57
+ ];
58
+ /**
59
+ * Tools that kick off long-running background jobs. The emitter writes
60
+ * a Job record on start so the portal Jobs rail tracks them live.
61
+ * Most everything else is short-running and only needs a phase emit.
62
+ */
63
+ const JOB_START_TOOLS = new Map([
64
+ ['afl_fuzz_start', { kind: 'fuzz', tool: 'afl++' }],
65
+ ['ghidra_batch', { kind: 'decomp', tool: 'ghidra' }],
66
+ ['MonitorStart', { kind: 'monitor', tool: 'shell' }],
67
+ ]);
68
+ const JOB_END_TOOLS = new Map([
69
+ ['afl_fuzz_stop', 'stopped'],
70
+ ['MonitorStop', 'stopped'],
71
+ ]);
72
+ export function phaseForTool(name) {
73
+ if (!name)
74
+ return null;
75
+ for (const [prefix, phase] of TOOL_PREFIX_TO_PHASE) {
76
+ if (name === prefix || name.startsWith(prefix))
77
+ return phase;
78
+ }
79
+ return null;
80
+ }
81
+ export function jobKindForTool(name) {
82
+ return JOB_START_TOOLS.get(name) ?? null;
83
+ }
84
+ export function jobEndStatusForTool(name) {
85
+ return JOB_END_TOOLS.get(name) ?? null;
86
+ }
87
+ const MAX_OUTPUT_CHARS = 8000;
88
+ function clipString(value, max = MAX_OUTPUT_CHARS) {
89
+ if (value.length <= max)
90
+ return value;
91
+ return value.slice(0, max) + `\n…[truncated ${value.length - max} chars]`;
92
+ }
93
+ /**
94
+ * Emit a phase block for a successful tool call. Returns silently when
95
+ * gating denies the emit (wrong profile, no selection, no auth). Never
96
+ * throws — best-effort.
97
+ */
98
+ export async function emitPhaseRecord(call, output, ctx) {
99
+ if (!ctx.forceEmit && !isOffsecProfile(ctx.profile))
100
+ return;
101
+ const phase = phaseForTool(call.name);
102
+ if (!phase)
103
+ return;
104
+ const sel = getEngagementSelection();
105
+ // We need at least an engagement + target + finding to attach phase
106
+ // data. If the operator hasn't selected one, drop silently — the
107
+ // tool result still surfaces in chat; the portal just won't get the
108
+ // structured copy.
109
+ if (!sel.engagementId || !sel.targetId || !sel.findingId)
110
+ return;
111
+ const payload = {
112
+ engagementId: sel.engagementId,
113
+ targetId: sel.targetId,
114
+ id: sel.findingId,
115
+ phase,
116
+ [phase]: {
117
+ tool: call.name,
118
+ args: call.arguments,
119
+ output: clipString(typeof output === 'string' ? output : String(output)),
120
+ at: Date.now(),
121
+ },
122
+ };
123
+ try {
124
+ await callLambda('cliFindingUpdate', payload);
125
+ }
126
+ catch {
127
+ // Best-effort. The tool result remains valid even if the portal
128
+ // doesn't reflect the phase block.
129
+ }
130
+ }
131
+ /**
132
+ * Emit a Jobs record for a tool that starts a long-running background
133
+ * task. Re-issued via cliJobUpdate / cliJobComplete by the matching
134
+ * stop / status tools (or by the process-exit hook in
135
+ * tools/monitorTools.ts).
136
+ */
137
+ export async function emitJobStart(call, output, ctx) {
138
+ if (!ctx.forceEmit && !isOffsecProfile(ctx.profile))
139
+ return;
140
+ const job = jobKindForTool(call.name);
141
+ if (!job)
142
+ return;
143
+ const sel = getEngagementSelection();
144
+ // Job-start needs an id we can use for completion later. The tool
145
+ // output usually echoes the id Firebase needs; pull the first
146
+ // alnum/-_ token from the output string as a heuristic id.
147
+ const idMatch = String(output).match(/(?:job|monitor|fuzz)[-_]([a-zA-Z0-9_-]{6,64})/i);
148
+ const id = idMatch?.[1] ?? `job-${Date.now().toString(36)}-${Math.random().toString(36).slice(2, 6)}`;
149
+ const payload = {
150
+ id,
151
+ kind: job.kind,
152
+ tool: job.tool,
153
+ name: call.name,
154
+ status: 'running',
155
+ startedAt: Date.now(),
156
+ engagementId: sel.engagementId,
157
+ targetId: sel.targetId,
158
+ findingId: sel.findingId,
159
+ };
160
+ try {
161
+ await callLambda('cliJobStart', payload);
162
+ }
163
+ catch {
164
+ // Best-effort.
165
+ }
166
+ }
167
+ export async function emitJobEnd(call, output, ctx) {
168
+ if (!ctx.forceEmit && !isOffsecProfile(ctx.profile))
169
+ return;
170
+ const status = jobEndStatusForTool(call.name);
171
+ if (!status)
172
+ return;
173
+ // Caller passed the original id via args (e.g. `afl_fuzz_stop({ id })`).
174
+ const id = typeof call.arguments['id'] === 'string'
175
+ ? call.arguments['id']
176
+ : null;
177
+ if (!id)
178
+ return;
179
+ void output;
180
+ try {
181
+ await callLambda('cliJobComplete', { id, status });
182
+ }
183
+ catch {
184
+ // Best-effort.
185
+ }
186
+ }
187
+ /**
188
+ * Build the ToolRuntimeObserver that hooks all three emits onto the
189
+ * runtime. Wire it via createNodeRuntime's `toolObserver` option.
190
+ * Returns a no-op observer for non-offsec profiles so the runtime
191
+ * doesn't pay the per-call cost when gating would deny anyway.
192
+ */
193
+ export function createPhaseEmitterObserver(profile) {
194
+ if (!isOffsecProfile(profile)) {
195
+ return {};
196
+ }
197
+ const ctx = { profile };
198
+ return {
199
+ onToolResult(call, output) {
200
+ // Fire-and-forget: never block the runtime on the emit.
201
+ void emitPhaseRecord(call, output, ctx);
202
+ void emitJobStart(call, output, ctx);
203
+ void emitJobEnd(call, output, ctx);
204
+ },
205
+ };
206
+ }
207
+ //# sourceMappingURL=phaseEmitter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"phaseEmitter.js","sourceRoot":"","sources":["../../src/runtime/phaseEmitter.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,29 @@ interface CurrentSelection {
17
17
  }
18
18
  export declare function getEngagementSelection(): CurrentSelection;
19
19
  export declare function clearEngagementSelection(): void;
20
+ /**
21
+ * Pull the most recent {engagement,target,finding} selection from
22
+ * users/<uid>/cli_state/selection (written by the portal launcher
23
+ * or by a sibling CLI session) and seat it as the active selection.
24
+ *
25
+ * Returns the loaded selection if anything was found, else null. Never
26
+ * throws — auth errors and network failures are swallowed because this
27
+ * runs at boot and a transient failure should never block the CLI from
28
+ * starting.
29
+ */
30
+ export declare function loadSelectionFromPortal(): Promise<CurrentSelection | null>;
31
+ /**
32
+ * Fetch + atomically consume the kickoff prompt the portal wrote when
33
+ * it launched this engagement. Returns the prompt string if a fresh
34
+ * one was claimed, else null. Used by the interactive shell to pre-feed
35
+ * the agent's first user prompt so a portal-launched hunt actually
36
+ * starts hunting on boot instead of waiting for the operator to type
37
+ * something.
38
+ */
39
+ export declare function consumeKickoffPrompt(engagementId: string): Promise<{
40
+ prompt: string;
41
+ profile: string | null;
42
+ } | null>;
20
43
  export declare function createEngagementTools(): ToolDefinition[];
21
44
  export {};
22
45
  //# sourceMappingURL=engagementTools.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"engagementTools.d.ts","sourceRoot":"","sources":["../../src/tools/engagementTools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAG7D,UAAU,gBAAgB;IACxB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAQD,wBAAgB,sBAAsB,IAAI,gBAAgB,CAEzD;AAED,wBAAgB,wBAAwB,IAAI,IAAI,CAI/C;AAuCD,wBAAgB,qBAAqB,IAAI,cAAc,EAAE,CAwRxD"}
1
+ {"version":3,"file":"engagementTools.d.ts","sourceRoot":"","sources":["../../src/tools/engagementTools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAG7D,UAAU,gBAAgB;IACxB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAQD,wBAAgB,sBAAsB,IAAI,gBAAgB,CAEzD;AAED,wBAAgB,wBAAwB,IAAI,IAAI,CAI/C;AAED;;;;;;;;;GASG;AACH,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAehF;AAED;;;;;;;GAOG;AACH,wBAAsB,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG,IAAI,CAAC,CAW3H;AAuCD,wBAAgB,qBAAqB,IAAI,cAAc,EAAE,CAwRxD"}
@@ -23,6 +23,51 @@ export function clearEngagementSelection() {
23
23
  SELECTION.targetId = null;
24
24
  SELECTION.findingId = null;
25
25
  }
26
+ /**
27
+ * Pull the most recent {engagement,target,finding} selection from
28
+ * users/<uid>/cli_state/selection (written by the portal launcher
29
+ * or by a sibling CLI session) and seat it as the active selection.
30
+ *
31
+ * Returns the loaded selection if anything was found, else null. Never
32
+ * throws — auth errors and network failures are swallowed because this
33
+ * runs at boot and a transient failure should never block the CLI from
34
+ * starting.
35
+ */
36
+ export async function loadSelectionFromPortal() {
37
+ try {
38
+ const res = await callLambda('cliSelectionGet', {}, { timeoutMs: 5000 });
39
+ if (!res.ok || !res.result?.engagementId)
40
+ return null;
41
+ SELECTION.engagementId = res.result.engagementId;
42
+ SELECTION.targetId = res.result.targetId ?? null;
43
+ SELECTION.findingId = res.result.findingId ?? null;
44
+ return getEngagementSelection();
45
+ }
46
+ catch {
47
+ return null;
48
+ }
49
+ }
50
+ /**
51
+ * Fetch + atomically consume the kickoff prompt the portal wrote when
52
+ * it launched this engagement. Returns the prompt string if a fresh
53
+ * one was claimed, else null. Used by the interactive shell to pre-feed
54
+ * the agent's first user prompt so a portal-launched hunt actually
55
+ * starts hunting on boot instead of waiting for the operator to type
56
+ * something.
57
+ */
58
+ export async function consumeKickoffPrompt(engagementId) {
59
+ if (!engagementId)
60
+ return null;
61
+ try {
62
+ const res = await callLambda('cliKickoffGet', { engagementId, consume: true }, { timeoutMs: 5000 });
63
+ if (!res.ok || !res.result?.prompt)
64
+ return null;
65
+ return { prompt: res.result.prompt, profile: res.result.profile ?? null };
66
+ }
67
+ catch {
68
+ return null;
69
+ }
70
+ }
26
71
  function safeId(input, prefix) {
27
72
  const s = typeof input === 'string' ? input.trim() : '';
28
73
  if (!s)
@@ -1 +1 @@
1
- {"version":3,"file":"engagementTools.js","sourceRoot":"","sources":["../../src/tools/engagementTools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engagementTools.js","sourceRoot":"","sources":["../../src/tools/engagementTools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAQtD,MAAM,SAAS,GAAqB;IAClC,YAAY,EAAE,IAAI;IAClB,QAAQ,EAAE,IAAI;IACd,SAAS,EAAE,IAAI;CAChB,CAAC;AAEF,MAAM,UAAU,sBAAsB;IACpC,OAAO,EAAE,GAAG,SAAS,EAAE,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,wBAAwB;IACtC,SAAS,CAAC,YAAY,GAAG,IAAI,CAAC;IAC9B,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC1B,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC;AAC7B,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB;IAC3C,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,UAAU,CAIzB,iBAAiB,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/C,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY;YAAE,OAAO,IAAI,CAAC;QACtD,SAAS,CAAC,YAAY,GAAG,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC;QACjD,SAAS,CAAC,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC;QACjD,SAAS,CAAC,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC;QACnD,OAAO,sBAAsB,EAAE,CAAC;IAClC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,YAAoB;IAC7D,IAAI,CAAC,YAAY;QAAE,OAAO,IAAI,CAAC;IAC/B,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,UAAU,CAC1B,eAAe,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CACtE,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM;YAAE,OAAO,IAAI,CAAC;QAChD,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;IAC5E,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,MAAM,CAAC,KAAc,EAAE,MAAc;IAC5C,MAAM,CAAC,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACxD,IAAI,CAAC,CAAC;QAAE,OAAO,GAAG,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IAChG,OAAO,CAAC,CAAC,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAgD,EAAE,QAAkB;IAC5F,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,IAAI,EAAE;QAAE,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC5E,MAAM,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;IAC3B,IAAI,CAAC,CAAC,EAAE,CAAC;QACP,MAAM,IAAI,KAAK,CACb,GAAG,KAAK,2DAA2D;YACnE,CAAC,KAAK,KAAK,cAAc;gBACvB,CAAC,CAAC,4CAA4C;gBAC9C,CAAC,CAAC,KAAK,KAAK,UAAU;oBACpB,CAAC,CAAC,iCAAiC;oBACnC,CAAC,CAAC,sCAAsC,CAAC,CAC9C,CAAC;IACJ,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAUD,SAAS,cAAc,CAAC,IAAY,EAAE,MAAwD;IAC5F,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;QAC1B,OAAO,GAAG,IAAI,iFAAiF,CAAC;IAClG,CAAC;IACD,OAAO,GAAG,IAAI,YAAY,MAAM,CAAC,KAAK,IAAI,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AAC1G,CAAC;AAED,MAAM,UAAU,qBAAqB;IACnC,OAAO;QACL;YACE,IAAI,EAAE,kBAAkB;YACxB,WAAW,EACT,oFAAoF;gBACpF,4EAA4E;gBAC5E,2EAA2E;gBAC3E,kDAAkD;YACpD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,8DAA8D,EAAE;oBACnG,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE;oBACpF,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC9B,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC7B,gBAAgB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACpC,mBAAmB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kDAAkD,EAAE;oBACxG,cAAc,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2BAA2B,EAAE;oBAC5E,SAAS,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,WAAW,EAAE,4BAA4B,EAAE;oBAClG,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qCAAqC,EAAE;oBAChF,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBAC1B;aACF;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC;gBACrC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAW,qBAAqB,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;gBAClF,IAAI,CAAC,MAAM,CAAC,EAAE;oBAAE,OAAO,cAAc,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;gBAClE,SAAS,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC;gBACjD,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC;gBAC1B,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC;gBAC3B,OAAO,eAAe,SAAS,CAAC,YAAY,yBAAyB,CAAC;YACxE,CAAC;SACF;QACD;YACE,IAAI,EAAE,kBAAkB;YACxB,WAAW,EAAE,6EAA6E;YAC1F,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;gBACtC,QAAQ,EAAE,CAAC,IAAI,CAAC;aACjB;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC3C,IAAI,CAAC,EAAE;oBAAE,OAAO,+BAA+B,CAAC;gBAChD,SAAS,CAAC,YAAY,GAAG,EAAE,CAAC;gBAC5B,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC;gBAC1B,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC;gBAC3B,OAAO,wBAAwB,EAAE,IAAI,CAAC;YACxC,CAAC;SACF;QACD;YACE,IAAI,EAAE,iBAAiB;YACvB,WAAW,EAAE,mEAAmE;YAChF,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACtB,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE;iBACzD;aACF;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,MAAM,EAAE,GAAG,gBAAgB,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBACxD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAW,oBAAoB,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;gBAChG,IAAI,CAAC,MAAM,CAAC,EAAE;oBAAE,OAAO,cAAc,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;gBACjE,IAAI,SAAS,CAAC,YAAY,KAAK,EAAE;oBAAE,SAAS,CAAC,YAAY,GAAG,IAAI,CAAC;gBACjE,OAAO,eAAe,EAAE,OAAO,MAAM,CAAC,MAAM,EAAE,MAAM,IAAI,QAAQ,GAAG,CAAC;YACtE,CAAC;SACF;QACD;YACE,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE,mCAAmC;YAChD,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE;YAC9C,OAAO,EAAE,KAAK,IAAI,EAAE;gBAClB,MAAM,MAAM,GAAG,MAAM,UAAU,CAA8H,mBAAmB,EAAE,EAAE,CAAC,CAAC;gBACtL,IAAI,CAAC,MAAM,CAAC,EAAE;oBAAE,OAAO,cAAc,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;gBAChE,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,IAAI,EAAE,CAAC;gBAC/C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,iBAAiB,CAAC;gBACjD,OAAO,KAAK;qBACT,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,MAAM,IAAI,QAAQ,KAAK,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,gBAAgB,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;qBACjH,IAAI,CAAC,IAAI,CAAC,CAAC;YAChB,CAAC;SACF;QAED;YACE,IAAI,EAAE,WAAW;YACjB,WAAW,EACT,qFAAqF;gBACrF,4DAA4D;YAC9D,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAChC,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACtB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wCAAwC,EAAE;oBAC/E,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE;oBAC5E,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACxB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACxB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACxB,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC3B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC1B,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACxB,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC5B,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBAC1B;aACF;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,MAAM,YAAY,GAAG,gBAAgB,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;gBAC5E,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC;gBACrC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAW,cAAc,EAAE,EAAE,GAAG,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC;gBACzF,IAAI,CAAC,MAAM,CAAC,EAAE;oBAAE,OAAO,cAAc,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;gBAC3D,SAAS,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC;gBAC7C,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC;gBAC3B,OAAO,WAAW,SAAS,CAAC,QAAQ,cAAc,YAAY,gBAAgB,CAAC;YACjF,CAAC;SACF;QACD;YACE,IAAI,EAAE,cAAc;YACpB,WAAW,EAAE,kEAAkE;YAC/E,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;gBACxE,QAAQ,EAAE,CAAC,IAAI,CAAC;aACjB;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,IAAI,IAAI,CAAC,cAAc,CAAC;oBAAE,SAAS,CAAC,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBACvF,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC3C,IAAI,CAAC,EAAE;oBAAE,OAAO,2BAA2B,CAAC;gBAC5C,SAAS,CAAC,QAAQ,GAAG,EAAE,CAAC;gBACxB,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC;gBAC3B,OAAO,oBAAoB,EAAE,IAAI,CAAC;YACpC,CAAC;SACF;QACD;YACE,IAAI,EAAE,YAAY;YAClB,WAAW,EAAE,uDAAuD;YACpE,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;aACjD;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,MAAM,YAAY,GAAG,gBAAgB,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;gBAC5E,MAAM,MAAM,GAAG,MAAM,UAAU,CAAoF,eAAe,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC;gBACtJ,IAAI,CAAC,MAAM,CAAC,EAAE;oBAAE,OAAO,cAAc,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;gBAC5D,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,IAAI,EAAE,CAAC;gBAC3C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,iBAAiB,YAAY,GAAG,CAAC;gBAChE,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,MAAM,IAAI,QAAQ,KAAK,CAAC,CAAC,IAAI,IAAI,GAAG,MAAM,CAAC,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpH,CAAC;SACF;QAED;YACE,IAAI,EAAE,eAAe;YACrB,WAAW,EACT,wEAAwE;gBACxE,yDAAyD;YAC3D,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAChC,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC5B,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACtB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACzB,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC3B,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE;oBAC7E,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACxB,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACvB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBAC1B;gBACD,QAAQ,EAAE,CAAC,OAAO,CAAC;aACpB;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,MAAM,YAAY,GAAG,gBAAgB,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;gBAC5E,MAAM,QAAQ,GAAG,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;gBAChE,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC;gBACrC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAW,kBAAkB,EAAE,EAAE,GAAG,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;gBACvG,IAAI,CAAC,MAAM,CAAC,EAAE;oBAAE,OAAO,cAAc,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;gBAC/D,SAAS,CAAC,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC;gBAC9C,OAAO,YAAY,SAAS,CAAC,SAAS,gBAAgB,QAAQ,gBAAgB,YAAY,IAAI,CAAC;YACjG,CAAC;SACF;QACD;YACE,IAAI,EAAE,oBAAoB;YAC1B,WAAW,EACT,qFAAqF;gBACrF,4EAA4E;gBAC5E,4EAA4E;gBAC5E,kCAAkC;YACpC,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAChC,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC5B,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE;oBAClD,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC;qBACxF;oBACD,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,4EAA4E,EAAE;oBACnH,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uEAAuE,EAAE;iBACjH;gBACD,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;aAC5B;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,MAAM,YAAY,GAAG,gBAAgB,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;gBAC5E,MAAM,QAAQ,GAAG,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;gBAChE,MAAM,EAAE,GAAG,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBACrD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBACjD,MAAM,OAAO,GAA4B;oBACvC,YAAY,EAAE,QAAQ,EAAE,EAAE;oBAC1B,KAAK;oBACL,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;iBAC5B,CAAC;gBACF,IAAI,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;oBAChE,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACrC,CAAC;gBACD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAW,kBAAkB,EAAE,OAAO,CAAC,CAAC;gBACvE,IAAI,CAAC,MAAM,CAAC,EAAE;oBAAE,OAAO,cAAc,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC;gBACpE,OAAO,YAAY,EAAE,qBAAqB,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,aAAa,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC;YACjH,CAAC;SACF;QACD;YACE,IAAI,EAAE,iBAAiB;YACvB,WAAW,EACT,qFAAqF;gBACrF,iFAAiF;gBACjF,gCAAgC;YAClC,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAChC,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC5B,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACtB,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,cAAc,EAAE,SAAS,EAAE,UAAU,EAAE,oBAAoB,CAAC,EAAE;oBAC9G,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sEAAsE,EAAE;oBAC/G,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBAC1B;gBACD,QAAQ,EAAE,CAAC,UAAU,CAAC;aACvB;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,MAAM,YAAY,GAAG,gBAAgB,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;gBAC5E,MAAM,QAAQ,GAAG,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;gBAChE,MAAM,EAAE,GAAG,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBACrD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAW,kBAAkB,EAAE;oBAC5D,YAAY,EAAE,QAAQ,EAAE,EAAE;oBAC1B,KAAK,EAAE,UAAU;oBACjB,QAAQ,EAAE;wBACR,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC;wBAC1B,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI;wBAC9B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI;qBAC7B;oBACD,MAAM,EAAE,WAAW;iBACpB,CAAC,CAAC;gBACH,IAAI,CAAC,MAAM,CAAC,EAAE;oBAAE,OAAO,cAAc,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;gBACjE,OAAO,YAAY,EAAE,mBAAmB,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC;YAC7G,CAAC;SACF;QACD;YACE,IAAI,EAAE,aAAa;YACnB,WAAW,EAAE,oDAAoD;YACjE,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAChC,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBAC7B;aACF;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,MAAM,YAAY,GAAG,gBAAgB,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;gBAC5E,MAAM,QAAQ,GAAG,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;gBAChE,MAAM,MAAM,GAAG,MAAM,UAAU,CAC7B,gBAAgB,EAChB,EAAE,YAAY,EAAE,QAAQ,EAAE,CAC3B,CAAC;gBACF,IAAI,CAAC,MAAM,CAAC,EAAE;oBAAE,OAAO,cAAc,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;gBAC7D,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,IAAI,EAAE,CAAC;gBAC5C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,kBAAkB,QAAQ,GAAG,CAAC;gBAC7D,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,MAAM,IAAI,UAAU,KAAK,CAAC,CAAC,QAAQ,IAAI,GAAG,MAAM,CAAC,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC3H,CAAC;SACF;KACF,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@trenchwork/erosolar",
3
- "version": "1.1.31",
3
+ "version": "1.1.32",
4
4
  "description": "DeepSeek AI-powered CLI agent for code assistance and automation",
5
5
  "deepseek": {
6
6
  "rulebookSchema": "src/contracts/schemas/agent-rules.schema.json"