@dotsetlabs/dotclaw 1.1.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/.env.example +54 -0
- package/LICENSE +21 -0
- package/README.md +111 -0
- package/config-examples/groups/global/CLAUDE.md +21 -0
- package/config-examples/groups/main/CLAUDE.md +47 -0
- package/config-examples/mount-allowlist.json +25 -0
- package/config-examples/plugin-http.json +18 -0
- package/config-examples/runtime.json +30 -0
- package/config-examples/tool-budgets.json +24 -0
- package/config-examples/tool-policy.json +51 -0
- package/container/.dockerignore +6 -0
- package/container/Dockerfile +74 -0
- package/container/agent-runner/package-lock.json +92 -0
- package/container/agent-runner/package.json +20 -0
- package/container/agent-runner/src/agent-config.ts +295 -0
- package/container/agent-runner/src/container-protocol.ts +73 -0
- package/container/agent-runner/src/daemon.ts +91 -0
- package/container/agent-runner/src/index.ts +1428 -0
- package/container/agent-runner/src/ipc.ts +321 -0
- package/container/agent-runner/src/memory.ts +336 -0
- package/container/agent-runner/src/prompt-packs.ts +341 -0
- package/container/agent-runner/src/tools.ts +1720 -0
- package/container/agent-runner/tsconfig.json +19 -0
- package/container/build.sh +23 -0
- package/container/skills/agent-browser.md +159 -0
- package/dist/admin-commands.d.ts +7 -0
- package/dist/admin-commands.d.ts.map +1 -0
- package/dist/admin-commands.js +87 -0
- package/dist/admin-commands.js.map +1 -0
- package/dist/agent-context.d.ts +42 -0
- package/dist/agent-context.d.ts.map +1 -0
- package/dist/agent-context.js +92 -0
- package/dist/agent-context.js.map +1 -0
- package/dist/agent-execution.d.ts +68 -0
- package/dist/agent-execution.d.ts.map +1 -0
- package/dist/agent-execution.js +169 -0
- package/dist/agent-execution.js.map +1 -0
- package/dist/agent-semaphore.d.ts +2 -0
- package/dist/agent-semaphore.d.ts.map +1 -0
- package/dist/agent-semaphore.js +52 -0
- package/dist/agent-semaphore.js.map +1 -0
- package/dist/behavior-config.d.ts +14 -0
- package/dist/behavior-config.d.ts.map +1 -0
- package/dist/behavior-config.js +52 -0
- package/dist/behavior-config.js.map +1 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +626 -0
- package/dist/cli.js.map +1 -0
- package/dist/config.d.ts +31 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +38 -0
- package/dist/config.js.map +1 -0
- package/dist/container-protocol.d.ts +72 -0
- package/dist/container-protocol.d.ts.map +1 -0
- package/dist/container-protocol.js +3 -0
- package/dist/container-protocol.js.map +1 -0
- package/dist/container-runner.d.ts +59 -0
- package/dist/container-runner.d.ts.map +1 -0
- package/dist/container-runner.js +813 -0
- package/dist/container-runner.js.map +1 -0
- package/dist/cost.d.ts +9 -0
- package/dist/cost.d.ts.map +1 -0
- package/dist/cost.js +11 -0
- package/dist/cost.js.map +1 -0
- package/dist/dashboard.d.ts +58 -0
- package/dist/dashboard.d.ts.map +1 -0
- package/dist/dashboard.js +471 -0
- package/dist/dashboard.js.map +1 -0
- package/dist/db.d.ts +99 -0
- package/dist/db.d.ts.map +1 -0
- package/dist/db.js +423 -0
- package/dist/db.js.map +1 -0
- package/dist/error-messages.d.ts +17 -0
- package/dist/error-messages.d.ts.map +1 -0
- package/dist/error-messages.js +109 -0
- package/dist/error-messages.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2072 -0
- package/dist/index.js.map +1 -0
- package/dist/locks.d.ts +2 -0
- package/dist/locks.d.ts.map +1 -0
- package/dist/locks.js +26 -0
- package/dist/locks.js.map +1 -0
- package/dist/logger.d.ts +4 -0
- package/dist/logger.d.ts.map +1 -0
- package/dist/logger.js +15 -0
- package/dist/logger.js.map +1 -0
- package/dist/maintenance.d.ts +13 -0
- package/dist/maintenance.d.ts.map +1 -0
- package/dist/maintenance.js +151 -0
- package/dist/maintenance.js.map +1 -0
- package/dist/memory-embeddings.d.ts +13 -0
- package/dist/memory-embeddings.d.ts.map +1 -0
- package/dist/memory-embeddings.js +126 -0
- package/dist/memory-embeddings.js.map +1 -0
- package/dist/memory-recall.d.ts +8 -0
- package/dist/memory-recall.d.ts.map +1 -0
- package/dist/memory-recall.js +127 -0
- package/dist/memory-recall.js.map +1 -0
- package/dist/memory-store.d.ts +149 -0
- package/dist/memory-store.d.ts.map +1 -0
- package/dist/memory-store.js +787 -0
- package/dist/memory-store.js.map +1 -0
- package/dist/metrics.d.ts +12 -0
- package/dist/metrics.d.ts.map +1 -0
- package/dist/metrics.js +134 -0
- package/dist/metrics.js.map +1 -0
- package/dist/model-registry.d.ts +67 -0
- package/dist/model-registry.d.ts.map +1 -0
- package/dist/model-registry.js +230 -0
- package/dist/model-registry.js.map +1 -0
- package/dist/mount-security.d.ts +37 -0
- package/dist/mount-security.d.ts.map +1 -0
- package/dist/mount-security.js +284 -0
- package/dist/mount-security.js.map +1 -0
- package/dist/paths.d.ts +80 -0
- package/dist/paths.d.ts.map +1 -0
- package/dist/paths.js +149 -0
- package/dist/paths.js.map +1 -0
- package/dist/personalization.d.ts +6 -0
- package/dist/personalization.d.ts.map +1 -0
- package/dist/personalization.js +180 -0
- package/dist/personalization.js.map +1 -0
- package/dist/progress.d.ts +15 -0
- package/dist/progress.d.ts.map +1 -0
- package/dist/progress.js +92 -0
- package/dist/progress.js.map +1 -0
- package/dist/runtime-config.d.ts +227 -0
- package/dist/runtime-config.d.ts.map +1 -0
- package/dist/runtime-config.js +297 -0
- package/dist/runtime-config.js.map +1 -0
- package/dist/task-scheduler.d.ts +9 -0
- package/dist/task-scheduler.d.ts.map +1 -0
- package/dist/task-scheduler.js +195 -0
- package/dist/task-scheduler.js.map +1 -0
- package/dist/telegram-format.d.ts +3 -0
- package/dist/telegram-format.d.ts.map +1 -0
- package/dist/telegram-format.js +200 -0
- package/dist/telegram-format.js.map +1 -0
- package/dist/tool-budgets.d.ts +16 -0
- package/dist/tool-budgets.d.ts.map +1 -0
- package/dist/tool-budgets.js +83 -0
- package/dist/tool-budgets.js.map +1 -0
- package/dist/tool-policy.d.ts +18 -0
- package/dist/tool-policy.d.ts.map +1 -0
- package/dist/tool-policy.js +84 -0
- package/dist/tool-policy.js.map +1 -0
- package/dist/trace-writer.d.ts +39 -0
- package/dist/trace-writer.d.ts.map +1 -0
- package/dist/trace-writer.js +27 -0
- package/dist/trace-writer.js.map +1 -0
- package/dist/types.d.ts +81 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/utils.d.ts +4 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +30 -0
- package/dist/utils.js.map +1 -0
- package/launchd/com.dotclaw.plist +32 -0
- package/package.json +89 -0
- package/scripts/autotune.js +53 -0
- package/scripts/bootstrap.js +348 -0
- package/scripts/configure.js +200 -0
- package/scripts/doctor.js +164 -0
- package/scripts/init.js +209 -0
- package/scripts/install.sh +219 -0
- package/systemd/dotclaw.service +22 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AACA,OAAO,EACL,UAAU,EACV,QAAQ,EACR,UAAU,EACV,SAAS,EACT,QAAQ,EAGR,iBAAiB,EACjB,oBAAoB,EACpB,QAAQ,EACT,MAAM,YAAY,CAAC;AAKpB,OAAO,EACL,UAAU,EACV,QAAQ,EACR,UAAU,EACV,SAAS,EACT,QAAQ,EACR,oBAAoB,EACpB,QAAQ,GACT,CAAC;AAGF,eAAO,MAAM,WAAW,QAAW,CAAC;AAEpC,eAAO,MAAM,cAAc,QAA8B,CAAC;AAC1D,eAAO,MAAM,uBAAuB,QAAwC,CAAC;AAE7E,eAAO,MAAM,iBAAiB,SAAS,CAAC;AACxC,eAAO,MAAM,wBAAwB,QAAoB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAG7B,eAAO,MAAM,gBAAgB,QAA6C,CAAC;AAC3E,eAAO,MAAM,SAAS,QAAuC,CAAC;AAC9D,eAAO,MAAM,iBAAiB,QAAgC,CAAC;AAE/D,eAAO,MAAM,eAAe,QAA+B,CAAC;AAC5D,eAAO,MAAM,iBAAiB,QAAmC,CAAC;AAClE,eAAO,MAAM,yBAAyB,QAAwC,CAAC;AAC/E,eAAO,MAAM,iBAAiB,QAAkC,CAAC;AACjE,eAAO,MAAM,cAAc,wBAA8B,CAAC;AAC1D,eAAO,MAAM,wBAAwB,QAAsC,CAAC;AAC5E,eAAO,MAAM,oBAAoB,QAAmC,CAAC;AACrE,eAAO,MAAM,gBAAgB,QAAgC,CAAC;AAC9D,eAAO,MAAM,cAAc,QAA8B,CAAC;AAC1D,eAAO,MAAM,uBAAuB,SAAsC,CAAC;AAC3E,eAAO,MAAM,oBAAoB,QAAmC,CAAC;AAErE,eAAO,MAAM,iBAAiB,QAAgC,CAAC;AAC/D,eAAO,MAAM,iBAAiB,QAAgC,CAAC;AAI/D,eAAO,MAAM,QAAQ,QAAwB,CAAC;AAE9C,eAAO,MAAM,qBAAqB,QAAqC,CAAC;AACxE,eAAO,MAAM,sBAAsB,QAA0C,CAAC;AAC9E,eAAO,MAAM,kBAAkB,SAAqC,CAAC;AACrE,eAAO,MAAM,oBAAoB,QAAmC,CAAC;AACrE,eAAO,MAAM,uBAAuB,QAAsC,CAAC"}
|
package/dist/config.js
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { loadRuntimeConfig } from './runtime-config.js';
|
|
2
|
+
import { CONFIG_DIR, DATA_DIR, GROUPS_DIR, STORE_DIR, LOGS_DIR, TRACES_DIR, PROMPTS_DIR, MODEL_CONFIG_PATH, MOUNT_ALLOWLIST_PATH, ENV_PATH, } from './paths.js';
|
|
3
|
+
const runtime = loadRuntimeConfig();
|
|
4
|
+
// Re-export paths for backwards compatibility
|
|
5
|
+
export { CONFIG_DIR, DATA_DIR, GROUPS_DIR, STORE_DIR, LOGS_DIR, MOUNT_ALLOWLIST_PATH, ENV_PATH, };
|
|
6
|
+
// Legacy alias
|
|
7
|
+
export const RUNTIME_DIR = DATA_DIR;
|
|
8
|
+
export const ASSISTANT_NAME = runtime.agent.assistantName;
|
|
9
|
+
export const SCHEDULER_POLL_INTERVAL = runtime.host.scheduler.pollIntervalMs;
|
|
10
|
+
export const MAIN_GROUP_FOLDER = 'main';
|
|
11
|
+
export const MODEL_CONFIG_PATH_EXPORT = MODEL_CONFIG_PATH;
|
|
12
|
+
export { MODEL_CONFIG_PATH };
|
|
13
|
+
// Use runtime config values with fallback to paths module defaults
|
|
14
|
+
export const PROMPT_PACKS_DIR = runtime.host.promptPacksDir || PROMPTS_DIR;
|
|
15
|
+
export const TRACE_DIR = runtime.host.trace.dir || TRACES_DIR;
|
|
16
|
+
export const TRACE_SAMPLE_RATE = runtime.host.trace.sampleRate;
|
|
17
|
+
export const CONTAINER_IMAGE = runtime.host.container.image;
|
|
18
|
+
export const CONTAINER_TIMEOUT = runtime.host.container.timeoutMs;
|
|
19
|
+
export const CONTAINER_MAX_OUTPUT_SIZE = runtime.host.container.maxOutputBytes;
|
|
20
|
+
export const IPC_POLL_INTERVAL = runtime.host.ipc.pollIntervalMs;
|
|
21
|
+
export const CONTAINER_MODE = runtime.host.container.mode;
|
|
22
|
+
export const CONTAINER_DAEMON_POLL_MS = runtime.host.container.daemonPollMs;
|
|
23
|
+
export const CONTAINER_PIDS_LIMIT = runtime.host.container.pidsLimit;
|
|
24
|
+
export const CONTAINER_MEMORY = runtime.host.container.memory;
|
|
25
|
+
export const CONTAINER_CPUS = runtime.host.container.cpus;
|
|
26
|
+
export const CONTAINER_READONLY_ROOT = runtime.host.container.readOnlyRoot;
|
|
27
|
+
export const CONTAINER_TMPFS_SIZE = runtime.host.container.tmpfsSize;
|
|
28
|
+
export const CONTAINER_RUN_UID = runtime.host.container.runUid;
|
|
29
|
+
export const CONTAINER_RUN_GID = runtime.host.container.runGid;
|
|
30
|
+
// Timezone for scheduled tasks (cron expressions, etc.)
|
|
31
|
+
// Uses system timezone by default
|
|
32
|
+
export const TIMEZONE = runtime.host.timezone;
|
|
33
|
+
export const MAX_CONCURRENT_AGENTS = runtime.host.concurrency.maxAgents;
|
|
34
|
+
export const AGENT_QUEUE_TIMEOUT_MS = runtime.host.concurrency.queueTimeoutMs;
|
|
35
|
+
export const WARM_START_ENABLED = runtime.host.concurrency.warmStart;
|
|
36
|
+
export const TRACE_RETENTION_DAYS = runtime.host.trace.retentionDays;
|
|
37
|
+
export const MAINTENANCE_INTERVAL_MS = runtime.host.maintenance.intervalMs;
|
|
38
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
export declare const OUTPUT_START_MARKER = "---DOTCLAW_OUTPUT_START---";
|
|
2
|
+
export declare const OUTPUT_END_MARKER = "---DOTCLAW_OUTPUT_END---";
|
|
3
|
+
export interface ContainerInput {
|
|
4
|
+
prompt: string;
|
|
5
|
+
sessionId?: string;
|
|
6
|
+
groupFolder: string;
|
|
7
|
+
chatJid: string;
|
|
8
|
+
isMain: boolean;
|
|
9
|
+
isScheduledTask?: boolean;
|
|
10
|
+
isBackgroundTask?: boolean;
|
|
11
|
+
taskId?: string;
|
|
12
|
+
userId?: string;
|
|
13
|
+
userName?: string;
|
|
14
|
+
memoryRecall?: string[];
|
|
15
|
+
userProfile?: string | null;
|
|
16
|
+
memoryStats?: {
|
|
17
|
+
total: number;
|
|
18
|
+
user: number;
|
|
19
|
+
group: number;
|
|
20
|
+
global: number;
|
|
21
|
+
};
|
|
22
|
+
tokenEstimate?: {
|
|
23
|
+
tokens_per_char: number;
|
|
24
|
+
tokens_per_message: number;
|
|
25
|
+
tokens_per_request: number;
|
|
26
|
+
};
|
|
27
|
+
toolReliability?: Array<{
|
|
28
|
+
name: string;
|
|
29
|
+
success_rate: number;
|
|
30
|
+
count: number;
|
|
31
|
+
avg_duration_ms: number | null;
|
|
32
|
+
}>;
|
|
33
|
+
behaviorConfig?: Record<string, unknown>;
|
|
34
|
+
toolPolicy?: Record<string, unknown>;
|
|
35
|
+
modelOverride?: string;
|
|
36
|
+
modelContextTokens?: number;
|
|
37
|
+
modelMaxOutputTokens?: number;
|
|
38
|
+
modelTemperature?: number;
|
|
39
|
+
streaming?: {
|
|
40
|
+
enabled?: boolean;
|
|
41
|
+
draftId?: number;
|
|
42
|
+
minIntervalMs?: number;
|
|
43
|
+
minChars?: number;
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
export interface ContainerOutput {
|
|
47
|
+
status: 'success' | 'error';
|
|
48
|
+
result: string | null;
|
|
49
|
+
newSessionId?: string;
|
|
50
|
+
error?: string;
|
|
51
|
+
model?: string;
|
|
52
|
+
prompt_pack_versions?: Record<string, string>;
|
|
53
|
+
memory_summary?: string;
|
|
54
|
+
memory_facts?: string[];
|
|
55
|
+
tokens_prompt?: number;
|
|
56
|
+
tokens_completion?: number;
|
|
57
|
+
memory_recall_count?: number;
|
|
58
|
+
session_recall_count?: number;
|
|
59
|
+
memory_items_upserted?: number;
|
|
60
|
+
memory_items_extracted?: number;
|
|
61
|
+
tool_calls?: Array<{
|
|
62
|
+
name: string;
|
|
63
|
+
args?: unknown;
|
|
64
|
+
ok: boolean;
|
|
65
|
+
duration_ms?: number;
|
|
66
|
+
error?: string;
|
|
67
|
+
output_bytes?: number;
|
|
68
|
+
output_truncated?: boolean;
|
|
69
|
+
}>;
|
|
70
|
+
latency_ms?: number;
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=container-protocol.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"container-protocol.d.ts","sourceRoot":"","sources":["../src/container-protocol.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"container-protocol.js","sourceRoot":"","sources":["../src/container-protocol.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,mBAAmB,GAAG,4BAA4B,CAAC;AAChE,MAAM,CAAC,MAAM,iBAAiB,GAAG,0BAA0B,CAAC"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Container Runner for DotClaw
|
|
3
|
+
* Spawns agent execution in Docker container and handles IPC
|
|
4
|
+
*/
|
|
5
|
+
import { RegisteredGroup } from './types.js';
|
|
6
|
+
import type { ContainerInput, ContainerOutput } from './container-protocol.js';
|
|
7
|
+
/**
|
|
8
|
+
* Check if a daemon container is healthy by reading its heartbeat file
|
|
9
|
+
*/
|
|
10
|
+
export declare function checkDaemonHealth(groupFolder: string): {
|
|
11
|
+
healthy: boolean;
|
|
12
|
+
lastHeartbeat?: number;
|
|
13
|
+
ageMs?: number;
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* Restart a daemon container if unhealthy
|
|
17
|
+
*/
|
|
18
|
+
export declare function restartDaemonContainer(group: RegisteredGroup, isMain: boolean): void;
|
|
19
|
+
/**
|
|
20
|
+
* Perform health check on all daemon containers and restart if needed
|
|
21
|
+
*/
|
|
22
|
+
export declare function performDaemonHealthChecks(getRegisteredGroups: () => Record<string, RegisteredGroup>, mainGroupFolder: string): void;
|
|
23
|
+
/**
|
|
24
|
+
* Start the daemon health check loop
|
|
25
|
+
*/
|
|
26
|
+
export declare function startDaemonHealthCheckLoop(getRegisteredGroups: () => Record<string, RegisteredGroup>, mainGroupFolder: string): void;
|
|
27
|
+
/**
|
|
28
|
+
* Stop the daemon health check loop
|
|
29
|
+
*/
|
|
30
|
+
export declare function stopDaemonHealthCheckLoop(): void;
|
|
31
|
+
export declare function warmGroupContainer(group: RegisteredGroup, isMain: boolean): void;
|
|
32
|
+
export declare function runContainerAgent(group: RegisteredGroup, input: ContainerInput, options?: {
|
|
33
|
+
abortSignal?: AbortSignal;
|
|
34
|
+
}): Promise<ContainerOutput>;
|
|
35
|
+
export declare function writeTasksSnapshot(groupFolder: string, isMain: boolean, tasks: Array<{
|
|
36
|
+
id: string;
|
|
37
|
+
groupFolder: string;
|
|
38
|
+
prompt: string;
|
|
39
|
+
schedule_type: string;
|
|
40
|
+
schedule_value: string;
|
|
41
|
+
status: string;
|
|
42
|
+
next_run: string | null;
|
|
43
|
+
state_json?: string | null;
|
|
44
|
+
retry_count?: number | null;
|
|
45
|
+
last_error?: string | null;
|
|
46
|
+
}>): void;
|
|
47
|
+
export interface AvailableGroup {
|
|
48
|
+
jid: string;
|
|
49
|
+
name: string;
|
|
50
|
+
lastActivity: string;
|
|
51
|
+
isRegistered: boolean;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Write available groups snapshot for the container to read.
|
|
55
|
+
* Only main group can see all available groups (for activation).
|
|
56
|
+
* Non-main groups only see their own registration status.
|
|
57
|
+
*/
|
|
58
|
+
export declare function writeGroupsSnapshot(groupFolder: string, isMain: boolean, groups: AvailableGroup[]): void;
|
|
59
|
+
//# sourceMappingURL=container-runner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"container-runner.d.ts","sourceRoot":"","sources":["../src/container-runner.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAyBH,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAI7C,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAmV/E;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAoBnH;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI,CAcpF;AAMD;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,mBAAmB,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,EAC1D,eAAe,EAAE,MAAM,GACtB,IAAI,CAoCN;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,mBAAmB,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,EAC1D,eAAe,EAAE,MAAM,GACtB,IAAI,CASN;AAED;;GAEG;AACH,wBAAgB,yBAAyB,IAAI,IAAI,CAKhD;AAoBD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI,CAIhF;AAuDD,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,cAAc,EACrB,OAAO,CAAC,EAAE;IAAE,WAAW,CAAC,EAAE,WAAW,CAAA;CAAE,GACtC,OAAO,CAAC,eAAe,CAAC,CA8Q1B;AAwED,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,OAAO,EACf,KAAK,EAAE,KAAK,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B,CAAC,GACD,IAAI,CAYN;AAED,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;CACvB;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,OAAO,EACf,MAAM,EAAE,cAAc,EAAE,GACvB,IAAI,CAYN"}
|