@the-open-engine/zeroshot 6.3.0 → 6.5.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.
Files changed (149) hide show
  1. package/cli/commands/providers.js +11 -5
  2. package/cli/index.js +83 -17
  3. package/cli/lib/first-run.js +14 -3
  4. package/docker/zeroshot-cluster/Dockerfile +11 -1
  5. package/lib/agent-cli-provider/acp-stdio-runner.d.ts +4 -0
  6. package/lib/agent-cli-provider/acp-stdio-runner.d.ts.map +1 -0
  7. package/lib/agent-cli-provider/acp-stdio-runner.js +259 -0
  8. package/lib/agent-cli-provider/acp-stdio-runner.js.map +1 -0
  9. package/lib/agent-cli-provider/adapters/acp.d.ts +23 -0
  10. package/lib/agent-cli-provider/adapters/acp.d.ts.map +1 -0
  11. package/lib/agent-cli-provider/adapters/acp.js +373 -0
  12. package/lib/agent-cli-provider/adapters/acp.js.map +1 -0
  13. package/lib/agent-cli-provider/adapters/claude.d.ts.map +1 -1
  14. package/lib/agent-cli-provider/adapters/claude.js +2 -29
  15. package/lib/agent-cli-provider/adapters/claude.js.map +1 -1
  16. package/lib/agent-cli-provider/adapters/copilot-parser.d.ts +3 -0
  17. package/lib/agent-cli-provider/adapters/copilot-parser.d.ts.map +1 -0
  18. package/lib/agent-cli-provider/adapters/copilot-parser.js +154 -0
  19. package/lib/agent-cli-provider/adapters/copilot-parser.js.map +1 -0
  20. package/lib/agent-cli-provider/adapters/copilot.d.ts +3 -0
  21. package/lib/agent-cli-provider/adapters/copilot.d.ts.map +1 -0
  22. package/lib/agent-cli-provider/adapters/copilot.js +176 -0
  23. package/lib/agent-cli-provider/adapters/copilot.js.map +1 -0
  24. package/lib/agent-cli-provider/adapters/gateway.d.ts +6 -0
  25. package/lib/agent-cli-provider/adapters/gateway.d.ts.map +1 -0
  26. package/lib/agent-cli-provider/adapters/gateway.js +161 -0
  27. package/lib/agent-cli-provider/adapters/gateway.js.map +1 -0
  28. package/lib/agent-cli-provider/adapters/gemini.d.ts.map +1 -1
  29. package/lib/agent-cli-provider/adapters/gemini.js +9 -2
  30. package/lib/agent-cli-provider/adapters/gemini.js.map +1 -1
  31. package/lib/agent-cli-provider/adapters/index.d.ts.map +1 -1
  32. package/lib/agent-cli-provider/adapters/index.js +6 -34
  33. package/lib/agent-cli-provider/adapters/index.js.map +1 -1
  34. package/lib/agent-cli-provider/adapters/opencode.d.ts.map +1 -1
  35. package/lib/agent-cli-provider/adapters/opencode.js +5 -1
  36. package/lib/agent-cli-provider/adapters/opencode.js.map +1 -1
  37. package/lib/agent-cli-provider/adapters/pi.d.ts +3 -0
  38. package/lib/agent-cli-provider/adapters/pi.d.ts.map +1 -0
  39. package/lib/agent-cli-provider/adapters/pi.js +331 -0
  40. package/lib/agent-cli-provider/adapters/pi.js.map +1 -0
  41. package/lib/agent-cli-provider/claude-command.d.ts +6 -0
  42. package/lib/agent-cli-provider/claude-command.d.ts.map +1 -0
  43. package/lib/agent-cli-provider/claude-command.js +43 -0
  44. package/lib/agent-cli-provider/claude-command.js.map +1 -0
  45. package/lib/agent-cli-provider/contract-actions.d.ts.map +1 -1
  46. package/lib/agent-cli-provider/contract-actions.js +13 -17
  47. package/lib/agent-cli-provider/contract-actions.js.map +1 -1
  48. package/lib/agent-cli-provider/contract-invoke.d.ts.map +1 -1
  49. package/lib/agent-cli-provider/contract-invoke.js +10 -3
  50. package/lib/agent-cli-provider/contract-invoke.js.map +1 -1
  51. package/lib/agent-cli-provider/contract-options.d.ts.map +1 -1
  52. package/lib/agent-cli-provider/contract-options.js +57 -2
  53. package/lib/agent-cli-provider/contract-options.js.map +1 -1
  54. package/lib/agent-cli-provider/contract-support.d.ts +1 -0
  55. package/lib/agent-cli-provider/contract-support.d.ts.map +1 -1
  56. package/lib/agent-cli-provider/contract-support.js +25 -3
  57. package/lib/agent-cli-provider/contract-support.js.map +1 -1
  58. package/lib/agent-cli-provider/errors.d.ts +1 -0
  59. package/lib/agent-cli-provider/errors.d.ts.map +1 -1
  60. package/lib/agent-cli-provider/errors.js +14 -5
  61. package/lib/agent-cli-provider/errors.js.map +1 -1
  62. package/lib/agent-cli-provider/gateway-client.d.ts +32 -0
  63. package/lib/agent-cli-provider/gateway-client.d.ts.map +1 -0
  64. package/lib/agent-cli-provider/gateway-client.js +135 -0
  65. package/lib/agent-cli-provider/gateway-client.js.map +1 -0
  66. package/lib/agent-cli-provider/gateway-runner.d.ts +9 -0
  67. package/lib/agent-cli-provider/gateway-runner.d.ts.map +1 -0
  68. package/lib/agent-cli-provider/gateway-runner.js +294 -0
  69. package/lib/agent-cli-provider/gateway-runner.js.map +1 -0
  70. package/lib/agent-cli-provider/gateway-tools.d.ts +14 -0
  71. package/lib/agent-cli-provider/gateway-tools.d.ts.map +1 -0
  72. package/lib/agent-cli-provider/gateway-tools.js +495 -0
  73. package/lib/agent-cli-provider/gateway-tools.js.map +1 -0
  74. package/lib/agent-cli-provider/index.d.ts +3 -2
  75. package/lib/agent-cli-provider/index.d.ts.map +1 -1
  76. package/lib/agent-cli-provider/index.js +14 -1
  77. package/lib/agent-cli-provider/index.js.map +1 -1
  78. package/lib/agent-cli-provider/invoke-evidence.d.ts +2 -2
  79. package/lib/agent-cli-provider/invoke-evidence.d.ts.map +1 -1
  80. package/lib/agent-cli-provider/invoke-evidence.js +17 -3
  81. package/lib/agent-cli-provider/invoke-evidence.js.map +1 -1
  82. package/lib/agent-cli-provider/provider-registry.d.ts +437 -0
  83. package/lib/agent-cli-provider/provider-registry.d.ts.map +1 -0
  84. package/lib/agent-cli-provider/provider-registry.js +411 -0
  85. package/lib/agent-cli-provider/provider-registry.js.map +1 -0
  86. package/lib/agent-cli-provider/single-agent-runtime.d.ts +7 -0
  87. package/lib/agent-cli-provider/single-agent-runtime.d.ts.map +1 -1
  88. package/lib/agent-cli-provider/single-agent-runtime.js +139 -19
  89. package/lib/agent-cli-provider/single-agent-runtime.js.map +1 -1
  90. package/lib/agent-cli-provider/types.d.ts +106 -4
  91. package/lib/agent-cli-provider/types.d.ts.map +1 -1
  92. package/lib/agent-cli-provider/types.js.map +1 -1
  93. package/lib/detached-startup.js +4 -2
  94. package/lib/docker-config.js +24 -13
  95. package/lib/provider-defaults.js +15 -4
  96. package/lib/provider-detection.js +2 -0
  97. package/lib/provider-names.js +32 -12
  98. package/lib/repo-settings.js +15 -1
  99. package/lib/run-mode.js +18 -6
  100. package/lib/run-plan.js +32 -0
  101. package/lib/settings/claude-auth.js +3 -6
  102. package/lib/settings.js +17 -2
  103. package/lib/setup-apply.js +300 -0
  104. package/lib/setup-journal.js +109 -0
  105. package/lib/setup-plan.js +406 -0
  106. package/lib/setup-undo.js +88 -0
  107. package/lib/start-cluster.js +34 -9
  108. package/lib/stream-json-parser.js +7 -5
  109. package/package.json +33 -3
  110. package/scripts/live-provider-smoke.js +221 -0
  111. package/src/agent/agent-lifecycle.js +7 -4
  112. package/src/agent/agent-quality-gate-schema.js +2 -2
  113. package/src/agent/agent-task-executor.js +41 -2
  114. package/src/agent-cli-provider/acp-stdio-runner.ts +314 -0
  115. package/src/agent-cli-provider/adapters/acp.ts +493 -0
  116. package/src/agent-cli-provider/adapters/claude.ts +2 -32
  117. package/src/agent-cli-provider/adapters/copilot-parser.ts +166 -0
  118. package/src/agent-cli-provider/adapters/copilot.ts +231 -0
  119. package/src/agent-cli-provider/adapters/gateway.ts +186 -0
  120. package/src/agent-cli-provider/adapters/gemini.ts +9 -2
  121. package/src/agent-cli-provider/adapters/index.ts +5 -36
  122. package/src/agent-cli-provider/adapters/opencode.ts +4 -1
  123. package/src/agent-cli-provider/adapters/pi.ts +410 -0
  124. package/src/agent-cli-provider/claude-command.ts +47 -0
  125. package/src/agent-cli-provider/contract-actions.ts +14 -17
  126. package/src/agent-cli-provider/contract-invoke.ts +12 -3
  127. package/src/agent-cli-provider/contract-options.ts +72 -3
  128. package/src/agent-cli-provider/contract-support.ts +30 -3
  129. package/src/agent-cli-provider/errors.ts +14 -4
  130. package/src/agent-cli-provider/gateway-client.ts +170 -0
  131. package/src/agent-cli-provider/gateway-runner.ts +353 -0
  132. package/src/agent-cli-provider/gateway-tools.ts +616 -0
  133. package/src/agent-cli-provider/index.ts +28 -0
  134. package/src/agent-cli-provider/invoke-evidence.ts +24 -3
  135. package/src/agent-cli-provider/provider-registry.ts +515 -0
  136. package/src/agent-cli-provider/single-agent-runtime.ts +192 -18
  137. package/src/agent-cli-provider/types.ts +145 -4
  138. package/src/config-validator.js +33 -15
  139. package/src/isolation-manager.js +124 -19
  140. package/src/ledger.js +3 -0
  141. package/src/message-bus.js +12 -2
  142. package/src/orchestrator.js +37 -17
  143. package/src/preflight.js +83 -30
  144. package/src/providers/capabilities.js +15 -42
  145. package/src/providers/index.js +52 -72
  146. package/src/worktree-claude-config.js +17 -0
  147. package/task-lib/commands/run.js +1 -0
  148. package/task-lib/provider-helper-runtime.js +11 -0
  149. package/task-lib/runner.js +7 -0
