@workbench-ai/agent-driver-anthropic-claude-code 0.0.44
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/global-skills.d.ts +6 -0
- package/dist/global-skills.d.ts.map +1 -0
- package/dist/global-skills.js +35 -0
- package/dist/index.d.ts +230 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1138 -0
- package/dist/workbench-auth.d.ts +69 -0
- package/dist/workbench-auth.d.ts.map +1 -0
- package/dist/workbench-auth.js +212 -0
- package/package.json +44 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"global-skills.d.ts","sourceRoot":"","sources":["../src/global-skills.ts"],"names":[],"mappings":"AAgBA,wBAAsB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAS3E;AAED,wBAAsB,yBAAyB,CAAC,IAAI,EAAE;IACpD,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;CACvB,GAAG,OAAO,CAAC,IAAI,CAAC,CAehB"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { promises as fs } from "node:fs";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
import { projectGlobalSkills, syncEnabledGlobalSkillsToTarget, } from "@workbench-ai/agent-driver";
|
|
4
|
+
function claudeSkillsRoot(homeDir) {
|
|
5
|
+
return path.join(homeDir, ".claude", "skills");
|
|
6
|
+
}
|
|
7
|
+
function claudeDisabledSkillsRoot(homeDir) {
|
|
8
|
+
return path.join(homeDir, ".claude", ".disabled-skills");
|
|
9
|
+
}
|
|
10
|
+
export async function syncClaudeGlobalSkills(homeDir) {
|
|
11
|
+
await syncEnabledGlobalSkillsToTarget({
|
|
12
|
+
sourceHomeDir: homeDir,
|
|
13
|
+
targetRoot: claudeSkillsRoot(homeDir),
|
|
14
|
+
});
|
|
15
|
+
await fs.rm(claudeDisabledSkillsRoot(homeDir), {
|
|
16
|
+
recursive: true,
|
|
17
|
+
force: true,
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
export async function projectClaudeGlobalSkills(args) {
|
|
21
|
+
await Promise.all([
|
|
22
|
+
projectGlobalSkills({
|
|
23
|
+
sourceHomeDir: args.sourceHomeDir,
|
|
24
|
+
targetHomeDir: args.targetHomeDir,
|
|
25
|
+
}),
|
|
26
|
+
syncEnabledGlobalSkillsToTarget({
|
|
27
|
+
sourceHomeDir: args.sourceHomeDir,
|
|
28
|
+
targetRoot: claudeSkillsRoot(args.targetHomeDir),
|
|
29
|
+
}),
|
|
30
|
+
]);
|
|
31
|
+
await fs.rm(claudeDisabledSkillsRoot(args.targetHomeDir), {
|
|
32
|
+
recursive: true,
|
|
33
|
+
force: true,
|
|
34
|
+
});
|
|
35
|
+
}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
import { type ChildProcessWithoutNullStreams } from "node:child_process";
|
|
2
|
+
import readline from "node:readline";
|
|
3
|
+
import { type HarnessAdapter, type HarnessExecutionPlan, type HarnessManifest, type HarnessProvider, type HarnessReadinessCheckArgs, type HarnessRunResult, type JsonObject, type JsonValue, type ActiveHarnessSession, type CanonicalToolCall, type HarnessTraceReplayer, type NormalizedHarnessActivity, type PendingHarnessTurn, type StartSessionArgs, type StartTurnArgs } from "@workbench-ai/agent-driver";
|
|
4
|
+
import { z } from "zod";
|
|
5
|
+
export declare const ClaudeHarnessAuthSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
6
|
+
strategy: z.ZodLiteral<"secret_ref">;
|
|
7
|
+
ref: z.ZodString;
|
|
8
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
9
|
+
strategy: z.ZodLiteral<"profile_path">;
|
|
10
|
+
path: z.ZodString;
|
|
11
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
12
|
+
strategy: z.ZodLiteral<"bedrock_env">;
|
|
13
|
+
}, z.core.$strict>], "strategy">;
|
|
14
|
+
export declare const ClaudeHarnessConfigSchema: z.ZodObject<{
|
|
15
|
+
max_turns: z.ZodDefault<z.ZodNumber>;
|
|
16
|
+
max_budget_usd: z.ZodOptional<z.ZodNumber>;
|
|
17
|
+
allowed_tools: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
18
|
+
add_dirs: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
19
|
+
permission_mode: z.ZodDefault<z.ZodEnum<{
|
|
20
|
+
bypassPermissions: "bypassPermissions";
|
|
21
|
+
default: "default";
|
|
22
|
+
acceptEdits: "acceptEdits";
|
|
23
|
+
auto: "auto";
|
|
24
|
+
dontAsk: "dontAsk";
|
|
25
|
+
plan: "plan";
|
|
26
|
+
}>>;
|
|
27
|
+
}, z.core.$strict>;
|
|
28
|
+
export type ClaudeHarnessAuth = z.infer<typeof ClaudeHarnessAuthSchema>;
|
|
29
|
+
export type ClaudeHarnessConfig = z.infer<typeof ClaudeHarnessConfigSchema>;
|
|
30
|
+
export declare function createClaudeHarnessDefinition(options?: {
|
|
31
|
+
executable?: string;
|
|
32
|
+
}): {
|
|
33
|
+
id: string;
|
|
34
|
+
displayName: string;
|
|
35
|
+
auth: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
36
|
+
strategy: z.ZodLiteral<"secret_ref">;
|
|
37
|
+
ref: z.ZodString;
|
|
38
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
39
|
+
strategy: z.ZodLiteral<"profile_path">;
|
|
40
|
+
path: z.ZodString;
|
|
41
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
42
|
+
strategy: z.ZodLiteral<"bedrock_env">;
|
|
43
|
+
}, z.core.$strict>], "strategy">;
|
|
44
|
+
config: z.ZodObject<{
|
|
45
|
+
max_turns: z.ZodDefault<z.ZodNumber>;
|
|
46
|
+
max_budget_usd: z.ZodOptional<z.ZodNumber>;
|
|
47
|
+
allowed_tools: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
48
|
+
add_dirs: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
49
|
+
permission_mode: z.ZodDefault<z.ZodEnum<{
|
|
50
|
+
bypassPermissions: "bypassPermissions";
|
|
51
|
+
default: "default";
|
|
52
|
+
acceptEdits: "acceptEdits";
|
|
53
|
+
auto: "auto";
|
|
54
|
+
dontAsk: "dontAsk";
|
|
55
|
+
plan: "plan";
|
|
56
|
+
}>>;
|
|
57
|
+
}, z.core.$strict>;
|
|
58
|
+
defaults: {
|
|
59
|
+
auth: {
|
|
60
|
+
strategy: "secret_ref";
|
|
61
|
+
ref: string;
|
|
62
|
+
};
|
|
63
|
+
config: {
|
|
64
|
+
max_turns: number;
|
|
65
|
+
};
|
|
66
|
+
};
|
|
67
|
+
capabilities: {
|
|
68
|
+
supports_resume: boolean;
|
|
69
|
+
supports_interrupt: boolean;
|
|
70
|
+
required_runtime_capabilities: string[];
|
|
71
|
+
};
|
|
72
|
+
supportedWorkspaceModes: readonly ["managed", "project"];
|
|
73
|
+
checkReadiness(args: HarnessReadinessCheckArgs): Promise<{
|
|
74
|
+
availability_errors: never[];
|
|
75
|
+
}>;
|
|
76
|
+
create(): ClaudeCodeHarnessAdapter;
|
|
77
|
+
};
|
|
78
|
+
export declare const claudeHarnessDefinition: {
|
|
79
|
+
id: string;
|
|
80
|
+
displayName: string;
|
|
81
|
+
auth: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
82
|
+
strategy: z.ZodLiteral<"secret_ref">;
|
|
83
|
+
ref: z.ZodString;
|
|
84
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
85
|
+
strategy: z.ZodLiteral<"profile_path">;
|
|
86
|
+
path: z.ZodString;
|
|
87
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
88
|
+
strategy: z.ZodLiteral<"bedrock_env">;
|
|
89
|
+
}, z.core.$strict>], "strategy">;
|
|
90
|
+
config: z.ZodObject<{
|
|
91
|
+
max_turns: z.ZodDefault<z.ZodNumber>;
|
|
92
|
+
max_budget_usd: z.ZodOptional<z.ZodNumber>;
|
|
93
|
+
allowed_tools: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
94
|
+
add_dirs: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
95
|
+
permission_mode: z.ZodDefault<z.ZodEnum<{
|
|
96
|
+
bypassPermissions: "bypassPermissions";
|
|
97
|
+
default: "default";
|
|
98
|
+
acceptEdits: "acceptEdits";
|
|
99
|
+
auto: "auto";
|
|
100
|
+
dontAsk: "dontAsk";
|
|
101
|
+
plan: "plan";
|
|
102
|
+
}>>;
|
|
103
|
+
}, z.core.$strict>;
|
|
104
|
+
defaults: {
|
|
105
|
+
auth: {
|
|
106
|
+
strategy: "secret_ref";
|
|
107
|
+
ref: string;
|
|
108
|
+
};
|
|
109
|
+
config: {
|
|
110
|
+
max_turns: number;
|
|
111
|
+
};
|
|
112
|
+
};
|
|
113
|
+
capabilities: {
|
|
114
|
+
supports_resume: boolean;
|
|
115
|
+
supports_interrupt: boolean;
|
|
116
|
+
required_runtime_capabilities: string[];
|
|
117
|
+
};
|
|
118
|
+
supportedWorkspaceModes: readonly ["managed", "project"];
|
|
119
|
+
checkReadiness(args: HarnessReadinessCheckArgs): Promise<{
|
|
120
|
+
availability_errors: never[];
|
|
121
|
+
}>;
|
|
122
|
+
create(): ClaudeCodeHarnessAdapter;
|
|
123
|
+
};
|
|
124
|
+
export declare const claudeHarnessManifest: HarnessManifest;
|
|
125
|
+
export declare const claudeHarnessProvider: HarnessProvider<ClaudeSessionState, {
|
|
126
|
+
strategy: "secret_ref";
|
|
127
|
+
ref: string;
|
|
128
|
+
} | {
|
|
129
|
+
strategy: "profile_path";
|
|
130
|
+
path: string;
|
|
131
|
+
} | {
|
|
132
|
+
strategy: "bedrock_env";
|
|
133
|
+
}, {
|
|
134
|
+
max_turns: number;
|
|
135
|
+
permission_mode: "bypassPermissions" | "default" | "acceptEdits" | "auto" | "dontAsk" | "plan";
|
|
136
|
+
max_budget_usd?: number | undefined;
|
|
137
|
+
allowed_tools?: string[] | undefined;
|
|
138
|
+
add_dirs?: string[] | undefined;
|
|
139
|
+
}>;
|
|
140
|
+
export { projectClaudeGlobalSkills, syncClaudeGlobalSkills, } from "./global-skills.js";
|
|
141
|
+
export { CLAUDE_CODE_OAUTH_TOKEN_ENV, claudeWorkbenchProviderAuth, collectClaudeWorkbenchBedrockEnv, parseClaudeSetupTokenOutput, type ClaudeWorkbenchBedrockEnvCollection, type ClaudeWorkbenchProviderAuthEnvVar, } from "./workbench-auth.js";
|
|
142
|
+
export declare function claudeCodeHarness(options?: {
|
|
143
|
+
executable?: string;
|
|
144
|
+
}): HarnessProvider<ClaudeSessionState, {
|
|
145
|
+
strategy: "secret_ref";
|
|
146
|
+
ref: string;
|
|
147
|
+
} | {
|
|
148
|
+
strategy: "profile_path";
|
|
149
|
+
path: string;
|
|
150
|
+
} | {
|
|
151
|
+
strategy: "bedrock_env";
|
|
152
|
+
}, {
|
|
153
|
+
max_turns: number;
|
|
154
|
+
permission_mode: "bypassPermissions" | "default" | "acceptEdits" | "auto" | "dontAsk" | "plan";
|
|
155
|
+
max_budget_usd?: number | undefined;
|
|
156
|
+
allowed_tools?: string[] | undefined;
|
|
157
|
+
add_dirs?: string[] | undefined;
|
|
158
|
+
}>;
|
|
159
|
+
interface ClaudeReplayEntry {
|
|
160
|
+
at: string;
|
|
161
|
+
source: "stdout" | "stderr";
|
|
162
|
+
payload?: JsonValue;
|
|
163
|
+
text?: string;
|
|
164
|
+
}
|
|
165
|
+
export declare const claudeTraceReplayer: HarnessTraceReplayer<ClaudeReplayEntry>;
|
|
166
|
+
interface ClaudeSessionState {
|
|
167
|
+
workspacePath: string;
|
|
168
|
+
attemptWorkspacePath: string;
|
|
169
|
+
sessionWorkspacePath: string | null;
|
|
170
|
+
childEnv: NodeJS.ProcessEnv;
|
|
171
|
+
sessionMode: StartSessionArgs["sessionMode"];
|
|
172
|
+
process: ChildProcessWithoutNullStreams | null;
|
|
173
|
+
reader: readline.Interface | null;
|
|
174
|
+
pendingTurn: PendingHarnessTurn | null;
|
|
175
|
+
stderrLines: string[];
|
|
176
|
+
providerSessionId: string | null;
|
|
177
|
+
model: string | null;
|
|
178
|
+
operationId: string | null;
|
|
179
|
+
lastAssistantText: string | null;
|
|
180
|
+
toolsById: Map<string, CanonicalToolCall>;
|
|
181
|
+
}
|
|
182
|
+
export interface ClaudeEnvelopeNormalization {
|
|
183
|
+
activities: NormalizedHarnessActivity[];
|
|
184
|
+
providerSessionId: string | null;
|
|
185
|
+
model: string | null;
|
|
186
|
+
resultStatus: string | null;
|
|
187
|
+
errorMessage: string | null;
|
|
188
|
+
finalOutput: string | null;
|
|
189
|
+
}
|
|
190
|
+
type WorkflowHarnessCancel = NonNullable<HarnessExecutionPlan["harness"]>["cancel"];
|
|
191
|
+
interface ResolvedClaudeApiKeyAuth {
|
|
192
|
+
apiKey: string;
|
|
193
|
+
}
|
|
194
|
+
interface ResolvedClaudeProfileAuth {
|
|
195
|
+
sourceRoot: string;
|
|
196
|
+
}
|
|
197
|
+
interface ResolvedClaudeBedrockAuth {
|
|
198
|
+
region: string;
|
|
199
|
+
}
|
|
200
|
+
export declare class ClaudeCodeHarnessAdapter implements HarnessAdapter<ClaudeSessionState> {
|
|
201
|
+
private readonly executable;
|
|
202
|
+
readonly manifest: HarnessManifest;
|
|
203
|
+
constructor(executable: string);
|
|
204
|
+
getManagedWorkspaceIgnoreEntries(_plan: HarnessExecutionPlan): string[];
|
|
205
|
+
startSession(args: StartSessionArgs): Promise<ActiveHarnessSession<ClaudeSessionState>>;
|
|
206
|
+
startTurn(context: ActiveHarnessSession<ClaudeSessionState>, args: StartTurnArgs): Promise<HarnessRunResult>;
|
|
207
|
+
interruptTurn(context: ActiveHarnessSession<ClaudeSessionState>): Promise<void>;
|
|
208
|
+
closeSession(context: ActiveHarnessSession<ClaudeSessionState>, cancelConfig?: WorkflowHarnessCancel): Promise<void>;
|
|
209
|
+
static getHarness(plan: HarnessExecutionPlan): NonNullable<HarnessExecutionPlan["harness"]>;
|
|
210
|
+
static getHarnessAuth(plan: HarnessExecutionPlan): ClaudeHarnessAuth;
|
|
211
|
+
static getHarnessConfig(plan: HarnessExecutionPlan): ClaudeHarnessConfig;
|
|
212
|
+
static ensureAuthReady(plan: HarnessExecutionPlan, repoRoot: string, runtimeHome?: string): Promise<void>;
|
|
213
|
+
static validateConfiguredEffort(plan: HarnessExecutionPlan): void;
|
|
214
|
+
private prepareChildEnv;
|
|
215
|
+
private handleStdoutLine;
|
|
216
|
+
private handleStderr;
|
|
217
|
+
private rejectPendingTurn;
|
|
218
|
+
private captureStderr;
|
|
219
|
+
private withStderr;
|
|
220
|
+
static resolveApiKeyAuth(plan: HarnessExecutionPlan, repoRoot: string, runtimeHome?: string): ResolvedClaudeApiKeyAuth;
|
|
221
|
+
static resolveProfileAuth(plan: HarnessExecutionPlan, repoRoot: string): ResolvedClaudeProfileAuth;
|
|
222
|
+
static resolveBedrockAuth(parentEnv?: NodeJS.ProcessEnv): ResolvedClaudeBedrockAuth;
|
|
223
|
+
static copyProfileAuth(sourceRoot: string, homeDir: string): Promise<void>;
|
|
224
|
+
static copyAmbientHomeState(homeDir: string, parentEnv: NodeJS.ProcessEnv): Promise<void>;
|
|
225
|
+
}
|
|
226
|
+
export declare function buildClaudeChildEnv(apiKey: string | null, homeDir: string, parentEnv?: NodeJS.ProcessEnv): NodeJS.ProcessEnv;
|
|
227
|
+
export declare function buildClaudeBedrockChildEnv(homeDir: string, parentEnv?: NodeJS.ProcessEnv): NodeJS.ProcessEnv;
|
|
228
|
+
export declare function normalizeClaudeEnvelope(state: Pick<ClaudeSessionState, "providerSessionId" | "model" | "operationId" | "lastAssistantText" | "toolsById">, payload: JsonObject, at: string): ClaudeEnvelopeNormalization;
|
|
229
|
+
export declare function redactClaudeValue(value: JsonValue): JsonValue | null;
|
|
230
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAS,KAAK,8BAA8B,EAAE,MAAM,oBAAoB,CAAC;AAChF,OAAO,QAAQ,MAAM,eAAe,CAAC;AAErC,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,oBAAoB,EACzB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,yBAAyB,EAC9B,KAAK,gBAAgB,EAGrB,KAAK,UAAU,EACf,KAAK,SAAS,EAkBd,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EACzB,KAAK,yBAAyB,EAC9B,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAEnB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA8BxB,eAAO,MAAM,uBAAuB;;;;;;;;gCAIlC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;kBAiB3B,CAAC;AAEZ,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E,wBAAgB,6BAA6B,CAC3C,OAAO,GAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAA;CAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAsBR,yBAAyB;;;;EAiBvD;AAED,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAnBL,yBAAyB;;;;CAmBc,CAAC;AACvE,eAAO,MAAM,qBAAqB,EAAE,eAEnC,CAAC;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;EAAsB,CAAC;AAEzD,OAAO,EACL,yBAAyB,EACzB,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,2BAA2B,EAC3B,2BAA2B,EAC3B,gCAAgC,EAChC,2BAA2B,EAC3B,KAAK,mCAAmC,EACxC,KAAK,iCAAiC,GACvC,MAAM,qBAAqB,CAAC;AAE7B,wBAAgB,iBAAiB,CAAC,OAAO,GAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAA;CAAO;;;;;;;;;;;;;;GAWtE;AAED,UAAU,iBAAiB;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC5B,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,eAAO,MAAM,mBAAmB,EAAE,oBAAoB,CAAC,iBAAiB,CA6GvE,CAAC;AAEF,UAAU,kBAAkB;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC;IAC5B,WAAW,EAAE,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAC7C,OAAO,EAAE,8BAA8B,GAAG,IAAI,CAAC;IAC/C,MAAM,EAAE,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAC;IAClC,WAAW,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACvC,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;CAC3C;AAED,MAAM,WAAW,2BAA2B;IAC1C,UAAU,EAAE,yBAAyB,EAAE,CAAC;IACxC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,KAAK,qBAAqB,GAAG,WAAW,CACtC,oBAAoB,CAAC,SAAS,CAAC,CAChC,CAAC,QAAQ,CAAC,CAAC;AAiCZ,UAAU,wBAAwB;IAChC,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,yBAAyB;IACjC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,UAAU,yBAAyB;IACjC,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,wBAAyB,YAAW,cAAc,CAAC,kBAAkB,CAAC;IAGrE,OAAO,CAAC,QAAQ,CAAC,UAAU;IAFvC,QAAQ,CAAC,QAAQ,kBAAyB;gBAEb,UAAU,EAAE,MAAM;IAE/C,gCAAgC,CAAC,KAAK,EAAE,oBAAoB,GAAG,MAAM,EAAE;IAIjE,YAAY,CAChB,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;IA6D9C,SAAS,CACb,OAAO,EAAE,oBAAoB,CAAC,kBAAkB,CAAC,EACjD,IAAI,EAAE,aAAa,GAClB,OAAO,CAAC,gBAAgB,CAAC;IAyFtB,aAAa,CACjB,OAAO,EAAE,oBAAoB,CAAC,kBAAkB,CAAC,GAChD,OAAO,CAAC,IAAI,CAAC;IAMV,YAAY,CAChB,OAAO,EAAE,oBAAoB,CAAC,kBAAkB,CAAC,EACjD,YAAY,CAAC,EAAE,qBAAqB,GACnC,OAAO,CAAC,IAAI,CAAC;IAoBhB,MAAM,CAAC,UAAU,CACf,IAAI,EAAE,oBAAoB,GACzB,WAAW,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAe/C,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,oBAAoB,GAAG,iBAAiB;IAMpE,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,oBAAoB,GAAG,mBAAmB;WAM3D,eAAe,CAC1B,IAAI,EAAE,oBAAoB,EAC1B,QAAQ,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC;IAmBhB,MAAM,CAAC,wBAAwB,CAAC,IAAI,EAAE,oBAAoB,GAAG,IAAI;YAanD,eAAe;IAsD7B,OAAO,CAAC,gBAAgB;IA+FxB,OAAO,CAAC,YAAY;IA4CpB,OAAO,CAAC,iBAAiB;IAczB,OAAO,CAAC,aAAa;IAoBrB,OAAO,CAAC,UAAU;IAYlB,MAAM,CAAC,iBAAiB,CACtB,IAAI,EAAE,oBAAoB,EAC1B,QAAQ,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,MAAM,GACnB,wBAAwB;IAkB3B,MAAM,CAAC,kBAAkB,CACvB,IAAI,EAAE,oBAAoB,EAC1B,QAAQ,EAAE,MAAM,GACf,yBAAyB;IAU5B,MAAM,CAAC,kBAAkB,CACvB,SAAS,GAAE,MAAM,CAAC,UAAwB,GACzC,yBAAyB;WAmBf,eAAe,CAC1B,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC;WASH,oBAAoB,CAC/B,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,CAAC,UAAU,GAC3B,OAAO,CAAC,IAAI,CAAC;CAkBjB;AA6LD,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,OAAO,EAAE,MAAM,EACf,SAAS,GAAE,MAAM,CAAC,UAAwB,GACzC,MAAM,CAAC,UAAU,CAmBnB;AAED,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,MAAM,EACf,SAAS,GAAE,MAAM,CAAC,UAAwB,GACzC,MAAM,CAAC,UAAU,CAwBnB;AAED,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,IAAI,CACT,kBAAkB,EAChB,mBAAmB,GACnB,OAAO,GACP,aAAa,GACb,mBAAmB,GACnB,WAAW,CACd,EACD,OAAO,EAAE,UAAU,EACnB,EAAE,EAAE,MAAM,GACT,2BAA2B,CAmO7B;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,IAAI,CAmCpE"}
|