@timmeck/brain 3.33.0 → 3.34.1

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.
package/README.md CHANGED
@@ -5,9 +5,9 @@
5
5
  [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
6
6
  [![GitHub stars](https://img.shields.io/github/stars/timmeck/brain-ecosystem?style=social)](https://github.com/timmeck/brain-ecosystem)
7
7
 
8
- **Autonomous Error Memory, Code Intelligence & Self-Improving Research System for Claude Code**
8
+ **Autonomous Error Memory, Code Intelligence & Self-Improving AI for Claude Code — 134 MCP Tools, 30+ Engines**
9
9
 
10
- Brain is an MCP server that gives Claude Code a persistent, self-improving memory. It remembers errors, learns solutions, tracks code modules, and runs 9 autonomous research engines in feedback loops. It observes itself, detects anomalies, forms hypotheses, tests them statistically, distills confirmed knowledge into principles, and generates code using its accumulated wisdom. It even dreams — consolidating memories during idle periods like biological sleep.
10
+ Brain is an MCP server that gives Claude Code a persistent, self-improving memory. It remembers errors, learns solutions, and runs 30+ autonomous engines in a 40-step feedback cycle. It observes itself, detects anomalies, forms and tests hypotheses, distills principles, reasons in chains, feels emotions, evolves strategies genetically, debates itself, gets curious about knowledge gaps, and modifies its own source code. It dreams — consolidating memories during idle periods like biological sleep. 134 MCP tools. 2496 tests.
11
11
 
12
12
  ## Quick Start
13
13
 
@@ -36,22 +36,60 @@ That's it. One command configures MCP, hooks, and starts the daemon.
36
36
  - **Task/Goal Tracking** — Manage tasks with priorities, subtasks, and full context aggregation
37
37
  - **Semantic Search** — Local all-MiniLM-L6-v2 embeddings (23MB, no cloud required)
38
38
 
39
- ### Autonomous Research (9 Engines)
39
+ ### 30+ Autonomous Engines
40
40
 
41
- The research orchestrator runs every 5 minutes, coordinating all engines in feedback loops:
41
+ The ResearchOrchestrator runs a 40-step feedback cycle every 5 minutes, coordinating all engines:
42
+
43
+ #### Core Research (9 Engines)
42
44
 
43
45
  | Engine | What It Does |
44
46
  |--------|-------------|
45
47
  | **SelfObserver** | Observes Brain's own performance and generates insights |
46
- | **AnomalyDetective** | Detects statistical outliers using Z-scores |
48
+ | **AnomalyDetective** | Detects statistical outliers using Z-scores and drift analysis |
47
49
  | **CrossDomainEngine** | Finds correlations between events across brains |
48
50
  | **AdaptiveStrategy** | Adjusts strategies, reverts if performance drops |
49
51
  | **ExperimentEngine** | A/B tests on Brain's own parameters every 5 cycles |
50
- | **KnowledgeDistiller** | Extracts principles from confirmed hypotheses (17+ distilled) |
52
+ | **KnowledgeDistiller** | Extracts principles from confirmed hypotheses |
51
53
  | **ResearchAgenda** | Prioritizes what to research next |
52
54
  | **CounterfactualEngine** | "What if" analysis for hypothetical interventions |
53
55
  | **Journal** | Logs all discoveries, experiments, breakthroughs |
54
56
 
57
+ #### Intelligence & Awareness
58
+
59
+ | Engine | What It Does |
60
+ |--------|-------------|
61
+ | **AttentionEngine** | Dynamic focus, context detection, burst detection, engine weight allocation |
62
+ | **TransferEngine** | Cross-brain knowledge transfer, analogies, cross-domain rules |
63
+ | **NarrativeEngine** | Brain explains itself in natural language, finds contradictions, generates digests |
64
+ | **CuriosityEngine** | Knowledge gap detection, UCB1 explore/exploit, blind spot detection |
65
+ | **EmergenceEngine** | Emergent behavior detection, complexity metrics (entropy, phi), phase transitions |
66
+ | **DebateEngine** | Multi-agent debates, advocatus diaboli, consensus synthesis |
67
+ | **ReasoningEngine** | Forward chaining, abductive reasoning, temporal inference, counterfactuals |
68
+ | **EmotionalModel** | 8 emotion dimensions, 6 moods, mood-based behavior recommendations |
69
+
70
+ #### Meta-Cognition & Optimization
71
+
72
+ | Engine | What It Does |
73
+ |--------|-------------|
74
+ | **ParameterRegistry** | Central tunable parameter store with 30+ parameters, bounds, snapshots |
75
+ | **MetaCognitionLayer** | Engine performance grading (A-F), frequency adjustment |
76
+ | **AutoExperimentEngine** | Autonomous parameter tuning with snapshot/rollback |
77
+ | **EvolutionEngine** | Genetic algorithm — tournament selection, crossover, mutation, elitism |
78
+ | **GoalEngine** | Goal planning with progress tracking, linear regression forecasting |
79
+ | **MemoryPalace** | Knowledge graph with BFS pathfinding and auto-connection building |
80
+
81
+ #### Autonomy & Self-Improvement
82
+
83
+ | Engine | What It Does |
84
+ |--------|-------------|
85
+ | **SelfTestEngine** | Tests if brain truly understands its principles vs memorization |
86
+ | **TeachEngine** | Generates teaching packages for other brains |
87
+ | **DataScout** | External data acquisition from GitHub/npm/HN |
88
+ | **SimulationEngine** | What-if scenarios via CausalGraph + PredictionEngine |
89
+ | **SelfScanner** | Indexes own TypeScript source code with SHA256 change detection |
90
+ | **SelfModificationEngine** | Generates and tests code changes autonomously via Claude API |
91
+ | **BootstrapService** | Cold-start fix: seeds data so engines produce output from cycle 1 |
92
+
55
93
  ### Self-Improvement Loop
56
94
  - **Hypothesis Engine** — Forms hypotheses from observed patterns, tests them statistically
57
95
  - **Auto-Experiments** — Tests its own parameters (Z-Threshold, Decay Rate, Research Interval)
@@ -67,11 +105,17 @@ The research orchestrator runs every 5 minutes, coordinating all engines in feed
67
105
  - **Importance Decay** — Old memories gradually lose importance, eventually archived
68
106
  - **Triggers** — Every 20 cycles, after 5 minutes idle, or manually
69
107
 
70
- ### Consciousness Dashboard (`:7784`)
71
- - **Neural Graph** — Force-directed visualization of the synapse network (Canvas 2D physics)
72
- - **Thought Stream** — Real-time feed of every engine's activity
73
- - **Engine Status** — Live status cards for all 16 engines
74
- - **Brain Insights** — Notable discoveries and breakthroughs
108
+ ### Mission Control Dashboard (`:7788`)
109
+
110
+ <p align="center"><img src="../../docs/assets/mission-control.png" alt="Mission Control Dashboard" width="700"></p>
111
+
112
+ - **7 Tabs** — Overview, Consciousness, Thoughts, CodeGen, Self-Mod, Engines, Intelligence
113
+ - **Consciousness Entity** — Living animated visualization of the brain's emotional/consciousness state: pulsing orb colored by mood (flow=cyan, excited=gold, anxious=red, reflective=violet, bored=gray, determined=white), organic tentacles, 8-dimension ring, ambient particles, floating thoughts, inner eye tracking attention focus
114
+ - **Thought Stream** — Real-time feed of every engine's activity with significance filtering
115
+ - **CodeGen** — Generate, review, approve/reject code with syntax highlighting
116
+ - **Self-Mod** — Pending modifications with side-by-side diff viewer
117
+ - **Engine Status** — Live status cards for all 30+ engines
118
+ - **Intelligence** — Attention topics, transfer analogies, cross-domain rules
75
119
  - **Trigger Cycle** — Button to manually trigger a feedback cycle
76
120
 
77
121
  ### Prediction Engine
@@ -91,15 +135,14 @@ The research orchestrator runs every 5 minutes, coordinating all engines in feed
91
135
  - **Human-in-the-Loop** — Generated code is reviewed: approve or reject with notes
92
136
  - **CodeMiner** — Mines GitHub repos (README, package.json, directory trees) for pattern learning
93
137
  - **PatternExtractor** — Extracts dependency, tech stack, structure, and README patterns from mined repos
94
- - **CodeGen Dashboard** — Web UI at http://localhost:7787 for reviewing and managing code generations
138
+ - **CodeGen Tab** — Integrated in Mission Control at http://localhost:7788 for reviewing and managing code generations
95
139
  - **Signal Scanner** — Tracks GitHub trending repos, Hacker News mentions, crypto signals
96
140
 
97
141
  ### Dashboards
98
142
 
99
143
  | Dashboard | Port | What It Shows |
100
144
  |-----------|------|--------------|
101
- | **Consciousness** | 7784 | Neural graph, thought stream, engine status |
102
- | **CodeGen** | 7787 | Code generations, approve/reject, mined patterns |
145
+ | **Mission Control** | 7788 | Unified 7-tab dashboard: Overview, Consciousness (Entity visualization), Thoughts, CodeGen, Self-Mod, Engines, Intelligence |
103
146
 
104
147
  ## Architecture
105
148
 
@@ -119,17 +162,23 @@ Memory Intel Network System Intel Engine
119
162
  | | | | | |
120
163
  +------+------+------+------+------+
121
164
  |
122
- +------+------+------+------+------+
123
- | | | | | |
124
- Research Dream Pred. Auto Code Signal
125
- Orch. Engine Engine Respond Gen Scanner
126
- | |
127
- +-- 9 Engines in Feedback Loops ----+
165
+ ResearchOrchestrator (40 steps)
166
+ |
167
+ +------+------+------+------+------+------+------+
168
+ | | | | | | | |
169
+ Dream Pred. AutoR Hypo. CodeGen Signal Attention
170
+ Engine Engine espond Engine (Claude) Scanner Engine
171
+ | | | | | | | |
172
+ +------+------+------+------+------+------+------+
173
+ |
174
+ 30+ Engines in Feedback Loops
175
+ (Research, Intelligence, MetaCog, Evolution,
176
+ Reasoning, Emotions, Self-Modification, ...)
128
177
  |
129
178
  SQLite (better-sqlite3, WAL mode)
130
179
  ```
131
180
 
132
- ## MCP Tools (69 tools)
181
+ ## MCP Tools (134 tools)
133
182
 
134
183
  **Error & Code**: brain_report_error, brain_query_error, brain_report_solution, brain_report_attempt, brain_find_reusable_code, brain_register_code, brain_check_code_similarity
135
184
 
@@ -151,7 +200,31 @@ Orch. Engine Engine Respond Gen Scanner
151
200
 
152
201
  **CodeGen**: brain_generate_code, brain_codegen_status, brain_codegen_review, brain_codeminer_status, brain_codeminer_patterns
153
202
 
154
- **Ecosystem**: brain_status, brain_notifications, brain_ecosystem_status, brain_query_peer, brain_error_trading_context
203
+ **Attention**: brain_focus_status, brain_focus_set, brain_focus_history
204
+
205
+ **Transfer**: brain_transfer_status, brain_transfer_analogies, brain_transfer_rules
206
+
207
+ **Narrative**: brain_explain, brain_ask, brain_weekly_digest, brain_contradictions
208
+
209
+ **Curiosity**: brain_curiosity_status, brain_curiosity_gaps, brain_curiosity_questions, brain_curiosity_explore
210
+
211
+ **Emergence**: brain_emergence_status, brain_emergence_detect, brain_emergence_complexity_metrics, brain_emergence_journal
212
+
213
+ **Debate**: brain_debate_start, brain_debate_synthesize, brain_debate_perspective, brain_debate_history
214
+
215
+ **MetaCognition**: brain_metacognition_status, brain_engine_report, brain_auto_experiment_status, brain_parameter_registry
216
+
217
+ **SelfAware**: brain_selftest_run, brain_selftest_results, brain_teach_status, brain_teach_create, brain_datascout_status, brain_datascout_scan, brain_simulation_run, brain_simulation_results, brain_simulation_scenarios, brain_palace_status, brain_palace_map, brain_palace_path, brain_palace_build, brain_goal_status, brain_goal_create, brain_goal_progress
218
+
219
+ **Evolution**: brain_evolution_status, brain_evolution_history, brain_evolution_best, brain_evolution_run
220
+
221
+ **Reasoning**: brain_reasoning_status, brain_reason, brain_explain_why, brain_what_if
222
+
223
+ **Emotions**: brain_emotional_status, brain_mood_history, brain_mood_influences, brain_mood_advice
224
+
225
+ **Self-Modification**: brain_selfmod_status, brain_selfmod_pending, brain_selfmod_approve, brain_selfmod_history
226
+
227
+ **Ecosystem**: brain_status, brain_notifications, brain_ecosystem_status, brain_query_peer, brain_error_trading_context, brain_unified_status
155
228
 
156
229
  ## CLI Commands
157
230
 
@@ -193,10 +266,10 @@ brain peers Show peer brains in the ecosystem
193
266
 
194
267
  | Brain | Version | Purpose | Ports |
195
268
  |-------|---------|---------|-------|
196
- | **Brain** | v3.19.0 | Error memory, code intelligence, autonomous research & code generation | **7777** / 7778 / 7784 / 7787 |
197
- | [Trading Brain](../trading-brain) | v2.13.0 | Adaptive trading intelligence with signal learning & backtesting | 7779 / 7780 / 7785 |
198
- | [Marketing Brain](../marketing-brain) | v1.14.0 | Content strategy, engagement & cross-platform optimization | 7781 / 7782 / 7783 / 7786 |
199
- | [Brain Core](../brain-core) | v2.18.0 | Shared infrastructure (9 engines, synapses, IPC, MCP, dream, consciousness, codegen) | — |
269
+ | **Brain** | v3.34.0 | Error memory, code intelligence, full autonomy & self-modification | **7777** / 7778 / 7788 |
270
+ | [Trading Brain](../trading-brain) | v2.29.0 | Adaptive trading intelligence with signal learning & backtesting | 7779 / 7780 |
271
+ | [Marketing Brain](../marketing-brain) | v1.30.0 | Content strategy, engagement & cross-platform optimization | 7781 / 7782 / 7783 |
272
+ | [Brain Core](../brain-core) | v2.34.0 | Shared infrastructure 30+ engines, synapses, IPC, MCP, dream, consciousness, codegen | — |
200
273
 
201
274
  ## Support
202
275
 
package/dist/brain.d.ts CHANGED
@@ -13,8 +13,6 @@ export declare class BrainCore {
13
13
  private ecosystemService;
14
14
  private researchScheduler;
15
15
  private orchestrator;
16
- private consciousnessServer;
17
- private codegenServer;
18
16
  private attentionEngine;
19
17
  private transferEngine;
20
18
  private unifiedServer;
package/dist/brain.js CHANGED
@@ -55,7 +55,7 @@ import { McpHttpServer } from './mcp/http-server.js';
55
55
  // Embeddings
56
56
  import { EmbeddingEngine } from './embeddings/engine.js';
57
57
  // Cross-Brain
58
- import { CrossBrainClient, CrossBrainNotifier, CrossBrainSubscriptionManager, CrossBrainCorrelator, EcosystemService, WebhookService, ExportService, BackupService, AutonomousResearchScheduler, ResearchOrchestrator, DataMiner, BrainDataMinerAdapter, ScannerDataMinerAdapter, BootstrapService, DreamEngine, ThoughtStream, ConsciousnessServer, PredictionEngine, SignalScanner, CodeMiner, PatternExtractor, ContextBuilder, CodeGenerator, CodegenServer, AttentionEngine, TransferEngine, UnifiedDashboardServer, NarrativeEngine, CuriosityEngine, EmergenceEngine, DebateEngine, ParameterRegistry, MetaCognitionLayer, AutoExperimentEngine, SelfTestEngine, TeachEngine, DataScout, runDataScoutMigration, SimulationEngine, runSimulationMigration, MemoryPalace, GoalEngine, EvolutionEngine, runEvolutionMigration, ReasoningEngine, EmotionalModel, SelfScanner, SelfModificationEngine } from '@timmeck/brain-core';
58
+ import { CrossBrainClient, CrossBrainNotifier, CrossBrainSubscriptionManager, CrossBrainCorrelator, EcosystemService, WebhookService, ExportService, BackupService, AutonomousResearchScheduler, ResearchOrchestrator, DataMiner, BrainDataMinerAdapter, ScannerDataMinerAdapter, BootstrapService, DreamEngine, ThoughtStream, PredictionEngine, SignalScanner, CodeMiner, PatternExtractor, ContextBuilder, CodeGenerator, AttentionEngine, TransferEngine, UnifiedDashboardServer, NarrativeEngine, CuriosityEngine, EmergenceEngine, DebateEngine, ParameterRegistry, MetaCognitionLayer, AutoExperimentEngine, SelfTestEngine, TeachEngine, DataScout, runDataScoutMigration, SimulationEngine, runSimulationMigration, MemoryPalace, GoalEngine, EvolutionEngine, runEvolutionMigration, ReasoningEngine, EmotionalModel, SelfScanner, SelfModificationEngine } from '@timmeck/brain-core';
59
59
  export class BrainCore {
60
60
  db = null;
61
61
  ipcServer = null;
@@ -71,8 +71,6 @@ export class BrainCore {
71
71
  ecosystemService = null;
72
72
  researchScheduler = null;
73
73
  orchestrator = null;
74
- consciousnessServer = null;
75
- codegenServer = null;
76
74
  attentionEngine = null;
77
75
  transferEngine = null;
78
76
  unifiedServer = null;
@@ -684,7 +682,7 @@ export class BrainCore {
684
682
  this.orchestrator.setEmotionalModel(emotionalModel);
685
683
  services.emotionalModel = emotionalModel;
686
684
  // ── Section 11j.21: SelfScanner + SelfModificationEngine ───────
687
- const projectRoot = path.resolve(path.dirname(config.dbPath), '..');
685
+ const projectRoot = path.resolve(new URL(import.meta.url).pathname.replace(/^\/([A-Z]:)/, '$1'), '..', '..', '..', '..');
688
686
  const selfScanner = new SelfScanner(this.db, { brainName: 'brain' });
689
687
  this.orchestrator.setSelfScanner(selfScanner);
690
688
  services.selfScanner = selfScanner;
@@ -713,114 +711,8 @@ export class BrainCore {
713
711
  parameterRegistry,
714
712
  });
715
713
  this.orchestrator.setBootstrapService(bootstrapService);
716
- this.consciousnessServer = new ConsciousnessServer({
717
- port: 7784,
718
- thoughtStream,
719
- getNetworkState: () => {
720
- try {
721
- const nodes = [];
722
- // Projects as hub nodes
723
- const projects = this.db.prepare('SELECT id, name AS label FROM projects LIMIT 20').all();
724
- for (const p of projects)
725
- nodes.push({ id: `project:${p.id}`, label: p.label, type: 'project', importance: 1.0 });
726
- // Errors
727
- const errors = this.db.prepare('SELECT id, message AS label FROM errors LIMIT 50').all();
728
- for (const e of errors)
729
- nodes.push({ id: `error:${e.id}`, label: e.label.substring(0, 60), type: 'error', importance: 0.8 });
730
- // Solutions
731
- const solutions = this.db.prepare('SELECT id, description AS label FROM solutions LIMIT 30').all();
732
- for (const s of solutions)
733
- nodes.push({ id: `solution:${s.id}`, label: s.label.substring(0, 60), type: 'solution', importance: 0.7 });
734
- // Top code modules (by complexity/reusability)
735
- const modules = this.db.prepare('SELECT id, name AS label FROM code_modules ORDER BY reusability_score DESC LIMIT 100').all();
736
- for (const m of modules)
737
- nodes.push({ id: `code_module:${m.id}`, label: m.label, type: 'code_module', importance: 0.5 });
738
- // Top insights
739
- const insights = this.db.prepare('SELECT id, title AS label, type FROM insights WHERE active = 1 ORDER BY priority DESC LIMIT 50').all();
740
- for (const i of insights)
741
- nodes.push({ id: `insight:${i.id}`, label: i.label.substring(0, 60), type: 'insight', importance: 0.6 });
742
- // Memories (if any)
743
- const memories = this.db.prepare('SELECT id, content AS label, category AS type, importance FROM memories WHERE active = 1 LIMIT 50').all();
744
- for (const m of memories)
745
- nodes.push({ id: `memory:${m.id}`, label: m.label.substring(0, 60), type: m.type || 'memory', importance: m.importance });
746
- // Edges — strongest synapses, mapped to composite IDs
747
- const edges = this.db.prepare('SELECT source_type, source_id, target_type, target_id, weight FROM synapses ORDER BY weight DESC LIMIT 500').all();
748
- const mappedEdges = edges.map(e => ({
749
- source: `${e.source_type}:${e.source_id}`,
750
- target: `${e.target_type}:${e.target_id}`,
751
- weight: e.weight,
752
- }));
753
- return { nodes, edges: mappedEdges };
754
- }
755
- catch {
756
- return { nodes: [], edges: [] };
757
- }
758
- },
759
- getEngineStatus: () => this.orchestrator.getSummary(),
760
- onTriggerFeedback: () => {
761
- try {
762
- this.orchestrator.runFeedbackCycle();
763
- }
764
- catch (err) {
765
- logger.error(`Manual feedback cycle failed: ${err.message}`);
766
- }
767
- },
768
- });
769
- this.consciousnessServer.start();
770
- services.consciousnessServer = this.consciousnessServer;
771
714
  services.thoughtStream = thoughtStream;
772
- // 11j.7 Unified Dashboard single pane of glass for the ecosystem
773
- this.unifiedServer = new UnifiedDashboardServer({
774
- port: 7788,
775
- thoughtStream,
776
- getOverview: () => {
777
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
778
- const summary = this.orchestrator?.getSummary();
779
- const transferStatus = this.transferEngine?.getStatus();
780
- const attStatus = this.attentionEngine?.getStatus();
781
- return {
782
- healthScore: typeof summary?.cycleCount === 'number' ? Math.min(100, 50 + summary.cycleCount) : null,
783
- brains: {
784
- brain: {
785
- status: this.db ? 'running' : 'stopped',
786
- cycle: summary?.cycleCount ?? 0,
787
- principles: summary?.knowledge?.totalPrinciples ?? 0,
788
- hypotheses: summary?.hypothesis?.total ?? 0,
789
- experiments: summary?.experiment?.total ?? 0,
790
- focus: attStatus?.currentContext ?? 'unknown',
791
- },
792
- },
793
- transfer: transferStatus,
794
- attention: attStatus,
795
- };
796
- },
797
- getTransferStatus: () => {
798
- if (!this.transferEngine)
799
- return null;
800
- const status = this.transferEngine.getStatus();
801
- return {
802
- ...status,
803
- analogies: this.transferEngine.getAnalogies(20),
804
- rules: this.transferEngine.getRules(),
805
- history: this.transferEngine.getTransferHistory(30),
806
- transferScore: this.transferEngine.getTransferScore(),
807
- };
808
- },
809
- getAttentionStatus: () => {
810
- if (!this.attentionEngine)
811
- return null;
812
- return this.attentionEngine.getStatus();
813
- },
814
- getNotifications: () => {
815
- return thoughtStream.getRecent(100).filter((t) => t.significance === 'breakthrough' || t.significance === 'notable');
816
- },
817
- onTriggerFeedback: () => {
818
- this.orchestrator?.runFeedbackCycle();
819
- },
820
- });
821
- this.unifiedServer.start();
822
- services.unifiedServer = this.unifiedServer;
823
- logger.info('Research orchestrator started (9 engines, feedback loops active, DataMiner bootstrapped, Dream Mode active, Prediction Engine active, Consciousness on :7784, Unified on :7788)');
715
+ logger.info('Research orchestrator started (30+ engines, feedback loops active, DataMiner bootstrapped, Dream Mode active, Prediction Engine active)');
824
716
  // 11k. Signal Scanner — GitHub/HN/Crypto signal tracking
825
717
  if (config.scanner.enabled) {
826
718
  const signalScanner = new SignalScanner(this.db, config.scanner);
@@ -848,17 +740,7 @@ export class BrainCore {
848
740
  codeGenerator.setThoughtStream(thoughtStream);
849
741
  this.orchestrator.setCodeGenerator(codeGenerator);
850
742
  services.codeGenerator = codeGenerator;
851
- // CodeGen Dashboard
852
- this.codegenServer = new CodegenServer({
853
- port: config.codegenDashboard?.port ?? 7787,
854
- codeGenerator,
855
- codeMiner: services.codeMiner ?? null,
856
- patternExtractor: patternExtractor ?? null,
857
- selfModificationEngine: services.selfModificationEngine ?? null,
858
- });
859
- this.codegenServer.start();
860
- services.codegenServer = this.codegenServer;
861
- logger.info('CodeGenerator activated (ANTHROPIC_API_KEY set, dashboard on :' + (config.codegenDashboard?.port ?? 7787) + ')');
743
+ logger.info('CodeGenerator activated (ANTHROPIC_API_KEY set)');
862
744
  // Wire ContextBuilder with SelfScanner into SelfModificationEngine
863
745
  if (services.selfModificationEngine && services.selfScanner) {
864
746
  const selfmodCtx = new ContextBuilder(this.orchestrator.knowledgeDistiller, this.orchestrator.journal, patternExtractor ?? null, services.signalScanner ?? null);
@@ -866,6 +748,85 @@ export class BrainCore {
866
748
  services.selfModificationEngine.setContextBuilder(selfmodCtx);
867
749
  }
868
750
  }
751
+ // 11n. Unified Dashboard — single Mission Control UI on :7788
752
+ const getNetworkState = () => {
753
+ try {
754
+ const nodes = [];
755
+ const projects = this.db.prepare('SELECT id, name AS label FROM projects LIMIT 20').all();
756
+ for (const p of projects)
757
+ nodes.push({ id: `project:${p.id}`, label: p.label, type: 'project', importance: 1.0 });
758
+ const errors = this.db.prepare('SELECT id, message AS label FROM errors LIMIT 50').all();
759
+ for (const e of errors)
760
+ nodes.push({ id: `error:${e.id}`, label: e.label.substring(0, 60), type: 'error', importance: 0.8 });
761
+ const solutions = this.db.prepare('SELECT id, description AS label FROM solutions LIMIT 30').all();
762
+ for (const s of solutions)
763
+ nodes.push({ id: `solution:${s.id}`, label: s.label.substring(0, 60), type: 'solution', importance: 0.7 });
764
+ const modules = this.db.prepare('SELECT id, name AS label FROM code_modules ORDER BY reusability_score DESC LIMIT 100').all();
765
+ for (const m of modules)
766
+ nodes.push({ id: `code_module:${m.id}`, label: m.label, type: 'code_module', importance: 0.5 });
767
+ const insights = this.db.prepare('SELECT id, title AS label, type FROM insights WHERE active = 1 ORDER BY priority DESC LIMIT 50').all();
768
+ for (const i of insights)
769
+ nodes.push({ id: `insight:${i.id}`, label: i.label.substring(0, 60), type: 'insight', importance: 0.6 });
770
+ const memories = this.db.prepare('SELECT id, content AS label, category AS type, importance FROM memories WHERE active = 1 LIMIT 50').all();
771
+ for (const m of memories)
772
+ nodes.push({ id: `memory:${m.id}`, label: m.label.substring(0, 60), type: m.type || 'memory', importance: m.importance });
773
+ const edges = this.db.prepare('SELECT source_type, source_id, target_type, target_id, weight FROM synapses ORDER BY weight DESC LIMIT 500').all();
774
+ const mappedEdges = edges.map(e => ({ source: `${e.source_type}:${e.source_id}`, target: `${e.target_type}:${e.target_id}`, weight: e.weight }));
775
+ return { nodes, edges: mappedEdges };
776
+ }
777
+ catch {
778
+ return { nodes: [], edges: [] };
779
+ }
780
+ };
781
+ this.unifiedServer = new UnifiedDashboardServer({
782
+ port: 7788,
783
+ thoughtStream,
784
+ getOverview: () => {
785
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
786
+ const summary = this.orchestrator?.getSummary();
787
+ const attStatus = this.attentionEngine?.getStatus();
788
+ return {
789
+ healthScore: typeof summary?.feedbackCycles === 'number' ? Math.min(100, 50 + summary.feedbackCycles) : null,
790
+ brains: {
791
+ brain: {
792
+ status: this.db ? 'running' : 'stopped',
793
+ cycle: summary?.feedbackCycles ?? 0,
794
+ principles: summary?.knowledge?.principles ?? 0,
795
+ hypotheses: summary?.hypotheses?.total ?? 0,
796
+ experiments: Array.isArray(summary?.experiments) ? summary.experiments.length : 0,
797
+ focus: attStatus?.currentContext ?? 'unknown',
798
+ },
799
+ },
800
+ transfer: this.transferEngine?.getStatus(),
801
+ attention: attStatus,
802
+ };
803
+ },
804
+ getTransferStatus: () => {
805
+ if (!this.transferEngine)
806
+ return null;
807
+ const status = this.transferEngine.getStatus();
808
+ return {
809
+ ...status,
810
+ analogies: this.transferEngine.getAnalogies(20),
811
+ rules: this.transferEngine.getRules(),
812
+ history: this.transferEngine.getTransferHistory(30),
813
+ transferScore: this.transferEngine.getTransferScore(),
814
+ };
815
+ },
816
+ getAttentionStatus: () => this.attentionEngine?.getStatus() ?? null,
817
+ getNotifications: () => thoughtStream.getRecent(100).filter((t) => t.significance === 'breakthrough' || t.significance === 'notable'),
818
+ onTriggerFeedback: () => { this.orchestrator?.runFeedbackCycle(); },
819
+ getNetworkState,
820
+ getEngineStatus: () => this.orchestrator?.getSummary(),
821
+ codeGenerator: services.codeGenerator ?? null,
822
+ codeMiner: services.codeMiner ?? null,
823
+ patternExtractor: patternExtractor ?? null,
824
+ selfModificationEngine: services.selfModificationEngine ?? null,
825
+ getEmotionalStatus: () => services.emotionalModel?.getMood?.() ?? null,
826
+ });
827
+ this.unifiedServer.start();
828
+ services.unifiedServer = this.unifiedServer;
829
+ logger.info('Unified Mission Control dashboard on :7788');
869
830
  // 12. IPC Server
870
831
  const router = new IpcRouter(services);
871
832
  this.ipcServer = new IpcServer(router, config.ipc.pipeName, 'brain', 'brain');
@@ -946,8 +907,6 @@ export class BrainCore {
946
907
  this.subscriptionManager?.disconnectAll();
947
908
  this.attentionEngine?.stop();
948
909
  this.unifiedServer?.stop();
949
- this.codegenServer?.stop();
950
- this.consciousnessServer?.stop();
951
910
  this.orchestrator?.stop();
952
911
  this.researchScheduler?.stop();
953
912
  this.researchEngine?.stop();
@@ -965,8 +924,6 @@ export class BrainCore {
965
924
  this.learningEngine = null;
966
925
  this.researchEngine = null;
967
926
  this.orchestrator = null;
968
- this.consciousnessServer = null;
969
- this.codegenServer = null;
970
927
  this.unifiedServer = null;
971
928
  this.narrativeEngine = null;
972
929
  this.curiosityEngine = null;
package/dist/brain.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"brain.js","sourceRoot":"","sources":["../src/brain.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzB,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD,eAAe;AACf,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AACpF,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAC9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAC9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAEpE,WAAW;AACX,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAEvE,WAAW;AACX,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAE/D,UAAU;AACV,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAE/D,MAAM;AACN,OAAO,EAAE,SAAS,EAAiB,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,iBAAiB;AACjB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,aAAa;AACb,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,cAAc;AACd,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,6BAA6B,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,cAAc,EAAE,aAAa,EAAE,aAAa,EAAE,2BAA2B,EAAE,oBAAoB,EAAE,SAAS,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,WAAW,EAAE,aAAa,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,aAAa,EAAE,SAAS,EAAE,gBAAgB,EAAE,cAAc,EAAE,aAAa,EAAE,aAAa,EAAE,eAAe,EAAE,cAAc,EAAE,sBAAsB,EAAE,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,YAAY,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,cAAc,EAAE,WAAW,EAAE,SAAS,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,qBAAqB,EAAE,eAAe,EAAE,cAAc,EAAE,WAAW,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAKr4B,MAAM,OAAO,SAAS;IACZ,EAAE,GAA6B,IAAI,CAAC;IACpC,SAAS,GAAqB,IAAI,CAAC;IACnC,SAAS,GAAqB,IAAI,CAAC;IACnC,aAAa,GAAyB,IAAI,CAAC;IAC3C,eAAe,GAA2B,IAAI,CAAC;IAC/C,cAAc,GAA0B,IAAI,CAAC;IAC7C,cAAc,GAA0B,IAAI,CAAC;IAC7C,UAAU,GAA4B,IAAI,CAAC;IAC3C,QAAQ,GAA8B,IAAI,CAAC;IAC3C,mBAAmB,GAAyC,IAAI,CAAC;IACjE,UAAU,GAAgC,IAAI,CAAC;IAC/C,gBAAgB,GAA4B,IAAI,CAAC;IACjD,iBAAiB,GAAuC,IAAI,CAAC;IAC7D,YAAY,GAAgC,IAAI,CAAC;IACjD,mBAAmB,GAA+B,IAAI,CAAC;IACvD,aAAa,GAAyB,IAAI,CAAC;IAC3C,eAAe,GAA2B,IAAI,CAAC;IAC/C,cAAc,GAA0B,IAAI,CAAC;IAC7C,aAAa,GAAkC,IAAI,CAAC;IACpD,eAAe,GAA2B,IAAI,CAAC;IAC/C,eAAe,GAA2B,IAAI,CAAC;IAC/C,eAAe,GAA2B,IAAI,CAAC;IAC/C,YAAY,GAAwB,IAAI,CAAC;IACzC,YAAY,GAA0C,IAAI,CAAC;IAC3D,MAAM,GAAuB,IAAI,CAAC;IAClC,UAAU,CAAU;IACpB,UAAU,GAAG,KAAK,CAAC;IACnB,YAAY,GAAG,CAAC,CAAC;IACjB,kBAAkB,GAAG,CAAC,CAAC;IAE/B,KAAK,CAAC,UAAmB;QACvB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,YAAY;QACZ,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;QACrC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAE3B,qBAAqB;QACrB,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAE/D,YAAY;QACZ,YAAY,CAAC;YACX,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK;YACvB,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI;YACrB,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO;YAC3B,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ;SAC9B,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAE3B,cAAc;QACd,IAAI,CAAC,EAAE,GAAG,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC1C,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACvB,MAAM,CAAC,IAAI,CAAC,yBAAyB,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAEtD,kBAAkB;QAClB,MAAM,WAAW,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACnD,MAAM,SAAS,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC/C,MAAM,YAAY,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACrD,MAAM,QAAQ,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7C,MAAM,eAAe,GAAG,IAAI,qBAAqB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC3D,MAAM,YAAY,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACrD,MAAM,cAAc,GAAG,IAAI,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzD,MAAM,WAAW,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACnD,MAAM,gBAAgB,GAAG,IAAI,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7D,MAAM,WAAW,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACnD,MAAM,UAAU,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjD,MAAM,WAAW,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACnD,MAAM,YAAY,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACrD,MAAM,aAAa,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACvD,MAAM,QAAQ,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7C,MAAM,OAAO,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAE3C,qBAAqB;QACrB,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QAExE,cAAc;QACd,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC;QAC9F,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,YAAY,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC;QACvF,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,aAAa,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC;QAC1F,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC;QACpH,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC;QAE/G,MAAM,QAAQ,GAAa;YACzB,KAAK,EAAE,IAAI,YAAY,CAAC,SAAS,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,CAAC,QAAQ,CAAC;YAChF,QAAQ,EAAE,IAAI,eAAe,CAAC,YAAY,EAAE,cAAc,CAAC;YAC3D,QAAQ,EAAE,IAAI,eAAe,CAAC,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC;YACzE,UAAU,EAAE,IAAI,iBAAiB,CAAC,QAAQ,EAAE,eAAe,EAAE,cAAc,CAAC;YAC5E,IAAI,EAAE,IAAI,WAAW,CAAC,cAAc,EAAE,WAAW,EAAE,cAAc,CAAC;YAClE,OAAO,EAAE,IAAI,cAAc,CAAC,cAAc,CAAC;YAC3C,QAAQ,EAAE,IAAI,eAAe,CAAC,WAAW,EAAE,SAAS,EAAE,cAAc,CAAC;YACrE,YAAY,EAAE,IAAI,mBAAmB,CAAC,gBAAgB,CAAC;YACvD,SAAS,EAAE,IAAI,gBAAgB,CAC7B,SAAS,EAAE,YAAY,EAAE,cAAc,EACvC,QAAQ,EAAE,eAAe,EAAE,WAAW,EACtC,cAAc,CACf;YACD,GAAG,EAAE,IAAI,UAAU,CAAC,IAAI,CAAC,EAAG,EAAE,cAAc,CAAC;YAC7C,MAAM,EAAE,aAAa;YACrB,QAAQ,EAAE,eAAe;YACzB,SAAS,EAAE,gBAAgB;YAC3B,IAAI,EAAE,WAAW;YACjB,GAAG,EAAE,UAAU;SAChB,CAAC;QAEF,6CAA6C;QAC7C,QAAQ,CAAC,SAAS,CAAC,cAAc,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;QAE3D,0BAA0B;QAC1B,MAAM,cAAc,GAAG,IAAI,qBAAqB,CAAC,YAAY,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC;QAC1F,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;QACjD,QAAQ,CAAC,cAAc,GAAG,cAAc,CAAC;QAEzC,0EAA0E;QAC1E,QAAQ,CAAC,cAAc,GAAG,IAAI,cAAc,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;QAE9F,+EAA+E;QAC/E,QAAQ,CAAC,kBAAkB,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,EAAG,CAAC,CAAC;QAE/D,4CAA4C;QAC5C,IAAI,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;YAC9B,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,EAAG,CAAC,CAAC;YACxE,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;YAC7B,wDAAwD;YACxD,QAAQ,CAAC,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YACxD,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YACvD,QAAQ,CAAC,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YACzD,MAAM,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;QAC1E,CAAC;QAED,qBAAqB;QACrB,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CACtC,MAAM,CAAC,QAAQ,EAAE,SAAS,EAAE,YAAY,EACxC,QAAQ,EAAE,eAAe,EAAE,cAAc,CAC1C,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,sCAAsC,MAAM,CAAC,QAAQ,CAAC,UAAU,KAAK,CAAC,CAAC;QAEnF,sBAAsB;QACtB,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CACtC,MAAM,CAAC,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,WAAW,EACrD,cAAc,EAAE,WAAW,EAAE,WAAW,EAAE,cAAc,CACzD,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,sCAAsC,MAAM,CAAC,QAAQ,CAAC,UAAU,KAAK,CAAC,CAAC;QAEnF,8CAA8C;QAC9C,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC;QACxC,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,SAAS,CAAC;QAEnD,oCAAoC;QACpC,IAAI,CAAC,UAAU,GAAG,IAAI,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAChD,IAAI,CAAC,QAAQ,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAEjE,kDAAkD;QAClD,IAAI,CAAC,UAAU,GAAG,IAAI,oBAAoB,EAAE,CAAC;QAC7C,IAAI,CAAC,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAC/E,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAE3C,wCAAwC;QACxC,IAAI,CAAC,mBAAmB,GAAG,IAAI,6BAA6B,CAAC,OAAO,CAAC,CAAC;QAEtE,wCAAwC;QACxC,QAAQ,CAAC,OAAO,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,EAAG,CAAC,CAAC;QAChD,QAAQ,CAAC,MAAM,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,EAAG,CAAC,CAAC;QAC9C,QAAQ,CAAC,MAAM,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,EAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QAE7D,qFAAqF;QACrF,MAAM,iBAAiB,GAAG,IAAI,2BAA2B,CAAC,IAAI,CAAC,EAAG,EAAE;YAClE,SAAS,EAAE,OAAO;YAClB,WAAW,EAAE;gBACX,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE;gBACrE,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE;gBACnE,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE;aACxE;SACF,CAAC,CAAC;QACH,iBAAiB,CAAC,KAAK,EAAE,CAAC;QAC1B,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,QAAQ,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC/C,QAAQ,CAAC,YAAY,GAAG,iBAAiB,CAAC,YAAY,CAAC;QACvD,QAAQ,CAAC,MAAM,GAAG,iBAAiB,CAAC,WAAW,CAAC;QAChD,QAAQ,CAAC,UAAU,GAAG,iBAAiB,CAAC,gBAAgB,CAAC;QACzD,MAAM,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;QAErD,2EAA2E;QAC3E,IAAI,CAAC,YAAY,GAAG,IAAI,oBAAoB,CAAC,IAAI,CAAC,EAAG,EAAE;YACrD,SAAS,EAAE,OAAO;SACnB,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAClC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;QAC1B,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC;QACvD,QAAQ,CAAC,gBAAgB,GAAG,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC;QAC/D,QAAQ,CAAC,gBAAgB,GAAG,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC;QAC/D,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC;QACrD,QAAQ,CAAC,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC;QAC3D,QAAQ,CAAC,kBAAkB,GAAG,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC;QACnE,QAAQ,CAAC,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC;QAC3D,QAAQ,CAAC,gBAAgB,GAAG,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC;QAC/D,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;QAE7C,mEAAmE;QACnE,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,EAAG,EAAE,IAAI,qBAAqB,EAAE,EAAE;YACrE,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,YAAY;YAC5C,gBAAgB,EAAE,IAAI,CAAC,YAAY,CAAC,gBAAgB;YACpD,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,WAAW;YAC1C,WAAW,EAAE,iBAAiB,CAAC,WAAW;YAC1C,gBAAgB,EAAE,iBAAiB,CAAC,gBAAgB;SACrD,CAAC,CAAC;QACH,SAAS,CAAC,UAAU,CAAC,IAAI,uBAAuB,EAAE,CAAC,CAAC;QACpD,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAC1C,SAAS,CAAC,SAAS,EAAE,CAAC;QAEtB,mDAAmD;QACnD,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,EAAG,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;QACtE,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,WAAW,CAAC,kBAAkB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACvD,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAC9C,WAAW,CAAC,KAAK,EAAE,CAAC;QACpB,QAAQ,CAAC,WAAW,GAAG,WAAW,CAAC;QAEnC,iDAAiD;QACjD,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAG,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;QAChF,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;QACxD,gBAAgB,CAAC,KAAK,EAAE,CAAC;QACzB,QAAQ,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QAC7C,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QAE1C,iDAAiD;QACjD,MAAM,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAClD,WAAW,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAC5C,gBAAgB,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAEjD,+DAA+D;QAC/D,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,EAAG,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;QAC9E,eAAe,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAChD,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAC;QACtD,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,QAAQ,CAAC,eAAe,GAAG,eAAe,CAAC;QAE3C,0DAA0D;QAC1D,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,EAAG,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;QAC5E,cAAc,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAC/C,cAAc,CAAC,gBAAgB,EAAE,CAAC;QAClC,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;QACpD,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,QAAQ,CAAC,cAAc,GAAG,cAAc,CAAC;QAEzC,qEAAqE;QACrE,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,EAAG,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;QAC9E,eAAe,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAChD,eAAe,CAAC,cAAc,CAAC;YAC7B,kBAAkB,EAAE,IAAI,CAAC,YAAY,CAAC,kBAAkB;YACxD,gBAAgB,EAAE,IAAI,CAAC,YAAY,CAAC,gBAAgB;YACpD,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,OAAO;YAClC,gBAAgB,EAAE,gBAAgB;YAClC,gBAAgB,EAAE,IAAI,CAAC,YAAY,CAAC,gBAAgB;YACpD,gBAAgB,EAAE,IAAI,CAAC,YAAY,CAAC,gBAAgB;YACpD,eAAe;YACf,cAAc;SACf,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAC;QACtD,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,QAAQ,CAAC,eAAe,GAAG,eAAe,CAAC;QAE3C,8EAA8E;QAC9E,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,EAAG,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;QAC9E,eAAe,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAChD,eAAe,CAAC,cAAc,CAAC;YAC7B,eAAe;YACf,kBAAkB,EAAE,IAAI,CAAC,YAAY,CAAC,kBAAkB;YACxD,gBAAgB,EAAE,IAAI,CAAC,YAAY,CAAC,gBAAgB;YACpD,gBAAgB,EAAE,IAAI,CAAC,YAAY,CAAC,gBAAgB;YACpD,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,cAAc;YAC9C,eAAe;SAChB,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAC;QACtD,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,QAAQ,CAAC,eAAe,GAAG,eAAe,CAAC;QAE3C,4EAA4E;QAC5E,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,EAAG,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;QAC9E,eAAe,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAChD,eAAe,CAAC,cAAc,CAAC;YAC7B,kBAAkB,EAAE,IAAI,CAAC,YAAY,CAAC,kBAAkB;YACxD,gBAAgB,EAAE,IAAI,CAAC,YAAY,CAAC,gBAAgB;YACpD,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,OAAO;YAClC,gBAAgB,EAAE,IAAI,CAAC,YAAY,CAAC,gBAAgB;YACpD,gBAAgB,EAAE,IAAI,CAAC,YAAY,CAAC,gBAAgB;YACpD,eAAe;YACf,eAAe,EAAE,GAAG,EAAE;gBACpB,IAAI,CAAC;oBACH,MAAM,KAAK,GAAG,IAAI,CAAC,EAAG,CAAC,OAAO,CAAC,6JAA6J,CAAC,CAAC,GAAG,EAAsD,CAAC;oBACxP,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,KAAK,IAAI,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,QAAQ,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,GAAG,IAAI,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;gBAC1H,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;gBAAC,CAAC;YACxF,CAAC;SACF,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAC;QACtD,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,QAAQ,CAAC,eAAe,GAAG,eAAe,CAAC;QAE3C,oEAAoE;QACpE,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,EAAG,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,iBAAiB,EAAE,sCAAsC,EAAE,CAAC,CAAC;QACnI,YAAY,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAC7C,YAAY,CAAC,cAAc,CAAC;YAC1B,kBAAkB,EAAE,IAAI,CAAC,YAAY,CAAC,kBAAkB;YACxD,gBAAgB,EAAE,IAAI,CAAC,YAAY,CAAC,gBAAgB;YACpD,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,OAAO;YAClC,gBAAgB,EAAE,IAAI,CAAC,YAAY,CAAC,gBAAgB;YACpD,gBAAgB;YAChB,eAAe;SAChB,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;QAChD,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,QAAQ,CAAC,YAAY,GAAG,YAAY,CAAC;QAErC,uFAAuF;QACvF,MAAM,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAG,CAAC,CAAC;QAC1D,iBAAiB,CAAC,WAAW,CAAC;YAC5B,eAAe;YACf,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,6BAA6B,EAAE,QAAQ,EAAE,eAAe,EAAE;YACrJ,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,kCAAkC,EAAE,QAAQ,EAAE,eAAe,EAAE;YACxJ,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,yCAAyC,EAAE,QAAQ,EAAE,eAAe,EAAE;YACpK,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,uBAAuB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,gCAAgC,EAAE,QAAQ,EAAE,eAAe,EAAE;YAC5J,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,2BAA2B,EAAE,QAAQ,EAAE,eAAe,EAAE;YAChJ,mBAAmB;YACnB,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,iCAAiC,EAAE,QAAQ,EAAE,OAAO,EAAE;YAChJ,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,WAAW,EAAE,2BAA2B,EAAE,QAAQ,EAAE,OAAO,EAAE;YACxI,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,wBAAwB,EAAE,QAAQ,EAAE,OAAO,EAAE;YAClJ,mBAAmB;YACnB,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,yBAAyB,EAAE,QAAQ,EAAE,aAAa,EAAE;YACvJ,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,gCAAgC,EAAE,QAAQ,EAAE,aAAa,EAAE;YACtJ,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,WAAW,EAAE,6BAA6B,EAAE,QAAQ,EAAE,aAAa,EAAE;YACjJ,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,yBAAyB,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,WAAW,EAAE,mCAAmC,EAAE,QAAQ,EAAE,aAAa,EAAE;YAC/J,gBAAgB;YAChB,EAAE,MAAM,EAAE,gBAAgB,EAAE,IAAI,EAAE,yBAAyB,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,WAAW,EAAE,mCAAmC,EAAE,QAAQ,EAAE,UAAU,EAAE;YAChK,EAAE,MAAM,EAAE,gBAAgB,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,WAAW,EAAE,2CAA2C,EAAE,QAAQ,EAAE,UAAU,EAAE;YAC3K,oBAAoB;YACpB,EAAE,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,6BAA6B,EAAE,QAAQ,EAAE,UAAU,EAAE;YAC3J,EAAE,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,WAAW,EAAE,0BAA0B,EAAE,QAAQ,EAAE,UAAU,EAAE;YACrJ,EAAE,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,oCAAoC,EAAE,QAAQ,EAAE,UAAU,EAAE;YACnK,EAAE,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,yBAAyB,EAAE,QAAQ,EAAE,UAAU,EAAE;YACjJ,EAAE,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,wBAAwB,EAAE,QAAQ,EAAE,UAAU,EAAE;YACrJ,EAAE,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,qBAAqB,EAAE,QAAQ,EAAE,UAAU,EAAE;YACnJ,EAAE,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,oBAAoB,EAAE,QAAQ,EAAE,UAAU,EAAE;YACvJ,EAAE,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,+BAA+B,EAAE,QAAQ,EAAE,UAAU,EAAE;YAClK,EAAE,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,2BAA2B,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,2BAA2B,EAAE,QAAQ,EAAE,UAAU,EAAE;YAClK,EAAE,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,qBAAqB,EAAE,QAAQ,EAAE,UAAU,EAAE;YACvJ,EAAE,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,yBAAyB,EAAE,QAAQ,EAAE,UAAU,EAAE;YACtJ,EAAE,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,QAAQ,EAAE,UAAU,EAAE;YAC9J,eAAe;YACf,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,WAAW,EAAE,2CAA2C,EAAE,QAAQ,EAAE,eAAe,EAAE;YAChK,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,WAAW,EAAE,sCAAsC,EAAE,QAAQ,EAAE,eAAe,EAAE;YAC1J,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,WAAW,EAAE,uCAAuC,EAAE,QAAQ,EAAE,eAAe,EAAE;SAC9J,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,CAAC;QAC1D,QAAQ,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAE/C,MAAM,kBAAkB,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,EAAG,CAAC,CAAC;QAC5D,IAAI,CAAC,YAAY,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,CAAC;QAC5D,QAAQ,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAEjD,MAAM,oBAAoB,GAAG,IAAI,oBAAoB,CACnD,IAAI,CAAC,EAAG,EAAE,iBAAiB,EAAE,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAC/D,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,kBAAkB,CACnD,CAAC;QACF,oBAAoB,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;QAC3D,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAAC,oBAAoB,CAAC,CAAC;QAChE,QAAQ,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;QAErD,8DAA8D;QAC9D,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,EAAG,CAAC,CAAC;QACpD,cAAc,CAAC,qBAAqB,CAAC,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC;QAC3E,cAAc,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;QACrD,cAAc,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;QACvE,cAAc,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;QACpD,QAAQ,CAAC,cAAc,GAAG,cAAc,CAAC;QAEzC,2DAA2D;QAC3D,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,EAAG,CAAC,CAAC;QAC9C,WAAW,CAAC,qBAAqB,CAAC,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC;QACxE,WAAW,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;QACpE,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAClD,WAAW,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAC9C,QAAQ,CAAC,WAAW,GAAG,WAAW,CAAC;QAEnC,qDAAqD;QACrD,qBAAqB,CAAC,IAAI,CAAC,EAAG,CAAC,CAAC;QAChC,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,EAAG,CAAC,CAAC;QAC1C,SAAS,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAC1C,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAC;QAE/B,yDAAyD;QACzD,sBAAsB,CAAC,IAAI,CAAC,EAAG,CAAC,CAAC;QACjC,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAG,CAAC,CAAC;QACxD,gBAAgB,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;QACvD,gBAAgB,CAAC,cAAc,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAC/D,gBAAgB,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,CAAC;QAC3D,gBAAgB,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;QACjD,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;QACxD,QAAQ,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QAE7C,mDAAmD;QACnD,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,EAAG,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;QACxE,YAAY,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAC7C,YAAY,CAAC,cAAc,CAAC;YAC1B,aAAa,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,YAAa,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAA0B,EAAE,KAAK,IAAI,GAAG,CAAC;YACpH,aAAa,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,YAAa,CAAC,kBAAkB,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,IAAI,GAAG,CAAC;YAC3G,eAAe,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,YAAa,CAAC,kBAAkB,CAAC,eAAe,CAAC,MAAM,EAAE,KAAK,IAAI,GAAG,CAAC;YAC/G,cAAc,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,YAAa,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAA0B,EAAE,KAAK,IAAI,GAAG,CAAC;YACrH,iBAAiB,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,YAAa,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,EAAE,KAAK,IAAI,GAAG,CAA0E;YACrK,YAAY,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,YAAa,CAAC,gBAAgB,CAAC,YAAY,CAAC,IAAmB,EAAE,KAAK,IAAI,GAAG,CAAC;YAClH,gBAAgB,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;SACpG,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;QAChD,QAAQ,CAAC,YAAY,GAAG,YAAY,CAAC;QAErC,2DAA2D;QAC3D,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,EAAG,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;QACpE,UAAU,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAC3C,UAAU,CAAC,cAAc,CAAC;YACxB,qBAAqB,EAAE,GAAG,EAAE;gBAC1B,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,gBAAgB,CAAC,UAAU,EAAE,CAAC;oBAC9C,MAAM,OAAO,GAAG,CAAC,OAAO,EAAE,SAAS,IAAI,EAAE,CAAsC,CAAC;oBAChF,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,aAAa,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnE,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,CAAC,CAAC;gBAAC,CAAC;YACvB,CAAC;YACD,aAAa,EAAE,GAAG,EAAE;gBAClB,IAAI,CAAC;oBAAC,OAAO,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,CAAC,CAAC;gBAAC,CAAC;YAC5G,CAAC;YACD,iBAAiB,EAAE,GAAG,EAAE;gBACtB,IAAI,CAAC;oBAAC,OAAO,IAAI,CAAC,YAAa,CAAC,kBAAkB,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,CAAC,CAAC;gBAAC,CAAC;YACjH,CAAC;YACD,mBAAmB,EAAE,GAAG,EAAE;gBACxB,IAAI,CAAC;oBAAC,OAAO,IAAI,CAAC,YAAa,CAAC,kBAAkB,CAAC,UAAU,EAAE,CAAC,aAAa,IAAI,CAAC,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,CAAC,CAAC;gBAAC,CAAC;YAC3G,CAAC;YACD,kBAAkB,EAAE,GAAG,EAAE;gBACvB,IAAI,CAAC;oBAAC,OAAO,IAAI,CAAC,YAAa,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,CAAC,CAAC;gBAAC,CAAC;YACtG,CAAC;YACD,mBAAmB,EAAE,GAAG,EAAE;gBACxB,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,IAAI,CAAC,YAAa,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC;oBACjE,OAAQ,OAA0C,CAAC,iBAAiB,IAAI,CAAC,CAAC;gBAC5E,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,CAAC,CAAC;gBAAC,CAAC;YACvB,CAAC;SACF,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QAC5C,QAAQ,CAAC,UAAU,GAAG,UAAU,CAAC;QAEjC,wEAAwE;QACxE,qBAAqB,CAAC,IAAI,CAAC,EAAG,CAAC,CAAC;QAChC,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,EAAG,EAAE,iBAAiB,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;QACjG,eAAe,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAChD,eAAe,CAAC,cAAc,CAAC;YAC7B,cAAc,EAAE,GAAG,EAAE;gBACnB,IAAI,CAAC;oBAAC,OAAO,kBAAkB,CAAC,oBAAoB,EAAuD,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,EAAE,CAAC;gBAAC,CAAC;YACrI,CAAC;YACD,eAAe,EAAE,GAAG,EAAE;gBACpB,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,EAAE,CAAC;oBACtC,OAAO,MAAM,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,GAAG,CAAC,MAAM,CAAC,aAAa,GAAG,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnI,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,CAAC,CAAC;gBAAC,CAAC;YACvB,CAAC;YACD,qBAAqB,EAAE,GAAG,EAAE;gBAC1B,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,gBAAgB,CAAC,UAAU,EAAE,CAAC;oBAC9C,MAAM,OAAO,GAAG,CAAC,OAAO,EAAE,SAAS,IAAI,EAAE,CAAsC,CAAC;oBAChF,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,aAAa,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnE,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,CAAC,CAAC;gBAAC,CAAC;YACvB,CAAC;YACD,iBAAiB,EAAE,GAAG,EAAE;gBACtB,IAAI,CAAC;oBAAC,OAAO,IAAI,CAAC,YAAa,CAAC,kBAAkB,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,CAAC,CAAC;gBAAC,CAAC;YACjH,CAAC;YACD,kBAAkB,EAAE,GAAG,EAAE;gBACvB,IAAI,CAAC;oBAAC,OAAO,IAAI,CAAC,YAAa,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,CAAC,CAAC;gBAAC,CAAC;YACtG,CAAC;SACF,CAAC,CAAC;QACH,eAAe,CAAC,oBAAoB,EAAE,CAAC;QACvC,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAC;QACtD,QAAQ,CAAC,eAAe,GAAG,eAAe,CAAC;QAE3C,yDAAyD;QACzD,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,EAAG,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;QAC9E,eAAe,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAChD,eAAe,CAAC,cAAc,CAAC;YAC7B,sBAAsB,EAAE,GAAG,EAAE;gBAC3B,IAAI,CAAC;oBAAC,OAAO,IAAI,CAAC,YAAa,CAAC,gBAAgB,CAAC,IAAI,CAAC,WAA+B,EAAE,GAAG,CAAC,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,EAAE,CAAC;gBAAC,CAAC;YACrH,CAAC;YACD,aAAa,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;gBAC/B,IAAI,CAAC;oBAAC,OAAO,IAAI,CAAC,YAAa,CAAC,kBAAkB,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,IAAI,GAAG,CAAC,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,EAAE,CAAC;gBAAC,CAAC;YAChH,CAAC;YACD,cAAc,EAAE,CAAC,WAAW,EAAE,EAAE;gBAC9B,IAAI,CAAC;oBAAC,OAAO,IAAI,CAAC,YAAa,CAAC,WAAW,EAAE,QAAQ,CAAC,WAAW,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,EAAE,CAAC;gBAAC,CAAC;YACzG,CAAC;YACD,gBAAgB,EAAE,CAAC,SAAS,EAAE,EAAE;gBAC9B,IAAI,CAAC;oBAAC,OAAO,IAAI,CAAC,YAAa,CAAC,WAAW,EAAE,UAAU,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,EAAE,CAAC;gBAAC,CAAC;YAClG,CAAC;SACF,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAC;QACtD,QAAQ,CAAC,eAAe,GAAG,eAAe,CAAC;QAE3C,wDAAwD;QACxD,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,EAAG,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;QAC5E,cAAc,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAC/C,cAAc,CAAC,cAAc,CAAC;YAC5B,sBAAsB,EAAE,GAAG,EAAE;gBAC3B,IAAI,CAAC;oBACH,MAAM,CAAC,GAAG,IAAI,CAAC,YAAa,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC;oBACvD,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC,eAAe,EAAE,WAAW,EAAE,CAAC,CAAC,YAAY,EAAE,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC1H,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,EAAE,cAAc,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC;gBAAC,CAAC;YAC/E,CAAC;YACD,kBAAkB,EAAE,GAAG,EAAE;gBACvB,IAAI,CAAC;oBACH,MAAM,CAAC,GAAG,QAAQ,CAAC,eAAgB,CAAC,SAAS,EAAE,CAAC;oBAChD,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,eAAe,EAAE,CAAC;gBACpL,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,eAAe,EAAE,CAAC,EAAE,CAAC;gBAAC,CAAC;YAC3E,CAAC;YACD,kBAAkB,EAAE,GAAG,EAAE;gBACvB,IAAI,CAAC;oBACH,MAAM,CAAC,GAAG,QAAQ,CAAC,eAAgB,CAAC,SAAS,EAAE,CAAC;oBAChD,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC,WAAW,EAAE,WAAW,EAAE,CAAC,CAAC,gBAAgB,EAAE,CAAC;gBAC1E,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,EAAE,YAAY,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;gBAAC,CAAC;YACzD,CAAC;YACD,uBAAuB,EAAE,GAAG,EAAE;gBAC5B,IAAI,CAAC;oBACH,MAAM,GAAG,GAAG,IAAI,CAAC,YAAa,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;oBACrE,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC;oBACjG,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,MAAM,CAAC;oBACnE,OAAO,EAAE,aAAa,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5F,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,EAAE,aAAa,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC;gBAAC,CAAC;YAC9D,CAAC;YACD,qBAAqB,EAAE,GAAG,EAAE;gBAC1B,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,QAAQ,CAAC,gBAAgB,EAAE,UAAU,EAAE,CAAC;oBACxD,OAAQ,OAA+C,EAAE,eAAyB,IAAI,GAAG,CAAC;gBAC5F,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,GAAG,CAAC;gBAAC,CAAC;YACzB,CAAC;YACD,cAAc,EAAE,GAAG,EAAE;gBACnB,IAAI,CAAC;oBAAC,OAAO,QAAQ,CAAC,kBAAkB,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,EAAE,CAAC;gBAAC,CAAC;YAChG,CAAC;YACD,kBAAkB,EAAE,GAAG,EAAE;gBACvB,IAAI,CAAC;oBACH,MAAM,CAAC,GAAG,QAAQ,CAAC,eAAgB,CAAC,SAAS,EAAE,CAAC;oBAChD,MAAM,UAAU,GAAG,CAAC,CAAC,YAAY,CAAC,MAAM,GAAG,EAAE,CAAC;oBAC9C,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;gBAChK,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,eAAe,EAAE,CAAC,EAAE,CAAC;gBAAC,CAAC;YAC1E,CAAC;YACD,YAAY,EAAE,GAAG,EAAE;gBACjB,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,QAAQ,CAAC,kBAAkB,EAAE,YAAY,EAAE,CAAC;oBAC3D,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;wBAAE,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;oBAC1G,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC;oBAC1C,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC,CAAC,CAAC,MAAM,CAAC;oBACrE,MAAM,SAAS,GAAG,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC;oBAC3I,OAAO,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,SAAS,EAAE,CAAC;gBAC/F,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;gBAAC,CAAC;YACpF,CAAC;YACD,sBAAsB,EAAE,GAAG,EAAE;gBAC3B,IAAI,CAAC;oBAAC,OAAO,eAAe,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,CAAC,CAAC;gBAAC,CAAC;YAC5E,CAAC;YACD,0BAA0B,EAAE,GAAG,EAAE;gBAC/B,IAAI,CAAC;oBAAC,OAAO,IAAI,CAAC,YAAa,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,CAAC,KAAK,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,CAAC,CAAC;gBAAC,CAAC;YAClG,CAAC;YACD,cAAc,EAAE,GAAG,EAAE;gBACnB,IAAI,CAAC;oBAAC,OAAO,QAAQ,CAAC,YAAY,EAAE,SAAS,EAAE,EAAE,YAAY,IAAI,CAAC,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,CAAC,CAAC;gBAAC,CAAC;YAC3F,CAAC;SACF,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;QACpD,QAAQ,CAAC,cAAc,GAAG,cAAc,CAAC;QAEzC,kEAAkE;QAClE,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;QACpE,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,EAAG,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;QACtE,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAC9C,QAAQ,CAAC,WAAW,GAAG,WAAW,CAAC;QAEnC,MAAM,sBAAsB,GAAG,IAAI,sBAAsB,CAAC,IAAI,CAAC,EAAG,EAAE;YAClE,SAAS,EAAE,OAAO;YAClB,WAAW;YACX,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;SACtC,CAAC,CAAC;QACH,sBAAsB,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QACnD,sBAAsB,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,yBAAyB,CAAC,sBAAsB,CAAC,CAAC;QACpE,QAAQ,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;QAEzD,gFAAgF;QAChF,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAG,EAAE;YACtD,SAAS,EAAE,OAAO;YAClB,WAAW,EAAE,EAAE;YACf,YAAY,EAAE,GAAG;YACjB,OAAO,EAAE,QAAQ;SAClB,CAAC,CAAC;QACH,gBAAgB,CAAC,UAAU,CAAC;YAC1B,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,YAAY;YAC5C,gBAAgB,EAAE,IAAI,CAAC,YAAY,CAAC,gBAAgB;YACpD,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,OAAO;YAClC,gBAAgB,EAAE,IAAI,CAAC,YAAY,CAAC,gBAAgB;YACpD,gBAAgB;YAChB,iBAAiB;SAClB,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;QAExD,IAAI,CAAC,mBAAmB,GAAG,IAAI,mBAAmB,CAAC;YACjD,IAAI,EAAE,IAAI;YACV,aAAa;YACb,eAAe,EAAE,GAAG,EAAE;gBACpB,IAAI,CAAC;oBACH,MAAM,KAAK,GAAsE,EAAE,CAAC;oBACpF,wBAAwB;oBACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,EAAG,CAAC,OAAO,CAAC,iDAAiD,CAAC,CAAC,GAAG,EAAqC,CAAC;oBAC9H,KAAK,MAAM,CAAC,IAAI,QAAQ;wBAAE,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;oBAClH,SAAS;oBACT,MAAM,MAAM,GAAG,IAAI,CAAC,EAAG,CAAC,OAAO,CAAC,kDAAkD,CAAC,CAAC,GAAG,EAAqC,CAAC;oBAC7H,KAAK,MAAM,CAAC,IAAI,MAAM;wBAAE,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;oBAC7H,YAAY;oBACZ,MAAM,SAAS,GAAG,IAAI,CAAC,EAAG,CAAC,OAAO,CAAC,yDAAyD,CAAC,CAAC,GAAG,EAAqC,CAAC;oBACvI,KAAK,MAAM,CAAC,IAAI,SAAS;wBAAE,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,YAAY,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;oBACtI,+CAA+C;oBAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,EAAG,CAAC,OAAO,CAAC,sFAAsF,CAAC,CAAC,GAAG,EAAqC,CAAC;oBAClK,KAAK,MAAM,CAAC,IAAI,OAAO;wBAAE,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,eAAe,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;oBACzH,eAAe;oBACf,MAAM,QAAQ,GAAG,IAAI,CAAC,EAAG,CAAC,OAAO,CAAC,gGAAgG,CAAC,CAAC,GAAG,EAAmD,CAAC;oBAC3L,KAAK,MAAM,CAAC,IAAI,QAAQ;wBAAE,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;oBACnI,oBAAoB;oBACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,EAAG,CAAC,OAAO,CAAC,mGAAmG,CAAC,CAAC,GAAG,EAAuE,CAAC;oBAClN,KAAK,MAAM,CAAC,IAAI,QAAQ;wBAAE,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC;oBACpJ,sDAAsD;oBACtD,MAAM,KAAK,GAAG,IAAI,CAAC,EAAG,CAAC,OAAO,CAAC,4GAA4G,CAAC,CAAC,GAAG,EAA0G,CAAC;oBAC3P,MAAM,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;wBAClC,MAAM,EAAE,GAAG,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,SAAS,EAAE;wBACzC,MAAM,EAAE,GAAG,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,SAAS,EAAE;wBACzC,MAAM,EAAE,CAAC,CAAC,MAAM;qBACjB,CAAC,CAAC,CAAC;oBACJ,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;gBACvC,CAAC;gBAAC,MAAM,CAAC;oBAAC,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;gBAAC,CAAC;YAC9C,CAAC;YACD,eAAe,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,YAAa,CAAC,UAAU,EAAE;YACtD,iBAAiB,EAAE,GAAG,EAAE;gBACtB,IAAI,CAAC;oBACH,IAAI,CAAC,YAAa,CAAC,gBAAgB,EAAE,CAAC;gBACxC,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,MAAM,CAAC,KAAK,CAAC,iCAAkC,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC1E,CAAC;YACH,CAAC;SACF,CAAC,CAAC;QACH,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC;QACjC,QAAQ,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC;QACxD,QAAQ,CAAC,aAAa,GAAG,aAAa,CAAC;QAEvC,mEAAmE;QACnE,IAAI,CAAC,aAAa,GAAG,IAAI,sBAAsB,CAAC;YAC9C,IAAI,EAAE,IAAI;YACV,aAAa;YACb,WAAW,EAAE,GAAG,EAAE;gBAChB,8DAA8D;gBAC9D,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,EAAE,UAAU,EAAqC,CAAC;gBACnF,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,EAAE,SAAS,EAAE,CAAC;gBACxD,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,EAAE,SAAS,EAAE,CAAC;gBACpD,OAAO;oBACL,WAAW,EAAE,OAAO,OAAO,EAAE,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI;oBACpG,MAAM,EAAE;wBACN,KAAK,EAAE;4BACL,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;4BACvC,KAAK,EAAE,OAAO,EAAE,UAAU,IAAI,CAAC;4BAC/B,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,eAAe,IAAI,CAAC;4BACpD,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,IAAI,CAAC;4BAC3C,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,IAAI,CAAC;4BAC5C,KAAK,EAAE,SAAS,EAAE,cAAc,IAAI,SAAS;yBAC9C;qBACF;oBACD,QAAQ,EAAE,cAAc;oBACxB,SAAS,EAAE,SAAS;iBACrB,CAAC;YACJ,CAAC;YACD,iBAAiB,EAAE,GAAG,EAAE;gBACtB,IAAI,CAAC,IAAI,CAAC,cAAc;oBAAE,OAAO,IAAI,CAAC;gBACtC,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC;gBAC/C,OAAO;oBACL,GAAG,MAAM;oBACT,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE,CAAC;oBAC/C,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE;oBACrC,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,EAAE,CAAC;oBACnD,aAAa,EAAE,IAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE;iBACtD,CAAC;YACJ,CAAC;YACD,kBAAkB,EAAE,GAAG,EAAE;gBACvB,IAAI,CAAC,IAAI,CAAC,eAAe;oBAAE,OAAO,IAAI,CAAC;gBACvC,OAAO,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;YAC1C,CAAC;YACD,gBAAgB,EAAE,GAAG,EAAE;gBACrB,OAAO,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,MAAM,CACxC,CAAC,CAA4B,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,cAAc,IAAI,CAAC,CAAC,YAAY,KAAK,SAAS,CACpG,CAAC;YACJ,CAAC;YACD,iBAAiB,EAAE,GAAG,EAAE;gBACtB,IAAI,CAAC,YAAY,EAAE,gBAAgB,EAAE,CAAC;YACxC,CAAC;SACF,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC3B,QAAQ,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;QAE5C,MAAM,CAAC,IAAI,CAAC,iLAAiL,CAAC,CAAC;QAE/L,yDAAyD;QACzD,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YAC3B,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,EAAG,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;YAClE,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;YAClD,aAAa,CAAC,KAAK,EAAE,CAAC;YACtB,QAAQ,CAAC,aAAa,GAAG,aAAa,CAAC;YACvC,MAAM,CAAC,IAAI,CAAC,qCAAqC,MAAM,CAAC,OAAO,CAAC,cAAc,cAAc,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,uBAAuB,GAAG,CAAC,CAAC;QAC/J,CAAC;QAED,uEAAuE;QACvE,IAAI,gBAA8C,CAAC;QACnD,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YAC/B,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,EAAG,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;YACvF,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAG,CAAC,CAAC;YAClD,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YAC1C,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAC;YAC/B,QAAQ,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;YAC7C,KAAK,SAAS,CAAC,SAAS,EAAE,CAAC;YAC3B,MAAM,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;QACxD,CAAC;QAED,4EAA4E;QAC5E,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC;YAClC,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,EAAG,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,CAAC;YACjH,MAAM,cAAc,GAAG,IAAI,cAAc,CACvC,IAAI,CAAC,YAAY,CAAC,kBAAkB,EACpC,IAAI,CAAC,YAAY,CAAC,OAAO,EACzB,gBAAgB,IAAI,IAAI,EACxB,QAAQ,CAAC,aAAa,IAAI,IAAI,CAC/B,CAAC;YACF,aAAa,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;YAChD,aAAa,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;YAC9C,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;YAClD,QAAQ,CAAC,aAAa,GAAG,aAAa,CAAC;YAEvC,oBAAoB;YACpB,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC;gBACrC,IAAI,EAAE,MAAM,CAAC,gBAAgB,EAAE,IAAI,IAAI,IAAI;gBAC3C,aAAa;gBACb,SAAS,EAAE,QAAQ,CAAC,SAAS,IAAI,IAAI;gBACrC,gBAAgB,EAAE,gBAAgB,IAAI,IAAI;gBAC1C,sBAAsB,EAAE,QAAQ,CAAC,sBAAsB,IAAI,IAAI;aAChE,CAAC,CAAC;YACH,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;YAC3B,QAAQ,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;YAC5C,MAAM,CAAC,IAAI,CAAC,gEAAgE,GAAG,CAAC,MAAM,CAAC,gBAAgB,EAAE,IAAI,IAAI,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;YAE9H,mEAAmE;YACnE,IAAI,QAAQ,CAAC,sBAAsB,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;gBAC5D,MAAM,UAAU,GAAG,IAAI,cAAc,CACnC,IAAI,CAAC,YAAY,CAAC,kBAAkB,EACpC,IAAI,CAAC,YAAY,CAAC,OAAO,EACzB,gBAAgB,IAAI,IAAI,EACxB,QAAQ,CAAC,aAAa,IAAI,IAAI,CAC/B,CAAC;gBACF,UAAU,CAAC,cAAc,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;gBAChD,QAAQ,CAAC,sBAAsB,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;YAChE,CAAC;QACH,CAAC;QAED,iBAAiB;QACjB,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,QAAQ,CAAC,CAAC;QACvC,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAC9E,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QAEvB,4CAA4C;QAC5C,MAAM,CAAC,sBAAsB,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAExE,uBAAuB;QACvB,IAAI,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;YACvB,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC;gBAC7B,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI;gBACrB,MAAM;gBACN,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM;gBACzB,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;oBAClB,EAAE,EAAE,IAAI,CAAC,EAAE,KAAK,IAAI;oBACpB,GAAG,EAAE,IAAI,CAAC,SAAS,KAAK,IAAI;oBAC5B,QAAQ,EAAE,IAAI,CAAC,cAAc,KAAK,IAAI;oBACtC,QAAQ,EAAE,IAAI,CAAC,cAAc,KAAK,IAAI;oBACtC,UAAU,EAAE,IAAI,CAAC,eAAe,KAAK,IAAI;oBACzC,eAAe,EAAE,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,CAAC,KAAK,IAAI,IAAI;iBAC5D,CAAC;aACH,CAAC,CAAC;YACH,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;YACvB,MAAM,CAAC,IAAI,CAAC,4BAA4B,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QAC7D,CAAC;QAED,6EAA6E;QAC7E,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YAC3B,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACpE,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;YAC3B,MAAM,CAAC,IAAI,CAAC,kCAAkC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACvE,CAAC;QAED,6BAA6B;QAC7B,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE;YACnC,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QAC9B,CAAC,EAAE,MAAM,CAAC,CAAC;QAEX,uCAAuC;QACvC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QAEnD,uCAAuC;QACvC,IAAI,CAAC,4BAA4B,EAAE,CAAC;QAEpC,eAAe;QACf,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC,CAAC;QACpE,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;QAE/C,wBAAwB;QACxB,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACxC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAEzC,8EAA8E;QAC9E,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,GAAG,EAAE,EAAE;YACtC,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;YAC7E,IAAI,CAAC,QAAQ,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC;YACxC,sDAAsD;YACtD,IAAK,GAA6B,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBACzD,MAAM,CAAC,KAAK,CAAC,+DAA+D,CAAC,CAAC;gBAC9E,OAAO;YACT,CAAC;YACD,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC,MAAM,EAAE,EAAE;YAC1C,MAAM,CAAC,KAAK,CAAC,qBAAqB,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAChE,IAAI,CAAC,QAAQ,CAAC,oBAAoB,EAAE,MAAM,YAAY,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAClG,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,8BAA8B,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC;IAC5D,CAAC;IAEO,QAAQ,CAAC,IAAY,EAAE,GAAU;QACvC,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,aAAa,CAAC,CAAC;QAC5E,MAAM,KAAK,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,IAAI,KAAK,GAAG,CAAC,OAAO,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE,MAAM,CAAC;QAC9F,IAAI,CAAC;YAAC,EAAE,CAAC,cAAc,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;IACzE,CAAC;IAEO,OAAO;QACb,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACjC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAC3B,CAAC;QAED,IAAI,CAAC,mBAAmB,EAAE,aAAa,EAAE,CAAC;QAC1C,IAAI,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC;QAC3B,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC;QAC3B,IAAI,CAAC,mBAAmB,EAAE,IAAI,EAAE,CAAC;QACjC,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC;QAC1B,IAAI,CAAC,iBAAiB,EAAE,IAAI,EAAE,CAAC;QAC/B,IAAI,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC;QAC3B,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC;QACvB,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC;QACvB,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC;QAEjB,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC;QACf,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAChC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAChC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC7B,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;IAChC,CAAC;IAED,OAAO;QACL,IAAI,IAAI,CAAC,UAAU;YAAE,OAAO;QAC5B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QAEvB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAE3B,sDAAsD;QACtD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,IAAI,GAAG,GAAG,IAAI,CAAC,kBAAkB,GAAG,MAAM,EAAE,CAAC;YAC3C,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;YACtB,IAAI,CAAC,kBAAkB,GAAG,GAAG,CAAC;QAChC,CAAC;QACD,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,IAAI,IAAI,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;YAC1B,MAAM,CAAC,KAAK,CAAC,iEAAiE,CAAC,CAAC;YAChF,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC,CAAC;YAC/E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,oCAAoC,IAAI,CAAC,YAAY,QAAQ,CAAC,CAAC;QAE3E,IAAI,CAAC;YAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,yBAAyB,CAAC,CAAC;QAE3D,6CAA6C;QAC7C,UAAU,CAAC,GAAG,EAAE;YACd,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;YACxB,IAAI,CAAC;gBACH,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC9B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC5F,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;YAC1B,CAAC;QACH,CAAC,EAAE,IAAI,CAAC,CAAC;IACX,CAAC;IAED,IAAI;QACF,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAEhC,IAAI,CAAC,OAAO,EAAE,CAAC;QAEf,kBAAkB;QAClB,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC,CAAC;YACzE,IAAI,CAAC;gBAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;QACxD,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QACpC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAEO,4BAA4B;QAClC,IAAI,CAAC,IAAI,CAAC,mBAAmB,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,OAAO;QAC1D,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QAEnC,iFAAiF;QACjF,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC,iBAAiB,CAAC,EAAE,CAAC,KAAa,EAAE,IAAa,EAAE,EAAE;YACxG,MAAM,CAAC,IAAI,CAAC,0BAA0B,KAAK,qBAAqB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YAC5E,UAAU,CAAC,WAAW,CAAC,eAAe,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YACrD,IAAI,CAAC,YAAY,EAAE,iBAAiB,CAAC,eAAe,EAAE,KAAK,EAAE,IAA+B,CAAC,CAAC;QAChG,CAAC,CAAC,CAAC;QAEH,iFAAiF;QACjF,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC,KAAa,EAAE,IAAa,EAAE,EAAE;YACtG,UAAU,CAAC,WAAW,CAAC,eAAe,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YACrD,IAAI,CAAC,YAAY,EAAE,iBAAiB,CAAC,eAAe,EAAE,KAAK,EAAE,IAA+B,CAAC,CAAC;YAC9F,MAAM,CAAC,GAAG,IAAsC,CAAC;YACjD,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,KAAK,EAAE,CAAC;gBACzB,wDAAwD;gBACxD,MAAM,gBAAgB,GAAG,UAAU,CAAC,eAAe,CAAC,GAAG,CAAC;qBACrD,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,kBAAkB,CAAC,CAAC;gBAC9C,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAChC,MAAM,CAAC,IAAI,CAAC,qEAAqE,gBAAgB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gBAC/H,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,oFAAoF;QACpF,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,iBAAiB,EAAE,CAAC,gBAAgB,CAAC,EAAE,CAAC,KAAa,EAAE,IAAa,EAAE,EAAE;YACzG,MAAM,CAAC,IAAI,CAAC,0BAA0B,KAAK,uBAAuB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YAC9E,UAAU,CAAC,WAAW,CAAC,iBAAiB,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YACvD,IAAI,CAAC,YAAY,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,KAAK,EAAE,IAA+B,CAAC,CAAC;QAClG,CAAC,CAAC,CAAC;QAEH,yEAAyE;QACzE,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,iBAAiB,EAAE,CAAC,kBAAkB,CAAC,EAAE,CAAC,KAAa,EAAE,IAAa,EAAE,EAAE;YAC3G,UAAU,CAAC,WAAW,CAAC,iBAAiB,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YACvD,IAAI,CAAC,YAAY,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,KAAK,EAAE,IAA+B,CAAC,CAAC;QAClG,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,mBAAmB,CAAC,QAAkB,EAAE,cAA8B;QAC5E,MAAM,GAAG,GAAG,WAAW,EAAE,CAAC;QAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC/B,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;QACjC,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;QAC/B,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC;QACvC,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC;QAE/B,wHAAwH;QACxH,GAAG,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE;YAClD,cAAc,CAAC,UAAU,CACvB,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAC9B,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,EAClC,WAAW,CACZ,CAAC;YACF,QAAQ,EAAE,MAAM,CAAC,gBAAgB,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;YAC3D,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,OAAO,EAAE,gBAAgB,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;YAChF,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;YACxD,MAAM,EAAE,WAAW,CAAC,OAAO,EAAE,gBAAgB,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;YACvE,UAAU,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YAClG,IAAI,EAAE,OAAO,CAAC,gBAAgB,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;YACxD,QAAQ,CAAC,gBAAgB,EAAE,YAAY,CAAC,aAAa,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;QAEH,0CAA0C;QAC1C,GAAG,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,EAAE;YAC9D,IAAI,OAAO,EAAE,CAAC;gBACZ,cAAc,CAAC,UAAU,CACvB,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE,EACpC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAC9B,QAAQ,CACT,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CACjC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE,EACpC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAC9B,QAAQ,CACT,CAAC;gBACF,IAAI,OAAO;oBAAE,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;YACtD,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,sCAAsC;QACtC,GAAG,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE;YACtD,cAAc,CAAC,UAAU,CACvB,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,EAAE,QAAQ,EAAE,EACrC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,EAClC,WAAW,CACZ,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,2CAA2C;QAC3C,GAAG,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE;YAC7C,SAAS,EAAE,CAAC,IAAI,CAAC,aAAa,MAAM,aAAa,OAAO,EAAE,CAAC,CAAC;YAC5D,MAAM,EAAE,WAAW,CAAC,OAAO,EAAE,cAAc,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;YAClE,UAAU,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YAChG,IAAI,EAAE,OAAO,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,oHAAoH;QACpH,GAAG,CAAC,EAAE,CAAC,iBAAiB,EAAE,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE;YAChD,SAAS,EAAE,CAAC,IAAI,CAAC,gBAAgB,SAAS,KAAK,IAAI,GAAG,CAAC,CAAC;YACxD,QAAQ,EAAE,UAAU,CAAC,iBAAiB,EAAE,iBAAiB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAChF,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,OAAO,EAAE,iBAAiB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC9E,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACtD,MAAM,EAAE,WAAW,CAAC,OAAO,EAAE,iBAAiB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACrE,UAAU,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACnG,IAAI,EAAE,OAAO,CAAC,iBAAiB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;QAEH,+CAA+C;QAC/C,GAAG,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,EAAE;YAC9D,IAAI,EAAE,OAAO,CAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACrF,QAAQ,CAAC,gBAAgB,EAAE,YAAY,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QAC1F,CAAC,CAAC,CAAC;QAEH,2BAA2B;QAC3B,GAAG,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE;YACnD,IAAI,SAAS,EAAE,CAAC;gBACd,cAAc,CAAC,UAAU,CACvB,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,EAChC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,EAClC,WAAW,CACZ,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,4BAA4B;QAC5B,GAAG,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE;YACxC,SAAS,EAAE,CAAC,IAAI,CAAC,YAAY,SAAS,QAAQ,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;QAEH,6BAA6B;QAC7B,GAAG,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,EAAE;YACxD,IAAI,SAAS,EAAE,CAAC;gBACd,cAAc,CAAC,UAAU,CACvB,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE,EACpC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,EAClC,WAAW,CACZ,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,qBAAqB;QACrB,GAAG,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;YACpC,SAAS,EAAE,CAAC,IAAI,CAAC,SAAS,MAAM,UAAU,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QAEH,uBAAuB;QACvB,GAAG,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;YACtC,SAAS,EAAE,CAAC,IAAI,CAAC,SAAS,MAAM,YAAY,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"brain.js","sourceRoot":"","sources":["../src/brain.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,17 @@ const MAX_RESTARTS = 5;
9
9
  const RESTART_WINDOW_MS = 5 * 60 * 1000; // 5 minutes
10
10
  const BASE_BACKOFF_MS = 1000;
11
11
  function spawnDaemon(entryPoint, args) {
12
- const child = spawn(process.execPath, [entryPoint, ...args], {
12
+ // If compiled JS doesn't exist, we're running from TS source — use tsx loader
13
+ const isTsSource = !fs.existsSync(entryPoint);
14
+ let cmdArgs;
15
+ if (isTsSource) {
16
+ const tsEntry = entryPoint.replace(/\.js$/, '.ts');
17
+ cmdArgs = ['--import', 'tsx', tsEntry, ...args];
18
+ }
19
+ else {
20
+ cmdArgs = [entryPoint, ...args];
21
+ }
22
+ const child = spawn(process.execPath, cmdArgs, {
13
23
  detached: true,
14
24
  stdio: 'ignore',
15
25
  });
@@ -1 +1 @@
1
- {"version":3,"file":"start.js","sourceRoot":"","sources":["../../../src/cli/commands/start.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"start.js","sourceRoot":"","sources":["../../../src/cli/commands/start.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,4 +1,22 @@
1
1
  #!/usr/bin/env node
2
+ import fs from 'node:fs';
3
+ import path from 'node:path';
4
+ // Load .env from project root (monorepo) if it exists
5
+ const envPath = path.resolve(new URL(import.meta.url).pathname.replace(/^\/([A-Z]:)/, '$1'), '..', '..', '..', '..', '.env');
6
+ if (fs.existsSync(envPath)) {
7
+ for (const line of fs.readFileSync(envPath, 'utf8').split('\n')) {
8
+ const trimmed = line.trim();
9
+ if (!trimmed || trimmed.startsWith('#'))
10
+ continue;
11
+ const eq = trimmed.indexOf('=');
12
+ if (eq < 0)
13
+ continue;
14
+ const key = trimmed.slice(0, eq).trim();
15
+ const val = trimmed.slice(eq + 1).trim();
16
+ if (!process.env[key])
17
+ process.env[key] = val;
18
+ }
19
+ }
2
20
  import { Command } from 'commander';
3
21
  import { startCommand } from './cli/commands/start.js';
4
22
  import { stopCommand } from './cli/commands/stop.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@timmeck/brain",
3
- "version": "3.33.0",
3
+ "version": "3.34.1",
4
4
  "description": "Adaptive error memory and code intelligence system with Hebbian synapse network, hybrid search, and REST API",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -43,7 +43,7 @@
43
43
  "dependencies": {
44
44
  "@huggingface/transformers": "^3.8.1",
45
45
  "@modelcontextprotocol/sdk": "^1.0.0",
46
- "@timmeck/brain-core": "^2.33.0",
46
+ "@timmeck/brain-core": "^2.34.0",
47
47
  "better-sqlite3": "^11.7.0",
48
48
  "chalk": "^5.6.2",
49
49
  "commander": "^13.0.0",