@@ -0,0 +1,294 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.runGatewayRequest = runGatewayRequest;
4
+ exports.gatewayRunnerRequestFromEnv = gatewayRunnerRequestFromEnv;
5
+ const gateway_client_1 = require("./gateway-client");
6
+ const gateway_tools_1 = require("./gateway-tools");
7
+ const json_1 = require("./json");
8
+ const MAX_GATEWAY_TURNS = 12;
9
+ const TOOL_DEFINITIONS = [
10
+ {
11
+ type: 'function',
12
+ function: {
13
+ name: 'read_file',
14
+ description: 'Read one UTF-8 file within toolPolicy.roots.',
15
+ parameters: {
16
+ type: 'object',
17
+ additionalProperties: false,
18
+ properties: {
19
+ path: { type: 'string' },
20
+ },
21
+ required: ['path'],
22
+ },
23
+ },
24
+ },
25
+ {
26
+ type: 'function',
27
+ function: {
28
+ name: 'apply_patch',
29
+ description: 'Write a full file with content, or replace search text in a UTF-8 file within toolPolicy.roots.',
30
+ parameters: {
31
+ type: 'object',
32
+ additionalProperties: false,
33
+ properties: {
34
+ path: { type: 'string' },
35
+ content: { type: 'string' },
36
+ search: { type: 'string' },
37
+ replace: { type: 'string' },
38
+ replaceAll: { type: 'boolean' },
39
+ },
40
+ required: ['path'],
41
+ },
42
+ },
43
+ },
44
+ {
45
+ type: 'function',
46
+ function: {
47
+ name: 'run_command',
48
+ description: 'Run an allowlisted command without a shell.',
49
+ parameters: {
50
+ type: 'object',
51
+ additionalProperties: false,
52
+ properties: {
53
+ command: { type: 'string' },
54
+ args: { type: 'array', items: { type: 'string' } },
55
+ cwd: { type: 'string' },
56
+ },
57
+ required: ['command'],
58
+ },
59
+ },
60
+ },
61
+ ];
62
+ async function runGatewayRequest(request) {
63
+ const events = [];
64
+ try {
65
+ const gateway = (0, gateway_tools_1.resolveGatewayConfiguration)(request.gateway, 'gateway', request.cwd);
66
+ return await runGatewayLoop(request.context, gateway, request.cwd, events);
67
+ }
68
+ catch (error) {
69
+ return [
70
+ ...events,
71
+ {
72
+ type: 'result',
73
+ success: false,
74
+ error: (0, json_1.unknownToMessage)(error),
75
+ },
76
+ ];
77
+ }
78
+ }
79
+ function gatewayRunnerRequestFromEnv(env = process.env) {
80
+ const raw = env.ZEROSHOT_GATEWAY_REQUEST;
81
+ if (!raw) {
82
+ throw new Error('ZEROSHOT_GATEWAY_REQUEST is required.');
83
+ }
84
+ const parsed = (0, json_1.parseJson)(raw);
85
+ if (!(0, json_1.isRecord)(parsed)) {
86
+ throw new Error('ZEROSHOT_GATEWAY_REQUEST must encode a JSON object.');
87
+ }
88
+ const context = parsed.context;
89
+ const cwd = parsed.cwd;
90
+ if (typeof context !== 'string' || !context.trim()) {
91
+ throw new Error('ZEROSHOT_GATEWAY_REQUEST.context must be a non-empty string.');
92
+ }
93
+ if (typeof cwd !== 'string' || !cwd.trim()) {
94
+ throw new Error('ZEROSHOT_GATEWAY_REQUEST.cwd must be a non-empty string.');
95
+ }
96
+ const headers = gatewayHeadersFromEnv(parsed.gatewayHeaderEnv, env);
97
+ return {
98
+ context,
99
+ cwd,
100
+ gateway: {
101
+ ...((0, json_1.isRecord)(parsed.gateway) ? parsed.gateway : {}),
102
+ ...(headers === undefined ? {} : { headers }),
103
+ ...(env.ZEROSHOT_GATEWAY_API_KEY === undefined
104
+ ? {}
105
+ : { apiKey: env.ZEROSHOT_GATEWAY_API_KEY }),
106
+ },
107
+ };
108
+ }
109
+ function gatewayHeadersFromEnv(value, env) {
110
+ if (!(0, json_1.isRecord)(value))
111
+ return undefined;
112
+ const headers = {};
113
+ for (const [name, envKey] of Object.entries(value)) {
114
+ if (typeof envKey !== 'string' || !envKey) {
115
+ throw new Error('ZEROSHOT_GATEWAY_REQUEST.gatewayHeaderEnv entries must be non-empty strings.');
116
+ }
117
+ const headerValue = env[envKey];
118
+ if (typeof headerValue !== 'string') {
119
+ throw new Error(`Gateway header env ${envKey} is required.`);
120
+ }
121
+ headers[name] = headerValue;
122
+ }
123
+ return headers;
124
+ }
125
+ async function runGatewayLoop(context, gateway, cwd, events) {
126
+ const toolState = { lastError: null };
127
+ const messages = [
128
+ {
129
+ role: 'system',
130
+ content: buildSystemPrompt(gateway.toolPolicy),
131
+ },
132
+ {
133
+ role: 'user',
134
+ content: context,
135
+ },
136
+ ];
137
+ for (let turn = 0; turn < MAX_GATEWAY_TURNS; turn += 1) {
138
+ const response = await (0, gateway_client_1.createGatewayChatCompletion)({
139
+ baseUrl: gateway.baseUrl,
140
+ apiKey: gateway.apiKey,
141
+ headers: gateway.headers,
142
+ model: gateway.model,
143
+ messages,
144
+ tools: TOOL_DEFINITIONS,
145
+ });
146
+ if (response.text.trim()) {
147
+ events.push({ type: 'text', text: response.text });
148
+ }
149
+ if (response.toolCalls.length === 0) {
150
+ events.push(finalGatewayResult(response.text, cwd, toolState));
151
+ return events;
152
+ }
153
+ messages.push({
154
+ role: 'assistant',
155
+ content: response.text,
156
+ toolCalls: response.toolCalls,
157
+ });
158
+ const errorResult = await executeGatewayToolCalls(response.toolCalls, gateway.toolPolicy, events, messages, toolState);
159
+ if (errorResult !== null) {
160
+ return [...events, errorResult];
161
+ }
162
+ }
163
+ return [
164
+ ...events,
165
+ {
166
+ type: 'result',
167
+ success: false,
168
+ error: `Gateway runner exceeded ${MAX_GATEWAY_TURNS} tool turns.`,
169
+ },
170
+ ];
171
+ }
172
+ function finalGatewayResult(text, cwd, toolState) {
173
+ if (toolState.lastError !== null) {
174
+ return gatewayToolFailureResult(toolState.lastError);
175
+ }
176
+ return {
177
+ type: 'result',
178
+ success: true,
179
+ result: {
180
+ text,
181
+ cwd,
182
+ },
183
+ };
184
+ }
185
+ async function executeGatewayToolCalls(toolCalls, toolPolicy, events, messages, toolState) {
186
+ for (const toolCall of toolCalls) {
187
+ events.push({
188
+ type: 'tool_call',
189
+ toolName: toolCall.name,
190
+ toolId: toolCall.id,
191
+ input: tryParseJson(toolCall.argumentsText) ?? toolCall.argumentsText,
192
+ });
193
+ const toolResult = await executeGatewayTool(toolCall.name, toolCall.argumentsText, toolPolicy);
194
+ events.push({
195
+ type: 'tool_result',
196
+ toolId: toolCall.id,
197
+ content: toolResult.content,
198
+ isError: toolResult.isError,
199
+ });
200
+ if (toolResult.isError) {
201
+ toolState.lastError = toolResultErrorMessage(toolResult.content);
202
+ return gatewayToolFailureResult(toolState.lastError);
203
+ }
204
+ messages.push({
205
+ role: 'tool',
206
+ toolCallId: toolCall.id,
207
+ content: (0, json_1.stringifyJson)(toolResult.content),
208
+ });
209
+ }
210
+ return null;
211
+ }
212
+ function toolResultErrorMessage(content) {
213
+ if (typeof content === 'string' && content.trim())
214
+ return content;
215
+ if ((0, json_1.isRecord)(content)) {
216
+ const message = content.message;
217
+ if (typeof message === 'string' && message.trim())
218
+ return message;
219
+ }
220
+ return (0, json_1.stringifyJson)(content);
221
+ }
222
+ function gatewayToolFailureResult(message) {
223
+ return {
224
+ type: 'result',
225
+ success: false,
226
+ error: `Gateway runner observed a tool failure and cannot verify completion: ${message}`,
227
+ };
228
+ }
229
+ async function executeGatewayTool(toolName, argumentsText, toolPolicy) {
230
+ let parsedArguments;
231
+ try {
232
+ parsedArguments = (0, json_1.parseJson)(argumentsText);
233
+ }
234
+ catch {
235
+ return {
236
+ content: { message: `Gateway tool "${toolName}" returned malformed JSON arguments.` },
237
+ isError: true,
238
+ };
239
+ }
240
+ try {
241
+ return await (0, gateway_tools_1.executeGatewayToolCall)(toolName, parsedArguments, toolPolicy);
242
+ }
243
+ catch (error) {
244
+ return {
245
+ content: { message: (0, json_1.unknownToMessage)(error) },
246
+ isError: true,
247
+ };
248
+ }
249
+ }
250
+ function buildSystemPrompt(toolPolicy) {
251
+ return [
252
+ 'You are a noninteractive coding agent.',
253
+ 'Use tools only when needed.',
254
+ 'Never request confirmation.',
255
+ `Allowed roots: ${toolPolicy.roots.join(', ')}`,
256
+ `Allowlisted commands: ${toolPolicy.commands.join(', ') || '(none)'}`,
257
+ 'Return a concise final answer when the task is complete.',
258
+ ].join(' ');
259
+ }
260
+ function tryParseJson(value) {
261
+ try {
262
+ return JSON.parse(value);
263
+ }
264
+ catch {
265
+ return null;
266
+ }
267
+ }
268
+ async function main() {
269
+ try {
270
+ const request = gatewayRunnerRequestFromEnv();
271
+ const events = await runGatewayRequest(request);
272
+ writeEvents(events);
273
+ process.exitCode = 0;
274
+ }
275
+ catch (error) {
276
+ writeEvents([
277
+ {
278
+ type: 'result',
279
+ success: false,
280
+ error: (0, json_1.unknownToMessage)(error),
281
+ },
282
+ ]);
283
+ process.exitCode = 0;
284
+ }
285
+ }
286
+ function writeEvents(events) {
287
+ for (const event of events) {
288
+ process.stdout.write(`${(0, json_1.stringifyJson)(event)}\n`);
289
+ }
290
+ }
291
+ if (require.main === module) {
292
+ void main();
293
+ }
294
+ //# sourceMappingURL=gateway-runner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gateway-runner.js","sourceRoot":"","sources":["../../src/agent-cli-provider/gateway-runner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import type { GatewayBuildOptions, GatewayToolPolicy, ResolvedGatewayBuildOptions } from './types';
2
+ export declare class GatewayPolicyError extends Error {
3
+ constructor(message: string);
4
+ }
5
+ export interface GatewayToolExecutionResult {
6
+ readonly content: unknown;
7
+ readonly isError: boolean;
8
+ }
9
+ export declare function normalizeGatewayBuildOptions(value: unknown, field: string, cwd: string): GatewayBuildOptions | undefined;
10
+ export declare function resolveGatewayConfiguration(value: GatewayBuildOptions | undefined, field: string, cwd: string): ResolvedGatewayBuildOptions;
11
+ export declare function validateGatewaySettings(settings: Record<string, unknown>): string | null;
12
+ export declare function normalizeGatewayToolPolicy(value: GatewayToolPolicy, field: string, cwd: string): GatewayToolPolicy;
13
+ export declare function executeGatewayToolCall(toolName: string, input: unknown, policy: GatewayToolPolicy): Promise<GatewayToolExecutionResult>;
14
+ //# sourceMappingURL=gateway-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gateway-tools.d.ts","sourceRoot":"","sources":["../../src/agent-cli-provider/gateway-tools.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,mBAAmB,EACnB,iBAAiB,EACjB,2BAA2B,EAC5B,MAAM,SAAS,CAAC;AAIjB,qBAAa,kBAAmB,SAAQ,KAAK;gBAC/B,OAAO,EAAE,MAAM;CAI5B;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B;AAgBD,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,OAAO,EACd,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,GACV,mBAAmB,GAAG,SAAS,CAoBjC;AAED,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,mBAAmB,GAAG,SAAS,EACtC,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,GACV,2BAA2B,CAuB7B;AAED,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,IAAI,CAexF;AAED,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,iBAAiB,EACxB,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,GACV,iBAAiB,CAOnB;AAED,wBAAsB,sBAAsB,CAC1C,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,OAAO,EACd,MAAM,EAAE,iBAAiB,GACxB,OAAO,CAAC,0BAA0B,CAAC,CAWrC"}