oh-my-claudecode 0.2.3 → 0.2.4

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 (64) hide show
  1. package/README.md +48 -1
  2. package/dist/cli/bind-cron.d.ts +86 -0
  3. package/dist/cli/bind-cron.d.ts.map +1 -0
  4. package/dist/cli/bind-cron.js +161 -0
  5. package/dist/cli/bind-cron.js.map +1 -0
  6. package/dist/cli/bind.d.ts +78 -0
  7. package/dist/cli/bind.d.ts.map +1 -0
  8. package/dist/cli/bind.js +417 -0
  9. package/dist/cli/bind.js.map +1 -0
  10. package/dist/cli/index.js +61 -0
  11. package/dist/cli/index.js.map +1 -1
  12. package/dist/cli/project-scan.d.ts +94 -0
  13. package/dist/cli/project-scan.d.ts.map +1 -0
  14. package/dist/cli/project-scan.js +387 -0
  15. package/dist/cli/project-scan.js.map +1 -0
  16. package/dist/cli/sisyphus-migrate.d.ts +50 -0
  17. package/dist/cli/sisyphus-migrate.d.ts.map +1 -0
  18. package/dist/cli/sisyphus-migrate.js +226 -0
  19. package/dist/cli/sisyphus-migrate.js.map +1 -0
  20. package/dist/cli/tui.d.ts +94 -0
  21. package/dist/cli/tui.d.ts.map +1 -0
  22. package/dist/cli/tui.js +180 -0
  23. package/dist/cli/tui.js.map +1 -0
  24. package/dist/features/yith-archive/functions/backfill.d.ts +43 -0
  25. package/dist/features/yith-archive/functions/backfill.d.ts.map +1 -1
  26. package/dist/features/yith-archive/functions/backfill.js +303 -145
  27. package/dist/features/yith-archive/functions/backfill.js.map +1 -1
  28. package/dist/features/yith-archive/functions/compress-batch.d.ts +4 -0
  29. package/dist/features/yith-archive/functions/compress-batch.d.ts.map +1 -0
  30. package/dist/features/yith-archive/functions/compress-batch.js +290 -0
  31. package/dist/features/yith-archive/functions/compress-batch.js.map +1 -0
  32. package/dist/features/yith-archive/functions/compress.d.ts +2 -1
  33. package/dist/features/yith-archive/functions/compress.d.ts.map +1 -1
  34. package/dist/features/yith-archive/functions/compress.js +1 -1
  35. package/dist/features/yith-archive/functions/compress.js.map +1 -1
  36. package/dist/features/yith-archive/functions/opencode-import.d.ts +67 -0
  37. package/dist/features/yith-archive/functions/opencode-import.d.ts.map +1 -0
  38. package/dist/features/yith-archive/functions/opencode-import.js +272 -0
  39. package/dist/features/yith-archive/functions/opencode-import.js.map +1 -0
  40. package/dist/features/yith-archive/index.d.ts.map +1 -1
  41. package/dist/features/yith-archive/index.js +4 -0
  42. package/dist/features/yith-archive/index.js.map +1 -1
  43. package/dist/features/yith-archive/providers/embedding/local.d.ts +22 -0
  44. package/dist/features/yith-archive/providers/embedding/local.d.ts.map +1 -1
  45. package/dist/features/yith-archive/providers/embedding/local.js +56 -2
  46. package/dist/features/yith-archive/providers/embedding/local.js.map +1 -1
  47. package/dist/features/yith-archive/state/bind-state.d.ts +84 -0
  48. package/dist/features/yith-archive/state/bind-state.d.ts.map +1 -0
  49. package/dist/features/yith-archive/state/bind-state.js +120 -0
  50. package/dist/features/yith-archive/state/bind-state.js.map +1 -0
  51. package/dist/features/yith-archive/state/schema.d.ts +14 -0
  52. package/dist/features/yith-archive/state/schema.d.ts.map +1 -1
  53. package/dist/features/yith-archive/state/schema.js +14 -0
  54. package/dist/features/yith-archive/state/schema.js.map +1 -1
  55. package/dist/hooks/cthulhu-auto.d.ts +1 -1
  56. package/dist/hooks/cthulhu-auto.d.ts.map +1 -1
  57. package/dist/hooks/cthulhu-auto.js +75 -11
  58. package/dist/hooks/cthulhu-auto.js.map +1 -1
  59. package/dist/hooks/cthulhu-preflight.d.ts +45 -0
  60. package/dist/hooks/cthulhu-preflight.d.ts.map +1 -0
  61. package/dist/hooks/cthulhu-preflight.js +91 -0
  62. package/dist/hooks/cthulhu-preflight.js.map +1 -0
  63. package/package.json +5 -2
  64. /package/commands/{bind-necronomicon.md → necronomicon-bind.md} +0 -0
