mycontext-cli 0.4.7 → 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 (73) hide show
  1. package/README.md +261 -67
  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 +303 -58
  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 +49 -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 +42 -422
  47. package/dist/commands/generate-components.js.map +1 -1
  48. package/dist/commands/generate.d.ts +5 -1
  49. package/dist/commands/generate.d.ts.map +1 -1
  50. package/dist/commands/generate.js +381 -23
  51. package/dist/commands/generate.js.map +1 -1
  52. package/dist/commands/init.d.ts.map +1 -1
  53. package/dist/commands/init.js +12 -6
  54. package/dist/commands/init.js.map +1 -1
  55. package/dist/commands/predict.d.ts +36 -0
  56. package/dist/commands/predict.d.ts.map +1 -0
  57. package/dist/commands/predict.js +539 -0
  58. package/dist/commands/predict.js.map +1 -0
  59. package/dist/utils/clean.d.ts +6 -0
  60. package/dist/utils/clean.d.ts.map +1 -0
  61. package/dist/utils/clean.js +220 -0
  62. package/dist/utils/clean.js.map +1 -0
  63. package/dist/utils/githubModelsClient.d.ts.map +1 -1
  64. package/dist/utils/githubModelsClient.js +33 -16
  65. package/dist/utils/githubModelsClient.js.map +1 -1
  66. package/dist/utils/hybridAIClient.d.ts +1 -0
  67. package/dist/utils/hybridAIClient.d.ts.map +1 -1
  68. package/dist/utils/hybridAIClient.js +23 -9
  69. package/dist/utils/hybridAIClient.js.map +1 -1
  70. package/dist/utils/ollamaClient.d.ts.map +1 -1
  71. package/dist/utils/ollamaClient.js +6 -4
  72. package/dist/utils/ollamaClient.js.map +1 -1
  73. package/package.json +2 -1
package/README.md CHANGED
@@ -1,8 +1,10 @@
1
1
  # mycontext CLI
2
2
 
3
- **AI-Powered Component Generation with shadcn/ui & Next.js** 🚀
3
+ **🧠 The AI That Actually Understands Your Project** 🚀
4
4
 
5
- mycontext CLI transforms your project ideas into production-ready components with a context-first approach. Generate PRD, types, brand, and a component list, then create standardized shadcn/ui components with optional tests.
5
+ mycontext CLI is the first **agentic AI development tool** with specialized intelligence agents that understand your codebase, predict your needs, and generate production-ready components. **BETA READY** with complete agentic AI architecture and Ollama fallback.
6
+
7
+ **✅ WORKING NOW**: Ollama fallback provides unlimited component generation without API keys when GitHub Models is rate-limited.
6
8
 
7
9
  ## 🚀 Quick Start
8
10
 
@@ -22,100 +24,292 @@ mycontext update
22
24
  mycontext --up
23
25
  ```
24
26
 
25
- ### Generate
27
+ ### Ollama Setup (Recommended for Unlimited Generation)
28
+
29
+ For unlimited component generation without API rate limits:
26
30
 
27
31
  ```bash
28
- # 1) Init and enter project
29
- mycontext init my-app
32
+ # Install Ollama (one-time setup)
33
+ curl -fsSL https://ollama.ai/install.sh | sh
34
+
35
+ # Pull the specialized MyContext model
36
+ ollama pull llama3.2:3b
37
+
38
+ # Verify installation
39
+ mycontext model status
40
+ ```
41
+
42
+ **Benefits:**
43
+
44
+ - ✅ **Zero API costs** - Generate unlimited components
45
+ - ✅ **Works offline** - No internet required after setup
46
+ - ✅ **No rate limits** - Generate as much as you want
47
+ - ✅ **Complete privacy** - Your code stays local
48
+
49
+ ## 🧠 **ENHANCED AI ARCHITECTURE**
50
+
51
+ ### ✅ **Complete Agentic System (Production Ready)**
52
+
53
+ - **ProjectIntelligence Engine** - Deep codebase analysis and pattern learning
54
+ - **Multi-Agent Architecture** - ArchitectAgent, SecurityAgent, QAAgent, DocsAgent
55
+ - **Predictive Development** - `mycontext predict` commands for intelligent suggestions
56
+ - **Code Evolution Engine** - Automated refactoring and optimization recommendations
57
+ - **Cross-Project Learning** - Knowledge sharing across projects and patterns
58
+ - **Context Generation** - PRD, types, branding, component planning
59
+ - **Component Generation** - Production-ready React components
60
+ - **Enhanced CLI** - Complete agentic command interface
61
+
62
+ ### 🔄 **Enhanced Features (Available Now)**
63
+
64
+ - **Intelligent Predictions** - Next steps, dependencies, patterns, issues, optimizations
65
+ - **Architectural Insights** - System design analysis and scalability recommendations
66
+ - **Security Analysis** - Vulnerability scanning and compliance checking
67
+ - **Quality Assurance** - Automated code review and quality scoring
68
+ - **Documentation Generation** - Comprehensive docs with JSDoc and usage examples
69
+ - **Auto-Cleanup** - `mycontext clean` command for project maintenance
70
+
71
+ ### 🚀 **Coming Soon**
72
+
73
+ - **VS Code Extension** - Visual agent management and live preview
74
+ - **Real-time Collaboration** - Multi-user agentic workflows
75
+ - **Advanced Learning** - Enhanced cross-project intelligence
76
+ - **Custom AI Agents** - Build your own specialized agents
77
+
78
+ ### **Enhanced Agentic Workflow (Production Ready)**
79
+
80
+ ```bash
81
+ # 1) Initialize project with ProjectIntelligence
82
+ mycontext init my-app --description "AI-powered platform"
30
83
  cd my-app
