mycontext-cli 0.4.8 → 0.4.9

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 (70) hide show
  1. package/README.md +101 -35
  2. package/dist/agents/communication/AgentCommunicationManager.d.ts +27 -0
  3. package/dist/agents/communication/AgentCommunicationManager.d.ts.map +1 -0
  4. package/dist/agents/communication/AgentCommunicationManager.js +293 -0
  5. package/dist/agents/communication/AgentCommunicationManager.js.map +1 -0
  6. package/dist/agents/evolution/CodeEvolutionEngine.d.ts +92 -0
  7. package/dist/agents/evolution/CodeEvolutionEngine.d.ts.map +1 -0
  8. package/dist/agents/evolution/CodeEvolutionEngine.js +639 -0
  9. package/dist/agents/evolution/CodeEvolutionEngine.js.map +1 -0
  10. package/dist/agents/implementations/ArchitectAgent.d.ts +39 -0
  11. package/dist/agents/implementations/ArchitectAgent.d.ts.map +1 -0
  12. package/dist/agents/implementations/ArchitectAgent.js +345 -0
  13. package/dist/agents/implementations/ArchitectAgent.js.map +1 -0
  14. package/dist/agents/implementations/CodeGenSubAgent.d.ts +12 -0
  15. package/dist/agents/implementations/CodeGenSubAgent.d.ts.map +1 -1
  16. package/dist/agents/implementations/CodeGenSubAgent.js +296 -43
  17. package/dist/agents/implementations/CodeGenSubAgent.js.map +1 -1
  18. package/dist/agents/implementations/PromptConstructorAgent.d.ts +50 -0
  19. package/dist/agents/implementations/PromptConstructorAgent.d.ts.map +1 -0
  20. package/dist/agents/implementations/PromptConstructorAgent.js +481 -0
  21. package/dist/agents/implementations/PromptConstructorAgent.js.map +1 -0
  22. package/dist/agents/implementations/SecurityAgent.d.ts +31 -0
  23. package/dist/agents/implementations/SecurityAgent.d.ts.map +1 -0
  24. package/dist/agents/implementations/SecurityAgent.js +453 -0
  25. package/dist/agents/implementations/SecurityAgent.js.map +1 -0
  26. package/dist/agents/intelligence/ProjectIntelligence.d.ts +127 -0
  27. package/dist/agents/intelligence/ProjectIntelligence.d.ts.map +1 -0
  28. package/dist/agents/intelligence/ProjectIntelligence.js +456 -0
  29. package/dist/agents/intelligence/ProjectIntelligence.js.map +1 -0
  30. package/dist/agents/interfaces/AgentCommunication.d.ts +65 -0
  31. package/dist/agents/interfaces/AgentCommunication.d.ts.map +1 -0
  32. package/dist/agents/interfaces/AgentCommunication.js +13 -0
  33. package/dist/agents/interfaces/AgentCommunication.js.map +1 -0
  34. package/dist/agents/learning/CrossProjectLearning.d.ts +99 -0
  35. package/dist/agents/learning/CrossProjectLearning.d.ts.map +1 -0
  36. package/dist/agents/learning/CrossProjectLearning.js +517 -0
  37. package/dist/agents/learning/CrossProjectLearning.js.map +1 -0
  38. package/dist/cli.js +47 -0
  39. package/dist/cli.js.map +1 -1
  40. package/dist/commands/agent-flow.d.ts +21 -0
  41. package/dist/commands/agent-flow.d.ts.map +1 -0
  42. package/dist/commands/agent-flow.js +225 -0
  43. package/dist/commands/agent-flow.js.map +1 -0
  44. package/dist/commands/generate-components.d.ts +0 -13
  45. package/dist/commands/generate-components.d.ts.map +1 -1
  46. package/dist/commands/generate-components.js +23 -385
  47. package/dist/commands/generate-components.js.map +1 -1
  48. package/dist/commands/generate.d.ts +4 -1
  49. package/dist/commands/generate.d.ts.map +1 -1
  50. package/dist/commands/generate.js +173 -1
  51. package/dist/commands/generate.js.map +1 -1
  52. package/dist/commands/predict.d.ts +36 -0
  53. package/dist/commands/predict.d.ts.map +1 -0
  54. package/dist/commands/predict.js +539 -0
  55. package/dist/commands/predict.js.map +1 -0
  56. package/dist/utils/clean.d.ts +6 -0
  57. package/dist/utils/clean.d.ts.map +1 -0
  58. package/dist/utils/clean.js +220 -0
  59. package/dist/utils/clean.js.map +1 -0
  60. package/dist/utils/githubModelsClient.d.ts.map +1 -1
  61. package/dist/utils/githubModelsClient.js +11 -12
  62. package/dist/utils/githubModelsClient.js.map +1 -1
  63. package/dist/utils/hybridAIClient.d.ts +1 -0
  64. package/dist/utils/hybridAIClient.d.ts.map +1 -1
  65. package/dist/utils/hybridAIClient.js +23 -9
  66. package/dist/utils/hybridAIClient.js.map +1 -1
  67. package/dist/utils/ollamaClient.d.ts.map +1 -1
  68. package/dist/utils/ollamaClient.js +6 -4
  69. package/dist/utils/ollamaClient.js.map +1 -1
  70. package/package.json +2 -1
