@aalis/plugin-tool-session 0.10.0 → 0.12.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/dist/index.d.ts +12 -11
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +140 -100
- package/dist/index.js.map +1 -1
- package/package.json +22 -11
package/dist/index.d.ts
CHANGED
|
@@ -1,13 +1,3 @@
|
|
|
1
|
-
import type { Context } from '@aalis/core';
|
|
2
|
-
import type { ConfigSchema } from '@aalis/schema-config';
|
|
3
|
-
export declare const name = "@aalis/plugin-tool-session";
|
|
4
|
-
export declare const displayName = "\u4F1A\u8BDD\u5DE5\u5177";
|
|
5
|
-
export declare const subsystem = "session";
|
|
6
|
-
export declare const provides: string[];
|
|
7
|
-
export declare const inject: {
|
|
8
|
-
optional: string[];
|
|
9
|
-
};
|
|
10
|
-
export declare const configSchema: ConfigSchema;
|
|
11
1
|
/**
|
|
12
2
|
* 把一个时间值解析为毫秒时间戳。接受:
|
|
13
3
|
* - number:直接当毫秒时间戳(有限值)。
|
|
@@ -33,5 +23,16 @@ export declare function resolveTimeRange(args: {
|
|
|
33
23
|
} | {
|
|
34
24
|
error: string;
|
|
35
25
|
} | null;
|
|
36
|
-
|
|
26
|
+
declare const _default: import("@aalis/core").PluginDefinition<{
|
|
27
|
+
tools: import("@aalis/core/dist/composition/descriptors").OptionalUse<import("@aalis/api-tools").ToolService, import("@aalis/api-tools").BoundTools>;
|
|
28
|
+
events: import("@aalis/core").ServiceDescriptor<(identity: symbol) => import("@aalis/core").Events, import("@aalis/core").Events>;
|
|
29
|
+
hooks: import("@aalis/core").ServiceDescriptor<(identity: symbol) => import("@aalis/core").Hooks, import("@aalis/core").Hooks>;
|
|
30
|
+
logger: import("@aalis/core").ServiceDescriptor<(identity: symbol) => import("@aalis/core").Logger, import("@aalis/core").Logger>;
|
|
31
|
+
config: import("@aalis/core").ServiceDescriptor<(identity: symbol) => Readonly<Record<string, unknown>>, Readonly<Record<string, unknown>>>;
|
|
32
|
+
provide: import("@aalis/core").ServiceDescriptor<(identity: symbol) => import("@aalis/core").Provide, import("@aalis/core").Provide>;
|
|
33
|
+
memory: import("@aalis/core/dist/composition/descriptors").OptionalUse<import("@aalis/api-memory").MemoryService, import("@aalis/core").ServiceRef<import("@aalis/api-memory").MemoryService>>;
|
|
34
|
+
platform: import("@aalis/core/dist/composition/descriptors").OptionalUse<import("@aalis/api-platform").PlatformAdapter, import("@aalis/core").ServiceRef<import("@aalis/api-platform").PlatformAdapter>>;
|
|
35
|
+
persona: import("@aalis/core/dist/composition/descriptors").OptionalUse<import("@aalis/api-persona").PersonaService, import("@aalis/core").ServiceRef<import("@aalis/api-persona").PersonaService>>;
|
|
36
|
+
}>;
|
|
37
|
+
export default _default;
|
|
37
38
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AA8MA;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAc5D;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE;IAAE,cAAc,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,EACpE,GAAG,EAAE,MAAM,GACV;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAmC7D;;;;;;;;;;;;AAirBD,wBAmBG"}
|
package/dist/index.js
CHANGED
|
@@ -1,30 +1,21 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import { memory } from '@aalis/api-memory';
|
|
2
|
+
import { persona } from '@aalis/api-persona';
|
|
3
|
+
import { platform, resolvePlatformBySession } from '@aalis/api-platform';
|
|
4
|
+
import { sessionHistory, } from '@aalis/api-tool-session';
|
|
5
|
+
import { tools } from '@aalis/api-tools';
|
|
6
|
+
import { config, definePlugin, events, hooks, logger, optional, provide } from '@aalis/core';
|
|
7
|
+
// ===== 跨会话委派:回合深度防雪崩 =====
|
|
8
|
+
// 防止 A→B→C→... 无限链。深度随消息走(IncomingMessage.proactiveDepth),不按会话计时:
|
|
9
|
+
// 由委派消息驱动的那一个回合内禁止再委派,回合结束(agent:turn:after)即解除;
|
|
10
|
+
// 该会话之后由下一条不带 proactiveDepth 的入站消息(真人消息、idle/interval 自动触发都算)
|
|
11
|
+
// 驱动的回合不受影响。
|
|
5
12
|
const PROACTIVE_DEPTH_MAX = 1;
|
|
6
|
-
const PROACTIVE_DEPTH_TTL_MS = 10 * 60 * 1000;
|
|
7
|
-
const proactiveDepth = new Map();
|
|
8
|
-
function getProactiveDepth(sessionId) {
|
|
9
|
-
const entry = proactiveDepth.get(sessionId);
|
|
10
|
-
if (!entry)
|
|
11
|
-
return 0;
|
|
12
|
-
if (entry.expiresAt <= Date.now()) {
|
|
13
|
-
proactiveDepth.delete(sessionId);
|
|
14
|
-
return 0;
|
|
15
|
-
}
|
|
16
|
-
return entry.depth;
|
|
17
|
-
}
|
|
18
|
-
function setProactiveDepth(sessionId, depth) {
|
|
19
|
-
proactiveDepth.set(sessionId, { depth, expiresAt: Date.now() + PROACTIVE_DEPTH_TTL_MS });
|
|
20
|
-
}
|
|
21
13
|
// ===== 跨会话委派:近期派发记录(提醒型,不硬挡) =====
|
|
22
14
|
// 记录每个 (target_session_id, task) 最近一次派发状态。
|
|
23
15
|
// 下一次同目标派发时,在拼装给 target agent 的 task 前注入 META 提醒,
|
|
24
16
|
// 让 target agent 自主判断是否需要重发。不防止派发本身。
|
|
25
17
|
const RECENT_DELEGATION_TTL_MS = 60 * 1000;
|
|
26
18
|
const RECENT_DELEGATION_MAX = 256; // 防止无限增长
|
|
27
|
-
const recentDelegations = new Map();
|
|
28
19
|
function recentDelegationKey(targetSessionId, taskHash) {
|
|
29
20
|
return `${targetSessionId}::${taskHash}`;
|
|
30
21
|
}
|
|
@@ -37,23 +28,23 @@ function hashTask(task) {
|
|
|
37
28
|
}
|
|
38
29
|
return (h >>> 0).toString(16).padStart(8, '0');
|
|
39
30
|
}
|
|
40
|
-
function pruneRecentDelegations(now) {
|
|
41
|
-
for (const [key, entry] of
|
|
31
|
+
function pruneRecentDelegations(store, now) {
|
|
32
|
+
for (const [key, entry] of store) {
|
|
42
33
|
if (entry.expiresAt <= now)
|
|
43
|
-
|
|
34
|
+
store.delete(key);
|
|
44
35
|
}
|
|
45
36
|
// 超上限时删最早的
|
|
46
|
-
if (
|
|
47
|
-
const oldest = [...
|
|
37
|
+
if (store.size > RECENT_DELEGATION_MAX) {
|
|
38
|
+
const oldest = [...store.entries()].sort((a, b) => a[1].firedAt - b[1].firedAt);
|
|
48
39
|
for (let i = 0; i < oldest.length - RECENT_DELEGATION_MAX; i++) {
|
|
49
|
-
|
|
40
|
+
store.delete(oldest[i][0]);
|
|
50
41
|
}
|
|
51
42
|
}
|
|
52
43
|
}
|
|
53
|
-
function findRecentDelegationsForTarget(targetSessionId, now) {
|
|
44
|
+
function findRecentDelegationsForTarget(store, targetSessionId, now) {
|
|
54
45
|
const prefix = `${targetSessionId}::`;
|
|
55
46
|
const list = [];
|
|
56
|
-
for (const [key, entry] of
|
|
47
|
+
for (const [key, entry] of store) {
|
|
57
48
|
if (entry.expiresAt <= now)
|
|
58
49
|
continue;
|
|
59
50
|
if (!key.startsWith(prefix))
|
|
@@ -85,15 +76,8 @@ function buildDelegationMetaBlock(sourceSessionId, targetSessionId, task, recent
|
|
|
85
76
|
lines.push(task);
|
|
86
77
|
return lines.join('\n');
|
|
87
78
|
}
|
|
88
|
-
// =====
|
|
89
|
-
|
|
90
|
-
export const displayName = '会话工具';
|
|
91
|
-
export const subsystem = 'session';
|
|
92
|
-
export const provides = ['session-history'];
|
|
93
|
-
export const inject = {
|
|
94
|
-
optional: ['memory'],
|
|
95
|
-
};
|
|
96
|
-
export const configSchema = {
|
|
79
|
+
// ===== 插件元数据与能力声明 =====
|
|
80
|
+
const configSchema = {
|
|
97
81
|
enabled: { type: 'boolean', label: '启用会话历史读取工具', default: true },
|
|
98
82
|
maxLimit: {
|
|
99
83
|
type: 'number',
|
|
@@ -137,6 +121,17 @@ export const configSchema = {
|
|
|
137
121
|
description: 'delegate_to_session 在未显式指定 timeout_seconds 时使用的等待上限。',
|
|
138
122
|
},
|
|
139
123
|
};
|
|
124
|
+
const uses = {
|
|
125
|
+
tools: optional(tools),
|
|
126
|
+
events,
|
|
127
|
+
hooks,
|
|
128
|
+
logger,
|
|
129
|
+
config,
|
|
130
|
+
provide,
|
|
131
|
+
memory: optional(memory),
|
|
132
|
+
platform: optional(platform),
|
|
133
|
+
persona: optional(persona),
|
|
134
|
+
};
|
|
140
135
|
/** 无原生区间查询的后端:区间检索退回扫描历史的最大条数(best-effort 上界,防 OOM) */
|
|
141
136
|
const RANGE_FALLBACK_SCAN = 5000;
|
|
142
137
|
// ===== 时间区间解析(纯函数,单测覆盖见 test/plugins/session-history-range.test.ts) =====
|
|
@@ -273,7 +268,7 @@ function canReadSessionHistory(currentSessionId, targetSessionId, currentPlatfor
|
|
|
273
268
|
}
|
|
274
269
|
return { ok: true };
|
|
275
270
|
}
|
|
276
|
-
function createSessionHistoryService(
|
|
271
|
+
function createSessionHistoryService({ memory, logger }, cfg) {
|
|
277
272
|
const checkers = [];
|
|
278
273
|
return {
|
|
279
274
|
registerAccessChecker(checker) {
|
|
@@ -285,8 +280,8 @@ function createSessionHistoryService(ctx, cfg) {
|
|
|
285
280
|
};
|
|
286
281
|
},
|
|
287
282
|
async getHistory(options, callCtx) {
|
|
288
|
-
const
|
|
289
|
-
if (!
|
|
283
|
+
const store = memory.current;
|
|
284
|
+
if (!store)
|
|
290
285
|
return { error: 'memory 服务不可用' };
|
|
291
286
|
const targetSessionId = String(options.sessionId ?? '').trim();
|
|
292
287
|
if (!targetSessionId)
|
|
@@ -306,17 +301,17 @@ function createSessionHistoryService(ctx, cfg) {
|
|
|
306
301
|
let ranged;
|
|
307
302
|
// 区间后端(getMessagesBySessionRange)天然含归档;仅当退化到 getHistory 时才是「仅活跃」。
|
|
308
303
|
let includesArchived = true;
|
|
309
|
-
if (
|
|
310
|
-
ranged = await
|
|
304
|
+
if (store.getMessagesBySessionRange) {
|
|
305
|
+
ranged = await store.getMessagesBySessionRange(targetSessionId, fromTs, toTs);
|
|
311
306
|
}
|
|
312
307
|
else {
|
|
313
308
|
// 后端不支持原生区间查询:退回扫描历史 + 客户端按时间过滤(best-effort,很早的窗口可能不全)。
|
|
314
309
|
let base;
|
|
315
|
-
if (
|
|
316
|
-
base = await
|
|
310
|
+
if (store.getFullHistory) {
|
|
311
|
+
base = await store.getFullHistory(targetSessionId, RANGE_FALLBACK_SCAN);
|
|
317
312
|
}
|
|
318
313
|
else {
|
|
319
|
-
base = await
|
|
314
|
+
base = await store.getHistory(targetSessionId, RANGE_FALLBACK_SCAN);
|
|
320
315
|
includesArchived = false; // getHistory 不含归档,诚实回显
|
|
321
316
|
}
|
|
322
317
|
ranged = base.filter(m => {
|
|
@@ -341,34 +336,34 @@ function createSessionHistoryService(ctx, cfg) {
|
|
|
341
336
|
};
|
|
342
337
|
return result;
|
|
343
338
|
}
|
|
344
|
-
const history = includeArchived &&
|
|
345
|
-
? await
|
|
346
|
-
: await
|
|
339
|
+
const history = includeArchived && store.getFullHistory
|
|
340
|
+
? await store.getFullHistory(targetSessionId, limit)
|
|
341
|
+
: await store.getHistory(targetSessionId, limit);
|
|
347
342
|
const result = {
|
|
348
343
|
ok: true,
|
|
349
344
|
sessionId: targetSessionId,
|
|
350
345
|
count: history.length,
|
|
351
346
|
limit,
|
|
352
|
-
includeArchived: includeArchived && !!
|
|
347
|
+
includeArchived: includeArchived && !!store.getFullHistory,
|
|
353
348
|
messages: history.map((message, index) => formatHistoryMessage(message, index + 1, cfg.perMessageMaxChars)),
|
|
354
349
|
};
|
|
355
350
|
return result;
|
|
356
351
|
}
|
|
357
352
|
catch (err) {
|
|
358
353
|
const message = err instanceof Error ? err.message : String(err);
|
|
359
|
-
|
|
354
|
+
logger.warn(`session-history 读取失败 (${targetSessionId}): ${message}`);
|
|
360
355
|
return { error: `读取会话历史失败: ${message}` };
|
|
361
356
|
}
|
|
362
357
|
},
|
|
363
358
|
};
|
|
364
359
|
}
|
|
365
|
-
function registerSessionHistoryTools(
|
|
366
|
-
|
|
360
|
+
function registerSessionHistoryTools({ tools, logger }, historyService, cfg) {
|
|
361
|
+
tools.registerGroup({
|
|
367
362
|
name: 'session-history',
|
|
368
363
|
label: '会话历史读取',
|
|
369
364
|
description: '按 Aalis sessionId 读取近期会话历史,用于核实跨会话上下文',
|
|
370
365
|
});
|
|
371
|
-
|
|
366
|
+
tools.register({
|
|
372
367
|
groups: ['session-history'],
|
|
373
368
|
definition: {
|
|
374
369
|
type: 'function',
|
|
@@ -433,10 +428,48 @@ function registerSessionHistoryTools(ctx, historyService, cfg) {
|
|
|
433
428
|
return JSON.stringify(result);
|
|
434
429
|
},
|
|
435
430
|
});
|
|
436
|
-
|
|
431
|
+
logger.info('会话历史读取工具已注册');
|
|
432
|
+
}
|
|
433
|
+
/**
|
|
434
|
+
* 登记「当前回合由深度 N 的委派消息驱动」。
|
|
435
|
+
*
|
|
436
|
+
* 登记点在 `agent:input:before`——回合真正开始的那一刻,且是所有投递方式的汇合处:
|
|
437
|
+
* 经 `inbound:message` 事件进来的和直接调 `gateway.ingressMessage()` 的都要过这道钩子,
|
|
438
|
+
* 登记因而必然早于本回合的任何工具调用。
|
|
439
|
+
*
|
|
440
|
+
* 入站即写、回合结束(`agent:turn:after`)即清;下一条不带 proactiveDepth 的入站消息
|
|
441
|
+
* (真人消息、idle/interval 自动触发都算)会覆盖清除该会话的登记,所以即使某轮没等到
|
|
442
|
+
* turn:after(被中间件吞、进程重启前残留),这样的下一条消息也能立刻解锁——无需任何超时兜底。
|
|
443
|
+
*
|
|
444
|
+
* 锁按 sessionId 记,是「会话近似回合」:同会话不同 source 的并行回合共用同一把锁,
|
|
445
|
+
* 后开始的那个会覆盖前一个的登记、先结束的那个会替所有人解锁。
|
|
446
|
+
*/
|
|
447
|
+
function trackProactiveTurnDepth(hooks, turnProactiveDepth) {
|
|
448
|
+
hooks.middleware('agent:input:before', async (data, next) => {
|
|
449
|
+
const depth = typeof data.message.proactiveDepth === 'number' ? data.message.proactiveDepth : 0;
|
|
450
|
+
if (depth > 0)
|
|
451
|
+
turnProactiveDepth.set(data.message.sessionId, depth);
|
|
452
|
+
else
|
|
453
|
+
turnProactiveDepth.delete(data.message.sessionId);
|
|
454
|
+
await next();
|
|
455
|
+
});
|
|
456
|
+
hooks.middleware('agent:turn:after', async (data, next) => {
|
|
457
|
+
await next();
|
|
458
|
+
turnProactiveDepth.delete(data.sessionId);
|
|
459
|
+
});
|
|
437
460
|
}
|
|
438
|
-
function registerCrossSessionTools(
|
|
439
|
-
|
|
461
|
+
function registerCrossSessionTools(caps, cfg) {
|
|
462
|
+
const { tools, logger, events, hooks, memory, platform, persona } = caps;
|
|
463
|
+
/**
|
|
464
|
+
* sessionId → 该会话当前回合的入站消息所带 proactiveDepth(非委派回合不在表内)。
|
|
465
|
+
* 随这次激活存亡:锁由本次激活的 `agent:input:before` 中间件写入、由本次激活注册的工具读取,
|
|
466
|
+
* 插件重载后旧锁必须一并消失,否则新激活会拿着没有对应回合的残留锁拒绝委派。
|
|
467
|
+
*/
|
|
468
|
+
const turnProactiveDepth = new Map();
|
|
469
|
+
/** (目标会话, task) → 最近一次派发状态;同样随激活存亡(60s 提醒窗,跨重载无保留价值) */
|
|
470
|
+
const recentDelegations = new Map();
|
|
471
|
+
trackProactiveTurnDepth(hooks, turnProactiveDepth);
|
|
472
|
+
tools.registerGroup({
|
|
440
473
|
name: 'session-delegate',
|
|
441
474
|
label: '跨会话派发',
|
|
442
475
|
description: '向已存在的其他会话(如另一个群、另一个 QQ 好友、另一个平台)派发任务并可选等待结果。',
|
|
@@ -444,7 +477,7 @@ function registerCrossSessionTools(ctx, cfg) {
|
|
|
444
477
|
// ---- list_known_sessions ----
|
|
445
478
|
// 列出最近活跃的会话(按平台/最近活跃时间),供 agent 在 delegate 前发现可派发目标,
|
|
446
479
|
// 避免凭空拼接 sessionId 出错。基于 memory 的 getRecentMessagesAcrossSessions 能力。
|
|
447
|
-
|
|
480
|
+
tools.register({
|
|
448
481
|
groups: ['session-delegate'],
|
|
449
482
|
definition: {
|
|
450
483
|
type: 'function',
|
|
@@ -485,8 +518,8 @@ function registerCrossSessionTools(ctx, cfg) {
|
|
|
485
518
|
},
|
|
486
519
|
},
|
|
487
520
|
handler: async (args, callCtx) => {
|
|
488
|
-
const
|
|
489
|
-
if (!
|
|
521
|
+
const store = memory.current;
|
|
522
|
+
if (!store?.getRecentMessagesAcrossSessions) {
|
|
490
523
|
return JSON.stringify({
|
|
491
524
|
error: '当前 memory 服务不支持 getRecentMessagesAcrossSessions 能力',
|
|
492
525
|
});
|
|
@@ -496,7 +529,7 @@ function registerCrossSessionTools(ctx, cfg) {
|
|
|
496
529
|
const platformFilter = typeof args.platform === 'string' && args.platform.trim().length > 0 ? args.platform.trim() : undefined;
|
|
497
530
|
const sinceTs = Date.now() - sinceHours * 3600 * 1000;
|
|
498
531
|
// 多取一些消息再按 session 聚合,确保 limit 个会话能凑齐
|
|
499
|
-
const records = await
|
|
532
|
+
const records = await store.getRecentMessagesAcrossSessions({
|
|
500
533
|
limit: Math.max(limit * 10, 200),
|
|
501
534
|
sinceTs,
|
|
502
535
|
platform: platformFilter,
|
|
@@ -510,12 +543,12 @@ function registerCrossSessionTools(ctx, cfg) {
|
|
|
510
543
|
if (!existing || ts > existing.lastTs) {
|
|
511
544
|
const content = typeof rec.message.content === 'string' ? rec.message.content : '';
|
|
512
545
|
const preview = content.length > 80 ? `${content.slice(0, 80)}...` : content;
|
|
513
|
-
const
|
|
546
|
+
const platformName = rec.message.metadata?.platform != null
|
|
514
547
|
? String(rec.message.metadata.platform)
|
|
515
548
|
: rec.sessionId.split(':')[0] || undefined;
|
|
516
549
|
bySession.set(rec.sessionId, {
|
|
517
550
|
sessionId: rec.sessionId,
|
|
518
|
-
platform,
|
|
551
|
+
platform: platformName,
|
|
519
552
|
lastTs: ts,
|
|
520
553
|
preview,
|
|
521
554
|
});
|
|
@@ -540,7 +573,7 @@ function registerCrossSessionTools(ctx, cfg) {
|
|
|
540
573
|
// ---- delegate_to_session ----
|
|
541
574
|
// 向已存在的目标会话派发一次任务,目标会话的 agent 在自己原本的人设/记忆/工具集下完整推理;
|
|
542
575
|
// 与 create_subtask 不同:目标不是新建的"子会话",而是任意已知 sessionId(如群聊、私聊、跨平台)。
|
|
543
|
-
|
|
576
|
+
tools.register({
|
|
544
577
|
groups: ['session-delegate'],
|
|
545
578
|
definition: {
|
|
546
579
|
type: 'function',
|
|
@@ -567,7 +600,9 @@ function registerCrossSessionTools(ctx, cfg) {
|
|
|
567
600
|
'- 其他平台:参考各平台 adapter 的 sessionId 约定。',
|
|
568
601
|
'',
|
|
569
602
|
'【安全限制】',
|
|
570
|
-
'-
|
|
603
|
+
'- 防雪崩:委派消息驱动的那一个回合内禁止再委派(A→B 允许,B 处理这条委派时不能再 delegate);',
|
|
604
|
+
' 回合结束即解除,该会话之后由下一条不带 proactiveDepth 的入站消息',
|
|
605
|
+
' (真人消息、idle/interval 自动触发都算)驱动的回合不受影响。',
|
|
571
606
|
'- 平台限速:平台 adapter 可声明 checkAndRecordProactiveSend 做主动发送频率限制,超额会被拒绝。',
|
|
572
607
|
'- 自委派被禁止:target_session_id 不能等于当前 sessionId。',
|
|
573
608
|
'',
|
|
@@ -632,18 +667,16 @@ function registerCrossSessionTools(ctx, cfg) {
|
|
|
632
667
|
if (targetSessionId === callCtx.sessionId) {
|
|
633
668
|
return JSON.stringify({ error: 'target_session_id 不能等于当前会话;如需自我追问请直接生成下一轮回复。' });
|
|
634
669
|
}
|
|
635
|
-
//
|
|
636
|
-
const
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
return JSON.stringify({
|
|
640
|
-
error: `委派链已达最大深度 ${PROACTIVE_DEPTH_MAX}(当前会话本身正以 proactive 链路被驱动,禁止再次 delegate 以防雪崩)`,
|
|
641
|
-
});
|
|
670
|
+
// 防雪崩:只看「本回合是不是委派消息驱动的」。深度随消息走,回合结束即解除。
|
|
671
|
+
const currentDepth = turnProactiveDepth.get(callCtx.sessionId) ?? 0;
|
|
672
|
+
if (currentDepth >= PROACTIVE_DEPTH_MAX) {
|
|
673
|
+
return JSON.stringify({ error: '本回合由委派消息驱动,不能再委派' });
|
|
642
674
|
}
|
|
675
|
+
const targetDepth = currentDepth + 1;
|
|
643
676
|
// 解析目标平台,应用可选限速闸门
|
|
644
677
|
let platformName;
|
|
645
678
|
try {
|
|
646
|
-
const adapter = await resolvePlatformBySession(
|
|
679
|
+
const adapter = await resolvePlatformBySession(platform, targetSessionId, logger);
|
|
647
680
|
if (adapter) {
|
|
648
681
|
platformName = adapter.platform;
|
|
649
682
|
const gate = adapter.checkAndRecordProactiveSend;
|
|
@@ -656,16 +689,14 @@ function registerCrossSessionTools(ctx, cfg) {
|
|
|
656
689
|
}
|
|
657
690
|
}
|
|
658
691
|
catch (err) {
|
|
659
|
-
|
|
692
|
+
logger.warn(`[delegate] 解析目标平台失败 (${targetSessionId}): ${err}`);
|
|
660
693
|
}
|
|
661
|
-
// 标记目标进入 proactive 链路
|
|
662
|
-
setProactiveDepth(targetSessionId, targetDepth);
|
|
663
694
|
// ===== 注入 META 提示(提醒型,不挡派发) =====
|
|
664
695
|
const now = Date.now();
|
|
665
|
-
pruneRecentDelegations(now);
|
|
696
|
+
pruneRecentDelegations(recentDelegations, now);
|
|
666
697
|
const taskHash = hashTask(task);
|
|
667
698
|
const dedupKey = recentDelegationKey(targetSessionId, taskHash);
|
|
668
|
-
const recents = findRecentDelegationsForTarget(targetSessionId, now);
|
|
699
|
+
const recents = findRecentDelegationsForTarget(recentDelegations, targetSessionId, now);
|
|
669
700
|
const taskWithMeta = buildDelegationMetaBlock(callCtx.sessionId, targetSessionId, task, recents, now);
|
|
670
701
|
const entry = {
|
|
671
702
|
firedAt: now,
|
|
@@ -677,7 +708,7 @@ function registerCrossSessionTools(ctx, cfg) {
|
|
|
677
708
|
};
|
|
678
709
|
recentDelegations.set(dedupKey, entry);
|
|
679
710
|
if (recents.length > 0) {
|
|
680
|
-
|
|
711
|
+
logger.info(`[delegate] META 提醒已注入:${targetSessionId} 在 60s 内已收到 ${recents.length} 次同/近期任务`);
|
|
681
712
|
}
|
|
682
713
|
const incoming = {
|
|
683
714
|
content: taskWithMeta,
|
|
@@ -685,6 +716,8 @@ function registerCrossSessionTools(ctx, cfg) {
|
|
|
685
716
|
platform: platformName ?? callCtx.platform ?? 'internal',
|
|
686
717
|
source: `proactive:from:${callCtx.sessionId}`,
|
|
687
718
|
triggerType: 'proactive',
|
|
719
|
+
// 深度随消息走:目标会话处理这条消息的那一个回合内不能再委派
|
|
720
|
+
proactiveDepth: targetDepth,
|
|
688
721
|
};
|
|
689
722
|
// 授权身份透传(schema-message 的 actor 契约):authority 按发起者 (platform, userId)
|
|
690
723
|
// 实时查等级——权限跟人走。优先 callCtx.actor(本回合已在代人执行时链式传递),
|
|
@@ -695,12 +728,12 @@ function registerCrossSessionTools(ctx, cfg) {
|
|
|
695
728
|
if (delegateActor)
|
|
696
729
|
incoming.actor = delegateActor;
|
|
697
730
|
const taskPreview = task.length > 80 ? `${task.slice(0, 80)}... (+${task.length - 80}字,全文已完整传递给目标会话)` : task;
|
|
698
|
-
|
|
731
|
+
logger.info(`[delegate] from=${callCtx.sessionId} -> ${targetSessionId} depth=${targetDepth} wait=${waitForResult} task="${taskPreview}"`);
|
|
699
732
|
if (!waitForResult) {
|
|
700
|
-
|
|
701
|
-
|
|
733
|
+
events.emit('inbound:message', incoming).catch(err => {
|
|
734
|
+
logger.warn(`[delegate] 派发失败 (${targetSessionId}): ${err}`);
|
|
702
735
|
});
|
|
703
|
-
|
|
736
|
+
logger.info(`[delegate] return -> ${callCtx.sessionId} wait=false (fire-and-forget)`);
|
|
704
737
|
return JSON.stringify({
|
|
705
738
|
delegated: true,
|
|
706
739
|
targetSessionId,
|
|
@@ -715,7 +748,7 @@ function registerCrossSessionTools(ctx, cfg) {
|
|
|
715
748
|
const waitPromise = new Promise(resolve => {
|
|
716
749
|
resolveWait = resolve;
|
|
717
750
|
});
|
|
718
|
-
const dispose =
|
|
751
|
+
const dispose = hooks.middleware('agent:turn:after', async (data, next) => {
|
|
719
752
|
await next();
|
|
720
753
|
if (captured)
|
|
721
754
|
return;
|
|
@@ -728,7 +761,7 @@ function registerCrossSessionTools(ctx, cfg) {
|
|
|
728
761
|
});
|
|
729
762
|
const timeoutHandle = setTimeout(() => resolveWait?.(), timeoutMs);
|
|
730
763
|
try {
|
|
731
|
-
await
|
|
764
|
+
await events.emit('inbound:message', incoming);
|
|
732
765
|
await waitPromise;
|
|
733
766
|
}
|
|
734
767
|
finally {
|
|
@@ -736,7 +769,7 @@ function registerCrossSessionTools(ctx, cfg) {
|
|
|
736
769
|
dispose();
|
|
737
770
|
}
|
|
738
771
|
if (!captured) {
|
|
739
|
-
|
|
772
|
+
logger.warn(`[delegate] return -> ${callCtx.sessionId} timedOut=true wait=${timeoutSec}s (未捕获 agent:turn:after)`);
|
|
740
773
|
return JSON.stringify({
|
|
741
774
|
delegated: true,
|
|
742
775
|
targetSessionId,
|
|
@@ -762,8 +795,7 @@ function registerCrossSessionTools(ctx, cfg) {
|
|
|
762
795
|
// 不挂载或未产出时不放该字段,避免上游对「persona 一定存在」做假设。
|
|
763
796
|
let personaState;
|
|
764
797
|
try {
|
|
765
|
-
const
|
|
766
|
-
const state = personaService?.getSessionState?.(targetSessionId);
|
|
798
|
+
const state = persona.current?.getSessionState?.(targetSessionId);
|
|
767
799
|
if (state && Object.keys(state).length > 0) {
|
|
768
800
|
personaState = state;
|
|
769
801
|
}
|
|
@@ -787,22 +819,30 @@ function registerCrossSessionTools(ctx, cfg) {
|
|
|
787
819
|
: captured.reply.length > 60
|
|
788
820
|
? `"${captured.reply.slice(0, 60).replace(/\n/g, ' ')}..." (+${captured.reply.length - 60}字)`
|
|
789
821
|
: `"${captured.reply.replace(/\n/g, ' ')}"`;
|
|
790
|
-
|
|
822
|
+
logger.info(`[delegate] return -> ${callCtx.sessionId} outcome=${captured.outcome} reply=${replyPreview}${personaState ? ' personaState=yes' : ''}`);
|
|
791
823
|
return JSON.stringify(payload);
|
|
792
824
|
},
|
|
793
825
|
});
|
|
794
|
-
|
|
826
|
+
logger.info('跨会话协作工具已注册');
|
|
795
827
|
}
|
|
796
828
|
// ===== 插件入口 =====
|
|
797
|
-
export
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
829
|
+
export default definePlugin({
|
|
830
|
+
name: '@aalis/plugin-tool-session',
|
|
831
|
+
displayName: '会话工具',
|
|
832
|
+
subsystem: 'session',
|
|
833
|
+
configSchema,
|
|
834
|
+
provides: [sessionHistory],
|
|
835
|
+
uses,
|
|
836
|
+
apply(caps) {
|
|
837
|
+
const cfg = resolveConfig(caps.config);
|
|
838
|
+
if (!cfg.enabled)
|
|
839
|
+
return;
|
|
840
|
+
const historyService = createSessionHistoryService(caps, cfg);
|
|
841
|
+
caps.provide(sessionHistory, historyService, { label: '会话历史读取' });
|
|
842
|
+
registerSessionHistoryTools(caps, historyService, cfg);
|
|
843
|
+
if (cfg.crossSessionEnabled) {
|
|
844
|
+
registerCrossSessionTools(caps, cfg);
|
|
845
|
+
}
|
|
846
|
+
},
|
|
847
|
+
});
|
|
808
848
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAG/D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAKlD,wCAAwC;AACxC,uEAAuE;AACvE,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAC9B,MAAM,sBAAsB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAC9C,MAAM,cAAc,GAAG,IAAI,GAAG,EAAgD,CAAC;AAE/E,SAAS,iBAAiB,CAAC,SAAiB;IAC1C,MAAM,KAAK,GAAG,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC5C,IAAI,CAAC,KAAK;QAAE,OAAO,CAAC,CAAC;IACrB,IAAI,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QAClC,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACjC,OAAO,CAAC,CAAC;IACX,CAAC;IACD,OAAO,KAAK,CAAC,KAAK,CAAC;AACrB,CAAC;AAED,SAAS,iBAAiB,CAAC,SAAiB,EAAE,KAAa;IACzD,cAAc,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,sBAAsB,EAAE,CAAC,CAAC;AAC3F,CAAC;AAED,oCAAoC;AACpC,2CAA2C;AAC3C,kDAAkD;AAClD,qCAAqC;AACrC,MAAM,wBAAwB,GAAG,EAAE,GAAG,IAAI,CAAC;AAC3C,MAAM,qBAAqB,GAAG,GAAG,CAAC,CAAC,SAAS;AAW5C,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAiC,CAAC;AAEnE,SAAS,mBAAmB,CAAC,eAAuB,EAAE,QAAgB;IACpE,OAAO,GAAG,eAAe,KAAK,QAAQ,EAAE,CAAC;AAC3C,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY;IAC5B,kDAAkD;IAClD,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IACtB,IAAI,CAAC,GAAG,IAAI,CAAC;IACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAClC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AACjD,CAAC;AAED,SAAS,sBAAsB,CAAC,GAAW;IACzC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,iBAAiB,EAAE,CAAC;QAC7C,IAAI,KAAK,CAAC,SAAS,IAAI,GAAG;YAAE,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC5D,CAAC;IACD,WAAW;IACX,IAAI,iBAAiB,CAAC,IAAI,GAAG,qBAAqB,EAAE,CAAC;QACnD,MAAM,MAAM,GAAG,CAAC,GAAG,iBAAiB,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAC5F,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,qBAAqB,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/D,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,8BAA8B,CAAC,eAAuB,EAAE,GAAW;IAC1E,MAAM,MAAM,GAAG,GAAG,eAAe,IAAI,CAAC;IACtC,MAAM,IAAI,GAA4B,EAAE,CAAC;IACzC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,iBAAiB,EAAE,CAAC;QAC7C,IAAI,KAAK,CAAC,SAAS,IAAI,GAAG;YAAE,SAAS;QACrC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC;YAAE,SAAS;QACtC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC;IAC3C,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,wBAAwB,CAC/B,eAAuB,EACvB,eAAuB,EACvB,IAAY,EACZ,OAAgC,EAChC,GAAW;IAEX,KAAK,eAAe,CAAC;IACrB,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,UAAU,eAAe,EAAE,CAAC,CAAC;IACxC,KAAK,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;IACvD,KAAK,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;IACvE,KAAK,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;IACtE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,uBAAuB,OAAO,CAAC,MAAM,eAAe,CAAC,CAAC;QACjE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACrD,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YACrB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;YACpD,MAAM,KAAK,GAAG,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACzE,KAAK,CAAC,IAAI,CACR,OAAO,MAAM,cAAc,CAAC,CAAC,eAAe,aAAa,CAAC,CAAC,MAAM,GAAG,KAAK,YAAY,CAAC,CAAC,WAAW,GAAG,CACtG,CAAC;QACJ,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAClC,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACrB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,oBAAoB;AAEpB,MAAM,CAAC,MAAM,IAAI,GAAG,4BAA4B,CAAC;AACjD,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC;AAClC,MAAM,CAAC,MAAM,SAAS,GAAG,SAAS,CAAC;AACnC,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,iBAAiB,CAAC,CAAC;AAC5C,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,QAAQ,EAAE,CAAC,QAAQ,CAAC;CACrB,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAiB;IACxC,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE;IAChE,QAAQ,EAAE;QACR,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,UAAU;QACjB,OAAO,EAAE,GAAG;QACZ,WAAW,EAAE,kEAAkE;KAChF;IACD,YAAY,EAAE;QACZ,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,wBAAwB;QAC/B,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,kDAAkD;KAChE;IACD,KAAK,EAAE;QACL,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE,UAAU;QACnB,OAAO,EAAE;YACP,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE;YACpC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE;YACrC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE;SAChC;KACF;IACD,sBAAsB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,KAAK,EAAE;IAC/E,kBAAkB,EAAE;QAClB,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,UAAU;QACjB,OAAO,EAAE,CAAC;QACV,WAAW,EAAE,qDAAqD;KACnE;IACD,mBAAmB,EAAE;QACnB,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,qDAAqD;QAC5D,OAAO,EAAE,IAAI;QACb,WAAW,EACT,mEAAmE;KACtE;IACD,6BAA6B,EAAE;QAC7B,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,aAAa;QACpB,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,sDAAsD;KACpE;CACF,CAAC;AAyBF,uDAAuD;AACvD,MAAM,mBAAmB,GAAG,IAAI,CAAC;AAEjC,2EAA2E;AAE3E;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,KAAc;IAC3C,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK,EAAE;QAAE,OAAO,IAAI,CAAC;IAC/C,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5E,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC7B,IAAI,OAAO,KAAK,EAAE;YAAE,OAAO,IAAI,CAAC;QAChC,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1B,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;YAC1B,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACvC,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACnC,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;IAC9C,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAC9B,IAAoE,EACpE,GAAW;IAEX,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC;IACzD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC;IACzD,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,IAAI,IAAI,IAAI,IAAI,CAAC,cAAc,KAAK,EAAE,CAAC;IAE5E,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;QACzB,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC1C,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;gBACnB,OAAO,EAAE,KAAK,EAAE,iBAAiB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,sBAAsB,EAAE,CAAC;YAC9E,CAAC;YACD,MAAM,GAAG,MAAM,CAAC;QAClB,CAAC;QACD,IAAI,IAAI,GAAG,GAAG,CAAC;QACf,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC1C,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;gBACnB,OAAO,EAAE,KAAK,EAAE,iBAAiB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,sBAAsB,EAAE,CAAC;YAC9E,CAAC;YACD,IAAI,GAAG,MAAM,CAAC;QAChB,CAAC;QACD,IAAI,MAAM,GAAG,IAAI;YAAE,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC;QACxD,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC5C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,IAAI,CAAC,EAAE,CAAC;YAC9C,OAAO,EAAE,KAAK,EAAE,wBAAwB,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC;QAC1E,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,GAAG,GAAG,OAAO,GAAG,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;IACvD,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,aAAa,CAAC,GAA4B;IACjD,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC;IAC3B,MAAM,KAAK,GAAG,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC;IACnF,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;IAC1E,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAChF,OAAO;QACL,OAAO,EAAE,GAAG,CAAC,OAAO,KAAK,KAAK;QAC9B,QAAQ;QACR,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,QAAQ,CAAC;QACjD,KAAK;QACL,sBAAsB,EAAE,GAAG,CAAC,sBAAsB,KAAK,IAAI;QAC3D,kBAAkB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACpE,mBAAmB,EAAE,GAAG,CAAC,mBAAmB,KAAK,KAAK;QACtD,6BAA6B,EAAE,MAAM,CAAC,GAAG,CAAC,6BAA6B,CAAC,IAAI,EAAE;KAC/E,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,SAAiB;IACtC,OAAO,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AACvC,CAAC;AAED,SAAS,oBAAoB,CAAC,OAAgB,EAAE,KAAa,EAAE,kBAA0B;IACvF,MAAM,IAAI,GACR,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ;QACjC,CAAC,CAAC,OAAO,CAAC,OAAO;QACjB,CAAC,CAAC,OAAO,CAAC,OAAO,IAAI,IAAI;YACvB,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,OAAO,GACX,kBAAkB,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,kBAAkB;QACxD,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,kBAAkB,CAAC,YAAY,IAAI,CAAC,MAAM,GAAG,kBAAkB,UAAU;QAC5F,CAAC,CAAC,IAAI,CAAC;IACX,OAAO;QACL,KAAK;QACL,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,OAAO;QACP,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,IAAI;QACpC,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,IAAI;QAC1B,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,SAAS;KACxC,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAC5B,gBAAwB,EACxB,eAAuB,EACvB,eAAmC,EACnC,KAAqC,EACrC,QAAkC,EAClC,OAAwB;IAExB,cAAc;IACd,IAAI,eAAe,KAAK,gBAAgB,EAAE,CAAC;QACzC,2BAA2B;IAC7B,CAAC;SAAM,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAClD,CAAC;SAAM,IAAI,KAAK,KAAK,UAAU,EAAE,CAAC;QAChC,MAAM,OAAO,GAAG,eAAe,IAAI,aAAa,CAAC,gBAAgB,CAAC,CAAC;QACnE,MAAM,MAAM,GAAG,aAAa,CAAC,eAAe,CAAC,CAAC;QAC9C,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;YAC9C,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,uBAAuB,OAAO,IAAI,SAAS,QAAQ,MAAM,IAAI,SAAS,GAAG;aAClF,CAAC;QACJ,CAAC;IACH,CAAC;IACD,gCAAgC;IAEhC,2DAA2D;IAC3D,MAAM,cAAc,GAAG,aAAa,CAAC,eAAe,CAAC,CAAC;IACtD,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,cAAc,CAAC,CAAC;IACpE,KAAK,MAAM,OAAO,IAAI,OAAO,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,EAAE,gBAAgB,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,CAAC;QAC9E,IAAI,OAAO,EAAE,QAAQ,KAAK,MAAM,EAAE,CAAC;YACjC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,MAAM,cAAc,YAAY,EAAE,CAAC;QACnF,CAAC;IACH,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;AACtB,CAAC;AAED,SAAS,2BAA2B,CAAC,GAAY,EAAE,GAAiB;IAClE,MAAM,QAAQ,GAAoB,EAAE,CAAC;IAErC,OAAO;QACL,qBAAqB,CAAC,OAAsB;YAC1C,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACvB,OAAO,GAAG,EAAE;gBACV,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBACtC,IAAI,GAAG,IAAI,CAAC;oBAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YACxC,CAAC,CAAC;QACJ,CAAC;QAED,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO;YAC/B,MAAM,MAAM,GAAG,GAAG,CAAC,UAAU,CAAgB,QAAQ,CAAC,CAAC;YACvD,IAAI,CAAC,MAAM;gBAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC;YAE9C,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAC/D,IAAI,CAAC,eAAe;gBAAE,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC;YAEzD,MAAM,OAAO,GAAG,qBAAqB,CACnC,OAAO,CAAC,SAAS,EACjB,eAAe,EACf,OAAO,CAAC,QAAQ,EAChB,GAAG,CAAC,KAAK,EACT,QAAQ,EACR,OAAO,CACR,CAAC;YACF,IAAI,CAAC,OAAO,CAAC,EAAE;gBAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;YAElD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACzG,MAAM,eAAe,GACnB,OAAO,OAAO,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,sBAAsB,CAAC;YAEtG,sDAAsD;YACtD,6DAA6D;YAC7D,MAAM,QAAQ,GAAG,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC;YAE5F,IAAI,CAAC;gBACH,IAAI,QAAQ,EAAE,CAAC;oBACb,MAAM,MAAM,GAAG,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;oBACzE,MAAM,IAAI,GAAG,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;oBAChF,IAAI,MAAiB,CAAC;oBACtB,kEAAkE;oBAClE,IAAI,gBAAgB,GAAG,IAAI,CAAC;oBAC5B,IAAI,MAAM,CAAC,yBAAyB,EAAE,CAAC;wBACrC,MAAM,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,eAAe,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;oBACjF,CAAC;yBAAM,CAAC;wBACN,wDAAwD;wBACxD,IAAI,IAAe,CAAC;wBACpB,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;4BAC1B,IAAI,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC;wBAC3E,CAAC;6BAAM,CAAC;4BACN,IAAI,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC;4BACrE,gBAAgB,GAAG,KAAK,CAAC,CAAC,uBAAuB;wBACnD,CAAC;wBACD,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;4BACvB,MAAM,EAAE,GAAG,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC;4BAC5B,OAAO,EAAE,IAAI,MAAM,IAAI,EAAE,IAAI,IAAI,CAAC;wBACpC,CAAC,CAAC,CAAC;oBACL,CAAC;oBACD,8DAA8D;oBAC9D,0CAA0C;oBAC1C,6DAA6D;oBAC7D,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;oBACtC,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;oBAChD,MAAM,MAAM,GAAyB;wBACnC,EAAE,EAAE,IAAI;wBACR,SAAS,EAAE,eAAe;wBAC1B,KAAK,EAAE,MAAM,CAAC,MAAM;wBACpB,KAAK;wBACL,eAAe,EAAE,gBAAgB;wBACjC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;wBACvB,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACzC,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,oBAAoB,CAAC,OAAO,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,CAAC,kBAAkB,CAAC,CAAC;qBAC3G,CAAC;oBACF,OAAO,MAAM,CAAC;gBAChB,CAAC;gBAED,MAAM,OAAO,GACX,eAAe,IAAI,MAAM,CAAC,cAAc;oBACtC,CAAC,CAAC,MAAM,MAAM,CAAC,cAAc,CAAC,eAAe,EAAE,KAAK,CAAC;oBACrD,CAAC,CAAC,MAAM,MAAM,CAAC,UAAU,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;gBACtD,MAAM,MAAM,GAAyB;oBACnC,EAAE,EAAE,IAAI;oBACR,SAAS,EAAE,eAAe;oBAC1B,KAAK,EAAE,OAAO,CAAC,MAAM;oBACrB,KAAK;oBACL,eAAe,EAAE,eAAe,IAAI,CAAC,CAAC,MAAM,CAAC,cAAc;oBAC3D,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,oBAAoB,CAAC,OAAO,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,CAAC,kBAAkB,CAAC,CAAC;iBAC5G,CAAC;gBACF,OAAO,MAAM,CAAC;YAChB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACjE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,eAAe,MAAM,OAAO,EAAE,CAAC,CAAC;gBACzE,OAAO,EAAE,KAAK,EAAE,aAAa,OAAO,EAAE,EAAE,CAAC;YAC3C,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,2BAA2B,CAAC,GAAY,EAAE,cAAqC,EAAE,GAAiB;IACzG,cAAc,CAAC,GAAG,CAAC,CAAC,aAAa,CAAC;QAChC,IAAI,EAAE,iBAAiB;QACvB,KAAK,EAAE,QAAQ;QACf,WAAW,EAAE,uCAAuC;KACrD,CAAC,CAAC;IAEH,cAAc,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC;QAC3B,MAAM,EAAE,CAAC,iBAAiB,CAAC;QAC3B,UAAU,EAAE;YACV,IAAI,EAAE,UAAU;YAChB,QAAQ,EAAE;gBACR,IAAI,EAAE,qBAAqB;gBAC3B,WAAW,EAAE;oBACX,8BAA8B;oBAC9B,OAAO;oBACP,4BAA4B;oBAC5B,2DAA2D;oBAC3D,6CAA6C;oBAC7C,uCAAuC;oBACvC,6CAA6C;oBAC7C,oDAAoD;iBACrD,CAAC,IAAI,CAAC,IAAI,CAAC;gBACZ,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gDAAgD,EAAE;wBAC7F,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,yBAAyB,GAAG,CAAC,YAAY,OAAO,GAAG,CAAC,QAAQ,EAAE;yBAC5E;wBACD,gBAAgB,EAAE;4BAChB,IAAI,EAAE,SAAS;4BACf,WAAW,EAAE,uCAAuC;yBACrD;wBACD,cAAc,EAAE;4BACd,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,yCAAyC;yBACvD;wBACD,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ;4BACd,WAAW,EACT,uEAAuE;yBAC1E;wBACD,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,oCAAoC;yBAClD;qBACF;oBACD,QAAQ,EAAE,CAAC,YAAY,CAAC;oBACxB,oBAAoB,EAAE,KAAK;iBAC5B;aACF;SACF;QACD,yCAAyC;QACzC,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;YAC/B,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAC7D,IAAI,CAAC,eAAe;gBAAE,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC,CAAC;YAC1E,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YACjD,IAAI,KAAK,IAAI,OAAO,IAAI,KAAK;gBAAE,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;YAC7E,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,UAAU,CAC5C;gBACE,SAAS,EAAE,eAAe;gBAC1B,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,SAAS;gBACtC,eAAe,EAAE,OAAO,IAAI,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS;gBAC/F,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;gBACzC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;aACxC,EACD,OAAO,CACR,CAAC;YACF,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC;KACF,CAAC,CAAC;IAEH,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AACjC,CAAC;AAED,SAAS,yBAAyB,CAAC,GAAY,EAAE,GAAiB;IAChE,cAAc,CAAC,GAAG,CAAC,CAAC,aAAa,CAAC;QAChC,IAAI,EAAE,kBAAkB;QACxB,KAAK,EAAE,OAAO;QACd,WAAW,EAAE,8CAA8C;KAC5D,CAAC,CAAC;IAEH,gCAAgC;IAChC,qDAAqD;IACrD,sEAAsE;IACtE,cAAc,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC;QAC3B,MAAM,EAAE,CAAC,kBAAkB,CAAC;QAC5B,UAAU,EAAE;YACV,IAAI,EAAE,UAAU;YAChB,QAAQ,EAAE;gBACR,IAAI,EAAE,qBAAqB;gBAC3B,WAAW,EAAE;oBACX,wEAAwE;oBACxE,EAAE;oBACF,QAAQ;oBACR,0EAA0E;oBAC1E,+CAA+C;oBAC/C,mCAAmC;oBACnC,iCAAiC;oBACjC,EAAE;oBACF,MAAM;oBACN,uEAAuE;oBACvE,eAAe;iBAChB,CAAC,IAAI,CAAC,IAAI,CAAC;gBACZ,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,uBAAuB;yBACrC;wBACD,QAAQ,EAAE;4BACR,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,gCAAgC;yBAC9C;wBACD,WAAW,EAAE;4BACX,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,oCAAoC;yBAClD;qBACF;oBACD,QAAQ,EAAE,EAAE;oBACZ,oBAAoB,EAAE,KAAK;iBAC5B;aACF;SACF;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;YAC/B,MAAM,MAAM,GAAG,GAAG,CAAC,UAAU,CAAgB,QAAQ,CAAC,CAAC;YACvD,IAAI,CAAC,MAAM,EAAE,+BAA+B,EAAE,CAAC;gBAC7C,OAAO,IAAI,CAAC,SAAS,CAAC;oBACpB,KAAK,EAAE,oDAAoD;iBAC5D,CAAC,CAAC;YACL,CAAC;YACD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YACnE,MAAM,UAAU,GACd,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YAC7G,MAAM,cAAc,GAClB,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1G,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,UAAU,GAAG,IAAI,GAAG,IAAI,CAAC;YAEtD,sCAAsC;YACtC,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,+BAA+B,CAAC;gBAC3D,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,EAAE,GAAG,CAAC;gBAChC,OAAO;gBACP,QAAQ,EAAE,cAAc;gBACxB,iBAAiB,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS;gBACtE,KAAK,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC;aAC7B,CAAC,CAAC;YAEH,MAAM,SAAS,GAAG,IAAI,GAAG,EAAqF,CAAC;YAC/G,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;gBAC1B,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,SAAS,IAAI,CAAC,CAAC;gBACtC,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBAC9C,IAAI,CAAC,QAAQ,IAAI,EAAE,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;oBACtC,MAAM,OAAO,GAAG,OAAO,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;oBACnF,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;oBAC7E,MAAM,QAAQ,GACX,GAAG,CAAC,OAAO,CAAC,QAAgD,EAAE,QAAQ,IAAI,IAAI;wBAC7E,CAAC,CAAC,MAAM,CAAE,GAAG,CAAC,OAAO,CAAC,QAAoC,CAAC,QAAQ,CAAC;wBACpE,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;oBAC/C,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE;wBAC3B,SAAS,EAAE,GAAG,CAAC,SAAS;wBACxB,QAAQ;wBACR,MAAM,EAAE,EAAE;wBACV,OAAO;qBACR,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,MAAM,KAAK,GAAG,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC;iBAClC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;iBACnC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC;iBACf,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACT,UAAU,EAAE,CAAC,CAAC,SAAS;gBACvB,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,gBAAgB,EAAE,CAAC,CAAC,MAAM;gBAC1B,OAAO,EAAE,CAAC,CAAC,OAAO;aACnB,CAAC,CAAC,CAAC;YAEN,OAAO,IAAI,CAAC,SAAS,CAAC;gBACpB,KAAK,EAAE,KAAK,CAAC,MAAM;gBACnB,WAAW,EAAE,UAAU;gBACvB,QAAQ,EAAE,KAAK;aAChB,CAAC,CAAC;QACL,CAAC;KACF,CAAC,CAAC;IAEH,gCAAgC;IAChC,oDAAoD;IACpD,iEAAiE;IACjE,cAAc,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC;QAC3B,MAAM,EAAE,CAAC,kBAAkB,CAAC;QAC5B,UAAU,EAAE;YACV,IAAI,EAAE,UAAU;YAChB,QAAQ,EAAE;gBACR,IAAI,EAAE,qBAAqB;gBAC3B,WAAW,EAAE;oBACX,gEAAgE;oBAChE,iCAAiC;oBACjC,EAAE;oBACF,UAAU;oBACV,4CAA4C;oBAC5C,8DAA8D;oBAC9D,gCAAgC;oBAChC,wBAAwB;oBACxB,EAAE;oBACF,uBAAuB;oBACvB,sEAAsE;oBACtE,iEAAiE;oBACjE,wBAAwB;oBACxB,EAAE;oBACF,iBAAiB;oBACjB,2EAA2E;oBAC3E,uCAAuC;oBACvC,sCAAsC;oBACtC,EAAE;oBACF,QAAQ;oBACR,oEAAoE;oBACpE,qEAAqE;oBACrE,8CAA8C;oBAC9C,EAAE;oBACF,mBAAmB;oBACnB,wEAAwE;oBACxE,4CAA4C;oBAC5C,EAAE;oBACF,+BAA+B;oBAC/B,6EAA6E;oBAC7E,wEAAwE;oBACxE,0EAA0E;oBAC1E,2EAA2E;oBAC3E,sDAAsD;oBACtD,6BAA6B;oBAC7B,EAAE;oBACF,SAAS;oBACT,kFAAkF;oBAClF,4CAA4C;oBAC5C,sCAAsC;oBACtC,8DAA8D;oBAC9D,0BAA0B;iBAC3B,CAAC,IAAI,CAAC,IAAI,CAAC;gBACZ,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,iBAAiB,EAAE;4BACjB,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,gDAAgD;yBAC9D;wBACD,IAAI,EAAE;4BACJ,IAAI,EAAE,QAAQ;4BACd,WAAW,EACT,mDAAmD;gCACnD,iCAAiC;yBACpC;wBACD,eAAe,EAAE;4BACf,IAAI,EAAE,SAAS;4BACf,WAAW,EAAE,sCAAsC;yBACpD;wBACD,eAAe,EAAE;4BACf,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,kCAAkC,GAAG,CAAC,6BAA6B,cAAc;yBAC/F;qBACF;oBACD,QAAQ,EAAE,CAAC,mBAAmB,EAAE,MAAM,CAAC;oBACvC,oBAAoB,EAAE,KAAK;iBAC5B;aACF;SACF;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;YAC/B,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACpE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;YACrC,MAAM,aAAa,GAAG,IAAI,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,KAAK,IAAI,CAAC;YAChG,MAAM,mBAAmB,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YACzD,MAAM,UAAU,GACd,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,mBAAmB,GAAG,CAAC;gBAC7D,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,mBAAmB,CAAC;gBACpC,CAAC,CAAC,GAAG,CAAC,6BAA6B,CAAC;YACxC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC,CAAC;YAEpD,IAAI,CAAC,eAAe;gBAAE,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,wBAAwB,EAAE,CAAC,CAAC;YACjF,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;gBAAE,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;YAChE,IAAI,eAAe,KAAK,OAAO,CAAC,SAAS,EAAE,CAAC;gBAC1C,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,8CAA8C,EAAE,CAAC,CAAC;YACnF,CAAC;YAED,yBAAyB;YACzB,MAAM,WAAW,GAAG,iBAAiB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YACzD,MAAM,WAAW,GAAG,WAAW,GAAG,CAAC,CAAC;YACpC,IAAI,WAAW,GAAG,mBAAmB,EAAE,CAAC;gBACtC,OAAO,IAAI,CAAC,SAAS,CAAC;oBACpB,KAAK,EAAE,aAAa,mBAAmB,+CAA+C;iBACvF,CAAC,CAAC;YACL,CAAC;YAED,kBAAkB;YAClB,IAAI,YAAgC,CAAC;YACrC,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,wBAAwB,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;gBACrE,IAAI,OAAO,EAAE,CAAC;oBACZ,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC;oBAChC,MAAM,IAAI,GAAG,OAAO,CAAC,2BAA2B,CAAC;oBACjD,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE,CAAC;wBAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;wBACpD,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;4BACrB,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,aAAa,OAAO,CAAC,MAAM,IAAI,QAAQ,EAAE,EAAE,CAAC,CAAC;wBAC9E,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,wBAAwB,eAAe,MAAM,GAAG,EAAE,CAAC,CAAC;YACtE,CAAC;YAED,sBAAsB;YACtB,iBAAiB,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;YAEhD,mCAAmC;YACnC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,sBAAsB,CAAC,GAAG,CAAC,CAAC;YAC5B,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;YAChC,MAAM,QAAQ,GAAG,mBAAmB,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;YAChE,MAAM,OAAO,GAAG,8BAA8B,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;YACrE,MAAM,YAAY,GAAG,wBAAwB,CAAC,OAAO,CAAC,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;YACtG,MAAM,KAAK,GAA0B;gBACnC,OAAO,EAAE,GAAG;gBACZ,SAAS,EAAE,GAAG,GAAG,wBAAwB;gBACzC,eAAe,EAAE,OAAO,CAAC,SAAS;gBAClC,WAAW,EAAE,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;gBAChE,QAAQ;gBACR,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe;aACpD,CAAC;YACF,iBAAiB,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACvC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,GAAG,CAAC,MAAM,CAAC,IAAI,CACb,yBAAyB,eAAe,eAAe,OAAO,CAAC,MAAM,UAAU,CAChF,CAAC;YACJ,CAAC;YAED,MAAM,QAAQ,GAAoB;gBAChC,OAAO,EAAE,YAAY;gBACrB,SAAS,EAAE,eAAe;gBAC1B,QAAQ,EAAE,YAAY,IAAI,OAAO,CAAC,QAAQ,IAAI,UAAU;gBACxD,MAAM,EAAE,kBAAkB,OAAO,CAAC,SAAS,EAAE;gBAC7C,WAAW,EAAE,WAAW;aACzB,CAAC;YACF,sEAAsE;YACtE,iDAAiD;YACjD,iDAAiD;YACjD,mDAAmD;YACnD,MAAM,aAAa,GACjB,OAAO,CAAC,KAAK;gBACb,CAAC,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAC5G,IAAI,aAAa;gBAAE,QAAQ,CAAC,KAAK,GAAG,aAAa,CAAC;YAElD,MAAM,WAAW,GACf,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,IAAI,CAAC,MAAM,GAAG,EAAE,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC;YAC3F,GAAG,CAAC,MAAM,CAAC,IAAI,CACb,mBAAmB,OAAO,CAAC,SAAS,OAAO,eAAe,UAAU,WAAW,SAAS,aAAa,UAAU,WAAW,GAAG,CAC9H,CAAC;YAEF,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,GAAG,CAAC,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;oBAChD,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,oBAAoB,eAAe,MAAM,GAAG,EAAE,CAAC,CAAC;gBAClE,CAAC,CAAC,CAAC;gBACH,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,wBAAwB,OAAO,CAAC,SAAS,+BAA+B,CAAC,CAAC;gBAC1F,OAAO,IAAI,CAAC,SAAS,CAAC;oBACpB,SAAS,EAAE,IAAI;oBACf,eAAe;oBACf,IAAI,EAAE,KAAK;oBACX,KAAK,EAAE,GAAG,WAAW,IAAI,mBAAmB,EAAE;oBAC9C,OAAO,EAAE,eAAe;iBACzB,CAAC,CAAC;YACL,CAAC;YAED,2EAA2E;YAC3E,IAAI,QAAwD,CAAC;YAC7D,IAAI,WAAqC,CAAC;YAC1C,MAAM,WAAW,GAAG,IAAI,OAAO,CAAO,OAAO,CAAC,EAAE;gBAC9C,WAAW,GAAG,OAAO,CAAC;YACxB,CAAC,CAAC,CAAC;YACH,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,CAAC,kBAAkB,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;gBACtE,MAAM,IAAI,EAAE,CAAC;gBACb,IAAI,QAAQ;oBAAE,OAAO;gBACrB,0DAA0D;gBAC1D,yDAAyD;gBACzD,IAAI,IAAI,CAAC,SAAS,KAAK,eAAe,IAAI,IAAI,CAAC,OAAO,EAAE,MAAM,KAAK,QAAQ,CAAC,MAAM;oBAAE,OAAO;gBAC3F,QAAQ,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;gBAC9D,WAAW,EAAE,EAAE,CAAC;YAClB,CAAC,CAAC,CAAC;YAEH,MAAM,aAAa,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC;YACnE,IAAI,CAAC;gBACH,MAAM,GAAG,CAAC,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;gBAC5C,MAAM,WAAW,CAAC;YACpB,CAAC;oBAAS,CAAC;gBACT,YAAY,CAAC,aAAa,CAAC,CAAC;gBAC5B,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,GAAG,CAAC,MAAM,CAAC,IAAI,CACb,wBAAwB,OAAO,CAAC,SAAS,uBAAuB,UAAU,0BAA0B,CACrG,CAAC;gBACF,OAAO,IAAI,CAAC,SAAS,CAAC;oBACpB,SAAS,EAAE,IAAI;oBACf,eAAe;oBACf,IAAI,EAAE,IAAI;oBACV,QAAQ,EAAE,IAAI;oBACd,KAAK,EAAE,GAAG,WAAW,IAAI,mBAAmB,EAAE;oBAC9C,OAAO,EAAE,SAAS,UAAU,gDAAgD;iBAC7E,CAAC,CAAC;YACL,CAAC;YACD,gDAAgD;YAChD,MAAM,UAAU,GAAG,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACnD,IAAI,UAAU,EAAE,CAAC;gBACf,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC;gBAC9B,UAAU,CAAC,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC;gBAC1C,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC;gBAC/B,UAAU,CAAC,gBAAgB;oBACzB,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YACvF,CAAC;YACD,MAAM,cAAc,GAClB,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI;gBAC1B,CAAC,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,iBAAiB,QAAQ,CAAC,KAAK,CAAC,MAAM,KAAK;gBAC7E,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;YAErB,iDAAiD;YACjD,wCAAwC;YACxC,IAAI,YAAiD,CAAC;YACtD,IAAI,CAAC;gBACH,MAAM,cAAc,GAAG,GAAG,CAAC,UAAU,CAElC,SAAS,CAAC,CAAC;gBACd,MAAM,KAAK,GAAG,cAAc,EAAE,eAAe,EAAE,CAAC,eAAe,CAAC,CAAC;gBACjE,IAAI,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC3C,YAAY,GAAG,KAAK,CAAC;gBACvB,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,2BAA2B;YAC7B,CAAC;YAED,MAAM,OAAO,GAA4B;gBACvC,SAAS,EAAE,IAAI;gBACf,eAAe;gBACf,IAAI,EAAE,IAAI;gBACV,QAAQ,EAAE,KAAK;gBACf,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,KAAK,EAAE,cAAc;gBACrB,KAAK,EAAE,GAAG,WAAW,IAAI,mBAAmB,EAAE;aAC/C,CAAC;YACF,IAAI,YAAY;gBAAE,OAAO,CAAC,YAAY,GAAG,YAAY,CAAC;YAEtD,MAAM,YAAY,GAChB,QAAQ,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;gBACzB,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE;oBAC1B,CAAC,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,UAAU,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,IAAI;oBAC7F,CAAC,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC;YAClD,GAAG,CAAC,MAAM,CAAC,IAAI,CACb,wBAAwB,OAAO,CAAC,SAAS,YAAY,QAAQ,CAAC,OAAO,UAAU,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,EAAE,CACxI,CAAC;YACF,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACjC,CAAC;KACF,CAAC,CAAC;IAEH,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AAChC,CAAC;AAED,mBAAmB;AAEnB,MAAM,UAAU,KAAK,CAAC,GAAY,EAAE,MAA+B;IACjE,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IAClC,IAAI,CAAC,GAAG,CAAC,OAAO;QAAE,OAAO;IAEzB,MAAM,cAAc,GAAG,2BAA2B,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC7D,GAAG,CAAC,OAAO,CAAC,iBAAiB,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;IACpE,2BAA2B,CAAC,GAAG,EAAE,cAAc,EAAE,GAAG,CAAC,CAAC;IAEtD,IAAI,GAAG,CAAC,mBAAmB,EAAE,CAAC;QAC5B,yBAAyB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACtC,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAIL,cAAc,GACf,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAwB,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAgB,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAI3G,4BAA4B;AAC5B,kEAAkE;AAClE,iDAAiD;AACjD,8DAA8D;AAC9D,aAAa;AACb,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAE9B,oCAAoC;AACpC,2CAA2C;AAC3C,kDAAkD;AAClD,qCAAqC;AACrC,MAAM,wBAAwB,GAAG,EAAE,GAAG,IAAI,CAAC;AAC3C,MAAM,qBAAqB,GAAG,GAAG,CAAC,CAAC,SAAS;AAa5C,SAAS,mBAAmB,CAAC,eAAuB,EAAE,QAAgB;IACpE,OAAO,GAAG,eAAe,KAAK,QAAQ,EAAE,CAAC;AAC3C,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY;IAC5B,kDAAkD;IAClD,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IACtB,IAAI,CAAC,GAAG,IAAI,CAAC;IACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAClC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AACjD,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAwB,EAAE,GAAW;IACnE,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,KAAK,EAAE,CAAC;QACjC,IAAI,KAAK,CAAC,SAAS,IAAI,GAAG;YAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAChD,CAAC;IACD,WAAW;IACX,IAAI,KAAK,CAAC,IAAI,GAAG,qBAAqB,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAChF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,qBAAqB,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/D,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,8BAA8B,CACrC,KAAwB,EACxB,eAAuB,EACvB,GAAW;IAEX,MAAM,MAAM,GAAG,GAAG,eAAe,IAAI,CAAC;IACtC,MAAM,IAAI,GAA4B,EAAE,CAAC;IACzC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,KAAK,EAAE,CAAC;QACjC,IAAI,KAAK,CAAC,SAAS,IAAI,GAAG;YAAE,SAAS;QACrC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC;YAAE,SAAS;QACtC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC;IAC3C,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,wBAAwB,CAC/B,eAAuB,EACvB,eAAuB,EACvB,IAAY,EACZ,OAAgC,EAChC,GAAW;IAEX,KAAK,eAAe,CAAC;IACrB,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,UAAU,eAAe,EAAE,CAAC,CAAC;IACxC,KAAK,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;IACvD,KAAK,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;IACvE,KAAK,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;IACtE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,uBAAuB,OAAO,CAAC,MAAM,eAAe,CAAC,CAAC;QACjE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACrD,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YACrB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;YACpD,MAAM,KAAK,GAAG,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACzE,KAAK,CAAC,IAAI,CACR,OAAO,MAAM,cAAc,CAAC,CAAC,eAAe,aAAa,CAAC,CAAC,MAAM,GAAG,KAAK,YAAY,CAAC,CAAC,WAAW,GAAG,CACtG,CAAC;QACJ,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAClC,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACrB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,yBAAyB;AAEzB,MAAM,YAAY,GAAiB;IACjC,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE;IAChE,QAAQ,EAAE;QACR,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,UAAU;QACjB,OAAO,EAAE,GAAG;QACZ,WAAW,EAAE,kEAAkE;KAChF;IACD,YAAY,EAAE;QACZ,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,wBAAwB;QAC/B,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,kDAAkD;KAChE;IACD,KAAK,EAAE;QACL,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE,UAAU;QACnB,OAAO,EAAE;YACP,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE;YACpC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE;YACrC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE;SAChC;KACF;IACD,sBAAsB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,KAAK,EAAE;IAC/E,kBAAkB,EAAE;QAClB,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,UAAU;QACjB,OAAO,EAAE,CAAC;QACV,WAAW,EAAE,qDAAqD;KACnE;IACD,mBAAmB,EAAE;QACnB,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,qDAAqD;QAC5D,OAAO,EAAE,IAAI;QACb,WAAW,EACT,mEAAmE;KACtE;IACD,6BAA6B,EAAE;QAC7B,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,aAAa;QACpB,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,sDAAsD;KACpE;CACF,CAAC;AAEF,MAAM,IAAI,GAAG;IACX,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC;IACtB,MAAM;IACN,KAAK;IACL,MAAM;IACN,MAAM;IACN,OAAO;IACP,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC;IACxB,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC;IAC5B,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC;CAC3B,CAAC;AA6BF,uDAAuD;AACvD,MAAM,mBAAmB,GAAG,IAAI,CAAC;AAEjC,2EAA2E;AAE3E;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,KAAc;IAC3C,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK,EAAE;QAAE,OAAO,IAAI,CAAC;IAC/C,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5E,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC7B,IAAI,OAAO,KAAK,EAAE;YAAE,OAAO,IAAI,CAAC;QAChC,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1B,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;YAC1B,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACvC,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACnC,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;IAC9C,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAC9B,IAAoE,EACpE,GAAW;IAEX,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC;IACzD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC;IACzD,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,IAAI,IAAI,IAAI,IAAI,CAAC,cAAc,KAAK,EAAE,CAAC;IAE5E,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;QACzB,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC1C,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;gBACnB,OAAO,EAAE,KAAK,EAAE,iBAAiB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,sBAAsB,EAAE,CAAC;YAC9E,CAAC;YACD,MAAM,GAAG,MAAM,CAAC;QAClB,CAAC;QACD,IAAI,IAAI,GAAG,GAAG,CAAC;QACf,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC1C,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;gBACnB,OAAO,EAAE,KAAK,EAAE,iBAAiB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,sBAAsB,EAAE,CAAC;YAC9E,CAAC;YACD,IAAI,GAAG,MAAM,CAAC;QAChB,CAAC;QACD,IAAI,MAAM,GAAG,IAAI;YAAE,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC;QACxD,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC5C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,IAAI,CAAC,EAAE,CAAC;YAC9C,OAAO,EAAE,KAAK,EAAE,wBAAwB,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC;QAC1E,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,GAAG,GAAG,OAAO,GAAG,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;IACvD,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,aAAa,CAAC,GAAsC;IAC3D,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC;IAC3B,MAAM,KAAK,GAAG,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC;IACnF,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;IAC1E,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAChF,OAAO;QACL,OAAO,EAAE,GAAG,CAAC,OAAO,KAAK,KAAK;QAC9B,QAAQ;QACR,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,QAAQ,CAAC;QACjD,KAAK;QACL,sBAAsB,EAAE,GAAG,CAAC,sBAAsB,KAAK,IAAI;QAC3D,kBAAkB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACpE,mBAAmB,EAAE,GAAG,CAAC,mBAAmB,KAAK,KAAK;QACtD,6BAA6B,EAAE,MAAM,CAAC,GAAG,CAAC,6BAA6B,CAAC,IAAI,EAAE;KAC/E,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,SAAiB;IACtC,OAAO,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AACvC,CAAC;AAED,SAAS,oBAAoB,CAAC,OAAgB,EAAE,KAAa,EAAE,kBAA0B;IACvF,MAAM,IAAI,GACR,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ;QACjC,CAAC,CAAC,OAAO,CAAC,OAAO;QACjB,CAAC,CAAC,OAAO,CAAC,OAAO,IAAI,IAAI;YACvB,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,OAAO,GACX,kBAAkB,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,kBAAkB;QACxD,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,kBAAkB,CAAC,YAAY,IAAI,CAAC,MAAM,GAAG,kBAAkB,UAAU;QAC5F,CAAC,CAAC,IAAI,CAAC;IACX,OAAO;QACL,KAAK;QACL,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,OAAO;QACP,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,IAAI;QACpC,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,IAAI;QAC1B,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,SAAS;KACxC,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAC5B,gBAAwB,EACxB,eAAuB,EACvB,eAAmC,EACnC,KAAqC,EACrC,QAAkC,EAClC,OAAwB;IAExB,cAAc;IACd,IAAI,eAAe,KAAK,gBAAgB,EAAE,CAAC;QACzC,2BAA2B;IAC7B,CAAC;SAAM,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAClD,CAAC;SAAM,IAAI,KAAK,KAAK,UAAU,EAAE,CAAC;QAChC,MAAM,OAAO,GAAG,eAAe,IAAI,aAAa,CAAC,gBAAgB,CAAC,CAAC;QACnE,MAAM,MAAM,GAAG,aAAa,CAAC,eAAe,CAAC,CAAC;QAC9C,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;YAC9C,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,uBAAuB,OAAO,IAAI,SAAS,QAAQ,MAAM,IAAI,SAAS,GAAG;aAClF,CAAC;QACJ,CAAC;IACH,CAAC;IACD,gCAAgC;IAEhC,2DAA2D;IAC3D,MAAM,cAAc,GAAG,aAAa,CAAC,eAAe,CAAC,CAAC;IACtD,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,cAAc,CAAC,CAAC;IACpE,KAAK,MAAM,OAAO,IAAI,OAAO,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,EAAE,gBAAgB,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,CAAC;QAC9E,IAAI,OAAO,EAAE,QAAQ,KAAK,MAAM,EAAE,CAAC;YACjC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,MAAM,cAAc,YAAY,EAAE,CAAC;QACnF,CAAC;IACH,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;AACtB,CAAC;AAED,SAAS,2BAA2B,CAAC,EAAE,MAAM,EAAE,MAAM,EAAe,EAAE,GAAiB;IACrF,MAAM,QAAQ,GAAoB,EAAE,CAAC;IAErC,OAAO;QACL,qBAAqB,CAAC,OAAsB;YAC1C,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACvB,OAAO,GAAG,EAAE;gBACV,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBACtC,IAAI,GAAG,IAAI,CAAC;oBAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YACxC,CAAC,CAAC;QACJ,CAAC;QAED,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO;YAC/B,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC;YAC7B,IAAI,CAAC,KAAK;gBAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC;YAE7C,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAC/D,IAAI,CAAC,eAAe;gBAAE,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC;YAEzD,MAAM,OAAO,GAAG,qBAAqB,CACnC,OAAO,CAAC,SAAS,EACjB,eAAe,EACf,OAAO,CAAC,QAAQ,EAChB,GAAG,CAAC,KAAK,EACT,QAAQ,EACR,OAAO,CACR,CAAC;YACF,IAAI,CAAC,OAAO,CAAC,EAAE;gBAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;YAElD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACzG,MAAM,eAAe,GACnB,OAAO,OAAO,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,sBAAsB,CAAC;YAEtG,sDAAsD;YACtD,6DAA6D;YAC7D,MAAM,QAAQ,GAAG,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC;YAE5F,IAAI,CAAC;gBACH,IAAI,QAAQ,EAAE,CAAC;oBACb,MAAM,MAAM,GAAG,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;oBACzE,MAAM,IAAI,GAAG,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;oBAChF,IAAI,MAAiB,CAAC;oBACtB,kEAAkE;oBAClE,IAAI,gBAAgB,GAAG,IAAI,CAAC;oBAC5B,IAAI,KAAK,CAAC,yBAAyB,EAAE,CAAC;wBACpC,MAAM,GAAG,MAAM,KAAK,CAAC,yBAAyB,CAAC,eAAe,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;oBAChF,CAAC;yBAAM,CAAC;wBACN,wDAAwD;wBACxD,IAAI,IAAe,CAAC;wBACpB,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;4BACzB,IAAI,GAAG,MAAM,KAAK,CAAC,cAAc,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC;wBAC1E,CAAC;6BAAM,CAAC;4BACN,IAAI,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC;4BACpE,gBAAgB,GAAG,KAAK,CAAC,CAAC,uBAAuB;wBACnD,CAAC;wBACD,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;4BACvB,MAAM,EAAE,GAAG,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC;4BAC5B,OAAO,EAAE,IAAI,MAAM,IAAI,EAAE,IAAI,IAAI,CAAC;wBACpC,CAAC,CAAC,CAAC;oBACL,CAAC;oBACD,8DAA8D;oBAC9D,0CAA0C;oBAC1C,6DAA6D;oBAC7D,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;oBACtC,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;oBAChD,MAAM,MAAM,GAAyB;wBACnC,EAAE,EAAE,IAAI;wBACR,SAAS,EAAE,eAAe;wBAC1B,KAAK,EAAE,MAAM,CAAC,MAAM;wBACpB,KAAK;wBACL,eAAe,EAAE,gBAAgB;wBACjC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;wBACvB,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACzC,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,oBAAoB,CAAC,OAAO,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,CAAC,kBAAkB,CAAC,CAAC;qBAC3G,CAAC;oBACF,OAAO,MAAM,CAAC;gBAChB,CAAC;gBAED,MAAM,OAAO,GACX,eAAe,IAAI,KAAK,CAAC,cAAc;oBACrC,CAAC,CAAC,MAAM,KAAK,CAAC,cAAc,CAAC,eAAe,EAAE,KAAK,CAAC;oBACpD,CAAC,CAAC,MAAM,KAAK,CAAC,UAAU,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;gBACrD,MAAM,MAAM,GAAyB;oBACnC,EAAE,EAAE,IAAI;oBACR,SAAS,EAAE,eAAe;oBAC1B,KAAK,EAAE,OAAO,CAAC,MAAM;oBACrB,KAAK;oBACL,eAAe,EAAE,eAAe,IAAI,CAAC,CAAC,KAAK,CAAC,cAAc;oBAC1D,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,oBAAoB,CAAC,OAAO,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,CAAC,kBAAkB,CAAC,CAAC;iBAC5G,CAAC;gBACF,OAAO,MAAM,CAAC;YAChB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACjE,MAAM,CAAC,IAAI,CAAC,yBAAyB,eAAe,MAAM,OAAO,EAAE,CAAC,CAAC;gBACrE,OAAO,EAAE,KAAK,EAAE,aAAa,OAAO,EAAE,EAAE,CAAC;YAC3C,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,2BAA2B,CAClC,EAAE,KAAK,EAAE,MAAM,EAAmB,EAClC,cAAqC,EACrC,GAAiB;IAEjB,KAAK,CAAC,aAAa,CAAC;QAClB,IAAI,EAAE,iBAAiB;QACvB,KAAK,EAAE,QAAQ;QACf,WAAW,EAAE,uCAAuC;KACrD,CAAC,CAAC;IAEH,KAAK,CAAC,QAAQ,CAAC;QACb,MAAM,EAAE,CAAC,iBAAiB,CAAC;QAC3B,UAAU,EAAE;YACV,IAAI,EAAE,UAAU;YAChB,QAAQ,EAAE;gBACR,IAAI,EAAE,qBAAqB;gBAC3B,WAAW,EAAE;oBACX,8BAA8B;oBAC9B,OAAO;oBACP,4BAA4B;oBAC5B,2DAA2D;oBAC3D,6CAA6C;oBAC7C,uCAAuC;oBACvC,6CAA6C;oBAC7C,oDAAoD;iBACrD,CAAC,IAAI,CAAC,IAAI,CAAC;gBACZ,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gDAAgD,EAAE;wBAC7F,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,yBAAyB,GAAG,CAAC,YAAY,OAAO,GAAG,CAAC,QAAQ,EAAE;yBAC5E;wBACD,gBAAgB,EAAE;4BAChB,IAAI,EAAE,SAAS;4BACf,WAAW,EAAE,uCAAuC;yBACrD;wBACD,cAAc,EAAE;4BACd,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,yCAAyC;yBACvD;wBACD,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ;4BACd,WAAW,EACT,uEAAuE;yBAC1E;wBACD,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,oCAAoC;yBAClD;qBACF;oBACD,QAAQ,EAAE,CAAC,YAAY,CAAC;oBACxB,oBAAoB,EAAE,KAAK;iBAC5B;aACF;SACF;QACD,yCAAyC;QACzC,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;YAC/B,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAC7D,IAAI,CAAC,eAAe;gBAAE,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC,CAAC;YAC1E,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YACjD,IAAI,KAAK,IAAI,OAAO,IAAI,KAAK;gBAAE,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;YAC7E,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,UAAU,CAC5C;gBACE,SAAS,EAAE,eAAe;gBAC1B,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,SAAS;gBACtC,eAAe,EAAE,OAAO,IAAI,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS;gBAC/F,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;gBACzC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;aACxC,EACD,OAAO,CACR,CAAC;YACF,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC;KACF,CAAC,CAAC;IAEH,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AAC7B,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAS,uBAAuB,CAAC,KAAoB,EAAE,kBAAuC;IAC5F,KAAK,CAAC,UAAU,CAAC,oBAAoB,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;QAC1D,MAAM,KAAK,GAAG,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;QAChG,IAAI,KAAK,GAAG,CAAC;YAAE,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;;YAChE,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACvD,MAAM,IAAI,EAAE,CAAC;IACf,CAAC,CAAC,CAAC;IACH,KAAK,CAAC,UAAU,CAAC,kBAAkB,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;QACxD,MAAM,IAAI,EAAE,CAAC;QACb,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,yBAAyB,CAAC,IAAsB,EAAE,GAAiB;IAC1E,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAEzE;;;;OAIG;IACH,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAkB,CAAC;IACrD,wDAAwD;IACxD,MAAM,iBAAiB,GAAsB,IAAI,GAAG,EAAE,CAAC;IAEvD,uBAAuB,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC;IAEnD,KAAK,CAAC,aAAa,CAAC;QAClB,IAAI,EAAE,kBAAkB;QACxB,KAAK,EAAE,OAAO;QACd,WAAW,EAAE,8CAA8C;KAC5D,CAAC,CAAC;IAEH,gCAAgC;IAChC,qDAAqD;IACrD,sEAAsE;IACtE,KAAK,CAAC,QAAQ,CAAC;QACb,MAAM,EAAE,CAAC,kBAAkB,CAAC;QAC5B,UAAU,EAAE;YACV,IAAI,EAAE,UAAU;YAChB,QAAQ,EAAE;gBACR,IAAI,EAAE,qBAAqB;gBAC3B,WAAW,EAAE;oBACX,wEAAwE;oBACxE,EAAE;oBACF,QAAQ;oBACR,0EAA0E;oBAC1E,+CAA+C;oBAC/C,mCAAmC;oBACnC,iCAAiC;oBACjC,EAAE;oBACF,MAAM;oBACN,uEAAuE;oBACvE,eAAe;iBAChB,CAAC,IAAI,CAAC,IAAI,CAAC;gBACZ,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,uBAAuB;yBACrC;wBACD,QAAQ,EAAE;4BACR,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,gCAAgC;yBAC9C;wBACD,WAAW,EAAE;4BACX,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,oCAAoC;yBAClD;qBACF;oBACD,QAAQ,EAAE,EAAE;oBACZ,oBAAoB,EAAE,KAAK;iBAC5B;aACF;SACF;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;YAC/B,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC;YAC7B,IAAI,CAAC,KAAK,EAAE,+BAA+B,EAAE,CAAC;gBAC5C,OAAO,IAAI,CAAC,SAAS,CAAC;oBACpB,KAAK,EAAE,oDAAoD;iBAC5D,CAAC,CAAC;YACL,CAAC;YACD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YACnE,MAAM,UAAU,GACd,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YAC7G,MAAM,cAAc,GAClB,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1G,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,UAAU,GAAG,IAAI,GAAG,IAAI,CAAC;YAEtD,sCAAsC;YACtC,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,+BAA+B,CAAC;gBAC1D,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,EAAE,GAAG,CAAC;gBAChC,OAAO;gBACP,QAAQ,EAAE,cAAc;gBACxB,iBAAiB,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS;gBACtE,KAAK,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC;aAC7B,CAAC,CAAC;YAEH,MAAM,SAAS,GAAG,IAAI,GAAG,EAAqF,CAAC;YAC/G,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;gBAC1B,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,SAAS,IAAI,CAAC,CAAC;gBACtC,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBAC9C,IAAI,CAAC,QAAQ,IAAI,EAAE,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;oBACtC,MAAM,OAAO,GAAG,OAAO,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;oBACnF,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;oBAC7E,MAAM,YAAY,GACf,GAAG,CAAC,OAAO,CAAC,QAAgD,EAAE,QAAQ,IAAI,IAAI;wBAC7E,CAAC,CAAC,MAAM,CAAE,GAAG,CAAC,OAAO,CAAC,QAAoC,CAAC,QAAQ,CAAC;wBACpE,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;oBAC/C,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE;wBAC3B,SAAS,EAAE,GAAG,CAAC,SAAS;wBACxB,QAAQ,EAAE,YAAY;wBACtB,MAAM,EAAE,EAAE;wBACV,OAAO;qBACR,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,MAAM,KAAK,GAAG,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC;iBAClC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;iBACnC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC;iBACf,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACT,UAAU,EAAE,CAAC,CAAC,SAAS;gBACvB,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,gBAAgB,EAAE,CAAC,CAAC,MAAM;gBAC1B,OAAO,EAAE,CAAC,CAAC,OAAO;aACnB,CAAC,CAAC,CAAC;YAEN,OAAO,IAAI,CAAC,SAAS,CAAC;gBACpB,KAAK,EAAE,KAAK,CAAC,MAAM;gBACnB,WAAW,EAAE,UAAU;gBACvB,QAAQ,EAAE,KAAK;aAChB,CAAC,CAAC;QACL,CAAC;KACF,CAAC,CAAC;IAEH,gCAAgC;IAChC,oDAAoD;IACpD,iEAAiE;IACjE,KAAK,CAAC,QAAQ,CAAC;QACb,MAAM,EAAE,CAAC,kBAAkB,CAAC;QAC5B,UAAU,EAAE;YACV,IAAI,EAAE,UAAU;YAChB,QAAQ,EAAE;gBACR,IAAI,EAAE,qBAAqB;gBAC3B,WAAW,EAAE;oBACX,gEAAgE;oBAChE,iCAAiC;oBACjC,EAAE;oBACF,UAAU;oBACV,4CAA4C;oBAC5C,8DAA8D;oBAC9D,gCAAgC;oBAChC,wBAAwB;oBACxB,EAAE;oBACF,uBAAuB;oBACvB,sEAAsE;oBACtE,iEAAiE;oBACjE,wBAAwB;oBACxB,EAAE;oBACF,iBAAiB;oBACjB,2EAA2E;oBAC3E,uCAAuC;oBACvC,sCAAsC;oBACtC,EAAE;oBACF,QAAQ;oBACR,yDAAyD;oBACzD,4CAA4C;oBAC5C,yCAAyC;oBACzC,qEAAqE;oBACrE,8CAA8C;oBAC9C,EAAE;oBACF,mBAAmB;oBACnB,wEAAwE;oBACxE,4CAA4C;oBAC5C,EAAE;oBACF,+BAA+B;oBAC/B,6EAA6E;oBAC7E,wEAAwE;oBACxE,0EAA0E;oBAC1E,2EAA2E;oBAC3E,sDAAsD;oBACtD,6BAA6B;oBAC7B,EAAE;oBACF,SAAS;oBACT,kFAAkF;oBAClF,4CAA4C;oBAC5C,sCAAsC;oBACtC,8DAA8D;oBAC9D,0BAA0B;iBAC3B,CAAC,IAAI,CAAC,IAAI,CAAC;gBACZ,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,iBAAiB,EAAE;4BACjB,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,gDAAgD;yBAC9D;wBACD,IAAI,EAAE;4BACJ,IAAI,EAAE,QAAQ;4BACd,WAAW,EACT,mDAAmD;gCACnD,iCAAiC;yBACpC;wBACD,eAAe,EAAE;4BACf,IAAI,EAAE,SAAS;4BACf,WAAW,EAAE,sCAAsC;yBACpD;wBACD,eAAe,EAAE;4BACf,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,kCAAkC,GAAG,CAAC,6BAA6B,cAAc;yBAC/F;qBACF;oBACD,QAAQ,EAAE,CAAC,mBAAmB,EAAE,MAAM,CAAC;oBACvC,oBAAoB,EAAE,KAAK;iBAC5B;aACF;SACF;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;YAC/B,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACpE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;YACrC,MAAM,aAAa,GAAG,IAAI,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,KAAK,IAAI,CAAC;YAChG,MAAM,mBAAmB,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YACzD,MAAM,UAAU,GACd,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,mBAAmB,GAAG,CAAC;gBAC7D,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,mBAAmB,CAAC;gBACpC,CAAC,CAAC,GAAG,CAAC,6BAA6B,CAAC;YACxC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC,CAAC;YAEpD,IAAI,CAAC,eAAe;gBAAE,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,wBAAwB,EAAE,CAAC,CAAC;YACjF,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;gBAAE,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;YAChE,IAAI,eAAe,KAAK,OAAO,CAAC,SAAS,EAAE,CAAC;gBAC1C,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,8CAA8C,EAAE,CAAC,CAAC;YACnF,CAAC;YAED,wCAAwC;YACxC,MAAM,YAAY,GAAG,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YACpE,IAAI,YAAY,IAAI,mBAAmB,EAAE,CAAC;gBACxC,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC,CAAC;YACvD,CAAC;YACD,MAAM,WAAW,GAAG,YAAY,GAAG,CAAC,CAAC;YAErC,kBAAkB;YAClB,IAAI,YAAgC,CAAC;YACrC,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,wBAAwB,CAAC,QAAQ,EAAE,eAAe,EAAE,MAAM,CAAC,CAAC;gBAClF,IAAI,OAAO,EAAE,CAAC;oBACZ,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC;oBAChC,MAAM,IAAI,GAAG,OAAO,CAAC,2BAA2B,CAAC;oBACjD,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE,CAAC;wBAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;wBACpD,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;4BACrB,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,aAAa,OAAO,CAAC,MAAM,IAAI,QAAQ,EAAE,EAAE,CAAC,CAAC;wBAC9E,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CAAC,wBAAwB,eAAe,MAAM,GAAG,EAAE,CAAC,CAAC;YAClE,CAAC;YAED,mCAAmC;YACnC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,sBAAsB,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;YAC/C,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;YAChC,MAAM,QAAQ,GAAG,mBAAmB,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;YAChE,MAAM,OAAO,GAAG,8BAA8B,CAAC,iBAAiB,EAAE,eAAe,EAAE,GAAG,CAAC,CAAC;YACxF,MAAM,YAAY,GAAG,wBAAwB,CAAC,OAAO,CAAC,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;YACtG,MAAM,KAAK,GAA0B;gBACnC,OAAO,EAAE,GAAG;gBACZ,SAAS,EAAE,GAAG,GAAG,wBAAwB;gBACzC,eAAe,EAAE,OAAO,CAAC,SAAS;gBAClC,WAAW,EAAE,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;gBAChE,QAAQ;gBACR,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe;aACpD,CAAC;YACF,iBAAiB,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACvC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,MAAM,CAAC,IAAI,CAAC,yBAAyB,eAAe,eAAe,OAAO,CAAC,MAAM,UAAU,CAAC,CAAC;YAC/F,CAAC;YAED,MAAM,QAAQ,GAAoB;gBAChC,OAAO,EAAE,YAAY;gBACrB,SAAS,EAAE,eAAe;gBAC1B,QAAQ,EAAE,YAAY,IAAI,OAAO,CAAC,QAAQ,IAAI,UAAU;gBACxD,MAAM,EAAE,kBAAkB,OAAO,CAAC,SAAS,EAAE;gBAC7C,WAAW,EAAE,WAAW;gBACxB,gCAAgC;gBAChC,cAAc,EAAE,WAAW;aAC5B,CAAC;YACF,sEAAsE;YACtE,iDAAiD;YACjD,iDAAiD;YACjD,mDAAmD;YACnD,MAAM,aAAa,GACjB,OAAO,CAAC,KAAK;gBACb,CAAC,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAC5G,IAAI,aAAa;gBAAE,QAAQ,CAAC,KAAK,GAAG,aAAa,CAAC;YAElD,MAAM,WAAW,GACf,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,IAAI,CAAC,MAAM,GAAG,EAAE,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC;YAC3F,MAAM,CAAC,IAAI,CACT,mBAAmB,OAAO,CAAC,SAAS,OAAO,eAAe,UAAU,WAAW,SAAS,aAAa,UAAU,WAAW,GAAG,CAC9H,CAAC;YAEF,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;oBACnD,MAAM,CAAC,IAAI,CAAC,oBAAoB,eAAe,MAAM,GAAG,EAAE,CAAC,CAAC;gBAC9D,CAAC,CAAC,CAAC;gBACH,MAAM,CAAC,IAAI,CAAC,wBAAwB,OAAO,CAAC,SAAS,+BAA+B,CAAC,CAAC;gBACtF,OAAO,IAAI,CAAC,SAAS,CAAC;oBACpB,SAAS,EAAE,IAAI;oBACf,eAAe;oBACf,IAAI,EAAE,KAAK;oBACX,KAAK,EAAE,GAAG,WAAW,IAAI,mBAAmB,EAAE;oBAC9C,OAAO,EAAE,eAAe;iBACzB,CAAC,CAAC;YACL,CAAC;YAED,2EAA2E;YAC3E,IAAI,QAAwD,CAAC;YAC7D,IAAI,WAAqC,CAAC;YAC1C,MAAM,WAAW,GAAG,IAAI,OAAO,CAAO,OAAO,CAAC,EAAE;gBAC9C,WAAW,GAAG,OAAO,CAAC;YACxB,CAAC,CAAC,CAAC;YACH,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,kBAAkB,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;gBACxE,MAAM,IAAI,EAAE,CAAC;gBACb,IAAI,QAAQ;oBAAE,OAAO;gBACrB,0DAA0D;gBAC1D,yDAAyD;gBACzD,IAAI,IAAI,CAAC,SAAS,KAAK,eAAe,IAAI,IAAI,CAAC,OAAO,EAAE,MAAM,KAAK,QAAQ,CAAC,MAAM;oBAAE,OAAO;gBAC3F,QAAQ,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;gBAC9D,WAAW,EAAE,EAAE,CAAC;YAClB,CAAC,CAAC,CAAC;YAEH,MAAM,aAAa,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC;YACnE,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;gBAC/C,MAAM,WAAW,CAAC;YACpB,CAAC;oBAAS,CAAC;gBACT,YAAY,CAAC,aAAa,CAAC,CAAC;gBAC5B,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,CAAC,IAAI,CACT,wBAAwB,OAAO,CAAC,SAAS,uBAAuB,UAAU,0BAA0B,CACrG,CAAC;gBACF,OAAO,IAAI,CAAC,SAAS,CAAC;oBACpB,SAAS,EAAE,IAAI;oBACf,eAAe;oBACf,IAAI,EAAE,IAAI;oBACV,QAAQ,EAAE,IAAI;oBACd,KAAK,EAAE,GAAG,WAAW,IAAI,mBAAmB,EAAE;oBAC9C,OAAO,EAAE,SAAS,UAAU,gDAAgD;iBAC7E,CAAC,CAAC;YACL,CAAC;YACD,gDAAgD;YAChD,MAAM,UAAU,GAAG,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACnD,IAAI,UAAU,EAAE,CAAC;gBACf,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC;gBAC9B,UAAU,CAAC,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC;gBAC1C,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC;gBAC/B,UAAU,CAAC,gBAAgB;oBACzB,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YACvF,CAAC;YACD,MAAM,cAAc,GAClB,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI;gBAC1B,CAAC,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,iBAAiB,QAAQ,CAAC,KAAK,CAAC,MAAM,KAAK;gBAC7E,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;YAErB,iDAAiD;YACjD,wCAAwC;YACxC,IAAI,YAAiD,CAAC;YACtD,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,EAAE,eAAe,EAAE,CAAC,eAAe,CAAC,CAAC;gBAClE,IAAI,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC3C,YAAY,GAAG,KAAK,CAAC;gBACvB,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,2BAA2B;YAC7B,CAAC;YAED,MAAM,OAAO,GAA4B;gBACvC,SAAS,EAAE,IAAI;gBACf,eAAe;gBACf,IAAI,EAAE,IAAI;gBACV,QAAQ,EAAE,KAAK;gBACf,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,KAAK,EAAE,cAAc;gBACrB,KAAK,EAAE,GAAG,WAAW,IAAI,mBAAmB,EAAE;aAC/C,CAAC;YACF,IAAI,YAAY;gBAAE,OAAO,CAAC,YAAY,GAAG,YAAY,CAAC;YAEtD,MAAM,YAAY,GAChB,QAAQ,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;gBACzB,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE;oBAC1B,CAAC,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,UAAU,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,IAAI;oBAC7F,CAAC,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC;YAClD,MAAM,CAAC,IAAI,CACT,wBAAwB,OAAO,CAAC,SAAS,YAAY,QAAQ,CAAC,OAAO,UAAU,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,EAAE,CACxI,CAAC;YACF,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACjC,CAAC;KACF,CAAC,CAAC;IAEH,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AAC5B,CAAC;AAED,mBAAmB;AAEnB,eAAe,YAAY,CAAC;IAC1B,IAAI,EAAE,4BAA4B;IAClC,WAAW,EAAE,MAAM;IACnB,SAAS,EAAE,SAAS;IACpB,YAAY;IACZ,QAAQ,EAAE,CAAC,cAAc,CAAC;IAC1B,IAAI;IACJ,KAAK,CAAC,IAAI;QACR,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACvC,IAAI,CAAC,GAAG,CAAC,OAAO;YAAE,OAAO;QAEzB,MAAM,cAAc,GAAG,2BAA2B,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC9D,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QAClE,2BAA2B,CAAC,IAAI,EAAE,cAAc,EAAE,GAAG,CAAC,CAAC;QAEvD,IAAI,GAAG,CAAC,mBAAmB,EAAE,CAAC;YAC5B,yBAAyB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;CACF,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aalis/plugin-tool-session",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.12.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -24,29 +24,40 @@
|
|
|
24
24
|
"dist"
|
|
25
25
|
],
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@aalis/schema-config": ">=0.
|
|
28
|
-
"@aalis/api-
|
|
29
|
-
"@aalis/api-
|
|
27
|
+
"@aalis/schema-config": ">=0.12.0 <1.0.0",
|
|
28
|
+
"@aalis/api-memory": ">=0.6.0 <1.0.0",
|
|
29
|
+
"@aalis/api-persona": ">=0.7.0 <1.0.0",
|
|
30
|
+
"@aalis/api-platform": ">=0.7.0 <1.0.0",
|
|
31
|
+
"@aalis/api-tool-session": ">=0.6.0 <1.0.0",
|
|
32
|
+
"@aalis/api-tools": ">=0.9.0 <1.0.0"
|
|
30
33
|
},
|
|
31
34
|
"devDependencies": {
|
|
32
35
|
"@types/node": "^22.0.0",
|
|
33
36
|
"typescript": "^5.7.0",
|
|
34
|
-
"@aalis/
|
|
35
|
-
"@aalis/
|
|
36
|
-
"@aalis/
|
|
37
|
-
"@aalis/api-tool-session": "0.5.0",
|
|
38
|
-
"@aalis/api-memory": "0.5.0"
|
|
37
|
+
"@aalis/api-agent": "0.8.0",
|
|
38
|
+
"@aalis/core": "0.17.0",
|
|
39
|
+
"@aalis/schema-message": "0.8.1"
|
|
39
40
|
},
|
|
40
41
|
"peerDependencies": {
|
|
41
|
-
"@aalis/core": ">=0.
|
|
42
|
+
"@aalis/core": ">=0.17.0 <1.0.0"
|
|
42
43
|
},
|
|
43
44
|
"aalis": {
|
|
44
45
|
"service": {
|
|
45
46
|
"optional": [
|
|
46
|
-
"
|
|
47
|
+
"tools",
|
|
48
|
+
"memory",
|
|
49
|
+
"platform",
|
|
50
|
+
"persona"
|
|
47
51
|
],
|
|
48
52
|
"provides": [
|
|
49
53
|
"session-history"
|
|
54
|
+
],
|
|
55
|
+
"required": [
|
|
56
|
+
"config",
|
|
57
|
+
"events",
|
|
58
|
+
"hooks",
|
|
59
|
+
"logger",
|
|
60
|
+
"provide"
|
|
50
61
|
]
|
|
51
62
|
}
|
|
52
63
|
},
|