create-merlin-brain 3.12.0 → 3.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/bin/install.cjs +10 -10
  2. package/dist/server/api/types.d.ts +7 -0
  3. package/dist/server/api/types.d.ts.map +1 -1
  4. package/dist/server/server.js +8 -8
  5. package/dist/server/server.js.map +1 -1
  6. package/dist/server/session-coach.js +9 -9
  7. package/dist/server/session-coach.js.map +1 -1
  8. package/dist/server/stats.js +7 -7
  9. package/dist/server/stats.js.map +1 -1
  10. package/dist/server/tools/__tests__/augmentation.test.d.ts +8 -0
  11. package/dist/server/tools/__tests__/augmentation.test.d.ts.map +1 -0
  12. package/dist/server/tools/__tests__/augmentation.test.js +76 -0
  13. package/dist/server/tools/__tests__/augmentation.test.js.map +1 -0
  14. package/dist/server/tools/__tests__/route-helpers.test.d.ts +5 -0
  15. package/dist/server/tools/__tests__/route-helpers.test.d.ts.map +1 -0
  16. package/dist/server/tools/__tests__/route-helpers.test.js +49 -0
  17. package/dist/server/tools/__tests__/route-helpers.test.js.map +1 -0
  18. package/dist/server/tools/agent-spawn.d.ts +25 -0
  19. package/dist/server/tools/agent-spawn.d.ts.map +1 -0
  20. package/dist/server/tools/agent-spawn.js +95 -0
  21. package/dist/server/tools/agent-spawn.js.map +1 -0
  22. package/dist/server/tools/augmentation.d.ts +45 -0
  23. package/dist/server/tools/augmentation.d.ts.map +1 -0
  24. package/dist/server/tools/augmentation.js +167 -0
  25. package/dist/server/tools/augmentation.js.map +1 -0
  26. package/dist/server/tools/project.js +1 -1
  27. package/dist/server/tools/project.js.map +1 -1
  28. package/dist/server/tools/route-helpers.d.ts +45 -0
  29. package/dist/server/tools/route-helpers.d.ts.map +1 -0
  30. package/dist/server/tools/route-helpers.js +93 -0
  31. package/dist/server/tools/route-helpers.js.map +1 -0
  32. package/dist/server/tools/route.d.ts +4 -3
  33. package/dist/server/tools/route.d.ts.map +1 -1
  34. package/dist/server/tools/route.js +63 -308
  35. package/dist/server/tools/route.js.map +1 -1
  36. package/files/CLAUDE.md +66 -5
  37. package/files/agents/merlin.md +21 -13
  38. package/files/hooks/config-change.sh +2 -2
  39. package/files/hooks/notify-desktop.sh +2 -2
  40. package/files/hooks/notify-webhook.sh +1 -1
  41. package/files/hooks/session-start-context.sh +1 -1
  42. package/files/hooks/task-completed-verify.sh +2 -2
  43. package/files/hooks/worktree-create.sh +1 -1
  44. package/files/hooks/worktree-remove.sh +1 -1
  45. package/package.json +5 -2