@@ -35,6 +35,7 @@ var __importStar = (this && this.__importStar) || (function () {
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.CodeGenSubAgent = void 0;
37
37
  const hybridAIClient_1 = require("../../utils/hybridAIClient");
38
+ const PromptConstructorAgent_1 = require("./PromptConstructorAgent");
38
39
  const fs = __importStar(require("fs"));
39
40
  const path = __importStar(require("path"));
40
41
  const definitions_1 = require("../personalities/definitions");
@@ -205,44 +206,106 @@ class CodeGenSubAgent {
205
206
  type: "form",
206
207
  }
207
208
  : component;
209
+ // Enhanced context loading from multiple files
208
210
  const prd = options?.context?.prd || "";
209
211
  const types = options?.context?.types || "";
210
- const shadcnList = this.getAvailableShadcnPrimitives();
211
- const prompt = [
212
- "[mycontext] Plan: plan generate QA → docs → preview (→ checks)",
213
- "You are an expert React/TypeScript developer generating production-ready Next.js components.",
214
- "Requirements:",
215
- "- Use TypeScript and modern React patterns.",
216
- "- Use shadcn/ui primitives and import from '@/components/ui/<component>'.",
217
- "- Ensure accessibility (ARIA, roles, keyboard).",
218
- "- Ensure clean props interface and defaults.",
219
- "- Return only a single TSX component file in a fenced code block or plain code.",
220
- "",
221
- "Available shadcn/ui primitives (prefer these; import from '@/components/ui/...'):",
222
- shadcnList.join(", "),
223
- "",
224
- "Component Plan:",
225
- JSON.stringify({
226
- group: group?.name || "",
227
- name: compObj?.name,
228
- description: compObj?.description || "",
229
- type: compObj?.type || "form",
230
- userStories: Array.isArray(compObj?.userStories)
231
- ? compObj.userStories
232
- : [],
233
- actionFunctions: Array.isArray(compObj?.actionFunctions)
234
- ? compObj.actionFunctions
235
- : [],
236
- dependencies: Array.isArray(compObj?.dependencies)
237
- ? compObj.dependencies
238
- : [],
239
- tags: Array.isArray(compObj?.tags) ? compObj.tags : [],
240
- }, null, 2),
241
- "",
242
- "Context (PRD excerpt):\n" + prd.split("\n").slice(0, 20).join("\n"),
243
- "",
244
- "Types excerpt:\n" + types.split("\n").slice(0, 20).join("\n"),
245
- ].join("\n");
212
+ const componentList = options?.context?.componentList || "";
213
+ const projectBrief = options?.context?.brief || "";
214
+ // Load additional context files if available
215
+ let enhancedContext = "";
216
+ try {
217
+ const fs = require("fs");
218
+ const path = require("path");
219
+ const contextDir = ".mycontext";
220
+ // Try to load component list for better context
221
+ if (fs.existsSync(path.join(contextDir, "04-component-list.json"))) {
222
+ const compListRaw = fs.readFileSync(path.join(contextDir, "04-component-list.json"), "utf8");
223
+ enhancedContext += `\nComponent Architecture:\n${compListRaw.slice(0, 2000)}\n`;
224
+ }
225
+ // Try to load project brief
226
+ if (fs.existsSync(path.join(contextDir, "01a-brief.md"))) {
227
+ const briefRaw = fs.readFileSync(path.join(contextDir, "01a-brief.md"), "utf8");
228
+ enhancedContext += `\nProject Brief:\n${briefRaw.slice(0, 1000)}\n`;
229
+ }
230
+ // CRITICAL: Load design tokens from globals.css
231
+ const globalsCssPath = path.join(process.cwd(), "src/app/globals.css");
232
+ if (fs.existsSync(globalsCssPath)) {
233
+ const globalsCss = fs.readFileSync(globalsCssPath, "utf8");
234
+ enhancedContext += `\n=== DESIGN TOKENS (REQUIRED FOR STYLING) ===\n${globalsCss}\n=== END DESIGN TOKENS ===\n`;
235
+ }
236
+ else {
237
+ // Fallback to try other common locations
238
+ const altPaths = [
239
+ "app/globals.css",
240
+ "globals.css",
241
+ "src/globals.css",
242
+ ];
243
+ for (const altPath of altPaths) {
244
+ const fullPath = path.join(process.cwd(), altPath);
245
+ if (fs.existsSync(fullPath)) {
246
+ const globalsCss = fs.readFileSync(fullPath, "utf8");
247
+ enhancedContext += `\n=== DESIGN TOKENS (REQUIRED FOR STYLING) ===\n${globalsCss}\n=== END DESIGN TOKENS ===\n`;
248
+ break;
249
+ }
250
+ }
251
+ }
252
+ // Load branding context if available
253
+ if (fs.existsSync(path.join(contextDir, "03-branding.md"))) {
254
+ const brandingRaw = fs.readFileSync(path.join(contextDir, "03-branding.md"), "utf8");
255
+ enhancedContext += `\n=== BRANDING CONTEXT ===\n${brandingRaw}\n=== END BRANDING ===\n`;
256
+ }
257
+ // Load available UI components for context
258
+ const uiComponentsPath = path.join(process.cwd(), "components/ui");
259
+ if (fs.existsSync(uiComponentsPath)) {
260
+ const uiFiles = fs
261
+ .readdirSync(uiComponentsPath)
262
+ .filter((f) => f.endsWith(".tsx") || f.endsWith(".ts"))
263
+ .map((f) => f.replace(/\.(tsx|ts)$/, ""));
264
+ enhancedContext += `\n=== AVAILABLE UI COMPONENTS ===\n${uiFiles.join(", ")}\n=== END UI COMPONENTS ===\n`;
265
+ }
266
+ }
267
+ catch (e) {
268
+ // Fallback gracefully if file reading fails
269
+ console.log("Context loading warning:", e);
270
+ }
271
+ // 🧠 AI-ENHANCED PROMPT CONSTRUCTION
272
+ console.log("🧠 Constructing intelligent prompt using PromptConstructorAgent or AI...");
273
+ let constructedPrompt;
274
+ try {
275
+ // Option 1: Try using PromptConstructorAgent first
276
+ const promptConstructor = new PromptConstructorAgent_1.PromptConstructorAgent();
277
+ const constructionContext = {
278
+ prd,
279
+ types,
280
+ branding: options?.context?.branding || "",
281
+ componentList: enhancedContext,
282
+ componentName: compObj?.name || "Component",
283
+ componentGroup: group?.name || "UI",
284
+ projectPath: options?.projectPath || process.cwd(),
285
+ };
286
+ constructedPrompt = await promptConstructor.run(constructionContext);
287
+ console.log(`✅ Intelligent prompt constructed via PromptConstructorAgent: ${constructedPrompt.contextSummary}`);
288
+ console.log(`📋 Specific requirements: ${constructedPrompt.specificRequirements.length} items`);
289
+ }
290
+ catch (promptAgentError) {
291
+ console.log("❌ PromptConstructorAgent failed, trying LLM-based prompt construction...");
292
+ try {
293
+ // Option 2: Use LLM for prompt construction
294
+ constructedPrompt = await this.constructPromptWithLLM(compObj, group, { prd, types, enhancedContext });
295
+ console.log(`✅ Intelligent prompt constructed via LLM: ${constructedPrompt.contextSummary}`);
296
+ }
297
+ catch (llmPromptError) {
298
+ console.log("❌ LLM prompt construction failed, falling back to enriched static prompt...");
299
+ // Option 3: Enriched static prompt as ultimate fallback
300
+ constructedPrompt = this.createEnrichedStaticPrompt(compObj, group, {
301
+ prd,
302
+ types,
303
+ enhancedContext,
304
+ });
305
+ console.log("✅ Using enriched static prompt construction");
306
+ }
307
+ }
308
+ const prompt = `${constructedPrompt.systemPrompt}\n\n${constructedPrompt.userPrompt}`;
246
309
  const { code } = await ai.generateComponent(prompt, {
247
310
  temperature: this.temperature,
248
311
  maxTokens: this.maxTokens,
@@ -253,16 +316,206 @@ class CodeGenSubAgent {
253
316
  throw new Error("Empty code from AI provider");
254
317
  }
255
318
  catch (err) {
256
- // Fallback to local Ollama
257
- try {
258
- return await this.generateWithOllama(component, group, options);
319
+ // No fallbacks - fail cleanly and ask user to retry
320
+ const errorMessage = err instanceof Error ? err.message : String(err);
321
+ throw new Error(`AI component generation failed: ${errorMessage}\n\n` +
322
+ `💡 This ensures only high-quality AI-generated components.\n` +
323
+ `Please retry when:\n` +
324
+ `- Rate limits reset (check GitHub Models dashboard)\n` +
325
+ `- Network connectivity improves\n` +
326
+ `- AI provider is available\n\n` +
327
+ `🚀 Tip: Try again in a few minutes for best results!`);
328
+ }
329
+ }
330
+ /**
331
+ * Uses LLM to construct intelligent prompts for component generation
332
+ */
333
+ async constructPromptWithLLM(component, group, context) {
334
+ const ai = new hybridAIClient_1.HybridAIClient();
335
+ const promptConstructionRequest = `
336
+ You are a specialist in creating optimal prompts for React/TypeScript component generation.
337
+
338
+ Given this component request:
339
+ - Component: ${JSON.stringify(component, null, 2)}
340
+ - Group: ${JSON.stringify(group, null, 2)}
341
+
342
+ And this project context:
343
+ - PRD: ${context.prd.slice(0, 1000)}
344
+ - Types: ${context.types.slice(0, 500)}
345
+ - Additional Context: ${context.enhancedContext.slice(0, 500)}
346
+
347
+ Create a highly specific and detailed prompt that will result in production-ready React components.
348
+
349
+ Respond with a JSON object containing:
350
+ {
351
+ "systemPrompt": "Detailed system prompt with role, constraints, and requirements",
352
+ "userPrompt": "Specific user prompt with exact component specifications",
353
+ "contextSummary": "Brief summary of the prompt context",
354
+ "specificRequirements": ["requirement1", "requirement2", ...]
355
+ }
356
+
357
+ Focus on:
358
+ - shadcn/ui integration
359
+ - TypeScript best practices
360
+ - Accessibility requirements
361
+ - Production-ready patterns
362
+ - Specific business logic based on context
363
+ - Error handling and validation
364
+ - Modern React patterns (hooks, etc.)
365
+ `;
366
+ const response = await ai.generateComponent(promptConstructionRequest, {
367
+ temperature: 0.3, // Lower temperature for more consistent prompt construction
368
+ maxTokens: 2000,
369
+ });
370
+ try {
371
+ // Extract JSON from the response
372
+ const jsonMatch = response.code.match(/\{[\s\S]*\}/);
373
+ if (!jsonMatch) {
374
+ throw new Error("No JSON found in LLM response");
259
375
  }
260
- catch (ollamaErr) {
261
- // Final fallback to template-based generator to guarantee output
262
- const generateCommand = new generate_components_1.GenerateComponentsCommand();
263
- return generateCommand.generateComponentCode(component, group, options);
376
+ const promptData = JSON.parse(jsonMatch[0]);
377
+ // Validate the structure
378
+ if (!promptData.systemPrompt || !promptData.userPrompt) {
379
+ throw new Error("Invalid prompt structure from LLM");
264
380
  }
381
+ return {
382
+ systemPrompt: promptData.systemPrompt,
383
+ userPrompt: promptData.userPrompt,
384
+ contextSummary: promptData.contextSummary || "LLM-generated prompt",
385
+ specificRequirements: promptData.specificRequirements || [],
386
+ };
387
+ }
388
+ catch (parseError) {
389
+ throw new Error(`Failed to parse LLM prompt construction response: ${parseError}`);
390
+ }
391
+ }
392
+ /**
393
+ * Creates an enriched static prompt with intelligent analysis of the context
394
+ */
395
+ createEnrichedStaticPrompt(component, group, context) {
396
+ const shadcnList = this.getAvailableShadcnPrimitives();
397
+ // Analyze context to extract key requirements
398
+ const requirements = this.analyzeContextForRequirements(component, context);
399
+ // Build enhanced system prompt based on component type and context
400
+ const systemPrompt = `You are an expert React/TypeScript developer generating production-ready Next.js components.
401
+
402
+ 🎯 CRITICAL: Generate FUNCTIONAL, INTERACTIVE components with real business logic.
403
+ ❌ DO NOT generate generic layout wrappers or placeholder components.
404
+ ✅ DO implement actual functionality, state management, and user interactions.
405
+
406
+ COMPONENT SPECIFICATIONS:
407
+ - Type: ${component?.type || "interactive"}
408
+ - Group: ${group?.name || "UI"}
409
+ - Primary Function: ${requirements.primaryFunction}
410
+ - Key Features: ${requirements.keyFeatures.join(", ")}
411
+
412
+ TECHNICAL REQUIREMENTS:
413
+ - Use shadcn/ui primitives: ${shadcnList.slice(0, 15).join(", ")}${shadcnList.length > 15 ? "..." : ""}
414
+ - Implement proper TypeScript interfaces and types
415
+ - Add comprehensive accessibility features (ARIA labels, keyboard navigation)
416
+ - Include error handling and loading states
417
+ - Use modern React patterns (hooks, memoization)
418
+ - Follow Next.js 14+ best practices
419
+ - Include proper validation where applicable
420
+
421
+ CONTEXT-SPECIFIC REQUIREMENTS:
422
+ ${requirements.specificRequirements.map((req) => `- ${req}`).join("\n")}
423
+
424
+ QUALITY STANDARDS:
425
+ - Production-ready code with no TODOs or placeholders
426
+ - Comprehensive error handling
427
+ - Responsive design with Tailwind CSS
428
+ - Semantic HTML structure
429
+ - Performance optimizations (useMemo, useCallback where appropriate)`;
430
+ const userPrompt = `Generate the ${component?.name} component with these specifications:
431
+
432
+ Component Details:
433
+ ${JSON.stringify({
434
+ group: group?.name || "",
435
+ name: component?.name,
436
+ description: component?.description || "",
437
+ type: component?.type || "interactive",
438
+ userStories: Array.isArray(component?.userStories)
439
+ ? component.userStories
440
+ : [],
441
+ actionFunctions: Array.isArray(component?.actionFunctions)
442
+ ? component.actionFunctions
443
+ : [],
444
+ }, null, 2)}
445
+
446
+ Project Context Analysis:
447
+ ${requirements.contextInsights.join("\n")}
448
+
449
+ Business Requirements:
450
+ ${requirements.businessLogic}
451
+
452
+ Technical Constraints:
453
+ ${requirements.technicalConstraints.join("\n")}
454
+
455
+ The component should be fully functional and ready for production use.`;
456
+ return {
457
+ systemPrompt,
458
+ userPrompt,
459
+ contextSummary: `Enhanced static prompt for ${component?.name} (${component?.type})`,
460
+ specificRequirements: requirements.specificRequirements,
461
+ };
462
+ }
463
+ /**
464
+ * Analyzes project context to extract intelligent requirements
465
+ */
466
+ analyzeContextForRequirements(component, context) {
467
+ const analysis = {
468
+ primaryFunction: "Interactive user interface component",
469
+ keyFeatures: [],
470
+ specificRequirements: [],
471
+ contextInsights: [],
472
+ businessLogic: "Standard component functionality",
473
+ technicalConstraints: [],
474
+ };
475
+ // Analyze component type
476
+ if (component?.type === "form") {
477
+ analysis.primaryFunction = "Form handling with validation and submission";
478
+ analysis.keyFeatures.push("Input validation", "Error handling", "Submit functionality");
479
+ analysis.specificRequirements.push("Use react-hook-form with zod validation");
480
+ analysis.specificRequirements.push("Implement proper accessibility for form controls");
481
+ }
482
+ else if (component?.type === "data") {
483
+ analysis.primaryFunction = "Data display and manipulation";
484
+ analysis.keyFeatures.push("Data filtering", "Sorting", "Pagination");
485
+ analysis.specificRequirements.push("Implement efficient data handling with useMemo");
486
+ }
487
+ else if (component?.type === "navigation") {
488
+ analysis.primaryFunction = "Navigation and routing";
489
+ analysis.keyFeatures.push("Route highlighting", "Responsive navigation", "Keyboard navigation");
490
+ analysis.specificRequirements.push("Use Next.js Link components");
491
+ analysis.specificRequirements.push("Implement ARIA navigation patterns");
492
+ }
493
+ // Analyze PRD content
494
+ if (context.prd) {
495
+ const prdLower = context.prd.toLowerCase();
496
+ if (prdLower.includes("authentication") || prdLower.includes("login")) {
497
+ analysis.businessLogic =
498
+ "Authentication and user management functionality";
499
+ analysis.specificRequirements.push("Implement secure authentication patterns");
500
+ }
501
+ if (prdLower.includes("dashboard") || prdLower.includes("analytics")) {
502
+ analysis.keyFeatures.push("Data visualization", "Real-time updates");
503
+ analysis.specificRequirements.push("Include loading states and error boundaries");
504
+ }
505
+ if (prdLower.includes("e-commerce") || prdLower.includes("payment")) {
506
+ analysis.businessLogic = "E-commerce and transaction handling";
507
+ analysis.specificRequirements.push("Include proper validation for financial data");
508
+ }
509
+ analysis.contextInsights.push(`PRD indicates: ${context.prd.split("\n")[0]?.slice(0, 100) || "Standard application"}`);
510
+ }
511
+ // Analyze types context
512
+ if (context.types) {
513
+ analysis.contextInsights.push("Custom TypeScript types available for integration");
514
+ analysis.specificRequirements.push("Use existing type definitions where applicable");
265
515
  }
516
+ // Add default technical constraints
517
+ analysis.technicalConstraints.push("Use TypeScript with strict mode", "Follow React 18+ patterns", "Ensure mobile responsiveness", "Implement proper error boundaries");
518
+ return analysis;
266
519
  }
267
520
  getAvailableShadcnPrimitives() {
268
521
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"CodeGenSubAgent.js","sourceRoot":"","sources":["../../../src/agents/implementations/CodeGenSubAgent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CodeGenSubAgent.js","sourceRoot":"","sources":["../../../src/agents/implementations/CodeGenSubAgent.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,+DAA4D;AAC5D,qEAGkC;AAClC,uCAAyB;AACzB,2CAA6B;AAO7B,8DAAsE;AACtE,4EAA+E;AAE/E,sDAAsD;AACtD,MAAM,iBAAiB,GAAG;IACxB,qBAAqB;IACrB,MAAM,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,aAAa,CAAC;IAC5C,IAAI,EAAE;QACJ,QAAQ;QACR,OAAO;QACP,OAAO;QACP,MAAM;QACN,QAAQ;QACR,UAAU;QACV,YAAY;QACZ,UAAU;QACV,QAAQ;KACT;IACD,UAAU,EAAE,CAAC,gBAAgB,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,CAAC;IAClE,QAAQ,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,CAAC;IAC7E,IAAI,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,CAAC;IACnD,OAAO,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,CAAC;IAC/D,KAAK,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,CAAC;IAClD,OAAO,EAAE;QACP,YAAY;QACZ,WAAW;QACX,aAAa;QACb,WAAW;QACX,aAAa;QACb,SAAS;QACT,cAAc;QACd,QAAQ;QACR,aAAa;QACb,QAAQ;QACR,QAAQ;KACT;CACO,CAAC;AAEX,qEAAqE;AACrE,MAAM,qBAAqB,GAAG;IAC5B,WAAW;IACX,OAAO;IACP,cAAc;IACd,cAAc;IACd,QAAQ;IACR,OAAO;IACP,YAAY;IACZ,QAAQ;IACR,UAAU;IACV,MAAM;IACN,UAAU;IACV,OAAO;IACP,UAAU;IACV,aAAa;IACb,UAAU;IACV,SAAS;IACT,cAAc;IACd,YAAY;IACZ,aAAa;IACb,QAAQ;IACR,QAAQ;IACR,eAAe;IACf,YAAY;IACZ,OAAO;IACP,WAAW;IACX,OAAO;IACP,SAAS;IACT,iBAAiB;IACjB,YAAY;IACZ,SAAS;IACT,UAAU;IACV,aAAa;IACb,WAAW;IACX,aAAa;IACb,QAAQ;IACR,WAAW;IACX,OAAO;IACP,SAAS;IACT,UAAU;IACV,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,OAAO;IACP,MAAM;IACN,UAAU;IACV,OAAO;IACP,QAAQ;IACR,cAAc;IACd,SAAS;IACT,YAAY;CACb,CAAC;AAEF,MAAa,eAAe;IAe1B;QAZA,SAAI,GAAG,iBAAiB,CAAC;QACzB,gBAAW,GACT,0GAA0G,CAAC;QAW3G,MAAM,WAAW,GAAG,IAAA,oCAAsB,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,6BAA6B,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAC5D,CAAC;QAED,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC,YAAY,CAAC;QAC5C,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC;QACjC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC;QAC3C,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC;QACvC,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC;QACvC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC;QAC3C,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC;QACvC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC,YAAY,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,GAAG,CACP,KAA+B;QAE/B,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;QAErD,mDAAmD;QACnD,MAAM,eAAe,GAAG,IAAI,+CAAyB,EAAE,CAAC;QAExD,uCAAuC;QACvC,IAAI,aAAqB,CAAC;QAC1B,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;YAClC,aAAa,GAAG,SAAS,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,aAAa,GAAG,SAAS,CAAC,IAAI,CAAC;QACjC,CAAC;QAED,wDAAwD;QACxD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,gCAAgC,CACtD,SAAS,EACT,KAAK,EACL,OAAO,CACR,CAAC;QAEF,qBAAqB;QACrB,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;QAC/C,MAAM,YAAY,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QACpD,MAAM,gBAAgB,GAAG,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAE5D,OAAO;YACL,IAAI;YACJ,QAAQ,EAAE;gBACR,aAAa;gBACb,KAAK;gBACL,YAAY;gBACZ,cAAc;gBACd,gBAAgB;gBAChB,YAAY,EAAE,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC;aAC/C;SACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAA+B;QAC5C,0EAA0E;QAC1E,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;YACxC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC;QAC5C,CAAC;QAED,+EAA+E;QAC/E,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI;YAAE,OAAO,KAAK,CAAC;QAC5D,IAAI,CAAC,KAAK,CAAC,KAAK;YAAE,OAAO,KAAK,CAAC;QAE/B,kFAAkF;QAClF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,SAAS;QAQb,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,MAAM;YACd,UAAU,EAAE,CAAC;YACb,YAAY,EAAE,CAAC;SAChB,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,gCAAgC,CAC5C,SAAc,EACd,KAAU,EACV,OAAY;QAEZ,8GAA8G;QAC9G,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,IAAI,+BAAc,EAAE,CAAC;YAEhC,MAAM,OAAO,GACX,OAAO,SAAS,KAAK,QAAQ;gBAC3B,CAAC,CAAC;oBACE,IAAI,EAAE,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC;oBAC3C,WAAW,EAAE,MAAM,CAAC,SAAS,CAAC;oBAC9B,IAAI,EAAE,MAAM;iBACb;gBACH,CAAC,CAAC,SAAS,CAAC;YAEhB,+CAA+C;YAC/C,MAAM,GAAG,GAAG,OAAO,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC;YACxC,MAAM,KAAK,GAAG,OAAO,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC;YAC5C,MAAM,aAAa,GAAG,OAAO,EAAE,OAAO,EAAE,aAAa,IAAI,EAAE,CAAC;YAC5D,MAAM,YAAY,GAAG,OAAO,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC;YAEnD,6CAA6C;YAC7C,IAAI,eAAe,GAAG,EAAE,CAAC;YACzB,IAAI,CAAC;gBACH,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;gBACzB,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;gBAC7B,MAAM,UAAU,GAAG,YAAY,CAAC;gBAEhC,gDAAgD;gBAChD,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,wBAAwB,CAAC,CAAC,EAAE,CAAC;oBACnE,MAAM,WAAW,GAAG,EAAE,CAAC,YAAY,CACjC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,wBAAwB,CAAC,EAC/C,MAAM,CACP,CAAC;oBACF,eAAe,IAAI,8BAA8B,WAAW,CAAC,KAAK,CAChE,CAAC,EACD,IAAI,CACL,IAAI,CAAC;gBACR,CAAC;gBAED,4BAA4B;gBAC5B,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC;oBACzD,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,CAC9B,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,EACrC,MAAM,CACP,CAAC;oBACF,eAAe,IAAI,qBAAqB,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC;gBACtE,CAAC;gBAED,gDAAgD;gBAChD,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,qBAAqB,CAAC,CAAC;gBACvE,IAAI,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;oBAClC,MAAM,UAAU,GAAG,EAAE,CAAC,YAAY,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;oBAC3D,eAAe,IAAI,mDAAmD,UAAU,+BAA+B,CAAC;gBAClH,CAAC;qBAAM,CAAC;oBACN,yCAAyC;oBACzC,MAAM,QAAQ,GAAG;wBACf,iBAAiB;wBACjB,aAAa;wBACb,iBAAiB;qBAClB,CAAC;oBACF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;wBAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,CAAC;wBACnD,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;4BAC5B,MAAM,UAAU,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;4BACrD,eAAe,IAAI,mDAAmD,UAAU,+BAA+B,CAAC;4BAChH,MAAM;wBACR,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,qCAAqC;gBACrC,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC,EAAE,CAAC;oBAC3D,MAAM,WAAW,GAAG,EAAE,CAAC,YAAY,CACjC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,EACvC,MAAM,CACP,CAAC;oBACF,eAAe,IAAI,+BAA+B,WAAW,0BAA0B,CAAC;gBAC1F,CAAC;gBAED,2CAA2C;gBAC3C,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,eAAe,CAAC,CAAC;gBACnE,IAAI,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBACpC,MAAM,OAAO,GAAG,EAAE;yBACf,WAAW,CAAC,gBAAgB,CAAC;yBAC7B,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;yBAC9D,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC,CAAC;oBACpD,eAAe,IAAI,sCAAsC,OAAO,CAAC,IAAI,CACnE,IAAI,CACL,+BAA+B,CAAC;gBACnC,CAAC;YACH,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,4CAA4C;gBAC5C,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,CAAC,CAAC,CAAC;YAC7C,CAAC;YAED,qCAAqC;YACrC,OAAO,CAAC,GAAG,CACT,0EAA0E,CAC3E,CAAC;YAEF,IAAI,iBAAiB,CAAC;YACtB,IAAI,CAAC;gBACH,mDAAmD;gBACnD,MAAM,iBAAiB,GAAG,IAAI,+CAAsB,EAAE,CAAC;gBACvD,MAAM,mBAAmB,GAA8B;oBACrD,GAAG;oBACH,KAAK;oBACL,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,IAAI,EAAE;oBAC1C,aAAa,EAAE,eAAe;oBAC9B,aAAa,EAAE,OAAO,EAAE,IAAI,IAAI,WAAW;oBAC3C,cAAc,EAAE,KAAK,EAAE,IAAI,IAAI,IAAI;oBACnC,WAAW,EAAE,OAAO,EAAE,WAAW,IAAI,OAAO,CAAC,GAAG,EAAE;iBACnD,CAAC;gBAEF,iBAAiB,GAAG,MAAM,iBAAiB,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;gBACrE,OAAO,CAAC,GAAG,CACT,gEAAgE,iBAAiB,CAAC,cAAc,EAAE,CACnG,CAAC;gBACF,OAAO,CAAC,GAAG,CACT,6BAA6B,iBAAiB,CAAC,oBAAoB,CAAC,MAAM,QAAQ,CACnF,CAAC;YACJ,CAAC;YAAC,OAAO,gBAAgB,EAAE,CAAC;gBAC1B,OAAO,CAAC,GAAG,CACT,0EAA0E,CAC3E,CAAC;gBAEF,IAAI,CAAC;oBACH,4CAA4C;oBAC5C,iBAAiB,GAAG,MAAM,IAAI,CAAC,sBAAsB,CACnD,OAAO,EACP,KAAK,EACL,EAAE,GAAG,EAAE,KAAK,EAAE,eAAe,EAAE,CAChC,CAAC;oBACF,OAAO,CAAC,GAAG,CACT,6CAA6C,iBAAiB,CAAC,cAAc,EAAE,CAChF,CAAC;gBACJ,CAAC;gBAAC,OAAO,cAAc,EAAE,CAAC;oBACxB,OAAO,CAAC,GAAG,CACT,6EAA6E,CAC9E,CAAC;oBAEF,wDAAwD;oBACxD,iBAAiB,GAAG,IAAI,CAAC,0BAA0B,CAAC,OAAO,EAAE,KAAK,EAAE;wBAClE,GAAG;wBACH,KAAK;wBACL,eAAe;qBAChB,CAAC,CAAC;oBACH,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;gBAC7D,CAAC;YACH,CAAC;YAED,MAAM,MAAM,GAAG,GAAG,iBAAiB,CAAC,YAAY,OAAO,iBAAiB,CAAC,UAAU,EAAE,CAAC;YAEtF,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC,iBAAiB,CAAC,MAAM,EAAE;gBAClD,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,SAAS,EAAE,IAAI,CAAC,SAAS;aAC1B,CAAC,CAAC;YAEH,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvD,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;YACrB,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,oDAAoD;YACpD,MAAM,YAAY,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACtE,MAAM,IAAI,KAAK,CACb,mCAAmC,YAAY,MAAM;gBACnD,8DAA8D;gBAC9D,sBAAsB;gBACtB,uDAAuD;gBACvD,mCAAmC;gBACnC,gCAAgC;gBAChC,sDAAsD,CACzD,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,sBAAsB,CAClC,SAAc,EACd,KAAU,EACV,OAAgE;QAOhE,MAAM,EAAE,GAAG,IAAI,+BAAc,EAAE,CAAC;QAEhC,MAAM,yBAAyB,GAAG;;;;eAIvB,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;WACtC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;;;SAGhC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;WACxB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;wBACd,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;;;;;;;;;;;;;;;;;;;;CAoB5D,CAAC;QAEE,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,iBAAiB,CAAC,yBAAyB,EAAE;YACrE,WAAW,EAAE,GAAG,EAAE,4DAA4D;YAC9E,SAAS,EAAE,IAAI;SAChB,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,iCAAiC;YACjC,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YACrD,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;YACnD,CAAC;YAED,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YAE5C,yBAAyB;YACzB,IAAI,CAAC,UAAU,CAAC,YAAY,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;gBACvD,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;YACvD,CAAC;YAED,OAAO;gBACL,YAAY,EAAE,UAAU,CAAC,YAAY;gBACrC,UAAU,EAAE,UAAU,CAAC,UAAU;gBACjC,cAAc,EAAE,UAAU,CAAC,cAAc,IAAI,sBAAsB;gBACnE,oBAAoB,EAAE,UAAU,CAAC,oBAAoB,IAAI,EAAE;aAC5D,CAAC;QACJ,CAAC;QAAC,OAAO,UAAU,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CACb,qDAAqD,UAAU,EAAE,CAClE,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACK,0BAA0B,CAChC,SAAc,EACd,KAAU,EACV,OAAgE;QAOhE,MAAM,UAAU,GAAG,IAAI,CAAC,4BAA4B,EAAE,CAAC;QAEvD,8CAA8C;QAC9C,MAAM,YAAY,GAAG,IAAI,CAAC,6BAA6B,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAE5E,mEAAmE;QACnE,MAAM,YAAY,GAAG;;;;;;;UAOf,SAAS,EAAE,IAAI,IAAI,aAAa;WAC/B,KAAK,EAAE,IAAI,IAAI,IAAI;sBACR,YAAY,CAAC,eAAe;kBAChC,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;;;8BAGvB,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAC1D,UAAU,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EACnC;;;;;;;;;EASF,YAAY,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;;;;;;qEAOF,CAAC;QAElE,MAAM,UAAU,GAAG,gBACjB,SAAS,EAAE,IACb;;;EAGF,IAAI,CAAC,SAAS,CACd;YACE,KAAK,EAAE,KAAK,EAAE,IAAI,IAAI,EAAE;YACxB,IAAI,EAAE,SAAS,EAAE,IAAI;YACrB,WAAW,EAAE,SAAS,EAAE,WAAW,IAAI,EAAE;YACzC,IAAI,EAAE,SAAS,EAAE,IAAI,IAAI,aAAa;YACtC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,WAAW,CAAC;gBAChD,CAAC,CAAC,SAAS,CAAC,WAAW;gBACvB,CAAC,CAAC,EAAE;YACN,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,eAAe,CAAC;gBACxD,CAAC,CAAC,SAAS,CAAC,eAAe;gBAC3B,CAAC,CAAC,EAAE;SACP,EACD,IAAI,EACJ,CAAC,CACF;;;EAGC,YAAY,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;;;EAGvC,YAAY,CAAC,aAAa;;;EAG1B,YAAY,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC;;uEAEyB,CAAC;QAEpE,OAAO;YACL,YAAY;YACZ,UAAU;YACV,cAAc,EAAE,8BAA8B,SAAS,EAAE,IAAI,KAAK,SAAS,EAAE,IAAI,GAAG;YACpF,oBAAoB,EAAE,YAAY,CAAC,oBAAoB;SACxD,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,6BAA6B,CACnC,SAAc,EACd,OAAgE;QAShE,MAAM,QAAQ,GAAG;YACf,eAAe,EAAE,sCAAsC;YACvD,WAAW,EAAE,EAAc;YAC3B,oBAAoB,EAAE,EAAc;YACpC,eAAe,EAAE,EAAc;YAC/B,aAAa,EAAE,kCAAkC;YACjD,oBAAoB,EAAE,EAAc;SACrC,CAAC;QAEF,yBAAyB;QACzB,IAAI,SAAS,EAAE,IAAI,KAAK,MAAM,EAAE,CAAC;YAC/B,QAAQ,CAAC,eAAe,GAAG,8CAA8C,CAAC;YAC1E,QAAQ,CAAC,WAAW,CAAC,IAAI,CACvB,kBAAkB,EAClB,gBAAgB,EAChB,sBAAsB,CACvB,CAAC;YACF,QAAQ,CAAC,oBAAoB,CAAC,IAAI,CAChC,yCAAyC,CAC1C,CAAC;YACF,QAAQ,CAAC,oBAAoB,CAAC,IAAI,CAChC,kDAAkD,CACnD,CAAC;QACJ,CAAC;aAAM,IAAI,SAAS,EAAE,IAAI,KAAK,MAAM,EAAE,CAAC;YACtC,QAAQ,CAAC,eAAe,GAAG,+BAA+B,CAAC;YAC3D,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,gBAAgB,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;YACrE,QAAQ,CAAC,oBAAoB,CAAC,IAAI,CAChC,gDAAgD,CACjD,CAAC;QACJ,CAAC;aAAM,IAAI,SAAS,EAAE,IAAI,KAAK,YAAY,EAAE,CAAC;YAC5C,QAAQ,CAAC,eAAe,GAAG,wBAAwB,CAAC;YACpD,QAAQ,CAAC,WAAW,CAAC,IAAI,CACvB,oBAAoB,EACpB,uBAAuB,EACvB,qBAAqB,CACtB,CAAC;YACF,QAAQ,CAAC,oBAAoB,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;YAClE,QAAQ,CAAC,oBAAoB,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;QAC3E,CAAC;QAED,sBAAsB;QACtB,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;YAChB,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;YAE3C,IAAI,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBACtE,QAAQ,CAAC,aAAa;oBACpB,kDAAkD,CAAC;gBACrD,QAAQ,CAAC,oBAAoB,CAAC,IAAI,CAChC,0CAA0C,CAC3C,CAAC;YACJ,CAAC;YAED,IAAI,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBACrE,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,oBAAoB,EAAE,mBAAmB,CAAC,CAAC;gBACrE,QAAQ,CAAC,oBAAoB,CAAC,IAAI,CAChC,6CAA6C,CAC9C,CAAC;YACJ,CAAC;YAED,IAAI,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;gBACpE,QAAQ,CAAC,aAAa,GAAG,qCAAqC,CAAC;gBAC/D,QAAQ,CAAC,oBAAoB,CAAC,IAAI,CAChC,8CAA8C,CAC/C,CAAC;YACJ,CAAC;YAED,QAAQ,CAAC,eAAe,CAAC,IAAI,CAC3B,kBACE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,sBAC/C,EAAE,CACH,CAAC;QACJ,CAAC;QAED,wBAAwB;QACxB,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,QAAQ,CAAC,eAAe,CAAC,IAAI,CAC3B,mDAAmD,CACpD,CAAC;YACF,QAAQ,CAAC,oBAAoB,CAAC,IAAI,CAChC,gDAAgD,CACjD,CAAC;QACJ,CAAC;QAED,oCAAoC;QACpC,QAAQ,CAAC,oBAAoB,CAAC,IAAI,CAChC,iCAAiC,EACjC,2BAA2B,EAC3B,8BAA8B,EAC9B,mCAAmC,CACpC,CAAC;QAEF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,4BAA4B;QAClC,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;YAClC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC;YACzD,IAAI,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzB,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;gBACpC,MAAM,KAAK,GAAG,KAAK;qBAChB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;qBACjC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;gBAClE,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;oBAAE,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;YAC5C,CAAC;QACH,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;QAEV,mDAAmD;QACnD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC7C,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAC5B,CAAC;YACF,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAC3B,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,EAAE,CAAC,CACjD,CAAC;YACF,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAC9D,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;QACtB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAEO,mBAAmB,CAAC,IAAY;QACtC,MAAM,OAAO,GAA2B;YACtC,cAAc,EAAE,aAAa;YAC7B,cAAc,EAAE,aAAa;YAC7B,YAAY,EAAE,WAAW;YACzB,WAAW,EAAE,UAAU;YACvB,iBAAiB,EAAE,gBAAgB;YACnC,aAAa,EAAE,YAAY;YAC3B,aAAa,EAAE,YAAY;YAC3B,cAAc,EAAE,aAAa;YAC7B,cAAc,EAAE,aAAa;YAC7B,eAAe,EAAE,cAAc;YAC/B,YAAY,EAAE,OAAO;YACrB,aAAa,EAAE,UAAU;YACzB,wDAAwD;SACzD,CAAC;QACF,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;QACtC,IAAI,OAAO,CAAC,GAAG,CAAC;YAAE,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC;QACtC,qBAAqB;QACrB,OAAO,GAAG;aACP,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC;aAC3B,KAAK,CAAC,GAAG,CAAC;aACV,MAAM,CAAC,OAAO,CAAC;aACf,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aAClD,IAAI,CAAC,EAAE,CAAC,CAAC;IACd,CAAC;IAEO,sBAAsB,CAAC,IAAY;QACzC,MAAM,OAAO,GAAa,EAAE,CAAC;QAE7B,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,MAAM;gBACT,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;gBACnD,MAAM;YACR,KAAK,QAAQ;gBACX,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;gBAChC,MAAM;YACR,KAAK,MAAM;gBACT,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;gBACjD,MAAM;YACR,KAAK,YAAY;gBACf,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;gBACtC,MAAM;YACR,KAAK,UAAU;gBACb,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;gBACtC,MAAM;YACR;gBACE,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC7B,CAAC;QAED,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;IAC/B,CAAC;IAEO,uBAAuB,CAAC,IAAY;QAC1C,MAAM,OAAO,GAAa,EAAE,CAAC;QAE7B,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,MAAM;gBACT,OAAO,CAAC,IAAI,CACV,QAAQ,EACR,OAAO,EACP,OAAO,EACP,MAAM,EACN,aAAa,EACb,WAAW,EACX,UAAU,EACV,WAAW,EACX,aAAa,EACb,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,eAAe,EACf,aAAa,EACb,UAAU,EACV,OAAO,EACP,kBAAkB,CACnB,CAAC;gBACF,MAAM;YACR,KAAK,QAAQ;gBACX,OAAO,CAAC,IAAI,CACV,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,WAAW,EACX,WAAW,CACZ,CAAC;gBACF,MAAM;YACR,KAAK,MAAM;gBACT,OAAO,CAAC,IAAI,CACV,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,QAAQ,CACT,CAAC;gBACF,MAAM;YACR,KAAK,QAAQ;gBACX,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACvB,MAAM;YACR,KAAK,YAAY;gBACf,OAAO,CAAC,IAAI,CACV,gBAAgB,EAChB,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,qBAAqB,EACrB,MAAM,EACN,aAAa,EACb,UAAU,EACV,aAAa,CACd,CAAC;gBACF,MAAM;YACR,KAAK,UAAU;gBACb,OAAO,CAAC,IAAI,CACV,OAAO,EACP,kBAAkB,EAClB,YAAY,EACZ,QAAQ,EACR,eAAe,EACf,mBAAmB,EACnB,cAAc,EACd,aAAa,EACb,eAAe,EACf,OAAO,EACP,UAAU,CACX,CAAC;gBACF,MAAM;YACR,KAAK,MAAM;gBACT,OAAO,CAAC,IAAI,CACV,OAAO,EACP,WAAW,EACX,WAAW,EACX,WAAW,EACX,aAAa,EACb,UAAU,EACV,SAAS,EACT,cAAc,EACd,cAAc,EACd,cAAc,EACd,aAAa,EACb,aAAa,CACd,CAAC;gBACF,MAAM;YACR,KAAK,SAAS;gBACZ,OAAO,CAAC,IAAI,CACV,SAAS,EACT,gBAAgB,EAChB,gBAAgB,EAChB,SAAS,EACT,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,OAAO,EACP,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,YAAY,EACZ,cAAc,CACf,CAAC;gBACF,MAAM;YACR,KAAK,OAAO;gBACV,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,gBAAgB,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;gBACjE,MAAM;YACR;gBACE,OAAO,CAAC,IAAI,CACV,MAAM,EACN,aAAa,EACb,YAAY,EACZ,WAAW,EACX,QAAQ,CACT,CAAC;QACN,CAAC;QAED,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;IAC/B,CAAC;IAEO,uBAAuB,CAAC,IAAY;QAC1C,MAAM,OAAO,GAAa,EAAE,CAAC;QAE7B,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,OAAO,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;YAC3D,OAAO,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;YACvE,OAAO,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QAC5C,CAAC;QAED,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;YAC1B,OAAO,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;YAC9C,OAAO,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;QACjE,CAAC;QAED,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,OAAO,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;QACnD,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,uBAAuB,CAAC,IAAY,EAAE,IAAY;QACxD,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,MAAM;gBACT,OAAO;;eAEA,IAAI,CAAC,WAAW,EAAE;;;;;;;;;;;;;;;cAenB,IAAI,6BAA6B,IAAI,CAAC,WAAW,EAAE;;;mBAG9C,IAAI;;;;EAIrB,CAAC;YACG,KAAK,YAAY;gBACf,OAAO;;;;;;;;;;;;;EAab,CAAC;YACG,KAAK,MAAM;gBACT,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;EAyBb,CAAC;YACG;gBACE,OAAO,EAAE,CAAC;QACd,CAAC;IACH,CAAC;IAEO,4BAA4B,CAAC,IAAY;QAC/C,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,MAAM;gBACT,OAAO;;sBAEO,IAAI,wBAAwB,IAAI,uBAAuB,IAAI;;;;;;;;4BAQrD,IAAI;;;;2CAIW,IAAI,0BAA0B,CAAC;YACpE,KAAK,QAAQ;gBACX,OAAO;;;;;;;;;;;;;;gCAciB,CAAC;YAC3B,KAAK,MAAM;gBACT,OAAO;;;;;;;;;;;;;;;;kCAgBmB,CAAC;YAC7B,KAAK,QAAQ;gBACX,OAAO;;;;;;;;;;;;;;;;yBAgBU,CAAC;YACpB,KAAK,YAAY;gBACf,OAAO;;;;;;;;;;;;+CAYgC,CAAC;YAC1C,KAAK,UAAU;gBACb,OAAO;;;;;;;;;;;;;;0BAcW,CAAC;YACrB,KAAK,MAAM;gBACT,OAAO;;;;;;;;;;;;;;;;;;;;gEAoBiD,CAAC;YAC3D;gBACE,OAAO;;;;uBAIQ,CAAC;QACpB,CAAC;IACH,CAAC;IAEO,oBAAoB,CAAC,IAAY;QACvC,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,MAAM;gBACT,OAAO,uEAAuE,CAAC;YACjF,KAAK,QAAQ;gBACX,OAAO,yEAAyE,CAAC;YACnF,KAAK,MAAM;gBACT,OAAO,+DAA+D,CAAC;YACzE,KAAK,QAAQ;gBACX,OAAO,+DAA+D,CAAC;YACzE,KAAK,YAAY;gBACf,OAAO,8EAA8E,CAAC;YACxF,KAAK,UAAU;gBACb,OAAO,2DAA2D,CAAC;YACrE,KAAK,MAAM;gBACT,OAAO,2DAA2D,CAAC;YACrE;gBACE,OAAO,mBAAmB,CAAC;QAC/B,CAAC;IACH,CAAC;IAEO,kCAAkC,CAAC,IAAY;QACrD,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,MAAM;gBACT,OAAO;;;;;;;mBAOI,CAAC;YACd,KAAK,QAAQ;gBACX,OAAO;;;;;;;6BAOc,CAAC;YACxB,KAAK,MAAM;gBACT,OAAO;;;;;;;;oBAQK,CAAC;YACf,KAAK,QAAQ;gBACX,OAAO;;;;;;;;2BAQY,CAAC;YACtB,KAAK,YAAY;gBACf,OAAO;;;;;;uBAMQ,CAAC;YAClB,KAAK,UAAU;gBACb,OAAO;;;;;;;QAOP,CAAC;YACH,KAAK,MAAM;gBACT,OAAO;;;;;;;;;;aAUF,CAAC;YACR;gBACE,OAAO;;uBAEQ,CAAC;QACpB,CAAC;IACH,CAAC;IAEO,gCAAgC,CACtC,IAAY,EACZ,eAAyB,EACzB,aAAqB;QAErB,MAAM,KAAK,GAAG,EAAE,CAAC;QAEjB,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,KAAK,CAAC,IAAI,CAAC;;;yBAGQ,aAAa;4BACV,aAAa,CAAC,WAAW,EAAE;;;;;;;;wDAQC,aAAa;;;;;;;;;;yCAU5B,aAAa;;;;;;;;;wBAS9B,CAAC,CAAC;QACtB,CAAC;QAED,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;YAC1B,KAAK,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;UAkBP,CAAC,CAAC;QACR,CAAC;QAED,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,KAAK,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAuDU,CAAC,CAAC;QACzB,CAAC;QAED,IAAI,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9C,KAAK,CAAC,IAAI,CAAC;;;;;;oCAMmB,CAAC,CAAC;QAClC,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAEO,8BAA8B,CACpC,IAAY,EACZ,IAAY,EACZ,aAAuB;QAEvB,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,MAAM;gBACT,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAkGH,CAAC;YAEP,KAAK,QAAQ;gBACX,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAqDJ,CAAC;YAEN,KAAK,MAAM;gBACT,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAoDH,CAAC;YAEP,KAAK,QAAQ;gBACX,OAAO;;;;;;;;;;;;;;;;;;;;cAoBD,CAAC;YAET,KAAK,YAAY;gBACf,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBA0EO,CAAC;YAEjB,KAAK,UAAU;gBACb,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aA+BF,CAAC;YAER,KAAK,MAAM;gBACT,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAuHJ,CAAC;YAEN;gBACE,OAAO;;qBAEM,IAAI;;;;uCAIc,IAAI;;;;YAI/B,CAAC;QACT,CAAC;IACH,CAAC;IAEO,iCAAiC,CACvC,eAAyB,EACzB,aAAqB,EACrB,IAAY;QAEZ,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAE5C,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YAC7C,QAAQ,IAAI,EAAE,CAAC;gBACb,KAAK,cAAc;oBACjB,OAAO,IAAI,KAAK,MAAM;wBACpB,CAAC,CAAC,oDAAoD;wBACtD,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoDZ,CAAC;gBACK,KAAK,aAAa;oBAChB,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiFf,CAAC;gBACK,KAAK,eAAe;oBAClB,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyCf,CAAC;gBACK;oBACE,OAAO;;KAEZ,IAAI;;;;;;;;0BAQiB,IAAI;;;;;;;wBAON,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAmCH,IAAI;;;;;;;;;;;;;mFAasD,IAAI;;;;EAIrF,CAAC;YACG,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAEO,mBAAmB,CAAC,IAAY;QACtC,MAAM,YAAY,GAAa,EAAE,CAAC;QAElC,4BAA4B;QAC5B,MAAM,WAAW,GAAG,yCAAyC,CAAC;QAC9D,IAAI,KAAK,CAAC;QAEV,OAAO,CAAC,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACjD,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YAC5B,IACE,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC;gBAC3B,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC;gBAC3B,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,EAC5B,CAAC;gBACD,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAChC,CAAC;QACH,CAAC;QAED,2CAA2C;QAC3C,MAAM,gBAAgB,GAAG,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAC5D,gBAAgB,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAChC,YAAY,CAAC,IAAI,CAAC,mBAAmB,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,oBAAoB;QACpB,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC;IACpC,CAAC;IAEO,uBAAuB,CAAC,IAAY;QAC1C,MAAM,UAAU,GAAa,EAAE,CAAC;QAEhC,sCAAsC;QACtC,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC;aAC7B,IAAI,EAAE;aACN,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAChB,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxB,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACxB,CAAC;QACH,CAAC,CAAC,CAAC;QAEL,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;IAClC,CAAC;IAEO,qBAAqB,CAAC,IAAY;QACxC,IAAI,KAAK,GAAG,EAAE,CAAC,CAAC,aAAa;QAE7B,uCAAuC;QACvC,MAAM,gBAAgB,GAAG,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAC5D,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;QAEnD,oCAAoC;QACpC,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;YAAE,KAAK,IAAI,EAAE,CAAC;QACtE,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC;YACnE,KAAK,IAAI,CAAC,CAAC;QAEb,qCAAqC;QACrC,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;YAAE,KAAK,IAAI,CAAC,CAAC;QACxE,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;YAAE,KAAK,IAAI,CAAC,CAAC;QAEzE,mCAAmC;QACnC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;YAAE,KAAK,IAAI,EAAE,CAAC;QAClE,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;YAAE,KAAK,IAAI,CAAC,CAAC;QAExE,0CAA0C;QAC1C,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;YAAE,KAAK,IAAI,CAAC,CAAC;QAC/D,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;YAAE,KAAK,IAAI,CAAC,CAAC;QAE1E,+CAA+C;QAC/C,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;YAAE,KAAK,IAAI,CAAC,CAAC;QACjE,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;YAAE,KAAK,IAAI,CAAC,CAAC;QAEzC,gCAAgC;QAChC,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;YAAE,KAAK,IAAI,CAAC,CAAC;QACzE,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;YAAE,KAAK,IAAI,CAAC,CAAC;QAE3E,aAAa;QACb,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC9B,CAAC;IAEO,qBAAqB,CAAC,WAAmB;QAC/C,mDAAmD;QACnD,OAAO,WAAW;aACf,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;aACzE,IAAI,CAAC,EAAE,CAAC;aACR,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IAClC,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAC9B,SAAc,EACd,KAAU,EACV,OAAY;QAEZ,IAAI,CAAC;YACH,MAAM,EAAE,YAAY,EAAE,GAAG,wDAAa,0BAA0B,GAAC,CAAC;YAClE,MAAM,YAAY,GAAG,IAAI,YAAY,CACnC,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,wBAAwB,CACxD,CAAC;YAEF,wBAAwB;YACxB,MAAM,WAAW,GAAG,MAAM,YAAY,CAAC,cAAc,EAAE,CAAC;YACxD,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CACb,0FAA0F,CAC3F,CAAC;YACJ,CAAC;YAED,4BAA4B;YAC5B,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;YAChE,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,IAAI,KAAK,CACb,gGAAgG,CACjG,CAAC;YACJ,CAAC;YAED,OAAO,MAAM,YAAY,CAAC,iBAAiB,CACzC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EACzB,iBAAiB,CAClB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,2DAA2D;YAC3D,MAAM,IAAI,KAAK,CACb,6BACE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAC3C,IAAI;gBACF,gFAAgF;gBAChF,+DAA+D,CAClE,CAAC;QACJ,CAAC;IACH,CAAC;CACF;AA3kED,0CA2kEC"}
@@ -0,0 +1,50 @@
1
+ import { SubAgent } from "../interfaces/SubAgent";
2
+ export interface PromptConstructionContext {
3
+ prd?: string;
4
+ types?: string;
5
+ branding?: string;
6
+ componentList?: string;
7
+ componentName: string;
8
+ componentGroup: string;
9
+ projectPath: string;
10
+ }
11
+ export interface ConstructedPrompt {
12
+ systemPrompt: string;
13
+ userPrompt: string;
14
+ contextSummary: string;
15
+ specificRequirements: string[];
16
+ }
17
+ /**
18
+ * PromptConstructorAgent
19
+ *
20
+ * Analyzes all context files and constructs highly specific prompts
21
+ * for component generation based on project requirements, types, and branding.
22
+ *
23
+ * Features:
24
+ * - Context file analysis and extraction
25
+ * - Component-specific requirement generation
26
+ * - Intelligent prompt construction
27
+ * - Domain knowledge integration
28
+ */
29
+ export declare class PromptConstructorAgent implements SubAgent<PromptConstructionContext, ConstructedPrompt> {
30
+ name: string;
31
+ description: string;
32
+ personality: string;
33
+ llmProvider: string;
34
+ expertise: string[];
35
+ run(context: PromptConstructionContext): Promise<ConstructedPrompt>;
36
+ private analyzeContextFiles;
37
+ private enhancePromptWithAI;
38
+ private extractDomain;
39
+ private extractBusinessLogic;
40
+ private extractUserStories;
41
+ private extractTechnicalRequirements;
42
+ private extractDataStructures;
43
+ private extractBrandingGuidelines;
44
+ private extractUIPatterns;
45
+ private extractComponentRequirements;
46
+ private constructPrompt;
47
+ private detectExternalDependencies;
48
+ private extractDependenciesFromText;
49
+ }
50
+ //# sourceMappingURL=PromptConstructorAgent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PromptConstructorAgent.d.ts","sourceRoot":"","sources":["../../../src/agents/implementations/PromptConstructorAgent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAIlD,MAAM,WAAW,yBAAyB;IACxC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,oBAAoB,EAAE,MAAM,EAAE,CAAC;CAChC;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,sBACX,YAAW,QAAQ,CAAC,yBAAyB,EAAE,iBAAiB,CAAC;IAEjE,IAAI,SAA4B;IAChC,WAAW,SAC8E;IACzF,WAAW,SAAgD;IAC3D,WAAW,EAAE,MAAM,CAAY;IAC/B,SAAS,WAKP;IAEI,GAAG,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,iBAAiB,CAAC;YA2B3D,mBAAmB;YAuDnB,mBAAmB;IAsEjC,OAAO,CAAC,aAAa;IAuBrB,OAAO,CAAC,oBAAoB;IAwB5B,OAAO,CAAC,kBAAkB;IAiB1B,OAAO,CAAC,4BAA4B;IAmBpC,OAAO,CAAC,qBAAqB;IAiB7B,OAAO,CAAC,yBAAyB;IAmBjC,OAAO,CAAC,iBAAiB;YA8BX,4BAA4B;YAgD5B,eAAe;IA6G7B,OAAO,CAAC,0BAA0B;IA6FlC,OAAO,CAAC,2BAA2B;CA0BpC"}