managed-deepagents 0.10.0-dev.17 → 0.10.0-dev.19
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 +530 -83
- package/dist/browser.d.ts +37 -0
- package/dist/browser.d.ts.map +1 -0
- package/dist/browser.js +31 -0
- package/dist/browser.js.map +1 -0
- package/dist/channels/actor.d.ts +43 -0
- package/dist/channels/actor.d.ts.map +1 -0
- package/dist/channels/actor.js +2 -0
- package/dist/channels/actor.js.map +1 -0
- package/dist/channels/assistant-text.d.ts +29 -0
- package/dist/channels/assistant-text.d.ts.map +1 -1
- package/dist/channels/assistant-text.js +72 -1
- package/dist/channels/assistant-text.js.map +1 -1
- package/dist/channels/binding.d.ts +20 -1
- package/dist/channels/binding.d.ts.map +1 -1
- package/dist/channels/binding.js +44 -11
- package/dist/channels/binding.js.map +1 -1
- package/dist/channels/delivery.d.ts +36 -0
- package/dist/channels/delivery.d.ts.map +1 -0
- package/dist/channels/delivery.js +359 -0
- package/dist/channels/delivery.js.map +1 -0
- package/dist/channels/github/app-setup.d.ts +32 -0
- package/dist/channels/github/app-setup.d.ts.map +1 -0
- package/dist/channels/github/app-setup.js +146 -0
- package/dist/channels/github/app-setup.js.map +1 -0
- package/dist/channels/github/index.d.ts.map +1 -1
- package/dist/channels/github/index.js +21 -33
- package/dist/channels/github/index.js.map +1 -1
- package/dist/channels/github/schema.d.ts +50 -1
- package/dist/channels/github/schema.d.ts.map +1 -1
- package/dist/channels/github/schema.js +12 -0
- package/dist/channels/github/schema.js.map +1 -1
- package/dist/channels/http/endpoint.d.ts +6 -4
- package/dist/channels/http/endpoint.d.ts.map +1 -1
- package/dist/channels/http/endpoint.js.map +1 -1
- package/dist/channels/http/http.d.ts.map +1 -1
- package/dist/channels/http/http.js +4 -10
- package/dist/channels/http/http.js.map +1 -1
- package/dist/channels/http/index.d.ts +6 -0
- package/dist/channels/http/index.d.ts.map +1 -1
- package/dist/channels/http/index.js +32 -23
- package/dist/channels/http/index.js.map +1 -1
- package/dist/channels/http/ingress.d.ts +2 -2
- package/dist/channels/http/ingress.d.ts.map +1 -1
- package/dist/channels/http/ingress.js +9 -21
- package/dist/channels/http/ingress.js.map +1 -1
- package/dist/channels/http/provider.d.ts +10 -5
- package/dist/channels/http/provider.d.ts.map +1 -1
- package/dist/channels/http/provider.js +17 -10
- package/dist/channels/http/provider.js.map +1 -1
- package/dist/channels/http/studio.d.ts +5 -5
- package/dist/channels/http/studio.d.ts.map +1 -1
- package/dist/channels/http/studio.js +4 -6
- package/dist/channels/http/studio.js.map +1 -1
- package/dist/channels/http/types.d.ts +7 -1
- package/dist/channels/http/types.d.ts.map +1 -1
- package/dist/channels/linear/app-setup.d.ts +29 -0
- package/dist/channels/linear/app-setup.d.ts.map +1 -0
- package/dist/channels/linear/app-setup.js +102 -0
- package/dist/channels/linear/app-setup.js.map +1 -0
- package/dist/channels/linear/index.d.ts.map +1 -1
- package/dist/channels/linear/index.js +26 -65
- package/dist/channels/linear/index.js.map +1 -1
- package/dist/channels/linear/schema.d.ts +11 -25
- package/dist/channels/linear/schema.d.ts.map +1 -1
- package/dist/channels/linear/schema.js +6 -0
- package/dist/channels/linear/schema.js.map +1 -1
- package/dist/channels/linear/types.d.ts +9 -2
- package/dist/channels/linear/types.d.ts.map +1 -1
- package/dist/channels/messaging-registry.d.ts +16 -0
- package/dist/channels/messaging-registry.d.ts.map +1 -1
- package/dist/channels/messaging-registry.js +29 -0
- package/dist/channels/messaging-registry.js.map +1 -1
- package/dist/channels/reserved-connections.d.ts.map +1 -1
- package/dist/channels/reserved-connections.js +10 -0
- package/dist/channels/reserved-connections.js.map +1 -1
- package/dist/channels/run-input.d.ts +11 -0
- package/dist/channels/run-input.d.ts.map +1 -1
- package/dist/channels/run-input.js +18 -8
- package/dist/channels/run-input.js.map +1 -1
- package/dist/channels/runtime.d.ts +5 -2
- package/dist/channels/runtime.d.ts.map +1 -1
- package/dist/channels/runtime.js +19 -10
- package/dist/channels/runtime.js.map +1 -1
- package/dist/channels/schedule-delivery.d.ts +2 -13
- package/dist/channels/schedule-delivery.d.ts.map +1 -1
- package/dist/channels/schedule-delivery.js +6 -73
- package/dist/channels/schedule-delivery.js.map +1 -1
- package/dist/channels/slack/api.d.ts +2 -0
- package/dist/channels/slack/api.d.ts.map +1 -1
- package/dist/channels/slack/api.js +6 -0
- package/dist/channels/slack/api.js.map +1 -1
- package/dist/channels/slack/connections.d.ts +6 -0
- package/dist/channels/slack/connections.d.ts.map +1 -0
- package/dist/channels/slack/connections.js +6 -0
- package/dist/channels/slack/connections.js.map +1 -0
- package/dist/channels/slack/events.d.ts +272 -0
- package/dist/channels/slack/events.d.ts.map +1 -0
- package/dist/channels/slack/events.js +235 -0
- package/dist/channels/slack/events.js.map +1 -0
- package/dist/channels/slack/files.d.ts.map +1 -1
- package/dist/channels/slack/files.js +2 -3
- package/dist/channels/slack/files.js.map +1 -1
- package/dist/channels/slack/index.d.ts +44 -2
- package/dist/channels/slack/index.d.ts.map +1 -1
- package/dist/channels/slack/index.js +127 -3
- package/dist/channels/slack/index.js.map +1 -1
- package/dist/channels/slack/message-content.d.ts.map +1 -1
- package/dist/channels/slack/message-content.js +23 -28
- package/dist/channels/slack/message-content.js.map +1 -1
- package/dist/channels/slack/status.d.ts +76 -0
- package/dist/channels/slack/status.d.ts.map +1 -0
- package/dist/channels/slack/status.js +427 -0
- package/dist/channels/slack/status.js.map +1 -0
- package/dist/channels/trigger/client.d.ts.map +1 -1
- package/dist/channels/trigger/client.js +6 -9
- package/dist/channels/trigger/client.js.map +1 -1
- package/dist/channels/trigger/conversation.d.ts +11 -0
- package/dist/channels/trigger/conversation.d.ts.map +1 -0
- package/dist/channels/trigger/conversation.js +72 -0
- package/dist/channels/trigger/conversation.js.map +1 -0
- package/dist/channels/trigger/http.d.ts +123 -4
- package/dist/channels/trigger/http.d.ts.map +1 -1
- package/dist/channels/trigger/http.js +331 -76
- package/dist/channels/trigger/http.js.map +1 -1
- package/dist/channels/trigger/ingress.d.ts +70 -1
- package/dist/channels/trigger/ingress.d.ts.map +1 -1
- package/dist/channels/trigger/ingress.js +136 -7
- package/dist/channels/trigger/ingress.js.map +1 -1
- package/dist/channels/trigger/transport.d.ts +10 -0
- package/dist/channels/trigger/transport.d.ts.map +1 -1
- package/dist/channels/trigger/transport.js +25 -9
- package/dist/channels/trigger/transport.js.map +1 -1
- package/dist/channels/trigger/types.d.ts +92 -3
- package/dist/channels/trigger/types.d.ts.map +1 -1
- package/dist/channels/trigger/types.js +36 -0
- package/dist/channels/trigger/types.js.map +1 -1
- package/dist/channels/types.d.ts +43 -4
- package/dist/channels/types.d.ts.map +1 -1
- package/dist/channels/types.js +2 -0
- package/dist/channels/types.js.map +1 -1
- package/dist/define-deep-agent.d.ts +2 -2
- package/dist/define-deep-agent.d.ts.map +1 -1
- package/dist/define-deep-agent.js +53 -8
- package/dist/define-deep-agent.js.map +1 -1
- package/dist/index.d.ts +9 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/ingress/runs.d.ts +22 -0
- package/dist/ingress/runs.d.ts.map +1 -1
- package/dist/ingress/runs.js +45 -1
- package/dist/ingress/runs.js.map +1 -1
- package/dist/managed-composition.d.ts +3 -0
- package/dist/managed-composition.d.ts.map +1 -1
- package/dist/managed-composition.js +29 -13
- package/dist/managed-composition.js.map +1 -1
- package/dist/namespaces.d.ts +0 -21
- package/dist/namespaces.d.ts.map +1 -1
- package/dist/namespaces.js +0 -29
- package/dist/namespaces.js.map +1 -1
- package/dist/runtime/async-subagents.d.ts +27 -0
- package/dist/runtime/async-subagents.d.ts.map +1 -0
- package/dist/runtime/async-subagents.js +139 -0
- package/dist/runtime/async-subagents.js.map +1 -0
- package/dist/runtime/auth.d.ts +1 -2
- package/dist/runtime/auth.d.ts.map +1 -1
- package/dist/runtime/auth.js +125 -63
- package/dist/runtime/auth.js.map +1 -1
- package/dist/runtime/backend.d.ts +7 -0
- package/dist/runtime/backend.d.ts.map +1 -1
- package/dist/runtime/backend.js +32 -7
- package/dist/runtime/backend.js.map +1 -1
- package/dist/runtime/browser-facade.d.ts +10 -0
- package/dist/runtime/browser-facade.d.ts.map +1 -0
- package/dist/runtime/browser-facade.js +23 -0
- package/dist/runtime/browser-facade.js.map +1 -0
- package/dist/runtime/browser-langsmith.d.ts +108 -0
- package/dist/runtime/browser-langsmith.d.ts.map +1 -0
- package/dist/runtime/browser-langsmith.js +379 -0
- package/dist/runtime/browser-langsmith.js.map +1 -0
- package/dist/runtime/browser-selection.d.ts +10 -0
- package/dist/runtime/browser-selection.d.ts.map +1 -0
- package/dist/runtime/browser-selection.js +21 -0
- package/dist/runtime/browser-selection.js.map +1 -0
- package/dist/runtime/browser.d.ts +125 -0
- package/dist/runtime/browser.d.ts.map +1 -0
- package/dist/runtime/browser.js +606 -0
- package/dist/runtime/browser.js.map +1 -0
- package/dist/runtime/identity-runtime.d.ts +4 -9
- package/dist/runtime/identity-runtime.d.ts.map +1 -1
- package/dist/runtime/identity-runtime.js +12 -25
- package/dist/runtime/identity-runtime.js.map +1 -1
- package/dist/runtime/index.d.ts +38 -1
- package/dist/runtime/index.d.ts.map +1 -1
- package/dist/runtime/index.js +74 -34
- package/dist/runtime/index.js.map +1 -1
- package/dist/runtime/managed-thread.d.ts +61 -0
- package/dist/runtime/managed-thread.d.ts.map +1 -0
- package/dist/runtime/managed-thread.js +76 -0
- package/dist/runtime/managed-thread.js.map +1 -0
- package/dist/runtime/managed-tools.d.ts +10 -2
- package/dist/runtime/managed-tools.d.ts.map +1 -1
- package/dist/runtime/managed-tools.js +10 -8
- package/dist/runtime/managed-tools.js.map +1 -1
- package/dist/runtime/memory/policy.d.ts.map +1 -1
- package/dist/runtime/memory/policy.js +1 -3
- package/dist/runtime/memory/policy.js.map +1 -1
- package/dist/runtime/parent-run.d.ts +33 -0
- package/dist/runtime/parent-run.d.ts.map +1 -0
- package/dist/runtime/parent-run.js +114 -0
- package/dist/runtime/parent-run.js.map +1 -0
- package/dist/runtime/run-input.d.ts +14 -1
- package/dist/runtime/run-input.d.ts.map +1 -1
- package/dist/runtime/run-input.js +75 -6
- package/dist/runtime/run-input.js.map +1 -1
- package/dist/runtime/sandbox-manager.d.ts +14 -1
- package/dist/runtime/sandbox-manager.d.ts.map +1 -1
- package/dist/runtime/sandbox-manager.js +34 -9
- package/dist/runtime/sandbox-manager.js.map +1 -1
- package/dist/runtime/schedule-auth.d.ts +79 -0
- package/dist/runtime/schedule-auth.d.ts.map +1 -1
- package/dist/runtime/schedule-auth.js +163 -6
- package/dist/runtime/schedule-auth.js.map +1 -1
- package/dist/runtime/static-entry.d.ts.map +1 -1
- package/dist/runtime/static-entry.js +1 -0
- package/dist/runtime/static-entry.js.map +1 -1
- package/dist/runtime/thread-record.d.ts +88 -0
- package/dist/runtime/thread-record.d.ts.map +1 -0
- package/dist/runtime/thread-record.js +213 -0
- package/dist/runtime/thread-record.js.map +1 -0
- package/dist/runtime/types.d.ts +12 -1
- package/dist/runtime/types.d.ts.map +1 -1
- package/dist/runtime-schedules.d.ts +13 -0
- package/dist/runtime-schedules.d.ts.map +1 -1
- package/dist/runtime-schedules.js +83 -20
- package/dist/runtime-schedules.js.map +1 -1
- package/dist/sandbox.d.ts +0 -6
- package/dist/sandbox.d.ts.map +1 -1
- package/dist/sandbox.js +3 -7
- package/dist/sandbox.js.map +1 -1
- package/dist/schedule-channel.d.ts +5 -2
- package/dist/schedule-channel.d.ts.map +1 -1
- package/dist/schedule-channel.js +13 -12
- package/dist/schedule-channel.js.map +1 -1
- package/dist/types.d.ts +19 -2
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/values.d.ts +15 -0
- package/dist/values.d.ts.map +1 -0
- package/dist/values.js +31 -0
- package/dist/values.js.map +1 -0
- package/package.json +22 -8
- package/dist/channels/http/reply.d.ts +0 -20
- package/dist/channels/http/reply.d.ts.map +0 -1
- package/dist/channels/http/reply.js +0 -116
- package/dist/channels/http/reply.js.map +0 -1
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Browser use: Stagehand's TypeScript facade tools on a LangSmith browser.
|
|
3
|
+
*
|
|
4
|
+
* A browser per key (`thread:<id>`, or `user:<id>` under user scope). A
|
|
5
|
+
* thread's own browser has one window, `mda`; a user's has a window per
|
|
6
|
+
* thread, so their threads share logins but not tabs. Each browser has one
|
|
7
|
+
* Stagehand client in this process (the extension serves one at a time),
|
|
8
|
+
* released between runs and after a minute idle so the browser can idle out.
|
|
9
|
+
*
|
|
10
|
+
* `browser_handoff` hands the window to the user and returns at once. A run of
|
|
11
|
+
* the watcher graph, which `mda` builds beside the agent, waits on its own
|
|
12
|
+
* thread for the user to hand it back, then enqueues a run on the agent's
|
|
13
|
+
* thread with a notification, as an async subagent tells the agent that
|
|
14
|
+
* started it that it finished.
|
|
15
|
+
*
|
|
16
|
+
* The middleware half of Python's `browser.py`; `browser-langsmith.ts` holds
|
|
17
|
+
* the LangSmith half. Only projects that declare `browser.ts` import this
|
|
18
|
+
* module or install Stagehand.
|
|
19
|
+
*/
|
|
20
|
+
import { type LangGraphRunnableConfig } from "@langchain/langgraph";
|
|
21
|
+
import { Client } from "@langchain/langgraph-sdk";
|
|
22
|
+
import { type BackendProtocolV2, type SandboxBackendProtocolV2 } from "deepagents";
|
|
23
|
+
import { type AgentMiddleware } from "langchain";
|
|
24
|
+
import type { BrowserDefinition, BrowserScope } from "../browser.js";
|
|
25
|
+
import { type BrowserHandoffStatus, type PendingBrowserHandoff } from "./browser-langsmith.js";
|
|
26
|
+
import type { ManagedServerInfo } from "./managed-tools.js";
|
|
27
|
+
/** The graph `mda` builds beside the agent, whose run waits out a handoff. */
|
|
28
|
+
export declare const HANDOFF_WATCHER_GRAPH = "mda-browser-handoff";
|
|
29
|
+
/** What tools and hooks read from their runtime; MDA adds `serverInfo` and `backend`. */
|
|
30
|
+
interface BrowserRuntime {
|
|
31
|
+
configurable?: Record<string, unknown>;
|
|
32
|
+
serverInfo?: ManagedServerInfo;
|
|
33
|
+
backend?: BackendProtocolV2;
|
|
34
|
+
state?: unknown;
|
|
35
|
+
context?: unknown;
|
|
36
|
+
toolCallId?: string;
|
|
37
|
+
}
|
|
38
|
+
/** Give the agent Stagehand's tools, named `browser_run`, `browser_snapshot` and so on. */
|
|
39
|
+
export declare function createBrowserMiddleware(options: Omit<BrowserDefinition, "kind">): AgentMiddleware;
|
|
40
|
+
/**
|
|
41
|
+
* Start a run of the watcher graph on a thread of its own, as deepagents starts
|
|
42
|
+
* an async subagent's task: the thread's metadata names this agent, which the
|
|
43
|
+
* Agent Server copies into the run, and the run gets this run's context.
|
|
44
|
+
*
|
|
45
|
+
* The wait is a run rather than a promise in this process, so the wake-up comes
|
|
46
|
+
* from a live run, the only caller a deployed graph's Agent Server takes.
|
|
47
|
+
*/
|
|
48
|
+
export declare function startWatcher(client: Client, runtime: BrowserRuntime, handoff: PendingBrowserHandoff): Promise<void>;
|
|
49
|
+
declare const WatcherState: import("@langchain/langgraph").AnnotationRoot<{
|
|
50
|
+
handoff: import("@langchain/langgraph").LastValue<{
|
|
51
|
+
browser: string;
|
|
52
|
+
window_id: string;
|
|
53
|
+
until: number;
|
|
54
|
+
}>;
|
|
55
|
+
}>;
|
|
56
|
+
/**
|
|
57
|
+
* Once the handoff ends, notify the agent that started it, unless it has moved
|
|
58
|
+
* on: a newer handoff replaced this one, or the agent waits on a person, where
|
|
59
|
+
* a new run would drop what it waits for. Its browser tools work again either way.
|
|
60
|
+
*/
|
|
61
|
+
export declare function watch(state: typeof WatcherState.State, config: LangGraphRunnableConfig): Promise<Partial<typeof WatcherState.State>>;
|
|
62
|
+
/** The watcher graph: one run per handoff, from `browser_handoff` until it ends. */
|
|
63
|
+
export declare const handoffWatcher: import("@langchain/langgraph").CompiledStateGraph<{
|
|
64
|
+
handoff: {
|
|
65
|
+
browser: string;
|
|
66
|
+
window_id: string;
|
|
67
|
+
until: number;
|
|
68
|
+
};
|
|
69
|
+
}, {
|
|
70
|
+
handoff?: {
|
|
71
|
+
browser: string;
|
|
72
|
+
window_id: string;
|
|
73
|
+
until: number;
|
|
74
|
+
} | undefined;
|
|
75
|
+
}, "__start__" | "watch", {
|
|
76
|
+
handoff: import("@langchain/langgraph").LastValue<{
|
|
77
|
+
browser: string;
|
|
78
|
+
window_id: string;
|
|
79
|
+
until: number;
|
|
80
|
+
}>;
|
|
81
|
+
}, {
|
|
82
|
+
handoff: import("@langchain/langgraph").LastValue<{
|
|
83
|
+
browser: string;
|
|
84
|
+
window_id: string;
|
|
85
|
+
until: number;
|
|
86
|
+
}>;
|
|
87
|
+
}, import("@langchain/langgraph").StateDefinition, {
|
|
88
|
+
watch: Partial<import("@langchain/langgraph").StateType<{
|
|
89
|
+
handoff: import("@langchain/langgraph").LastValue<{
|
|
90
|
+
browser: string;
|
|
91
|
+
window_id: string;
|
|
92
|
+
until: number;
|
|
93
|
+
}>;
|
|
94
|
+
}>>;
|
|
95
|
+
}, unknown, unknown, []>;
|
|
96
|
+
/**
|
|
97
|
+
* A notification in deepagents' task notification's shape: a user-role message
|
|
98
|
+
* framed as a system notification. Its `mda_notification` tells clients how the
|
|
99
|
+
* handoff ended, so they can tell it from the user's message.
|
|
100
|
+
*/
|
|
101
|
+
export declare function wakeMessage(status: BrowserHandoffStatus): {
|
|
102
|
+
role: string;
|
|
103
|
+
content: string;
|
|
104
|
+
additional_kwargs: {
|
|
105
|
+
mda_notification: {
|
|
106
|
+
type: string;
|
|
107
|
+
status: BrowserHandoffStatus;
|
|
108
|
+
};
|
|
109
|
+
};
|
|
110
|
+
};
|
|
111
|
+
/** Write `data` to absolute `path` in the agent's sandbox, creating its folder. */
|
|
112
|
+
export declare function save(backend: BackendProtocolV2 | undefined, path: string, data: Uint8Array): Promise<string>;
|
|
113
|
+
/** Under user scope, a person's browser; service principals stand for many people. */
|
|
114
|
+
export declare function browserKey(serverInfo: ManagedServerInfo | undefined, thread: string, scope: BrowserScope): string;
|
|
115
|
+
/**
|
|
116
|
+
* The run's sandbox once MDA has opened it; the browser never opens one.
|
|
117
|
+
*
|
|
118
|
+
* Tools see it through a lazy handle made fresh for each run, so the handle
|
|
119
|
+
* asks the process whether the box is open.
|
|
120
|
+
*/
|
|
121
|
+
export declare function threadSandbox(backend: BackendProtocolV2 | undefined): SandboxBackendProtocolV2 | undefined;
|
|
122
|
+
/** Close every session and stop its timer, for tests. */
|
|
123
|
+
export declare function clearBrowserSessionsForTests(): Promise<void>;
|
|
124
|
+
export {};
|
|
125
|
+
//# sourceMappingURL=browser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../src/runtime/browser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAYH,OAAO,EAML,KAAK,uBAAuB,EAC7B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAEL,KAAK,iBAAiB,EAEtB,KAAK,wBAAwB,EAC9B,MAAM,YAAY,CAAC;AACpB,OAAO,EAAoB,KAAK,eAAe,EAAE,MAAM,WAAW,CAAC;AAGnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAUrE,OAAO,EAQL,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAE3B,MAAM,wBAAwB,CAAC;AAKhC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAyC5D,8EAA8E;AAC9E,eAAO,MAAM,qBAAqB,wBAAwB,CAAC;AAS3D,yFAAyF;AACzF,UAAU,cAAc;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAsCD,2FAA2F;AAC3F,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC,GACvC,eAAe,CAkEjB;AAyFD;;;;;;;GAOG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,IAAI,CAAC,CAaf;AAED,QAAA,MAAM,YAAY;;;;;;EAEhB,CAAC;AAEH;;;;GAIG;AACH,wBAAsB,KAAK,CACzB,KAAK,EAAE,OAAO,YAAY,CAAC,KAAK,EAChC,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,OAAO,CAAC,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC,CA0B7C;AAED,oFAAoF;AACpF,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBAIf,CAAC;AA2Db;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,oBAAoB;;;;;;;;;EAQvD;AAuKD,mFAAmF;AACnF,wBAAsB,IAAI,CACxB,OAAO,EAAE,iBAAiB,GAAG,SAAS,EACtC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,MAAM,CAAC,CAoBjB;AASD,sFAAsF;AACtF,wBAAgB,UAAU,CACxB,UAAU,EAAE,iBAAiB,GAAG,SAAS,EACzC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,YAAY,GAClB,MAAM,CASR;AAiBD;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,iBAAiB,GAAG,SAAS,GACrC,wBAAwB,GAAG,SAAS,CAKtC;AAmBD,yDAAyD;AACzD,wBAAsB,4BAA4B,IAAI,OAAO,CAAC,IAAI,CAAC,CAOlE"}
|