@@ -0,0 +1,290 @@
1
+ import { logger } from "../state/logger.js";
2
+ import { KV } from "../state/schema.js";
3
+ import { createWorkPacket, planLoopBatches, } from "../state/work-packets.js";
4
+ import { COMPRESSION_SYSTEM, buildCompressionPrompt, } from "../prompts/compression.js";
5
+ import { parseCompressionXml } from "./compress.js";
6
+ // ============================================================================
7
+ // Raw-observation detection + queue building
8
+ // ============================================================================
9
+ /**
10
+ * Walk every session and collect the IDs of observations that don't
11
+ * look compressed yet. "Raw" = missing `title` (CompressedObservation
12
+ * always has one). Returns oldest-first so users see progress on
13
+ * historical data before new arrivals.
14
+ *
15
+ * This is an O(sessions * obs_per_session) scan. Acceptable for
16
+ * bind-time — the alternative (a separate raw-queue KV scope) means
17
+ * two sources of truth and drift risk.
18
+ */
19
+ async function collectRawObservations(kv, limit, projectFilter) {
20
+ const sessions = await kv.list(KV.sessions).catch(() => []);
21
+ const results = [];
22
+ for (const session of sessions) {
23
+ if (projectFilter && session.project !== projectFilter)
24
+ continue;
25
+ const obs = await kv
26
+ .list(KV.observations(session.id))
27
+ .catch(() => []);
28
+ for (const o of obs) {
29
+ // Raw observations have hookType + userPrompt/toolName, but
30
+ // no `title` field. CompressedObservation always has title.
31
+ const isRaw = !("title" in o) || !o.title;
32
+ if (!isRaw)
33
+ continue;
34
+ if (!o.id || !o.timestamp)
35
+ continue;
36
+ results.push({
37
+ obsId: o.id,
38
+ sessionId: session.id,
39
+ timestamp: o.timestamp,
40
+ });
41
+ }
42
+ }
43
+ // Oldest first. Clamp to limit.
44
+ results.sort((a, b) => new Date(a.timestamp).getTime() - new Date(b.timestamp).getTime());
45
+ return results.slice(0, limit);
46
+ }
47
+ /**
48
+ * Decrement the pending-compression counter after a successful
49
+ * compression write. Mirrors the helper in backfill.ts — kept inline
50
+ * here to avoid cross-module import churn.
51
+ */
52
+ async function decrementPending(kv, delta = 1) {
53
+ const existing = (await kv
54
+ .get(KV.pendingCompression, "state")
55
+ .catch(() => null)) ?? { count: 0, updatedAt: "" };
56
+ await kv.set(KV.pendingCompression, "state", {
57
+ count: Math.max(0, existing.count - delta),
58
+ updatedAt: new Date().toISOString(),
59
+ });
60
+ }
61
+ /**
62
+ * Build a WorkPacket for a single raw observation. The packet's user
63
+ * prompt is whatever compression context we can reconstruct from the
64
+ * raw obs — for the bind-path raws that means the original user prompt
65
+ * or tool invocation, fed through the same buildCompressionPrompt
66
+ * helper the direct compress path uses.
67
+ */
68
+ function packetForRawObs(raw) {
69
+ const userPrompt = buildCompressionPrompt({
70
+ hookType: raw.hookType ?? "conversation",
71
+ toolName: raw.toolName,
72
+ toolInput: raw.toolInput,
73
+ toolOutput: raw.toolOutput,
74
+ userPrompt: raw.userPrompt,
75
+ timestamp: raw.timestamp ?? new Date().toISOString(),
76
+ });
77
+ return createWorkPacket({
78
+ kind: "compress",
79
+ systemPrompt: COMPRESSION_SYSTEM,
80
+ userPrompt,
81
+ purpose: `compress raw observation ${raw.id ?? "(unknown)"}`,
82
+ });
83
+ }
84
+ // ============================================================================
85
+ // Batch construction
86
+ // ============================================================================
87
+ /**
88
+ * Build the next batch of packets by dequeuing from the state's queue
89
+ * starting at batchStart and advancing by batchSize. Loads each raw
90
+ * obs fresh from KV so we have its prompt data, constructs a packet,
91
+ * records a task binding packet→obs for the consume pass.
92
+ *
93
+ * Tasks whose obs can't be loaded (deleted between enqueue and this
94
+ * call) are logged and skipped; they don't break the whole batch.
95
+ */
96
+ async function buildCompressBatch(kv, state) {
97
+ const end = Math.min(state.batchStart + state.batchSize, state.queue.length);
98
+ const packets = [];
99
+ state.currentBatch = [];
100
+ for (let i = state.batchStart; i < end; i++) {
101
+ const q = state.queue[i];
102
+ const raw = await kv
103
+ .get(KV.observations(q.sessionId), q.obsId)
104
+ .catch(() => null);
105
+ if (!raw) {
106
+ logger.warn("compress-batch: raw obs vanished mid-run", {
107
+ obsId: q.obsId,
108
+ });
109
+ state.failed++;
110
+ continue;
111
+ }
112
+ const packet = packetForRawObs(raw);
113
+ packets.push(packet);
114
+ state.currentBatch.push({
115
+ obsId: q.obsId,
116
+ sessionId: q.sessionId,
117
+ packetId: packet.id,
118
+ rawTimestamp: q.timestamp,
119
+ });
120
+ }
121
+ return packets;
122
+ }
123
+ /**
124
+ * Parse a compression completion and overwrite the raw observation
125
+ * with a CompressedObservation. Returns true on success so the caller
126
+ * can bump its counter.
127
+ */
128
+ async function writeCompressedFromCompletion(kv, task, completion) {
129
+ const parsed = parseCompressionXml(completion);
130
+ if (!parsed)
131
+ return false;
132
+ const qualityScore = Math.min(100, Math.max(0, (parsed.importance ?? 5) * 10));
133
+ const compressed = {
134
+ id: task.obsId,
135
+ sessionId: task.sessionId,
136
+ timestamp: task.rawTimestamp,
137
+ ...parsed,
138
+ confidence: qualityScore / 100,
139
+ };
140
+ await kv.set(KV.observations(task.sessionId), task.obsId, compressed);
141
+ await decrementPending(kv, 1);
142
+ return true;
143
+ }
144
+ // ============================================================================
145
+ // State machine registration
146
+ // ============================================================================
147
+ export function registerCompressBatchFunction(sdk, kv) {
148
+ sdk.registerFunction({
149
+ id: "mem::compress-batch-step",
150
+ description: "Loop-style state machine that compresses every pending raw " +
151
+ "observation in the archive via the work-packet protocol.",
152
+ }, async (input) => {
153
+ const { step, originalArgs, intermediateState, completions } = input;
154
+ // --------------------- State 0: entry ---------------------
155
+ if (step === 0) {
156
+ const limit = originalArgs.limit ?? 200;
157
+ const queue = await collectRawObservations(kv, limit, originalArgs.projectCwd);
158
+ if (queue.length === 0) {
159
+ return {
160
+ done: true,
161
+ result: {
162
+ success: true,
163
+ compressed: 0,
164
+ failed: 0,
165
+ reason: "no raw observations pending",
166
+ },
167
+ };
168
+ }
169
+ // Rough total-bytes estimate for planLoopBatches. We don't
170
+ // have exact prompt sizes yet (they get built per-packet) so
171
+ // assume ~2 KB per raw prompt on average. planLoopBatches
172
+ // uses this only to pick a batch size.
173
+ const plan = planLoopBatches(queue.length, queue.length * 2048);
174
+ const state = {
175
+ originalArgs,
176
+ queue,
177
+ batchSize: plan.batchSize,
178
+ totalBatches: plan.totalBatches,
179
+ batchStart: 0,
180
+ currentBatch: [],
181
+ compressed: 0,
182
+ failed: 0,
183
+ batchNum: 1,
184
+ };
185
+ const firstBatch = await buildCompressBatch(kv, state);
186
+ if (firstBatch.length === 0) {
187
+ // Every candidate vanished between enqueue and batch build.
188
+ return {
189
+ done: true,
190
+ result: {
191
+ success: true,
192
+ compressed: 0,
193
+ failed: state.failed,
194
+ reason: "raw queue drained before first batch",
195
+ },
196
+ };
197
+ }
198
+ return {
199
+ done: false,
200
+ nextStep: 1,
201
+ intermediateState: state,
202
+ workPackets: firstBatch,
203
+ instructions: `Compress-batch — batch ${state.batchNum} of ${state.totalBatches}. ` +
204
+ `Run each of these ${firstBatch.length} compression prompts and ` +
205
+ "commit all completions together. The next response is either " +
206
+ "the next batch or terminal.",
207
+ };
208
+ }
209
+ // --------------------- State 1: consume + maybe emit next ---
210
+ if (step === 1) {
211
+ if (!intermediateState) {
212
+ return {
213
+ done: true,
214
+ result: {
215
+ success: false,
216
+ error: "compress-batch-step: missing intermediate state at step 1",
217
+ },
218
+ };
219
+ }
220
+ for (const task of intermediateState.currentBatch) {
221
+ const completion = completions?.[task.packetId];
222
+ if (!completion) {
223
+ intermediateState.failed++;
224
+ continue;
225
+ }
226
+ try {
227
+ const ok = await writeCompressedFromCompletion(kv, task, completion);
228
+ if (ok)
229
+ intermediateState.compressed++;
230
+ else
231
+ intermediateState.failed++;
232
+ }
233
+ catch (err) {
234
+ logger.warn("compress-batch: write failed", {
235
+ obsId: task.obsId,
236
+ error: err instanceof Error ? err.message : String(err),
237
+ });
238
+ intermediateState.failed++;
239
+ }
240
+ }
241
+ // Advance cursor past the consumed batch.
242
+ intermediateState.batchStart += intermediateState.batchSize;
243
+ intermediateState.currentBatch = [];
244
+ if (intermediateState.batchStart >= intermediateState.queue.length) {
245
+ logger.info("compress-batch complete", {
246
+ compressed: intermediateState.compressed,
247
+ failed: intermediateState.failed,
248
+ });
249
+ return {
250
+ done: true,
251
+ result: {
252
+ success: true,
253
+ compressed: intermediateState.compressed,
254
+ failed: intermediateState.failed,
255
+ },
256
+ };
257
+ }
258
+ // More batches to emit.
259
+ intermediateState.batchNum++;
260
+ const nextBatch = await buildCompressBatch(kv, intermediateState);
261
+ if (nextBatch.length === 0) {
262
+ return {
263
+ done: true,
264
+ result: {
265
+ success: true,
266
+ compressed: intermediateState.compressed,
267
+ failed: intermediateState.failed,
268
+ reason: "queue drained mid-run",
269
+ },
270
+ };
271
+ }
272
+ return {
273
+ done: false,
274
+ nextStep: 1,
275
+ intermediateState,
276
+ workPackets: nextBatch,
277
+ instructions: `Compress-batch — batch ${intermediateState.batchNum} of ${intermediateState.totalBatches}. ` +
278
+ `Run these ${nextBatch.length} compression prompts.`,
279
+ };
280
+ }
281
+ return {
282
+ done: true,
283
+ result: {
284
+ success: false,
285
+ error: `compress-batch-step: unknown step ${step}`,
286
+ },
287
+ };
288
+ });
289
+ }
290
+ //# sourceMappingURL=compress-batch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compress-batch.js","sourceRoot":"","sources":["../../../../src/features/yith-archive/functions/compress-batch.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  import type { FakeSdk } from "../state/fake-sdk.js";
2
- import type { MemoryProvider } from "../types.js";
2
+ import type { CompressedObservation, MemoryProvider } from "../types.js";
3
3
  import { StateKV } from "../state/kv.js";
