@spilno/herald-mcp 1.18.0 → 1.19.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +125 -108
- package/dist/command-extensions.spec.d.ts +10 -0
- package/dist/command-extensions.spec.d.ts.map +1 -0
- package/dist/command-extensions.spec.js +117 -0
- package/dist/command-extensions.spec.js.map +1 -0
- package/dist/index.js +491 -4
- package/dist/index.js.map +1 -1
- package/dist/session-tools.spec.js +4 -4
- package/dist/session-tools.spec.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,13 +1,24 @@
|
|
|
1
1
|
# @spilno/herald-mcp
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
> AI-native interface to [CEDA](https://getceda.com) — pattern memory for AI agents.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Herald bridges AI agents and CEDA's cognitive pattern memory. Your AI remembers what worked.
|
|
6
|
+
|
|
7
|
+
## Why Herald?
|
|
8
|
+
|
|
9
|
+
AI agents start fresh each session. Herald gives them memory:
|
|
10
|
+
|
|
11
|
+
| Without Herald | With Herald |
|
|
12
|
+
|----------------|-------------|
|
|
13
|
+
| AI forgets past sessions | Patterns persist across sessions |
|
|
14
|
+
| Same mistakes repeated | Antipatterns prevent failures |
|
|
15
|
+
| Generic responses | Context-aware predictions |
|
|
16
|
+
| No learning curve | Knowledge compounds |
|
|
6
17
|
|
|
7
18
|
## Quick Start
|
|
8
19
|
|
|
9
20
|
```bash
|
|
10
|
-
#
|
|
21
|
+
# One command setup for Claude Desktop
|
|
11
22
|
npx @spilno/herald-mcp init
|
|
12
23
|
|
|
13
24
|
# Or install globally
|
|
@@ -15,17 +26,53 @@ npm install -g @spilno/herald-mcp
|
|
|
15
26
|
herald-mcp init
|
|
16
27
|
```
|
|
17
28
|
|
|
18
|
-
|
|
29
|
+
Done. Herald is now available to Claude.
|
|
30
|
+
|
|
31
|
+
## Core Tools
|
|
32
|
+
|
|
33
|
+
| Tool | Purpose |
|
|
34
|
+
|------|---------|
|
|
35
|
+
| `herald_predict` | Generate structure from natural language |
|
|
36
|
+
| `herald_refine` | Refine predictions with feedback |
|
|
37
|
+
| `herald_patterns` | Query what worked before |
|
|
38
|
+
| `herald_reflect` | Capture patterns and antipatterns |
|
|
39
|
+
| `herald_feedback` | Reinforce helpful patterns |
|
|
19
40
|
|
|
20
|
-
|
|
41
|
+
### Pattern Memory
|
|
21
42
|
|
|
22
|
-
|
|
43
|
+
```
|
|
44
|
+
AI: herald_patterns()
|
|
45
|
+
→ Returns: patterns that worked, antipatterns to avoid
|
|
46
|
+
|
|
47
|
+
AI: herald_predict("create safety assessment module")
|
|
48
|
+
→ Returns: structured prediction based on accumulated patterns
|
|
49
|
+
|
|
50
|
+
User: "That worked well"
|
|
51
|
+
AI: herald_reflect(feeling="success", insight="field grouping approach")
|
|
52
|
+
→ Pattern captured, weight increased
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## Session Flow
|
|
23
56
|
|
|
24
57
|
```bash
|
|
25
|
-
|
|
58
|
+
# Start a session
|
|
59
|
+
herald-mcp predict "create incident report module"
|
|
60
|
+
|
|
61
|
+
# Refine iteratively
|
|
62
|
+
herald-mcp refine "add witness section"
|
|
63
|
+
herald-mcp refine "require photos for severity > 3"
|
|
64
|
+
|
|
65
|
+
# Accept when satisfied
|
|
66
|
+
herald-mcp observe yes
|
|
67
|
+
|
|
68
|
+
# Resume anytime
|
|
69
|
+
herald-mcp resume
|
|
26
70
|
```
|
|
27
71
|
|
|
28
|
-
|
|
72
|
+
## Configuration
|
|
73
|
+
|
|
74
|
+
### Claude Desktop / Claude Code
|
|
75
|
+
|
|
29
76
|
```json
|
|
30
77
|
{
|
|
31
78
|
"mcpServers": {
|
|
@@ -40,140 +87,110 @@ This creates:
|
|
|
40
87
|
}
|
|
41
88
|
```
|
|
42
89
|
|
|
43
|
-
|
|
44
|
-
- `--help, -h` - Show help
|
|
45
|
-
- `--force, -f` - Overwrite existing settings.json
|
|
46
|
-
|
|
47
|
-
## Chat Mode (Natural Conversation)
|
|
90
|
+
### Environment Variables
|
|
48
91
|
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
92
|
+
| Variable | Required | Description |
|
|
93
|
+
|----------|----------|-------------|
|
|
94
|
+
| `HERALD_API_URL` | Yes | CEDA server (default: https://getceda.com) |
|
|
95
|
+
| `HERALD_COMPANY` | No | Multi-tenant company context |
|
|
96
|
+
| `HERALD_PROJECT` | No | Project context |
|
|
97
|
+
| `HERALD_USER` | No | User context |
|
|
53
98
|
|
|
54
|
-
|
|
55
|
-
You: I need a safety assessment module for construction sites
|
|
56
|
-
Herald: I've designed a Safety Assessment module with 4 sections...
|
|
99
|
+
## Multi-Tenant Isolation
|
|
57
100
|
|
|
58
|
-
|
|
59
|
-
Herald: Done. Added compliance checklist to Risk Evaluation...
|
|
101
|
+
Patterns are isolated by context:
|
|
60
102
|
|
|
61
|
-
You: Looks good, let's use it
|
|
62
|
-
Herald: Great! Module accepted and saved.
|
|
63
103
|
```
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
```bash
|
|
68
|
-
herald-mcp predict "create safety assessment"
|
|
69
|
-
herald-mcp refine "add OSHA compliance"
|
|
70
|
-
herald-mcp resume
|
|
71
|
-
herald-mcp observe yes
|
|
72
|
-
herald-mcp new
|
|
73
|
-
herald-mcp health
|
|
74
|
-
herald-mcp stats
|
|
104
|
+
Company A patterns → Only visible to Company A
|
|
105
|
+
Project X patterns → Only visible to Project X users
|
|
75
106
|
```
|
|
76
107
|
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
Sessions saved to `~/.herald/session` - resume anytime:
|
|
80
|
-
|
|
108
|
+
Set context via environment or headers:
|
|
81
109
|
```bash
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
# Continue tomorrow
|
|
86
|
-
herald-mcp resume
|
|
87
|
-
herald-mcp refine "add witness statements section"
|
|
110
|
+
export HERALD_COMPANY=acme
|
|
111
|
+
export HERALD_PROJECT=safety-modules
|
|
88
112
|
```
|
|
89
113
|
|
|
90
|
-
##
|
|
114
|
+
## Herald Context Sync
|
|
91
115
|
|
|
92
|
-
|
|
93
|
-
|----------|----------|-------------|
|
|
94
|
-
| `HERALD_API_URL` | Yes | CEDA server URL |
|
|
95
|
-
| `HERALD_API_TOKEN` | No | Bearer token for auth |
|
|
96
|
-
| `HERALD_COMPANY` | No | Multi-tenant company context |
|
|
97
|
-
| `HERALD_PROJECT` | No | Multi-tenant project context |
|
|
98
|
-
| `HERALD_VAULT` | No | Offspring vault ID (spilno, goprint, disrupt) |
|
|
99
|
-
| `HERALD_OFFSPRING_CLOUD` | No | Set to "true" for cloud mode |
|
|
100
|
-
| `AEGIS_OFFSPRING_PATH` | No | Local path to offspring status files |
|
|
101
|
-
|
|
102
|
-
## Herald Context Sync (v1.3.0+)
|
|
103
|
-
|
|
104
|
-
Herald instances can communicate across contexts, sharing insights and synchronizing status:
|
|
105
|
-
|
|
106
|
-
### Tools
|
|
116
|
+
Herald instances share insights across contexts:
|
|
107
117
|
|
|
108
118
|
| Tool | Purpose |
|
|
109
119
|
|------|---------|
|
|
110
|
-
| `herald_context_status` |
|
|
111
|
-
| `herald_share_insight` | Share
|
|
112
|
-
| `herald_query_insights` | Query
|
|
120
|
+
| `herald_context_status` | Check status of Herald instances |
|
|
121
|
+
| `herald_share_insight` | Share pattern to other contexts |
|
|
122
|
+
| `herald_query_insights` | Query shared insights |
|
|
123
|
+
| `herald_sync` | Flush local buffer to cloud |
|
|
113
124
|
|
|
114
|
-
|
|
125
|
+
## Chat Mode
|
|
115
126
|
|
|
116
|
-
|
|
117
|
-
# Context files in local directory
|
|
118
|
-
export AEGIS_OFFSPRING_PATH=~/Documents/aegis_ceda/_offspring
|
|
119
|
-
export HERALD_VAULT=spilno # Which context this Herald serves
|
|
127
|
+
For humans who prefer conversation:
|
|
120
128
|
|
|
121
|
-
|
|
129
|
+
```bash
|
|
130
|
+
herald-mcp chat
|
|
122
131
|
```
|
|
123
132
|
|
|
124
|
-
|
|
133
|
+
```
|
|
134
|
+
You: I need a permit-to-work module
|
|
135
|
+
Herald: I've designed a Permit-to-Work module with 5 sections...
|
|
125
136
|
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
export HERALD_API_URL=https://getceda.com
|
|
129
|
-
export HERALD_OFFSPRING_CLOUD=true
|
|
130
|
-
export HERALD_VAULT=spilno
|
|
137
|
+
You: Add gas testing checklist
|
|
138
|
+
Herald: Added gas testing to Pre-Work Safety section...
|
|
131
139
|
|
|
132
|
-
|
|
140
|
+
You: Perfect
|
|
141
|
+
Herald: Module accepted and saved.
|
|
133
142
|
```
|
|
134
143
|
|
|
135
|
-
|
|
144
|
+
## Command Reference
|
|
136
145
|
|
|
137
|
-
```
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
146
|
+
```bash
|
|
147
|
+
herald-mcp init # Setup for Claude Desktop
|
|
148
|
+
herald-mcp chat # Interactive conversation mode
|
|
149
|
+
herald-mcp predict <signal> # Generate prediction
|
|
150
|
+
herald-mcp refine <signal> # Refine current prediction
|
|
151
|
+
herald-mcp resume # Resume last session
|
|
152
|
+
herald-mcp observe <yes|no> # Accept or reject prediction
|
|
153
|
+
herald-mcp new # Start fresh session
|
|
154
|
+
herald-mcp health # Check CEDA connection
|
|
155
|
+
herald-mcp stats # Show loaded patterns
|
|
142
156
|
```
|
|
143
157
|
|
|
144
|
-
##
|
|
158
|
+
## Architecture
|
|
145
159
|
|
|
146
|
-
|
|
160
|
+
```
|
|
161
|
+
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
|
|
162
|
+
│ AI Agent │────▶│ Herald │────▶│ CEDA │
|
|
163
|
+
│ (Claude/ │ │ (MCP) │ │ (Pattern │
|
|
164
|
+
│ Devin/etc) │◀────│ │◀────│ Memory) │
|
|
165
|
+
└─────────────┘ └─────────────┘ └─────────────┘
|
|
166
|
+
│
|
|
167
|
+
┌──────┴──────┐
|
|
168
|
+
│ Patterns │
|
|
169
|
+
│ Antipatterns│
|
|
170
|
+
│ Feedback │
|
|
171
|
+
└─────────────┘
|
|
172
|
+
```
|
|
147
173
|
|
|
148
|
-
|
|
174
|
+
## What is CEDA?
|
|
149
175
|
|
|
150
|
-
|
|
151
|
-
{
|
|
152
|
-
"mcpServers": {
|
|
153
|
-
"herald": {
|
|
154
|
-
"command": "npx",
|
|
155
|
-
"args": ["@spilno/herald-mcp"],
|
|
156
|
-
"env": {
|
|
157
|
-
"HERALD_API_URL": "https://getceda.com"
|
|
158
|
-
}
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
```
|
|
176
|
+
CEDA (Cognitive Event-Driven Architecture) is pattern memory for AI:
|
|
163
177
|
|
|
164
|
-
|
|
178
|
+
- **Patterns**: Approaches that worked (weighted by effectiveness)
|
|
179
|
+
- **Antipatterns**: Approaches that failed (avoided in predictions)
|
|
180
|
+
- **Feedback loop**: Patterns strengthen or decay based on outcomes
|
|
165
181
|
|
|
166
|
-
|
|
167
|
-
- **Command**: `npx @spilno/herald-mcp`
|
|
168
|
-
- **Environment**: `HERALD_API_URL=https://getceda.com`
|
|
182
|
+
Unlike RAG (retrieves content), CEDA retrieves **what worked**.
|
|
169
183
|
|
|
170
|
-
##
|
|
184
|
+
## Links
|
|
171
185
|
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
```
|
|
186
|
+
- **CEDA**: https://getceda.com
|
|
187
|
+
- **Documentation**: https://getceda.com/docs
|
|
188
|
+
- **GitHub**: https://github.com/Spilno-me/ceda
|
|
176
189
|
|
|
177
190
|
## License
|
|
178
191
|
|
|
179
192
|
MIT
|
|
193
|
+
|
|
194
|
+
---
|
|
195
|
+
|
|
196
|
+
*Herald v1.20.0 — Pattern memory for AI agents*
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CEDA-64: Unit tests for Herald MCP Command Extensions
|
|
3
|
+
*
|
|
4
|
+
* Tests the 3 new command extension tools:
|
|
5
|
+
* - herald_session_reflections
|
|
6
|
+
* - herald_pattern_feedback
|
|
7
|
+
* - herald_share_scoped
|
|
8
|
+
*/
|
|
9
|
+
export {};
|
|
10
|
+
//# sourceMappingURL=command-extensions.spec.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-extensions.spec.d.ts","sourceRoot":"","sources":["../src/command-extensions.spec.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG"}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CEDA-64: Unit tests for Herald MCP Command Extensions
|
|
3
|
+
*
|
|
4
|
+
* Tests the 3 new command extension tools:
|
|
5
|
+
* - herald_session_reflections
|
|
6
|
+
* - herald_pattern_feedback
|
|
7
|
+
* - herald_share_scoped
|
|
8
|
+
*/
|
|
9
|
+
import * as fs from 'fs';
|
|
10
|
+
import * as path from 'path';
|
|
11
|
+
describe('CEDA-64: Herald Command Extensions', () => {
|
|
12
|
+
const indexPath = path.join(process.cwd(), 'src', 'index.ts');
|
|
13
|
+
let indexContent;
|
|
14
|
+
beforeAll(() => {
|
|
15
|
+
indexContent = fs.readFileSync(indexPath, 'utf-8');
|
|
16
|
+
});
|
|
17
|
+
describe('Tool definitions', () => {
|
|
18
|
+
it('should have herald_session_reflections tool defined', () => {
|
|
19
|
+
expect(indexContent).toContain('name: "herald_session_reflections"');
|
|
20
|
+
expect(indexContent).toContain('Get summary of reflections captured during this MCP session');
|
|
21
|
+
});
|
|
22
|
+
it('should have herald_pattern_feedback tool defined', () => {
|
|
23
|
+
expect(indexContent).toContain('name: "herald_pattern_feedback"');
|
|
24
|
+
expect(indexContent).toContain('Provide feedback on whether a learned pattern/antipattern helped');
|
|
25
|
+
});
|
|
26
|
+
it('should have herald_share_scoped tool defined', () => {
|
|
27
|
+
expect(indexContent).toContain('name: "herald_share_scoped"');
|
|
28
|
+
expect(indexContent).toContain('Share an insight with other Herald contexts using scope control');
|
|
29
|
+
});
|
|
30
|
+
});
|
|
31
|
+
describe('Tool input schemas', () => {
|
|
32
|
+
it('herald_session_reflections should have no required properties', () => {
|
|
33
|
+
// Check that the tool has empty properties (no required inputs)
|
|
34
|
+
expect(indexContent).toMatch(/herald_session_reflections[\s\S]*?inputSchema[\s\S]*?properties:\s*\{\}/);
|
|
35
|
+
});
|
|
36
|
+
it('herald_pattern_feedback should have pattern_id, pattern_text, and outcome properties', () => {
|
|
37
|
+
expect(indexContent).toMatch(/herald_pattern_feedback[\s\S]*?pattern_id.*ID of the pattern/);
|
|
38
|
+
expect(indexContent).toMatch(/herald_pattern_feedback[\s\S]*?pattern_text.*Alternative.*pattern text to match/);
|
|
39
|
+
expect(indexContent).toMatch(/herald_pattern_feedback[\s\S]*?outcome.*helped.*didnt_help/);
|
|
40
|
+
expect(indexContent).toMatch(/herald_pattern_feedback[\s\S]*?required.*outcome/);
|
|
41
|
+
});
|
|
42
|
+
it('herald_share_scoped should have insight, scope, and topic properties', () => {
|
|
43
|
+
expect(indexContent).toContain('name: "herald_share_scoped"');
|
|
44
|
+
expect(indexContent).toContain('"parent", "siblings", "all"');
|
|
45
|
+
expect(indexContent).toContain('Optional topic category for the insight');
|
|
46
|
+
expect(indexContent).toContain('required: ["insight", "scope"]');
|
|
47
|
+
});
|
|
48
|
+
});
|
|
49
|
+
describe('Tool handlers', () => {
|
|
50
|
+
it('herald_session_reflections handler should call getSessionReflectionsSummary', () => {
|
|
51
|
+
expect(indexContent).toContain('case "herald_session_reflections"');
|
|
52
|
+
expect(indexContent).toMatch(/case "herald_session_reflections"[\s\S]*?getSessionReflectionsSummary/);
|
|
53
|
+
});
|
|
54
|
+
it('herald_pattern_feedback handler should POST to /api/herald/feedback endpoint', () => {
|
|
55
|
+
expect(indexContent).toContain('case "herald_pattern_feedback"');
|
|
56
|
+
expect(indexContent).toMatch(/case "herald_pattern_feedback"[\s\S]*?\/api\/herald\/feedback.*POST/);
|
|
57
|
+
});
|
|
58
|
+
it('herald_share_scoped handler should POST to /api/herald/share endpoint', () => {
|
|
59
|
+
expect(indexContent).toContain('case "herald_share_scoped"');
|
|
60
|
+
expect(indexContent).toMatch(/case "herald_share_scoped"[\s\S]*?\/api\/herald\/share.*POST/);
|
|
61
|
+
});
|
|
62
|
+
});
|
|
63
|
+
describe('Session reflection tracking', () => {
|
|
64
|
+
it('should have SessionReflection interface defined', () => {
|
|
65
|
+
expect(indexContent).toContain('interface SessionReflection');
|
|
66
|
+
expect(indexContent).toMatch(/SessionReflection[\s\S]*?id:\s*string/);
|
|
67
|
+
expect(indexContent).toMatch(/SessionReflection[\s\S]*?session:\s*string/);
|
|
68
|
+
expect(indexContent).toMatch(/SessionReflection[\s\S]*?feeling:\s*"stuck"\s*\|\s*"success"/);
|
|
69
|
+
expect(indexContent).toMatch(/SessionReflection[\s\S]*?insight:\s*string/);
|
|
70
|
+
expect(indexContent).toMatch(/SessionReflection[\s\S]*?method:\s*"direct"\s*\|\s*"simulation"/);
|
|
71
|
+
expect(indexContent).toMatch(/SessionReflection[\s\S]*?timestamp:\s*string/);
|
|
72
|
+
});
|
|
73
|
+
it('should have sessionReflections array defined', () => {
|
|
74
|
+
expect(indexContent).toContain('const sessionReflections: SessionReflection[] = []');
|
|
75
|
+
});
|
|
76
|
+
it('should have addSessionReflection function defined', () => {
|
|
77
|
+
expect(indexContent).toContain('function addSessionReflection');
|
|
78
|
+
});
|
|
79
|
+
it('should have getSessionReflectionsSummary function defined', () => {
|
|
80
|
+
expect(indexContent).toContain('function getSessionReflectionsSummary');
|
|
81
|
+
});
|
|
82
|
+
it('herald_reflect should track reflections locally', () => {
|
|
83
|
+
expect(indexContent).toMatch(/case "herald_reflect"[\s\S]*?addSessionReflection/);
|
|
84
|
+
});
|
|
85
|
+
it('herald_simulate should track reflections locally', () => {
|
|
86
|
+
expect(indexContent).toMatch(/case "herald_simulate"[\s\S]*?addSessionReflection/);
|
|
87
|
+
});
|
|
88
|
+
});
|
|
89
|
+
describe('Version', () => {
|
|
90
|
+
it('should be version 1.19.0 in index.ts', () => {
|
|
91
|
+
expect(indexContent).toContain('const VERSION = "1.19.0"');
|
|
92
|
+
});
|
|
93
|
+
it('should have matching version in package.json', () => {
|
|
94
|
+
const packagePath = path.join(process.cwd(), 'package.json');
|
|
95
|
+
const packageJson = JSON.parse(fs.readFileSync(packagePath, 'utf-8'));
|
|
96
|
+
expect(packageJson.version).toBe('1.19.0');
|
|
97
|
+
});
|
|
98
|
+
});
|
|
99
|
+
describe('CEDA-64 comment markers', () => {
|
|
100
|
+
it('should have CEDA-64 comment in tool definitions', () => {
|
|
101
|
+
expect(indexContent).toContain('// CEDA-64: Herald Command Extensions');
|
|
102
|
+
});
|
|
103
|
+
it('should have CEDA-64 comment in session reflection tracking', () => {
|
|
104
|
+
expect(indexContent).toContain('// CEDA-64: Session reflection tracking');
|
|
105
|
+
});
|
|
106
|
+
it('should have CEDA-64 comment in tool handlers', () => {
|
|
107
|
+
expect(indexContent).toContain('// CEDA-64: Herald Command Extensions - Handlers');
|
|
108
|
+
});
|
|
109
|
+
it('should have CEDA-64 comment in herald_reflect handler', () => {
|
|
110
|
+
expect(indexContent).toMatch(/case "herald_reflect"[\s\S]*?CEDA-64: Track reflection locally/);
|
|
111
|
+
});
|
|
112
|
+
it('should have CEDA-64 comment in herald_simulate handler', () => {
|
|
113
|
+
expect(indexContent).toMatch(/case "herald_simulate"[\s\S]*?CEDA-64: Track reflection locally/);
|
|
114
|
+
});
|
|
115
|
+
});
|
|
116
|
+
});
|
|
117
|
+
//# sourceMappingURL=command-extensions.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-extensions.spec.js","sourceRoot":"","sources":["../src/command-extensions.spec.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -29,7 +29,7 @@ const HERALD_VAULT = process.env.HERALD_VAULT || "";
|
|
|
29
29
|
const AEGIS_OFFSPRING_PATH = process.env.AEGIS_OFFSPRING_PATH || join(homedir(), "Documents", "aegis_ceda", "_offspring");
|
|
30
30
|
// Cloud mode: Use CEDA API for offspring communication instead of local files
|
|
31
31
|
const OFFSPRING_CLOUD_MODE = process.env.HERALD_OFFSPRING_CLOUD === "true";
|
|
32
|
-
const VERSION = "1.
|
|
32
|
+
const VERSION = "1.20.0";
|
|
33
33
|
// Self-routing description - teaches Claude when to call Herald
|
|
34
34
|
const HERALD_DESCRIPTION = `AI-native pattern learning for CEDA.
|
|
35
35
|
|
|
@@ -57,6 +57,27 @@ function getSessionFile() {
|
|
|
57
57
|
function getBufferFile() {
|
|
58
58
|
return join(getHeraldDir(), "insight_buffer.json");
|
|
59
59
|
}
|
|
60
|
+
// In-memory session reflections array (clears on restart)
|
|
61
|
+
const sessionReflections = [];
|
|
62
|
+
function addSessionReflection(reflection) {
|
|
63
|
+
const newReflection = {
|
|
64
|
+
...reflection,
|
|
65
|
+
id: `sr-${Date.now()}-${Math.random().toString(36).substring(2, 9)}`,
|
|
66
|
+
timestamp: new Date().toISOString(),
|
|
67
|
+
};
|
|
68
|
+
sessionReflections.push(newReflection);
|
|
69
|
+
return newReflection;
|
|
70
|
+
}
|
|
71
|
+
function getSessionReflectionsSummary() {
|
|
72
|
+
const patterns = sessionReflections.filter(r => r.feeling === "success").length;
|
|
73
|
+
const antipatterns = sessionReflections.filter(r => r.feeling === "stuck").length;
|
|
74
|
+
return {
|
|
75
|
+
count: sessionReflections.length,
|
|
76
|
+
patterns,
|
|
77
|
+
antipatterns,
|
|
78
|
+
reflections: sessionReflections,
|
|
79
|
+
};
|
|
80
|
+
}
|
|
60
81
|
function bufferInsight(payload) {
|
|
61
82
|
ensureHeraldDir();
|
|
62
83
|
const bufferFile = getBufferFile();
|
|
@@ -785,7 +806,11 @@ Example flow:
|
|
|
785
806
|
1. User: "That was smooth, capture it"
|
|
786
807
|
2. You: "What specifically worked here?"
|
|
787
808
|
3. User: "The ASCII visualization approach"
|
|
788
|
-
4. You call herald_reflect with insight: "ASCII visualization approach"
|
|
809
|
+
4. You call herald_reflect with insight: "ASCII visualization approach"
|
|
810
|
+
|
|
811
|
+
DRY RUN MODE (CEDA-65):
|
|
812
|
+
Set dry_run=true to preview what would be captured without storing.
|
|
813
|
+
Shows sanitization results and data classification.`,
|
|
789
814
|
inputSchema: {
|
|
790
815
|
type: "object",
|
|
791
816
|
properties: {
|
|
@@ -802,6 +827,10 @@ Example flow:
|
|
|
802
827
|
type: "string",
|
|
803
828
|
description: "What specifically worked or didn't - MUST ASK USER, do not guess"
|
|
804
829
|
},
|
|
830
|
+
dry_run: {
|
|
831
|
+
type: "boolean",
|
|
832
|
+
description: "If true, preview what would be captured without storing (CEDA-65)"
|
|
833
|
+
},
|
|
805
834
|
},
|
|
806
835
|
required: ["session", "feeling", "insight"],
|
|
807
836
|
},
|
|
@@ -874,6 +903,147 @@ CEDA learns which method works better for which contexts (meta-learning).`,
|
|
|
874
903
|
required: ["session", "feeling", "insight"],
|
|
875
904
|
},
|
|
876
905
|
},
|
|
906
|
+
// CEDA-64: Herald Command Extensions
|
|
907
|
+
{
|
|
908
|
+
name: "herald_session_reflections",
|
|
909
|
+
description: `Get summary of reflections captured during this MCP session.
|
|
910
|
+
|
|
911
|
+
Returns count of patterns and antipatterns captured since Herald started.
|
|
912
|
+
This is LOCAL tracking - clears when Herald restarts.
|
|
913
|
+
|
|
914
|
+
Use this to:
|
|
915
|
+
1. Review what's been captured in the current session
|
|
916
|
+
2. Verify reflections were recorded
|
|
917
|
+
3. Get a quick summary before ending a session`,
|
|
918
|
+
inputSchema: {
|
|
919
|
+
type: "object",
|
|
920
|
+
properties: {},
|
|
921
|
+
},
|
|
922
|
+
},
|
|
923
|
+
{
|
|
924
|
+
name: "herald_pattern_feedback",
|
|
925
|
+
description: `Provide feedback on whether a learned pattern/antipattern helped.
|
|
926
|
+
|
|
927
|
+
Call this after applying a pattern from herald_patterns to track effectiveness.
|
|
928
|
+
This feeds the meta-learning loop - CEDA learns which patterns actually help.
|
|
929
|
+
|
|
930
|
+
Parameters:
|
|
931
|
+
- pattern_id: ID of the pattern/reflection (from herald_patterns output)
|
|
932
|
+
- pattern_text: Alternative to ID - the pattern text to match
|
|
933
|
+
- outcome: "helped" or "didnt_help"
|
|
934
|
+
|
|
935
|
+
Example: After applying an antipattern warning and it prevented a mistake,
|
|
936
|
+
call with outcome="helped" to reinforce that pattern.`,
|
|
937
|
+
inputSchema: {
|
|
938
|
+
type: "object",
|
|
939
|
+
properties: {
|
|
940
|
+
pattern_id: {
|
|
941
|
+
type: "string",
|
|
942
|
+
description: "ID of the pattern/reflection to provide feedback on"
|
|
943
|
+
},
|
|
944
|
+
pattern_text: {
|
|
945
|
+
type: "string",
|
|
946
|
+
description: "Alternative: pattern text to match (if ID not available)"
|
|
947
|
+
},
|
|
948
|
+
outcome: {
|
|
949
|
+
type: "string",
|
|
950
|
+
enum: ["helped", "didnt_help"],
|
|
951
|
+
description: "Whether applying this pattern helped or not"
|
|
952
|
+
},
|
|
953
|
+
},
|
|
954
|
+
required: ["outcome"],
|
|
955
|
+
},
|
|
956
|
+
},
|
|
957
|
+
{
|
|
958
|
+
name: "herald_share_scoped",
|
|
959
|
+
description: `Share an insight with other Herald contexts using scope control.
|
|
960
|
+
|
|
961
|
+
Scopes:
|
|
962
|
+
- "parent": Share with parent project/company (escalate learning)
|
|
963
|
+
- "siblings": Share with sibling projects in same company
|
|
964
|
+
- "all": Share globally across all contexts
|
|
965
|
+
|
|
966
|
+
Use this to propagate valuable patterns beyond the current context.
|
|
967
|
+
Example: A debugging pattern that worked well could be shared with siblings.`,
|
|
968
|
+
inputSchema: {
|
|
969
|
+
type: "object",
|
|
970
|
+
properties: {
|
|
971
|
+
insight: {
|
|
972
|
+
type: "string",
|
|
973
|
+
description: "The insight/pattern to share"
|
|
974
|
+
},
|
|
975
|
+
scope: {
|
|
976
|
+
type: "string",
|
|
977
|
+
enum: ["parent", "siblings", "all"],
|
|
978
|
+
description: "Who to share with: parent, siblings, or all"
|
|
979
|
+
},
|
|
980
|
+
topic: {
|
|
981
|
+
type: "string",
|
|
982
|
+
description: "Optional topic category for the insight"
|
|
983
|
+
},
|
|
984
|
+
},
|
|
985
|
+
required: ["insight", "scope"],
|
|
986
|
+
},
|
|
987
|
+
},
|
|
988
|
+
// CEDA-65: GDPR Compliance Tools
|
|
989
|
+
{
|
|
990
|
+
name: "herald_forget",
|
|
991
|
+
description: `GDPR Article 17 - Right to Erasure ("Right to be Forgotten").
|
|
992
|
+
|
|
993
|
+
Delete learned patterns and reflections from CEDA storage.
|
|
994
|
+
|
|
995
|
+
Use this when:
|
|
996
|
+
- User requests deletion of their data
|
|
997
|
+
- Compliance requires data removal
|
|
998
|
+
- Cleaning up test/invalid patterns
|
|
999
|
+
|
|
1000
|
+
Parameters:
|
|
1001
|
+
- pattern_id: Delete a specific pattern by ID
|
|
1002
|
+
- session_id: Delete all patterns from a session
|
|
1003
|
+
- all: Delete ALL patterns for current context (company/project/user)
|
|
1004
|
+
|
|
1005
|
+
WARNING: This action is irreversible. Data will be permanently deleted.`,
|
|
1006
|
+
inputSchema: {
|
|
1007
|
+
type: "object",
|
|
1008
|
+
properties: {
|
|
1009
|
+
pattern_id: {
|
|
1010
|
+
type: "string",
|
|
1011
|
+
description: "Specific pattern ID to delete"
|
|
1012
|
+
},
|
|
1013
|
+
session_id: {
|
|
1014
|
+
type: "string",
|
|
1015
|
+
description: "Delete all patterns from this session"
|
|
1016
|
+
},
|
|
1017
|
+
all: {
|
|
1018
|
+
type: "boolean",
|
|
1019
|
+
description: "Delete ALL patterns for current context (use with caution)"
|
|
1020
|
+
},
|
|
1021
|
+
},
|
|
1022
|
+
},
|
|
1023
|
+
},
|
|
1024
|
+
{
|
|
1025
|
+
name: "herald_export",
|
|
1026
|
+
description: `GDPR Article 20 - Right to Data Portability.
|
|
1027
|
+
|
|
1028
|
+
Export all learned patterns and reflections in a portable format.
|
|
1029
|
+
|
|
1030
|
+
Use this when:
|
|
1031
|
+
- User requests a copy of their data
|
|
1032
|
+
- Migrating data between systems
|
|
1033
|
+
- Compliance audit requires data export
|
|
1034
|
+
|
|
1035
|
+
Returns all patterns for the current context (company/project/user) in the specified format.`,
|
|
1036
|
+
inputSchema: {
|
|
1037
|
+
type: "object",
|
|
1038
|
+
properties: {
|
|
1039
|
+
format: {
|
|
1040
|
+
type: "string",
|
|
1041
|
+
enum: ["json", "csv"],
|
|
1042
|
+
description: "Export format: json (default) or csv"
|
|
1043
|
+
},
|
|
1044
|
+
},
|
|
1045
|
+
},
|
|
1046
|
+
},
|
|
877
1047
|
];
|
|
878
1048
|
server.setRequestHandler(ListToolsRequestSchema, async () => {
|
|
879
1049
|
return { tools };
|
|
@@ -1083,12 +1253,13 @@ Herald will:
|
|
|
1083
1253
|
user: HERALD_USER,
|
|
1084
1254
|
};
|
|
1085
1255
|
// Cloud-first: try to POST to CEDA, buffer locally on failure
|
|
1256
|
+
// Map Herald's vault terminology to CEDA's context terminology
|
|
1086
1257
|
try {
|
|
1087
1258
|
const result = await callCedaAPI("/api/herald/insight", "POST", {
|
|
1088
1259
|
insight,
|
|
1089
|
-
targetVault,
|
|
1260
|
+
toContext: targetVault,
|
|
1090
1261
|
topic,
|
|
1091
|
-
|
|
1262
|
+
fromContext: HERALD_VAULT,
|
|
1092
1263
|
});
|
|
1093
1264
|
// Check if API returned an error
|
|
1094
1265
|
if (result.error) {
|
|
@@ -1279,6 +1450,53 @@ Herald will:
|
|
|
1279
1450
|
const session = args?.session;
|
|
1280
1451
|
const feeling = args?.feeling;
|
|
1281
1452
|
const insight = args?.insight;
|
|
1453
|
+
const dryRun = args?.dry_run;
|
|
1454
|
+
// CEDA-65: Dry-run mode - preview what would be captured without storing
|
|
1455
|
+
if (dryRun) {
|
|
1456
|
+
try {
|
|
1457
|
+
const result = await callCedaAPI("/api/herald/reflect/dry-run", "POST", {
|
|
1458
|
+
session,
|
|
1459
|
+
feeling,
|
|
1460
|
+
insight,
|
|
1461
|
+
company: HERALD_COMPANY,
|
|
1462
|
+
project: HERALD_PROJECT,
|
|
1463
|
+
user: HERALD_USER,
|
|
1464
|
+
});
|
|
1465
|
+
return {
|
|
1466
|
+
content: [{
|
|
1467
|
+
type: "text",
|
|
1468
|
+
text: JSON.stringify({
|
|
1469
|
+
success: true,
|
|
1470
|
+
mode: "dry-run",
|
|
1471
|
+
message: "Preview of what would be captured (no data stored)",
|
|
1472
|
+
feeling,
|
|
1473
|
+
insight,
|
|
1474
|
+
...result,
|
|
1475
|
+
}, null, 2)
|
|
1476
|
+
}],
|
|
1477
|
+
};
|
|
1478
|
+
}
|
|
1479
|
+
catch (error) {
|
|
1480
|
+
return {
|
|
1481
|
+
content: [{
|
|
1482
|
+
type: "text",
|
|
1483
|
+
text: JSON.stringify({
|
|
1484
|
+
success: false,
|
|
1485
|
+
mode: "dry-run",
|
|
1486
|
+
error: `Dry-run failed: ${error}`,
|
|
1487
|
+
hint: "CEDA may be unavailable. Try again later.",
|
|
1488
|
+
}, null, 2)
|
|
1489
|
+
}],
|
|
1490
|
+
};
|
|
1491
|
+
}
|
|
1492
|
+
}
|
|
1493
|
+
// CEDA-64: Track reflection locally for session summary
|
|
1494
|
+
addSessionReflection({
|
|
1495
|
+
session,
|
|
1496
|
+
feeling,
|
|
1497
|
+
insight,
|
|
1498
|
+
method: "direct",
|
|
1499
|
+
});
|
|
1282
1500
|
// Call CEDA's reflect endpoint with user's insight
|
|
1283
1501
|
try {
|
|
1284
1502
|
const result = await callCedaAPI("/api/herald/reflect", "POST", {
|
|
@@ -1425,6 +1643,13 @@ Herald will:
|
|
|
1425
1643
|
const session = args?.session;
|
|
1426
1644
|
const feeling = args?.feeling;
|
|
1427
1645
|
const insight = args?.insight;
|
|
1646
|
+
// CEDA-64: Track reflection locally for session summary
|
|
1647
|
+
addSessionReflection({
|
|
1648
|
+
session,
|
|
1649
|
+
feeling,
|
|
1650
|
+
insight,
|
|
1651
|
+
method: "simulation",
|
|
1652
|
+
});
|
|
1428
1653
|
// Check for AI API key
|
|
1429
1654
|
const aiClient = getAIClient();
|
|
1430
1655
|
if (!aiClient) {
|
|
@@ -1527,6 +1752,268 @@ Herald will:
|
|
|
1527
1752
|
};
|
|
1528
1753
|
}
|
|
1529
1754
|
}
|
|
1755
|
+
// CEDA-64: Herald Command Extensions - Handlers
|
|
1756
|
+
case "herald_session_reflections": {
|
|
1757
|
+
const summary = getSessionReflectionsSummary();
|
|
1758
|
+
let message = `## Session Reflections Summary\n\n`;
|
|
1759
|
+
message += `**Total captured:** ${summary.count}\n`;
|
|
1760
|
+
message += `- Patterns (success): ${summary.patterns}\n`;
|
|
1761
|
+
message += `- Antipatterns (stuck): ${summary.antipatterns}\n\n`;
|
|
1762
|
+
if (summary.reflections.length > 0) {
|
|
1763
|
+
message += `### Captured This Session:\n`;
|
|
1764
|
+
summary.reflections.forEach((r, i) => {
|
|
1765
|
+
const icon = r.feeling === "success" ? "+" : "-";
|
|
1766
|
+
message += `${i + 1}. [${icon}] ${r.insight} (${r.method}, ${r.timestamp})\n`;
|
|
1767
|
+
});
|
|
1768
|
+
}
|
|
1769
|
+
else {
|
|
1770
|
+
message += `No reflections captured yet. Use herald_reflect or herald_simulate to capture patterns.`;
|
|
1771
|
+
}
|
|
1772
|
+
return {
|
|
1773
|
+
content: [{
|
|
1774
|
+
type: "text",
|
|
1775
|
+
text: message,
|
|
1776
|
+
}],
|
|
1777
|
+
};
|
|
1778
|
+
}
|
|
1779
|
+
case "herald_pattern_feedback": {
|
|
1780
|
+
const patternId = args?.pattern_id;
|
|
1781
|
+
const patternText = args?.pattern_text;
|
|
1782
|
+
const outcome = args?.outcome;
|
|
1783
|
+
if (!patternId && !patternText) {
|
|
1784
|
+
return {
|
|
1785
|
+
content: [{
|
|
1786
|
+
type: "text",
|
|
1787
|
+
text: JSON.stringify({
|
|
1788
|
+
success: false,
|
|
1789
|
+
error: "Either pattern_id or pattern_text is required",
|
|
1790
|
+
}, null, 2)
|
|
1791
|
+
}],
|
|
1792
|
+
isError: true,
|
|
1793
|
+
};
|
|
1794
|
+
}
|
|
1795
|
+
try {
|
|
1796
|
+
const result = await callCedaAPI("/api/herald/feedback", "POST", {
|
|
1797
|
+
patternId,
|
|
1798
|
+
patternText,
|
|
1799
|
+
outcome,
|
|
1800
|
+
helped: outcome === "helped",
|
|
1801
|
+
company: HERALD_COMPANY,
|
|
1802
|
+
project: HERALD_PROJECT,
|
|
1803
|
+
user: HERALD_USER,
|
|
1804
|
+
});
|
|
1805
|
+
if (result.error) {
|
|
1806
|
+
return {
|
|
1807
|
+
content: [{
|
|
1808
|
+
type: "text",
|
|
1809
|
+
text: JSON.stringify({
|
|
1810
|
+
success: false,
|
|
1811
|
+
error: result.error,
|
|
1812
|
+
hint: "Pattern feedback could not be recorded. The pattern may not exist.",
|
|
1813
|
+
}, null, 2)
|
|
1814
|
+
}],
|
|
1815
|
+
};
|
|
1816
|
+
}
|
|
1817
|
+
return {
|
|
1818
|
+
content: [{
|
|
1819
|
+
type: "text",
|
|
1820
|
+
text: JSON.stringify({
|
|
1821
|
+
success: true,
|
|
1822
|
+
message: outcome === "helped"
|
|
1823
|
+
? "Feedback recorded: pattern helped! This reinforces the pattern."
|
|
1824
|
+
: "Feedback recorded: pattern didn't help. This will be factored into future recommendations.",
|
|
1825
|
+
...result,
|
|
1826
|
+
}, null, 2)
|
|
1827
|
+
}],
|
|
1828
|
+
};
|
|
1829
|
+
}
|
|
1830
|
+
catch (error) {
|
|
1831
|
+
return {
|
|
1832
|
+
content: [{
|
|
1833
|
+
type: "text",
|
|
1834
|
+
text: JSON.stringify({
|
|
1835
|
+
success: false,
|
|
1836
|
+
error: `Failed to record feedback: ${error}`,
|
|
1837
|
+
hint: "CEDA may be unavailable. Try again later.",
|
|
1838
|
+
}, null, 2)
|
|
1839
|
+
}],
|
|
1840
|
+
};
|
|
1841
|
+
}
|
|
1842
|
+
}
|
|
1843
|
+
case "herald_share_scoped": {
|
|
1844
|
+
const insight = args?.insight;
|
|
1845
|
+
const scope = args?.scope;
|
|
1846
|
+
const topic = args?.topic;
|
|
1847
|
+
try {
|
|
1848
|
+
const result = await callCedaAPI("/api/herald/share", "POST", {
|
|
1849
|
+
insight,
|
|
1850
|
+
scope,
|
|
1851
|
+
topic,
|
|
1852
|
+
sourceCompany: HERALD_COMPANY,
|
|
1853
|
+
sourceProject: HERALD_PROJECT,
|
|
1854
|
+
sourceUser: HERALD_USER,
|
|
1855
|
+
sourceVault: HERALD_VAULT || undefined,
|
|
1856
|
+
});
|
|
1857
|
+
if (result.error) {
|
|
1858
|
+
return {
|
|
1859
|
+
content: [{
|
|
1860
|
+
type: "text",
|
|
1861
|
+
text: JSON.stringify({
|
|
1862
|
+
success: false,
|
|
1863
|
+
error: result.error,
|
|
1864
|
+
hint: "Insight could not be shared. Check scope and try again.",
|
|
1865
|
+
}, null, 2)
|
|
1866
|
+
}],
|
|
1867
|
+
};
|
|
1868
|
+
}
|
|
1869
|
+
const scopeDescription = {
|
|
1870
|
+
parent: "parent project/company",
|
|
1871
|
+
siblings: "sibling projects",
|
|
1872
|
+
all: "all contexts globally",
|
|
1873
|
+
};
|
|
1874
|
+
return {
|
|
1875
|
+
content: [{
|
|
1876
|
+
type: "text",
|
|
1877
|
+
text: JSON.stringify({
|
|
1878
|
+
success: true,
|
|
1879
|
+
message: `Insight shared with ${scopeDescription[scope]}`,
|
|
1880
|
+
scope,
|
|
1881
|
+
topic: topic || "general",
|
|
1882
|
+
...result,
|
|
1883
|
+
}, null, 2)
|
|
1884
|
+
}],
|
|
1885
|
+
};
|
|
1886
|
+
}
|
|
1887
|
+
catch (error) {
|
|
1888
|
+
return {
|
|
1889
|
+
content: [{
|
|
1890
|
+
type: "text",
|
|
1891
|
+
text: JSON.stringify({
|
|
1892
|
+
success: false,
|
|
1893
|
+
error: `Failed to share insight: ${error}`,
|
|
1894
|
+
hint: "CEDA may be unavailable. Try again later.",
|
|
1895
|
+
}, null, 2)
|
|
1896
|
+
}],
|
|
1897
|
+
};
|
|
1898
|
+
}
|
|
1899
|
+
}
|
|
1900
|
+
// CEDA-65: GDPR Compliance Tools - Handlers
|
|
1901
|
+
case "herald_forget": {
|
|
1902
|
+
const patternId = args?.pattern_id;
|
|
1903
|
+
const sessionId = args?.session_id;
|
|
1904
|
+
const deleteAll = args?.all;
|
|
1905
|
+
if (!patternId && !sessionId && !deleteAll) {
|
|
1906
|
+
return {
|
|
1907
|
+
content: [{
|
|
1908
|
+
type: "text",
|
|
1909
|
+
text: JSON.stringify({
|
|
1910
|
+
success: false,
|
|
1911
|
+
error: "At least one parameter required: pattern_id, session_id, or all",
|
|
1912
|
+
hint: "Specify what data to delete",
|
|
1913
|
+
}, null, 2)
|
|
1914
|
+
}],
|
|
1915
|
+
isError: true,
|
|
1916
|
+
};
|
|
1917
|
+
}
|
|
1918
|
+
try {
|
|
1919
|
+
const result = await callCedaAPI("/api/herald/forget", "DELETE", {
|
|
1920
|
+
patternId,
|
|
1921
|
+
sessionId,
|
|
1922
|
+
all: deleteAll,
|
|
1923
|
+
company: HERALD_COMPANY,
|
|
1924
|
+
project: HERALD_PROJECT,
|
|
1925
|
+
user: HERALD_USER,
|
|
1926
|
+
});
|
|
1927
|
+
if (result.error) {
|
|
1928
|
+
return {
|
|
1929
|
+
content: [{
|
|
1930
|
+
type: "text",
|
|
1931
|
+
text: JSON.stringify({
|
|
1932
|
+
success: false,
|
|
1933
|
+
error: result.error,
|
|
1934
|
+
hint: "Data deletion failed. Check parameters and try again.",
|
|
1935
|
+
}, null, 2)
|
|
1936
|
+
}],
|
|
1937
|
+
};
|
|
1938
|
+
}
|
|
1939
|
+
let message = "Data deleted successfully (GDPR Art. 17)";
|
|
1940
|
+
if (patternId) {
|
|
1941
|
+
message = `Pattern ${patternId} deleted`;
|
|
1942
|
+
}
|
|
1943
|
+
else if (sessionId) {
|
|
1944
|
+
message = `All patterns from session ${sessionId} deleted`;
|
|
1945
|
+
}
|
|
1946
|
+
else if (deleteAll) {
|
|
1947
|
+
message = `All patterns for ${HERALD_COMPANY}/${HERALD_PROJECT}/${HERALD_USER} deleted`;
|
|
1948
|
+
}
|
|
1949
|
+
return {
|
|
1950
|
+
content: [{
|
|
1951
|
+
type: "text",
|
|
1952
|
+
text: JSON.stringify({
|
|
1953
|
+
success: true,
|
|
1954
|
+
message,
|
|
1955
|
+
gdprArticle: "Article 17 - Right to Erasure",
|
|
1956
|
+
...result,
|
|
1957
|
+
}, null, 2)
|
|
1958
|
+
}],
|
|
1959
|
+
};
|
|
1960
|
+
}
|
|
1961
|
+
catch (error) {
|
|
1962
|
+
return {
|
|
1963
|
+
content: [{
|
|
1964
|
+
type: "text",
|
|
1965
|
+
text: JSON.stringify({
|
|
1966
|
+
success: false,
|
|
1967
|
+
error: `Failed to delete data: ${error}`,
|
|
1968
|
+
hint: "CEDA may be unavailable. Try again later.",
|
|
1969
|
+
}, null, 2)
|
|
1970
|
+
}],
|
|
1971
|
+
};
|
|
1972
|
+
}
|
|
1973
|
+
}
|
|
1974
|
+
case "herald_export": {
|
|
1975
|
+
const format = args?.format || "json";
|
|
1976
|
+
try {
|
|
1977
|
+
const result = await callCedaAPI(`/api/herald/export?company=${HERALD_COMPANY}&project=${HERALD_PROJECT}&user=${HERALD_USER}&format=${format}`);
|
|
1978
|
+
if (result.error) {
|
|
1979
|
+
return {
|
|
1980
|
+
content: [{
|
|
1981
|
+
type: "text",
|
|
1982
|
+
text: JSON.stringify({
|
|
1983
|
+
success: false,
|
|
1984
|
+
error: result.error,
|
|
1985
|
+
hint: "Data export failed. Try again later.",
|
|
1986
|
+
}, null, 2)
|
|
1987
|
+
}],
|
|
1988
|
+
};
|
|
1989
|
+
}
|
|
1990
|
+
return {
|
|
1991
|
+
content: [{
|
|
1992
|
+
type: "text",
|
|
1993
|
+
text: JSON.stringify({
|
|
1994
|
+
success: true,
|
|
1995
|
+
message: `Data exported in ${format.toUpperCase()} format (GDPR Art. 20)`,
|
|
1996
|
+
gdprArticle: "Article 20 - Right to Data Portability",
|
|
1997
|
+
format,
|
|
1998
|
+
context: `${HERALD_COMPANY}/${HERALD_PROJECT}/${HERALD_USER}`,
|
|
1999
|
+
...result,
|
|
2000
|
+
}, null, 2)
|
|
2001
|
+
}],
|
|
2002
|
+
};
|
|
2003
|
+
}
|
|
2004
|
+
catch (error) {
|
|
2005
|
+
return {
|
|
2006
|
+
content: [{
|
|
2007
|
+
type: "text",
|
|
2008
|
+
text: JSON.stringify({
|
|
2009
|
+
success: false,
|
|
2010
|
+
error: `Failed to export data: ${error}`,
|
|
2011
|
+
hint: "CEDA may be unavailable. Try again later.",
|
|
2012
|
+
}, null, 2)
|
|
2013
|
+
}],
|
|
2014
|
+
};
|
|
2015
|
+
}
|
|
2016
|
+
}
|
|
1530
2017
|
default:
|
|
1531
2018
|
return {
|
|
1532
2019
|
content: [{ type: "text", text: `Unknown tool: ${name}` }],
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;GAMG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EACL,qBAAqB,EACrB,sBAAsB,GAEvB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AACpF,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,KAAK,QAAQ,MAAM,UAAU,CAAC;AAErC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,6DAA6D;AAC7D,6EAA6E;AAC7E,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,qBAAqB,CAAC;AACjG,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;AACpD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;AAClD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;AAElD,uBAAuB;AACvB,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,SAAS,CAAC;AAC/D,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,SAAS,CAAC;AAC/D,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,SAAS,CAAC;AAEzD,4CAA4C;AAC5C,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC;AACpD,MAAM,oBAAoB,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;AAE1H,8EAA8E;AAC9E,MAAM,oBAAoB,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,KAAK,MAAM,CAAC;AAE3E,MAAM,OAAO,GAAG,QAAQ,CAAC;AAEzB,gEAAgE;AAChE,MAAM,kBAAkB,GAAG;;;;;;;;;+DASoC,CAAC;AAEhE,0EAA0E;AAC1E,MAAM,oBAAoB,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,OAAO,CAAC;AAEtE,0DAA0D;AAC1D,kDAAkD;AAClD,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,EAAE,CAAC;AAC9D,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC;AAExD,+CAA+C;AAC/C,SAAS,YAAY;IACnB,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;AACjF,CAAC;AAED,SAAS,cAAc;IACrB,OAAO,IAAI,CAAC,YAAY,EAAE,EAAE,SAAS,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,aAAa;IACpB,OAAO,IAAI,CAAC,YAAY,EAAE,EAAE,qBAAqB,CAAC,CAAC;AACrD,CAAC;AAaD,SAAS,aAAa,CAAC,OAA4C;IACjE,eAAe,EAAE,CAAC;IAClB,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,IAAI,MAAM,GAAsB,EAAE,CAAC;IACnC,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3B,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;QACzD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,iDAAiD,KAAK,EAAE,CAAC,CAAC;YACxE,OAAO,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;YACrD,MAAM,GAAG,EAAE,CAAC;QACd,CAAC;IACH,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,OAAO,EAAE,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAClE,IAAI,CAAC;QACH,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC7D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,oCAAoC,KAAK,EAAE,CAAC,CAAC;QAC3D,OAAO,CAAC,KAAK,CAAC,iEAAiE,CAAC,CAAC;IACnF,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB;IAC1B,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3B,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;QACvD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,8BAA8B,KAAK,EAAE,CAAC,CAAC;YACrD,OAAO,CAAC,KAAK,CAAC,2DAA2D,CAAC,CAAC;YAC3E,IAAI,CAAC;gBACH,UAAU,CAAC,UAAU,CAAC,CAAC;YACzB,CAAC;YAAC,MAAM,CAAC;gBACP,wBAAwB;YAC1B,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,WAAW;IAClB,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3B,UAAU,CAAC,UAAU,CAAC,CAAC;IACzB,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,MAAyB;IACnD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,WAAW,EAAE,CAAC;IAChB,CAAC;SAAM,CAAC;QACN,eAAe,EAAE,CAAC;QAClB,IAAI,CAAC;YACH,aAAa,CAAC,aAAa,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAClE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,4CAA4C,KAAK,EAAE,CAAC,CAAC;YACnE,OAAO,CAAC,KAAK,CAAC,YAAY,MAAM,CAAC,MAAM,yBAAyB,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,eAAe;IACtB,MAAM,GAAG,GAAG,YAAY,EAAE,CAAC;IAC3B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACtC,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,SAAiB;IACpC,eAAe,EAAE,CAAC;IAClB,aAAa,CAAC,cAAc,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,WAAW;IAClB,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC5B,OAAO,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;IACnD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,YAAY;IACnB,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC5B,UAAU,CAAC,WAAW,CAAC,CAAC;IAC1B,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB;IACvB,OAAO,GAAG,cAAc,IAAI,cAAc,IAAI,WAAW,EAAE,CAAC;AAC9D,CAAC;AAED,MAAM,oBAAoB,GAAG;;;;;;;;;;;;;;uEAc0C,CAAC;AAOxE,KAAK,UAAU,UAAU,CAAC,YAAoB,EAAE,QAAmB;IACjE,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,OAAO,2FAA2F,CAAC;IACrG,CAAC;IAED,MAAM,iBAAiB,GAAG,QAAQ;SAC/B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC;SAChC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAEpD,MAAM,aAAa,GAAG,QAAQ;SAC3B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC;SAChC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;SACnB,IAAI,CAAC,MAAM,CAAC,CAAC;IAEhB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,uCAAuC,EAAE;QACpE,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,WAAW,EAAE,iBAAiB;YAC9B,mBAAmB,EAAE,YAAY;SAClC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACnB,KAAK,EAAE,0BAA0B;YACjC,UAAU,EAAE,IAAI;YAChB,MAAM,EAAE,YAAY,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;YACpE,QAAQ,EAAE,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;SAClG,CAAC;KACH,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACpC,OAAO,iBAAiB,KAAK,EAAE,CAAC;IAClC,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAA2C,CAAC;IAC5E,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,yBAAyB,CAAC;AAC5D,CAAC;AAkBD,SAAS,WAAW;IAClB,IAAI,iBAAiB,EAAE,CAAC;QACtB,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,EAAE,iBAAiB,EAAE,CAAC;IAC3D,CAAC;IACD,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,EAAE,cAAc,EAAE,CAAC;IACrD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,qBAAqB,CAAC,OAAe,EAAE,OAAe,EAAE,OAAe;IAC9E,OAAO;;mBAEU,OAAO;gBACV,OAAO;gBACP,OAAO;;;;;;;YAOX,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;;;;;;;;;uFAS4B,CAAC;AACxF,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,MAAgB,EAAE,MAAc;IACjE,IAAI,MAAM,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;QACpC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,uCAAuC,EAAE;YACpE,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,WAAW,EAAE,MAAM,CAAC,GAAG;gBACvB,mBAAmB,EAAE,YAAY;aAClC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,KAAK,EAAE,yBAAyB,EAAG,6BAA6B;gBAChE,UAAU,EAAE,GAAG;gBACf,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;aAC9C,CAAC;SACH,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,wBAAwB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAC7D,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAA2C,CAAC;QAC5E,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,IAAI,CAAC;QAC3C,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAqB,CAAC;IAC9C,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACjC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,4CAA4C,EAAE;YACzE,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,eAAe,EAAE,UAAU,MAAM,CAAC,GAAG,EAAE;aACxC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,KAAK,EAAE,aAAa,EAAG,6BAA6B;gBACpD,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;gBAC7C,eAAe,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE;aACzC,CAAC;SACH,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,qBAAqB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAC1D,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAA0D,CAAC;QAC3F,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,IAAI,IAAI,CAAC;QACvD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAqB,CAAC;IAC9C,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,wBAAwB,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC7D,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,SAAiB,EAAE,mBAA8B;IAClF,MAAM,SAAS,GAAG,WAAW,EAAE,CAAC;IAEhC,MAAM,qBAAqB,GAAG;;;;;;;;mBAQb,SAAS,IAAI,MAAM,EAAE,CAAC;IAEvC,MAAM,cAAc,GAAG,MAAM,UAAU,CAAC,qBAAqB,EAAE;QAC7D,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE;KACrC,CAAC,CAAC;IAEH,IAAI,UAAU,GAAmC,IAAI,CAAC;IACtD,IAAI,MAAM,GAAG,MAAM,CAAC;IAEpB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAsC,CAAC;QAC/E,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QACvB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAE3B,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,UAAU,GAAG,MAAM,WAAW,CAAC,cAAc,EAAE,MAAM,EAAE;gBACrD,KAAK;gBACL,MAAM,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,EAAE;aACvD,CAAC,CAAC;YACH,IAAI,UAAU,IAAI,OAAO,UAAU,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;gBAC3D,WAAW,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;aAAM,IAAI,MAAM,KAAK,QAAQ,IAAI,SAAS,EAAE,CAAC;YAC5C,UAAU,GAAG,MAAM,WAAW,CAAC,aAAa,EAAE,MAAM,EAAE;gBACpD,SAAS;gBACT,UAAU,EAAE,KAAK;aAClB,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,MAAM,KAAK,QAAQ,IAAI,SAAS,EAAE,CAAC;YAC5C,UAAU,GAAG,MAAM,WAAW,CAAC,eAAe,EAAE,MAAM,EAAE;gBACtD,SAAS;gBACT,QAAQ,EAAE,IAAI;aACf,CAAC,CAAC;YACH,YAAY,EAAE,CAAC;QACjB,CAAC;aAAM,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC/B,YAAY,EAAE,CAAC;YACf,UAAU,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC;QAC5D,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,yDAAyD;IAC3D,CAAC;IAED,IAAI,eAAe,GAAG,EAAE,CAAC;IACzB,IAAI,UAAU,EAAE,CAAC;QACf,eAAe,GAAG,YAAY,MAAM,aAAa,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,4CAA4C,CAAC;IACnI,CAAC;IAED,MAAM,gBAAgB,GAAc;QAClC,GAAG,mBAAmB;QACtB,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE;KACrC,CAAC;IAEF,OAAO,MAAM,UAAU,CAAC,oBAAoB,GAAG,eAAe,EAAE,gBAAgB,CAAC,CAAC;AACpF,CAAC;AAED,KAAK,UAAU,WAAW;IACxB,MAAM,UAAU,GAAG,gBAAgB,EAAE,CAAC;IACtC,OAAO,CAAC,GAAG,CAAC;UACJ,OAAO;WACN,UAAU;;;CAGpB,CAAC,CAAC;IAED,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC;QAClC,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAC;IAEH,MAAM,mBAAmB,GAAc,EAAE,CAAC;IAC1C,MAAM,cAAc,GAAG,WAAW,EAAE,CAAC;IAErC,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,qBAAqB,cAAc,IAAI,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,MAAM,GAAG,GAAS,EAAE;QACxB,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;YACnC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;YAE7B,IAAI,OAAO,CAAC,WAAW,EAAE,KAAK,MAAM,IAAI,OAAO,CAAC,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;gBACzE,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;gBAC1B,EAAE,CAAC,KAAK,EAAE,CAAC;gBACX,OAAO;YACT,CAAC;YAED,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,EAAE,CAAC;gBACT,OAAO;YACT,CAAC;YAED,mBAAmB,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;YAC7D,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;YACzE,mBAAmB,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;YAEnE,OAAO,CAAC,GAAG,CAAC,aAAa,QAAQ,IAAI,CAAC,CAAC;YACvC,MAAM,EAAE,CAAC;QACX,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,EAAE,CAAC;AACX,CAAC;AAED,SAAS,aAAa;IACpB,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,UAAU,cAAc,EAAE,CAAC;IACpC,CAAC;IACD,IAAI,aAAa,IAAI,aAAa,EAAE,CAAC;QACnC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,aAAa,IAAI,aAAa,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACtF,OAAO,SAAS,SAAS,EAAE,CAAC;IAC9B,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,QAAgB,EAAE,MAAM,GAAG,KAAK,EAAE,IAA8B;IACzF,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,+EAA+E;SACvF,CAAC;IACJ,CAAC;IAED,IAAI,GAAG,GAAG,GAAG,YAAY,GAAG,QAAQ,EAAE,CAAC;IACvC,iFAAiF;IACjF,yDAAyD;IACzD,MAAM,iBAAiB,GAAG,QAAQ,CAAC,UAAU,CAAC,eAAe,CAAC;QACpC,QAAQ,CAAC,UAAU,CAAC,eAAe,CAAC;QACpC,QAAQ,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC;IACnE,IAAI,MAAM,KAAK,KAAK,IAAI,iBAAiB,EAAE,CAAC;QAC1C,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QACrD,GAAG,IAAI,GAAG,SAAS,WAAW,cAAc,YAAY,cAAc,SAAS,WAAW,EAAE,CAAC;IAC/F,CAAC;IAED,MAAM,OAAO,GAA2B;QACtC,cAAc,EAAE,kBAAkB;KACnC,CAAC;IAEF,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,CAAC;IACxC,CAAC;IAED,IAAI,YAAY,GAAG,IAAI,CAAC;IACxB,IAAI,MAAM,KAAK,MAAM,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC1D,YAAY,GAAG;YACb,GAAG,IAAI;YACP,OAAO,EAAE,cAAc;YACvB,OAAO,EAAE,cAAc;YACvB,IAAI,EAAE,WAAW;SAClB,CAAC;IACJ,CAAC;IAED,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAChC,MAAM;YACN,OAAO;YACP,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS;SAC9D,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,UAAU,EAAE,EAAE,CAAC;QACtF,CAAC;QAED,OAAO,MAAM,QAAQ,CAAC,IAAI,EAA6B,CAAC;IAC1D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,sBAAsB,KAAK,EAAE,EAAE,CAAC;IAClE,CAAC;AACH,CAAC;AAED,+CAA+C;AAC/C,qCAAqC;AACrC,+CAA+C;AAE/C,SAAS,UAAU;IACjB,MAAM,cAAc,GAAG,WAAW,EAAE,CAAC;IACrC,MAAM,UAAU,GAAG,gBAAgB,EAAE,CAAC;IACtC,MAAM,UAAU,GAAG,YAAY,EAAE,CAAC;IAElC,OAAO,CAAC,GAAG,CAAC;cACA,OAAO;;WAEV,UAAU;WACV,cAAc,IAAI,QAAQ;WAC1B,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiCpB,CAAC,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,IAA6B;IACjD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QACtC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,CAAC,SAAS,IAAI,CAAC,CAAC;IAChD,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAC7C,CAAC;AAED,KAAK,UAAU,MAAM,CAAC,IAAc;IAClC,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC;IAEvC,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QAC/E,UAAU,EAAE,CAAC;QACb,OAAO;IACT,CAAC;IAED,IAAI,OAAO,KAAK,WAAW,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,eAAe,OAAO,EAAE,CAAC,CAAC;QACtC,OAAO;IACT,CAAC;IAED,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7B,MAAM;QACR,CAAC;QAED,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,WAAW,EAAE,CAAC;YACpB,MAAM;QACR,CAAC;QAED,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,SAAS,CAAC,CAAC;YAC5C,YAAY,CAAC,MAAM,CAAC,CAAC;YACrB,MAAM;QACR,CAAC;QAED,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,YAAY,CAAC,CAAC;YAC/C,YAAY,CAAC,MAAM,CAAC,CAAC;YACrB,MAAM;QACR,CAAC;QAED,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACvB,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO,CAAC,KAAK,CAAC,+DAA+D,CAAC,CAAC;gBAC/E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,cAAc,EAAE,MAAM,EAAE;gBACvD,KAAK,EAAE,MAAM;gBACb,MAAM,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,EAAE;aACvD,CAAC,CAAC;YAEH,IAAI,MAAM,CAAC,SAAS,IAAI,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;gBAC7D,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;gBAC9B,OAAO,CAAC,GAAG,CAAC,sBAAsB,MAAM,CAAC,SAAS,IAAI,CAAC,CAAC;YAC1D,CAAC;YAED,YAAY,CAAC,MAAM,CAAC,CAAC;YACrB,MAAM;QACR,CAAC;QAED,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YAC3B,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,OAAO,CAAC,KAAK,CAAC,sEAAsE,CAAC,CAAC;gBACtF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,MAAM,SAAS,GAAG,WAAW,EAAE,CAAC;YAChC,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,mEAAmE,CAAC,CAAC;gBACnF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,aAAa,EAAE,MAAM,EAAE;gBACtD,SAAS;gBACT,UAAU;aACX,CAAC,CAAC;YAEH,YAAY,CAAC,MAAM,CAAC,CAAC;YACrB,MAAM;QACR,CAAC;QAED,KAAK,QAAQ,CAAC;QACd,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC;YAC3C,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,mEAAmE,CAAC,CAAC;gBACnF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,gBAAgB,SAAS,EAAE,CAAC,CAAC;YAC9D,YAAY,CAAC,MAAM,CAAC,CAAC;YACrB,MAAM;QACR,CAAC;QAED,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC;YACxC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,CAAC,KAAK,CAAC,2DAA2D,CAAC,CAAC;gBAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,MAAM,SAAS,GAAG,WAAW,EAAE,CAAC;YAChC,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,mEAAmE,CAAC,CAAC;gBACnF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,eAAe,EAAE,MAAM,EAAE;gBACxD,SAAS;gBACT,QAAQ,EAAE,QAAQ,KAAK,KAAK,IAAI,QAAQ,KAAK,MAAM,IAAI,QAAQ,KAAK,QAAQ;gBAC5E,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;aACjB,CAAC,CAAC;YAEH,YAAY,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;YACrC,YAAY,CAAC,MAAM,CAAC,CAAC;YACrB,MAAM;QACR,CAAC;QAED,KAAK,KAAK,CAAC,CAAC,CAAC;YACX,YAAY,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;YAC5D,MAAM;QACR,CAAC;QAED;YACE,OAAO,CAAC,KAAK,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC;YAC7C,UAAU,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACH,CAAC;AAED,+CAA+C;AAC/C,oCAAoC;AACpC,+CAA+C;AAE/C,MAAM,MAAM,GAAG,IAAI,MAAM,CACvB,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,EACrE,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,CAChC,CAAC;AAEF,MAAM,KAAK,GAAW;IACpB;QACE,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,iGAAiG;QAC9G,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE;KAChD;IACD;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,qCAAqC;QAClD,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE;KAChD;IACD;QACE,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE,qDAAqD;QAClE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE;KAChD;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,8GAA8G;QAC3H,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wBAAwB,EAAE;gBACjE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oBAAoB,EAAE;gBAC9D,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2BAA2B,EAAE;gBACxE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kBAAkB,EAAE;aACjE;YACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;SACrB;KACF;IACD;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,6DAA6D;QAC1E,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,+BAA+B,EAAE;gBAC5E,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wBAAwB,EAAE;gBACrE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oBAAoB,EAAE;gBAC9D,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kBAAkB,EAAE;aACjE;YACD,QAAQ,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC;SACvC;KACF;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,2CAA2C;QACxD,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wBAAwB,EAAE;aACtE;YACD,QAAQ,EAAE,CAAC,YAAY,CAAC;SACzB;KACF;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,iDAAiD;QAC9D,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE;gBACzD,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,iCAAiC,EAAE;gBAC7E,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2BAA2B,EAAE;aACtE;YACD,QAAQ,EAAE,CAAC,YAAY,EAAE,UAAU,CAAC;SACrC;KACF;IACD;QACE,IAAI,EAAE,uBAAuB;QAC7B,WAAW,EAAE,oEAAoE;QACjF,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oCAAoC,EAAE;aAC7E;SACF;KACF;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE,yJAAyJ;QACtK,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sBAAsB,EAAE;gBAChE,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,yBAAyB,EAAE;gBACxE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gBAAgB,EAAE;aACzD;YACD,QAAQ,EAAE,CAAC,SAAS,CAAC;SACtB;KACF;IACD;QACE,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,yIAAyI;QACtJ,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,6DAA6D,EAAE;aACzG;SACF;KACF;IACD;QACE,IAAI,EAAE,uBAAuB;QAC7B,WAAW,EAAE,uCAAuC;QACpD,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gBAAgB,EAAE;gBACxD,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oCAAoC,EAAE;aAC7E;YACD,QAAQ,EAAE,CAAC,OAAO,CAAC;SACpB;KACF;IACD,oCAAoC;IACpC;QACE,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EAAE,gIAAgI;QAC7I,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,0DAA0D,EAAE;gBACpG,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,8BAA8B,EAAE;gBACxE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2BAA2B,EAAE;gBAClE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2DAA2D,EAAE;gBACpG,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,8DAA8D,EAAE;aACvG;SACF;KACF;IACD;QACE,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EAAE,2GAA2G;QACxH,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wBAAwB,EAAE;aACtE;YACD,QAAQ,EAAE,CAAC,YAAY,CAAC;SACzB;KACF;IACD;QACE,IAAI,EAAE,wBAAwB;QAC9B,WAAW,EAAE,kGAAkG;QAC/G,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,+BAA+B,EAAE;gBAC5E,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iDAAiD,EAAE;aAC1F;YACD,QAAQ,EAAE,CAAC,YAAY,CAAC;SACzB;KACF;IACD;QACE,IAAI,EAAE,yBAAyB;QAC/B,WAAW,EAAE,8FAA8F;QAC3G,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wBAAwB,EAAE;gBACrE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,8BAA8B,EAAE;aACzE;YACD,QAAQ,EAAE,CAAC,YAAY,EAAE,SAAS,CAAC;SACpC;KACF;IACD;QACE,IAAI,EAAE,wBAAwB;QAC9B,WAAW,EAAE,4EAA4E;QACzF,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uBAAuB,EAAE;aACrE;YACD,QAAQ,EAAE,CAAC,YAAY,CAAC;SACzB;KACF;IACD,gDAAgD;IAChD;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE;;;;;;;;;;;;;;wEAcuD;QACpE,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,gCAAgC;iBAC9C;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC;oBAC1B,WAAW,EAAE,sDAAsD;iBACpE;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,kEAAkE;iBAChF;aACF;YACD,QAAQ,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC;SAC5C;KACF;IACD,yEAAyE;IACzE;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE;;;;;;;;;;;;6CAY4B;QACzC,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,uEAAuE;iBACrF;aACF;SACF;KACF;IACD,uEAAuE;IACvE;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE;;;;;;;;;;;;;;;;;;0EAkByD;QACtE,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,yCAAyC;iBACvD;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC;oBAC1B,WAAW,EAAE,sDAAsD;iBACpE;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,uDAAuD;iBACrE;aACF;YACD,QAAQ,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC;SAC5C;KACF;CACF,CAAC;AAEF,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;IAC1D,OAAO,EAAE,KAAK,EAAE,CAAC;AACnB,CAAC,CAAC,CAAC;AAEH,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;IAChE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAEjD,IAAI,CAAC;QACH,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,aAAa,CAAC,CAAC,CAAC;gBACnB,MAAM,UAAU,GAAG,gBAAgB,EAAE,CAAC;gBACtC,MAAM,QAAQ,GAAG,iBAAiB,OAAO;;;;;aAKpC,cAAc;aACd,cAAc;UACjB,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA0CH,YAAY,IAAI,gBAAgB;;;;;;CAMjD,CAAC;gBACM,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;iBAC5C,CAAC;YACJ,CAAC;YAED,KAAK,eAAe,CAAC,CAAC,CAAC;gBACrB,MAAM,UAAU,GAAG,MAAM,WAAW,CAAC,SAAS,CAAC,CAAC;gBAChD,MAAM,MAAM,GAAG,mBAAmB,EAAE,CAAC;gBACrC,MAAM,cAAc,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC;gBAEzC,MAAM,MAAM,GAAG;oBACb,OAAO,EAAE,YAAY;oBACrB,OAAO,EAAE,cAAc;oBACvB,OAAO,EAAE,cAAc;oBACvB,IAAI,EAAE,WAAW;oBACjB,KAAK,EAAE,YAAY,IAAI,WAAW;iBACnC,CAAC;gBAEF,MAAM,QAAQ,GAAa,EAAE,CAAC;gBAC9B,IAAI,cAAc,KAAK,SAAS;oBAAE,QAAQ,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;gBAC5F,IAAI,cAAc,KAAK,SAAS;oBAAE,QAAQ,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;gBAC5F,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;oBACzD,QAAQ,CAAC,IAAI,CAAC,yEAAyE,CAAC,CAAC;gBAC3F,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE,CAAC;4BACR,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gCACnB,MAAM,EAAE;oCACN,OAAO,EAAE,OAAO;oCAChB,MAAM;oCACN,QAAQ,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;iCACrD;gCACD,IAAI,EAAE,UAAU;gCAChB,MAAM,EAAE;oCACN,IAAI,EAAE,MAAM,CAAC,MAAM;oCACnB,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO;oCACxC,IAAI,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,4CAA4C,CAAC,CAAC,CAAC,SAAS;iCACnF;6BACF,EAAE,IAAI,EAAE,CAAC,CAAC;yBACZ,CAAC;iBACH,CAAC;YACJ,CAAC;YAED,KAAK,cAAc,CAAC,CAAC,CAAC;gBACpB,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,YAAY,CAAC,CAAC;gBAC/C,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;iBACnE,CAAC;YACJ,CAAC;YAED,KAAK,gBAAgB,CAAC,CAAC,CAAC;gBACtB,MAAM,MAAM,GAAG,IAAI,EAAE,MAAgB,CAAC;gBACtC,MAAM,UAAU,GAAG,IAAI,EAAE,OAA6B,CAAC;gBACvD,MAAM,SAAS,GAAG,IAAI,EAAE,UAAgC,CAAC;gBACzD,MAAM,WAAW,GAAG,IAAI,EAAE,WAAiC,CAAC;gBAE5D,yDAAyD;gBACzD,MAAM,OAAO,GAAG,UAAU;oBACxB,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;oBACjE,CAAC,CAAC,SAAS,CAAC;gBAEd,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,cAAc,EAAE,MAAM,EAAE;oBACvD,KAAK,EAAE,MAAM;oBACb,OAAO;oBACP,SAAS;oBACT,WAAW;oBACX,MAAM,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,EAAE;iBACvD,CAAC,CAAC;gBAEH,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;iBACnE,CAAC;YACJ,CAAC;YAED,KAAK,eAAe,CAAC,CAAC,CAAC;gBACrB,MAAM,SAAS,GAAG,IAAI,EAAE,UAAoB,CAAC;gBAC7C,MAAM,UAAU,GAAG,IAAI,EAAE,UAAoB,CAAC;gBAC9C,MAAM,UAAU,GAAG,IAAI,EAAE,OAA6B,CAAC;gBACvD,MAAM,WAAW,GAAG,IAAI,EAAE,WAAiC,CAAC;gBAE5D,yDAAyD;gBACzD,MAAM,OAAO,GAAG,UAAU;oBACxB,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;oBACjE,CAAC,CAAC,SAAS,CAAC;gBAEd,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,aAAa,EAAE,MAAM,EAAE;oBACtD,SAAS;oBACT,UAAU;oBACV,OAAO;oBACP,WAAW;iBACZ,CAAC,CAAC;gBAEH,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;iBACnE,CAAC;YACJ,CAAC;YAED,KAAK,gBAAgB,CAAC,CAAC,CAAC;gBACtB,MAAM,SAAS,GAAG,IAAI,EAAE,UAAoB,CAAC;gBAC7C,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,gBAAgB,SAAS,EAAE,CAAC,CAAC;gBAC9D,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;iBACnE,CAAC;YACJ,CAAC;YAED,KAAK,iBAAiB,CAAC,CAAC,CAAC;gBACvB,MAAM,SAAS,GAAG,IAAI,EAAE,UAAoB,CAAC;gBAC7C,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAmB,CAAC;gBAC3C,MAAM,OAAO,GAAG,IAAI,EAAE,OAA6B,CAAC;gBAEpD,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,eAAe,EAAE,MAAM,EAAE;oBACxD,SAAS;oBACT,QAAQ;oBACR,OAAO;iBACR,CAAC,CAAC;gBAEH,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;iBACnE,CAAC;YACJ,CAAC;YAED,KAAK,uBAAuB,CAAC,CAAC,CAAC;gBAC7B,MAAM,KAAK,GAAG,IAAI,EAAE,KAA2B,CAAC;gBAEhD,IAAI,oBAAoB,EAAE,CAAC;oBACzB,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,8BAA8B,KAAK,EAAE,CAAC,CAAC,CAAC,sBAAsB,CAAC;oBACxF,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,QAAQ,CAAC,CAAC;oBAC3C,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;qBACnE,CAAC;gBACJ,CAAC;gBAED,+BAA+B;gBAC/B,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;gBAClE,MAAM,QAAQ,GAA4B,EAAE,CAAC;gBAE7C,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;oBACvB,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC;oBAC/D,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;wBAC3B,QAAQ,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;oBAClD,CAAC;gBACH,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;iBACrE,CAAC;YACJ,CAAC;YAED,KAAK,sBAAsB,CAAC,CAAC,CAAC;gBAC5B,MAAM,OAAO,GAAG,IAAI,EAAE,OAAiB,CAAC;gBACxC,MAAM,WAAW,GAAG,IAAI,EAAE,YAAkC,CAAC;gBAC7D,MAAM,KAAK,GAAG,IAAI,EAAE,KAA2B,CAAC;gBAEhD,MAAM,OAAO,GAAG;oBACd,OAAO;oBACP,KAAK;oBACL,WAAW;oBACX,WAAW,EAAE,YAAY,IAAI,SAAS;oBACtC,OAAO,EAAE,cAAc;oBACvB,OAAO,EAAE,cAAc;oBACvB,IAAI,EAAE,WAAW;iBAClB,CAAC;gBAEF,8DAA8D;gBAC9D,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,qBAAqB,EAAE,MAAM,EAAE;wBAC9D,OAAO;wBACP,WAAW;wBACX,KAAK;wBACL,WAAW,EAAE,YAAY;qBAC1B,CAAC,CAAC;oBAEH,iCAAiC;oBACjC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;wBACjB,aAAa,CAAC,OAAO,CAAC,CAAC;wBACvB,OAAO;4BACL,OAAO,EAAE,CAAC;oCACR,IAAI,EAAE,MAAM;oCACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wCACnB,OAAO,EAAE,IAAI;wCACb,IAAI,EAAE,OAAO;wCACb,OAAO,EAAE,iDAAiD;wCAC1D,KAAK,EAAE,MAAM,CAAC,KAAK;wCACnB,UAAU,EAAE,mBAAmB,EAAE,CAAC,MAAM;wCACxC,IAAI,EAAE,qDAAqD;qCAC5D,EAAE,IAAI,EAAE,CAAC,CAAC;iCACZ,CAAC;yBACH,CAAC;oBACJ,CAAC;oBAED,OAAO;wBACL,OAAO,EAAE,CAAC;gCACR,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCACnB,GAAG,MAAM;oCACT,IAAI,EAAE,OAAO;iCACd,EAAE,IAAI,EAAE,CAAC,CAAC;6BACZ,CAAC;qBACH,CAAC;gBACJ,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,qCAAqC;oBACrC,aAAa,CAAC,OAAO,CAAC,CAAC;oBACvB,OAAO;wBACL,OAAO,EAAE,CAAC;gCACR,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCACnB,OAAO,EAAE,IAAI;oCACb,IAAI,EAAE,OAAO;oCACb,OAAO,EAAE,8CAA8C;oCACvD,UAAU,EAAE,mBAAmB,EAAE,CAAC,MAAM;oCACxC,IAAI,EAAE,qDAAqD;iCAC5D,EAAE,IAAI,EAAE,CAAC,CAAC;6BACZ,CAAC;qBACH,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,KAAK,aAAa,CAAC,CAAC,CAAC;gBACnB,MAAM,MAAM,GAAG,IAAI,EAAE,OAA8B,CAAC;gBACpD,MAAM,MAAM,GAAG,mBAAmB,EAAE,CAAC;gBAErC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACxB,OAAO;wBACL,OAAO,EAAE,CAAC;gCACR,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCACnB,OAAO,EAAE,IAAI;oCACb,OAAO,EAAE,+BAA+B;oCACxC,MAAM,EAAE,CAAC;iCACV,EAAE,IAAI,EAAE,CAAC,CAAC;6BACZ,CAAC;qBACH,CAAC;gBACJ,CAAC;gBAED,IAAI,MAAM,EAAE,CAAC;oBACX,OAAO;wBACL,OAAO,EAAE,CAAC;gCACR,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCACnB,MAAM,EAAE,IAAI;oCACZ,SAAS,EAAE,MAAM,CAAC,MAAM;oCACxB,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;wCACzB,KAAK,EAAE,CAAC,CAAC,KAAK;wCACd,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;wCAC5E,UAAU,EAAE,CAAC,CAAC,UAAU;qCACzB,CAAC,CAAC;iCACJ,EAAE,IAAI,EAAE,CAAC,CAAC;6BACZ,CAAC;qBACH,CAAC;gBACJ,CAAC;gBAED,MAAM,MAAM,GAAsB,EAAE,CAAC;gBACrC,MAAM,MAAM,GAAsB,EAAE,CAAC;gBAErC,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;oBAC1B,IAAI,CAAC;wBACH,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,qBAAqB,EAAE,MAAM,EAAE;4BAC9D,OAAO,EAAE,IAAI,CAAC,OAAO;4BACrB,KAAK,EAAE,IAAI,CAAC,KAAK;4BACjB,WAAW,EAAE,IAAI,CAAC,WAAW;4BAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;yBAC9B,CAAC,CAAC;wBAEH,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;4BACjB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACpB,CAAC;6BAAM,CAAC;4BACN,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACpB,CAAC;oBACH,CAAC;oBAAC,MAAM,CAAC;wBACP,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACpB,CAAC;gBACH,CAAC;gBAED,wCAAwC;gBACxC,kBAAkB,CAAC,MAAM,CAAC,CAAC;gBAE3B,OAAO;oBACL,OAAO,EAAE,CAAC;4BACR,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gCACnB,OAAO,EAAE,IAAI;gCACb,OAAO,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,wBAAwB;gCACvF,MAAM,EAAE,MAAM,CAAC,MAAM;gCACrB,MAAM,EAAE,MAAM,CAAC,MAAM;gCACrB,eAAe,EAAE,MAAM,CAAC,MAAM;6BAC/B,EAAE,IAAI,EAAE,CAAC,CAAC;yBACZ,CAAC;iBACH,CAAC;YACJ,CAAC;YAED,KAAK,uBAAuB,CAAC,CAAC,CAAC;gBAC7B,MAAM,KAAK,GAAG,IAAI,EAAE,KAAe,CAAC;gBACpC,MAAM,KAAK,GAAG,IAAI,EAAE,KAA2B,CAAC;gBAEhD,IAAI,oBAAoB,EAAE,CAAC;oBACzB,MAAM,QAAQ,GAAG,KAAK;wBACpB,CAAC,CAAC,8BAA8B,kBAAkB,CAAC,KAAK,CAAC,UAAU,KAAK,EAAE;wBAC1E,CAAC,CAAC,8BAA8B,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC9D,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,QAAQ,CAAC,CAAC;oBAC3C,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;qBACnE,CAAC;gBACJ,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE,iCAAiC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;iBACzH,CAAC;YACJ,CAAC;YAED,oCAAoC;YACpC,KAAK,qBAAqB,CAAC,CAAC,CAAC;gBAC3B,MAAM,OAAO,GAAG,IAAI,EAAE,OAA6B,CAAC;gBACpD,MAAM,OAAO,GAAG,IAAI,EAAE,OAA6B,CAAC;gBACpD,MAAM,IAAI,GAAG,IAAI,EAAE,IAA0B,CAAC;gBAC9C,MAAM,MAAM,GAAG,IAAI,EAAE,MAA4B,CAAC;gBAClD,MAAM,KAAK,GAAG,IAAI,EAAE,KAA2B,CAAC;gBAEhD,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;gBACrC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,IAAI,cAAc,CAAC,CAAC;gBACjD,IAAI,OAAO;oBAAE,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;gBAC5C,IAAI,IAAI;oBAAE,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBACnC,IAAI,MAAM;oBAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;gBACzC,IAAI,KAAK;oBAAE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBAE9C,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,iBAAiB,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;gBACvE,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;iBACnE,CAAC;YACJ,CAAC;YAED,KAAK,oBAAoB,CAAC,CAAC,CAAC;gBAC1B,MAAM,SAAS,GAAG,IAAI,EAAE,UAAoB,CAAC;gBAC7C,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,gBAAgB,SAAS,EAAE,CAAC,CAAC;gBAC9D,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;iBACnE,CAAC;YACJ,CAAC;YAED,KAAK,wBAAwB,CAAC,CAAC,CAAC;gBAC9B,MAAM,SAAS,GAAG,IAAI,EAAE,UAAoB,CAAC;gBAC7C,MAAM,KAAK,GAAG,IAAI,EAAE,KAA2B,CAAC;gBAEhD,IAAI,QAAQ,GAAG,gBAAgB,SAAS,UAAU,CAAC;gBACnD,IAAI,KAAK,EAAE,CAAC;oBACV,QAAQ,IAAI,UAAU,KAAK,EAAE,CAAC;gBAChC,CAAC;gBAED,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,QAAQ,CAAC,CAAC;gBAC3C,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;iBACnE,CAAC;YACJ,CAAC;YAED,KAAK,yBAAyB,CAAC,CAAC,CAAC;gBAC/B,MAAM,SAAS,GAAG,IAAI,EAAE,UAAoB,CAAC;gBAC7C,MAAM,OAAO,GAAG,IAAI,EAAE,OAAiB,CAAC;gBAExC,MAAM,MAAM,GAAG,MAAM,WAAW,CAC9B,gBAAgB,SAAS,qBAAqB,OAAO,EAAE,EACvD,MAAM,CACP,CAAC;gBACF,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;iBACnE,CAAC;YACJ,CAAC;YAED,KAAK,wBAAwB,CAAC,CAAC,CAAC;gBAC9B,MAAM,SAAS,GAAG,IAAI,EAAE,UAAoB,CAAC;gBAE7C,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,gBAAgB,SAAS,EAAE,EAAE,KAAK,EAAE;oBACnE,MAAM,EAAE,UAAU;iBACnB,CAAC,CAAC;gBACH,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;iBACnE,CAAC;YACJ,CAAC;YAED,KAAK,gBAAgB,CAAC,CAAC,CAAC;gBACtB,MAAM,OAAO,GAAG,IAAI,EAAE,OAAiB,CAAC;gBACxC,MAAM,OAAO,GAAG,IAAI,EAAE,OAA8B,CAAC;gBACrD,MAAM,OAAO,GAAG,IAAI,EAAE,OAAiB,CAAC;gBAExC,mDAAmD;gBACnD,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,qBAAqB,EAAE,MAAM,EAAE;wBAC9D,OAAO;wBACP,OAAO;wBACP,OAAO,EAAG,6CAA6C;wBACvD,MAAM,EAAE,QAAQ,EAAG,yCAAyC;wBAC5D,OAAO,EAAE,cAAc;wBACvB,OAAO,EAAE,cAAc;wBACvB,IAAI,EAAE,WAAW;wBACjB,KAAK,EAAE,YAAY,IAAI,SAAS;qBACjC,CAAC,CAAC;oBAEH,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;wBACjB,qDAAqD;wBACrD,MAAM,WAAW,GAAG;4BAClB,OAAO;4BACP,OAAO;4BACP,OAAO,EAAE,cAAc;4BACvB,OAAO,EAAE,cAAc;4BACvB,IAAI,EAAE,WAAW;4BACjB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;yBACpC,CAAC;wBAEF,mCAAmC;wBACnC,aAAa,CAAC;4BACZ,OAAO,EAAE,YAAY,OAAO,KAAK,OAAO,eAAe,OAAO,EAAE;4BAChE,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;4BACtD,OAAO,EAAE,cAAc;4BACvB,OAAO,EAAE,cAAc;4BACvB,IAAI,EAAE,WAAW;yBAClB,CAAC,CAAC;wBAEH,OAAO;4BACL,OAAO,EAAE,CAAC;oCACR,IAAI,EAAE,MAAM;oCACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wCACnB,OAAO,EAAE,IAAI;wCACb,IAAI,EAAE,OAAO;wCACb,OAAO,EAAE,iDAAiD;wCAC1D,OAAO;wCACP,OAAO;wCACP,IAAI,EAAE,sEAAsE;wCAC5E,QAAQ,EAAE,IAAI;qCACf,EAAE,IAAI,EAAE,CAAC,CAAC;iCACZ,CAAC;yBACH,CAAC;oBACJ,CAAC;oBAED,+BAA+B;oBAC/B,OAAO;wBACL,OAAO,EAAE,CAAC;gCACR,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCACnB,OAAO,EAAE,IAAI;oCACb,IAAI,EAAE,OAAO;oCACb,OAAO;oCACP,OAAO;oCACP,OAAO,EAAE,OAAO,KAAK,OAAO;wCAC1B,CAAC,CAAC,0BAA0B,OAAO,GAAG;wCACtC,CAAC,CAAC,sBAAsB,OAAO,GAAG;oCACpC,GAAG,MAAM;iCACV,EAAE,IAAI,EAAE,CAAC,CAAC;6BACZ,CAAC;qBACH,CAAC;gBACJ,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,iCAAiC;oBACjC,aAAa,CAAC;wBACZ,OAAO,EAAE,YAAY,OAAO,KAAK,OAAO,eAAe,OAAO,EAAE;wBAChE,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;wBACtD,OAAO,EAAE,cAAc;wBACvB,OAAO,EAAE,cAAc;wBACvB,IAAI,EAAE,WAAW;qBAClB,CAAC,CAAC;oBAEH,OAAO;wBACL,OAAO,EAAE,CAAC;gCACR,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCACnB,OAAO,EAAE,IAAI;oCACb,IAAI,EAAE,OAAO;oCACb,OAAO,EAAE,iDAAiD;oCAC1D,OAAO;oCACP,OAAO;oCACP,IAAI,EAAE,sCAAsC;oCAC5C,QAAQ,EAAE,IAAI;iCACf,EAAE,IAAI,EAAE,CAAC,CAAC;6BACZ,CAAC;qBACH,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,KAAK,iBAAiB,CAAC,CAAC,CAAC;gBACvB,6CAA6C;gBAC7C,IAAI,CAAC;oBACH,MAAM,iBAAiB,GAAG,MAAM,WAAW,CACzC,mCAAmC,cAAc,YAAY,cAAc,WAAW,CACvF,CAAC;oBAEF,MAAM,UAAU,GAAG,MAAM,WAAW,CAAC,2BAA2B,CAAC,CAAC;oBAElE,gCAAgC;oBAChC,MAAM,QAAQ,GAAI,iBAAiB,CAAC,QAA8E,IAAI,EAAE,CAAC;oBACzH,MAAM,YAAY,GAAI,iBAAiB,CAAC,YAA4E,IAAI,EAAE,CAAC;oBAC3H,MAAM,YAAY,GAAI,UAAU,CAAC,YAAuE,IAAI,EAAE,CAAC;oBAE/G,yBAAyB;oBACzB,IAAI,OAAO,GAAG,2BAA2B,cAAc,IAAI,cAAc,MAAM,CAAC;oBAEhF,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC5B,OAAO,IAAI,qCAAqC,CAAC;wBACjD,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE;4BACzC,OAAO,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,CAAC;4BACrC,IAAI,EAAE,CAAC,OAAO;gCAAE,OAAO,IAAI,UAAU,EAAE,CAAC,OAAO,EAAE,CAAC;4BAClD,OAAO,IAAI,IAAI,CAAC;wBAClB,CAAC,CAAC,CAAC;wBACH,OAAO,IAAI,IAAI,CAAC;oBAClB,CAAC;oBAED,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACxB,OAAO,IAAI,6BAA6B,CAAC;wBACzC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;4BACpC,OAAO,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;4BACpC,IAAI,CAAC,CAAC,aAAa;gCAAE,OAAO,IAAI,UAAU,CAAC,CAAC,aAAa,EAAE,CAAC;4BAC5D,OAAO,IAAI,IAAI,CAAC;wBAClB,CAAC,CAAC,CAAC;wBACH,OAAO,IAAI,IAAI,CAAC;oBAClB,CAAC;oBAED,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC5B,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;wBAC7B,OAAO,IAAI,qBAAqB,CAAC;wBACjC,OAAO,IAAI,+BAA+B,IAAI,CAAC,iBAAiB,KAAK,CAAC,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,CAAC;oBAC3H,CAAC;oBAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACvD,OAAO,GAAG,+BAA+B,cAAc,IAAI,cAAc,oGAAoG,CAAC;oBAChL,CAAC;oBAED,OAAO;wBACL,OAAO,EAAE,CAAC;gCACR,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,OAAO;6BACd,CAAC;qBACH,CAAC;gBAEJ,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO;wBACL,OAAO,EAAE,CAAC;gCACR,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,6BAA6B,KAAK,8BAA8B;6BACvE,CAAC;qBACH,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,KAAK,iBAAiB,CAAC,CAAC,CAAC;gBACvB,MAAM,OAAO,GAAG,IAAI,EAAE,OAAiB,CAAC;gBACxC,MAAM,OAAO,GAAG,IAAI,EAAE,OAA8B,CAAC;gBACrD,MAAM,OAAO,GAAG,IAAI,EAAE,OAAiB,CAAC;gBAExC,uBAAuB;gBACvB,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;gBAC/B,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACd,OAAO;wBACL,OAAO,EAAE,CAAC;gCACR,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCACnB,OAAO,EAAE,KAAK;oCACd,KAAK,EAAE,sBAAsB;oCAC7B,IAAI,EAAE,+EAA+E;oCACrF,QAAQ,EAAE,+CAA+C;iCAC1D,EAAE,IAAI,EAAE,CAAC,CAAC;6BACZ,CAAC;qBACH,CAAC;gBACJ,CAAC;gBAED,IAAI,CAAC;oBACH,0CAA0C;oBAC1C,MAAM,MAAM,GAAG,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;oBAChE,MAAM,SAAS,GAAG,MAAM,mBAAmB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;oBAE9D,6BAA6B;oBAC7B,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,qBAAqB,EAAE,MAAM,EAAE;wBAC9D,OAAO;wBACP,OAAO;wBACP,OAAO;wBACP,MAAM,EAAE,YAAY,EAAG,uBAAuB;wBAC9C,sBAAsB;wBACtB,MAAM,EAAE,SAAS,CAAC,MAAM;wBACxB,OAAO,EAAE,SAAS,CAAC,OAAO;wBAC1B,aAAa,EAAE,SAAS,CAAC,aAAa;wBACtC,OAAO,EAAE,SAAS,CAAC,OAAO;wBAC1B,OAAO,EAAE,cAAc;wBACvB,OAAO,EAAE,cAAc;wBACvB,IAAI,EAAE,WAAW;wBACjB,KAAK,EAAE,YAAY,IAAI,SAAS;qBACjC,CAAC,CAAC;oBAEH,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;wBACjB,qEAAqE;wBACrE,aAAa,CAAC;4BACZ,OAAO,EAAE,aAAa,OAAO,aAAa,SAAS,CAAC,MAAM,eAAe,OAAO,MAAM,SAAS,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,cAAc,SAAS,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,SAAS,SAAS,CAAC,OAAO,EAAE,EAAE;4BAChM,KAAK,EAAE,SAAS,CAAC,OAAO;4BACxB,OAAO,EAAE,cAAc;4BACvB,OAAO,EAAE,cAAc;4BACvB,IAAI,EAAE,WAAW;yBAClB,CAAC,CAAC;wBAEH,OAAO;4BACL,OAAO,EAAE,CAAC;oCACR,IAAI,EAAE,MAAM;oCACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wCACnB,OAAO,EAAE,IAAI;wCACb,IAAI,EAAE,OAAO;wCACb,MAAM,EAAE,YAAY;wCACpB,OAAO,EAAE,8DAA8D;wCACvE,SAAS,EAAE;4CACT,MAAM,EAAE,SAAS,CAAC,MAAM;4CACxB,OAAO,EAAE,SAAS,CAAC,OAAO;4CAC1B,aAAa,EAAE,SAAS,CAAC,aAAa;4CACtC,OAAO,EAAE,SAAS,CAAC,OAAO;yCAC3B;wCACD,IAAI,EAAE,sDAAsD;qCAC7D,EAAE,IAAI,EAAE,CAAC,CAAC;iCACZ,CAAC;yBACH,CAAC;oBACJ,CAAC;oBAED,uCAAuC;oBACvC,OAAO;wBACL,OAAO,EAAE,CAAC;gCACR,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCACnB,OAAO,EAAE,IAAI;oCACb,IAAI,EAAE,OAAO;oCACb,MAAM,EAAE,YAAY;oCACpB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;oCAC3B,OAAO,EAAE,SAAS,CAAC,OAAO,KAAK,SAAS;wCACtC,CAAC,CAAC,qCAAqC;wCACvC,CAAC,CAAC,yCAAyC;oCAC7C,SAAS,EAAE;wCACT,MAAM,EAAE,SAAS,CAAC,MAAM;wCACxB,OAAO,EAAE,SAAS,CAAC,OAAO;wCAC1B,aAAa,EAAE,SAAS,CAAC,aAAa;wCACtC,OAAO,EAAE,SAAS,CAAC,OAAO;qCAC3B;oCACD,OAAO;oCACP,GAAG,MAAM;iCACV,EAAE,IAAI,EAAE,CAAC,CAAC;6BACZ,CAAC;qBACH,CAAC;gBAEJ,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,iBAAiB;oBACjB,OAAO;wBACL,OAAO,EAAE,CAAC;gCACR,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCACnB,OAAO,EAAE,KAAK;oCACd,KAAK,EAAE,yBAAyB,KAAK,EAAE;oCACvC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;oCAC3B,IAAI,EAAE,4EAA4E;iCACnF,EAAE,IAAI,EAAE,CAAC,CAAC;6BACZ,CAAC;qBACH,CAAC;gBACJ,CAAC;YACH,CAAC;YAED;gBACE,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,IAAI,EAAE,EAAE,CAAC;oBAC1D,OAAO,EAAE,IAAI;iBACd,CAAC;QACN,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,KAAK,EAAE,EAAE,CAAC;YACpD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,KAAK,UAAU,cAAc;IAC3B,IAAI,CAAC,oBAAoB;QAAE,OAAO;IAElC,MAAM,MAAM,GAAG,mBAAmB,EAAE,CAAC;IACrC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAEhC,OAAO,CAAC,KAAK,CAAC,yBAAyB,MAAM,CAAC,MAAM,yBAAyB,CAAC,CAAC;IAE/E,MAAM,MAAM,GAAsB,EAAE,CAAC;IACrC,MAAM,MAAM,GAAsB,EAAE,CAAC;IAErC,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;QAC1B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,qBAAqB,EAAE,MAAM,EAAE;gBAC9D,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;aAC9B,CAAC,CAAC;YAEH,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBACjB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpB,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IAED,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAE3B,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,KAAK,CAAC,mBAAmB,MAAM,CAAC,MAAM,sBAAsB,CAAC,CAAC;IACxE,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,KAAK,CAAC,YAAY,MAAM,CAAC,MAAM,iDAAiD,CAAC,CAAC;IAC5F,CAAC;AACH,CAAC;AAED,KAAK,UAAU,MAAM;IACnB,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAChC,OAAO,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;IACpD,OAAO,CAAC,KAAK,CAAC,YAAY,cAAc,IAAI,cAAc,EAAE,CAAC,CAAC;IAC9D,OAAO,CAAC,KAAK,CAAC,yEAAyE,CAAC,CAAC;IAEzF,yCAAyC;IACzC,MAAM,cAAc,EAAE,CAAC;AACzB,CAAC;AAED,+CAA+C;AAC/C,4BAA4B;AAC5B,+CAA+C;AAE/C,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAEnC,yCAAyC;IACzC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;QACnB,OAAO;IACT,CAAC;IAED,mDAAmD;IACnD,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACxB,UAAU,EAAE,CAAC;QACb,OAAO;IACT,CAAC;IAED,wDAAwD;IACxD,MAAM,MAAM,EAAE,CAAC;AACjB,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -107,13 +107,13 @@ describe('CEDA-49: Session Management Tools', () => {
|
|
|
107
107
|
});
|
|
108
108
|
});
|
|
109
109
|
describe('Version', () => {
|
|
110
|
-
it('should
|
|
111
|
-
expect(indexContent).
|
|
110
|
+
it('should have VERSION constant defined in index.ts', () => {
|
|
111
|
+
expect(indexContent).toMatch(/const VERSION = "\d+\.\d+\.\d+"/);
|
|
112
112
|
});
|
|
113
|
-
it('should have matching version in package.json', () => {
|
|
113
|
+
it('should have matching version format in package.json', () => {
|
|
114
114
|
const packagePath = path.join(process.cwd(), 'package.json');
|
|
115
115
|
const packageJson = JSON.parse(fs.readFileSync(packagePath, 'utf-8'));
|
|
116
|
-
expect(packageJson.version).
|
|
116
|
+
expect(packageJson.version).toMatch(/^\d+\.\d+\.\d+$/);
|
|
117
117
|
});
|
|
118
118
|
});
|
|
119
119
|
describe('CEDA-49 comment markers', () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-tools.spec.js","sourceRoot":"","sources":["../src/session-tools.spec.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"session-tools.spec.js","sourceRoot":"","sources":["../src/session-tools.spec.ts"],"names":[],"mappings":"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"}
|