31
84
 
32
- # Enable GitHub Models (recommended) - set token in this project
85
+ # Optional: Enable GitHub Models for faster generation
33
86
  echo 'MYCONTEXT_GITHUB_TOKEN=ghp_xxx' > .mycontext/.env
34
87
 
35
- # Optional: list available models
36
- mycontext model list
37
-
38
- # 2) Context & types
39
- mycontext generate context
40
- # paste PRD when prompted, or
41
- # echo "...long PRD..." | mycontext generate context
42
- # mycontext generate context --description "Short description"
88
+ # 2) Generate comprehensive context with multi-agent analysis
89
+ mycontext generate context --description "Your project description"
43
90
  mycontext generate types
91
+ mycontext generate brand
92
+ mycontext generate components-list
44
93
 
45
- # 3) Core-first design anchor (BrandComp)
46
- mycontext core --group core generate
47
- # writes components/.mycontext/core/BrandComp.tsx
48
- # refine manually or record notes
49
- mycontext core refine --desc "Tighten spacing/colors"
50
- # when satisfied
51
- mycontext core ready
94
+ # 3) Experience the enhanced agentic features
95
+ mycontext predict next # AI predicts next development steps
96
+ mycontext predict dependencies # Suggests optimal packages and tools
97
+ mycontext predict patterns # Identifies architectural patterns
98
+ mycontext predict issues # Forecasts potential problems
99
+ mycontext predict optimization # Recommends performance improvements
100
+
101
+ # 4) Generate production-ready components with AI agents
102
+ mycontext generate-components all --local --with-tests
52
103
 
53
- # 4) Plan components (alias supported: component-list)
54
- mycontext generate components-list --force
55
- # You'll be prompted to select the core (unless --yes). Or later:
56
- mycontext core set BrandComp
104
+ # 5) Clean and maintain your project intelligently
105
+ mycontext clean # Auto-fix malformed files and issues
106
+
107
+ # 6) Preview and iterate
108
+ mycontext preview components
109
+ mycontext list components --local
110
+ ```
111
+
112
+ ### **Advanced Intelligence Commands**
113
+
114
+ ```bash
115
+ # Core component management (design anchor)
116
+ mycontext core generate BrandComp
117
+ mycontext core refine --desc "Improve spacing and colors"
118
+ mycontext core ready
57
119
 
58
- # 5) Generate components locally (installs shadcn primitives, adds tests)
59
- mycontext generate-components all --local --with-tests --check
120
+ # Specialized agent workflows
121
+ mycontext agent-flow generate-context # Multi-agent context generation
122
+ mycontext agent-flow validate-workflow # Test agent communication
60
123
 