4
4
  import type { MetricsStore } from "../eval/metrics-store.js";
5
+ export declare function parseCompressionXml(xml: string): Omit<CompressedObservation, "id" | "sessionId" | "timestamp"> | null;
5
6
  export declare function registerCompressFunction(sdk: FakeSdk, kv: StateKV, provider: MemoryProvider, metricsStore?: MetricsStore): void;
6
7
  /**
7
8
  * Work-packet variant of mem::compress. Single attempt — no self-correct
@@ -1 +1 @@
1
- {"version":3,"file":"compress.d.ts","sourceRoot":"","sources":["../../../../src/features/yith-archive/functions/compress.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAEnD,OAAO,KAAK,EAIV,cAAc,EACf,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAWzC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AA+C7D,wBAAgB,wBAAwB,CACtC,GAAG,EAAE,OAAO,EACZ,EAAE,EAAE,OAAO,EACX,QAAQ,EAAE,cAAc,EACxB,YAAY,CAAC,EAAE,YAAY,GAC1B,IAAI,CA6HN;AAcD;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAC1C,GAAG,EAAE,OAAO,EACZ,EAAE,EAAE,OAAO,EACX,YAAY,CAAC,EAAE,YAAY,GAC1B,IAAI,CAmJN"}
1
+ {"version":3,"file":"compress.d.ts","sourceRoot":"","sources":["../../../../src/features/yith-archive/functions/compress.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAEnD,OAAO,KAAK,EAEV,qBAAqB,EAErB,cAAc,EACf,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAWzC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAwB7D,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,MAAM,GACV,IAAI,CAAC,qBAAqB,EAAE,IAAI,GAAG,WAAW,GAAG,WAAW,CAAC,GAAG,IAAI,CAmBtE;AAED,wBAAgB,wBAAwB,CACtC,GAAG,EAAE,OAAO,EACZ,EAAE,EAAE,OAAO,EACX,QAAQ,EAAE,cAAc,EACxB,YAAY,CAAC,EAAE,YAAY,GAC1B,IAAI,CA6HN;AAcD;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAC1C,GAAG,EAAE,OAAO,EACZ,EAAE,EAAE,OAAO,EACX,YAAY,CAAC,EAAE,YAAY,GAC1B,IAAI,CAmJN"}
@@ -24,7 +24,7 @@ const VALID_TYPES = new Set([
24
24
  "task",
25
25
  "other",
26
26
  ]);
27
- function parseCompressionXml(xml) {
27
+ export function parseCompressionXml(xml) {
28
28
  const rawType = getXmlTag(xml, "type");
29
29
  const title = getXmlTag(xml, "title");
30
30
  if (!rawType || !title)
@@ -1 +1 @@
1
- {"version":3,"file":"compress.js","sourceRoot":"","sources":["../../../../src/features/yith-archive/functions/compress.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compress.js","sourceRoot":"","sources":["../../../../src/features/yith-archive/functions/compress.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,67 @@
1
+ import type { FakeSdk } from "../state/fake-sdk.js";
2
+ import type { StateKV } from "../state/kv.js";
3
+ import type { RawObservation } from "../types.js";
4
+ /**
5
+ * mem::import-opencode — pull past sessions out of a legacy oh-my-
6
+ * opencode install and re-express them as Yith RawObservations so
7
+ * the user's existing agentic history carries forward into the
8
+ * Necronomicon.
9
+ *
10
+ * Target: `~/.local/share/opencode/opencode.db` — a SQLite3 database
11
+ * with tables `project / session / message / part`. The `part.data`
12
+ * field is a JSON blob with `{type: "text" | "tool" | "step-start" |
13
+ * "step-finish" | "reasoning" | "patch" | "file" | "compaction"}`.
14
+ * We keep `text` (conversational) and `tool` (tool invocations) and
15
+ * drop the rest.
16
+ *
17
+ * Idempotency: every observation gets ID `oc:<sessionId>:<partId>`
18
+ * so a re-import skips existing entries via the standard KV upsert
19
+ * check. Cursors in `KV.opencodeImportCursors` record the highest
20
+ * time_created seen per session so incremental imports don't re-scan
21
+ * old history.
22
+ *
23
+ * sqlite3 access: we shell out to the `sqlite3` CLI with the `-json`
24
+ * output format instead of adding `better-sqlite3` as a runtime dep.
25
+ * The CLI is available on every Unix by default; on Windows users can
26
+ * install it via winget / scoop. If sqlite3 isn't on PATH, the
27
+ * function returns a clear error.
28
+ */
29
+ interface OpencodePartData {
30
+ type?: string;
31
+ text?: string;
32
+ tool?: string;
33
+ callID?: string;
34
+ state?: {
35
+ status?: string;
36
+ input?: unknown;
37
+ output?: unknown;
38
+ };
39
+ [key: string]: unknown;
40
+ }
41
+ export interface OpencodePartContext {
42
+ partId: string;
43
+ messageId: string;
44
+ sessionId: string;
45
+ partData: OpencodePartData;
46
+ messageRole: string | undefined;
47
+ timestamp: string;
48
+ }
49
+ /**
50
+ * Pure mapper from an opencode part to a Yith RawObservation. Returns
51
+ * null for part types we intentionally skip (step-start/finish,
52
+ * reasoning, patch, file, compaction) so the caller can filter with
53
+ * a simple null check.
54
+ *
55
+ * The ID `oc:<sessionId>:<partId>` gives idempotency: re-importing
56
+ * the same opencode DB produces the same IDs, so the upsert skip
57
+ * logic in the scanner deduplicates automatically.
58
+ */
59
+ export declare function opencodePartToRawObservation(ctx: OpencodePartContext): RawObservation | null;
60
+ /**
61
+ * True if the `sqlite3` CLI is on PATH. Used by tests to skip the
62
+ * integration assertion when the runner doesn't have sqlite installed.
63
+ */
64
+ export declare function isSqlite3Available(): boolean;
65
+ export declare function registerOpencodeImportFunction(sdk: FakeSdk, kv: StateKV): void;
66
+ export {};
67
+ //# sourceMappingURL=opencode-import.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opencode-import.d.ts","sourceRoot":"","sources":["../../../../src/features/yith-archive/functions/opencode-import.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAG7C,OAAO,KAAK,EAAY,cAAc,EAAW,MAAM,aAAa,CAAA;AAEpE;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAMH,UAAU,gBAAgB;IACxB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE;QACN,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,KAAK,CAAC,EAAE,OAAO,CAAA;QACf,MAAM,CAAC,EAAE,OAAO,CAAA;KACjB,CAAA;IACD,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,gBAAgB,CAAA;IAC1B,WAAW,EAAE,MAAM,GAAG,SAAS,CAAA;IAC/B,SAAS,EAAE,MAAM,CAAA;CAClB;AAyBD;;;;;;;;;GASG;AACH,wBAAgB,4BAA4B,CAC1C,GAAG,EAAE,mBAAmB,GACvB,cAAc,GAAG,IAAI,CAmCvB;AAMD;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,OAAO,CAO5C;AA6DD,wBAAgB,8BAA8B,CAC5C,GAAG,EAAE,OAAO,EACZ,EAAE,EAAE,OAAO,GACV,IAAI,CAmKN"}