@@ -0,0 +1,167 @@
1
+ /**
2
+ * Augmentation — Cloud agent discovery, caching, and expertise injection.
3
+ *
4
+ * When a task matches a cloud-indexed agent (A/A+/A++), this module:
5
+ * 1. Discovers the match via catalog search
6
+ * 2. Fetches the agent's system prompt (cache-first, API fallback)
7
+ * 3. Returns structured data for handoff injection
8
+ *
9
+ * Cache: ~/.claude/agents/_cloud/<slug>.md
10
+ * - 7-day TTL with stale-while-revalidate fallback
11
+ * - 50-file LRU cap with mtime-based eviction
12
+ * - Underscore prefix keeps _cloud/ out of agent loader's flat directory scan
13
+ */
14
+ import { existsSync, mkdirSync, readFileSync, writeFileSync, readdirSync, statSync, unlinkSync } from 'fs';
15
+ import { join } from 'path';
16
+ import { homedir } from 'os';
17
+ const CLOUD_CACHE_DIR = join(homedir(), '.claude', 'agents', '_cloud');
18
+ const TTL_MS = 7 * 24 * 60 * 60 * 1000; // 7 days
19
+ const MAX_CACHE_FILES = 50;
20
+ /** Agents that should NOT be augmented (non-code-writing agents) */
21
+ const AUGMENT_EXCLUDED = new Set([
22
+ 'docs-keeper', 'merlin-planner', 'merlin-verifier',
23
+ 'merlin-reviewer', 'product-spec', 'system-architect',
24
+ ]);
25
+ function getCachedPrompt(slug, ignoreExpiry = false) {
26
+ const filePath = join(CLOUD_CACHE_DIR, `${slug}.md`);
27
+ if (!existsSync(filePath))
28
+ return null;
29
+ try {
30
+ const content = readFileSync(filePath, 'utf-8');
31
+ const fmMatch = content.match(/^---\n([\s\S]*?)\n---\n([\s\S]*)$/);
32
+ if (!fmMatch)
33
+ return null;
34
+ const frontmatter = fmMatch[1];
35
+ const systemPrompt = fmMatch[2].trim();
36
+ if (!systemPrompt || systemPrompt.length < 50)
37
+ return null;
38
+ const cachedAtMatch = frontmatter.match(/^cached_at:\s*(.+)$/m);
39
+ if (!ignoreExpiry && cachedAtMatch) {
40
+ const cachedAt = new Date(cachedAtMatch[1]).getTime();
41
+ if (Date.now() - cachedAt > TTL_MS)
42
+ return null;
43
+ }
44
+ const gradeMatch = frontmatter.match(/^grade:\s*(.+)$/m);
45
+ const grade = gradeMatch ? gradeMatch[1].trim() : 'A';
46
+ return { systemPrompt, grade };
47
+ }
48
+ catch {
49
+ return null;
50
+ }
51
+ }
52
+ function setCachedPrompt(slug, grade, systemPrompt) {
53
+ try {
54
+ mkdirSync(CLOUD_CACHE_DIR, { recursive: true });
55
+ const files = readdirSync(CLOUD_CACHE_DIR).filter(f => f.endsWith('.md'));
56
+ if (files.length >= MAX_CACHE_FILES) {
57
+ const sorted = files
58
+ .map(f => ({ name: f, mtime: statSync(join(CLOUD_CACHE_DIR, f)).mtimeMs }))
59
+ .sort((a, b) => a.mtime - b.mtime);
60
+ const toRemove = sorted.slice(0, files.length - MAX_CACHE_FILES + 1);
61
+ for (const f of toRemove) {
62
+ unlinkSync(join(CLOUD_CACHE_DIR, f.name));
63
+ }
64
+ }
65
+ const content = [
66
+ '---',
67
+ `slug: ${slug}`,
68
+ `grade: ${grade}`,
69
+ `cached_at: ${new Date().toISOString()}`,
70
+ `source: merlin-cloud-index`,
71
+ '---',
72
+ systemPrompt,
73
+ ].join('\n');
74
+ writeFileSync(join(CLOUD_CACHE_DIR, `${slug}.md`), content, 'utf-8');
75
+ }
76
+ catch (err) {
77
+ console.error(`[augmentation] Failed to write cache for ${slug}: ${err}`);
78
+ }
79
+ }
80
+ // ─── Discovery ───────────────────────────────────────────────────────
81
+ /**
82
+ * Discovery-first routing: check the catalog for a better-fit
83
+ * community/specialist agent. Returns a hint if a high-scoring
84
+ * match exists (A/A+/A++), otherwise null.
85
+ */
86
+ export async function discoverBetterAgent(client, task, chosenAgent) {
87
+ try {
88
+ const results = await client.searchAgentsIndex(task, { limit: 3 });
89
+ if (!results || results.length === 0)
90
+ return null;
91
+ const topMatch = results[0];
92
+ const grade = (topMatch.grade || '').toUpperCase();
93
+ if ((grade === 'A++' || grade === 'A+' || grade === 'A') && topMatch.slug !== chosenAgent && topMatch.name !== chosenAgent) {
94
+ return {
95
+ name: topMatch.name,
96
+ grade: topMatch.grade || '',
97
+ description: topMatch.description || '',
98
+ slug: topMatch.slug,
99
+ };
100
+ }
101
+ return null;
102
+ }
103
+ catch {
104
+ return null;
105
+ }
106
+ }
107
+ // ─── Augmentation ────────────────────────────────────────────────────
108
+ /**
109
+ * Check whether an agent should be augmented.
110
+ * Returns true for all code-writing agents (opt-out model).
111
+ */
112
+ export function shouldAugment(agent) {
113
+ return !AUGMENT_EXCLUDED.has(agent);
114
+ }
115
+ /**
116
+ * Fetch augmentation data for a discovered cloud agent.
117
+ * Checks local disk cache first, falls back to API, caches result.
118
+ * Returns null silently on any failure — augmentation never blocks routing.
119
+ */
120
+ export async function fetchAugmentation(client, hint) {
121
+ try {
122
+ const cached = getCachedPrompt(hint.slug);
123
+ if (cached) {
124
+ console.error(`[augmentation] Cache hit: ${hint.slug}`);
125
+ return { slug: hint.slug, grade: cached.grade, description: hint.description, systemPrompt: cached.systemPrompt };
126
+ }
127
+ const detail = await client.getAgentIndexDetail(hint.slug);
128
+ if (!detail?.systemPrompt || detail.systemPrompt.length < 50) {
129
+ console.error(`[augmentation] Skipping: prompt too short for ${hint.slug}`);
130
+ return null;
131
+ }
132
+ setCachedPrompt(hint.slug, hint.grade, detail.systemPrompt);
133
+ console.error(`[augmentation] Fetched: ${hint.slug} (${hint.grade}) — ${detail.systemPrompt.length} chars`);
134
+ return { slug: hint.slug, grade: hint.grade, description: hint.description, systemPrompt: detail.systemPrompt };
135
+ }
136
+ catch (err) {
137
+ console.error(`[augmentation] Fetch failed for ${hint.slug}: ${err}`);
138
+ const stale = getCachedPrompt(hint.slug, true);
139
+ if (stale) {
140
+ console.error(`[augmentation] Using stale cache for ${hint.slug}`);
141
+ return { slug: hint.slug, grade: stale.grade, description: hint.description, systemPrompt: stale.systemPrompt };
142
+ }
143
+ return null;
144
+ }
145
+ }
146
+ /**
147
+ * Build the domain expertise handoff section from augmentation data.
148
+ * Caps injected content at 4000 characters.
149
+ */
150
+ export function buildAugmentationSection(augmentation) {
151
+ const maxChars = 4000;
152
+ const promptContent = augmentation.systemPrompt.length > maxChars
153
+ ? augmentation.systemPrompt.slice(0, maxChars) + '\n[... truncated, showing first 4000 chars]'
154
+ : augmentation.systemPrompt;
155
+ return [
156
+ `## Domain Expertise (auto-augmented)`,
157
+ `Source: ${augmentation.slug} (${augmentation.grade}) — from Merlin cloud catalog`,
158
+ '---',
159
+ promptContent,
160
+ '---',
161
+ 'NOTE: This is supplementary domain knowledge. Your primary identity, project',
162
+ 'conventions, and coding style remain unchanged. Use this expertise to inform',
163
+ 'your implementation choices, not to override project patterns.',
164
+ '',
165
+ ];
166
+ }
167
+ //# sourceMappingURL=augmentation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"augmentation.js","sourceRoot":"","sources":["../../../src/server/tools/augmentation.ts"],"names":[],"mappings":"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"}
@@ -190,7 +190,7 @@ export function registerProjectTools(server, getClient, resolveRepoId, getRepoRo
190
190
  // Check for checkpoint/resume
191
191
  const checkpoint = cloudCheckpoint?.value;
192
192
  // Build response
193
- let response = `# 🔮 Project Status\n\n`;
193
+ let response = `# ⟡🔮 MERLIN › Project Status\n\n`;
194
194
  // Vision status
195
195
  response += `## Vision\n`;
196
196
  response += `- PROJECT.md: ${hasProject ? '✅' : '❌ Missing'}\n`;
@@ -1 +1 @@
1
- {"version":3,"file":"project.js","sourceRoot":"","sources":["../../../src/server/tools/project.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"project.js","sourceRoot":"","sources":["../../../src/server/tools/project.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAC/F,OAAO,EAAE,IAAI,EAAsB,OAAO,EAAE,MAAM,MAAM,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AA0CrD,yCAAyC;AACzC,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;AAwB7D,4CAA4C;AAC5C,MAAM,UAAU,oBAAoB,CAClC,MAAiB,EACjB,SAA6B,EAC7B,aAA2D,EAC3D,eAA6C;IAE7C,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,2EAA2E;IAC3E,+DAA+D;IAC/D,6BAA6B;IAC7B,+DAA+D;IAC/D,MAAM,CAAC,IAAI,CACT,sBAAsB,EACtB,sXAAsX,EACtX;QACE,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;aACnE,QAAQ,CAAC,iEAAiE,CAAC;QAC9E,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;KACxE,EACD,KAAK,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE;QAC/B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iDAAiD,EAAE,CAAC;oBACpF,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,eAAe,EAAE,CAAC;YACzC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iFAAiF,OAAO,CAAC,GAAG,EAAE,qJAAqJ,EAAE,CAAC;oBACtR,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;YAED,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;YAChD,MAAM,OAAO,GAAa,EAAE,CAAC;YAE7B,0DAA0D;YAC1D,IAAI,SAAS,KAAK,MAAM,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;gBACjD,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;oBAC5B,MAAM,WAAW,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;oBAEnD,+BAA+B;oBAC/B,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;oBACpC,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;wBAC/B,MAAM,GAAG,GAAG,YAAY,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC;wBAC3E,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;wBACnB,MAAM,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,GAAG,EAAE;4BACnC,OAAO,EAAE,IAAI,CAAC,OAAO;4BACrB,IAAI,EAAE,IAAI,CAAC,IAAI;4BACf,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;yBACnC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;wBACxB,OAAO,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;oBACzC,CAAC;oBAED,sCAAsC;oBACtC,MAAM,YAAY,GAAG,wBAAwB,CAAC,WAAW,CAAC,CAAC;oBAC3D,MAAM,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,gBAAgB,EAAE,YAAY,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;oBACrF,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;oBACzC,SAAS,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;oBAEhC,2DAA2D;oBAC3D,IAAI,CAAC;wBACH,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;wBACrD,MAAM,iBAAiB,GAAG,SAAS,CAAC,IAAI;6BACrC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;6BACjD,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;wBAE1B,KAAK,MAAM,QAAQ,IAAI,iBAAiB,EAAE,CAAC;4BACzC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;gCAC7B,MAAM,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;gCAC3C,OAAO,CAAC,IAAI,CAAC,sBAAsB,QAAQ,EAAE,CAAC,CAAC;4BACjD,CAAC;wBACH,CAAC;oBACH,CAAC;oBAAC,OAAO,UAAU,EAAE,CAAC;wBACpB,6CAA6C;wBAC7C,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;oBAC3C,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;gBACxD,CAAC;YACH,CAAC;YAED,sBAAsB;YACtB,IAAI,SAAS,KAAK,MAAM,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;gBACjD,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;gBACrD,MAAM,YAAY,GAAG,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC;gBAEtF,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;oBAC7B,SAAS,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC9C,CAAC;gBAED,KAAK,MAAM,OAAO,IAAI,YAAY,EAAE,CAAC;oBACnC,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;oBAC1D,IAAI,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;wBAC1B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;wBACjF,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;wBAE7C,0BAA0B;wBAC1B,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;wBAClC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;4BACzB,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;wBAC1C,CAAC;wBAED,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;wBACtD,OAAO,CAAC,IAAI,CAAC,aAAa,QAAQ,EAAE,CAAC,CAAC;oBACxC,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC;gBAChC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;gBACpB,CAAC,CAAC,iBAAiB,CAAC;YAEtB,MAAM,YAAY,GAAG,sBAAsB,CAAC,UAAU,EAAE;gBACtD,GAAG,EAAE,YAAY;gBACjB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,SAAS,EAAE,IAAI;gBACf,OAAO,EAAE,cAAc,SAAS,MAAM,OAAO,CAAC,MAAM,eAAe;aACpE,CAAC,CAAC;YACH,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,YAAY,GAAG,YAAY,OAAO,EAAE;qBAC3C,CAAC;aACH,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,2BAA2B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE;qBACtF,CAAC;gBACF,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,2EAA2E;IAC3E,+DAA+D;IAC/D,kCAAkC;IAClC,+DAA+D;IAC/D,MAAM,CAAC,IAAI,CACT,2BAA2B,EAC3B,oZAAoZ,EACpZ;QACE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;KACxE,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QACpB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iDAAiD,EAAE,CAAC;oBACpF,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,eAAe,EAAE,CAAC;YACzC,MAAM,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAElE,oBAAoB;YACpB,MAAM,eAAe,GAAG,WAAW,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC;YACnF,MAAM,eAAe,GAAG,WAAW,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC;YACnF,MAAM,oBAAoB,GAAG,WAAW,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC,CAAC;YAE7F,oBAAoB;YACpB,MAAM,CAAC,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAClF,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;gBAC9D,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;gBAC9D,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;gBACrE,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;aACzD,CAAC,CAAC;YAEH,mBAAmB;YACnB,MAAM,UAAU,GAAG,eAAe,IAAI,CAAC,CAAC,YAAY,CAAC;YACrD,MAAM,UAAU,GAAG,eAAe,IAAI,CAAC,CAAC,YAAY,CAAC;YACrD,MAAM,eAAe,GAAG,oBAAoB,CAAC;YAE7C,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,IAAI,EAAE,CAAC;YACrC,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC;YACpG,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC;YAC1E,MAAM,cAAc,GAAG,YAAY,CAAC,MAAM,CAAC;YAC3C,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC;YAEhC,wBAAwB;YACxB,IAAI,UAAU,GAAgC,aAAa,CAAC;YAC5D,IAAI,eAAe,GAAG,KAAK,CAAC;YAE5B,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,UAAU,GAAG,aAAa,CAAC;YAC7B,CAAC;iBAAM,IAAI,CAAC,UAAU,EAAE,CAAC;gBACvB,UAAU,GAAG,mBAAmB,CAAC;YACnC,CAAC;iBAAM,IAAI,cAAc,KAAK,CAAC,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;gBAClD,UAAU,GAAG,QAAQ,CAAC;YACxB,CAAC;iBAAM,IAAI,cAAc,KAAK,CAAC,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;gBACpD,UAAU,GAAG,mBAAmB,CAAC;YACnC,CAAC;iBAAM,CAAC;gBACN,UAAU,GAAG,SAAS,CAAC;YACzB,CAAC;YAED,8BAA8B;YAC9B,MAAM,UAAU,GAAG,eAAe,EAAE,KAAK,CAAC;YAE1C,iBAAiB;YACjB,IAAI,QAAQ,GAAG,mCAAmC,CAAC;YAEnD,gBAAgB;YAChB,QAAQ,IAAI,aAAa,CAAC;YAC1B,QAAQ,IAAI,iBAAiB,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC;YAChE,QAAQ,IAAI,iBAAiB,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC;YAChE,QAAQ,IAAI,sBAAsB,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,MAAM,CAAC;YAE7E,cAAc;YACd,QAAQ,IAAI,YAAY,CAAC;YACzB,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;gBACrB,QAAQ,IAAI,uDAAuD,CAAC;YACtE,CAAC;iBAAM,CAAC;gBACN,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,MAAM,GAAG,UAAU,CAAC,GAAG,GAAG,CAAC,CAAC;gBACxE,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC,CAAC;gBACvG,QAAQ,IAAI,aAAa,WAAW,IAAI,QAAQ,KAAK,CAAC;gBACtD,QAAQ,IAAI,gBAAgB,cAAc,CAAC,MAAM,IAAI,CAAC;gBACtD,QAAQ,IAAI,gBAAgB,cAAc,IAAI,CAAC;gBAC/C,QAAQ,IAAI,YAAY,UAAU,MAAM,CAAC;YAC3C,CAAC;YAED,aAAa;YACb,IAAI,UAAU,EAAE,CAAC;gBACf,QAAQ,IAAI,sBAAsB,CAAC;gBACnC,QAAQ,IAAI,4BAA4B,UAAU,CAAC,SAAS,IAAI,SAAS,IAAI,CAAC;gBAC9E,QAAQ,IAAI,eAAe,UAAU,CAAC,WAAW,IAAI,SAAS,IAAI,CAAC;gBACnE,QAAQ,IAAI,UAAU,UAAU,CAAC,KAAK,IAAI,SAAS,MAAM,CAAC;YAC5D,CAAC;YAED,cAAc;YACd,QAAQ,IAAI,qBAAqB,CAAC;YAClC,MAAM,SAAS,GAAG;gBAChB,aAAa,EAAE,qDAAqD;gBACpE,mBAAmB,EAAE,uDAAuD;gBAC5E,YAAY,EAAE,8CAA8C;gBAC5D,SAAS,EAAE,6CAA6C;gBACxD,QAAQ,EAAE,iDAAiD;gBAC3D,UAAU,EAAE,oDAAoD;aACjE,CAAC;YACF,QAAQ,IAAI,GAAG,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC;YAE3C,cAAc;YACd,QAAQ,IAAI,OAAO,CAAC;YACpB,QAAQ,IAAI,kBAAkB,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,aAAa,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;YAExG,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;QACzD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,yBAAyB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE;qBACpF,CAAC;gBACF,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,4EAA4E;IAC5E,+DAA+D;IAC/D,6BAA6B;IAC7B,+DAA+D;IAC/D,MAAM,CAAC,IAAI,CACT,sBAAsB,EACtB,+WAA+W,EAC/W;QACE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;KACxE,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QACpB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4BAA4B,EAAE,CAAC;oBAC/D,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;YAED,gBAAgB;YAChB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;YAEpE,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC9B,uCAAuC;gBACvC,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;gBAC5E,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAChC,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBACjC,OAAO;wBACL,OAAO,EAAE,CAAC;gCACR,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,uCAAuC,IAAI,CAAC,KAAK,gBAAgB,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,KAAK,IAAI,SAAS,WAAW,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,IAAI,SAAS,+EAA+E;6BACpP,CAAC;qBACH,CAAC;gBACJ,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE,CAAC;4BACR,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,yJAAyJ;yBAChK,CAAC;iBACH,CAAC;YACJ,CAAC;YAED,4CAA4C;YAC5C,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAE7B,0CAA0C;YAC1C,MAAM,QAAQ,GAAG,MAAM,eAAe,EAAE,CAAC;YACzC,MAAM,YAAY,GAAa,EAAE,CAAC;YAElC,kCAAkC;YAClC,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,iBAAiB,CAAC,CAAC;gBAChE,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACzB,MAAM,WAAW,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;oBACpD,yCAAyC;oBACzC,MAAM,eAAe,GAAG,sBAAsB,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;oBACxE,IAAI,eAAe,EAAE,CAAC;wBACpB,YAAY,CAAC,IAAI,CAAC,wBAAwB,eAAe,EAAE,CAAC,CAAC;oBAC/D,CAAC;gBACH,CAAC;YACH,CAAC;YAED,qCAAqC;YACrC,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;YAC1E,IAAI,KAAK,EAAE,CAAC;gBACV,YAAY,CAAC,IAAI,CAAC,sBAAsB,KAAK,EAAE,CAAC,CAAC;YACnD,CAAC;YAED,iBAAiB;YACjB,IAAI,QAAQ,GAAG,oBAAoB,CAAC;YACpC,QAAQ,IAAI,MAAM,IAAI,CAAC,KAAK,MAAM,CAAC;YACnC,QAAQ,IAAI,cAAc,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,KAAK,IAAI,SAAS,IAAI,CAAC;YACzE,QAAQ,IAAI,aAAa,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,IAAI,SAAS,IAAI,CAAC;YACtE,QAAQ,IAAI,eAAe,IAAI,CAAC,WAAW,IAAI,KAAK,MAAM,CAAC;YAE3D,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,QAAQ,IAAI,oBAAoB,IAAI,CAAC,WAAW,MAAM,CAAC;YACzD,CAAC;YAED,4BAA4B;YAC5B,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5B,QAAQ,IAAI,oCAAoC,CAAC;gBACjD,QAAQ,IAAI,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAC/C,CAAC;YAED,QAAQ,IAAI,kGAAkG,CAAC;YAE/G,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;QACzD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,4BAA4B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE;qBACvF,CAAC;gBACF,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,4EAA4E;IAC5E,+DAA+D;IAC/D,4BAA4B;IAC5B,+DAA+D;IAC/D,MAAM,CAAC,IAAI,CACT,qBAAqB,EACrB,yYAAyY,EACzY;QACE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;KACxE,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QACpB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4BAA4B,EAAE,CAAC;oBAC/D,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;YAED,yBAAyB;YACzB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YACjD,MAAM,YAAY,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAC1D,CAAC,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,KAAK,aAAa,CACrD,CAAC;YAEF,sCAAsC;YACtC,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;YACzF,MAAM,iBAAiB,GAAG,aAAa,EAAE,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAC;YAElE,IAAI,iBAAiB,EAAE,CAAC;gBACtB,OAAO;oBACL,OAAO,EAAE,CAAC;4BACR,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,gJAAgJ;yBACvJ,CAAC;iBACH,CAAC;YACJ,CAAC;YAED,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC9B,6CAA6C;gBAC7C,OAAO;oBACL,OAAO,EAAE,CAAC;4BACR,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,yOAAyO;yBAChP,CAAC;iBACH,CAAC;YACJ,CAAC;YAED,gBAAgB;YAChB,MAAM,WAAW,GAAG;gBAClB,OAAO,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,MAAM;gBACvE,UAAU,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC,MAAM;gBAC9E,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM;aAC3B,CAAC;YAEF,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,uCAAuC,WAAW,CAAC,OAAO,sBAAsB,WAAW,CAAC,UAAU,gBAAgB,WAAW,CAAC,KAAK,oDAAoD;qBAClM,CAAC;aACH,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,yBAAyB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE;qBACpF,CAAC;gBACF,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,4EAA4E;IAC5E,+DAA+D;IAC/D,+BAA+B;IAC/B,+DAA+D;IAC/D,MAAM,CAAC,IAAI,CACT,wBAAwB,EACxB,4VAA4V,EAC5V;QACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;QAC3E,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC;QACtD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;QACpD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iFAAiF,CAAC;QACjH,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;QACtF,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;QAClF,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;QAC7E,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;QACxF,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,6BAA6B,CAAC;QACxF,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;KACxE,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE;QAC7G,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4BAA4B,EAAE,CAAC;oBAC/D,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;YAED,MAAM,UAAU,GAAG;gBACjB,WAAW;gBACX,KAAK;gBACL,IAAI;gBACJ,SAAS;gBACT,SAAS,EAAE,SAAS,IAAI,EAAE;gBAC1B,SAAS,EAAE,SAAS,IAAI,EAAE;gBAC1B,QAAQ,EAAE,QAAQ,IAAI,EAAE;gBACxB,SAAS,EAAE,SAAS,IAAI,EAAE;gBAC1B,OAAO,EAAE,OAAO;gBAChB,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aAClC,CAAC;YAEF,MAAM,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;YAEvE,oBAAoB;YACpB,MAAM,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,kBAAkB,EAAE;gBACnD,OAAO;gBACP,SAAS,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE;aACtC,CAAC,CAAC;YAEH,MAAM,YAAY,GAAG,sBAAsB,CAAC,YAAY,EAAE;gBACxD,GAAG,EAAE,WAAW;gBAChB,SAAS,EAAE,UAAU,CAAC,OAAO;gBAC7B,SAAS,EAAE,IAAI;gBACf,OAAO,EAAE,aAAa,OAAO,EAAE;aAChC,CAAC,CAAC;YAEH,IAAI,QAAQ,GAAG,YAAY,GAAG,WAAW,CAAC;YAC1C,QAAQ,IAAI,mBAAmB,SAAS,MAAM,CAAC;YAE/C,IAAI,SAAS,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtC,QAAQ,IAAI,iBAAiB,CAAC;gBAC9B,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;oBAC5B,QAAQ,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,CAAC;gBACpC,CAAC,CAAC,CAAC;gBACH,QAAQ,IAAI,IAAI,CAAC;YACnB,CAAC;YAED,IAAI,SAAS,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtC,QAAQ,IAAI,iBAAiB,CAAC;gBAC9B,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;oBACpB,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC;gBACzB,CAAC,CAAC,CAAC;gBACH,QAAQ,IAAI,IAAI,CAAC;YACnB,CAAC;YAED,QAAQ,IAAI,4FAA4F,CAAC;YAEzG,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;QACzD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,4BAA4B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE;qBACvF,CAAC;gBACF,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,4EAA4E;IAC5E,+DAA+D;IAC/D,6BAA6B;IAC7B,+DAA+D;IAC/D,MAAM,CAAC,IAAI,CACT,sBAAsB,EACtB,yXAAyX,EACzX;QACE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;QACzD,mBAAmB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;QAC5F,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;QACxF,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;KACxE,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,OAAO,EAAE,EAAE,EAAE;QAClE,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4BAA4B,EAAE,CAAC;oBAC/D,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;YAED,MAAM,UAAU,GAAG;gBACjB,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACrC,OAAO;gBACP,mBAAmB,EAAE,mBAAmB,IAAI,EAAE;gBAC9C,cAAc,EAAE,cAAc,IAAI,EAAE;aACrC,CAAC;YAEF,MAAM,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,gBAAgB,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC;YAEzF,MAAM,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,mBAAmB,EAAE;gBACpD,OAAO,EAAE,YAAY;gBACrB,SAAS,EAAE,UAAU;aACtB,CAAC,CAAC;YAEH,MAAM,YAAY,GAAG,sBAAsB,CAAC,OAAO,EAAE;gBACnD,GAAG,EAAE,gBAAgB;gBACrB,SAAS,EAAE,UAAU,CAAC,WAAW;gBACjC,SAAS,EAAE,IAAI;aAChB,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,YAAY,GAAG,yDAAyD,OAAO,uBAAuB,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,kDAAkD;qBAC9M,CAAC;aACH,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,2BAA2B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE;qBACtF,CAAC;gBACF,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,4EAA4E;IAC5E,+DAA+D;IAC/D,iCAAiC;IACjC,+DAA+D;IAC/D,MAAM,CAAC,IAAI,CACT,0BAA0B,EAC1B,0YAA0Y,EAC1Y;QACE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2FAA2F,CAAC;QACvI,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;aACnE,QAAQ,CAAC,2DAA2D,CAAC;QACxE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;KACxE,EACD,KAAK,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE;QAC3C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iDAAiD,EAAE,CAAC;oBACpF,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;YAED,yCAAyC;YACzC,MAAM,MAAM,GAAG,UAAU,IAAI,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC;YAClE,IAAI,CAAC,MAAM,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;gBACpC,OAAO;oBACL,OAAO,EAAE,CAAC;4BACR,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,6MAA6M;yBACpN,CAAC;iBACH,CAAC;YACJ,CAAC;YAED,MAAM,OAAO,GAAa,EAAE,CAAC;YAC7B,IAAI,WAAW,GAAG,CAAC,CAAC;YAEpB,oCAAoC;YACpC,IAAI,SAAS,KAAK,MAAM,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;gBACjD,IAAI,MAAM,EAAE,CAAC;oBACX,MAAM,YAAY,GAAG,IAAI,CAAC,gBAAgB,EAAE,GAAG,MAAM,OAAO,CAAC,CAAC;oBAE9D,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;wBAC7B,IAAI,CAAC;4BACH,MAAM,eAAe,GAAG,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;4BAC5D,MAAM,QAAQ,GAAmB,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;4BAE7D,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;gCAClC,wCAAwC;gCACxC,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE;oCAC5B,UAAU,EAAE,IAAI,CAAC,EAAE;oCACnB,KAAK,EAAE,IAAI,CAAC,OAAO;oCACnB,WAAW,EAAE,IAAI,CAAC,WAAW;oCAC7B,MAAM,EAAE,IAAI,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;wCAC3C,IAAI,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;oCACjE,UAAU,EAAE,IAAI,CAAC,KAAK;oCACtB,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK;oCAC3B,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE,SAAS;oCACnC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI;oCACzB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ;oCACjC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,UAAU;oCACrC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI;oCACzB,SAAS,EAAE,IAAI,CAAC,SAAS;oCACzB,MAAM,EAAE,IAAI,CAAC,MAAM;oCACnB,QAAQ,EAAE;wCACR,GAAG,IAAI,CAAC,QAAQ;wCAChB,YAAY,EAAE,IAAI,CAAC,EAAE;wCACrB,UAAU,EAAE,MAAM;wCAClB,UAAU,EAAE,QAAQ;qCACrB;iCACF,CAAC,CAAC;gCACH,WAAW,EAAE,CAAC;4BAChB,CAAC;4BAED,OAAO,CAAC,IAAI,CAAC,YAAY,WAAW,+BAA+B,CAAC,CAAC;4BAErE,+BAA+B;4BAC/B,MAAM,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,kBAAkB,EAAE;gCAClD,MAAM;gCACN,SAAS,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM;gCAChC,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gCAClC,QAAQ,EAAE;oCACR,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,MAAM;oCAClE,WAAW,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC,MAAM;oCAC1E,SAAS,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,MAAM;iCACvE;6BACF,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;wBAE1B,CAAC;wBAAC,OAAO,UAAU,EAAE,CAAC;4BACpB,OAAO,CAAC,IAAI,CAAC,iCAAiC,UAAU,YAAY,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;wBAChH,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,OAAO,CAAC,IAAI,CAAC,oCAAoC,YAAY,EAAE,CAAC,CAAC;oBACnE,CAAC;gBACH,CAAC;YACH,CAAC;YAED,iEAAiE;YACjE,IAAI,SAAS,KAAK,MAAM,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;gBACjD,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBAErD,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAChC,mCAAmC;oBACnC,MAAM,YAAY,GAAG,MAAM,IAAI,UAAU,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;oBAEtD,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;wBAClC,SAAS,CAAC,gBAAgB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBACnD,CAAC;oBAED,MAAM,WAAW,GAAuB,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,CAAC;wBACzE,EAAE,EAAE,EAAE,CAAC,WAAW,IAAI,SAAS,EAAE,CAAC,EAAE,EAAE;wBACtC,OAAO,EAAE,EAAE,CAAC,KAAK;wBACjB,WAAW,EAAE,EAAE,CAAC,WAAW;wBAC3B,MAAM,EAAE,EAAE,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;4BACzC,EAAE,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;wBAC/D,KAAK,EAAE,EAAE,CAAC,WAAW;wBACrB,SAAS,EAAE,EAAE,CAAC,UAAU,IAAI,EAAE;wBAC9B,MAAM,EAAE,EAAE,CAAC,MAAM,IAAI,EAAE;wBACvB,QAAQ,EAAE;4BACR,KAAK,EAAE,EAAE,CAAC,KAAK;4BACf,SAAS,EAAE,EAAE,CAAC,UAAU;4BACxB,IAAI,EAAE,EAAE,CAAC,IAAI;4BACb,QAAQ,EAAE,EAAE,CAAC,SAAS;4BACtB,UAAU,EAAE,EAAE,CAAC,WAAW;4BAC1B,IAAI,EAAE,EAAE,CAAC,IAAI;4BACb,YAAY,EAAE,EAAE,CAAC,EAAE;yBACpB;wBACD,SAAS,EAAE,EAAE,CAAC,UAAU;wBACxB,SAAS,EAAE,EAAE,CAAC,UAAU;qBACzB,CAAC,CAAC,CAAC;oBAEJ,MAAM,QAAQ,GAAmB;wBAC/B,EAAE,EAAE,YAAY;wBAChB,KAAK,EAAE,WAAW;wBAClB,QAAQ,EAAE;4BACR,gBAAgB,EAAE,IAAI;4BACtB,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;4BAClC,MAAM;yBACP;qBACF,CAAC;oBAEF,MAAM,YAAY,GAAG,IAAI,CAAC,gBAAgB,EAAE,GAAG,YAAY,OAAO,CAAC,CAAC;oBACpE,aAAa,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;oBAExE,OAAO,CAAC,IAAI,CAAC,YAAY,WAAW,CAAC,MAAM,0BAA0B,YAAY,EAAE,CAAC,CAAC;oBACrF,OAAO,CAAC,IAAI,CAAC,wEAAwE,YAAY,kBAAkB,CAAC,CAAC;gBACvH,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;gBACzC,CAAC;YACH,CAAC;YAED,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC;YAE5E,MAAM,YAAY,GAAG,sBAAsB,CAAC,cAAc,EAAE;gBAC1D,GAAG,EAAE,MAAM,IAAI,MAAM;gBACrB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,SAAS,EAAE,IAAI;gBACf,OAAO,EAAE,cAAc,SAAS,MAAM,WAAW,eAAe;aACjE,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,YAAY,GAAG,YAAY,OAAO,EAAE;qBAC3C,CAAC;aACH,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,+BAA+B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE;qBAC1F,CAAC;gBACF,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC;AAED,+DAA+D;AAC/D,mBAAmB;AACnB,+DAA+D;AAE/D,wDAAwD;AACxD,SAAS,iBAAiB,CAAC,GAAW,EAAE,OAAe,EAAE;IACvD,MAAM,KAAK,GAAmB,EAAE,CAAC;IAEjC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QAEjC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YAClC,MAAM,YAAY,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;YAEvD,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAEhC,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;gBACvB,8BAA8B;gBAC9B,KAAK,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;YAC3D,CAAC;iBAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC5D,gBAAgB;gBAChB,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBAChD,KAAK,CAAC,IAAI,CAAC;oBACT,IAAI,EAAE,YAAY;oBAClB,IAAI,EAAE,QAAQ;oBACd,OAAO;oBACP,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;iBACpC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,gCAAgC;IAClC,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,wDAAwD;AACxD,SAAS,wBAAwB,CAAC,WAAmB;IACnD,MAAM,OAAO,GAAQ;QACnB,UAAU,EAAE,KAAK;QACjB,UAAU,EAAE,KAAK;QACjB,eAAe,EAAE,KAAK;QACtB,YAAY,EAAE,IAAI;QAClB,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACnC,CAAC;IAEF,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC;QAChD,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;QAC1B,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,EAAE,OAAO,CAAC,CAAC;QACvE,0CAA0C;QAC1C,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAC/C,IAAI,SAAS;YAAE,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;IAED,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC;QAChD,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;QAC1B,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,EAAE,OAAO,CAAC,CAAC;QACvE,eAAe;QACf,MAAM,UAAU,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;QACxE,OAAO,CAAC,UAAU,GAAG,UAAU,CAAC;IAClC,CAAC;IAED,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC;QACrD,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IACjC,CAAC;IAED,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC;QAC9C,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,CAAC;QACrE,wBAAwB;QACxB,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QACnD,IAAI,UAAU;YAAE,OAAO,CAAC,YAAY,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IACjE,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,uEAAuE;AACvE,SAAS,sBAAsB,CAAC,WAAmB,EAAE,SAAiB;IACpE,gEAAgE;IAChE,MAAM,QAAQ,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAChF,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAE9C,IAAI,WAAW,GAAG,EAAE,CAAC;IACrB,IAAI,SAAS,GAAG,CAAC,CAAC;IAElB,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QAC3C,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,IAAI,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBACnC,KAAK,EAAE,CAAC;YACV,CAAC;QACH,CAAC;QACD,IAAI,KAAK,GAAG,SAAS,EAAE,CAAC;YACtB,SAAS,GAAG,KAAK,CAAC;YAClB,WAAW,GAAG,OAAO,CAAC;QACxB,CAAC;IACH,CAAC;IAED,IAAI,SAAS,GAAG,CAAC,IAAI,WAAW,EAAE,CAAC;QACjC,kDAAkD;QAClD,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,45 @@
1
+ /**
2
+ * Route Helpers — Agent frontmatter parsing, effort levels, and role constants.
3
+ *
4
+ * Extracted from route.ts to keep the main routing file focused on
5
+ * tool registration and orchestration logic.
6
+ */
7
+ /** Valid effort levels for agent definitions */
8
+ export type EffortLevel = 'high' | 'medium' | 'low';
9
+ /** Valid isolation modes for agent definitions */
10
+ export type IsolationMode = 'worktree' | null;
11
+ /**
12
+ * Parse the YAML frontmatter block from an agent .md file.
13
+ * Returns the raw frontmatter string or null if not present.
14
+ */
15
+ export declare function parseFrontmatter(agentPath: string): string | null;
16
+ /**
17
+ * Read the effort field from an agent's .md frontmatter.
18
+ * Returns 'medium' as the safe default if not found or unreadable.
19
+ */
20
+ export declare function readAgentEffort(agentPath: string): EffortLevel;
21
+ /**
22
+ * Read the isolation field from an agent's .md frontmatter.
23
+ * Returns 'worktree' if isolation: worktree is set, otherwise null.
24
+ */
25
+ export declare function readAgentIsolation(agentPath: string): IsolationMode;
26
+ /**
27
+ * Read the background field from an agent's .md frontmatter.
28
+ * Returns true if background: true is set.
29
+ */
30
+ export declare function readAgentBackground(agentPath: string): boolean;
31
+ /**
32
+ * Build the task prompt prefix based on effort level.
33
+ * - high: prepend ultrathink for deep reasoning
34
+ * - low: append concise note to avoid unnecessary exploration
35
+ * - medium: no prefix (default behavior)
36
+ */
37
+ export declare function buildEffortPrefix(effort: EffortLevel): {
38
+ prefix: string;
39
+ suffix: string;
40
+ };
41
+ /** Known specialist agents and their roles */
42
+ export declare const AGENT_ROLES: Record<string, string>;
43
+ /** Merlin internal workflow agents */
44
+ export declare const WORKFLOW_AGENTS: string[];
45
+ //# sourceMappingURL=route-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route-helpers.d.ts","sourceRoot":"","sources":["../../../src/server/tools/route-helpers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,gDAAgD;AAChD,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;AAEpD,kDAAkD;AAClD,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG,IAAI,CAAC;AAE9C;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAQjE;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,CAM9D;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,CAKnE;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAI9D;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,WAAW,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAWzF;AAED,8CAA8C;AAC9C,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAS9C,CAAC;AAEF,sCAAsC;AACtC,eAAO,MAAM,eAAe,UAM3B,CAAC"}
@@ -0,0 +1,93 @@
1
+ /**
2
+ * Route Helpers — Agent frontmatter parsing, effort levels, and role constants.
3
+ *
4
+ * Extracted from route.ts to keep the main routing file focused on
5
+ * tool registration and orchestration logic.
6
+ */
7
+ import { readFileSync } from 'fs';
8
+ /**
9
+ * Parse the YAML frontmatter block from an agent .md file.
10
+ * Returns the raw frontmatter string or null if not present.
11
+ */
12
+ export function parseFrontmatter(agentPath) {
13
+ try {
14
+ const content = readFileSync(agentPath, 'utf-8');
15
+ const match = content.match(/^---\n([\s\S]*?)\n---/);
16
+ return match ? match[1] : null;
17
+ }
18
+ catch {
19
+ return null;
20
+ }
21
+ }
22
+ /**
23
+ * Read the effort field from an agent's .md frontmatter.
24
+ * Returns 'medium' as the safe default if not found or unreadable.
25
+ */
26
+ export function readAgentEffort(agentPath) {
27
+ const frontmatter = parseFrontmatter(agentPath);
28
+ if (!frontmatter)
29
+ return 'medium';
30
+ const match = frontmatter.match(/^effort:\s*(high|medium|low)\s*$/m);
31
+ if (!match)
32
+ return 'medium';
33
+ return match[1];
34
+ }
35
+ /**
36
+ * Read the isolation field from an agent's .md frontmatter.
37
+ * Returns 'worktree' if isolation: worktree is set, otherwise null.
38
+ */
39
+ export function readAgentIsolation(agentPath) {
40
+ const frontmatter = parseFrontmatter(agentPath);
41
+ if (!frontmatter)
42
+ return null;
43
+ const match = frontmatter.match(/^isolation:\s*(worktree)\s*$/m);
44
+ return match ? match[1] : null;
45
+ }
46
+ /**
47
+ * Read the background field from an agent's .md frontmatter.
48
+ * Returns true if background: true is set.
49
+ */
50
+ export function readAgentBackground(agentPath) {
51
+ const frontmatter = parseFrontmatter(agentPath);
52
+ if (!frontmatter)
53
+ return false;
54
+ return /^background:\s*true\s*$/m.test(frontmatter);
55
+ }
56
+ /**
57
+ * Build the task prompt prefix based on effort level.
58
+ * - high: prepend ultrathink for deep reasoning
59
+ * - low: append concise note to avoid unnecessary exploration
60
+ * - medium: no prefix (default behavior)
61
+ */
62
+ export function buildEffortPrefix(effort) {
63
+ if (effort === 'high') {
64
+ return { prefix: 'ultrathink\n\n', suffix: '' };
65
+ }
66
+ if (effort === 'low') {
67
+ return {
68
+ prefix: '',
69
+ suffix: '\n\n> **Note:** Be concise and efficient. Focus on output over exploration.',
70
+ };
71
+ }
72
+ return { prefix: '', suffix: '' };
73
+ }
74
+ /** Known specialist agents and their roles */
75
+ export const AGENT_ROLES = {
76
+ 'product-spec': 'Feature specification and product definition',
77
+ 'system-architect': 'Architecture decisions and system design',
78
+ 'implementation-dev': 'Code implementation and feature building',
79
+ 'dry-refactor': 'Code cleanup, DRY refactoring, file organization',
80
+ 'hardening-guard': 'Security hardening, input validation, error handling',
81
+ 'tests-qa': 'Testing and quality assurance',
82
+ 'ops-railway': 'Deployment, ops, Railway, Google Cloud',
83
+ 'docs-keeper': 'Documentation updates',
84
+ };
85
+ /** Merlin internal workflow agents */
86
+ export const WORKFLOW_AGENTS = [
87
+ 'merlin-planner', 'merlin-executor', 'merlin-codebase-mapper',
88
+ 'merlin-debugger', 'merlin-researcher', 'merlin-reviewer',
89
+ 'merlin-work-verifier', 'merlin-milestone-auditor',
90
+ 'merlin-frontend', 'merlin-api-designer', 'merlin-security',
91
+ 'merlin-performance', 'merlin-migrator', 'merlin-integration-checker',
92
+ ];
93
+ //# sourceMappingURL=route-helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route-helpers.js","sourceRoot":"","sources":["../../../src/server/tools/route-helpers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAQlC;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,SAAiB;IAChD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACjD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;QACrD,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACjC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,SAAiB;IAC/C,MAAM,WAAW,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAChD,IAAI,CAAC,WAAW;QAAE,OAAO,QAAQ,CAAC;IAClC,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACrE,IAAI,CAAC,KAAK;QAAE,OAAO,QAAQ,CAAC;IAC5B,OAAO,KAAK,CAAC,CAAC,CAAgB,CAAC;AACjC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,SAAiB;IAClD,MAAM,WAAW,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAChD,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAC9B,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACjE,OAAO,KAAK,CAAC,CAAC,CAAE,KAAK,CAAC,CAAC,CAAmB,CAAC,CAAC,CAAC,IAAI,CAAC;AACpD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,SAAiB;IACnD,MAAM,WAAW,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAChD,IAAI,CAAC,WAAW;QAAE,OAAO,KAAK,CAAC;IAC/B,OAAO,0BAA0B,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AACtD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAmB;IACnD,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACtB,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAClD,CAAC;IACD,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QACrB,OAAO;YACL,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,6EAA6E;SACtF,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;AACpC,CAAC;AAED,8CAA8C;AAC9C,MAAM,CAAC,MAAM,WAAW,GAA2B;IACjD,cAAc,EAAE,8CAA8C;IAC9D,kBAAkB,EAAE,0CAA0C;IAC9D,oBAAoB,EAAE,0CAA0C;IAChE,cAAc,EAAE,kDAAkD;IAClE,iBAAiB,EAAE,sDAAsD;IACzE,UAAU,EAAE,+BAA+B;IAC3C,aAAa,EAAE,wCAAwC;IACvD,aAAa,EAAE,uBAAuB;CACvC,CAAC;AAEF,sCAAsC;AACtC,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,gBAAgB,EAAE,iBAAiB,EAAE,wBAAwB;IAC7D,iBAAiB,EAAE,mBAAmB,EAAE,iBAAiB;IACzD,sBAAsB,EAAE,0BAA0B;IAClD,iBAAiB,EAAE,qBAAqB,EAAE,iBAAiB;IAC3D,oBAAoB,EAAE,iBAAiB,EAAE,4BAA4B;CACtE,CAAC"}
@@ -7,9 +7,10 @@
7
7
  *
8
8
  * 1. Verifies agent exists
9
9
  * 2. Fetches Sights context for the task
10
- * 3. Builds structured handoff
11
- * 4. Spawns a fresh `claude --agent <name> -p` process
12
- * 5. Captures and returns the result
10
+ * 3. Discovers cloud agent augmentation
11
+ * 4. Builds structured handoff with domain expertise
12
+ * 5. Spawns a fresh `claude --agent <name> -p` process
13
+ * 6. Captures and returns the result
13
14
  *
14
15
  * Claude just calls `merlin_route(agent, task)` — no bash generation needed.
15
16
  */
@@ -1 +1 @@
1
- {"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../src/server/tools/route.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAOH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAgP9C,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,WAAW,QAuRlD"}
1
+ {"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../src/server/tools/route.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAOH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAY9C,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,WAAW,QAoLlD"}