@animalabs/agent-framework 0.22.0 → 0.22.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +12 -5
- package/dist/src/agent.d.ts +192 -19
- package/dist/src/agent.d.ts.map +1 -1
- package/dist/src/agent.js +407 -66
- package/dist/src/agent.js.map +1 -1
- package/dist/src/api/mcp-server-core.d.ts +41 -0
- package/dist/src/api/mcp-server-core.d.ts.map +1 -0
- package/dist/src/api/mcp-server-core.js +593 -0
- package/dist/src/api/mcp-server-core.js.map +1 -0
- package/dist/src/api/mcp-server.d.ts +2 -36
- package/dist/src/api/mcp-server.d.ts.map +1 -1
- package/dist/src/api/mcp-server.js +15 -595
- package/dist/src/api/mcp-server.js.map +1 -1
- package/dist/src/api/server.d.ts +9 -1
- package/dist/src/api/server.d.ts.map +1 -1
- package/dist/src/api/server.js +84 -23
- package/dist/src/api/server.js.map +1 -1
- package/dist/src/api/types.d.ts +9 -1
- package/dist/src/api/types.d.ts.map +1 -1
- package/dist/src/code-execution/py-runner.d.ts.map +1 -1
- package/dist/src/code-execution/py-runner.js.map +1 -1
- package/dist/src/framework.d.ts +682 -103
- package/dist/src/framework.d.ts.map +1 -1
- package/dist/src/framework.js +3202 -718
- package/dist/src/framework.js.map +1 -1
- package/dist/src/gate/event-gate.d.ts.map +1 -1
- package/dist/src/gate/gate-script.d.ts.map +1 -1
- package/dist/src/gate/gate-script.js.map +1 -1
- package/dist/src/index.d.ts +4 -4
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +2 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/mcpl/capability-grant.d.ts.map +1 -1
- package/dist/src/mcpl/channel-registry.d.ts +26 -7
- package/dist/src/mcpl/channel-registry.d.ts.map +1 -1
- package/dist/src/mcpl/channel-registry.js +102 -22
- package/dist/src/mcpl/channel-registry.js.map +1 -1
- package/dist/src/mcpl/checkpoint-manager.d.ts.map +1 -1
- package/dist/src/mcpl/checkpoint-manager.js.map +1 -1
- package/dist/src/mcpl/conversation-router.d.ts.map +1 -1
- package/dist/src/mcpl/errors.js.map +1 -1
- package/dist/src/mcpl/feature-set-manager.d.ts.map +1 -1
- package/dist/src/mcpl/feature-set-manager.js +4 -3
- package/dist/src/mcpl/feature-set-manager.js.map +1 -1
- package/dist/src/mcpl/hook-orchestrator.d.ts.map +1 -1
- package/dist/src/mcpl/index.d.ts +2 -0
- package/dist/src/mcpl/index.d.ts.map +1 -1
- package/dist/src/mcpl/index.js.map +1 -1
- package/dist/src/mcpl/inference-router.d.ts.map +1 -1
- package/dist/src/mcpl/log-value.d.ts +54 -0
- package/dist/src/mcpl/log-value.d.ts.map +1 -0
- package/dist/src/mcpl/log-value.js +109 -0
- package/dist/src/mcpl/log-value.js.map +1 -0
- package/dist/src/mcpl/prose-stream-router.d.ts +6 -6
- package/dist/src/mcpl/prose-stream-router.d.ts.map +1 -1
- package/dist/src/mcpl/prose-stream-router.js +4 -4
- package/dist/src/mcpl/prose-stream-router.js.map +1 -1
- package/dist/src/mcpl/push-coalescer.d.ts +38 -3
- package/dist/src/mcpl/push-coalescer.d.ts.map +1 -1
- package/dist/src/mcpl/push-coalescer.js +81 -16
- package/dist/src/mcpl/push-coalescer.js.map +1 -1
- package/dist/src/mcpl/push-handler.d.ts +26 -3
- package/dist/src/mcpl/push-handler.d.ts.map +1 -1
- package/dist/src/mcpl/push-handler.js +87 -23
- package/dist/src/mcpl/push-handler.js.map +1 -1
- package/dist/src/mcpl/reference-fetcher.d.ts +2 -1
- package/dist/src/mcpl/reference-fetcher.d.ts.map +1 -1
- package/dist/src/mcpl/reference-fetcher.js +20 -9
- package/dist/src/mcpl/reference-fetcher.js.map +1 -1
- package/dist/src/mcpl/references.d.ts +29 -6
- package/dist/src/mcpl/references.d.ts.map +1 -1
- package/dist/src/mcpl/references.js +57 -16
- package/dist/src/mcpl/references.js.map +1 -1
- package/dist/src/mcpl/refusal-lines.d.ts +37 -0
- package/dist/src/mcpl/refusal-lines.d.ts.map +1 -0
- package/dist/src/mcpl/refusal-lines.js +61 -0
- package/dist/src/mcpl/refusal-lines.js.map +1 -0
- package/dist/src/mcpl/scope-manager.d.ts.map +1 -1
- package/dist/src/mcpl/server-connection.d.ts +46 -3
- package/dist/src/mcpl/server-connection.d.ts.map +1 -1
- package/dist/src/mcpl/server-connection.js +98 -15
- package/dist/src/mcpl/server-connection.js.map +1 -1
- package/dist/src/mcpl/server-registry.d.ts.map +1 -1
- package/dist/src/mcpl/tool-classes.d.ts +1 -1
- package/dist/src/mcpl/tool-classes.d.ts.map +1 -1
- package/dist/src/mcpl/tool-classes.js +3 -2
- package/dist/src/mcpl/tool-classes.js.map +1 -1
- package/dist/src/mcpl/tool-lifecycle.d.ts.map +1 -1
- package/dist/src/mcpl/tool-lifecycle.js.map +1 -1
- package/dist/src/mcpl/transport.d.ts +23 -5
- package/dist/src/mcpl/transport.d.ts.map +1 -1
- package/dist/src/mcpl/transport.js +103 -10
- package/dist/src/mcpl/transport.js.map +1 -1
- package/dist/src/mcpl/types.d.ts +30 -26
- package/dist/src/mcpl/types.d.ts.map +1 -1
- package/dist/src/mcpl/types.js.map +1 -1
- package/dist/src/module-registry.d.ts +9 -3
- package/dist/src/module-registry.d.ts.map +1 -1
- package/dist/src/module-registry.js +3 -2
- package/dist/src/module-registry.js.map +1 -1
- package/dist/src/modules/api/index.d.ts.map +1 -1
- package/dist/src/modules/discord/discord-js-client.d.ts.map +1 -1
- package/dist/src/modules/discord/discord-js-client.js.map +1 -1
- package/dist/src/modules/discord/index.d.ts.map +1 -1
- package/dist/src/modules/discord/index.js +4 -2
- package/dist/src/modules/discord/index.js.map +1 -1
- package/dist/src/modules/health/index.d.ts.map +1 -1
- package/dist/src/modules/health/index.js.map +1 -1
- package/dist/src/modules/history/index.d.ts.map +1 -1
- package/dist/src/modules/history/index.js.map +1 -1
- package/dist/src/modules/history/semantic.d.ts.map +1 -1
- package/dist/src/modules/history/semantic.js.map +1 -1
- package/dist/src/modules/workspace/branch-intent.d.ts.map +1 -1
- package/dist/src/modules/workspace/branch-intent.js.map +1 -1
- package/dist/src/modules/workspace/disk-agreement.d.ts +22 -4
- package/dist/src/modules/workspace/disk-agreement.d.ts.map +1 -1
- package/dist/src/modules/workspace/disk-agreement.js +63 -25
- package/dist/src/modules/workspace/disk-agreement.js.map +1 -1
- package/dist/src/modules/workspace/effects.d.ts.map +1 -1
- package/dist/src/modules/workspace/index.d.ts +8 -4
- package/dist/src/modules/workspace/index.d.ts.map +1 -1
- package/dist/src/modules/workspace/index.js +85 -16
- package/dist/src/modules/workspace/index.js.map +1 -1
- package/dist/src/modules/workspace/observe.d.ts +56 -11
- package/dist/src/modules/workspace/observe.d.ts.map +1 -1
- package/dist/src/modules/workspace/observe.js +288 -43
- package/dist/src/modules/workspace/observe.js.map +1 -1
- package/dist/src/modules/workspace/reconcile.d.ts +31 -1
- package/dist/src/modules/workspace/reconcile.d.ts.map +1 -1
- package/dist/src/modules/workspace/reconcile.js +63 -12
- package/dist/src/modules/workspace/reconcile.js.map +1 -1
- package/dist/src/modules/workspace/types.d.ts +27 -2
- package/dist/src/modules/workspace/types.d.ts.map +1 -1
- package/dist/src/modules/workspace/types.js.map +1 -1
- package/dist/src/modules/workspace/watcher.d.ts.map +1 -1
- package/dist/src/modules/workspace/watcher.js.map +1 -1
- package/dist/src/operator-log.d.ts +41 -0
- package/dist/src/operator-log.d.ts.map +1 -1
- package/dist/src/operator-log.js.map +1 -1
- package/dist/src/provider-waits.d.ts +216 -0
- package/dist/src/provider-waits.d.ts.map +1 -0
- package/dist/src/provider-waits.js +482 -0
- package/dist/src/provider-waits.js.map +1 -0
- package/dist/src/queue.d.ts.map +1 -1
- package/dist/src/record-journal.d.ts.map +1 -1
- package/dist/src/record-journal.js.map +1 -1
- package/dist/src/recovery/discord-awareness-outbox.d.ts.map +1 -1
- package/dist/src/recovery/discord-awareness-outbox.js.map +1 -1
- package/dist/src/recovery/offline-branch.d.ts.map +1 -1
- package/dist/src/recovery/offline-branch.js +29 -24
- package/dist/src/recovery/offline-branch.js.map +1 -1
- package/dist/src/recovery/recover-cli.js.map +1 -1
- package/dist/src/refusal-reactions.d.ts +14 -12
- package/dist/src/refusal-reactions.d.ts.map +1 -1
- package/dist/src/refusal-reactions.js +14 -12
- package/dist/src/refusal-reactions.js.map +1 -1
- package/dist/src/runtime/liveness-watchdog.d.ts.map +1 -1
- package/dist/src/runtime/liveness-watchdog.js.map +1 -1
- package/dist/src/shutdown.d.ts.map +1 -1
- package/dist/src/shutdown.js.map +1 -1
- package/dist/src/stored-removal.d.ts +73 -0
- package/dist/src/stored-removal.d.ts.map +1 -0
- package/dist/src/stored-removal.js +100 -0
- package/dist/src/stored-removal.js.map +1 -0
- package/dist/src/thinking-token-stamp.js.map +1 -1
- package/dist/src/tool-image-ledger.d.ts.map +1 -1
- package/dist/src/tool-image-ledger.js.map +1 -1
- package/dist/src/tool-presentation.d.ts.map +1 -1
- package/dist/src/tool-presentation.js.map +1 -1
- package/dist/src/tool-result-guard.d.ts +30 -13
- package/dist/src/tool-result-guard.d.ts.map +1 -1
- package/dist/src/tool-result-guard.js +71 -25
- package/dist/src/tool-result-guard.js.map +1 -1
- package/dist/src/tune-out/coordinator.d.ts.map +1 -1
- package/dist/src/tune-out/coordinator.js.map +1 -1
- package/dist/src/tune-out/tools.d.ts +1 -1
- package/dist/src/tune-out/tools.d.ts.map +1 -1
- package/dist/src/types/agent.d.ts +42 -6
- package/dist/src/types/agent.d.ts.map +1 -1
- package/dist/src/types/events.d.ts +12 -0
- package/dist/src/types/events.d.ts.map +1 -1
- package/dist/src/types/framework.d.ts +10 -0
- package/dist/src/types/framework.d.ts.map +1 -1
- package/dist/src/types/module.d.ts +20 -8
- package/dist/src/types/module.d.ts.map +1 -1
- package/dist/src/types/trace.d.ts +75 -13
- package/dist/src/types/trace.d.ts.map +1 -1
- package/dist/src/usage/usage-tracker.d.ts.map +1 -1
- package/dist/test/agent-runtime-settings.test.js +1139 -3
- package/dist/test/agent-runtime-settings.test.js.map +1 -1
- package/dist/test/batched-wake-locus.test.js.map +1 -1
- package/dist/test/channel-label-history.test.js.map +1 -1
- package/dist/test/code-execution.test.js.map +1 -1
- package/dist/test/conversation-fork-injection-scoping.test.js.map +1 -1
- package/dist/test/conversation-router.test.js.map +1 -1
- package/dist/test/conversation-routing.test.js +240 -6
- package/dist/test/conversation-routing.test.js.map +1 -1
- package/dist/test/discord-awareness-outbox.test.js +107 -0
- package/dist/test/discord-awareness-outbox.test.js.map +1 -1
- package/dist/test/discord-typing-keepalive.test.d.ts +2 -0
- package/dist/test/discord-typing-keepalive.test.d.ts.map +1 -0
- package/dist/test/discord-typing-keepalive.test.js +77 -0
- package/dist/test/discord-typing-keepalive.test.js.map +1 -0
- package/dist/test/ephemeral-settle.test.js.map +1 -1
- package/dist/test/event-gate-passthrough.test.js.map +1 -1
- package/dist/test/event-gate-policy-mutation.test.js.map +1 -1
- package/dist/test/event-gate-rate-limit.test.js.map +1 -1
- package/dist/test/event-gate-script.test.js.map +1 -1
- package/dist/test/event-gate-selfwake.test.js.map +1 -1
- package/dist/test/event-gate-tags.test.js.map +1 -1
- package/dist/test/event-gate.test.js.map +1 -1
- package/dist/test/explicit-prose-routing.test.js +363 -44
- package/dist/test/explicit-prose-routing.test.js.map +1 -1
- package/dist/test/framework.test.js +160 -1
- package/dist/test/framework.test.js.map +1 -1
- package/dist/test/helpers/coalescing-fixture.d.ts +2 -0
- package/dist/test/helpers/coalescing-fixture.d.ts.map +1 -1
- package/dist/test/helpers/coalescing-fixture.js +11 -4
- package/dist/test/helpers/coalescing-fixture.js.map +1 -1
- package/dist/test/helpers/mock-membrane.d.ts.map +1 -1
- package/dist/test/helpers/mock-membrane.js.map +1 -1
- package/dist/test/hide-then-turn.test.d.ts +2 -0
- package/dist/test/hide-then-turn.test.d.ts.map +1 -0
- package/dist/test/hide-then-turn.test.js +101 -0
- package/dist/test/hide-then-turn.test.js.map +1 -0
- package/dist/test/history-module-overview.test.js.map +1 -1
- package/dist/test/history-module-semantic.test.js.map +1 -1
- package/dist/test/history-module.test.js.map +1 -1
- package/dist/test/history-semantic-review-findings.test.js.map +1 -1
- package/dist/test/host-quiesce.test.js +125 -0
- package/dist/test/host-quiesce.test.js.map +1 -1
- package/dist/test/inference-exhaustion-rewind.test.js +220 -14
- package/dist/test/inference-exhaustion-rewind.test.js.map +1 -1
- package/dist/test/inference-failure-bounds.test.d.ts +2 -0
- package/dist/test/inference-failure-bounds.test.d.ts.map +1 -0
- package/dist/test/inference-failure-bounds.test.js +1202 -0
- package/dist/test/inference-failure-bounds.test.js.map +1 -0
- package/dist/test/kv-unified-open-flight-retry.test.js.map +1 -1
- package/dist/test/late-events-after-stop.test.d.ts +2 -0
- package/dist/test/late-events-after-stop.test.d.ts.map +1 -0
- package/dist/test/late-events-after-stop.test.js +122 -0
- package/dist/test/late-events-after-stop.test.js.map +1 -0
- package/dist/test/liveness-watchdog.test.js.map +1 -1
- package/dist/test/maintenance-timer.test.js +1564 -2
- package/dist/test/maintenance-timer.test.js.map +1 -1
- package/dist/test/mcp-server-bin.test.d.ts +2 -0
- package/dist/test/mcp-server-bin.test.d.ts.map +1 -0
- package/dist/test/mcp-server-bin.test.js +142 -0
- package/dist/test/mcp-server-bin.test.js.map +1 -0
- package/dist/test/mcpl-awareness-barrier.test.js +141 -0
- package/dist/test/mcpl-awareness-barrier.test.js.map +1 -1
- package/dist/test/mcpl-child-env.test.js +1 -1
- package/dist/test/mcpl-child-env.test.js.map +1 -1
- package/dist/test/mcpl-coalesced-content-parity.test.d.ts +2 -0
- package/dist/test/mcpl-coalesced-content-parity.test.d.ts.map +1 -0
- package/dist/test/mcpl-coalesced-content-parity.test.js +532 -0
- package/dist/test/mcpl-coalesced-content-parity.test.js.map +1 -0
- package/dist/test/mcpl-coalescing.test.js +78 -16
- package/dist/test/mcpl-coalescing.test.js.map +1 -1
- package/dist/test/mcpl-config-diagnostics.test.js +6 -3
- package/dist/test/mcpl-config-diagnostics.test.js.map +1 -1
- package/dist/test/mcpl-gate-roundtrip.test.js.map +1 -1
- package/dist/test/mcpl-manifest-changed.test.js +2 -1
- package/dist/test/mcpl-manifest-changed.test.js.map +1 -1
- package/dist/test/mcpl-reconnect-events.test.js.map +1 -1
- package/dist/test/mcpl-reconnect-reregistration.test.js +2 -0
- package/dist/test/mcpl-reconnect-reregistration.test.js.map +1 -1
- package/dist/test/mcpl-reference-fetcher.test.js +232 -4
- package/dist/test/mcpl-reference-fetcher.test.js.map +1 -1
- package/dist/test/mcpl-reference-fields.test.js +69 -2
- package/dist/test/mcpl-reference-fields.test.js.map +1 -1
- package/dist/test/mcpl-rejection-log-lines.test.d.ts +2 -0
- package/dist/test/mcpl-rejection-log-lines.test.d.ts.map +1 -0
- package/dist/test/mcpl-rejection-log-lines.test.js +349 -0
- package/dist/test/mcpl-rejection-log-lines.test.js.map +1 -0
- package/dist/test/mcpl-stderr-tail.test.d.ts +2 -0
- package/dist/test/mcpl-stderr-tail.test.d.ts.map +1 -0
- package/dist/test/mcpl-stderr-tail.test.js +210 -0
- package/dist/test/mcpl-stderr-tail.test.js.map +1 -0
- package/dist/test/mcpl-tool-lifecycle-e2e.test.js.map +1 -1
- package/dist/test/mcpl-tool-lifecycle-emitter.test.js.map +1 -1
- package/dist/test/mcpl-tool-lifecycle-script.test.js.map +1 -1
- package/dist/test/mcpl-tool-lifecycle.test.js.map +1 -1
- package/dist/test/mcpl-transport-close.test.d.ts +2 -0
- package/dist/test/mcpl-transport-close.test.d.ts.map +1 -0
- package/dist/test/mcpl-transport-close.test.js +373 -0
- package/dist/test/mcpl-transport-close.test.js.map +1 -0
- package/dist/test/mcpl-transport-spawn.test.d.ts +2 -0
- package/dist/test/mcpl-transport-spawn.test.d.ts.map +1 -0
- package/dist/test/mcpl-transport-spawn.test.js +58 -0
- package/dist/test/mcpl-transport-spawn.test.js.map +1 -0
- package/dist/test/mcpl-ws-transport.test.js +104 -0
- package/dist/test/mcpl-ws-transport.test.js.map +1 -1
- package/dist/test/offline-recovery-branch.test.js +344 -0
- package/dist/test/offline-recovery-branch.test.js.map +1 -1
- package/dist/test/operator-surgery.test.js +197 -0
- package/dist/test/operator-surgery.test.js.map +1 -1
- package/dist/test/ops-alert.test.js +2 -1
- package/dist/test/ops-alert.test.js.map +1 -1
- package/dist/test/overbudget-drain-breaker.test.js +1 -0
- package/dist/test/overbudget-drain-breaker.test.js.map +1 -1
- package/dist/test/pack-installs-alone.test.d.ts +2 -0
- package/dist/test/pack-installs-alone.test.d.ts.map +1 -0
- package/dist/test/pack-installs-alone.test.js +284 -0
- package/dist/test/pack-installs-alone.test.js.map +1 -0
- package/dist/test/physical-window-restart.test.d.ts +6 -4
- package/dist/test/physical-window-restart.test.d.ts.map +1 -1
- package/dist/test/physical-window-restart.test.js +275 -10
- package/dist/test/physical-window-restart.test.js.map +1 -1
- package/dist/test/placed-reaction-baseline.test.d.ts +2 -0
- package/dist/test/placed-reaction-baseline.test.d.ts.map +1 -0
- package/dist/test/placed-reaction-baseline.test.js +312 -0
- package/dist/test/placed-reaction-baseline.test.js.map +1 -0
- package/dist/test/present-while-acting.test.js +949 -6
- package/dist/test/present-while-acting.test.js.map +1 -1
- package/dist/test/provider-acceleration-cooldown.test.js +5 -1
- package/dist/test/provider-acceleration-cooldown.test.js.map +1 -1
- package/dist/test/provider-waits.test.d.ts +2 -0
- package/dist/test/provider-waits.test.d.ts.map +1 -0
- package/dist/test/provider-waits.test.js +2259 -0
- package/dist/test/provider-waits.test.js.map +1 -0
- package/dist/test/puppet-tool-call.test.js +2 -0
- package/dist/test/puppet-tool-call.test.js.map +1 -1
- package/dist/test/reaction-baseline-platform.test.d.ts +2 -0
- package/dist/test/reaction-baseline-platform.test.d.ts.map +1 -0
- package/dist/test/reaction-baseline-platform.test.js +124 -0
- package/dist/test/reaction-baseline-platform.test.js.map +1 -0
- package/dist/test/record-journal.test.js.map +1 -1
- package/dist/test/refusal-reaction-baseline.test.js +10 -3
- package/dist/test/refusal-reaction-baseline.test.js.map +1 -1
- package/dist/test/refusal-rewind.test.js +9 -0
- package/dist/test/refusal-rewind.test.js.map +1 -1
- package/dist/test/refusal-single-call.test.js.map +1 -1
- package/dist/test/release-bump.test.d.ts +2 -0
- package/dist/test/release-bump.test.d.ts.map +1 -0
- package/dist/test/release-bump.test.js +248 -0
- package/dist/test/release-bump.test.js.map +1 -0
- package/dist/test/release-changelog.test.js.map +1 -1
- package/dist/test/release-holds.test.d.ts +2 -0
- package/dist/test/release-holds.test.d.ts.map +1 -0
- package/dist/test/release-holds.test.js +456 -0
- package/dist/test/release-holds.test.js.map +1 -0
- package/dist/test/same-round-think-policy.test.js.map +1 -1
- package/dist/test/save-recent-image.test.js +138 -2
- package/dist/test/save-recent-image.test.js.map +1 -1
- package/dist/test/shutdown-errors.test.js.map +1 -1
- package/dist/test/silent-heartbeat-rows.test.js.map +1 -1
- package/dist/test/stop-with-host-operations.test.d.ts +20 -0
- package/dist/test/stop-with-host-operations.test.d.ts.map +1 -0
- package/dist/test/stop-with-host-operations.test.js +1174 -0
- package/dist/test/stop-with-host-operations.test.js.map +1 -0
- package/dist/test/stop-with-work-in-flight.test.js +162 -50
- package/dist/test/stop-with-work-in-flight.test.js.map +1 -1
- package/dist/test/surgery-marks-receipt.test.d.ts +2 -0
- package/dist/test/surgery-marks-receipt.test.d.ts.map +1 -0
- package/dist/test/surgery-marks-receipt.test.js +540 -0
- package/dist/test/surgery-marks-receipt.test.js.map +1 -0
- package/dist/test/tool-batch-hook.test.js.map +1 -1
- package/dist/test/tool-result-guard.test.js +352 -16
- package/dist/test/tool-result-guard.test.js.map +1 -1
- package/dist/test/tool-result-spill.test.js.map +1 -1
- package/dist/test/tool-wrapper-prose-guard-integration.test.js.map +1 -1
- package/dist/test/trunk-channel-routing.test.js +330 -7
- package/dist/test/trunk-channel-routing.test.js.map +1 -1
- package/dist/test/tune-out-e2e.test.js.map +1 -1
- package/dist/test/unconvertible-tool-result.test.js.map +1 -1
- package/dist/test/unsent-compiles.test.d.ts +2 -0
- package/dist/test/unsent-compiles.test.d.ts.map +1 -0
- package/dist/test/unsent-compiles.test.js +139 -0
- package/dist/test/unsent-compiles.test.js.map +1 -0
- package/dist/test/workspace-branch-continuation.test.js.map +1 -1
- package/dist/test/workspace-materialize-freshness.test.js.map +1 -1
- package/dist/test/workspace-read-text.test.js.map +1 -1
- package/dist/test/workspace-three-way.test.js +1022 -7
- package/dist/test/workspace-three-way.test.js.map +1 -1
- package/dist/test/workspace-watcher.test.js.map +1 -1
- package/dist/test/xml-round-persist.test.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +8 -6
- package/src/agent.ts +415 -67
- package/src/api/mcp-server-core.ts +681 -0
- package/src/api/mcp-server.ts +16 -685
- package/src/api/server.ts +87 -26
- package/src/api/types.ts +9 -1
- package/src/framework.ts +3389 -782
- package/src/index.ts +9 -4
- package/src/mcpl/channel-registry.ts +126 -31
- package/src/mcpl/feature-set-manager.ts +4 -3
- package/src/mcpl/index.ts +2 -0
- package/src/mcpl/log-value.ts +116 -0
- package/src/mcpl/prose-stream-router.ts +6 -6
- package/src/mcpl/push-coalescer.ts +76 -12
- package/src/mcpl/push-handler.ts +95 -23
- package/src/mcpl/reference-fetcher.ts +18 -8
- package/src/mcpl/references.ts +57 -13
- package/src/mcpl/refusal-lines.ts +59 -0
- package/src/mcpl/server-connection.ts +125 -15
- package/src/mcpl/tool-classes.ts +3 -2
- package/src/mcpl/transport.ts +105 -14
- package/src/mcpl/types.ts +5 -1
- package/src/module-registry.ts +17 -9
- package/src/modules/discord/index.ts +4 -2
- package/src/modules/workspace/disk-agreement.ts +74 -18
- package/src/modules/workspace/index.ts +85 -15
- package/src/modules/workspace/observe.ts +295 -43
- package/src/modules/workspace/reconcile.ts +90 -12
- package/src/modules/workspace/types.ts +26 -1
- package/src/operator-log.ts +30 -0
- package/src/provider-waits.ts +523 -0
- package/src/recovery/offline-branch.ts +32 -28
- package/src/refusal-reactions.ts +14 -12
- package/src/stored-removal.ts +126 -0
- package/src/tool-result-guard.ts +72 -24
- package/src/types/agent.ts +42 -6
- package/src/types/events.ts +12 -0
- package/src/types/framework.ts +10 -0
- package/src/types/module.ts +20 -8
- package/src/types/trace.ts +76 -14
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"same-round-think-policy.test.js","sourceRoot":"","sources":["../../test/same-round-think-policy.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"same-round-think-policy.test.js","sourceRoot":"","sources":["../../test/same-round-think-policy.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAWjC,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AASlG,MAAM,gBAAgB,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AACxC,MAAM,gBAAgB,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAE1C,MAAM,eAAe;IACV,IAAI,GAAG,OAAO,CAAC;IAExB,KAAK,CAAC,KAAK,CAAC,IAAmB,IAAkB,CAAC;IAClD,KAAK,CAAC,IAAI,KAAmB,CAAC;IAE9B,QAAQ;QACN,OAAO;YACL;gBACE,IAAI,EAAE,MAAM;gBACZ,WAAW,EAAE,0BAA0B;gBACvC,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAE;aAC9F;YACD;gBACE,IAAI,EAAE,MAAM;gBACZ,WAAW,EAAE,uBAAuB;gBACpC,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE;aAChD;YACD;gBACE,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,oDAAoD;gBACjE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE;aAC7E;YACD;gBACE,IAAI,EAAE,cAAc;gBACpB,WAAW,EAAE,4BAA4B;gBACzC,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAE;aAC9F;SACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,IAAc;QACjC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;IACnF,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,KAAmB,EAAE,MAAoB;QACvD,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB;YAAE,OAAO,EAAE,CAAC;QACjD,MAAM,IAAI,GAAG,MAAM,CAAE,KAA+B,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;QACpE,OAAO;YACL,WAAW,EAAE,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;YAC1E,gBAAgB,EAAE,IAAI,KAAK,IAAI;SAChC,CAAC;IACJ,CAAC;CACF;AAED,SAAS,aAAa,CAAC,OAAe;IACpC,OAAO;QACL,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE;QAC/B,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE;QACxF,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,EAAE;KAC7E,CAAC;AACtB,CAAC;AAED,SAAS,mBAAmB,CAAC,SAAyB;IACpD,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,QAAQ,GAAG;QACf,eAAe,EAAE,GAAG,EAAE,CAAC;YACrB;gBACE,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,mBAAmB;gBAChC,WAAW,EAAE;oBACX,IAAI,EAAE,QAAiB;oBACvB,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;oBAC3C,QAAQ,EAAE,EAAE;iBACb;aACF;YACD;gBACE,IAAI,EAAE,YAAY;gBAClB,WAAW,EAAE,aAAa;gBAC1B,WAAW,EAAE;oBACX,IAAI,EAAE,QAAiB;oBACvB,UAAU,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;oBAC1C,QAAQ,EAAE,EAAE;iBACb;aACF;SACF;QACD,qBAAqB,EAAE,KAAK,EAAE,QAAgB,EAAE,EAAE;YAChD,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;gBACzB,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE;wBACJ,KAAK,EAAE,IAAI;wBACX,IAAI,EACF,0NAA0N;qBAC7N;iBACF,CAAC;YACJ,CAAC;YACD,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;gBAC9B,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,2BAA2B,EAAE;iBAC3D,CAAC;YACJ,CAAC;YACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,yBAAyB,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACvF,CAAC;QACD,YAAY,EAAE,GAAG,EAAE,CAAC,WAAW;QAC/B,WAAW,EAAE,KAAK,EAAE,MAAc,EAAE,IAAY,EAAE,EAAE;YAClD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC;QACD,wBAAwB,EAAE,GAAG,EAAE,CAAC,IAAI;QACpC,aAAa,EAAE,GAAG,EAAE,CAAC,IAAI;QACzB,aAAa,EAAE,GAAG,EAAE,CAAC,SAAS;KAC/B,CAAC;IACD,SAAqD,CAAC,eAAe,GAAG,IAAI,KAAK,CAAC,QAAQ,EAAE;QAC3F,GAAG,EAAE,CAAC,MAAM,EAAE,IAAY,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAA2B,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC;KACxG,CAAC,CAAC;IACH,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,IAI9B;IACC,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAC7D,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAQ,IAAI,IAAI,YAAY,EAAE,CAAC;IACtD,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,IAAI,CAAC;YAC9B,IAAI,EAAE,OAAO;YACb,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,wBAAwB,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACjF,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC;QAC5C,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC;QAC7B,QAAQ,EAAE,CAAE,QAA2C,CAAC,UAAU,EAAE,EAAE,IAAI,QAAQ,CAA2C;QAC7H,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAC7B,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,KAAK,EAAE,YAAY;YACnB,YAAY,EAAE,MAAM;YACpB,GAAG,CAAC,KAAK,CAAC,wBAAwB,KAAK,SAAS;gBAC9C,CAAC,CAAC,EAAE,wBAAwB,EAAE,KAAK,CAAC,wBAAwB,EAAE;gBAC9D,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CAAC;QACH,OAAO,EAAE,CAAC,IAAI,eAAe,EAAE,CAAC;KACjC,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;IAC9C,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;AAC9C,CAAC;AAED,SAAS,OAAO,CAAC,SAAyB;IACxC,SAAS,CAAC,SAAS,CAAC;QAClB,IAAI,EAAE,kBAAkB;QACxB,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,EAAE;KACc,CAAC,CAAC;AAChC,CAAC;AAED,KAAK,UAAU,OAAO,CAAC,SAAwB,EAAE,SAAS,GAAG,IAAI;IAC/D,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;IACxC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;QACpB,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QAC/E,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IACvD,CAAC;AACH,CAAC;AAED,MAAM,0BAA0B;IACtB,cAAc,GAAwB,IAAI,CAAC;IAC3C,iBAAiB,GAAG,KAAK,CAAC;IAElC,kBAAkB,CAAC,QAAmB;QACpC,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC;QACpC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,OAAO,EAAE,EAAE,CAAC;IACd,CAAC;IAED,MAAM;QACJ,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC;QACpC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,OAAO,EAAE,EAAE,CAAC;IACd,CAAC;IAED,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC;QAC3B,MAAM;YACJ,IAAI,EAAE,YAAY;YAClB,KAAK,EAAE;gBACL,EAAE,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE;gBAC3E,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,EAAE;aAClF;YACD,OAAO,EAAE;gBACP,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,gBAAgB;gBAC1B,KAAK,EAAE,CAAC;gBACR,eAAe,EAAE,EAAE;gBACnB,WAAW,EAAE,EAAE;aAChB;SACa,CAAC;QACjB,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QACzE,IAAI,IAAI,CAAC,iBAAiB;YAAE,OAAO;QACnC,MAAM;YACJ,IAAI,EAAE,UAAU;YAChB,QAAQ,EAAE,kBAAkB,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;SAC/C,CAAC;IACnB,CAAC;CACF;AAED,MAAM,4BAA4B;IAChC,KAAK,GAAwB,EAAE,CAAC;IAEhC,cAAc,CAAC,OAA0B;QACvC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzB,OAAO,IAAI,0BAA0B,EAA+B,CAAC;IACvE,CAAC;CACF;AAED,MAAM,+BAA+B;IAaN,SAAS;IAZ9B,MAAM,GAAkB,EAAE,CAAC;IAC3B,IAAI,GAAG,KAAK,CAAC;IACb,kBAAkB,GAAG,KAAK,CAAC;IAC3B,mBAAmB,GAAa,EAAE,CAAC;IACnC,UAAU,GAAG,CAAC,CAAC;IACf,cAAc,GAAwB,IAAI,CAAC;IAC3C,MAAM,GAAG,KAAK,CAAC;IACvB,mBAAmB,GAAgB,EAAE,CAAC;IACtC,yBAAyB,GAErB,EAAE,CAAC;IAEP,YAA6B,SAA+B;yBAA/B,SAAS;QACpC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAC1B,CAAC;IAEO,eAAe,CAAC,KAAa;QACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACvC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACjB,OAAO;QACT,CAAC;QAED,IAAI,QAAQ,CAAC,gBAAgB,EAAE,CAAC;YAC9B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;aACpD,CAAC,CAAC;YAClB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,QAAQ,CAAC,gBAAgB;gBAClC,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE;aACtC,CAAC,CAAC;YAClB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,gBAAgB,EAAE,EAAE;aAC3F,CAAC,CAAC;QACpB,CAAC;QAED,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACnB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAiB,CAAC,CAAC;QAC5E,CAAC;QAED,IAAI,QAAQ,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;YAC/B,IAAI,CAAC,mBAAmB,GAAG,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACjE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE,YAAY;gBAClB,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;oBACrC,EAAE,EAAE,EAAE,CAAC,EAAE;oBACT,IAAI,EAAE,EAAE,CAAC,IAAI;oBACb,KAAK,EAAE,EAAE,CAAC,KAAgC;iBAC3C,CAAC,CAAC;gBACH,OAAO,EAAE;oBACP,OAAO,EAAE,EAAE;oBACX,QAAQ,EAAE,EAAE;oBACZ,KAAK,EAAE,IAAI,CAAC,UAAU;oBACtB,eAAe,EAAE,EAAE;oBACnB,WAAW,EAAE,EAAE;oBACf,YAAY,EAAE,QAAQ,CAAC,OAAO;iBAC/B;aACa,CAAC,CAAC;YAClB,OAAO;QACT,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAiB,CAAC,CAAC;QAChE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,kBAAkB,CAChB,OAAkB,EAClB,OAAoF;QAEpF,IAAI,CAAC,IAAI,CAAC,kBAAkB;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QACvE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvC,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAC;QAC9B,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;YACnB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtC,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;QACxB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;IAC7B,CAAC;IAED,OAAO;QACL,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO;QACzB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtC,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;QACxB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;IAC7B,CAAC;IAED,MAAM;QACJ,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAC;QAC9B,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;QACxB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;IAC7B,CAAC;IAED,IAAI,iBAAiB;QACnB,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACjC,CAAC;IAED,IAAI,kBAAkB;QACpB,OAAO,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC;QAC3B,OAAO,IAAI,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAG,CAAC;gBACnC,MAAM,KAAK,CAAC;gBACZ,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;oBACpF,OAAO;gBACT,CAAC;YACH,CAAC;YACD,IAAI,IAAI,CAAC,IAAI;gBAAE,OAAO;YACtB,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;CACF;AAED,MAAM,gBAAgB;IACpB,KAAK,GAAwB,EAAE,CAAC;IAChC,UAAU,GAAgE,IAAI,CAAC;IACvE,SAAS,GAAmF,EAAE,CAAC;IAEvG,aAAa,CACX,SAA+B,EAC/B,IAA6C;QAE7C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,wBAAwB,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAAC,CAAC;IAC/F,CAAC;IAED,cAAc,CAAC,OAA0B;QACvC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzB,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QACpC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QACxD,MAAM,MAAM,GAAG,IAAI,CAAC,wBAAwB;YAC1C,CAAC,CAAC,IAAI,+BAA+B,CAAC,IAAI,CAAC,SAAS,CAAC;YACrD,CAAC,CAAC,IAAI,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;QACzB,OAAO,MAAmC,CAAC;IAC7C,CAAC;IAED,UAAU;QACR,OAAO,IAAyD,CAAC;IACnE,CAAC;CACF;AAED,SAAS,gBAAgB,CAAC,OAA0B;IAClD,MAAM,SAAS,GAAG,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;IAC9E,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,8BAA8B,CAAC,CAAC;IACrD,OAAO,SAAS,CAAC,WAAW,CAAC;AAC/B,CAAC;AAED,KAAK,UAAU,8CAA8C,CAAC,IAG7D;IACC,MAAM,QAAQ,GAAG,IAAI,gBAAgB,EAAE,CAAC;IACxC,QAAQ,CAAC,aAAa,CAAC;QACrB,kBAAkB,CAAC;YACjB,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,8BAA8B,EAAE;YACtD,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE;YACxF;gBACE,IAAI,EAAE,UAAU;gBAChB,EAAE,EAAE,YAAY;gBAChB,IAAI,EAAE,gBAAgB;gBACtB,KAAK,EAAE,IAAI,CAAC,UAAU;aACvB;YACD,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,EAAE;SAC7E,EAAE,UAAU,CAAC;QAChC,kBAAkB,CAAC;YACjB,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,mCAAmC,EAAE;YAC3D,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE;YACxF,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,EAAE;SACjD,EAAE,UAAU,CAAC;QAChC,kBAAkB,CAAC,EAAoB,CAAC;KACzC,EAAE,EAAE,wBAAwB,EAAE,IAAI,EAAE,CAAC,CAAC;IACvC,QAAQ,CAAC,aAAa,CAAC;QACrB,kBAAkB,CAAC,aAAa,CAAC,8BAA8B,CAAC,EAAE,UAAU,CAAC;QAC7E,kBAAkB,CAAC,EAAoB,CAAC;KACzC,CAAC,CAAC;IACH,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,eAAe,CAAC;QACvD,GAAG,CAAC,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrE,QAAQ;KACT,CAAC,CAAC;IACH,IAAI,CAAC;QACH,SAAS,CAAC,0BAA0B,CAAC,OAAO,EAAE,EAAE,wBAAwB,EAAE,SAAS,EAAE,CAAC,CAAC;QACvF,MAAM,CAAC,KAAK,CACV,SAAS,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,wBAAwB,EACnE,SAAS,CACV,CAAC;QAEF,SAAS,CAAC,KAAK,EAAE,CAAC;QAClB,OAAO,CAAC,SAAS,CAAC,CAAC;QACnB,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;QACjD,MAAM,OAAO,CAAC,GAAG,EAAE,CAAE,QAAQ,CAAC,UAAqD,EAAE,mBAAmB,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;QAEvH,MAAM,iBAAiB,GAAI,QAAQ,CAAC,UAA8C,CAAC,mBAAmB,CAAC,CAAC,CAGtG,CAAC;QACH,MAAM,cAAc,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,KAAK,YAAY,CAAC,CAAC;QAC7F,MAAM,CAAC,EAAE,CAAC,cAAc,EAAE,+CAA+C,CAAC,CAAC;QAC3E,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,EAAE,oCAAoC,CAAC,CAAC;QAC3E,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;QAEvD,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,+BAA+B,CAAC,CAAC;QACnF,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC7B,MAAM,CAAC,KAAK,CACV,SAAS,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,wBAAwB,EACnE,QAAQ,CACT,CAAC;QACF,MAAM,CAAC,KAAK,CACV,gBAAgB,CAAC,MAAM,SAAS,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,EAC5D,6CAA6C,CAC9C,CAAC;QAED,QAAQ,CAAC,UAA8C,CAAC,OAAO,EAAE,CAAC;QACnE,MAAM,OAAO,CAAC,GAAG,EAAE,CAAE,SAAsE,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;QACtH,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAE7B,OAAO,CAAC,SAAS,CAAC,CAAC;QACnB,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;QACjD,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;QACzC,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,6CAA6C,CAAC,CAAC;QACjG,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,8BAA8B,CAAC,CAAC,CAAC;IAC7D,CAAC;YAAS,CAAC;QACT,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;QACvB,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAChD,CAAC;AACH,CAAC;AAED,QAAQ,CAAC,8BAA8B,EAAE,GAAG,EAAE;IAC5C,EAAE,CAAC,+EAA+E,EAAE,KAAK,IAAI,EAAE;QAC7F,MAAM,QAAQ,GAAG,IAAI,YAAY,EAAE,CAAC;QACpC,QAAQ,CAAC,YAAY,CAAC,kBAAkB,CAAC,aAAa,CAAC,gBAAgB,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC;QACvF,QAAQ,CAAC,YAAY,CAAC,kBAAkB,CAAC,EAAoB,CAAC,CAAC,CAAC;QAChE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,eAAe,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;QACvE,IAAI,CAAC;YACH,OAAO,CAAC,SAAS,CAAC,CAAC;YACnB,MAAM,SAAS,CAAC,YAAY,EAAE,CAAC;YAC/B,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAC/C,CAAC;gBAAS,CAAC;YACT,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uEAAuE,EAAE,KAAK,IAAI,EAAE;QACrF,MAAM,QAAQ,GAAG,IAAI,YAAY,EAAE,CAAC;QACpC,QAAQ,CAAC,YAAY,CAAC,kBAAkB,CAAC,aAAa,CAAC,gBAAgB,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC;QACvF,QAAQ,CAAC,YAAY,CAAC,kBAAkB,CAAC,EAAoB,CAAC,CAAC,CAAC;QAChE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,eAAe,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC1F,IAAI,CAAC;YACH,OAAO,CAAC,SAAS,CAAC,CAAC;YACnB,MAAM,SAAS,CAAC,YAAY,EAAE,CAAC;YAC/B,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC/B,CAAC;gBAAS,CAAC;YACT,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iFAAiF,EAAE,KAAK,IAAI,EAAE;QAC/F,MAAM,QAAQ,GAAG,IAAI,YAAY,EAAE,CAAC;QACpC,QAAQ,CAAC,YAAY,CAAC,kBAAkB,CAAC,aAAa,CAAC,gBAAgB,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC;QACvF,QAAQ,CAAC,YAAY,CAAC,kBAAkB,CAAC;YACvC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,gDAAgD,EAAE;YACxE,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,EAAE;SACjD,EAAE,UAAU,CAAC,CAAC,CAAC;QAClC,QAAQ,CAAC,YAAY,CAAC,kBAAkB,CAAC;YACvC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,2CAA2C,EAAE;SAClD,CAAC,CAAC,CAAC;QACtB,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,eAAe,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC1F,IAAI,CAAC;YACH,OAAO,CAAC,SAAS,CAAC,CAAC;YACnB,MAAM,SAAS,CAAC,YAAY,EAAE,CAAC;YAC/B,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE;gBACvB,gDAAgD;gBAChD,2CAA2C;aAC5C,CAAC,CAAC;QACL,CAAC;gBAAS,CAAC;YACT,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qEAAqE,EAAE,KAAK,IAAI,EAAE;QACnF,MAAM,QAAQ,GAAG,IAAI,YAAY,EAAE,CAAC;QACpC,QAAQ,CAAC,YAAY,CAAC,kBAAkB,CAAC,aAAa,CAAC,gBAAgB,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC;QACvF,QAAQ,CAAC,YAAY,CAAC,kBAAkB,CAAC;YACvC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,qCAAqC,EAAE;YAC7D,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,EAAE;SACjD,EAAE,UAAU,CAAC,CAAC,CAAC;QAClC,QAAQ,CAAC,YAAY,CAAC,kBAAkB,CAAC;YACvC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,gCAAgC,EAAE;SACvC,CAAC,CAAC,CAAC;QACtB,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,eAAe,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;QACzF,IAAI,CAAC;YACH,OAAO,CAAC,SAAS,CAAC,CAAC;YACnB,MAAM,SAAS,CAAC,YAAY,EAAE,CAAC;YAC/B,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE;gBACvB,gBAAgB;gBAChB,qCAAqC;gBACrC,gCAAgC;aACjC,CAAC,CAAC;QACL,CAAC;gBAAS,CAAC;YACT,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0DAA0D,EAAE,KAAK,IAAI,EAAE;QACxE,KAAK,MAAM,MAAM,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAU,EAAE,CAAC;YACpD,MAAM,QAAQ,GAAG,IAAI,YAAY,EAAE,CAAC;YACpC,QAAQ,CAAC,YAAY,CAAC,kBAAkB,CAAC;gBACvC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE;gBACxC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE;gBAChG,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,MAAM,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE;aAC5E,EAAE,UAAU,CAAC,CAAC,CAAC;YAClC,QAAQ,CAAC,YAAY,CAAC,kBAAkB,CAAC,EAAoB,CAAC,CAAC,CAAC;YAChE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,eAAe,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC/E,IAAI,CAAC;gBACH,OAAO,CAAC,SAAS,CAAC,CAAC;gBACnB,MAAM,SAAS,CAAC,YAAY,EAAE,CAAC;gBAC/B,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM,qBAAqB,CAAC,CAAC;YAC/D,CAAC;oBAAS,CAAC;gBACT,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;gBACvB,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;QACnD,MAAM,QAAQ,GAAG,IAAI,YAAY,EAAE,CAAC;QACpC,QAAQ,CAAC,YAAY,CAAC,kBAAkB,CAAC;YACvC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,EAAE;YAC1C,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;SACrE,EAAE,UAAU,CAAC,CAAC,CAAC;QAClC,QAAQ,CAAC,YAAY,CAAC,kBAAkB,CAAC;YACvC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,gDAAgD,EAAE;YACxE,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,EAAE;SACjD,EAAE,UAAU,CAAC,CAAC,CAAC;QAClC,QAAQ,CAAC,YAAY,CAAC,kBAAkB,CAAC;YACvC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,2CAA2C,EAAE;SAClD,CAAC,CAAC,CAAC;QACtB,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,eAAe,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC1F,IAAI,CAAC;YACH,OAAO,CAAC,SAAS,CAAC,CAAC;YACnB,MAAM,SAAS,CAAC,YAAY,EAAE,CAAC;YAC/B,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC/B,CAAC;gBAAS,CAAC;YACT,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kFAAkF,EAAE,KAAK,IAAI,EAAE;QAChG,MAAM,QAAQ,GAAG,IAAI,YAAY,EAAE,CAAC;QACpC,QAAQ,CAAC,YAAY,CAAC,kBAAkB,CAAC,aAAa,CAAC,gBAAgB,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC;QACvF,QAAQ,CAAC,YAAY,CAAC,kBAAkB,CAAC,EAAoB,CAAC,CAAC,CAAC;QAChE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,eAAe,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC1F,IAAI,CAAC;YACH,OAAO,CAAC,SAAS,CAAC,CAAC;YACnB,MAAM,SAAS,CAAC,YAAY,EAAE,CAAC;YAC/B,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAC7B,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAE,CAAC,iBAAiB,EAAE,CAAC,OAAO,EAAE,CAAC;YAClF,MAAM,CAAC,EAAE,CACP,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,EAC/F,2DAA2D,CAC5D,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8FAA8F,EAAE,KAAK,IAAI,EAAE;QAC5G,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,MAAM,eAAe,CAAC;YAC/C,MAAM,EAAE;gBACN,EAAE,IAAI,EAAE,cAAc,EAAE,wBAAwB,EAAE,QAAQ,EAAE;gBAC5D,EAAE,IAAI,EAAE,eAAe,EAAE,wBAAwB,EAAE,SAAS,EAAE;aAC/D;SACF,CAAC,CAAC;QACH,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,MAAM,SAAS,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;YACxE,MAAM,cAAc,GAAG,MAAM,SAAS,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC;YAC1E,MAAM,WAAW,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;YAC/E,MAAM,YAAY,GAAG,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;YACjF,MAAM,iBAAiB,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;YACxF,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;YACvB,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC;YACxB,MAAM,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC;YAC7B,MAAM,CAAC,KAAK,CAAC,WAAY,CAAC,WAAW,EAAE,6CAA6C,CAAC,CAAC;YACtF,MAAM,CAAC,KAAK,CAAC,YAAa,CAAC,WAAW,EAAE,+BAA+B,CAAC,CAAC;YACzE,MAAM,CAAC,KAAK,CAAC,iBAAkB,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;YAElE,MAAM,qBAAqB,GAAI,SAE7B,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;YACpC,MAAM,sBAAsB,GAAI,SAE9B,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC;YACrC,MAAM,CAAC,KAAK,CACV,qBAAqB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,EAAE,WAAW,EACxE,WAAW,EAAE,WAAW,CACzB,CAAC;YACF,MAAM,CAAC,KAAK,CACV,sBAAsB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,EAAE,WAAW,EACzE,YAAY,EAAE,WAAW,CAC1B,CAAC;YACF,MAAM,CAAC,KAAK,CACV,SAAS,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,EAAE,WAAW,EAC1E,mBAAmB,CACpB,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kGAAkG,EAAE,KAAK,IAAI,EAAE;QAChH,MAAM,QAAQ,GAAG,IAAI,gBAAgB,EAAE,CAAC;QACxC,QAAQ,CAAC,aAAa,CAAC;YACrB,kBAAkB,CAAC;gBACjB,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,2BAA2B,EAAE;gBACnD,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE;gBACxF,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,EAAE;aAC7E,EAAE,UAAU,CAAC;YAChC,kBAAkB,CAAC;gBACjB,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,2BAA2B,EAAE;gBACnD,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE;gBACxF,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,EAAE;aACjD,EAAE,UAAU,CAAC;YAChC,kBAAkB,CAAC,EAAoB,CAAC;SACzC,EAAE,EAAE,wBAAwB,EAAE,IAAI,EAAE,CAAC,CAAC;QACvC,QAAQ,CAAC,aAAa,CAAC;YACrB,kBAAkB,CAAC,aAAa,CAAC,sCAAsC,CAAC,EAAE,UAAU,CAAC;YACrF,kBAAkB,CAAC,EAAoB,CAAC;SACzC,CAAC,CAAC;QACH,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,eAAe,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;QACzF,IAAI,CAAC;YACH,SAAS,CAAC,KAAK,EAAE,CAAC;YAClB,OAAO,CAAC,SAAS,CAAC,CAAC;YACnB,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;YACjD,MAAM,OAAO,CAAC,GAAG,EAAE,CAAE,QAAQ,CAAC,UAAqD,EAAE,mBAAmB,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;YACvH,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,6CAA6C,CAAC,CAAC;YACjG,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,2BAA2B,CAAC,CAAC,CAAC;YAExD,SAAS,CAAC,0BAA0B,CAAC,OAAO,EAAE,EAAE,wBAAwB,EAAE,SAAS,EAAE,CAAC,CAAC;YACvF,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAC3D,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,+BAA+B,CAAC,CAAC;YAExE,QAAQ,CAAC,UAA8C,CAAC,OAAO,EAAE,CAAC;YACnE,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;YACzC,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE;gBACvB,2BAA2B;gBAC3B,2BAA2B;aAC5B,CAAC,CAAC;YAEH,OAAO,CAAC,SAAS,CAAC,CAAC;YACnB,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;YACjD,MAAM,OAAO,CAAC,GAAG,EAAE,CAAE,SAAsE,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;YACtH,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,+BAA+B,CAAC,CAAC;YACnF,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE;gBACvB,2BAA2B;gBAC3B,2BAA2B;aAC5B,CAAC,CAAC;QACL,CAAC;gBAAS,CAAC;YACT,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kGAAkG,EAAE,KAAK,IAAI,EAAE;QAChH,MAAM,QAAQ,GAAG,IAAI,gBAAgB,EAAE,CAAC;QACxC,QAAQ,CAAC,aAAa,CAAC;YACrB,kBAAkB,CAAC,aAAa,CAAC,4BAA4B,CAAC,EAAE,UAAU,CAAC;YAC3E,kBAAkB,CAAC;gBACjB,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4BAA4B,EAAE;gBACpD,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE;gBACxF,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,EAAE;aACjD,EAAE,UAAU,CAAC;YAChC,kBAAkB,CAAC,EAAoB,CAAC;SACzC,EAAE,EAAE,wBAAwB,EAAE,IAAI,EAAE,CAAC,CAAC;QACvC,QAAQ,CAAC,aAAa,CAAC;YACrB,kBAAkB,CAAC,aAAa,CAAC,qCAAqC,CAAC,EAAE,UAAU,CAAC;YACpF,kBAAkB,CAAC,EAAoB,CAAC;SACzC,CAAC,CAAC;QACH,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,eAAe,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC1F,IAAI,CAAC;YACH,SAAS,CAAC,KAAK,EAAE,CAAC;YAClB,OAAO,CAAC,SAAS,CAAC,CAAC;YACnB,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;YACjD,MAAM,OAAO,CAAC,GAAG,EAAE,CAAE,QAAQ,CAAC,UAAqD,EAAE,mBAAmB,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;YACvH,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,+BAA+B,CAAC,CAAC;YACnF,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAE7B,SAAS,CAAC,0BAA0B,CAAC,OAAO,EAAE,EAAE,wBAAwB,EAAE,QAAQ,EAAE,CAAC,CAAC;YACrF,QAAQ,CAAC,UAA8C,CAAC,OAAO,EAAE,CAAC;YACnE,MAAM,OAAO,CAAC,GAAG,EAAE,CAAE,SAAsE,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;YACtH,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAE7B,OAAO,CAAC,SAAS,CAAC,CAAC;YACnB,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;YACjD,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;YACzC,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,6CAA6C,CAAC,CAAC;YACjG,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,qCAAqC,CAAC,CAAC,CAAC;QACpE,CAAC;gBAAS,CAAC;YACT,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0HAA0H,EAAE,KAAK,IAAI,EAAE;QACxI,MAAM,QAAQ,GAAG,IAAI,gBAAgB,EAAE,CAAC;QACxC,QAAQ,CAAC,aAAa,CAAC;YACrB,kBAAkB,CAAC;gBACjB,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,8BAA8B,EAAE;gBACtD,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE;gBACxF;oBACE,IAAI,EAAE,UAAU;oBAChB,EAAE,EAAE,YAAY;oBAChB,IAAI,EAAE,gBAAgB;oBACtB,KAAK,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,4BAA4B,EAAE,SAAS,EAAE;iBACrE;gBACD,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,EAAE;aAC7E,EAAE,UAAU,CAAC;YAChC,kBAAkB,CAAC;gBACjB,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kCAAkC,EAAE;gBAC1D,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE;gBACxF,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,EAAE;aACjD,EAAE,UAAU,CAAC;YAChC,kBAAkB,CAAC,EAAoB,CAAC;SACzC,EAAE,EAAE,wBAAwB,EAAE,IAAI,EAAE,CAAC,CAAC;QACvC,QAAQ,CAAC,aAAa,CAAC;YACrB,kBAAkB,CAAC,aAAa,CAAC,+BAA+B,CAAC,EAAE,UAAU,CAAC;YAC9E,kBAAkB,CAAC,EAAoB,CAAC;SACzC,CAAC,CAAC;QACH,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,eAAe,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;QACzF,IAAI,CAAC;YACH,SAAS,CAAC,KAAK,EAAE,CAAC;YAClB,OAAO,CAAC,SAAS,CAAC,CAAC;YACnB,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;YACjD,MAAM,OAAO,CAAC,GAAG,EAAE,CAAE,QAAQ,CAAC,UAAqD,EAAE,mBAAmB,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;YAEvH,MAAM,iBAAiB,GAAI,QAAQ,CAAC,UAA8C,CAAC,mBAAmB,CAAC,CAAC,CAGtG,CAAC;YACH,MAAM,CAAC,EAAE,CACP,iBAAiB,CAAC,IAAI,CACpB,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,SAAS,KAAK,YAAY;gBACjC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,oCAAoC,CAAC,CAChE,CACF,CAAC;YACF,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,8BAA8B,CAAC,CAAC,CAAC;YAC3D,MAAM,CAAC,KAAK,CACV,SAAS,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,wBAAwB,EACnE,SAAS,CACV,CAAC;YACF,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,MAAM,SAAS,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,EAAE,+BAA+B,CAAC,CAAC;YAE3G,QAAQ,CAAC,UAA8C,CAAC,OAAO,EAAE,CAAC;YACnE,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;YACzC,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE;gBACvB,8BAA8B;gBAC9B,kCAAkC;aACnC,CAAC,CAAC;YAEH,OAAO,CAAC,SAAS,CAAC,CAAC;YACnB,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;YACjD,MAAM,OAAO,CAAC,GAAG,EAAE,CAAE,SAAsE,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;YACtH,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,+BAA+B,CAAC,CAAC;YACnF,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE;gBACvB,8BAA8B;gBAC9B,kCAAkC;aACnC,CAAC,CAAC;QACL,CAAC;gBAAS,CAAC;YACT,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uGAAuG,EAAE,KAAK,IAAI,EAAE;QACrH,MAAM,8CAA8C,CAAC;YACnD,UAAU,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,8BAA8B,CAAC,EAAE;SAC5E,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2FAA2F,EAAE,KAAK,IAAI,EAAE;QACzG,MAAM,8CAA8C,CAAC;YACnD,UAAU,EAAE,QAAQ;YACpB,UAAU,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE;SAChC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yFAAyF,EAAE,KAAK,IAAI,EAAE;QACvG,MAAM,QAAQ,GAAG,IAAI,gBAAgB,EAAE,CAAC;QACxC,QAAQ,CAAC,aAAa,CAAC;YACrB,kBAAkB,CAAC;gBACjB,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,aAAa,CAAC,EAAE,EAAE;aACpG,EAAE,UAAU,CAAC;YAChC,kBAAkB,CAAC,EAAoB,CAAC;SACzC,EAAE,EAAE,wBAAwB,EAAE,IAAI,EAAE,CAAC,CAAC;QACvC,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,MAAM,eAAe,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC/D,IAAI,CAAC;YACH,SAAS,CAAC,KAAK,EAAE,CAAC;YAClB,OAAO,CAAC,SAAS,CAAC,CAAC;YACnB,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;YACjD,MAAM,OAAO,CAAC,GAAG,EAAE,CAAE,QAAQ,CAAC,UAAqD,EAAE,mBAAmB,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;YAEvH,MAAM,iBAAiB,GAAI,QAAQ,CAAC,UAA8C,CAAC,mBAAmB,CAAC,CAAC,CAGtG,CAAC;YACH,MAAM,cAAc,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,KAAK,YAAY,CAAC,CAAC;YAC7F,MAAM,CAAC,EAAE,CAAC,cAAc,EAAE,+CAA+C,CAAC,CAAC;YAC3E,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,OAAO,EAAE,oCAAoC,CAAC,CAAC;QACpF,CAAC;gBAAS,CAAC;YACT,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kHAAkH,EAAE,KAAK,IAAI,EAAE;QAChI,MAAM,QAAQ,GAAG,IAAI,gBAAgB,EAAE,CAAC;QACxC,QAAQ,CAAC,aAAa,CAAC;YACrB,kBAAkB,CAAC,aAAa,CAAC,+BAA+B,CAAC,EAAE,UAAU,CAAC;YAC9E,kBAAkB,CAAC,EAAoB,CAAC;SACzC,EAAE,EAAE,wBAAwB,EAAE,IAAI,EAAE,CAAC,CAAC;QACvC,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,MAAM,eAAe,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;QACjF,IAAI,CAAC;YACH,SAAS,CAAC,KAAK,EAAE,CAAC;YAClB,OAAO,CAAC,SAAS,CAAC,CAAC;YACnB,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;YACjD,MAAM,OAAO,CAAC,GAAG,EAAE,CAAE,QAAQ,CAAC,UAAqD,EAAE,mBAAmB,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;YACvH,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,6CAA6C,CAAC,CAAC;YAEjG,SAAS,CAAC,0BAA0B,CAAC,OAAO,EAAE,EAAE,wBAAwB,EAAE,SAAS,EAAE,CAAC,CAAC;YACvF,MAAM,CAAC,KAAK,CACV,gBAAgB,CAAC,MAAM,SAAS,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,EAC5D,+BAA+B,CAChC,CAAC;YACF,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,6CAA6C,CAAC,CAAC;QACnG,CAAC;gBAAS,CAAC;YACT,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6FAA6F,EAAE,KAAK,IAAI,EAAE;QAC3G,MAAM,QAAQ,GAAG,IAAI,YAAY,EAAE,CAAC;QACpC,QAAQ,CAAC,YAAY,CAAC,kBAAkB,CAAC;YACvC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,qCAAqC,EAAE;YAC7D,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE;SACrF,EAAE,UAAU,CAAC,CAAC,CAAC;QAClC,QAAQ,CAAC,YAAY,CAAC,kBAAkB,CAAC,EAAoB,CAAC,CAAC,CAAC;QAChE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,eAAe,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC1F,IAAI,CAAC;YACH,OAAO,CAAC,SAAS,CAAC,CAAC;YACnB,MAAM,SAAS,CAAC,YAAY,EAAE,CAAC;YAC/B,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,qCAAqC,CAAC,CAAC,CAAC;QACpE,CAAC;gBAAS,CAAC;YACT,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;QACvE,MAAM,QAAQ,GAAG,IAAI,YAAY,EAAE,CAAC;QACpC,MAAM,QAAQ,GAAG,kDAAkD,CAAC;QACpE,QAAQ,CAAC,YAAY,CAAC,kBAAkB,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC;QAC/E,QAAQ,CAAC,YAAY,CAAC,kBAAkB,CAAC,EAAoB,CAAC,CAAC,CAAC;QAChE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,MAAM,eAAe,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;QAClF,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,CAAC;QACpC,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,OAAO,CAAC,KAAK,GAAG,CAAC,GAAG,IAAe,EAAE,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzE,IAAI,CAAC;YACH,OAAO,CAAC,SAAS,CAAC,CAAC;YACnB,MAAM,SAAS,CAAC,YAAY,EAAE,CAAC;YAC/B,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,sCAAsC,CAAC,CAAC,CAAC,CAAC;YACxF,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC9D,CAAC;gBAAS,CAAC;YACT,OAAO,CAAC,KAAK,GAAG,aAAa,CAAC;YAC9B,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wEAAwE,EAAE,KAAK,IAAI,EAAE;QACtF,MAAM,QAAQ,GAAG,IAAI,gBAAgB,EAAE,CAAC;QACxC,QAAQ,CAAC,aAAa,CAAC;YACrB,kBAAkB,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAC;SAC/D,CAAC,CAAC;QACH,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,MAAM,eAAe,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC/D,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,oBAAoB,CAAC;gBACnD,IAAI,EAAE,kBAAkB;gBACxB,KAAK,EAAE,YAAY;gBACnB,YAAY,EAAE,MAAM;gBACpB,YAAY,EAAE,KAAK;gBACnB,wBAAwB,EAAE,SAAS;aACpC,CAAC,CAAC;YACH,OAAO,CAAC,cAAc,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YAC1E,MAAM,GAAG,GAAG,SAAS,CAAC,wBAAwB,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;YACtF,SAAS,CAAC,KAAK,EAAE,CAAC;YAClB,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC;YACzB,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;YAC9C,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,+BAA+B,CAAC,CAAC;QACrF,CAAC;gBAAS,CAAC;YACT,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;QACjE,MAAM,QAAQ,GAAG,IAAI,4BAA4B,EAAE,CAAC;QACpD,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,eAAe,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC1F,IAAI,CAAC;YACH,OAAO,CAAC,SAAS,CAAC,CAAC;YACnB,MAAM,SAAS,CAAC,YAAY,EAAE,CAAC;YAC/B,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAC/C,CAAC;gBAAS,CAAC;YACT,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -32,6 +32,7 @@ import { AgentFramework } from '../src/index.js';
|
|
|
32
32
|
import { WorkspaceModule } from '../src/modules/workspace/index.js';
|
|
33
33
|
import { FALLBACK_MEDIA_TYPE, TOOL_IMAGE_REF_RE, ToolImageLedger, formatPreservedImageSlots, formatToolImagePlaceholder, normalizeMediaType, parseImagePlaceholders, splitPreservingImageSlots, } from '../src/tool-image-ledger.js';
|
|
34
34
|
import { toolResultDataToHistoryString, truncateForHistory } from '../src/tool-result-history.js';
|
|
35
|
+
import { classifyBlock, referenceRegistry } from '../src/mcpl/references.js';
|
|
35
36
|
import { createMockResponse, MockMembrane } from './helpers/mock-membrane.js';
|
|
36
37
|
const PNG = Buffer.from('iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR4nGP4////fwAJ+wP9KobjigAAAABJRU5ErkJggg==', 'base64');
|
|
37
38
|
const GIF = Buffer.from('R0lGODdhAQABAIEAAP///wAAAAAAAAAAACwAAAAAAQABAAAIBAABBAQAOw==', 'base64');
|
|
@@ -348,7 +349,142 @@ describe('save_recent_image provenance (issue #104)', () => {
|
|
|
348
349
|
rmSync(h.tempDir, { recursive: true, force: true });
|
|
349
350
|
}
|
|
350
351
|
});
|
|
351
|
-
it(
|
|
352
|
+
it("a reference whose claimed type carries bidi controls is the image its stub shows, and its refusal shows the type without them", async () => {
|
|
353
|
+
// The stub shows `Image/PNG`, so after a restart the stub's text alone
|
|
354
|
+
// makes this a slot (matched without regard to case); the record must
|
|
355
|
+
// say the same, or the index slides.
|
|
356
|
+
const c = classifyBlock({ type: 'image', uri: 'https://example.invalid/sri-label.png', mimeType: '\u202EImage/PNG\u061C' });
|
|
357
|
+
assert.strictEqual(c.kind, 'reference');
|
|
358
|
+
const record = referenceRegistry.register(c.testimony);
|
|
359
|
+
const h = await startTurn({
|
|
360
|
+
prefix: 'sri-reference-label-',
|
|
361
|
+
responses: [[saveCall('call_save', { path: 'files/label.png', index: 0 })], done],
|
|
362
|
+
seedHistory: (framework) => {
|
|
363
|
+
framework.getAgent('prime').getContextManager().addMessage('user', [{
|
|
364
|
+
type: 'tool_result',
|
|
365
|
+
toolUseId: 'call_cam',
|
|
366
|
+
toolName: 'mcpl--vst--camera',
|
|
367
|
+
content: `[${record.refId}] label.png — Image/PNG, 1.2MB claimed — from tool result — fetch with fetch_reference`,
|
|
368
|
+
isError: false,
|
|
369
|
+
}]);
|
|
370
|
+
},
|
|
371
|
+
});
|
|
372
|
+
try {
|
|
373
|
+
const result = await waitForToolResult(h.framework, 'call_save');
|
|
374
|
+
assert.strictEqual(result.isError, true, `index 0 is the reference, not the older GIF: ${result.content}`);
|
|
375
|
+
assert.match(result.content, new RegExp(`index 0 is a reference \\(${record.refId}, image/png, from`));
|
|
376
|
+
assert.ok(!/[\u061C\u202E]/.test(result.content), result.content);
|
|
377
|
+
assert.strictEqual(await fileBytes(h, 'files/label.png'), null);
|
|
378
|
+
}
|
|
379
|
+
finally {
|
|
380
|
+
await h.framework.stop();
|
|
381
|
+
rmSync(h.tempDir, { recursive: true, force: true });
|
|
382
|
+
}
|
|
383
|
+
});
|
|
384
|
+
it('an expired reference refuses with its reason; one with a saved copy still points at fetch_reference', async () => {
|
|
385
|
+
const register = (name) => {
|
|
386
|
+
const c = classifyBlock({ type: 'image', uri: `https://example.invalid/${name}`, mimeType: 'image/png', expiresAt: '2001-01-01T00:00:00Z' });
|
|
387
|
+
assert.strictEqual(c.kind, 'reference');
|
|
388
|
+
return referenceRegistry.register(c.testimony);
|
|
389
|
+
};
|
|
390
|
+
const kept = register('sri-expired-kept.png');
|
|
391
|
+
kept.fetchedPath = 'files/refs/kept.png'; // saved before its expiry passed: fetch_reference serves it
|
|
392
|
+
const expired = register('sri-expired.png');
|
|
393
|
+
const h = await startTurn({
|
|
394
|
+
prefix: 'sri-reference-expired-',
|
|
395
|
+
responses: [
|
|
396
|
+
[saveCall('call_save0', { path: 'files/expired.png', index: 0 })],
|
|
397
|
+
[saveCall('call_save1', { path: 'files/kept.png', index: 1 })],
|
|
398
|
+
done,
|
|
399
|
+
],
|
|
400
|
+
seedHistory: (framework) => {
|
|
401
|
+
framework.getAgent('prime').getContextManager().addMessage('user', [{
|
|
402
|
+
type: 'tool_result',
|
|
403
|
+
toolUseId: 'call_cam',
|
|
404
|
+
toolName: 'mcpl--vst--camera',
|
|
405
|
+
content: `[${kept.refId}] kept.png — image/png — from tool result — saved: files/refs/kept.png\n`
|
|
406
|
+
+ `[${expired.refId}] expired.png — image/png — from tool result — expired: its expiresAt has passed`,
|
|
407
|
+
isError: false,
|
|
408
|
+
}]);
|
|
409
|
+
},
|
|
410
|
+
});
|
|
411
|
+
try {
|
|
412
|
+
const refused = await waitForToolResult(h.framework, 'call_save0');
|
|
413
|
+
assert.strictEqual(refused.isError, true);
|
|
414
|
+
assert.match(refused.content, new RegExp(`index 0 is a reference \\(${expired.refId}, image/png, from`));
|
|
415
|
+
assert.match(refused.content, /It can't be fetched either — expired: its expiresAt has passed\./);
|
|
416
|
+
assert.ok(!refused.content.includes('fetch_reference'), refused.content);
|
|
417
|
+
const keptRefusal = await waitForToolResult(h.framework, 'call_save1');
|
|
418
|
+
assert.strictEqual(keptRefusal.isError, true);
|
|
419
|
+
assert.match(keptRefusal.content, new RegExp(`index 1 is a reference \\(${kept.refId}, image/png, from`));
|
|
420
|
+
assert.match(keptRefusal.content, /Fetch it with fetch_reference and save the materialized file instead\./);
|
|
421
|
+
}
|
|
422
|
+
finally {
|
|
423
|
+
await h.framework.stop();
|
|
424
|
+
rmSync(h.tempDir, { recursive: true, force: true });
|
|
425
|
+
}
|
|
426
|
+
});
|
|
427
|
+
it("an attachment's media type is shown and stored as a label, and one with nothing left counts as absent", async () => {
|
|
428
|
+
// The store keeps a declared type only for bytes it can't sniff as a
|
|
429
|
+
// raster image, so these aren't images it knows. Oldest first: a type
|
|
430
|
+
// with controls in it, one that sanitizes to nothing, and a url-source
|
|
431
|
+
// image with no type at all (index 0: not inline, so not saveable).
|
|
432
|
+
const bytes = (tag) => Buffer.from(`not a raster image ${tag}`).toString('base64');
|
|
433
|
+
const h = await startTurn({
|
|
434
|
+
prefix: 'sri-attachment-type-',
|
|
435
|
+
responses: [[saveCall('call_save', { path: 'files/sent.bmp', index: 1, count: 2 })], done],
|
|
436
|
+
seedHistory: (framework) => {
|
|
437
|
+
framework.getAgent('prime').getContextManager().addMessage('user', [
|
|
438
|
+
{ type: 'image', source: { type: 'base64', data: bytes('a'), mediaType: 'image/\u202Ebmp\u0085' } },
|
|
439
|
+
{ type: 'image', source: { type: 'base64', data: bytes('b'), mediaType: '\u202E\u061C' } },
|
|
440
|
+
{ type: 'image', source: { type: 'url', url: 'https://example.invalid/sri-url.png' } },
|
|
441
|
+
]);
|
|
442
|
+
},
|
|
443
|
+
});
|
|
444
|
+
try {
|
|
445
|
+
const result = await waitForToolResult(h.framework, 'call_save');
|
|
446
|
+
assert.ok(!/[\u0085\u061C\u202E]/.test(result.content), result.content);
|
|
447
|
+
const receipts = saved(result);
|
|
448
|
+
assert.deepStrictEqual(receipts.map((r) => [r.imageIndex, r.mediaType, r.mimeType]), [
|
|
449
|
+
[1, 'image/png', 'image/png'],
|
|
450
|
+
[2, 'image/bmp', 'image/bmp'],
|
|
451
|
+
]);
|
|
452
|
+
}
|
|
453
|
+
finally {
|
|
454
|
+
await h.framework.stop();
|
|
455
|
+
rmSync(h.tempDir, { recursive: true, force: true });
|
|
456
|
+
}
|
|
457
|
+
});
|
|
458
|
+
it('a reference with no record shows its type bounded as a stub would, and says to re-run the tool', async () => {
|
|
459
|
+
// A stub line the registry has no record of (after a restart, or quoted
|
|
460
|
+
// text), whose type is far longer than a stub would show.
|
|
461
|
+
const longType = `image/${'x'.repeat(300)}`;
|
|
462
|
+
const h = await startTurn({
|
|
463
|
+
prefix: 'sri-reference-unknown-',
|
|
464
|
+
responses: [[saveCall('call_save', { path: 'files/long.png', index: 0 })], done],
|
|
465
|
+
seedHistory: (framework) => {
|
|
466
|
+
framework.getAgent('prime').getContextManager().addMessage('user', [{
|
|
467
|
+
type: 'tool_result',
|
|
468
|
+
toolUseId: 'call_cam',
|
|
469
|
+
toolName: 'mcpl--vst--camera',
|
|
470
|
+
content: `[ref_3_cc02] long.png — ${longType} — from tool result — fetch with fetch_reference`,
|
|
471
|
+
isError: false,
|
|
472
|
+
}]);
|
|
473
|
+
},
|
|
474
|
+
});
|
|
475
|
+
try {
|
|
476
|
+
const result = await waitForToolResult(h.framework, 'call_save');
|
|
477
|
+
assert.strictEqual(result.isError, true);
|
|
478
|
+
assert.ok(result.content.includes(`(ref_3_cc02, image/${'x'.repeat(113)}…, from`), result.content);
|
|
479
|
+
assert.match(result.content, /holds no record of it .*If its tool can produce it again, re-run that tool for a fresh reference\./);
|
|
480
|
+
assert.ok(!result.content.includes('Fetch it with fetch_reference'), result.content);
|
|
481
|
+
}
|
|
482
|
+
finally {
|
|
483
|
+
await h.framework.stop();
|
|
484
|
+
rmSync(h.tempDir, { recursive: true, force: true });
|
|
485
|
+
}
|
|
486
|
+
});
|
|
487
|
+
it('an image-typed RFC-005 reference stub with no record still occupies a failing slot', async () => {
|
|
352
488
|
const h = await startTurn({
|
|
353
489
|
prefix: 'sri-reference-',
|
|
354
490
|
responses: [
|
|
@@ -371,7 +507,7 @@ describe('save_recent_image provenance (issue #104)', () => {
|
|
|
371
507
|
const result = await waitForToolResult(h.framework, 'call_save');
|
|
372
508
|
assert.strictEqual(result.isError, true);
|
|
373
509
|
assert.match(result.content, /index 0 is a reference \(ref_1_ab3d, image\/png, from mcpl--vst--camera \(call call_cam\)\)/);
|
|
374
|
-
assert.match(result.content, /fetch_reference
|
|
510
|
+
assert.match(result.content, /holds no record of it/, 'no record here: fetch_reference could only call it unknown');
|
|
375
511
|
assert.strictEqual(await fileBytes(h, 'files/cam.png'), null);
|
|
376
512
|
// The text/plain reference is not an image slot: index 1 is the GIF.
|
|
377
513
|
const gif = saved(await waitForToolResult(h.framework, 'call_save_gif'));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"save-recent-image.test.js","sourceRoot":"","sources":["../../test/save-recent-image.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"save-recent-image.test.js","sourceRoot":"","sources":["../../test/save-recent-image.test.ts"],"names":[],"mappings":"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"}
|