61
- # Live preview (auto-updated) and final canvas
62
- mycontext preview components # HTML overview
63
- mycontext normalize preview # Build .mycontext/preview-layout.json
124
+ # Project intelligence and analysis
125
+ mycontext status --detailed # Comprehensive project analysis
126
+ mycontext validate prd --interactive # AI-powered PRD validation
64
127
  ```
65
128
 
66
129
  ## 📦 Outputs
67
130
 
68
- - `context/prd.md` — PRD
69
- - `context/types.ts` — TypeScript types
70
- - `context/branding.md` — Brand guidelines
71
- - `context/component-list.json` — Component plan (merged by name when re-generated)
131
+ - `.mycontext/prd.md` — PRD
132
+ - `.mycontext/types.ts` — TypeScript types
133
+ - `.mycontext/branding.md` — Brand guidelines
134
+ - `.mycontext/component-list.json` — Component plan (merged by name when re-generated)
72
135
  - `components/.mycontext/` — Generated components (safe default to avoid overriding user code)
73
136
  - Group directories: kebab-case (e.g., `user-interface/`)
74
137
  - Component files: PascalCase (e.g., `GameBoard.tsx`)
75
138
 
76
139
  Numbered aliases for easy sorting (display-only):
77
140
 
78
- - `context/01-prd.md`
79
- - `context/02-types.ts`
80
- - `context/03-branding.md`
81
- - `context/04-component-list.json`
141
+ - `.mycontext/01-prd.md`
142
+ - `.mycontext/01a-brief.md` — Project overview and brief
143
+ - `.mycontext/01b-requirements.md` — Technical requirements
144
+ - `.mycontext/01c-flows.md` — User flows and workflows
145
+ - `.mycontext/02-types.ts`
146
+ - `.mycontext/03-branding.md`
147
+ - `.mycontext/04-component-list.json`
148
+ - `.mycontext/05-project-structure.md` — Next.js project structure with dialog/datatable prioritization
149
+
150
+ ## 🔧 Complete Command Reference
82
151
 
83
- ## 🔧 Commands (highlights)
152
+ ### **Core Workflow Commands**
84
153
 
85
154
  ```bash
86
- # Generate (cloud-first GitHub Models, local fallback)
87
- mycontext generate context --description "Simple app"
88
- mycontext generate types
89
- mycontext generate brand
90
- mycontext generate components-list
155
+ # Project Setup
156
+ mycontext init <project-name> [--description "text"] [--framework nextjs]
157
+ mycontext setup [--local] [--force] # Local AI setup
91
158
 
92
- # Accepts alias
93
- mycontext generate component-list
159
+ # Context Generation
160
+ mycontext generate context [--description "text"] # PRD + user stories
161
+ mycontext generate types # TypeScript interfaces
162
+ mycontext generate brand # Design system
163
+ mycontext generate components-list # Component planning
164
+ mycontext generate project-structure # Next.js project structure (NEW!)
165
+ mycontext validate prd [--interactive] # PRD validation
94
166
 
95
- # Components (core-first and preview flags)
96
- mycontext generate-components all --local --with-tests --final-canvas
97
- mycontext generate-components all --local --core-first # core-only then stop
98
- mycontext generate-components authentication --local --no-update-preview
167
+ # Core Component (Brand Anchor)
168
+ mycontext core generate [name] [--group core] # Generate BrandComp
169
+ mycontext core refine [--desc "improvements"] # Record refinements
170
+ mycontext core ready # Mark ready for use
171
+ mycontext core status # Check core status
99
172
 
