agent-nuvira 2.7.3 → 3.0.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/agents/agents/writer-tool-calling.d.ts +14 -0
- package/dist/agents/agents/writer-tool-calling.d.ts.map +1 -1
- package/dist/agents/agents/writer-tool-calling.js +20 -0
- package/dist/agents/agents/writer-tool-calling.js.map +1 -1
- package/dist/agents/agents/writer.d.ts.map +1 -1
- package/dist/agents/agents/writer.js +15 -4
- package/dist/agents/agents/writer.js.map +1 -1
- package/dist/agents/edit-module.d.ts +7 -0
- package/dist/agents/edit-module.d.ts.map +1 -1
- package/dist/agents/edit-module.js +21 -6
- package/dist/agents/edit-module.js.map +1 -1
- package/dist/agents/orchestrator.d.ts +40 -0
- package/dist/agents/orchestrator.d.ts.map +1 -1
- package/dist/agents/orchestrator.js +116 -27
- package/dist/agents/orchestrator.js.map +1 -1
- package/dist/agents/tool-calling-agent.d.ts +19 -0
- package/dist/agents/tool-calling-agent.d.ts.map +1 -1
- package/dist/agents/tool-calling-agent.js +42 -2
- package/dist/agents/tool-calling-agent.js.map +1 -1
- package/dist/cli/chat.d.ts +55 -1
- package/dist/cli/chat.d.ts.map +1 -1
- package/dist/cli/chat.js +239 -63
- package/dist/cli/chat.js.map +1 -1
- package/dist/cli/cli-program.d.ts +6 -0
- package/dist/cli/cli-program.d.ts.map +1 -0
- package/dist/cli/cli-program.js +222 -0
- package/dist/cli/cli-program.js.map +1 -0
- package/dist/cli/edit.d.ts.map +1 -1
- package/dist/cli/edit.js +18 -3
- package/dist/cli/edit.js.map +1 -1
- package/dist/cli/execute.d.ts.map +1 -1
- package/dist/cli/execute.js +29 -5
- package/dist/cli/execute.js.map +1 -1
- package/dist/cli/failover-runner.d.ts +13 -0
- package/dist/cli/failover-runner.d.ts.map +1 -1
- package/dist/cli/failover-runner.js +11 -0
- package/dist/cli/failover-runner.js.map +1 -1
- package/dist/cli/gateway.d.ts +16 -0
- package/dist/cli/gateway.d.ts.map +1 -1
- package/dist/cli/gateway.js +108 -2
- package/dist/cli/gateway.js.map +1 -1
- package/dist/cli/loop-executor.d.ts.map +1 -1
- package/dist/cli/loop-executor.js +245 -12
- package/dist/cli/loop-executor.js.map +1 -1
- package/dist/cli/plan.d.ts.map +1 -1
- package/dist/cli/plan.js +20 -6
- package/dist/cli/plan.js.map +1 -1
- package/dist/cli/process-control.d.ts +10 -0
- package/dist/cli/process-control.d.ts.map +1 -1
- package/dist/cli/process-control.js +73 -7
- package/dist/cli/process-control.js.map +1 -1
- package/dist/cli/router.d.ts +16 -5
- package/dist/cli/router.d.ts.map +1 -1
- package/dist/cli/router.js +31 -206
- package/dist/cli/router.js.map +1 -1
- package/dist/config/paths.d.ts +23 -0
- package/dist/config/paths.d.ts.map +1 -1
- package/dist/config/paths.js +30 -0
- package/dist/config/paths.js.map +1 -1
- package/dist/config/provider-env.d.ts +37 -0
- package/dist/config/provider-env.d.ts.map +1 -0
- package/dist/config/provider-env.js +86 -0
- package/dist/config/provider-env.js.map +1 -0
- package/dist/context/history.d.ts.map +1 -1
- package/dist/context/history.js +24 -8
- package/dist/context/history.js.map +1 -1
- package/dist/context/session-recall.d.ts +30 -0
- package/dist/context/session-recall.d.ts.map +1 -1
- package/dist/context/session-recall.js +61 -0
- package/dist/context/session-recall.js.map +1 -1
- package/dist/file.js +0 -1
- package/dist/file.js.map +1 -1
- package/dist/gateway/adapters.d.ts +10 -0
- package/dist/gateway/adapters.d.ts.map +1 -1
- package/dist/gateway/adapters.js +4 -1
- package/dist/gateway/adapters.js.map +1 -1
- package/dist/gateway/dedup.d.ts +105 -0
- package/dist/gateway/dedup.d.ts.map +1 -0
- package/dist/gateway/dedup.js +160 -0
- package/dist/gateway/dedup.js.map +1 -0
- package/dist/gateway/heartbeat.d.ts +99 -0
- package/dist/gateway/heartbeat.d.ts.map +1 -0
- package/dist/gateway/heartbeat.js +122 -0
- package/dist/gateway/heartbeat.js.map +1 -0
- package/dist/gateway/inbox.d.ts +14 -1
- package/dist/gateway/inbox.d.ts.map +1 -1
- package/dist/gateway/inbox.js.map +1 -1
- package/dist/gateway/platform-config.d.ts +5 -0
- package/dist/gateway/platform-config.d.ts.map +1 -1
- package/dist/gateway/platform-config.js +8 -13
- package/dist/gateway/platform-config.js.map +1 -1
- package/dist/gateway/registry.d.ts +47 -0
- package/dist/gateway/registry.d.ts.map +1 -1
- package/dist/gateway/registry.js +227 -21
- package/dist/gateway/registry.js.map +1 -1
- package/dist/gateway/whatsapp/baileys-bridge.d.ts +11 -1
- package/dist/gateway/whatsapp/baileys-bridge.d.ts.map +1 -1
- package/dist/gateway/whatsapp/baileys-bridge.js +64 -1
- package/dist/gateway/whatsapp/baileys-bridge.js.map +1 -1
- package/dist/gateway/whatsapp/bridge.d.ts +4 -2
- package/dist/gateway/whatsapp/bridge.d.ts.map +1 -1
- package/dist/gateway/whatsapp/bridge.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/inference/factory.d.ts +16 -0
- package/dist/inference/factory.d.ts.map +1 -1
- package/dist/inference/factory.js +42 -0
- package/dist/inference/factory.js.map +1 -1
- package/dist/inference/gemini-adapter.d.ts.map +1 -1
- package/dist/inference/gemini-adapter.js +3 -0
- package/dist/inference/gemini-adapter.js.map +1 -1
- package/dist/inference/interface.d.ts +12 -0
- package/dist/inference/interface.d.ts.map +1 -1
- package/dist/inference/local-adapter.d.ts +2 -0
- package/dist/inference/local-adapter.d.ts.map +1 -1
- package/dist/inference/local-adapter.js +36 -5
- package/dist/inference/local-adapter.js.map +1 -1
- package/dist/inference/native-tools.d.ts +8 -0
- package/dist/inference/native-tools.d.ts.map +1 -1
- package/dist/inference/native-tools.js +14 -3
- package/dist/inference/native-tools.js.map +1 -1
- package/dist/inference/tool-call-utils.d.ts +66 -7
- package/dist/inference/tool-call-utils.d.ts.map +1 -1
- package/dist/inference/tool-call-utils.js +134 -13
- package/dist/inference/tool-call-utils.js.map +1 -1
- package/dist/learning/auto-router.d.ts.map +1 -1
- package/dist/learning/auto-router.js +90 -5
- package/dist/learning/auto-router.js.map +1 -1
- package/dist/learning/context-budget.d.ts +133 -0
- package/dist/learning/context-budget.d.ts.map +1 -0
- package/dist/learning/context-budget.js +196 -0
- package/dist/learning/context-budget.js.map +1 -0
- package/dist/learning/cost-tracker.d.ts.map +1 -1
- package/dist/learning/cost-tracker.js +20 -8
- package/dist/learning/cost-tracker.js.map +1 -1
- package/dist/learning/eval-framework.d.ts.map +1 -1
- package/dist/learning/eval-framework.js +6 -2
- package/dist/learning/eval-framework.js.map +1 -1
- package/dist/learning/failure-bookkeeping.d.ts +19 -0
- package/dist/learning/failure-bookkeeping.d.ts.map +1 -1
- package/dist/learning/failure-bookkeeping.js +67 -2
- package/dist/learning/failure-bookkeeping.js.map +1 -1
- package/dist/learning/feedback.d.ts.map +1 -1
- package/dist/learning/feedback.js +19 -8
- package/dist/learning/feedback.js.map +1 -1
- package/dist/learning/model-harness.d.ts +76 -0
- package/dist/learning/model-harness.d.ts.map +1 -0
- package/dist/learning/model-harness.js +119 -0
- package/dist/learning/model-harness.js.map +1 -0
- package/dist/learning/model-selection.d.ts +15 -0
- package/dist/learning/model-selection.d.ts.map +1 -1
- package/dist/learning/model-selection.js +27 -1
- package/dist/learning/model-selection.js.map +1 -1
- package/dist/learning/provider-fallback.d.ts +12 -0
- package/dist/learning/provider-fallback.d.ts.map +1 -1
- package/dist/learning/provider-fallback.js +74 -0
- package/dist/learning/provider-fallback.js.map +1 -1
- package/dist/learning/provider-revival.d.ts +106 -0
- package/dist/learning/provider-revival.d.ts.map +1 -0
- package/dist/learning/provider-revival.js +154 -0
- package/dist/learning/provider-revival.js.map +1 -0
- package/dist/learning/resilient-call.d.ts.map +1 -1
- package/dist/learning/resilient-call.js +48 -3
- package/dist/learning/resilient-call.js.map +1 -1
- package/dist/nlu/conversation-gate.d.ts +37 -0
- package/dist/nlu/conversation-gate.d.ts.map +1 -1
- package/dist/nlu/conversation-gate.js +49 -0
- package/dist/nlu/conversation-gate.js.map +1 -1
- package/dist/nlu/schema.d.ts +2 -2
- package/dist/observability/dag-bridge.d.ts +69 -0
- package/dist/observability/dag-bridge.d.ts.map +1 -0
- package/dist/observability/dag-bridge.js +56 -0
- package/dist/observability/dag-bridge.js.map +1 -0
- package/dist/observability/event-bus.d.ts +5 -10
- package/dist/observability/event-bus.d.ts.map +1 -1
- package/dist/observability/event-bus.js +10 -42
- package/dist/observability/event-bus.js.map +1 -1
- package/dist/skills/execution-audit.d.ts.map +1 -1
- package/dist/skills/execution-audit.js +17 -5
- package/dist/skills/execution-audit.js.map +1 -1
- package/dist/skills/sandbox-executor.d.ts +12 -1
- package/dist/skills/sandbox-executor.d.ts.map +1 -1
- package/dist/skills/sandbox-executor.js +28 -6
- package/dist/skills/sandbox-executor.js.map +1 -1
- package/dist/skills/secret-capture.d.ts +45 -1
- package/dist/skills/secret-capture.d.ts.map +1 -1
- package/dist/skills/secret-capture.js +82 -19
- package/dist/skills/secret-capture.js.map +1 -1
- package/dist/skills/skill-env-inventory.d.ts +79 -0
- package/dist/skills/skill-env-inventory.d.ts.map +1 -0
- package/dist/skills/skill-env-inventory.js +167 -0
- package/dist/skills/skill-env-inventory.js.map +1 -0
- package/dist/skills/skill-executor.d.ts +2 -0
- package/dist/skills/skill-executor.d.ts.map +1 -1
- package/dist/skills/skill-executor.js +19 -24
- package/dist/skills/skill-executor.js.map +1 -1
- package/dist/tools/ask-user.d.ts +14 -1
- package/dist/tools/ask-user.d.ts.map +1 -1
- package/dist/tools/ask-user.js +25 -1
- package/dist/tools/ask-user.js.map +1 -1
- package/dist/tools/followup-utils.d.ts +64 -0
- package/dist/tools/followup-utils.d.ts.map +1 -0
- package/dist/tools/followup-utils.js +158 -0
- package/dist/tools/followup-utils.js.map +1 -0
- package/dist/tools/memory-tools.d.ts +35 -0
- package/dist/tools/memory-tools.d.ts.map +1 -1
- package/dist/tools/memory-tools.js +76 -0
- package/dist/tools/memory-tools.js.map +1 -1
- package/dist/tools/pipeline-tool.d.ts.map +1 -1
- package/dist/tools/pipeline-tool.js +8 -3
- package/dist/tools/pipeline-tool.js.map +1 -1
- package/dist/tools/registry.d.ts +25 -12
- package/dist/tools/registry.d.ts.map +1 -1
- package/dist/tools/registry.js +31 -6
- package/dist/tools/registry.js.map +1 -1
- package/dist/tools/skill-tool.d.ts.map +1 -1
- package/dist/tools/skill-tool.js +52 -5
- package/dist/tools/skill-tool.js.map +1 -1
- package/dist/tools/tool-loop.d.ts +63 -1
- package/dist/tools/tool-loop.d.ts.map +1 -1
- package/dist/tools/tool-loop.js +305 -66
- package/dist/tools/tool-loop.js.map +1 -1
- package/dist/tools/toolsets.d.ts +19 -3
- package/dist/tools/toolsets.d.ts.map +1 -1
- package/dist/tools/toolsets.js +21 -5
- package/dist/tools/toolsets.js.map +1 -1
- package/dist/utils/env.d.ts.map +1 -1
- package/dist/utils/env.js +9 -13
- package/dist/utils/env.js.map +1 -1
- package/dist/web-dashboard/chat-console.d.ts +13 -1
- package/dist/web-dashboard/chat-console.d.ts.map +1 -1
- package/dist/web-dashboard/chat-console.js +16 -2
- package/dist/web-dashboard/chat-console.js.map +1 -1
- package/dist/web-dashboard/hub-data.d.ts +2 -0
- package/dist/web-dashboard/hub-data.d.ts.map +1 -1
- package/dist/web-dashboard/hub-data.js +4 -0
- package/dist/web-dashboard/hub-data.js.map +1 -1
- package/dist/web-dashboard/server.d.ts +6 -0
- package/dist/web-dashboard/server.d.ts.map +1 -1
- package/dist/web-dashboard/server.js +192 -3
- package/dist/web-dashboard/server.js.map +1 -1
- package/dist/web-dashboard/src/types.d.ts +31 -1
- package/dist/web-dashboard/src/types.d.ts.map +1 -1
- package/package.json +11 -1
- package/src/web-dashboard/public/assets/index-56yPnN_m.js +207 -0
- package/src/web-dashboard/public/assets/index-56yPnN_m.js.map +1 -0
- package/src/web-dashboard/public/assets/{index-C507EUWf.css → index-Cyd6tIew.css} +1 -1
- package/src/web-dashboard/public/index.html +2 -2
- package/dist/example.d.ts +0 -1
- package/dist/example.d.ts.map +0 -1
- package/dist/example.js +0 -3
- package/dist/example.js.map +0 -1
- package/dist/fresh.d.ts +0 -2
- package/dist/fresh.d.ts.map +0 -1
- package/dist/fresh.js +0 -2
- package/dist/fresh.js.map +0 -1
- package/dist/mcp/mcp-dashboard-oauth.d.ts +0 -94
- package/dist/mcp/mcp-dashboard-oauth.d.ts.map +0 -1
- package/dist/mcp/mcp-dashboard-oauth.js +0 -140
- package/dist/mcp/mcp-dashboard-oauth.js.map +0 -1
- package/dist/memory/background-sync.d.ts +0 -107
- package/dist/memory/background-sync.d.ts.map +0 -1
- package/dist/memory/background-sync.js +0 -242
- package/dist/memory/background-sync.js.map +0 -1
- package/dist/memory/cross-session.d.ts +0 -68
- package/dist/memory/cross-session.d.ts.map +0 -1
- package/dist/memory/cross-session.js +0 -153
- package/dist/memory/cross-session.js.map +0 -1
- package/dist/memory/drift-detector.d.ts +0 -76
- package/dist/memory/drift-detector.d.ts.map +0 -1
- package/dist/memory/drift-detector.js +0 -216
- package/dist/memory/drift-detector.js.map +0 -1
- package/dist/memory/enhanced-manager.d.ts +0 -105
- package/dist/memory/enhanced-manager.d.ts.map +0 -1
- package/dist/memory/enhanced-manager.js +0 -280
- package/dist/memory/enhanced-manager.js.map +0 -1
- package/dist/memory/session-extraction.d.ts +0 -93
- package/dist/memory/session-extraction.d.ts.map +0 -1
- package/dist/memory/session-extraction.js +0 -290
- package/dist/memory/session-extraction.js.map +0 -1
- package/dist/memory/sqlite-store.d.ts +0 -208
- package/dist/memory/sqlite-store.d.ts.map +0 -1
- package/dist/memory/sqlite-store.js +0 -556
- package/dist/memory/sqlite-store.js.map +0 -1
- package/dist/skills/daytona-executor.d.ts +0 -78
- package/dist/skills/daytona-executor.d.ts.map +0 -1
- package/dist/skills/daytona-executor.js +0 -256
- package/dist/skills/daytona-executor.js.map +0 -1
- package/dist/skills/modal-executor.d.ts +0 -81
- package/dist/skills/modal-executor.d.ts.map +0 -1
- package/dist/skills/modal-executor.js +0 -285
- package/dist/skills/modal-executor.js.map +0 -1
- package/dist/sync/inventory.d.ts +0 -1
- package/dist/sync/inventory.d.ts.map +0 -1
- package/dist/sync/inventory.js +0 -3
- package/dist/sync/inventory.js.map +0 -1
- package/dist/sync/validate.d.ts +0 -1
- package/dist/sync/validate.d.ts.map +0 -1
- package/dist/sync/validate.js +0 -3
- package/dist/sync/validate.js.map +0 -1
- package/dist/test.d.ts +0 -2
- package/dist/test.d.ts.map +0 -1
- package/dist/test.js +0 -3
- package/dist/test.js.map +0 -1
- package/dist/tools/browser-tool.d.ts +0 -206
- package/dist/tools/browser-tool.d.ts.map +0 -1
- package/dist/tools/browser-tool.js +0 -726
- package/dist/tools/browser-tool.js.map +0 -1
- package/dist/tools/delegate-tool.d.ts +0 -109
- package/dist/tools/delegate-tool.d.ts.map +0 -1
- package/dist/tools/delegate-tool.js +0 -185
- package/dist/tools/delegate-tool.js.map +0 -1
- package/dist/tools/delegation-state.d.ts +0 -87
- package/dist/tools/delegation-state.d.ts.map +0 -1
- package/dist/tools/delegation-state.js +0 -278
- package/dist/tools/delegation-state.js.map +0 -1
- package/dist/tools/desktop-ui.d.ts +0 -148
- package/dist/tools/desktop-ui.d.ts.map +0 -1
- package/dist/tools/desktop-ui.js +0 -486
- package/dist/tools/desktop-ui.js.map +0 -1
- package/dist/tools/image-video-tool.d.ts +0 -88
- package/dist/tools/image-video-tool.d.ts.map +0 -1
- package/dist/tools/image-video-tool.js +0 -276
- package/dist/tools/image-video-tool.js.map +0 -1
- package/dist/tools/kanban-cron-tools.d.ts +0 -92
- package/dist/tools/kanban-cron-tools.d.ts.map +0 -1
- package/dist/tools/kanban-cron-tools.js +0 -197
- package/dist/tools/kanban-cron-tools.js.map +0 -1
- package/dist/tools/messaging-tool.d.ts +0 -127
- package/dist/tools/messaging-tool.d.ts.map +0 -1
- package/dist/tools/messaging-tool.js +0 -314
- package/dist/tools/messaging-tool.js.map +0 -1
- package/dist/tools/modality/generic-caller.d.ts +0 -43
- package/dist/tools/modality/generic-caller.d.ts.map +0 -1
- package/dist/tools/modality/generic-caller.js +0 -254
- package/dist/tools/modality/generic-caller.js.map +0 -1
- package/dist/tools/modality/modality-catalog.d.ts +0 -134
- package/dist/tools/modality/modality-catalog.d.ts.map +0 -1
- package/dist/tools/modality/modality-catalog.js +0 -445
- package/dist/tools/modality/modality-catalog.js.map +0 -1
- package/dist/tools/modality/tool-router.d.ts +0 -81
- package/dist/tools/modality/tool-router.d.ts.map +0 -1
- package/dist/tools/modality/tool-router.js +0 -84
- package/dist/tools/modality/tool-router.js.map +0 -1
- package/dist/tools/security-tools.d.ts +0 -107
- package/dist/tools/security-tools.d.ts.map +0 -1
- package/dist/tools/security-tools.js +0 -264
- package/dist/tools/security-tools.js.map +0 -1
- package/dist/tools/ssh-tool.d.ts +0 -130
- package/dist/tools/ssh-tool.d.ts.map +0 -1
- package/dist/tools/ssh-tool.js +0 -328
- package/dist/tools/ssh-tool.js.map +0 -1
- package/dist/tools/tts-tool.d.ts +0 -91
- package/dist/tools/tts-tool.d.ts.map +0 -1
- package/dist/tools/tts-tool.js +0 -406
- package/dist/tools/tts-tool.js.map +0 -1
- package/dist/utils/shell-detection.d.ts +0 -124
- package/dist/utils/shell-detection.d.ts.map +0 -1
- package/dist/utils/shell-detection.js +0 -305
- package/dist/utils/shell-detection.js.map +0 -1
- package/dist/utils/windows-paths.d.ts +0 -185
- package/dist/utils/windows-paths.d.ts.map +0 -1
- package/dist/utils/windows-paths.js +0 -472
- package/dist/utils/windows-paths.js.map +0 -1
- package/src/web-dashboard/public/assets/index-C4frng1Q.js +0 -207
- package/src/web-dashboard/public/assets/index-C4frng1Q.js.map +0 -1
package/dist/gateway/registry.js
CHANGED
|
@@ -16,6 +16,9 @@
|
|
|
16
16
|
* agent path. All adapters opt-in via env tokens (channel-directory.ts).
|
|
17
17
|
*/
|
|
18
18
|
import { runPipelineTool } from '../tools/pipeline-tool.js';
|
|
19
|
+
// LEAF import on purpose: the gateway must not pull the whole tool registry
|
|
20
|
+
// (110 registrations + their modules) in just to clean up followups.
|
|
21
|
+
import { isSuggestedFollowup, normalizeFollowups } from '../tools/followup-utils.js';
|
|
19
22
|
import { envBuff } from '../config/paths.js';
|
|
20
23
|
import { parseRequestSync } from '../nlu/parser.js';
|
|
21
24
|
import { getEventBus, EventNames } from '../observability/event-bus.js';
|
|
@@ -23,8 +26,11 @@ import { ConfigManager } from '../config/manager.js';
|
|
|
23
26
|
import { ChannelDirectory, PLATFORM_ENV_VARS, PLATFORM_LABELS, } from './channel-directory.js';
|
|
24
27
|
import { DeliveryLedger } from './delivery.js';
|
|
25
28
|
import { InboxLedger } from './inbox.js';
|
|
29
|
+
import { InboundDedupLedger } from './dedup.js';
|
|
30
|
+
import { GatewayHeartbeat, HEARTBEAT_INTERVAL_MS } from './heartbeat.js';
|
|
31
|
+
import { hasCodingAction, looksLikeAgentCliAsk, resolveAskKind } from '../nlu/conversation-gate.js';
|
|
26
32
|
import { GatewayChatStore } from './chat-store.js';
|
|
27
|
-
import { looksLikeConfusedScaffoldingReply } from '../inference/tool-call-utils.js';
|
|
33
|
+
import { looksLikeConfusedScaffoldingReply, toUserFacingGenerationError } from '../inference/tool-call-utils.js';
|
|
28
34
|
import { logger } from '../utils/logger.js';
|
|
29
35
|
import { existsSync, mkdirSync, writeFileSync, unlinkSync } from 'node:fs';
|
|
30
36
|
import { join } from 'node:path';
|
|
@@ -230,6 +236,18 @@ export class GatewayRegistry {
|
|
|
230
236
|
delivery;
|
|
231
237
|
/** P2 — inbound message inbox (who messaged the bot, what happened). */
|
|
232
238
|
inbox;
|
|
239
|
+
/**
|
|
240
|
+
* Idempotency ledger: a message delivered twice (bridge reconnect, offline
|
|
241
|
+
* backfill, webhook retry) is handled once. Without it, one WhatsApp ask
|
|
242
|
+
* became 20+ identical model turns — see dedup.ts.
|
|
243
|
+
*/
|
|
244
|
+
dedup;
|
|
245
|
+
/**
|
|
246
|
+
* Liveness beat — so a gateway that is DOWN is visibly down instead of
|
|
247
|
+
* "configured ✅ but nobody home". Read by `gateway status` and the
|
|
248
|
+
* supervisor.
|
|
249
|
+
*/
|
|
250
|
+
heartbeat;
|
|
233
251
|
adapters = new Map();
|
|
234
252
|
configManager;
|
|
235
253
|
options;
|
|
@@ -249,10 +267,27 @@ export class GatewayRegistry {
|
|
|
249
267
|
* double-count would prematurely fail entries). */
|
|
250
268
|
drainChain = Promise.resolve();
|
|
251
269
|
started = false;
|
|
270
|
+
/** Epoch ms of start() — the uptime reported in the heartbeat. */
|
|
271
|
+
startedAt = 0;
|
|
272
|
+
/** Beats written this run (monotonic; a stalled count means a stalled loop). */
|
|
273
|
+
beatCount = 0;
|
|
274
|
+
/** Per-adapter health, published in every beat. */
|
|
275
|
+
adapterHealth = new Map();
|
|
276
|
+
/** Earliest epoch-ms at which a not-yet-started adapter may be retried. */
|
|
277
|
+
adapterRetryAt = new Map();
|
|
278
|
+
/** The heartbeat + watchdog tick. */
|
|
279
|
+
livenessTimer = null;
|
|
252
280
|
chatEngine;
|
|
253
281
|
/** Per-contact conversation history for gateway chat (WhatsApp/Telegram/etc.).
|
|
254
282
|
* Disk-backed via GatewayChatStore so history survives gateway restarts. */
|
|
255
283
|
chatStore;
|
|
284
|
+
/**
|
|
285
|
+
* P5 — the followups last offered to each contact (`platform:channelId`).
|
|
286
|
+
* A messaging-app sender has no clickable chips: they REPLY with one of the
|
|
287
|
+
* rendered lines, so this is the only way to know the message is a follow-up
|
|
288
|
+
* to the previous answer rather than a brand-new independent request.
|
|
289
|
+
*/
|
|
290
|
+
lastFollowupsByContact = new Map();
|
|
256
291
|
onTypingCallback = null;
|
|
257
292
|
constructor(options = {}, configManager) {
|
|
258
293
|
const allowFromEnv = (envBuff('GATEWAY_ALLOW_IDS') ?? '')
|
|
@@ -267,6 +302,8 @@ export class GatewayRegistry {
|
|
|
267
302
|
this.directory = new ChannelDirectory();
|
|
268
303
|
this.delivery = new DeliveryLedger(options.deliveryConfigDir);
|
|
269
304
|
this.inbox = new InboxLedger(options.deliveryConfigDir);
|
|
305
|
+
this.dedup = new InboundDedupLedger(options.deliveryConfigDir);
|
|
306
|
+
this.heartbeat = new GatewayHeartbeat(options.deliveryConfigDir);
|
|
270
307
|
this.configManager = configManager ?? new ConfigManager();
|
|
271
308
|
this.chatEngine = options.chatEngine ?? null;
|
|
272
309
|
this.chatStore = new GatewayChatStore(options.deliveryConfigDir);
|
|
@@ -418,7 +455,7 @@ export class GatewayRegistry {
|
|
|
418
455
|
const replyTo = async (text) => {
|
|
419
456
|
await this.sendToRef(ref, text);
|
|
420
457
|
};
|
|
421
|
-
const record = (handled, reply) => {
|
|
458
|
+
const record = (handled, reply, dup) => {
|
|
422
459
|
this.inbox.record({
|
|
423
460
|
platform: msg.platform,
|
|
424
461
|
channelId: msg.channelId,
|
|
@@ -428,6 +465,8 @@ export class GatewayRegistry {
|
|
|
428
465
|
isGroup: msg.isGroup,
|
|
429
466
|
handled,
|
|
430
467
|
reply,
|
|
468
|
+
dedupKey: dup?.key,
|
|
469
|
+
dedupCount: dup?.count,
|
|
431
470
|
});
|
|
432
471
|
};
|
|
433
472
|
const parsed = parseRequestSync(msg.text);
|
|
@@ -490,6 +529,33 @@ export class GatewayRegistry {
|
|
|
490
529
|
if (!this.isAllowed(ref)) {
|
|
491
530
|
return refuse('This channel is not authorized to trigger the agent. Add it to BUFF_GATEWAY_ALLOW_IDS (platform:channelId).');
|
|
492
531
|
}
|
|
532
|
+
// ── IDEMPOTENCY ── A messaging transport is at-least-once: the bridge
|
|
533
|
+
// reconnects and replays its offline backfill, a webhook retries, a device
|
|
534
|
+
// re-syncs. Observed live: ONE WhatsApp ask arrived 20+ times and was
|
|
535
|
+
// answered 20+ times (and, when it routed to the pipeline, re-ran a 112s
|
|
536
|
+
// multi-agent pipeline each time) — the sender's phone filled up with the
|
|
537
|
+
// same reply. The transport's own message id is stable across those
|
|
538
|
+
// re-deliveries, so a message handled once is never handled again.
|
|
539
|
+
//
|
|
540
|
+
// Placed AFTER the authorization gates on purpose: an unapproved sender
|
|
541
|
+
// must leave NO trace (the silent-drop privacy rule), and their ledger
|
|
542
|
+
// rows must not be written either.
|
|
543
|
+
const dedupVerdict = this.dedup.classify({
|
|
544
|
+
platform: msg.platform,
|
|
545
|
+
channelId: msg.channelId,
|
|
546
|
+
text: msg.text,
|
|
547
|
+
senderId: msg.senderId,
|
|
548
|
+
isGroup: msg.isGroup,
|
|
549
|
+
messageId: msg.messageId,
|
|
550
|
+
});
|
|
551
|
+
if (dedupVerdict.duplicate) {
|
|
552
|
+
// No reply: the sender ALREADY has the answer for this exact message.
|
|
553
|
+
// No chat-history write either (that would double the user's turn and
|
|
554
|
+
// corrupt the follow-up context).
|
|
555
|
+
logger.info(`gateway: duplicate inbound (${dedupVerdict.kind}, delivery #${dedupVerdict.count}) — ignored`);
|
|
556
|
+
record('duplicate', undefined, { key: dedupVerdict.key, count: dedupVerdict.count });
|
|
557
|
+
return 'duplicate';
|
|
558
|
+
}
|
|
493
559
|
// 7-DAY PER-CONTACT CONVERSATION MEMORY — record every AUTHORIZED inbound
|
|
494
560
|
// message the moment it arrives, BEFORE the routing decision (chat,
|
|
495
561
|
// pipeline, help). Placed AFTER the sender/channel gates: an unapproved
|
|
@@ -507,6 +573,19 @@ export class GatewayRegistry {
|
|
|
507
573
|
catch {
|
|
508
574
|
/* best-effort */
|
|
509
575
|
}
|
|
576
|
+
// ── Local-CLI asks ── "run nuvira gateway status" names a command for the
|
|
577
|
+
// OPERATOR's terminal. Observed live: it was dispatched to the multi-agent
|
|
578
|
+
// pipeline as a create intent, burned 112s, failed, and wrote an approval
|
|
579
|
+
// artifact. A remote sender cannot execute it locally and a coding
|
|
580
|
+
// pipeline is the worst possible answer, so it gets a deterministic
|
|
581
|
+
// pointer instead of agent work.
|
|
582
|
+
if (looksLikeAgentCliAsk(msg.text)) {
|
|
583
|
+
logger.debug(`gateway: agent-CLI ask → pointer line (${msg.text.slice(0, 60)})`);
|
|
584
|
+
const line = `🤖 \`nuvira …\` is a command for your own terminal — I can't run it for a remote sender. Run it locally to see the result.`;
|
|
585
|
+
await replyTo(line);
|
|
586
|
+
record('help', line);
|
|
587
|
+
return line;
|
|
588
|
+
}
|
|
510
589
|
// pipelineOnly: only pipeline intents run directly; chat/unknown intents
|
|
511
590
|
// still route through runInboundChat so the model can handle them via
|
|
512
591
|
// the tool loop. Light/config intents are silently recorded without a
|
|
@@ -528,11 +607,21 @@ export class GatewayRegistry {
|
|
|
528
607
|
record('help', line);
|
|
529
608
|
return line;
|
|
530
609
|
}
|
|
531
|
-
//
|
|
532
|
-
// the
|
|
533
|
-
//
|
|
534
|
-
//
|
|
535
|
-
|
|
610
|
+
// ── THE routing verdict (one shared rule, every surface) ──
|
|
611
|
+
// `resolveAskKind` is the SAME decision `nuvira chat` makes (see
|
|
612
|
+
// chat.ts's resolvePipelineDispatch): a genuine question is answered
|
|
613
|
+
// directly, a coding verb in command position runs the pipeline, and only
|
|
614
|
+
// then does the NLU action map decide. The gateway used to ask only
|
|
615
|
+
// `parsed.action.run`, so the two surfaces disagreed on the same ask —
|
|
616
|
+
// "how do I add JWT auth to the app?" got prose here while chat/execute
|
|
617
|
+
// did the work, and a question phrased like a task still burned a run.
|
|
618
|
+
const askKind = resolveAskKind(msg.text, parsed);
|
|
619
|
+
logger.debug(`gateway: route ${askKind} (intent ${parsed.intent} @ ${parsed.confidence.toFixed(2)}, coding=${hasCodingAction(msg.text)})`);
|
|
620
|
+
// Chat ask: a REAL chat answer through the same engine as the dashboard
|
|
621
|
+
// console (ChatCommand.answerOnce) — so "write a poem and send it to Alex"
|
|
622
|
+
// on WhatsApp actually writes the poem, and the model's toolset includes
|
|
623
|
+
// gateway_send to deliver it.
|
|
624
|
+
if (askKind === 'chat') {
|
|
536
625
|
const answer = await this.runInboundChat(msg);
|
|
537
626
|
if (answer && answer.content.trim() && !answer.generationFailed) {
|
|
538
627
|
await replyTo(answer.content);
|
|
@@ -701,6 +790,11 @@ export class GatewayRegistry {
|
|
|
701
790
|
const historyKey = `${msg.platform}:${msg.channelId}`;
|
|
702
791
|
const priorWindow = this.chatStore.getFullHistory(historyKey);
|
|
703
792
|
const history = priorWindow.slice(0, Math.max(0, priorWindow.length - 1)).slice(-12);
|
|
793
|
+
// P5 — is this message a REPLY to a followup we just sent? (No chips on
|
|
794
|
+
// WhatsApp/Telegram — the sender re-types the line.) If so it continues
|
|
795
|
+
// the previous execution instead of starting a fresh request.
|
|
796
|
+
const lastFollowups = this.lastFollowupsByContact.get(historyKey);
|
|
797
|
+
const continuation = isSuggestedFollowup(msg.text, lastFollowups);
|
|
704
798
|
// P2 — origin context: the chat model knows who it's talking to, so its
|
|
705
799
|
// gateway_send calls target the right contact/channel.
|
|
706
800
|
// The response format rules ensure the user gets a clean, direct answer
|
|
@@ -742,6 +836,9 @@ export class GatewayRegistry {
|
|
|
742
836
|
provider: useAuto ? 'auto' : providerType,
|
|
743
837
|
model: useAuto ? 'auto' : providerConfig.model,
|
|
744
838
|
history,
|
|
839
|
+
// P5 — a replied followup carries the continuation marker into the
|
|
840
|
+
// model thread (the previous answer is already in `history`).
|
|
841
|
+
...(continuation ? { continuation: true } : {}),
|
|
745
842
|
// Inject prior conversation context so the model remembers previous
|
|
746
843
|
// exchanges with this contact (follow-up questions, suggested followups).
|
|
747
844
|
gateway: {
|
|
@@ -796,10 +893,11 @@ export class GatewayRegistry {
|
|
|
796
893
|
logger.warn(`gateway: suppressing contract-confusion reply (${content.length} chars)`);
|
|
797
894
|
content = '🤖 Sorry — none of my language models could handle that request just now. Please try again in a moment, or rephrase it — you can also run `nuvira models` to check your model setup.';
|
|
798
895
|
}
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
896
|
+
// P5 — remember what we offered (for the next inbound), and render the
|
|
897
|
+
// "Try next" list CLEAN + STRUCTURED through the shared normalizer.
|
|
898
|
+
const normalized = normalizeFollowups(answer.followups);
|
|
899
|
+
this.lastFollowupsByContact.set(historyKey, normalized);
|
|
900
|
+
const fups = normalized.map((f) => f.prompt);
|
|
803
901
|
if (fups.length > 0) {
|
|
804
902
|
const suffix = `\n\nTry next:\n${fups.map((f, i) => `${i + 1}. ${f}`).join('\n')}`;
|
|
805
903
|
// WhatsApp truncates ~4096 chars — the ANSWER is the deliverable, so
|
|
@@ -844,22 +942,22 @@ export class GatewayRegistry {
|
|
|
844
942
|
await this.handleInbound(msg);
|
|
845
943
|
}
|
|
846
944
|
catch (err) {
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
945
|
+
// The RAW error goes to the log; the SENDER gets a plain sentence.
|
|
946
|
+
// Interpolating err.message here put provider wire errors (rate-limit
|
|
947
|
+
// JSON, stack fragments) in front of a messaging-app user.
|
|
948
|
+
logger.error(`⚠️ gateway error: ${err instanceof Error ? err.message : String(err)}`);
|
|
949
|
+
await this.sendToRef({ platform: msg.platform, channelId: msg.channelId }, `🤖 ${toUserFacingGenerationError(err)}`);
|
|
850
950
|
}
|
|
851
951
|
};
|
|
852
952
|
for (const adapter of this.adapters.values()) {
|
|
853
953
|
if (!adapter.configured)
|
|
854
954
|
continue;
|
|
855
|
-
|
|
856
|
-
await adapter.start(onMessage);
|
|
857
|
-
logger.info(`gateway: ${adapter.describe()} started`);
|
|
858
|
-
}
|
|
859
|
-
catch (err) {
|
|
860
|
-
logger.error(`gateway: failed to start ${adapter.describe()}: ${err instanceof Error ? err.message : err}`);
|
|
861
|
-
}
|
|
955
|
+
await this.startAdapter(adapter, onMessage);
|
|
862
956
|
}
|
|
957
|
+
// Liveness + adapter watchdog: writes the beat `gateway status` reads, and
|
|
958
|
+
// retries any configured adapter that never came up (a transient network
|
|
959
|
+
// error at boot used to leave that platform silently dead for the run).
|
|
960
|
+
this.startLiveness();
|
|
863
961
|
if (this.options.streamEvents) {
|
|
864
962
|
this.unsubscribe = getEventBus().on('*', (record) => {
|
|
865
963
|
if (!this.activeChannel)
|
|
@@ -930,6 +1028,107 @@ export class GatewayRegistry {
|
|
|
930
1028
|
/* best-effort — never break the pipeline */
|
|
931
1029
|
}
|
|
932
1030
|
}
|
|
1031
|
+
/**
|
|
1032
|
+
* Start ONE adapter and record its health. Never throws: a platform that
|
|
1033
|
+
* fails to start must not take the gateway down with it.
|
|
1034
|
+
*/
|
|
1035
|
+
async startAdapter(adapter, onMessage) {
|
|
1036
|
+
const prior = this.adapterHealth.get(adapter.platform);
|
|
1037
|
+
try {
|
|
1038
|
+
await adapter.start(onMessage);
|
|
1039
|
+
logger.info(`gateway: ${adapter.describe()} started`);
|
|
1040
|
+
this.adapterHealth.set(adapter.platform, {
|
|
1041
|
+
platform: adapter.platform,
|
|
1042
|
+
configured: true,
|
|
1043
|
+
started: true,
|
|
1044
|
+
restarts: prior?.restarts ?? 0,
|
|
1045
|
+
});
|
|
1046
|
+
}
|
|
1047
|
+
catch (err) {
|
|
1048
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
1049
|
+
logger.error(`gateway: failed to start ${adapter.describe()}: ${message}`);
|
|
1050
|
+
this.adapterHealth.set(adapter.platform, {
|
|
1051
|
+
platform: adapter.platform,
|
|
1052
|
+
configured: true,
|
|
1053
|
+
started: false,
|
|
1054
|
+
restarts: prior?.restarts ?? 0,
|
|
1055
|
+
lastError: message,
|
|
1056
|
+
});
|
|
1057
|
+
this.scheduleAdapterRetry(adapter.platform, prior?.restarts ?? 0);
|
|
1058
|
+
}
|
|
1059
|
+
}
|
|
1060
|
+
/** Max restart attempts per adapter per run — beyond this, stop the churn. */
|
|
1061
|
+
static ADAPTER_MAX_RESTARTS = 8;
|
|
1062
|
+
/** Exponential backoff between adapter restart attempts (5s → 120s). */
|
|
1063
|
+
scheduleAdapterRetry(platform, restarts) {
|
|
1064
|
+
if (restarts >= GatewayRegistry.ADAPTER_MAX_RESTARTS) {
|
|
1065
|
+
logger.error(`gateway: ${platform} gave up after ${restarts} restart attempts (check its credentials/network)`);
|
|
1066
|
+
return;
|
|
1067
|
+
}
|
|
1068
|
+
const delay = Math.min(5_000 * 2 ** restarts, 120_000);
|
|
1069
|
+
this.adapterRetryAt.set(platform, Date.now() + delay);
|
|
1070
|
+
}
|
|
1071
|
+
/**
|
|
1072
|
+
* The liveness tick: retry dead adapters, then write a beat. Runs on the
|
|
1073
|
+
* same interval for both, so a stalled process is visible as a stalled beat.
|
|
1074
|
+
*/
|
|
1075
|
+
startLiveness() {
|
|
1076
|
+
this.startedAt = Date.now();
|
|
1077
|
+
this.beatCount = 0;
|
|
1078
|
+
const tick = async () => {
|
|
1079
|
+
await this.retryPendingAdapters();
|
|
1080
|
+
this.beatCount += 1;
|
|
1081
|
+
this.heartbeat.beat({
|
|
1082
|
+
startedAt: this.startedAt,
|
|
1083
|
+
beats: this.beatCount,
|
|
1084
|
+
supervised: envBuff('GATEWAY_SUPERVISED') === '1',
|
|
1085
|
+
supervisorPid: process.ppid || undefined,
|
|
1086
|
+
adapters: [...this.adapterHealth.values()],
|
|
1087
|
+
});
|
|
1088
|
+
};
|
|
1089
|
+
// First beat immediately, so `gateway status` is honest within a second of
|
|
1090
|
+
// startup instead of reporting the previous run's stale beat.
|
|
1091
|
+
void tick().catch(() => undefined);
|
|
1092
|
+
this.livenessTimer = setInterval(() => void tick().catch(() => undefined), HEARTBEAT_INTERVAL_MS);
|
|
1093
|
+
}
|
|
1094
|
+
/** Retry every configured adapter that is not currently started. */
|
|
1095
|
+
async retryPendingAdapters() {
|
|
1096
|
+
const now = Date.now();
|
|
1097
|
+
for (const adapter of this.adapters.values()) {
|
|
1098
|
+
if (!adapter.configured)
|
|
1099
|
+
continue;
|
|
1100
|
+
const health = this.adapterHealth.get(adapter.platform);
|
|
1101
|
+
if (health?.started)
|
|
1102
|
+
continue;
|
|
1103
|
+
const restarts = health?.restarts ?? 0;
|
|
1104
|
+
if (restarts >= GatewayRegistry.ADAPTER_MAX_RESTARTS)
|
|
1105
|
+
continue;
|
|
1106
|
+
const due = this.adapterRetryAt.get(adapter.platform) ?? 0;
|
|
1107
|
+
if (due > now)
|
|
1108
|
+
continue;
|
|
1109
|
+
logger.warn(`gateway: retrying ${adapter.platform} (attempt ${restarts + 1})`);
|
|
1110
|
+
this.adapterHealth.set(adapter.platform, {
|
|
1111
|
+
platform: adapter.platform,
|
|
1112
|
+
configured: true,
|
|
1113
|
+
started: false,
|
|
1114
|
+
restarts: restarts + 1,
|
|
1115
|
+
lastError: health?.lastError,
|
|
1116
|
+
});
|
|
1117
|
+
this.adapterRetryAt.delete(adapter.platform);
|
|
1118
|
+
const onMessage = async (msg) => {
|
|
1119
|
+
try {
|
|
1120
|
+
await this.handleInbound(msg);
|
|
1121
|
+
}
|
|
1122
|
+
catch (err) {
|
|
1123
|
+
logger.error(`⚠️ gateway error: ${err instanceof Error ? err.message : String(err)}`);
|
|
1124
|
+
await this.sendToRef({ platform: msg.platform, channelId: msg.channelId }, `🤖 ${toUserFacingGenerationError(err)}`);
|
|
1125
|
+
}
|
|
1126
|
+
};
|
|
1127
|
+
// startAdapter preserves the incremented count and re-schedules the
|
|
1128
|
+
// next retry (with a longer backoff) when the attempt fails again.
|
|
1129
|
+
await this.startAdapter(adapter, onMessage);
|
|
1130
|
+
}
|
|
1131
|
+
}
|
|
933
1132
|
/** Stop adapters + unsubscribe + stop the delivery drain. Idempotent. */
|
|
934
1133
|
async stop() {
|
|
935
1134
|
if (!this.started)
|
|
@@ -937,6 +1136,13 @@ export class GatewayRegistry {
|
|
|
937
1136
|
this.started = false;
|
|
938
1137
|
this.unsubscribe?.();
|
|
939
1138
|
this.unsubscribe = null;
|
|
1139
|
+
if (this.livenessTimer) {
|
|
1140
|
+
clearInterval(this.livenessTimer);
|
|
1141
|
+
this.livenessTimer = null;
|
|
1142
|
+
}
|
|
1143
|
+
// A clean shutdown removes the beat: `gateway status` must then say "down",
|
|
1144
|
+
// not "stale", so the operator knows this was intentional.
|
|
1145
|
+
this.heartbeat.clear();
|
|
940
1146
|
if (this.deliveryTimer) {
|
|
941
1147
|
clearInterval(this.deliveryTimer);
|
|
942
1148
|
this.deliveryTimer = null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/gateway/registry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/gateway/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,4EAA4E;AAC5E,qEAAqE;AACrE,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AACrF,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,GAKhB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,cAAc,EAAsB,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,WAAW,EAA2B,MAAM,YAAY,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAsB,MAAM,gBAAgB,CAAC;AAC7F,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AACpG,OAAO,EAAE,gBAAgB,EAA0B,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,iCAAiC,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AACjH,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC3E,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D,sEAAsE;AACtE,MAAM,0BAA0B,GAAG,MAAM,CAAC;AAE1C,8EAA8E;AAE9E;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAAY;IAChD,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,IAAI,CAAC,GAAG,IAAI,CAAC;IAEb,kEAAkE;IAClE,iEAAiE;IACjE,uEAAuE;IACvE,qEAAqE;IACrE,MAAM,UAAU,GAAG,CAAC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,sBAAsB,CAAC,CAAC;IACzF,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC7B,mCAAmC;QACnC,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,IAAI,GAAG,kBAAkB,GAAG,GAAG,EAAE,IAAI,CAAC,CAAC;QAClE,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAC3B,2EAA2E;QAC3E,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,iBAAiB,GAAG,aAAa,EAAE,IAAI,CAAC,CAAC;QACnE,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC1B,0BAA0B;QAC1B,MAAM,aAAa,GAAG,IAAI,MAAM,CAAC,OAAO,GAAG,GAAG,EAAE,IAAI,CAAC,CAAC;QACtD,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;IACnC,CAAC;IACD,uEAAuE;IACvE,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,oCAAoC,EAAE,EAAE,CAAC,CAAC;IACxD,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,sCAAsC,EAAE,EAAE,CAAC,CAAC;IAC1D,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,8CAA8C,EAAE,EAAE,CAAC,CAAC;IAElE,8DAA8D;IAC9D,kEAAkE;IAClE,wEAAwE;IAExE,iDAAiD;IACjD,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,02BAA02B,EAAE,EAAE,CAAC,CAAC;IAE93B,wCAAwC;IACxC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,sSAAsS,EAAE,EAAE,CAAC,CAAC;IAE1T,mCAAmC;IACnC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,yIAAyI,EAAE,EAAE,CAAC,CAAC;IAE7J,0DAA0D;IAC1D,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,sHAAsH,EAAE,EAAE,CAAC,CAAC;IAE1I,oCAAoC;IACpC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,kEAAkE,EAAE,EAAE,CAAC,CAAC;IAEtF,yDAAyD;IACzD,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,4PAA4P,EAAE,EAAE,CAAC,CAAC;IAEhR,yBAAyB;IACzB,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAEjC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;AAClB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,2EAA2E;IAC3E,4EAA4E;IAC5E,yEAAyE;IACzE,gEAAgE;IAChE,OAAO,qEAAqE,CAAC,IAAI,CAAC,IAAI,CAAC;QACrF,kCAAkC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAClD,CAAC;AAED,+EAA+E;AAE/E,6EAA6E;AAC7E,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,IAAS;IACxD,MAAM,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC;IACrB,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,UAAU,CAAC,6BAA6B;YAC3C,OAAO,sBAAsB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACnF,KAAK,UAAU,CAAC,+BAA+B;YAC7C,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,mBAAmB,CAAC;QACjE,KAAK,UAAU,CAAC,uBAAuB,CAAC,CAAC,CAAC;YACxC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YACtE,OAAO,KAAK,CAAC,CAAC,CAAC,YAAY,KAAK,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAC1E,CAAC;QACD,KAAK,UAAU,CAAC,yBAAyB;YACvC,OAAO,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACtH,KAAK,UAAU,CAAC,yBAAyB;YACvC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACnE,KAAK,UAAU,CAAC,gBAAgB;YAC9B,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAClE,KAAK,UAAU,CAAC,WAAW;YACzB,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACvF;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC;AAED,+EAA+E;AAE/E;;;;;;;;;GASG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAAsB;IACtD,IAAI,CAAC,EAAE;QAAE,OAAO,EAAE,CAAC;IACnB,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC;IACpB,IAAI,2BAA2B,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QACxC,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,2BAA2B,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC5F,CAAC;IACD,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AAC9B,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,KAAyB;IACvD,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IACrE,OAAO,CAAC,KAAK,UAAU,IAAI,CAAC,KAAK,GAAG,CAAC;AACvC,CAAC;AAED;;;;;GAKG;AACH,SAAS,eAAe,CAAC,MAAiC;IACxD,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;AAC3F,CAAC;AAED;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,MAAiC,EAAE,QAA4B;IACvF,MAAM,IAAI,GAAG,MAAM,EAAE,YAAY,CAAC;IAClC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACtC,IAAI,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5C,MAAM,IAAI,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACzC,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;AAC5E,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9B,IAAI,kCAAkC,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5D,IAAI,yBAAyB,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IACnD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW;IACzB,MAAM,MAAM,GAAG,CAAC,CAAqB,EAAW,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;IACvH,MAAM,KAAK,GAAG,CAAC,CAAqB,EAAY,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC7G,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC,CAAC;IAC5D,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC,CAAC;IAC9D,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC,CAAC;IACjE,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC,CAAC;IAC9D,MAAM,GAAG,GAAc,EAAE,CAAC;IAC1B,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAe,EAAE,CAAC;QAC7D,MAAM,GAAG,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAkB,EAAE,CAAC;QAC9B,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,8BAA8B,GAAG,EAAE,CAAC,CAAC,CAAC;QACtE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,MAAM;YAAE,GAAG,CAAC,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC;QACvG,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,+BAA+B,GAAG,EAAE,CAAC,CAAC,CAAC;QACxE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,MAAM;YAAE,GAAG,CAAC,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC;QAC9G,IAAI,aAAa,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,gCAAgC,GAAG,EAAE,CAAC,CAAC;YAAE,GAAG,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3G,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;YAAE,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC;QAC9C,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM;YAAE,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;IAC5C,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAqCD,MAAM,OAAO,eAAe;IACjB,SAAS,CAAmB;IACrC,wDAAwD;IAC/C,QAAQ,CAAiB;IAClC,wEAAwE;IAC/D,KAAK,CAAc;IAC5B;;;;OAIG;IACM,KAAK,CAAqB;IACnC;;;;OAIG;IACM,SAAS,CAAmB;IAC7B,QAAQ,GAAG,IAAI,GAAG,EAA4B,CAAC;IAC/C,aAAa,CAAgB;IAC7B,OAAO,CAAuG;IACtH;;yBAEqB;IACb,gBAAgB,CAAY;IAC5B,QAAQ,CAAY;IACpB,WAAW,GAAwB,IAAI,CAAC;IACxC,aAAa,GAA0B,IAAI,CAAC;IACpD,wEAAwE;IAChE,aAAa,GAAsB,IAAI,CAAC;IAChD,oFAAoF;IAC5E,QAAQ,GAAqB,OAAO,CAAC,OAAO,EAAE,CAAC;IACvD;;wDAEoD;IAC5C,UAAU,GAAqB,OAAO,CAAC,OAAO,EAAE,CAAC;IACjD,OAAO,GAAG,KAAK,CAAC;IACxB,kEAAkE;IAC1D,SAAS,GAAG,CAAC,CAAC;IACtB,gFAAgF;IACxE,SAAS,GAAG,CAAC,CAAC;IACtB,mDAAmD;IAC3C,aAAa,GAAG,IAAI,GAAG,EAA2B,CAAC;IAC3D,2EAA2E;IACnE,cAAc,GAAG,IAAI,GAAG,EAAoB,CAAC;IACrD,qCAAqC;IAC7B,aAAa,GAA0B,IAAI,CAAC;IAC5C,UAAU,CAA8C;IAChE;iFAC6E;IACrE,SAAS,CAAmB;IACpC;;;;;OAKG;IACK,sBAAsB,GAAG,IAAI,GAAG,EAAqE,CAAC;IACtG,gBAAgB,GAA8C,IAAI,CAAC;IAE3E,YAAY,UAAkC,EAAE,EAAE,aAA6B;QAC7E,MAAM,YAAY,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC;aACtD,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aACpB,MAAM,CAAC,OAAO,CAAC,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG;YACb,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,IAAI;YAC1C,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,KAAK;YAC3C,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,YAAY;SAC3C,CAAC;QACF,IAAI,CAAC,SAAS,GAAG,IAAI,gBAAgB,EAAE,CAAC;QACxC,IAAI,CAAC,QAAQ,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAC9D,IAAI,CAAC,KAAK,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QACxD,IAAI,CAAC,KAAK,GAAG,IAAI,kBAAkB,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAC/D,IAAI,CAAC,SAAS,GAAG,IAAI,gBAAgB,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QACjE,IAAI,CAAC,aAAa,GAAG,aAAa,IAAI,IAAI,aAAa,EAAE,CAAC;QAC1D,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,IAAI,CAAC;QAC7C,IAAI,CAAC,SAAS,GAAG,IAAI,gBAAgB,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QACjE,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC;QACjD,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;QAC/C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;IACtC,CAAC;IAED;;;;;;OAMG;IACK,YAAY;QAClB,MAAM,UAAU,GAAI,IAAI,CAAC,aAAa,CAAC,MAAM,EAA6C,CAAC,OAAO,EAAE,QAAQ,CAAC;QAC7G,wEAAwE;QACxE,wEAAwE;QACxE,wEAAwE;QACxE,OAAO,EAAE,GAAG,WAAW,EAAE,EAAE,GAAG,CAAE,UAAoC,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1G,CAAC;IAED;;;;OAIG;IACK,oBAAoB;QAC1B,MAAM,UAAU,GAAI,IAAI,CAAC,aAAa,CAAC,MAAM,EAAoD,CAAC,OAAO,EAAE,gBAAgB,CAAC;QAC5H,OAAO,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,sBAAsB,CAAC,OAAe;QAClD,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,oBAAoB,EAAE,EAAE,CAAC;YACjD,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,wBAAwB,OAAO,EAAE,CAAC,CAAC;YACtE,IAAI,CAAC,EAAE;gBAAE,MAAM,CAAC,IAAI,CAAC,8BAA8B,MAAM,6CAA6C,CAAC,CAAC;QAC1G,CAAC;IACH,CAAC;IAED,qDAAqD;IACrD,QAAQ,CAAC,OAAuB;QAC9B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC/C,CAAC;IAED,+BAA+B;IAC/B,YAAY;QACV,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IACrC,CAAC;IAED,sDAAsD;IACtD,oBAAoB;QAClB,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAC/D,CAAC;IAED,6EAA6E;IAC7E,KAAK,CAAC,IAAI,CAAC,MAAc,EAAE,IAAY;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC3C,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,CAAC,IAAI,CAAC,oCAAoC,MAAM,GAAG,CAAC,CAAC;YAC3D,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,cAAc,CAAC,GAAe,EAAE,KAAmB;QACvD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAChD,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,CAAC,OAAO,CAAC,SAAS;YAAE,OAAO,KAAK,CAAC;QACxE,OAAO,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACjD,CAAC;IAED,gFAAgF;IAChF,KAAK,CAAC,SAAS,CAAC,GAAe,EAAE,IAAY,EAAE,MAAe;QAC5D,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAChD,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YACpC,MAAM,CAAC,IAAI,CAAC,yBAAyB,GAAG,CAAC,QAAQ,kBAAkB,CAAC,CAAC;YACrE,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,EAAE,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,MAAM,CAAC,IAAI,CAAC,oBAAoB,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,SAAS,uCAAuC,CAAC,CAAC;YACtG,qEAAqE;YACrE,mEAAmE;YACnE,sDAAsD;YACtD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;gBACpB,MAAM,EAAE,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,SAAS,EAAE;gBACpD,GAAG;gBACH,IAAI;aACL,CAAC,CAAC;YACH,OAAO,KAAK,CAAC;QACf,CAAC;QACD,yEAAyE;QACzE,2EAA2E;QAC3E,0EAA0E;QAC1E,uEAAuE;QACvE,MAAM,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,aAAa;QACjB,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACnG,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAC7D,OAAO,GAAG,CAAC;IACb,CAAC;IAED,+EAA+E;IACvE,KAAK,CAAC,SAAS,CAAC,KAAoB;QAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAClD,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YACpC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,gBAAgB,KAAK,CAAC,QAAQ,kBAAkB,EAAE,CAAC;QAChF,CAAC;QACD,MAAM,EAAE,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3D,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;IACjE,CAAC;IAED,iFAAiF;IACzE,gBAAgB,CAAC,QAAkB;QACzC,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;YAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;YAC9E,KAAK,MAAM,KAAK,IAAI,GAAG,EAAE,CAAC;gBACxB,MAAM,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,EAAE,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;YAC3E,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACxB,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAC7D,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,aAAa,CAAC,GAAmB;QACrC,uEAAuE;QACvE,kEAAkE;QAClE,2EAA2E;QAC3E,IAAI,GAAG,CAAC,QAAQ,KAAK,UAAU,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;YAChD,KAAK,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACvF,CAAC;QAED,MAAM,GAAG,GAAe,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC;QAC7E,MAAM,OAAO,GAAG,KAAK,EAAE,IAAY,EAAiB,EAAE;YACpD,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAClC,CAAC,CAAC;QACF,MAAM,MAAM,GAAG,CACb,OAA2B,EAC3B,KAAc,EACd,GAAoC,EAC9B,EAAE;YACR,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;gBAChB,QAAQ,EAAE,GAAG,CAAC,QAAQ;gBACtB,SAAS,EAAE,GAAG,CAAC,SAAS;gBACxB,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,QAAQ,EAAE,GAAG,CAAC,QAAQ;gBACtB,OAAO,EAAE,GAAG,CAAC,OAAO;gBACpB,OAAO;gBACP,KAAK;gBACL,QAAQ,EAAE,GAAG,EAAE,GAAG;gBAClB,UAAU,EAAE,GAAG,EAAE,KAAK;aACvB,CAAC,CAAC;QACL,CAAC,CAAC;QAEF,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAE1C,qEAAqE;QACrE,yEAAyE;QACzE,yEAAyE;QACzE,oEAAoE;QACpE,gDAAgD;QAChD,4EAA4E;QAC5E,sEAAsE;QACtE,2EAA2E;QAC3E,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACpC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC3C,MAAM,MAAM,GAAG,KAAK,EAAE,GAAW,EAAmB,EAAE;YACpD,qEAAqE;YACrE,sEAAsE;YACtE,qEAAqE;YACrE,IAAI,MAAM,EAAE,UAAU,KAAK,KAAK,EAAE,CAAC;gBACjC,MAAM,IAAI,GAAG,KAAK,GAAG,EAAE,CAAC;gBACxB,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;gBACpB,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;gBACxB,OAAO,IAAI,CAAC;YACd,CAAC;YACD,MAAM,CAAC,SAAS,CAAC,CAAC;YAClB,OAAO,SAAS,CAAC,CAAC,+CAA+C;QACnE,CAAC,CAAC;QACF,IAAI,MAAM,EAAE,QAAQ,EAAE,CAAC;YACrB,OAAO,MAAM,CAAC,OAAO,GAAG,CAAC,QAAQ,0CAA0C,CAAC,CAAC;QAC/E,CAAC;QACD,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YAChB,IAAI,MAAM,EAAE,aAAa,IAAI,MAAM,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC9G,OAAO,MAAM,CAAC,oDAAoD,CAAC,CAAC;YACtE,CAAC;YACD,qEAAqE;YACrE,yEAAyE;YACzE,uEAAuE;YACvE,wEAAwE;YACxE,qEAAqE;YACrE,6DAA6D;YAC7D,yEAAyE;YACzE,IAAI,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACvE,OAAO,MAAM,CAAC,8CAA8C,CAAC,CAAC;YAChE,CAAC;YACD,mEAAmE;YACnE,IAAI,MAAM,EAAE,cAAc,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxD,MAAM,IAAI,GAAG,yFAAyF,CAAC;gBACvG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;gBACpB,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBACrB,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;aAAM,IAAI,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC9E,kFAAkF;YAClF,oEAAoE;YACpE,sEAAsE;YACtE,oEAAoE;YACpE,qEAAqE;YACrE,OAAO,MAAM,CAAC,8CAA8C,CAAC,CAAC;QAChE,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;YACzB,OAAO,MAAM,CAAC,6GAA6G,CAAC,CAAC;QAC/H,CAAC;QAED,uEAAuE;QACvE,2EAA2E;QAC3E,sEAAsE;QACtE,yEAAyE;QACzE,0EAA0E;QAC1E,oEAAoE;QACpE,mEAAmE;QACnE,EAAE;QACF,wEAAwE;QACxE,uEAAuE;QACvE,mCAAmC;QACnC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;YACvC,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,SAAS,EAAE,GAAG,CAAC,SAAS;SACzB,CAAC,CAAC;QACH,IAAI,YAAY,CAAC,SAAS,EAAE,CAAC;YAC3B,sEAAsE;YACtE,sEAAsE;YACtE,kCAAkC;YAClC,MAAM,CAAC,IAAI,CACT,+BAA+B,YAAY,CAAC,IAAI,eAAe,YAAY,CAAC,KAAK,aAAa,CAC/F,CAAC;YACF,MAAM,CAAC,WAAW,EAAE,SAAS,EAAE,EAAE,GAAG,EAAE,YAAY,CAAC,GAAG,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC;YACrF,OAAO,WAAW,CAAC;QACrB,CAAC;QAED,0EAA0E;QAC1E,oEAAoE;QACpE,wEAAwE;QACxE,uEAAuE;QACvE,yEAAyE;QACzE,yEAAyE;QACzE,kEAAkE;QAClE,2EAA2E;QAC3E,0EAA0E;QAC1E,8BAA8B;QAC9B,MAAM,UAAU,GAAG,GAAG,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;QACtD,IAAI,CAAC;YACH,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QACrD,CAAC;QAAC,MAAM,CAAC;YACP,iBAAiB;QACnB,CAAC;QAED,2EAA2E;QAC3E,2EAA2E;QAC3E,0EAA0E;QAC1E,mEAAmE;QACnE,oEAAoE;QACpE,iCAAiC;QACjC,IAAI,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACnC,MAAM,CAAC,KAAK,CAAC,0CAA0C,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;YACjF,MAAM,IAAI,GAAG,4HAA4H,CAAC;YAC1I,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;YACpB,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACrB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,yEAAyE;QACzE,sEAAsE;QACtE,sEAAsE;QACtE,qEAAqE;QACrE,qCAAqC;QACrC,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;YAChE,MAAM,CAAC,KAAK,CAAC,0CAA0C,MAAM,CAAC,MAAM,MAAM,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC;YAChI,MAAM,CAAC,MAAM,CAAC,CAAC;YACf,OAAO,WAAW,CAAC;QACrB,CAAC;QAED,0EAA0E;QAC1E,qEAAqE;QACrE,wEAAwE;QACxE,qEAAqE;QACrE,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,UAAU,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,MAAM,EAAE,CAAC;YACrE,MAAM,CAAC,KAAK,CAAC,0BAA0B,MAAM,CAAC,MAAM,MAAM,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;YACvG,MAAM,IAAI,GAAG,6HAA6H,CAAC;YAC3I,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;YACpB,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACrB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,6DAA6D;QAC7D,iEAAiE;QACjE,qEAAqE;QACrE,0EAA0E;QAC1E,oEAAoE;QACpE,uEAAuE;QACvE,wEAAwE;QACxE,uEAAuE;QACvE,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACjD,MAAM,CAAC,KAAK,CACV,kBAAkB,OAAO,YAAY,MAAM,CAAC,MAAM,MAAM,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAC7H,CAAC;QAEF,wEAAwE;QACxE,2EAA2E;QAC3E,yEAAyE;QACzE,8BAA8B;QAC9B,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;YACvB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;YAC9C,IAAI,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC;gBAChE,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAC9B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;gBAC/B,OAAO,MAAM,CAAC,OAAO,CAAC;YACxB,CAAC;YACD,uEAAuE;YACvE,sEAAsE;YACtE,wEAAwE;YACxE,8DAA8D;YAC9D,MAAM,CAAC,IAAI,CAAC,oCAAoC,MAAM,CAAC,MAAM,MAAM,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACpG,MAAM,IAAI,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC1C,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;YACpB,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACrB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,yEAAyE;QACzE,0EAA0E;QAC1E,2EAA2E;QAC3E,yEAAyE;QACzE,wEAAwE;QACxE,wEAAwE;QACxE,IAAI,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;YAC9C,MAAM,IAAI,GACR,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,gBAAgB;gBACzD,CAAC,CAAC,MAAM,CAAC,OAAO;gBAChB,CAAC,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC;YACnC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;YACpB,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;YACzB,uEAAuE;YACvE,iEAAiE;YACjE,MAAM,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;YACxC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,qEAAqE;QACrE,0EAA0E;QAC1E,6DAA6D;QAC7D,MAAM,OAAO,CAAC,0BAA0B,MAAM,CAAC,MAAM,CAAC,IAAI,YAAY,CAAC,CAAC;QACxE,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAqB,EAAE;YACzD,sEAAsE;YACtE,IAAI,CAAC,aAAa,GAAG,GAAG,CAAC;YACzB,wEAAwE;YACxE,uEAAuE;YACvE,MAAM,MAAM,GAAG,GAAG,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;YACjI,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE;gBACjE,KAAK,EAAE,KAAK;gBACZ,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU;gBACxC,MAAM;aACP,CAAC,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC;YACxD,MAAM,KAAK,GAAG,CAAC,GAAG,QAAQ,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;YAClD,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;oBAAE,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;YACzE,CAAC;YACD,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/B,MAAM,OAAO,CAAC,KAAK,CAAC,CAAC;YACrB,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAC1B,kEAAkE;YAClE,oDAAoD;YACpD,MAAM,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;YACzC,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAC3C,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;;;;;OAOG;IACH,iFAAiF;IACjF,WAAW,CAAC,QAA4C;QACtD,IAAI,CAAC,gBAAgB,GAAG,QAAQ,IAAI,IAAI,CAAC;IAC3C,CAAC;IAED,+EAA+E;IACvE,eAAe,CAAC,KAA+D;QACrF,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,oBAAoB,EAAE,EAAE,SAAS,CAAC,CAAC;YACpD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;YACtC,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBACjB,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;YACzH,CAAC;iBAAM,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC5B,UAAU,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;IAC/B,CAAC;IAED;;;;;;OAMG;IACK,qBAAqB;QAC3B,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,CAAC;YAC/B,wEAAwE;YACxE,yEAAyE;YACzE,kEAAkE;YAClE,iEAAiE;YACjE,OAAO,oKAAoK,CAAC;QAC9K,CAAC;QACD,OAAO,yIAAyI,CAAC;IACnJ,CAAC;IAED;;;;;;;;OAQG;IACK,kBAAkB;QACxB,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,SAAS,IAAI,EAAE,CAAC;YAC9D,MAAM,KAAK,GAAI,IAAI,CAAC,aAAgF;iBACjG,sBAAsB,CAAC;YAC1B,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;gBACpD,IAAI,CAAC,GAAG;oBAAE,SAAS;gBACnB,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;oBACrB,MAAM,KAAK,GAAG,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC7D,IAAI,KAAK,IAAI,KAAK,KAAK,SAAS;wBAAE,OAAO,IAAI,CAAC;oBAC9C,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE;wBAAE,OAAO,IAAI,CAAC;oBACvE,SAAS;gBACX,CAAC;gBACD,IAAI,OAAO,KAAK,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC;oBAAE,OAAO,IAAI,CAAC;YACvF,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,MAAM,CAAC;YACP,mEAAmE;YACnE,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,GAAmB;QAC9C,IAAI,CAAC;YACH,oCAAoC;YACpC,IAAI,CAAC,gBAAgB,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;YAC5F,IAAI,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;YACzF,MAAM,MAAM,GACV,IAAI,CAAC,UAAU;gBACf,sEAAsE;gBACtE,qEAAqE;gBACrE,yCAAyC;gBACxC,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,WAAW,CAAC,EAAuE,CAAC;YAC7H,MAAM,MAAM,GAAG,GAAG,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;YACjI,yEAAyE;YACzE,wEAAwE;YACxE,oEAAoE;YACpE,uEAAuE;YACvE,kEAAkE;YAClE,yEAAyE;YACzE,0DAA0D;YAC1D,MAAM,UAAU,GAAG,GAAG,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;YACtD,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;YAC9D,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;YACrF,wEAAwE;YACxE,wEAAwE;YACxE,8DAA8D;YAC9D,MAAM,aAAa,GAAG,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAClE,MAAM,YAAY,GAAG,mBAAmB,CAAC,GAAG,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;YAClE,wEAAwE;YACxE,uDAAuD;YACvD,wEAAwE;YACxE,iDAAiD;YACjD,MAAM,MAAM,GAAG;gBACb,YAAY,MAAM,0OAA0O;gBAC5P,EAAE;gBACF,6DAA6D;gBAC7D,6IAA6I;gBAC7I,qGAAqG;gBACrG,4IAA4I;gBAC5I,qHAAqH;gBACrH,uIAAuI;gBACvI,EAAE;gBACF,GAAG,CAAC,IAAI;aACT,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACb,sEAAsE;YACtE,kEAAkE;YAClE,wEAAwE;YACxE,qEAAqE;YACrE,MAAM,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,EAAE,mBAAmB,CAAC,CAAC;YAChG,uEAAuE;YACvE,sEAAsE;YACtE,sEAAsE;YACtE,2DAA2D;YAC3D,sEAAsE;YACtE,wEAAwE;YACxE,+CAA+C;YAC/C,oEAAoE;YACpE,0EAA0E;YAC1E,mEAAmE;YACnE,yEAAyE;YACzE,yEAAyE;YACzE,kEAAkE;YAClE,MAAM,cAAc,GAAI,IAAI,CAAC,aAAa,CAAC,MAAM,EAAmC,CAAC,eAAe,CAAC;YACrG,MAAM,OAAO,GAAG,CAAC,cAAc,IAAI,cAAc,KAAK,MAAM,CAAC;YAC7D,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,GAClD,IAAI,CAAC,aAAa,CAAC,iBAAiB,EAAE,CAAC;YACzC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE;gBAC7C,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY;gBACzC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK;gBAC9C,OAAO;gBACP,mEAAmE;gBACnE,8DAA8D;gBAC9D,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/C,oEAAoE;gBACpE,0EAA0E;gBAC1E,OAAO,EAAE;oBACP,IAAI,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC;oBAC/C,SAAS,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;wBAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;wBAC3C,IAAI,CAAC,GAAG;4BAAE,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;wBACxC,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;oBACzC,CAAC;oBACD,MAAM,EAAE,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE;oBAC5D,gBAAgB,EAAE,CAAC,KAAK,EAAE,EAAE;wBAC1B,MAAM,GAAG,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC;wBACjE,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;oBACzC,CAAC;oBACD,SAAS,EAAE,IAAI,CAAC,SAAS;iBAC1B;gBACD,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE;oBACnC,MAAM,IAAI,GAAI,OAAoC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACpG,MAAM,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,EAAE,MAAM,QAAQ,KAAK,IAAI,EAAE,CAAC,CAAC;oBACtG,OAAO,EAAE,MAAM,EAAG,OAAoC,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;gBACzF,CAAC;gBACD,qEAAqE;gBACrE,sEAAsE;gBACtE,+DAA+D;gBAC/D,2DAA2D;aAC5D,CAAC,CAAC;YACH,uEAAuE;YACvE,uEAAuE;YACvE,uEAAuE;YACvE,2DAA2D;YAC3D,2EAA2E;YAC3E,uEAAuE;YACvE,+BAA+B;YAC/B,IAAI,OAAO,GAAG,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;iBACjC,OAAO,CAAC,wDAAwD,EAAE,EAAE,CAAC;iBACrE,OAAO,CAAC,0DAA0D,EAAE,EAAE,CAAC;iBACvE,IAAI,EAAE,CAAC;YACV,yEAAyE;YACzE,mEAAmE;YACnE,oEAAoE;YACpE,gDAAgD;YAChD,OAAO,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;YACzC,+DAA+D;YAC/D,wEAAwE;YACxE,wEAAwE;YACxE,oEAAoE;YACpE,mEAAmE;YACnE,oEAAoE;YACpE,uEAAuE;YACvE,IAAI,iCAAiC,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC/C,MAAM,CAAC,IAAI,CAAC,kDAAkD,OAAO,CAAC,MAAM,SAAS,CAAC,CAAC;gBACvF,OAAO,GAAG,sLAAsL,CAAC;YACnM,CAAC;YACD,uEAAuE;YACvE,oEAAoE;YACpE,MAAM,UAAU,GAAG,kBAAkB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACxD,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;YACxD,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YAC7C,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpB,MAAM,MAAM,GAAG,kBAAkB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnF,qEAAqE;gBACrE,sEAAsE;gBACtE,WAAW;gBACX,IAAI,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,IAAI;oBAAE,OAAO,IAAI,MAAM,CAAC;YAChE,CAAC;YACD,oEAAoE;YACpE,mEAAmE;YACnE,yEAAyE;YACzE,kEAAkE;YAClE,iCAAiC;YACjC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;YACjD,IAAI,CAAC,gBAAgB,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;YAC7F,IAAI,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;YAC1F,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,EAAE,CAAC;QAChE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,iCAAiC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAClG,IAAI,CAAC,gBAAgB,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;YAC7F,IAAI,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;YAC1F,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;QACjD,CAAC;IACH,CAAC;IAED,0FAA0F;IAClF,SAAS,CAAC,GAAe;QAC/B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAC9E,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;IAC5E,CAAC;IAED,6EAA6E;IAE7E,wEAAwE;IACxE,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO;QACzB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,sDAAsD;QACtD,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QAEvB,MAAM,SAAS,GAAG,KAAK,EAAE,GAAmB,EAAiB,EAAE;YAC7D,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;YAChC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,mEAAmE;gBACnE,sEAAsE;gBACtE,2DAA2D;gBAC3D,MAAM,CAAC,KAAK,CAAC,qBAAqB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACtF,MAAM,IAAI,CAAC,SAAS,CAClB,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,EACpD,MAAM,2BAA2B,CAAC,GAAG,CAAC,EAAE,CACzC,CAAC;YACJ,CAAC;QACH,CAAC,CAAC;QAEF,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YAC7C,IAAI,CAAC,OAAO,CAAC,UAAU;gBAAE,SAAS;YAClC,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QAC9C,CAAC;QAED,2EAA2E;QAC3E,yEAAyE;QACzE,wEAAwE;QACxE,IAAI,CAAC,aAAa,EAAE,CAAC;QAErB,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;YAC9B,IAAI,CAAC,WAAW,GAAG,WAAW,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE;gBAClD,IAAI,CAAC,IAAI,CAAC,aAAa;oBAAE,OAAO;gBAChC,MAAM,IAAI,GAAG,iBAAiB,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;gBAC1D,IAAI,IAAI;oBAAE,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;YAC1D,CAAC,CAAC,CAAC;QACL,CAAC;QAED,qEAAqE;QACrE,mCAAmC;QACnC,IAAI,CAAC,aAAa,GAAG,WAAW,CAAC,GAAG,EAAE;YACpC,KAAK,IAAI,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACnD,CAAC,EAAE,0BAA0B,CAAC,CAAC;IACjC,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,mBAAmB,CAAC,QAAgB,EAAE,SAAiB,EAAE,UAAmB;QACxF,IAAI,CAAC;YACH,MAAM,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAAC,wBAAwB,CAAC,CAAC;YAC7F,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,wBAAwB,CAAC,CAAC;YAC7E,MAAM,QAAQ,GAAG,mBAAmB,EAAE,CAAC;YACvC,IAAI,OAAO,GAAG,KAAK,CAAC;YAEpB,4DAA4D;YAC5D,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;gBACzB,IAAI,CAAC,CAAC,QAAQ,KAAK,UAAU,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,SAAS,EAAE,CAAC;oBACnF,oBAAoB,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,UAAU,EAAE,CAAC,CAAC;oBAC9E,MAAM,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,EAAE,MAAM,SAAS,EAAE,CAAC,CAAC;oBAC5F,OAAO,GAAG,IAAI,CAAC;gBACjB,CAAC;YACH,CAAC;YAED,0DAA0D;YAC1D,MAAM,eAAe,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,IAAI,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;YAC9F,IAAI,CAAC,eAAe,EAAE,CAAC;gBACrB,MAAM,IAAI,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,iBAAiB,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjF,oBAAoB,CAAC;oBACnB,IAAI;oBACJ,QAAQ,EAAE,UAAU;oBACpB,EAAE,EAAE,SAAS;oBACb,MAAM,EAAE,SAAS;oBACjB,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE;iBACzB,CAAC,CAAC;gBACH,MAAM,CAAC,IAAI,CAAC,8CAA8C,IAAI,UAAU,SAAS,4BAA4B,CAAC,CAAC;gBAC/G,OAAO,GAAG,IAAI,CAAC;YACjB,CAAC;YAED,2DAA2D;YAC3D,MAAM,OAAO,GAAG,WAAW,EAAE,CAAC;YAC9B,IAAI,YAAY,GAAG,KAAK,CAAC;YACzB,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;gBACxB,IAAI,CAAC,CAAC,QAAQ,KAAK,UAAU,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;oBACjG,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC;oBACxB,YAAY,GAAG,IAAI,CAAC;oBACpB,MAAM,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,SAAS,MAAM,SAAS,EAAE,CAAC,CAAC;gBAC9G,CAAC;YACH,CAAC;YACD,IAAI,YAAY;gBAAE,YAAY,CAAC,OAAO,CAAC,CAAC;YAExC,IAAI,OAAO,IAAI,YAAY,EAAE,CAAC;gBAC5B,MAAM,CAAC,IAAI,CAAC,4DAA4D,SAAS,EAAE,CAAC,CAAC;YACvF,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,4CAA4C;QAC9C,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,YAAY,CAAC,OAAuB,EAAE,SAAiD;QACnG,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACvD,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAC/B,MAAM,CAAC,IAAI,CAAC,YAAY,OAAO,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;YACtD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE;gBACvC,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,UAAU,EAAE,IAAI;gBAChB,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,KAAK,EAAE,QAAQ,IAAI,CAAC;aAC/B,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,MAAM,CAAC,KAAK,CAAC,4BAA4B,OAAO,CAAC,QAAQ,EAAE,KAAK,OAAO,EAAE,CAAC,CAAC;YAC3E,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE;gBACvC,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,UAAU,EAAE,IAAI;gBAChB,OAAO,EAAE,KAAK;gBACd,QAAQ,EAAE,KAAK,EAAE,QAAQ,IAAI,CAAC;gBAC9B,SAAS,EAAE,OAAO;aACnB,CAAC,CAAC;YACH,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAED,8EAA8E;IACtE,MAAM,CAAU,oBAAoB,GAAG,CAAC,CAAC;IAEjD,wEAAwE;IAChE,oBAAoB,CAAC,QAAkB,EAAE,QAAgB;QAC/D,IAAI,QAAQ,IAAI,eAAe,CAAC,oBAAoB,EAAE,CAAC;YACrD,MAAM,CAAC,KAAK,CAAC,YAAY,QAAQ,kBAAkB,QAAQ,mDAAmD,CAAC,CAAC;YAChH,OAAO;QACT,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,IAAI,QAAQ,EAAE,OAAO,CAAC,CAAC;QACvD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC;IACxD,CAAC;IAED;;;OAGG;IACK,aAAa;QACnB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC5B,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QACnB,MAAM,IAAI,GAAG,KAAK,IAAmB,EAAE;YACrC,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAClC,IAAI,CAAC,SAAS,IAAI,CAAC,CAAC;YACpB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;gBAClB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,KAAK,EAAE,IAAI,CAAC,SAAS;gBACrB,UAAU,EAAE,OAAO,CAAC,oBAAoB,CAAC,KAAK,GAAG;gBACjD,aAAa,EAAE,OAAO,CAAC,IAAI,IAAI,SAAS;gBACxC,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;aAC3C,CAAC,CAAC;QACL,CAAC,CAAC;QACF,2EAA2E;QAC3E,8DAA8D;QAC9D,KAAK,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACnC,IAAI,CAAC,aAAa,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,EAAE,qBAAqB,CAAC,CAAC;IACpG,CAAC;IAED,oEAAoE;IAC5D,KAAK,CAAC,oBAAoB;QAChC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YAC7C,IAAI,CAAC,OAAO,CAAC,UAAU;gBAAE,SAAS;YAClC,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACxD,IAAI,MAAM,EAAE,OAAO;gBAAE,SAAS;YAC9B,MAAM,QAAQ,GAAG,MAAM,EAAE,QAAQ,IAAI,CAAC,CAAC;YACvC,IAAI,QAAQ,IAAI,eAAe,CAAC,oBAAoB;gBAAE,SAAS;YAC/D,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC3D,IAAI,GAAG,GAAG,GAAG;gBAAE,SAAS;YACxB,MAAM,CAAC,IAAI,CAAC,qBAAqB,OAAO,CAAC,QAAQ,aAAa,QAAQ,GAAG,CAAC,GAAG,CAAC,CAAC;YAC/E,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE;gBACvC,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,UAAU,EAAE,IAAI;gBAChB,OAAO,EAAE,KAAK;gBACd,QAAQ,EAAE,QAAQ,GAAG,CAAC;gBACtB,SAAS,EAAE,MAAM,EAAE,SAAS;aAC7B,CAAC,CAAC;YACH,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC7C,MAAM,SAAS,GAAG,KAAK,EAAE,GAAmB,EAAiB,EAAE;gBAC7D,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;gBAChC,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,MAAM,CAAC,KAAK,CAAC,qBAAqB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBACtF,MAAM,IAAI,CAAC,SAAS,CAClB,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,EACpD,MAAM,2BAA2B,CAAC,GAAG,CAAC,EAAE,CACzC,CAAC;gBACJ,CAAC;YACH,CAAC,CAAC;YACF,oEAAoE;YACpE,mEAAmE;YACnE,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;IAED,yEAAyE;IACzE,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO;QAC1B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;QACrB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAClC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC5B,CAAC;QACD,4EAA4E;QAC5E,2DAA2D;QAC3D,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QACvB,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAClC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC5B,CAAC;QACD,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YAC7C,IAAI,CAAC;gBAAC,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC"}
|
|
@@ -23,6 +23,16 @@
|
|
|
23
23
|
* so `send("Alex", …)` resolves the contact by name.
|
|
24
24
|
*/
|
|
25
25
|
import { type WhatsAppBridge } from './bridge.js';
|
|
26
|
+
/**
|
|
27
|
+
* How old an OFFLINE-BACKFILL message may be and still be handled (ms).
|
|
28
|
+
*
|
|
29
|
+
* WhatsApp re-delivers history after every (re)connect. Anything genuinely new
|
|
30
|
+
* — sent while the gateway was briefly offline — is seconds/minutes old and is
|
|
31
|
+
* handled; anything older was already answered (or is stale), and re-running it
|
|
32
|
+
* is what produced the observed reply storms. Override with
|
|
33
|
+
* `BUFF_GATEWAY_BACKFILL_MAX_AGE_MS` (0 = never accept backfill at all).
|
|
34
|
+
*/
|
|
35
|
+
export declare const BACKFILL_MAX_AGE_MS: number;
|
|
26
36
|
/** Read persisted LID→PN pairs (missing/corrupt file → [] — never throws). */
|
|
27
37
|
export declare function readLidMappingsFile(sessionDir: string): Array<{
|
|
28
38
|
lid: string;
|
|
@@ -177,7 +187,7 @@ export declare class BaileysBridge implements WhatsAppBridge {
|
|
|
177
187
|
* CLI send resolves names only after that sync arrives.
|
|
178
188
|
*/
|
|
179
189
|
private resolveContactJid;
|
|
180
|
-
connect(onMessage: (fromJid: string, text: string) => void): Promise<void>;
|
|
190
|
+
connect(onMessage: (fromJid: string, text: string, participant?: string, messageId?: string) => void): Promise<void>;
|
|
181
191
|
disconnect(): Promise<void>;
|
|
182
192
|
/**
|
|
183
193
|
* Recreate a dead socket while connected, with exponential backoff. Polls
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"baileys-bridge.d.ts","sourceRoot":"","sources":["../../../src/gateway/whatsapp/baileys-bridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAKH,OAAO,EAAwB,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"baileys-bridge.d.ts","sourceRoot":"","sources":["../../../src/gateway/whatsapp/baileys-bridge.ts"],"names":[],"mappings":"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"}
|