@mnemopay/sdk 0.1.0 → 0.3.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/LICENSE +21 -21
- package/README.md +193 -193
- package/dist/index.d.ts +73 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +332 -25
- package/dist/index.js.map +1 -1
- package/dist/langgraph/tools.d.ts.map +1 -1
- package/dist/langgraph/tools.js +13 -1
- package/dist/langgraph/tools.js.map +1 -1
- package/dist/mcp/server.d.ts +1 -0
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +59 -4
- package/dist/mcp/server.js.map +1 -1
- package/package.json +6 -4
package/dist/index.js
CHANGED
|
@@ -14,9 +14,54 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
14
14
|
exports.l2Normalize = exports.localEmbed = exports.cosineSimilarity = exports.RecallEngine = exports.MnemoPay = exports.MnemoPayLite = void 0;
|
|
15
15
|
exports.autoScore = autoScore;
|
|
16
16
|
exports.computeScore = computeScore;
|
|
17
|
-
|
|
18
|
-
const crypto_1 = require("crypto");
|
|
17
|
+
exports.reputationTier = reputationTier;
|
|
19
18
|
const engine_js_1 = require("./recall/engine.js");
|
|
19
|
+
class EventEmitter {
|
|
20
|
+
_events = new Map();
|
|
21
|
+
on(event, fn) {
|
|
22
|
+
const listeners = this._events.get(event) || [];
|
|
23
|
+
listeners.push(fn);
|
|
24
|
+
this._events.set(event, listeners);
|
|
25
|
+
return this;
|
|
26
|
+
}
|
|
27
|
+
emit(event, ...args) {
|
|
28
|
+
const listeners = this._events.get(event);
|
|
29
|
+
if (!listeners || listeners.length === 0)
|
|
30
|
+
return false;
|
|
31
|
+
for (const fn of listeners)
|
|
32
|
+
fn(...args);
|
|
33
|
+
return true;
|
|
34
|
+
}
|
|
35
|
+
removeListener(event, fn) {
|
|
36
|
+
const listeners = this._events.get(event);
|
|
37
|
+
if (listeners) {
|
|
38
|
+
this._events.set(event, listeners.filter(l => l !== fn));
|
|
39
|
+
}
|
|
40
|
+
return this;
|
|
41
|
+
}
|
|
42
|
+
removeAllListeners(event) {
|
|
43
|
+
if (event)
|
|
44
|
+
this._events.delete(event);
|
|
45
|
+
else
|
|
46
|
+
this._events.clear();
|
|
47
|
+
return this;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
// ─── Browser-compatible UUID ──────────────────────────────────────────────
|
|
51
|
+
function randomUUID() {
|
|
52
|
+
return crypto.randomUUID();
|
|
53
|
+
}
|
|
54
|
+
function reputationTier(score) {
|
|
55
|
+
if (score >= 0.9)
|
|
56
|
+
return "exemplary";
|
|
57
|
+
if (score >= 0.7)
|
|
58
|
+
return "trusted";
|
|
59
|
+
if (score >= 0.4)
|
|
60
|
+
return "established";
|
|
61
|
+
if (score >= 0.2)
|
|
62
|
+
return "newcomer";
|
|
63
|
+
return "untrusted";
|
|
64
|
+
}
|
|
20
65
|
// ─── Auto-scoring keywords ─────────────────────────────────────────────────
|
|
21
66
|
const IMPORTANCE_PATTERNS = [
|
|
22
67
|
{ pattern: /\b(error|fail|crash|critical|broken|bug)\b/i, boost: 0.20 },
|
|
@@ -44,7 +89,7 @@ function computeScore(importance, lastAccessed, accessCount, decay) {
|
|
|
44
89
|
return importance * recency * frequency;
|
|
45
90
|
}
|
|
46
91
|
// ─── MnemoPayLite (in-memory, zero dependencies) ───────────────────────────
|
|
47
|
-
class MnemoPayLite extends
|
|
92
|
+
class MnemoPayLite extends EventEmitter {
|
|
48
93
|
agentId;
|
|
49
94
|
decay;
|
|
50
95
|
debugMode;
|
|
@@ -54,22 +99,110 @@ class MnemoPayLite extends events_1.EventEmitter {
|
|
|
54
99
|
_wallet = 0;
|
|
55
100
|
_reputation = 0.5;
|
|
56
101
|
recallEngine;
|
|
102
|
+
_createdAt = new Date();
|
|
103
|
+
x402;
|
|
104
|
+
persistPath;
|
|
105
|
+
persistTimer;
|
|
57
106
|
constructor(agentId, decay = 0.05, debug = false, recallConfig) {
|
|
58
107
|
super();
|
|
59
108
|
this.agentId = agentId;
|
|
60
109
|
this.decay = decay;
|
|
61
110
|
this.debugMode = debug;
|
|
62
111
|
this.recallEngine = new engine_js_1.RecallEngine(recallConfig);
|
|
63
|
-
|
|
112
|
+
// Auto-detect persistence: MNEMOPAY_PERSIST_DIR env var or explicit enablePersistence()
|
|
113
|
+
const persistDir = typeof process !== "undefined" ? process.env?.MNEMOPAY_PERSIST_DIR : undefined;
|
|
114
|
+
if (persistDir) {
|
|
115
|
+
this.enablePersistence(persistDir);
|
|
116
|
+
}
|
|
117
|
+
this.log(`MnemoPayLite initialized (${this.persistPath ? "persistent" : "in-memory"} mode, recall: ${this.recallEngine.strategy})`);
|
|
64
118
|
setTimeout(() => this.emit("ready"), 0);
|
|
65
119
|
}
|
|
120
|
+
// ── Persistence ────────────────────────────────────────────────────────
|
|
121
|
+
enablePersistence(dir) {
|
|
122
|
+
try {
|
|
123
|
+
const fs = require("fs");
|
|
124
|
+
const path = require("path");
|
|
125
|
+
if (!fs.existsSync(dir))
|
|
126
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
127
|
+
this.persistPath = path.join(dir, `${this.agentId}.json`);
|
|
128
|
+
this._loadFromDisk();
|
|
129
|
+
// Auto-save every 30 seconds
|
|
130
|
+
this.persistTimer = setInterval(() => this._saveToDisk(), 30_000);
|
|
131
|
+
this.log(`Persistence enabled: ${this.persistPath}`);
|
|
132
|
+
}
|
|
133
|
+
catch (e) {
|
|
134
|
+
this.log(`Persistence unavailable (browser?): ${e}`);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
_loadFromDisk() {
|
|
138
|
+
if (!this.persistPath)
|
|
139
|
+
return;
|
|
140
|
+
try {
|
|
141
|
+
const fs = require("fs");
|
|
142
|
+
if (!fs.existsSync(this.persistPath))
|
|
143
|
+
return;
|
|
144
|
+
const raw = JSON.parse(fs.readFileSync(this.persistPath, "utf-8"));
|
|
145
|
+
// Restore memories
|
|
146
|
+
if (raw.memories) {
|
|
147
|
+
for (const m of raw.memories) {
|
|
148
|
+
m.createdAt = new Date(m.createdAt);
|
|
149
|
+
m.lastAccessed = new Date(m.lastAccessed);
|
|
150
|
+
this.memories.set(m.id, m);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
// Restore transactions
|
|
154
|
+
if (raw.transactions) {
|
|
155
|
+
for (const t of raw.transactions) {
|
|
156
|
+
t.createdAt = new Date(t.createdAt);
|
|
157
|
+
if (t.completedAt)
|
|
158
|
+
t.completedAt = new Date(t.completedAt);
|
|
159
|
+
this.transactions.set(t.id, t);
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
// Restore state
|
|
163
|
+
if (raw.wallet !== undefined)
|
|
164
|
+
this._wallet = raw.wallet;
|
|
165
|
+
if (raw.reputation !== undefined)
|
|
166
|
+
this._reputation = raw.reputation;
|
|
167
|
+
if (raw.createdAt)
|
|
168
|
+
this._createdAt = new Date(raw.createdAt);
|
|
169
|
+
if (raw.auditLog) {
|
|
170
|
+
this.auditLog = raw.auditLog.map((e) => ({ ...e, createdAt: new Date(e.createdAt) }));
|
|
171
|
+
}
|
|
172
|
+
this.log(`Loaded ${this.memories.size} memories, ${this.transactions.size} transactions from disk`);
|
|
173
|
+
}
|
|
174
|
+
catch (e) {
|
|
175
|
+
this.log(`Failed to load persisted data: ${e}`);
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
_saveToDisk() {
|
|
179
|
+
if (!this.persistPath)
|
|
180
|
+
return;
|
|
181
|
+
try {
|
|
182
|
+
const fs = require("fs");
|
|
183
|
+
const data = JSON.stringify({
|
|
184
|
+
agentId: this.agentId,
|
|
185
|
+
wallet: this._wallet,
|
|
186
|
+
reputation: this._reputation,
|
|
187
|
+
createdAt: this._createdAt.toISOString(),
|
|
188
|
+
memories: Array.from(this.memories.values()),
|
|
189
|
+
transactions: Array.from(this.transactions.values()),
|
|
190
|
+
auditLog: this.auditLog.slice(-500), // Keep last 500 entries
|
|
191
|
+
savedAt: new Date().toISOString(),
|
|
192
|
+
});
|
|
193
|
+
fs.writeFileSync(this.persistPath, data, "utf-8");
|
|
194
|
+
}
|
|
195
|
+
catch (e) {
|
|
196
|
+
this.log(`Failed to persist data: ${e}`);
|
|
197
|
+
}
|
|
198
|
+
}
|
|
66
199
|
log(msg) {
|
|
67
200
|
if (this.debugMode)
|
|
68
201
|
console.log(`[mnemopay:${this.agentId}] ${msg}`);
|
|
69
202
|
}
|
|
70
203
|
audit(action, details) {
|
|
71
204
|
const entry = {
|
|
72
|
-
id:
|
|
205
|
+
id: randomUUID(),
|
|
73
206
|
agentId: this.agentId,
|
|
74
207
|
action,
|
|
75
208
|
details,
|
|
@@ -82,7 +215,7 @@ class MnemoPayLite extends events_1.EventEmitter {
|
|
|
82
215
|
const importance = opts?.importance ?? autoScore(content);
|
|
83
216
|
const now = new Date();
|
|
84
217
|
const mem = {
|
|
85
|
-
id:
|
|
218
|
+
id: randomUUID(),
|
|
86
219
|
agentId: this.agentId,
|
|
87
220
|
content,
|
|
88
221
|
importance: Math.min(Math.max(importance, 0), 1),
|
|
@@ -98,6 +231,7 @@ class MnemoPayLite extends events_1.EventEmitter {
|
|
|
98
231
|
await this.recallEngine.embed(mem.id, content);
|
|
99
232
|
}
|
|
100
233
|
this.audit("memory:stored", { id: mem.id, content: content.slice(0, 100), importance: mem.importance });
|
|
234
|
+
this._saveToDisk();
|
|
101
235
|
this.emit("memory:stored", { id: mem.id, content, importance: mem.importance });
|
|
102
236
|
this.log(`Stored memory: "${content.slice(0, 60)}..." (importance: ${mem.importance.toFixed(2)})`);
|
|
103
237
|
return mem.id;
|
|
@@ -140,6 +274,7 @@ class MnemoPayLite extends events_1.EventEmitter {
|
|
|
140
274
|
if (existed) {
|
|
141
275
|
this.recallEngine.remove(id);
|
|
142
276
|
this.audit("memory:deleted", { id });
|
|
277
|
+
this._saveToDisk();
|
|
143
278
|
this.log(`Forgot memory: ${id}`);
|
|
144
279
|
}
|
|
145
280
|
return existed;
|
|
@@ -151,6 +286,7 @@ class MnemoPayLite extends events_1.EventEmitter {
|
|
|
151
286
|
mem.importance = Math.min(mem.importance + boost, 1.0);
|
|
152
287
|
mem.lastAccessed = new Date();
|
|
153
288
|
this.audit("memory:reinforced", { id, boost, newImportance: mem.importance });
|
|
289
|
+
this._saveToDisk();
|
|
154
290
|
this.log(`Reinforced memory ${id} by +${boost} → ${mem.importance.toFixed(2)}`);
|
|
155
291
|
}
|
|
156
292
|
async consolidate() {
|
|
@@ -168,6 +304,7 @@ class MnemoPayLite extends events_1.EventEmitter {
|
|
|
168
304
|
// Clean up embedding cache for pruned memories
|
|
169
305
|
this.recallEngine.removeBatch(prunedIds);
|
|
170
306
|
this.audit("memory:consolidated", { pruned });
|
|
307
|
+
this._saveToDisk();
|
|
171
308
|
this.log(`Consolidated: pruned ${pruned} stale memories`);
|
|
172
309
|
return pruned;
|
|
173
310
|
}
|
|
@@ -181,7 +318,7 @@ class MnemoPayLite extends events_1.EventEmitter {
|
|
|
181
318
|
`(reputation: ${this._reputation.toFixed(2)}, max: $${maxCharge.toFixed(2)})`);
|
|
182
319
|
}
|
|
183
320
|
const tx = {
|
|
184
|
-
id:
|
|
321
|
+
id: randomUUID(),
|
|
185
322
|
agentId: this.agentId,
|
|
186
323
|
amount,
|
|
187
324
|
reason,
|
|
@@ -190,6 +327,7 @@ class MnemoPayLite extends events_1.EventEmitter {
|
|
|
190
327
|
};
|
|
191
328
|
this.transactions.set(tx.id, tx);
|
|
192
329
|
this.audit("payment:pending", { id: tx.id, amount, reason });
|
|
330
|
+
this._saveToDisk();
|
|
193
331
|
this.emit("payment:pending", { id: tx.id, amount, reason });
|
|
194
332
|
this.log(`Charge created: $${amount.toFixed(2)} for "${reason}" (pending)`);
|
|
195
333
|
return { ...tx };
|
|
@@ -216,6 +354,7 @@ class MnemoPayLite extends events_1.EventEmitter {
|
|
|
216
354
|
}
|
|
217
355
|
}
|
|
218
356
|
this.audit("payment:completed", { id: tx.id, amount: tx.amount, reinforcedMemories: reinforced });
|
|
357
|
+
this._saveToDisk();
|
|
219
358
|
this.emit("payment:completed", { id: tx.id, amount: tx.amount });
|
|
220
359
|
this.log(`Settled $${tx.amount.toFixed(2)} → wallet: $${this._wallet.toFixed(2)}, ` +
|
|
221
360
|
`reputation: ${this._reputation.toFixed(2)}, reinforced: ${reinforced} memories`);
|
|
@@ -233,6 +372,7 @@ class MnemoPayLite extends events_1.EventEmitter {
|
|
|
233
372
|
}
|
|
234
373
|
tx.status = "refunded";
|
|
235
374
|
this.audit("payment:refunded", { id: tx.id, amount: tx.amount });
|
|
375
|
+
this._saveToDisk();
|
|
236
376
|
this.emit("payment:refunded", { id: tx.id });
|
|
237
377
|
this.log(`Refunded $${tx.amount.toFixed(2)} → reputation: ${this._reputation.toFixed(2)}`);
|
|
238
378
|
return { ...tx };
|
|
@@ -259,13 +399,98 @@ class MnemoPayLite extends events_1.EventEmitter {
|
|
|
259
399
|
all.reverse();
|
|
260
400
|
return all.slice(0, limit).map((tx) => ({ ...tx }));
|
|
261
401
|
}
|
|
402
|
+
// ── Reputation ──────────────────────────────────────────────────────────
|
|
403
|
+
async reputation() {
|
|
404
|
+
const txs = Array.from(this.transactions.values());
|
|
405
|
+
const settled = txs.filter((t) => t.status === "completed");
|
|
406
|
+
const refunded = txs.filter((t) => t.status === "refunded");
|
|
407
|
+
const totalCompleted = settled.length + refunded.length;
|
|
408
|
+
const settlementRate = totalCompleted > 0 ? settled.length / totalCompleted : 0;
|
|
409
|
+
const totalValueSettled = settled.reduce((sum, t) => sum + t.amount, 0);
|
|
410
|
+
const mems = Array.from(this.memories.values());
|
|
411
|
+
const avgImportance = mems.length > 0
|
|
412
|
+
? mems.reduce((sum, m) => sum + m.importance, 0) / mems.length
|
|
413
|
+
: 0;
|
|
414
|
+
const ageHours = (Date.now() - this._createdAt.getTime()) / 3_600_000;
|
|
415
|
+
const report = {
|
|
416
|
+
agentId: this.agentId,
|
|
417
|
+
score: this._reputation,
|
|
418
|
+
tier: reputationTier(this._reputation),
|
|
419
|
+
settledCount: settled.length,
|
|
420
|
+
refundCount: refunded.length,
|
|
421
|
+
settlementRate,
|
|
422
|
+
totalValueSettled,
|
|
423
|
+
memoriesCount: this.memories.size,
|
|
424
|
+
avgMemoryImportance: Math.round(avgImportance * 100) / 100,
|
|
425
|
+
ageHours: Math.round(ageHours * 10) / 10,
|
|
426
|
+
generatedAt: new Date(),
|
|
427
|
+
};
|
|
428
|
+
this.log(`Reputation: ${report.tier} (${report.score.toFixed(2)}), ${report.settledCount} settled, rate: ${(report.settlementRate * 100).toFixed(0)}%`);
|
|
429
|
+
return report;
|
|
430
|
+
}
|
|
431
|
+
// ── A2A Agent Card ─────────────────────────────────────────────────────
|
|
432
|
+
agentCard(url, contact) {
|
|
433
|
+
return {
|
|
434
|
+
name: `MnemoPay Agent (${this.agentId})`,
|
|
435
|
+
description: "AI agent with persistent cognitive memory and micropayment capabilities via MnemoPay protocol.",
|
|
436
|
+
url,
|
|
437
|
+
version: "0.2.0",
|
|
438
|
+
capabilities: {
|
|
439
|
+
memory: true,
|
|
440
|
+
payments: true,
|
|
441
|
+
reputation: true,
|
|
442
|
+
},
|
|
443
|
+
protocols: ["mcp", "a2a"],
|
|
444
|
+
tools: [
|
|
445
|
+
"remember", "recall", "forget", "reinforce", "consolidate",
|
|
446
|
+
"charge", "settle", "refund", "balance", "profile",
|
|
447
|
+
"reputation", "logs", "history",
|
|
448
|
+
],
|
|
449
|
+
contact,
|
|
450
|
+
};
|
|
451
|
+
}
|
|
452
|
+
// ── x402 Settlement ────────────────────────────────────────────────────
|
|
453
|
+
configureX402(config) {
|
|
454
|
+
this.x402 = config;
|
|
455
|
+
this.log(`x402 configured: ${config.facilitatorUrl} (${config.token || "USDC"} on ${config.chain || "base"})`);
|
|
456
|
+
}
|
|
457
|
+
async settleViaX402(txId) {
|
|
458
|
+
if (!this.x402)
|
|
459
|
+
throw new Error("x402 not configured. Call configureX402() first.");
|
|
460
|
+
const tx = this.transactions.get(txId);
|
|
461
|
+
if (!tx)
|
|
462
|
+
throw new Error(`Transaction ${txId} not found`);
|
|
463
|
+
if (tx.status !== "pending")
|
|
464
|
+
throw new Error(`Transaction ${txId} is ${tx.status}, not pending`);
|
|
465
|
+
// Submit payment to x402 facilitator
|
|
466
|
+
const res = await fetch(`${this.x402.facilitatorUrl}/payments`, {
|
|
467
|
+
method: "POST",
|
|
468
|
+
headers: { "Content-Type": "application/json" },
|
|
469
|
+
body: JSON.stringify({
|
|
470
|
+
amount: tx.amount,
|
|
471
|
+
token: this.x402.token || "USDC",
|
|
472
|
+
chain: this.x402.chain || "base",
|
|
473
|
+
from: this.x402.walletAddress,
|
|
474
|
+
memo: `mnemopay:${tx.id}:${tx.reason}`,
|
|
475
|
+
}),
|
|
476
|
+
});
|
|
477
|
+
if (!res.ok) {
|
|
478
|
+
const body = await res.text().catch(() => "");
|
|
479
|
+
throw new Error(`x402 settlement failed (${res.status}): ${body}`);
|
|
480
|
+
}
|
|
481
|
+
// On success, settle locally
|
|
482
|
+
return this.settle(txId);
|
|
483
|
+
}
|
|
262
484
|
async disconnect() {
|
|
263
|
-
this.
|
|
485
|
+
this._saveToDisk();
|
|
486
|
+
if (this.persistTimer)
|
|
487
|
+
clearInterval(this.persistTimer);
|
|
488
|
+
this.log("Disconnected" + (this.persistPath ? " (data saved to disk)" : " (in-memory mode, data discarded)"));
|
|
264
489
|
}
|
|
265
490
|
}
|
|
266
491
|
exports.MnemoPayLite = MnemoPayLite;
|
|
267
492
|
// ─── MnemoPay (production — talks to Mnemosyne + AgentPay backends) ────────
|
|
268
|
-
class MnemoPay extends
|
|
493
|
+
class MnemoPay extends EventEmitter {
|
|
269
494
|
agentId;
|
|
270
495
|
config;
|
|
271
496
|
headers;
|
|
@@ -331,7 +556,7 @@ class MnemoPay extends events_1.EventEmitter {
|
|
|
331
556
|
// ── Memory Methods (→ Mnemosyne API) ───────────────────────────────────
|
|
332
557
|
async remember(content, opts) {
|
|
333
558
|
const importance = opts?.importance ?? autoScore(content);
|
|
334
|
-
const result = await this.mnemoFetch("/v1/
|
|
559
|
+
const result = await this.mnemoFetch("/v1/memories", {
|
|
335
560
|
method: "POST",
|
|
336
561
|
body: JSON.stringify({
|
|
337
562
|
content,
|
|
@@ -350,7 +575,7 @@ class MnemoPay extends events_1.EventEmitter {
|
|
|
350
575
|
async recall(queryOrLimit, maybeLimit) {
|
|
351
576
|
const query = typeof queryOrLimit === "string" ? queryOrLimit : "*";
|
|
352
577
|
const limit = typeof queryOrLimit === "number" ? queryOrLimit : (maybeLimit ?? 5);
|
|
353
|
-
const result = await this.mnemoFetch("/v1/
|
|
578
|
+
const result = await this.mnemoFetch("/v1/memories/search", {
|
|
354
579
|
method: "POST",
|
|
355
580
|
body: JSON.stringify({
|
|
356
581
|
query,
|
|
@@ -358,24 +583,28 @@ class MnemoPay extends events_1.EventEmitter {
|
|
|
358
583
|
min_retrievability: 0.01,
|
|
359
584
|
}),
|
|
360
585
|
});
|
|
361
|
-
const memories = (result.results || []).map((r) =>
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
586
|
+
const memories = (result.results || []).map((r) => {
|
|
587
|
+
// API returns { memory: {...}, score: ... } per result
|
|
588
|
+
const m = r.memory || r;
|
|
589
|
+
return {
|
|
590
|
+
id: m.id,
|
|
591
|
+
agentId: this.agentId,
|
|
592
|
+
content: m.content,
|
|
593
|
+
importance: m.retrievability ?? 0.5,
|
|
594
|
+
score: r.score ?? m.score ?? 0,
|
|
595
|
+
createdAt: new Date((m.created_at || Date.now()) * 1000),
|
|
596
|
+
lastAccessed: new Date(),
|
|
597
|
+
accessCount: m.access_count ?? 0,
|
|
598
|
+
tags: m.tags ?? [],
|
|
599
|
+
};
|
|
600
|
+
});
|
|
372
601
|
this.emit("memory:recalled", { count: memories.length });
|
|
373
602
|
this.log(`Recalled ${memories.length} memories`);
|
|
374
603
|
return memories;
|
|
375
604
|
}
|
|
376
605
|
async forget(id) {
|
|
377
606
|
try {
|
|
378
|
-
await this.mnemoFetch(`/v1/
|
|
607
|
+
await this.mnemoFetch(`/v1/memories/${id}`, { method: "DELETE" });
|
|
379
608
|
this.log(`Forgot memory: ${id}`);
|
|
380
609
|
return true;
|
|
381
610
|
}
|
|
@@ -384,14 +613,14 @@ class MnemoPay extends events_1.EventEmitter {
|
|
|
384
613
|
}
|
|
385
614
|
}
|
|
386
615
|
async reinforce(id, boost = 0.1) {
|
|
387
|
-
await this.mnemoFetch(`/v1/
|
|
616
|
+
await this.mnemoFetch(`/v1/memories/${id}/review`, {
|
|
388
617
|
method: "POST",
|
|
389
618
|
body: JSON.stringify({ grade: boost >= 0.15 ? 4 : 3 }),
|
|
390
619
|
});
|
|
391
620
|
this.log(`Reinforced memory ${id}`);
|
|
392
621
|
}
|
|
393
622
|
async consolidate() {
|
|
394
|
-
const result = await this.mnemoFetch("/v1/consolidate", {
|
|
623
|
+
const result = await this.mnemoFetch("/v1/memories/consolidate", {
|
|
395
624
|
method: "POST",
|
|
396
625
|
body: JSON.stringify({ namespace: `agent:${this.agentId}`, scope: "incremental", dry_run: false }),
|
|
397
626
|
});
|
|
@@ -427,6 +656,7 @@ class MnemoPay extends events_1.EventEmitter {
|
|
|
427
656
|
async settle(txId) {
|
|
428
657
|
const result = await this.agentpayFetch(`/api/escrow/${txId}/release`, {
|
|
429
658
|
method: "POST",
|
|
659
|
+
body: JSON.stringify({}),
|
|
430
660
|
});
|
|
431
661
|
this.emit("payment:completed", { id: txId, amount: result.amount });
|
|
432
662
|
this.log(`Settled: $${result.amount?.toFixed(2)}`);
|
|
@@ -443,6 +673,7 @@ class MnemoPay extends events_1.EventEmitter {
|
|
|
443
673
|
async refund(txId) {
|
|
444
674
|
const result = await this.agentpayFetch(`/api/escrow/${txId}/refund`, {
|
|
445
675
|
method: "POST",
|
|
676
|
+
body: JSON.stringify({}),
|
|
446
677
|
});
|
|
447
678
|
this.emit("payment:refunded", { id: txId });
|
|
448
679
|
this.log(`Refunded: ${txId}`);
|
|
@@ -498,6 +729,82 @@ class MnemoPay extends events_1.EventEmitter {
|
|
|
498
729
|
completedAt: t.completedAt ? new Date(t.completedAt) : undefined,
|
|
499
730
|
}));
|
|
500
731
|
}
|
|
732
|
+
// ── Reputation ──────────────────────────────────────────────────────────
|
|
733
|
+
async reputation() {
|
|
734
|
+
const [prof, txs] = await Promise.all([
|
|
735
|
+
this.profile(),
|
|
736
|
+
this.history(1000),
|
|
737
|
+
]);
|
|
738
|
+
const settled = txs.filter((t) => t.status === "completed");
|
|
739
|
+
const refunded = txs.filter((t) => t.status === "refunded");
|
|
740
|
+
const totalCompleted = settled.length + refunded.length;
|
|
741
|
+
const settlementRate = totalCompleted > 0 ? settled.length / totalCompleted : 0;
|
|
742
|
+
const totalValueSettled = settled.reduce((sum, t) => sum + t.amount, 0);
|
|
743
|
+
return {
|
|
744
|
+
agentId: this.agentId,
|
|
745
|
+
score: prof.reputation,
|
|
746
|
+
tier: reputationTier(prof.reputation),
|
|
747
|
+
settledCount: settled.length,
|
|
748
|
+
refundCount: refunded.length,
|
|
749
|
+
settlementRate,
|
|
750
|
+
totalValueSettled,
|
|
751
|
+
memoriesCount: prof.memoriesCount,
|
|
752
|
+
avgMemoryImportance: 0, // not available via API
|
|
753
|
+
ageHours: 0, // not tracked server-side yet
|
|
754
|
+
generatedAt: new Date(),
|
|
755
|
+
};
|
|
756
|
+
}
|
|
757
|
+
// ── A2A Agent Card ─────────────────────────────────────────────────────
|
|
758
|
+
agentCard(url, contact) {
|
|
759
|
+
return {
|
|
760
|
+
name: `MnemoPay Agent (${this.agentId})`,
|
|
761
|
+
description: "AI agent with persistent cognitive memory and micropayment capabilities via MnemoPay protocol.",
|
|
762
|
+
url,
|
|
763
|
+
version: "0.2.0",
|
|
764
|
+
capabilities: {
|
|
765
|
+
memory: true,
|
|
766
|
+
payments: true,
|
|
767
|
+
reputation: true,
|
|
768
|
+
},
|
|
769
|
+
protocols: ["mcp", "a2a"],
|
|
770
|
+
tools: [
|
|
771
|
+
"remember", "recall", "forget", "reinforce", "consolidate",
|
|
772
|
+
"charge", "settle", "refund", "balance", "profile",
|
|
773
|
+
"reputation", "logs", "history",
|
|
774
|
+
],
|
|
775
|
+
contact,
|
|
776
|
+
};
|
|
777
|
+
}
|
|
778
|
+
// ── x402 Settlement ────────────────────────────────────────────────────
|
|
779
|
+
x402;
|
|
780
|
+
configureX402(config) {
|
|
781
|
+
this.x402 = config;
|
|
782
|
+
this.log(`x402 configured: ${config.facilitatorUrl} (${config.token || "USDC"} on ${config.chain || "base"})`);
|
|
783
|
+
}
|
|
784
|
+
async settleViaX402(txId) {
|
|
785
|
+
if (!this.x402)
|
|
786
|
+
throw new Error("x402 not configured. Call configureX402() first.");
|
|
787
|
+
// Get transaction details from AgentPay
|
|
788
|
+
const txData = await this.agentpayFetch(`/api/escrow/${txId}`);
|
|
789
|
+
// Submit to x402 facilitator
|
|
790
|
+
const res = await fetch(`${this.x402.facilitatorUrl}/payments`, {
|
|
791
|
+
method: "POST",
|
|
792
|
+
headers: { "Content-Type": "application/json" },
|
|
793
|
+
body: JSON.stringify({
|
|
794
|
+
amount: txData.amount,
|
|
795
|
+
token: this.x402.token || "USDC",
|
|
796
|
+
chain: this.x402.chain || "base",
|
|
797
|
+
from: this.x402.walletAddress,
|
|
798
|
+
memo: `mnemopay:${txId}:${txData.reason || ""}`,
|
|
799
|
+
}),
|
|
800
|
+
});
|
|
801
|
+
if (!res.ok) {
|
|
802
|
+
const body = await res.text().catch(() => "");
|
|
803
|
+
throw new Error(`x402 settlement failed (${res.status}): ${body}`);
|
|
804
|
+
}
|
|
805
|
+
// On success, settle in AgentPay
|
|
806
|
+
return this.settle(txId);
|
|
807
|
+
}
|
|
501
808
|
async disconnect() {
|
|
502
809
|
this.log("Disconnected");
|
|
503
810
|
}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;AA8pBM,8BAAS;AAAE,oCAAY;AA5pBhC,mCAAsC;AACtC,mCAAoC;AACpC,kDAAwH;AAkFxH,8EAA8E;AAE9E,MAAM,mBAAmB,GAA8C;IACrE,EAAE,OAAO,EAAE,6CAA6C,EAAE,KAAK,EAAE,IAAI,EAAE;IACvE,EAAE,OAAO,EAAE,iDAAiD,EAAE,KAAK,EAAE,IAAI,EAAE;IAC3E,EAAE,OAAO,EAAE,mDAAmD,EAAE,KAAK,EAAE,IAAI,EAAE;CAC9E,CAAC;AAEF,MAAM,sBAAsB,GAAG,GAAG,CAAC;AACnC,MAAM,kBAAkB,GAAG,IAAI,CAAC;AAChC,MAAM,eAAe,GAAG,IAAI,CAAC;AAE7B,SAAS,SAAS,CAAC,OAAe;IAChC,IAAI,KAAK,GAAG,eAAe,CAAC;IAC5B,IAAI,OAAO,CAAC,MAAM,GAAG,sBAAsB;QAAE,KAAK,IAAI,kBAAkB,CAAC;IACzE,KAAK,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,mBAAmB,EAAE,CAAC;QACrD,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,KAAK,IAAI,KAAK,CAAC;IAC5C,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC9B,CAAC;AAED,8EAA8E;AAE9E,SAAS,YAAY,CACnB,UAAkB,EAClB,YAAkB,EAClB,WAAmB,EACnB,KAAa;IAEb,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,YAAY,CAAC,OAAO,EAAE,CAAC,GAAG,SAAS,CAAC;IACrE,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC;IAC9C,MAAM,SAAS,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC;IAChD,OAAO,UAAU,GAAG,OAAO,GAAG,SAAS,CAAC;AAC1C,CAAC;AAED,8EAA8E;AAE9E,MAAa,YAAa,SAAQ,qBAAY;IACnC,OAAO,CAAS;IACjB,KAAK,CAAS;IACd,SAAS,CAAU;IACnB,QAAQ,GAAwB,IAAI,GAAG,EAAE,CAAC;IAC1C,YAAY,GAA6B,IAAI,GAAG,EAAE,CAAC;IACnD,QAAQ,GAAiB,EAAE,CAAC;IAC5B,OAAO,GAAW,CAAC,CAAC;IACpB,WAAW,GAAW,GAAG,CAAC;IAC1B,YAAY,CAAe;IAEnC,YAAY,OAAe,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,GAAG,KAAK,EAAE,YAA0C;QAClG,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,IAAI,wBAAY,CAAC,YAAY,CAAC,CAAC;QACnD,IAAI,CAAC,GAAG,CAAC,qDAAqD,IAAI,CAAC,YAAY,CAAC,QAAQ,GAAG,CAAC,CAAC;QAC7F,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1C,CAAC;IAEO,GAAG,CAAC,GAAW;QACrB,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,OAAO,KAAK,GAAG,EAAE,CAAC,CAAC;IACvE,CAAC;IAEO,KAAK,CAAC,MAAc,EAAE,OAAgC;QAC5D,MAAM,KAAK,GAAe;YACxB,EAAE,EAAE,IAAA,mBAAU,GAAE;YAChB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM;YACN,OAAO;YACP,SAAS,EAAE,IAAI,IAAI,EAAE;SACtB,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,2EAA2E;IAE3E,KAAK,CAAC,QAAQ,CAAC,OAAe,EAAE,IAAsB;QACpD,MAAM,UAAU,GAAG,IAAI,EAAE,UAAU,IAAI,SAAS,CAAC,OAAO,CAAC,CAAC;QAC1D,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,GAAG,GAAW;YAClB,EAAE,EAAE,IAAA,mBAAU,GAAE;YAChB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO;YACP,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YAChD,KAAK,EAAE,UAAU;YACjB,SAAS,EAAE,GAAG;YACd,YAAY,EAAE,GAAG;YACjB,WAAW,EAAE,CAAC;YACd,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE;SACvB,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QAE/B,mDAAmD;QACnD,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YAC3C,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QACjD,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;QACxG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;QAChF,IAAI,CAAC,GAAG,CAAC,mBAAmB,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,qBAAqB,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACnG,OAAO,GAAG,CAAC,EAAE,CAAC;IAChB,CAAC;IAID,KAAK,CAAC,MAAM,CAAC,YAA8B,EAAE,UAAmB;QAC9D,wBAAwB;QACxB,MAAM,KAAK,GAAG,OAAO,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1E,MAAM,KAAK,GAAG,OAAO,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC;QAElF,wCAAwC;QACxC,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACvD,CAAC,CAAC,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;YAChF,OAAO,CAAC,CAAC;QACX,CAAC,CAAC,CAAC;QAEH,IAAI,OAAiB,CAAC;QAEtB,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,KAAK,OAAO,IAAI,KAAK,EAAE,CAAC;YACpD,0CAA0C;YAC1C,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;YACxE,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBAChC,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAE,CAAC;gBACrC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,aAAa,CAAC;gBAC5B,OAAO,GAAG,CAAC;YACb,CAAC,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,+BAA+B;YAC/B,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;YACtC,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QAChC,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,CAAC,CAAC,YAAY,GAAG,GAAG,CAAC;YACrB,CAAC,CAAC,WAAW,EAAE,CAAC;QAClB,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QACxD,IAAI,CAAC,GAAG,CAAC,YAAY,OAAO,CAAC,MAAM,wBAAwB,IAAI,CAAC,YAAY,CAAC,QAAQ,GAAG,CAAC,CAAC;QAC1F,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU;QACrB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACzC,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC7B,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;YACrC,IAAI,CAAC,GAAG,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;QACnC,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,EAAU,EAAE,KAAK,GAAG,GAAG;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClC,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QACpD,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,GAAG,KAAK,EAAE,GAAG,CAAC,CAAC;QACvD,GAAG,CAAC,YAAY,GAAG,IAAI,IAAI,EAAE,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,mBAAmB,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;QAC9E,IAAI,CAAC,GAAG,CAAC,qBAAqB,EAAE,QAAQ,KAAK,MAAM,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAClF,CAAC;IAED,KAAK,CAAC,WAAW;QACf,MAAM,SAAS,GAAG,IAAI,CAAC;QACvB,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,MAAM,SAAS,GAAa,EAAE,CAAC;QAC/B,KAAK,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACtC,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,YAAY,EAAE,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;YAC1F,IAAI,KAAK,GAAG,SAAS,EAAE,CAAC;gBACtB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACzB,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACnB,MAAM,EAAE,CAAC;YACX,CAAC;QACH,CAAC;QACD,+CAA+C;QAC/C,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QACzC,IAAI,CAAC,KAAK,CAAC,qBAAqB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QAC9C,IAAI,CAAC,GAAG,CAAC,wBAAwB,MAAM,iBAAiB,CAAC,CAAC;QAC1D,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,2EAA2E;IAE3E,KAAK,CAAC,MAAM,CAAC,MAAc,EAAE,MAAc;QACzC,IAAI,MAAM,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC5D,MAAM,SAAS,GAAG,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC;QACzC,IAAI,MAAM,GAAG,SAAS,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CACb,WAAW,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,gCAAgC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG;gBACnF,gBAAgB,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAC9E,CAAC;QACJ,CAAC;QACD,MAAM,EAAE,GAAgB;YACtB,EAAE,EAAE,IAAA,mBAAU,GAAE;YAChB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM;YACN,MAAM;YACN,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,IAAI,IAAI,EAAE;SACtB,CAAC;QACF,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACjC,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAC7D,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAC5D,IAAI,CAAC,GAAG,CAAC,oBAAoB,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,MAAM,aAAa,CAAC,CAAC;QAC5E,OAAO,EAAE,GAAG,EAAE,EAAE,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAY;QACvB,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,eAAe,IAAI,YAAY,CAAC,CAAC;QAC1D,IAAI,EAAE,CAAC,MAAM,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,eAAe,IAAI,OAAO,EAAE,CAAC,MAAM,eAAe,CAAC,CAAC;QAEjG,0BAA0B;QAC1B,EAAE,CAAC,MAAM,GAAG,WAAW,CAAC;QACxB,EAAE,CAAC,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,MAAM,CAAC;QAE1B,sBAAsB;QACtB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,GAAG,IAAI,EAAE,GAAG,CAAC,CAAC;QAE1D,0DAA0D;QAC1D,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QAC1C,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YACzC,IAAI,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,GAAG,UAAU,EAAE,CAAC;gBAC5C,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,GAAG,IAAI,EAAE,GAAG,CAAC,CAAC;gBACtD,UAAU,EAAE,CAAC;YACf,CAAC;QACH,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,mBAAmB,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,kBAAkB,EAAE,UAAU,EAAE,CAAC,CAAC;QAClG,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;QACjE,IAAI,CAAC,GAAG,CACN,YAAY,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;YAC1E,eAAe,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,UAAU,WAAW,CACjF,CAAC;QACF,OAAO,EAAE,GAAG,EAAE,EAAE,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAY;QACvB,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,eAAe,IAAI,YAAY,CAAC,CAAC;QAC1D,IAAI,EAAE,CAAC,MAAM,KAAK,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,eAAe,IAAI,mBAAmB,CAAC,CAAC;QAEtF,IAAI,EAAE,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YAC9B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YACrD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC;QAC1D,CAAC;QACD,EAAE,CAAC,MAAM,GAAG,UAAU,CAAC;QAEvB,IAAI,CAAC,KAAK,CAAC,kBAAkB,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;QACjE,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QAC7C,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,kBAAkB,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC3F,OAAO,EAAE,GAAG,EAAE,EAAE,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,OAAO;QACX,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;IAChE,CAAC;IAED,2EAA2E;IAE3E,KAAK,CAAC,OAAO;QACX,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,OAAO;YAChB,UAAU,EAAE,IAAI,CAAC,WAAW;YAC5B,MAAM,EAAE,IAAI,CAAC,OAAO;YACpB,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;YACjC,iBAAiB,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI;SAC1C,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE;QACnB,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE;QACtB,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC;QACnD,0DAA0D;QAC1D,GAAG,CAAC,OAAO,EAAE,CAAC;QACd,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,UAAU;QACd,IAAI,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;IAC5D,CAAC;CACF;AAvPD,oCAuPC;AAED,8EAA8E;AAE9E,MAAa,QAAS,SAAQ,qBAAY;IAC/B,OAAO,CAAS;IACjB,MAAM,CAEwC;IAC9C,OAAO,CAAyB;IAExC,YAAY,MAAsB;QAChC,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,MAAM,GAAG;YACZ,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,uBAAuB;YACpD,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,uBAAuB;YAC1D,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,IAAI;YAC3B,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,KAAK;YAC5B,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,cAAc,EAAE,MAAM,CAAC,cAAc;SACtC,CAAC;QACF,IAAI,CAAC,OAAO,GAAG;YACb,cAAc,EAAE,kBAAkB;YAClC,YAAY,EAAE,IAAI,CAAC,OAAO;SAC3B,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;QACnD,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;IAEO,KAAK,CAAC,IAAI;QAChB,IAAI,CAAC;YACH,mDAAmD;YACnD,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE;gBACtC,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;aACpE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YACnB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrB,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IAEO,GAAG,CAAC,GAAW;QACrB,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,OAAO,KAAK,GAAG,EAAE,CAAC,CAAC;IAC1E,CAAC;IAEO,KAAK,CAAC,UAAU,CAAC,IAAY,EAAE,IAAkB;QACvD,MAAM,OAAO,GAA2B,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC5D,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW;YAAE,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QAC5F,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;QAClH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;YAC9C,MAAM,IAAI,KAAK,CAAC,aAAa,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;QACtD,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxC,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,IAAY,EAAE,IAAkB;QAC1D,MAAM,OAAO,GAA2B,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC5D,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc;YAAE,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;QAClG,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,IAAI,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;QACrH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;YAC9C,MAAM,IAAI,KAAK,CAAC,YAAY,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;QACrD,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxC,CAAC;IAED,0EAA0E;IAE1E,KAAK,CAAC,QAAQ,CAAC,OAAe,EAAE,IAAsB;QACpD,MAAM,UAAU,GAAG,IAAI,EAAE,UAAU,IAAI,SAAS,CAAC,OAAO,CAAC,CAAC;QAC1D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE;YACjD,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,OAAO;gBACP,IAAI,EAAE,WAAW;gBACjB,QAAQ,EAAE;oBACR,WAAW,EAAE,aAAa;oBAC1B,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE;oBACtB,UAAU,EAAE,UAAU;iBACvB;aACF,CAAC;SACH,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;QACnE,IAAI,CAAC,GAAG,CAAC,mBAAmB,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC;QAC3E,OAAO,MAAM,CAAC,EAAE,CAAC;IACnB,CAAC;IAID,KAAK,CAAC,MAAM,CAAC,YAA8B,EAAE,UAAmB;QAC9D,MAAM,KAAK,GAAG,OAAO,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC;QACpE,MAAM,KAAK,GAAG,OAAO,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC;QAElF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,mBAAmB,EAAE;YACxD,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,KAAK;gBACL,KAAK,EAAE,KAAK;gBACZ,kBAAkB,EAAE,IAAI;aACzB,CAAC;SACH,CAAC,CAAC;QACH,MAAM,QAAQ,GAAa,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;YACjE,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,UAAU,EAAE,CAAC,CAAC,cAAc,IAAI,GAAG;YACnC,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC;YACnB,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YAC/C,YAAY,EAAE,IAAI,IAAI,EAAE;YACxB,WAAW,EAAE,CAAC,CAAC,YAAY,IAAI,CAAC;YAChC,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,EAAE;SACnB,CAAC,CAAC,CAAC;QACJ,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QACzD,IAAI,CAAC,GAAG,CAAC,YAAY,QAAQ,CAAC,MAAM,WAAW,CAAC,CAAC;QACjD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU;QACrB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;YAChE,IAAI,CAAC,GAAG,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;YACjC,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,EAAU,EAAE,KAAK,GAAG,GAAG;QACrC,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,SAAS,EAAE;YAC/C,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SACvD,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,qBAAqB,EAAE,EAAE,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,WAAW;QACf,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE;YACtD,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,SAAS,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;SACnG,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,CAAC;QAClD,IAAI,CAAC,GAAG,CAAC,wBAAwB,MAAM,iBAAiB,CAAC,CAAC;QAC1D,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,0EAA0E;IAE1E,KAAK,CAAC,MAAM,CAAC,MAAc,EAAE,MAAc;QACzC,IAAI,MAAM,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC5D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE;YACrD,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,MAAM;gBACN,MAAM;gBACN,QAAQ,EAAE,KAAK;aAChB,CAAC;SACH,CAAC,CAAC;QACH,MAAM,EAAE,GAAgB;YACtB,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM;YACN,MAAM;YACN,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;SACpD,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAC5D,IAAI,CAAC,GAAG,CAAC,oBAAoB,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,CAAC,CAAC;QAClE,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAY;QACvB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,IAAI,UAAU,EAAE;YACrE,MAAM,EAAE,MAAM;SACf,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QACpE,IAAI,CAAC,GAAG,CAAC,aAAa,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACnD,OAAO;YACL,EAAE,EAAE,IAAI;YACR,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;YAC3B,MAAM,EAAE,WAAW;YACnB,SAAS,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YACnD,WAAW,EAAE,IAAI,IAAI,EAAE;SACxB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAY;QACvB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,IAAI,SAAS,EAAE;YACpE,MAAM,EAAE,MAAM;SACf,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5C,IAAI,CAAC,GAAG,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;QAC9B,OAAO;YACL,EAAE,EAAE,IAAI;YACR,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;YAC3B,MAAM,EAAE,UAAU;YAClB,SAAS,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;SACpD,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO;QACX,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,IAAI,CAAC,OAAO,SAAS,CAAC,CAAC;QAC9E,OAAO;YACL,MAAM,EAAE,MAAM,CAAC,OAAO,IAAI,CAAC;YAC3B,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,GAAG;SACrC,CAAC;IACJ,CAAC;IAED,yEAAyE;IAEzE,KAAK,CAAC,OAAO;QACX,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACzC,IAAI,CAAC,aAAa,CAAC,eAAe,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;YACnE,IAAI,CAAC,OAAO,EAAE;SACf,CAAC,CAAC;QACH,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,OAAO;YAChB,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,aAAa,EAAE,SAAS,EAAE,aAAa,IAAI,CAAC;YAC5C,iBAAiB,EAAE,SAAS,EAAE,iBAAiB,IAAI,CAAC;SACrD,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE;QACnB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,2BAA2B,KAAK,EAAE,CAAC,CAAC;QAC5E,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;YACvD,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO;YAClC,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI;YAC1B,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,IAAI,EAAE;YAClC,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;SAC9D,CAAC,CAAC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE;QACtB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,IAAI,CAAC,OAAO,uBAAuB,KAAK,EAAE,CAAC,CAAC;QACnG,OAAO,CAAC,MAAM,CAAC,YAAY,IAAI,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;YAC5D,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO;YAClC,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,WAAW,IAAI,EAAE;YACvC,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YAC9C,WAAW,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS;SACjE,CAAC,CAAC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,UAAU;QACd,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAC3B,CAAC;IAED,yEAAyE;IAEzE;;;OAGG;IACH,MAAM,CAAC,KAAK,CAAC,OAAe,EAAE,IAQ7B;QACC,MAAM,YAAY,GAA4C,IAAI,EAAE,MAAM;YACxE,CAAC,CAAC;gBACE,QAAQ,EAAE,IAAI,CAAC,MAAM;gBACrB,iBAAiB,EAAE,IAAI,CAAC,UAAU;gBAClC,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,YAAY,EAAE,IAAI,CAAC,YAAY;aAChC;YACH,CAAC,CAAC,SAAS,CAAC;QACd,OAAO,IAAI,YAAY,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,KAAK,EAAE,YAAY,CAAC,CAAC;IAC5F,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,MAAM,CAAC,MAAsB;QAClC,OAAO,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;CACF;AAnSD,4BAmSC;AAED,+EAA+E;AAE/E,kBAAe,QAAQ,CAAC;AAExB,gDAA6F;AAApF,yGAAA,YAAY,OAAA;AAAE,6GAAA,gBAAgB,OAAA;AAAE,uGAAA,UAAU,OAAA;AAAE,wGAAA,WAAW,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;AA+hCM,8BAAS;AAAE,oCAAY;AAAE,wCAAc;AA7hChD,kDAAwH;AAOxH,MAAM,YAAY;IACR,OAAO,GAA4B,IAAI,GAAG,EAAE,CAAC;IAErD,EAAE,CAAC,KAAa,EAAE,EAAY;QAC5B,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAChD,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACnB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC,KAAa,EAAE,GAAG,IAAW;QAChC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC1C,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACvD,KAAK,MAAM,EAAE,IAAI,SAAS;YAAE,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;QACxC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,cAAc,CAAC,KAAa,EAAE,EAAY;QACxC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC1C,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,kBAAkB,CAAC,KAAc;QAC/B,IAAI,KAAK;YAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;;YACjC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAED,6EAA6E;AAE7E,SAAS,UAAU;IACjB,OAAO,MAAM,CAAC,UAAU,EAAE,CAAC;AAC7B,CAAC;AA4GD,SAAS,cAAc,CAAC,KAAa;IACnC,IAAI,KAAK,IAAI,GAAG;QAAE,OAAO,WAAW,CAAC;IACrC,IAAI,KAAK,IAAI,GAAG;QAAE,OAAO,SAAS,CAAC;IACnC,IAAI,KAAK,IAAI,GAAG;QAAE,OAAO,aAAa,CAAC;IACvC,IAAI,KAAK,IAAI,GAAG;QAAE,OAAO,UAAU,CAAC;IACpC,OAAO,WAAW,CAAC;AACrB,CAAC;AAgCD,8EAA8E;AAE9E,MAAM,mBAAmB,GAA8C;IACrE,EAAE,OAAO,EAAE,6CAA6C,EAAE,KAAK,EAAE,IAAI,EAAE;IACvE,EAAE,OAAO,EAAE,iDAAiD,EAAE,KAAK,EAAE,IAAI,EAAE;IAC3E,EAAE,OAAO,EAAE,mDAAmD,EAAE,KAAK,EAAE,IAAI,EAAE;CAC9E,CAAC;AAEF,MAAM,sBAAsB,GAAG,GAAG,CAAC;AACnC,MAAM,kBAAkB,GAAG,IAAI,CAAC;AAChC,MAAM,eAAe,GAAG,IAAI,CAAC;AAE7B,SAAS,SAAS,CAAC,OAAe;IAChC,IAAI,KAAK,GAAG,eAAe,CAAC;IAC5B,IAAI,OAAO,CAAC,MAAM,GAAG,sBAAsB;QAAE,KAAK,IAAI,kBAAkB,CAAC;IACzE,KAAK,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,mBAAmB,EAAE,CAAC;QACrD,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,KAAK,IAAI,KAAK,CAAC;IAC5C,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC9B,CAAC;AAED,8EAA8E;AAE9E,SAAS,YAAY,CACnB,UAAkB,EAClB,YAAkB,EAClB,WAAmB,EACnB,KAAa;IAEb,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,YAAY,CAAC,OAAO,EAAE,CAAC,GAAG,SAAS,CAAC;IACrE,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC;IAC9C,MAAM,SAAS,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC;IAChD,OAAO,UAAU,GAAG,OAAO,GAAG,SAAS,CAAC;AAC1C,CAAC;AAED,8EAA8E;AAE9E,MAAa,YAAa,SAAQ,YAAY;IACnC,OAAO,CAAS;IACjB,KAAK,CAAS;IACd,SAAS,CAAU;IACnB,QAAQ,GAAwB,IAAI,GAAG,EAAE,CAAC;IAC1C,YAAY,GAA6B,IAAI,GAAG,EAAE,CAAC;IACnD,QAAQ,GAAiB,EAAE,CAAC;IAC5B,OAAO,GAAW,CAAC,CAAC;IACpB,WAAW,GAAW,GAAG,CAAC;IAC1B,YAAY,CAAe;IAC3B,UAAU,GAAS,IAAI,IAAI,EAAE,CAAC;IAC9B,IAAI,CAAc;IAClB,WAAW,CAAU;IACrB,YAAY,CAAkC;IAEtD,YAAY,OAAe,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,GAAG,KAAK,EAAE,YAA0C;QAClG,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,IAAI,wBAAY,CAAC,YAAY,CAAC,CAAC;QAEnD,wFAAwF;QACxF,MAAM,UAAU,GAAG,OAAO,OAAO,KAAK,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAC,CAAC,SAAS,CAAC;QAClG,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QACrC,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,6BAA6B,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,kBAAkB,IAAI,CAAC,YAAY,CAAC,QAAQ,GAAG,CAAC,CAAC;QACpI,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1C,CAAC;IAED,0EAA0E;IAE1E,iBAAiB,CAAC,GAAW;QAC3B,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;YACzB,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;YAC7B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAChE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,OAAO,CAAC,CAAC;YAC1D,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,6BAA6B;YAC7B,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,MAAM,CAAC,CAAC;YAClE,IAAI,CAAC,GAAG,CAAC,wBAAwB,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QACvD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,GAAG,CAAC,uCAAuC,CAAC,EAAE,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAEO,aAAa;QACnB,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAO;QAC9B,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;YACzB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;gBAAE,OAAO;YAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;YACnE,mBAAmB;YACnB,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;gBACjB,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;oBAC7B,CAAC,CAAC,SAAS,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;oBACpC,CAAC,CAAC,YAAY,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;oBAC1C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;gBAC7B,CAAC;YACH,CAAC;YACD,uBAAuB;YACvB,IAAI,GAAG,CAAC,YAAY,EAAE,CAAC;gBACrB,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,YAAY,EAAE,CAAC;oBACjC,CAAC,CAAC,SAAS,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;oBACpC,IAAI,CAAC,CAAC,WAAW;wBAAE,CAAC,CAAC,WAAW,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;oBAC3D,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;gBACjC,CAAC;YACH,CAAC;YACD,gBAAgB;YAChB,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS;gBAAE,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC;YACxD,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS;gBAAE,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC,UAAU,CAAC;YACpE,IAAI,GAAG,CAAC,SAAS;gBAAE,IAAI,CAAC,UAAU,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC7D,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;gBACjB,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;YAC7F,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,QAAQ,CAAC,IAAI,cAAc,IAAI,CAAC,YAAY,CAAC,IAAI,yBAAyB,CAAC,CAAC;QACtG,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,GAAG,CAAC,kCAAkC,CAAC,EAAE,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IAEO,WAAW;QACjB,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAO;QAC9B,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;YACzB,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;gBAC1B,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,MAAM,EAAE,IAAI,CAAC,OAAO;gBACpB,UAAU,EAAE,IAAI,CAAC,WAAW;gBAC5B,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE;gBACxC,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAC5C,YAAY,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;gBACpD,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,wBAAwB;gBAC7D,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aAClC,CAAC,CAAC;YACH,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QACpD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,GAAG,CAAC,2BAA2B,CAAC,EAAE,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAEO,GAAG,CAAC,GAAW;QACrB,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,OAAO,KAAK,GAAG,EAAE,CAAC,CAAC;IACvE,CAAC;IAEO,KAAK,CAAC,MAAc,EAAE,OAAgC;QAC5D,MAAM,KAAK,GAAe;YACxB,EAAE,EAAE,UAAU,EAAE;YAChB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM;YACN,OAAO;YACP,SAAS,EAAE,IAAI,IAAI,EAAE;SACtB,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,2EAA2E;IAE3E,KAAK,CAAC,QAAQ,CAAC,OAAe,EAAE,IAAsB;QACpD,MAAM,UAAU,GAAG,IAAI,EAAE,UAAU,IAAI,SAAS,CAAC,OAAO,CAAC,CAAC;QAC1D,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,GAAG,GAAW;YAClB,EAAE,EAAE,UAAU,EAAE;YAChB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO;YACP,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YAChD,KAAK,EAAE,UAAU;YACjB,SAAS,EAAE,GAAG;YACd,YAAY,EAAE,GAAG;YACjB,WAAW,EAAE,CAAC;YACd,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE;SACvB,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QAE/B,mDAAmD;QACnD,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YAC3C,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QACjD,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;QACxG,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;QAChF,IAAI,CAAC,GAAG,CAAC,mBAAmB,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,qBAAqB,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACnG,OAAO,GAAG,CAAC,EAAE,CAAC;IAChB,CAAC;IAID,KAAK,CAAC,MAAM,CAAC,YAA8B,EAAE,UAAmB;QAC9D,wBAAwB;QACxB,MAAM,KAAK,GAAG,OAAO,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1E,MAAM,KAAK,GAAG,OAAO,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC;QAElF,wCAAwC;QACxC,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACvD,CAAC,CAAC,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;YAChF,OAAO,CAAC,CAAC;QACX,CAAC,CAAC,CAAC;QAEH,IAAI,OAAiB,CAAC;QAEtB,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,KAAK,OAAO,IAAI,KAAK,EAAE,CAAC;YACpD,0CAA0C;YAC1C,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;YACxE,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBAChC,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAE,CAAC;gBACrC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,aAAa,CAAC;gBAC5B,OAAO,GAAG,CAAC;YACb,CAAC,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,+BAA+B;YAC/B,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;YACtC,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QAChC,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,CAAC,CAAC,YAAY,GAAG,GAAG,CAAC;YACrB,CAAC,CAAC,WAAW,EAAE,CAAC;QAClB,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QACxD,IAAI,CAAC,GAAG,CAAC,YAAY,OAAO,CAAC,MAAM,wBAAwB,IAAI,CAAC,YAAY,CAAC,QAAQ,GAAG,CAAC,CAAC;QAC1F,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU;QACrB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACzC,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC7B,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;YACrC,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,IAAI,CAAC,GAAG,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;QACnC,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,EAAU,EAAE,KAAK,GAAG,GAAG;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClC,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QACpD,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,GAAG,KAAK,EAAE,GAAG,CAAC,CAAC;QACvD,GAAG,CAAC,YAAY,GAAG,IAAI,IAAI,EAAE,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,mBAAmB,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;QAC9E,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,GAAG,CAAC,qBAAqB,EAAE,QAAQ,KAAK,MAAM,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAClF,CAAC;IAED,KAAK,CAAC,WAAW;QACf,MAAM,SAAS,GAAG,IAAI,CAAC;QACvB,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,MAAM,SAAS,GAAa,EAAE,CAAC;QAC/B,KAAK,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACtC,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,YAAY,EAAE,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;YAC1F,IAAI,KAAK,GAAG,SAAS,EAAE,CAAC;gBACtB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACzB,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACnB,MAAM,EAAE,CAAC;YACX,CAAC;QACH,CAAC;QACD,+CAA+C;QAC/C,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QACzC,IAAI,CAAC,KAAK,CAAC,qBAAqB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QAC9C,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,GAAG,CAAC,wBAAwB,MAAM,iBAAiB,CAAC,CAAC;QAC1D,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,2EAA2E;IAE3E,KAAK,CAAC,MAAM,CAAC,MAAc,EAAE,MAAc;QACzC,IAAI,MAAM,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC5D,MAAM,SAAS,GAAG,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC;QACzC,IAAI,MAAM,GAAG,SAAS,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CACb,WAAW,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,gCAAgC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG;gBACnF,gBAAgB,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAC9E,CAAC;QACJ,CAAC;QACD,MAAM,EAAE,GAAgB;YACtB,EAAE,EAAE,UAAU,EAAE;YAChB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM;YACN,MAAM;YACN,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,IAAI,IAAI,EAAE;SACtB,CAAC;QACF,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACjC,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAC7D,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAC5D,IAAI,CAAC,GAAG,CAAC,oBAAoB,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,MAAM,aAAa,CAAC,CAAC;QAC5E,OAAO,EAAE,GAAG,EAAE,EAAE,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAY;QACvB,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,eAAe,IAAI,YAAY,CAAC,CAAC;QAC1D,IAAI,EAAE,CAAC,MAAM,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,eAAe,IAAI,OAAO,EAAE,CAAC,MAAM,eAAe,CAAC,CAAC;QAEjG,0BAA0B;QAC1B,EAAE,CAAC,MAAM,GAAG,WAAW,CAAC;QACxB,EAAE,CAAC,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,MAAM,CAAC;QAE1B,sBAAsB;QACtB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,GAAG,IAAI,EAAE,GAAG,CAAC,CAAC;QAE1D,0DAA0D;QAC1D,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QAC1C,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YACzC,IAAI,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,GAAG,UAAU,EAAE,CAAC;gBAC5C,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,GAAG,IAAI,EAAE,GAAG,CAAC,CAAC;gBACtD,UAAU,EAAE,CAAC;YACf,CAAC;QACH,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,mBAAmB,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,kBAAkB,EAAE,UAAU,EAAE,CAAC,CAAC;QAClG,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;QACjE,IAAI,CAAC,GAAG,CACN,YAAY,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;YAC1E,eAAe,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,UAAU,WAAW,CACjF,CAAC;QACF,OAAO,EAAE,GAAG,EAAE,EAAE,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAY;QACvB,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,eAAe,IAAI,YAAY,CAAC,CAAC;QAC1D,IAAI,EAAE,CAAC,MAAM,KAAK,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,eAAe,IAAI,mBAAmB,CAAC,CAAC;QAEtF,IAAI,EAAE,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YAC9B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YACrD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC;QAC1D,CAAC;QACD,EAAE,CAAC,MAAM,GAAG,UAAU,CAAC;QAEvB,IAAI,CAAC,KAAK,CAAC,kBAAkB,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;QACjE,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QAC7C,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,kBAAkB,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC3F,OAAO,EAAE,GAAG,EAAE,EAAE,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,OAAO;QACX,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;IAChE,CAAC;IAED,2EAA2E;IAE3E,KAAK,CAAC,OAAO;QACX,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,OAAO;YAChB,UAAU,EAAE,IAAI,CAAC,WAAW;YAC5B,MAAM,EAAE,IAAI,CAAC,OAAO;YACpB,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;YACjC,iBAAiB,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI;SAC1C,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE;QACnB,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE;QACtB,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC;QACnD,0DAA0D;QAC1D,GAAG,CAAC,OAAO,EAAE,CAAC;QACd,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;IACtD,CAAC;IAED,2EAA2E;IAE3E,KAAK,CAAC,UAAU;QACd,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC;QACnD,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC;QAC5D,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC;QAC5D,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;QACxD,MAAM,cAAc,GAAG,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;QAChF,MAAM,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAExE,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAChD,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC;YACnC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM;YAC9D,CAAC,CAAC,CAAC,CAAC;QAEN,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,GAAG,SAAS,CAAC;QAEtE,MAAM,MAAM,GAAqB;YAC/B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,KAAK,EAAE,IAAI,CAAC,WAAW;YACvB,IAAI,EAAE,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC;YACtC,YAAY,EAAE,OAAO,CAAC,MAAM;YAC5B,WAAW,EAAE,QAAQ,CAAC,MAAM;YAC5B,cAAc;YACd,iBAAiB;YACjB,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;YACjC,mBAAmB,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,GAAG,CAAC,GAAG,GAAG;YAC1D,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC,GAAG,EAAE;YACxC,WAAW,EAAE,IAAI,IAAI,EAAE;SACxB,CAAC;QAEF,IAAI,CAAC,GAAG,CAAC,eAAe,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,YAAY,mBAAmB,CAAC,MAAM,CAAC,cAAc,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACxJ,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,0EAA0E;IAE1E,SAAS,CAAC,GAAY,EAAE,OAAgB;QACtC,OAAO;YACL,IAAI,EAAE,mBAAmB,IAAI,CAAC,OAAO,GAAG;YACxC,WAAW,EAAE,gGAAgG;YAC7G,GAAG;YACH,OAAO,EAAE,OAAO;YAChB,YAAY,EAAE;gBACZ,MAAM,EAAE,IAAI;gBACZ,QAAQ,EAAE,IAAI;gBACd,UAAU,EAAE,IAAI;aACjB;YACD,SAAS,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC;YACzB,KAAK,EAAE;gBACL,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa;gBAC1D,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS;gBAClD,YAAY,EAAE,MAAM,EAAE,SAAS;aAChC;YACD,OAAO;SACR,CAAC;IACJ,CAAC;IAED,0EAA0E;IAE1E,aAAa,CAAC,MAAkB;QAC9B,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC;QACnB,IAAI,CAAC,GAAG,CAAC,oBAAoB,MAAM,CAAC,cAAc,KAAK,MAAM,CAAC,KAAK,IAAI,MAAM,OAAO,MAAM,CAAC,KAAK,IAAI,MAAM,GAAG,CAAC,CAAC;IACjH,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,IAAY;QAC9B,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;QAEpF,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,eAAe,IAAI,YAAY,CAAC,CAAC;QAC1D,IAAI,EAAE,CAAC,MAAM,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,eAAe,IAAI,OAAO,EAAE,CAAC,MAAM,eAAe,CAAC,CAAC;QAEjG,qCAAqC;QACrC,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,WAAW,EAAE;YAC9D,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,MAAM,EAAE,EAAE,CAAC,MAAM;gBACjB,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,MAAM;gBAChC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,MAAM;gBAChC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa;gBAC7B,IAAI,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE;aACvC,CAAC;SACH,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;YAC9C,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,CAAC,MAAM,MAAM,IAAI,EAAE,CAAC,CAAC;QACrE,CAAC;QAED,6BAA6B;QAC7B,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,UAAU;QACd,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,IAAI,CAAC,YAAY;YAAE,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACxD,IAAI,CAAC,GAAG,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC;IAChH,CAAC;CACF;AAjbD,oCAibC;AAED,8EAA8E;AAE9E,MAAa,QAAS,SAAQ,YAAY;IAC/B,OAAO,CAAS;IACjB,MAAM,CAEwC;IAC9C,OAAO,CAAyB;IAExC,YAAY,MAAsB;QAChC,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,MAAM,GAAG;YACZ,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,uBAAuB;YACpD,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,uBAAuB;YAC1D,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,IAAI;YAC3B,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,KAAK;YAC5B,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,cAAc,EAAE,MAAM,CAAC,cAAc;SACtC,CAAC;QACF,IAAI,CAAC,OAAO,GAAG;YACb,cAAc,EAAE,kBAAkB;YAClC,YAAY,EAAE,IAAI,CAAC,OAAO;SAC3B,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;QACnD,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;IAEO,KAAK,CAAC,IAAI;QAChB,IAAI,CAAC;YACH,mDAAmD;YACnD,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE;gBACtC,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;aACpE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YACnB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrB,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IAEO,GAAG,CAAC,GAAW;QACrB,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,OAAO,KAAK,GAAG,EAAE,CAAC,CAAC;IAC1E,CAAC;IAEO,KAAK,CAAC,UAAU,CAAC,IAAY,EAAE,IAAkB;QACvD,MAAM,OAAO,GAA2B,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC5D,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW;YAAE,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QAC5F,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;QAClH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;YAC9C,MAAM,IAAI,KAAK,CAAC,aAAa,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;QACtD,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxC,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,IAAY,EAAE,IAAkB;QAC1D,MAAM,OAAO,GAA2B,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC5D,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc;YAAE,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;QAClG,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,IAAI,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;QACrH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;YAC9C,MAAM,IAAI,KAAK,CAAC,YAAY,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;QACrD,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxC,CAAC;IAED,0EAA0E;IAE1E,KAAK,CAAC,QAAQ,CAAC,OAAe,EAAE,IAAsB;QACpD,MAAM,UAAU,GAAG,IAAI,EAAE,UAAU,IAAI,SAAS,CAAC,OAAO,CAAC,CAAC;QAC1D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE;YACnD,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,OAAO;gBACP,IAAI,EAAE,WAAW;gBACjB,QAAQ,EAAE;oBACR,WAAW,EAAE,aAAa;oBAC1B,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE;oBACtB,UAAU,EAAE,UAAU;iBACvB;aACF,CAAC;SACH,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;QACnE,IAAI,CAAC,GAAG,CAAC,mBAAmB,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC;QAC3E,OAAO,MAAM,CAAC,EAAE,CAAC;IACnB,CAAC;IAID,KAAK,CAAC,MAAM,CAAC,YAA8B,EAAE,UAAmB;QAC9D,MAAM,KAAK,GAAG,OAAO,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC;QACpE,MAAM,KAAK,GAAG,OAAO,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC;QAElF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,qBAAqB,EAAE;YAC1D,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,KAAK;gBACL,KAAK,EAAE,KAAK;gBACZ,kBAAkB,EAAE,IAAI;aACzB,CAAC;SACH,CAAC,CAAC;QACH,MAAM,QAAQ,GAAa,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE;YAC/D,uDAAuD;YACvD,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC;YACxB,OAAO;gBACL,EAAE,EAAE,CAAC,CAAC,EAAE;gBACR,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,OAAO,EAAE,CAAC,CAAC,OAAO;gBAClB,UAAU,EAAE,CAAC,CAAC,cAAc,IAAI,GAAG;gBACnC,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC;gBAC9B,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC;gBACxD,YAAY,EAAE,IAAI,IAAI,EAAE;gBACxB,WAAW,EAAE,CAAC,CAAC,YAAY,IAAI,CAAC;gBAChC,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,EAAE;aACnB,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QACzD,IAAI,CAAC,GAAG,CAAC,YAAY,QAAQ,CAAC,MAAM,WAAW,CAAC,CAAC;QACjD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU;QACrB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;YAClE,IAAI,CAAC,GAAG,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;YACjC,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,EAAU,EAAE,KAAK,GAAG,GAAG;QACrC,MAAM,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,SAAS,EAAE;YACjD,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SACvD,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,qBAAqB,EAAE,EAAE,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,WAAW;QACf,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,0BAA0B,EAAE;YAC/D,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,SAAS,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;SACnG,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,CAAC;QAClD,IAAI,CAAC,GAAG,CAAC,wBAAwB,MAAM,iBAAiB,CAAC,CAAC;QAC1D,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,0EAA0E;IAE1E,KAAK,CAAC,MAAM,CAAC,MAAc,EAAE,MAAc;QACzC,IAAI,MAAM,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC5D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE;YACrD,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,MAAM;gBACN,MAAM;gBACN,QAAQ,EAAE,KAAK;aAChB,CAAC;SACH,CAAC,CAAC;QACH,MAAM,EAAE,GAAgB;YACtB,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM;YACN,MAAM;YACN,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;SACpD,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAC5D,IAAI,CAAC,GAAG,CAAC,oBAAoB,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,CAAC,CAAC;QAClE,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAY;QACvB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,IAAI,UAAU,EAAE;YACrE,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;SACzB,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QACpE,IAAI,CAAC,GAAG,CAAC,aAAa,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACnD,OAAO;YACL,EAAE,EAAE,IAAI;YACR,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;YAC3B,MAAM,EAAE,WAAW;YACnB,SAAS,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YACnD,WAAW,EAAE,IAAI,IAAI,EAAE;SACxB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAY;QACvB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,IAAI,SAAS,EAAE;YACpE,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;SACzB,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5C,IAAI,CAAC,GAAG,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;QAC9B,OAAO;YACL,EAAE,EAAE,IAAI;YACR,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;YAC3B,MAAM,EAAE,UAAU;YAClB,SAAS,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;SACpD,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO;QACX,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,IAAI,CAAC,OAAO,SAAS,CAAC,CAAC;QAC9E,OAAO;YACL,MAAM,EAAE,MAAM,CAAC,OAAO,IAAI,CAAC;YAC3B,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,GAAG;SACrC,CAAC;IACJ,CAAC;IAED,yEAAyE;IAEzE,KAAK,CAAC,OAAO;QACX,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACzC,IAAI,CAAC,aAAa,CAAC,eAAe,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;YACnE,IAAI,CAAC,OAAO,EAAE;SACf,CAAC,CAAC;QACH,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,OAAO;YAChB,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,aAAa,EAAE,SAAS,EAAE,aAAa,IAAI,CAAC;YAC5C,iBAAiB,EAAE,SAAS,EAAE,iBAAiB,IAAI,CAAC;SACrD,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE;QACnB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,2BAA2B,KAAK,EAAE,CAAC,CAAC;QAC5E,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;YACvD,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO;YAClC,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI;YAC1B,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,IAAI,EAAE;YAClC,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;SAC9D,CAAC,CAAC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE;QACtB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,IAAI,CAAC,OAAO,uBAAuB,KAAK,EAAE,CAAC,CAAC;QACnG,OAAO,CAAC,MAAM,CAAC,YAAY,IAAI,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;YAC5D,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO;YAClC,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,WAAW,IAAI,EAAE;YACvC,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YAC9C,WAAW,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS;SACjE,CAAC,CAAC,CAAC;IACN,CAAC;IAED,2EAA2E;IAE3E,KAAK,CAAC,UAAU;QACd,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACpC,IAAI,CAAC,OAAO,EAAE;YACd,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;SACnB,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC;QAC5D,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC;QAC5D,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;QACxD,MAAM,cAAc,GAAG,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;QAChF,MAAM,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAExE,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,KAAK,EAAE,IAAI,CAAC,UAAU;YACtB,IAAI,EAAE,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC;YACrC,YAAY,EAAE,OAAO,CAAC,MAAM;YAC5B,WAAW,EAAE,QAAQ,CAAC,MAAM;YAC5B,cAAc;YACd,iBAAiB;YACjB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,mBAAmB,EAAE,CAAC,EAAE,wBAAwB;YAChD,QAAQ,EAAE,CAAC,EAAE,8BAA8B;YAC3C,WAAW,EAAE,IAAI,IAAI,EAAE;SACxB,CAAC;IACJ,CAAC;IAED,0EAA0E;IAE1E,SAAS,CAAC,GAAY,EAAE,OAAgB;QACtC,OAAO;YACL,IAAI,EAAE,mBAAmB,IAAI,CAAC,OAAO,GAAG;YACxC,WAAW,EAAE,gGAAgG;YAC7G,GAAG;YACH,OAAO,EAAE,OAAO;YAChB,YAAY,EAAE;gBACZ,MAAM,EAAE,IAAI;gBACZ,QAAQ,EAAE,IAAI;gBACd,UAAU,EAAE,IAAI;aACjB;YACD,SAAS,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC;YACzB,KAAK,EAAE;gBACL,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa;gBAC1D,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS;gBAClD,YAAY,EAAE,MAAM,EAAE,SAAS;aAChC;YACD,OAAO;SACR,CAAC;IACJ,CAAC;IAED,0EAA0E;IAElE,IAAI,CAAc;IAE1B,aAAa,CAAC,MAAkB;QAC9B,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC;QACnB,IAAI,CAAC,GAAG,CAAC,oBAAoB,MAAM,CAAC,cAAc,KAAK,MAAM,CAAC,KAAK,IAAI,MAAM,OAAO,MAAM,CAAC,KAAK,IAAI,MAAM,GAAG,CAAC,CAAC;IACjH,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,IAAY;QAC9B,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;QAEpF,wCAAwC;QACxC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;QAE/D,6BAA6B;QAC7B,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,WAAW,EAAE;YAC9D,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,MAAM;gBAChC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,MAAM;gBAChC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa;gBAC7B,IAAI,EAAE,YAAY,IAAI,IAAI,MAAM,CAAC,MAAM,IAAI,EAAE,EAAE;aAChD,CAAC;SACH,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;YAC9C,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,CAAC,MAAM,MAAM,IAAI,EAAE,CAAC,CAAC;QACrE,CAAC;QAED,iCAAiC;QACjC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,UAAU;QACd,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAC3B,CAAC;IAED,yEAAyE;IAEzE;;;OAGG;IACH,MAAM,CAAC,KAAK,CAAC,OAAe,EAAE,IAQ7B;QACC,MAAM,YAAY,GAA4C,IAAI,EAAE,MAAM;YACxE,CAAC,CAAC;gBACE,QAAQ,EAAE,IAAI,CAAC,MAAM;gBACrB,iBAAiB,EAAE,IAAI,CAAC,UAAU;gBAClC,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,YAAY,EAAE,IAAI,CAAC,YAAY;aAChC;YACH,CAAC,CAAC,SAAS,CAAC;QACd,OAAO,IAAI,YAAY,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,KAAK,EAAE,YAAY,CAAC,CAAC;IAC5F,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,MAAM,CAAC,MAAsB;QAClC,OAAO,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;CACF;AAjYD,4BAiYC;AAED,+EAA+E;AAE/E,kBAAe,QAAQ,CAAC;AAExB,gDAA6F;AAApF,yGAAA,YAAY,OAAA;AAAE,6GAAA,gBAAgB,OAAA;AAAE,uGAAA,UAAU,OAAA;AAAE,wGAAA,WAAW,OAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/langgraph/tools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE1D,KAAK,KAAK,GAAG,YAAY,GAAG,QAAQ,CAAC;AAErC;;GAEG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAsEtC;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/langgraph/tools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE1D,KAAK,KAAK,GAAG,YAAY,GAAG,QAAQ,CAAC;AAErC;;GAEG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAsEtC;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;sIAqFzC"}
|