100
- # Preview & Normalize
101
- mycontext preview components
102
- mycontext normalize preview
173
+ # Component Generation
174
+ mycontext generate-components all [--local] [--with-tests] [--check]
175
+ mycontext generate-components <group> [--local] # Single group
176
+ mycontext generate-components all --core-first # Core only, then stop
177
+ ```
178
+
179
+ ### **AI Enhancement Commands**
180
+
181
+ ```bash
182
+ # Component Enhancement & Refinement
183
+ mycontext enhance <component.tsx> [--prompt "improvements"]
184
+ mycontext enhance <group-name> [--interactive] # Group enhancement
185
+ mycontext refine <component.tsx> [--prompt "changes"] # Focused refinement
186
+ mycontext refine <component.tsx> --rollback # Rollback changes
187
+
188
+ # Enhancement Options
189
+ --output-format <format> # structured, diff, preview, apply
190
+ --show-changes # Show detailed change breakdown
191
+ --preserve-history # Keep refinement history
192
+ --interactive # VS Code extension mode
193
+ ```
194
+
195
+ ### **Project Management**
196
+
197
+ ```bash
198
+ # Status & Information
199
+ mycontext status [--detailed] [--check-health] # Project status
200
+ mycontext list [type] [--format table|json] [--local] # List resources
201
+ mycontext preview <type> [--port 3000] # Preview components
202
+
203
+ # List Types: components, projects, files, all
204
+ # Preview Types: brand, components, generated, <group-name>
205
+
206
+ # Authentication
207
+ mycontext auth [--email] [--code] [--non-interactive] # Magic code auth
208
+ mycontext auth:status # Check auth status
209
+ mycontext auth:logout # Logout
103
210
  ```
104
211
 
105
- ### Flags & behavior
212
+ ### **Model & AI Management**
106
213
 
107
- - `--description`, `--context-file`: supply input context
108
- - `--model`, `--models`/`--use-models`/`--model-candidates`: model override/fallbacks
109
- - `--local`: generate components without auth; remote storage is skipped silently
110
- - `--with-tests`: scaffold Jest + RTL and generate per-component tests
111
- - Component list saves to `context/component-list.json` and merges by group/component name
112
- - Neutral fallback: if AI times out for component-list, a valid skeleton is written so you can edit and re-run
113
- - Post-generation import scan installs any missing `@/components/ui/*` shadcn primitives actually used
114
- - Prompts include the plan banner: `[mycontext] Plan: plan generate → QA → docs → preview (→ checks)`
214
+ ```bash
215
+ # Local Model Management
216
+ mycontext model status [--detailed] # Model health check
217
+ mycontext model list # Available models
218
+ mycontext model test [--prompt "text"] [--verbose] # Test generation
219
+ mycontext model update [--backup] # Update model
220
+ mycontext model reset [--force] # Reset to clean state
221
+ mycontext model stats [--detailed] [--last 30d] # Usage statistics
222
+ ```
223
+
224
+ ### **🧠 Enhanced Intelligence Commands**
225
+
226
+ ```bash
227
+ # Predictive Development (Production Ready)
228
+ mycontext predict next # Predict next development steps
229
+ mycontext predict dependencies # Suggest optimal packages and tools
230
+ mycontext predict patterns # Identify architectural patterns
231
+ mycontext predict issues # Forecast potential problems
232
+ mycontext predict optimization # Recommend performance improvements
233
+
234
+ # Agent Communication & Auto-Generation
235
+ mycontext agent-flow generate-context # Multi-agent context generation
236
+ mycontext agent-flow validate-workflow # Test agent communication system
237
+ mycontext clean # Auto-fix malformed files and issues
238
+
239
+ # Intelligence Options
240
+ --detailed # Show comprehensive analysis
241
+ --format json|table # Output format
242
+ --scope next|dependencies|patterns|issues|optimization # Prediction scope
243
+ ```
244
+
245
+ ### **Utilities & Maintenance**
246
+
247
+ ```bash
248
+ # Utilities
249
+ mycontext normalize preview # Build preview layout
250
+ mycontext update # Update CLI
251
+ mycontext help # Detailed help
252
+
253
+ # Global Options
254
+ --verbose # Detailed output
255
+ --yes # Skip prompts (non-interactive)
256
+ --project <name> # Specify project
257
+ --model <name> # Override model
258
+ --models <list> # Fallback models (comma-separated)
259
+ ```
260
+
261
+ ### **Key Options & Behavior**
262
+
263
+ - `--description`, `--context-file`: Supply input context for generation
264
+ - `--model`, `--models`/`--use-models`: Model override and fallback candidates
265
+ - `--local`: Generate components without auth; remote storage skipped silently
266
+ - `--with-tests`: Scaffold Jest + RTL and generate per-component tests
267
+ - `--check`: Run typecheck, lint, and tests after generation
268
+ - `--core-first`: Generate only core BrandComp, then exit
269
+ - `--interactive`: VS Code extension mode with structured output
270
+ - `--preserve-history`: Keep enhancement/refinement history for rollback
271
+
272
+ ### **Important Behaviors**
273
+
274
+ - Component list saves to `.mycontext/component-list.json` and merges by name when re-generated
275
+ - Post-generation scan installs missing `@/components/ui/*` shadcn primitives automatically
276
+ - Neutral fallback: if AI times out, valid skeleton written for manual editing
277
+ - Core-first workflow: components-list generation prompts for core selection
278
+
279
+ ## 🛠 Environment & Configuration
280
+
281
+ ### **Authentication & Models**
282
+
283
+ ```bash
284
+ # GitHub Models (optional - provides faster generation when available)
285
+ MYCONTEXT_GITHUB_TOKEN=ghp_xxx # Set in .mycontext/.env for faster generation
286
+
287
+ # Ollama (automatic fallback - works without API keys)
288
+ # Install Ollama locally for unlimited component generation
289
+ # No API keys required - works offline when GitHub Models is rate-limited
290
+
291
+ # Alternative providers (optional)
292
+ HUGGINGFACE_API_KEY=hf_xxx # Hugging Face fallback
293
+ XAI_API_KEY=xai_xxx # X.AI (Grok) fallback
294
+ ```
295
+
296
+ ### **Model Configuration**
297
+
298
+ ```bash
299
+ # Model selection
300
+ MYCONTEXT_MODEL=deepseek/DeepSeek-V3-0324 # Override default model
301
+ MYCONTEXT_MODEL_CANDIDATES=gpt-4o,claude-3-5 # Fallback list
302
+ MYCONTEXT_PROVIDER=github # Force provider
303
+
304
+ # Rate limiting & retries
305
+ MYCONTEXT_GITHUB_RETRIES=3 # Retry attempts
306
+ MYCONTEXT_MODEL_PASSES=2 # Model fallback passes
307
+ MYCONTEXT_MODEL_COOLDOWN_SECONDS=30 # Cooldown between retries
308
+ ```
115
309
 
116
- ## 🛠 Notes
310
+ ### **Setup Notes**
117
311
 
118
- - Init creates `.mycontext/.env.example` with suggested keys.
119
- - Set `MYCONTEXT_GITHUB_TOKEN` (models:read) in `.mycontext/.env` for GitHub Models.
120
- - Standardized naming ensures clean imports and paths.
121
- - For advanced envs, see `.mycontext/.env.example` or the repo `env.example`.
312
+ - Init creates `.mycontext/.env.example` with suggested environment variables
313
+ - Standardized naming ensures clean imports and shadcn/ui compatibility
314
+ - Components generated in `components/.mycontext/` to avoid overriding user code
315
+ - Preview system auto-updates with live component registry
@@ -0,0 +1,27 @@
1
+ import { AgentMessage, AgentIntent, AgentContext, AgentCommunicationHandler, IntentResolver, WorkflowConfig } from "../interfaces/AgentCommunication";
2
+ import { SubAgentOrchestrator } from "../orchestrator/SubAgentOrchestrator";
3
+ export declare class AgentCommunicationManager implements AgentCommunicationHandler {
4
+ private messageHistory;
5
+ private orchestrator;
6
+ private intentResolver;
7
+ constructor(orchestrator: SubAgentOrchestrator, intentResolver?: IntentResolver);
8
+ sendMessage(message: AgentMessage): Promise<void>;
9
+ receiveMessage(agentName: string): Promise<AgentMessage | null>;
10
+ broadcastMessage(message: Omit<AgentMessage, "to">): Promise<void>;
11
+ getMessageHistory(agentName?: string): Promise<AgentMessage[]>;
12
+ clearHistory(): Promise<void>;
13
+ private saveMessageLog;
14
+ runAutoWorkflow(initialAgent: string, context: AgentContext, config: WorkflowConfig): Promise<{
15
+ success: boolean;
16
+ outputs: Record<string, any>;
17
+ messages: AgentMessage[];
18
+ }>;
19
+ }
20
+ export declare class DefaultIntentResolver implements IntentResolver {
21
+ analyzeOutput(output: any, context: AgentContext): Promise<AgentIntent>;
22
+ shouldTriggerNextAgent(intent: AgentIntent, context: AgentContext): Promise<boolean>;
23
+ getNextAgent(intent: AgentIntent, context: AgentContext): Promise<string | null>;
24
+ createStarterPrompt(intent: AgentIntent, context: AgentContext): Promise<string>;
25
+ private calculateConfidence;
26
+ }
27
+ //# sourceMappingURL=AgentCommunicationManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgentCommunicationManager.d.ts","sourceRoot":"","sources":["../../../src/agents/communication/AgentCommunicationManager.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,WAAW,EACX,YAAY,EAEZ,yBAAyB,EACzB,cAAc,EAEd,cAAc,EACf,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAI5E,qBAAa,yBAA0B,YAAW,yBAAyB;IACzE,OAAO,CAAC,cAAc,CAAsB;IAC5C,OAAO,CAAC,YAAY,CAAuB;IAC3C,OAAO,CAAC,cAAc,CAAiB;gBAGrC,YAAY,EAAE,oBAAoB,EAClC,cAAc,CAAC,EAAE,cAAc;IAM3B,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAUjD,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAM/D,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAWlE,iBAAiB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAO9D,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;YAIrB,cAAc;IAuBtB,eAAe,CACnB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC;QACT,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC7B,QAAQ,EAAE,YAAY,EAAE,CAAC;KAC1B,CAAC;CAwHH;AAGD,qBAAa,qBAAsB,YAAW,cAAc;IACpD,aAAa,CACjB,MAAM,EAAE,GAAG,EACX,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,WAAW,CAAC;IA8BjB,sBAAsB,CAC1B,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,OAAO,CAAC;IAOb,YAAY,CAChB,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAiBnB,mBAAmB,CACvB,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,MAAM,CAAC;IA8BlB,OAAO,CAAC,mBAAmB;CAiC5B"}