@shipfox/workflow-document 2.0.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.
@@ -0,0 +1,366 @@
1
+ import { z } from 'zod';
2
+ export declare const WORKFLOW_DOCUMENT_ENV_MAX_ENTRIES = 128;
3
+ export declare const WORKFLOW_DOCUMENT_ENV_MAX_SERIALIZED_BYTES: number;
4
+ export declare const workflowDocumentStepOutputTypes: readonly ["string", "number", "boolean", "json"];
5
+ export declare const WORKFLOW_DOCUMENT_STEP_OUTPUTS_MAX_ENTRIES = 128;
6
+ export declare const WORKFLOW_DOCUMENT_STEP_OUTPUT_SCHEMA_MAX_SERIALIZED_BYTES: number;
7
+ export declare const WORKFLOW_DOCUMENT_STEP_OUTPUT_SCHEMA_MAX_DEPTH = 64;
8
+ export declare const workflowDocumentEnvSchema: z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>;
9
+ export declare const workflowDocumentStepOutputsSchema: z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodPipe<z.ZodEnum<{
10
+ string: "string";
11
+ number: "number";
12
+ boolean: "boolean";
13
+ json: "json";
14
+ }>, z.ZodTransform<{
15
+ type: "string" | "number" | "boolean" | "json";
16
+ }, "string" | "number" | "boolean" | "json">>, z.ZodObject<{
17
+ type: z.ZodEnum<{
18
+ string: "string";
19
+ number: "number";
20
+ boolean: "boolean";
21
+ json: "json";
22
+ }>;
23
+ schema: z.ZodOptional<z.ZodUnknown>;
24
+ }, z.core.$strict>]>>;
25
+ export declare const triggerSourceConfigSchemas: {
26
+ cron: z.ZodObject<{
27
+ schedule: z.ZodOptional<z.ZodString>;
28
+ timezone: z.ZodOptional<z.ZodString>;
29
+ }, z.core.$strict>;
30
+ };
31
+ export declare const workflowDocumentTriggerSchema: z.ZodObject<{
32
+ event: z.ZodString;
33
+ source: z.ZodString;
34
+ with: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
35
+ filter: z.ZodOptional<z.ZodString>;
36
+ config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
37
+ }, z.core.$strict>;
38
+ declare const workflowDocumentListeningSchema: z.ZodObject<{
39
+ on: z.ZodArray<z.ZodObject<{
40
+ event: z.ZodString;
41
+ source: z.ZodString;
42
+ with: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
43
+ filter: z.ZodOptional<z.ZodString>;
44
+ config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
45
+ }, z.core.$strict>>;
46
+ until: z.ZodOptional<z.ZodArray<z.ZodObject<{
47
+ event: z.ZodString;
48
+ source: z.ZodString;
49
+ with: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
50
+ filter: z.ZodOptional<z.ZodString>;
51
+ config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
52
+ }, z.core.$strict>>>;
53
+ timeout: z.ZodOptional<z.ZodString>;
54
+ max_executions: z.ZodOptional<z.ZodNumber>;
55
+ batch: z.ZodOptional<z.ZodObject<{
56
+ debounce: z.ZodOptional<z.ZodString>;
57
+ max_size: z.ZodOptional<z.ZodNumber>;
58
+ max_wait: z.ZodOptional<z.ZodString>;
59
+ }, z.core.$strict>>;
60
+ on_resolve: z.ZodOptional<z.ZodEnum<{
61
+ finish: "finish";
62
+ cancel: "cancel";
63
+ }>>;
64
+ }, z.core.$strict>;
65
+ declare const workflowDocumentStepGateSchema: z.ZodObject<{
66
+ success: z.ZodOptional<z.ZodString>;
67
+ on_failure: z.ZodOptional<z.ZodObject<{
68
+ restart_from: z.ZodString;
69
+ feedback: z.ZodOptional<z.ZodString>;
70
+ }, z.core.$strict>>;
71
+ }, z.core.$strict>;
72
+ export declare const workflowDocumentCheckoutSchema: z.ZodObject<{
73
+ permissions: z.ZodOptional<z.ZodObject<{
74
+ contents: z.ZodOptional<z.ZodEnum<{
75
+ read: "read";
76
+ write: "write";
77
+ }>>;
78
+ }, z.core.$strict>>;
79
+ 'persist-credentials': z.ZodOptional<z.ZodBoolean>;
80
+ }, z.core.$strict>;
81
+ export declare const workflowDocumentStepIntegrationSelectionSchema: z.ZodArray<z.ZodString>;
82
+ export declare const workflowDocumentStepIntegrationSchema: z.ZodObject<{
83
+ connection: z.ZodOptional<z.ZodString>;
84
+ include: z.ZodArray<z.ZodString>;
85
+ exclude: z.ZodOptional<z.ZodArray<z.ZodString>>;
86
+ allow_write: z.ZodOptional<z.ZodBoolean>;
87
+ }, z.core.$strict>;
88
+ export declare const workflowDocumentStepSchema: z.ZodObject<{
89
+ key: z.ZodOptional<z.ZodString>;
90
+ if: z.ZodOptional<z.ZodString>;
91
+ name: z.ZodOptional<z.ZodString>;
92
+ run: z.ZodOptional<z.ZodString>;
93
+ model: z.ZodOptional<z.ZodString>;
94
+ prompt: z.ZodOptional<z.ZodString>;
95
+ harness: z.ZodOptional<z.ZodEnum<{
96
+ pi: "pi";
97
+ claude: "claude";
98
+ }>>;
99
+ thinking: z.ZodOptional<z.ZodEnum<{
100
+ off: "off";
101
+ minimal: "minimal";
102
+ low: "low";
103
+ medium: "medium";
104
+ high: "high";
105
+ xhigh: "xhigh";
106
+ max: "max";
107
+ }>>;
108
+ provider: z.ZodOptional<z.ZodString>;
109
+ tools: z.ZodOptional<z.ZodArray<z.ZodString>>;
110
+ integrations: z.ZodOptional<z.ZodArray<z.ZodObject<{
111
+ connection: z.ZodOptional<z.ZodString>;
112
+ include: z.ZodArray<z.ZodString>;
113
+ exclude: z.ZodOptional<z.ZodArray<z.ZodString>>;
114
+ allow_write: z.ZodOptional<z.ZodBoolean>;
115
+ }, z.core.$strict>>>;
116
+ agent: z.ZodOptional<z.ZodUnknown>;
117
+ gate: z.ZodOptional<z.ZodObject<{
118
+ success: z.ZodOptional<z.ZodString>;
119
+ on_failure: z.ZodOptional<z.ZodObject<{
120
+ restart_from: z.ZodString;
121
+ feedback: z.ZodOptional<z.ZodString>;
122
+ }, z.core.$strict>>;
123
+ }, z.core.$strict>>;
124
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
125
+ outputs: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodPipe<z.ZodEnum<{
126
+ string: "string";
127
+ number: "number";
128
+ boolean: "boolean";
129
+ json: "json";
130
+ }>, z.ZodTransform<{
131
+ type: "string" | "number" | "boolean" | "json";
132
+ }, "string" | "number" | "boolean" | "json">>, z.ZodObject<{
133
+ type: z.ZodEnum<{
134
+ string: "string";
135
+ number: "number";
136
+ boolean: "boolean";
137
+ json: "json";
138
+ }>;
139
+ schema: z.ZodOptional<z.ZodUnknown>;
140
+ }, z.core.$strict>]>>>;
141
+ }, z.core.$strict>;
142
+ export declare const workflowDocumentJobSchema: z.ZodObject<{
143
+ needs: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
144
+ if: z.ZodOptional<z.ZodString>;
145
+ runner: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
146
+ success: z.ZodOptional<z.ZodString>;
147
+ outputs: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
148
+ execution_timeout: z.ZodOptional<z.ZodString>;
149
+ checkout: z.ZodOptional<z.ZodObject<{
150
+ permissions: z.ZodOptional<z.ZodObject<{
151
+ contents: z.ZodOptional<z.ZodEnum<{
152
+ read: "read";
153
+ write: "write";
154
+ }>>;
155
+ }, z.core.$strict>>;
156
+ 'persist-credentials': z.ZodOptional<z.ZodBoolean>;
157
+ }, z.core.$strict>>;
158
+ listening: z.ZodOptional<z.ZodObject<{
159
+ on: z.ZodArray<z.ZodObject<{
160
+ event: z.ZodString;
161
+ source: z.ZodString;
162
+ with: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
163
+ filter: z.ZodOptional<z.ZodString>;
164
+ config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
165
+ }, z.core.$strict>>;
166
+ until: z.ZodOptional<z.ZodArray<z.ZodObject<{
167
+ event: z.ZodString;
168
+ source: z.ZodString;
169
+ with: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
170
+ filter: z.ZodOptional<z.ZodString>;
171
+ config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
172
+ }, z.core.$strict>>>;
173
+ timeout: z.ZodOptional<z.ZodString>;
174
+ max_executions: z.ZodOptional<z.ZodNumber>;
175
+ batch: z.ZodOptional<z.ZodObject<{
176
+ debounce: z.ZodOptional<z.ZodString>;
177
+ max_size: z.ZodOptional<z.ZodNumber>;
178
+ max_wait: z.ZodOptional<z.ZodString>;
179
+ }, z.core.$strict>>;
180
+ on_resolve: z.ZodOptional<z.ZodEnum<{
181
+ finish: "finish";
182
+ cancel: "cancel";
183
+ }>>;
184
+ }, z.core.$strict>>;
185
+ name: z.ZodOptional<z.ZodString>;
186
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
187
+ steps: z.ZodArray<z.ZodObject<{
188
+ key: z.ZodOptional<z.ZodString>;
189
+ if: z.ZodOptional<z.ZodString>;
190
+ name: z.ZodOptional<z.ZodString>;
191
+ run: z.ZodOptional<z.ZodString>;
192
+ model: z.ZodOptional<z.ZodString>;
193
+ prompt: z.ZodOptional<z.ZodString>;
194
+ harness: z.ZodOptional<z.ZodEnum<{
195
+ pi: "pi";
196
+ claude: "claude";
197
+ }>>;
198
+ thinking: z.ZodOptional<z.ZodEnum<{
199
+ off: "off";
200
+ minimal: "minimal";
201
+ low: "low";
202
+ medium: "medium";
203
+ high: "high";
204
+ xhigh: "xhigh";
205
+ max: "max";
206
+ }>>;
207
+ provider: z.ZodOptional<z.ZodString>;
208
+ tools: z.ZodOptional<z.ZodArray<z.ZodString>>;
209
+ integrations: z.ZodOptional<z.ZodArray<z.ZodObject<{
210
+ connection: z.ZodOptional<z.ZodString>;
211
+ include: z.ZodArray<z.ZodString>;
212
+ exclude: z.ZodOptional<z.ZodArray<z.ZodString>>;
213
+ allow_write: z.ZodOptional<z.ZodBoolean>;
214
+ }, z.core.$strict>>>;
215
+ agent: z.ZodOptional<z.ZodUnknown>;
216
+ gate: z.ZodOptional<z.ZodObject<{
217
+ success: z.ZodOptional<z.ZodString>;
218
+ on_failure: z.ZodOptional<z.ZodObject<{
219
+ restart_from: z.ZodString;
220
+ feedback: z.ZodOptional<z.ZodString>;
221
+ }, z.core.$strict>>;
222
+ }, z.core.$strict>>;
223
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
224
+ outputs: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodPipe<z.ZodEnum<{
225
+ string: "string";
226
+ number: "number";
227
+ boolean: "boolean";
228
+ json: "json";
229
+ }>, z.ZodTransform<{
230
+ type: "string" | "number" | "boolean" | "json";
231
+ }, "string" | "number" | "boolean" | "json">>, z.ZodObject<{
232
+ type: z.ZodEnum<{
233
+ string: "string";
234
+ number: "number";
235
+ boolean: "boolean";
236
+ json: "json";
237
+ }>;
238
+ schema: z.ZodOptional<z.ZodUnknown>;
239
+ }, z.core.$strict>]>>>;
240
+ }, z.core.$strict>>;
241
+ }, z.core.$strict>;
242
+ export declare const workflowDocumentSchema: z.ZodObject<{
243
+ name: z.ZodString;
244
+ runner: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
245
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
246
+ triggers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
247
+ event: z.ZodString;
248
+ source: z.ZodString;
249
+ with: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
250
+ filter: z.ZodOptional<z.ZodString>;
251
+ config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
252
+ }, z.core.$strict>>>;
253
+ jobs: z.ZodRecord<z.ZodString, z.ZodObject<{
254
+ needs: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
255
+ if: z.ZodOptional<z.ZodString>;
256
+ runner: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
257
+ success: z.ZodOptional<z.ZodString>;
258
+ outputs: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
259
+ execution_timeout: z.ZodOptional<z.ZodString>;
260
+ checkout: z.ZodOptional<z.ZodObject<{
261
+ permissions: z.ZodOptional<z.ZodObject<{
262
+ contents: z.ZodOptional<z.ZodEnum<{
263
+ read: "read";
264
+ write: "write";
265
+ }>>;
266
+ }, z.core.$strict>>;
267
+ 'persist-credentials': z.ZodOptional<z.ZodBoolean>;
268
+ }, z.core.$strict>>;
269
+ listening: z.ZodOptional<z.ZodObject<{
270
+ on: z.ZodArray<z.ZodObject<{
271
+ event: z.ZodString;
272
+ source: z.ZodString;
273
+ with: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
274
+ filter: z.ZodOptional<z.ZodString>;
275
+ config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
276
+ }, z.core.$strict>>;
277
+ until: z.ZodOptional<z.ZodArray<z.ZodObject<{
278
+ event: z.ZodString;
279
+ source: z.ZodString;
280
+ with: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
281
+ filter: z.ZodOptional<z.ZodString>;
282
+ config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
283
+ }, z.core.$strict>>>;
284
+ timeout: z.ZodOptional<z.ZodString>;
285
+ max_executions: z.ZodOptional<z.ZodNumber>;
286
+ batch: z.ZodOptional<z.ZodObject<{
287
+ debounce: z.ZodOptional<z.ZodString>;
288
+ max_size: z.ZodOptional<z.ZodNumber>;
289
+ max_wait: z.ZodOptional<z.ZodString>;
290
+ }, z.core.$strict>>;
291
+ on_resolve: z.ZodOptional<z.ZodEnum<{
292
+ finish: "finish";
293
+ cancel: "cancel";
294
+ }>>;
295
+ }, z.core.$strict>>;
296
+ name: z.ZodOptional<z.ZodString>;
297
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
298
+ steps: z.ZodArray<z.ZodObject<{
299
+ key: z.ZodOptional<z.ZodString>;
300
+ if: z.ZodOptional<z.ZodString>;
301
+ name: z.ZodOptional<z.ZodString>;
302
+ run: z.ZodOptional<z.ZodString>;
303
+ model: z.ZodOptional<z.ZodString>;
304
+ prompt: z.ZodOptional<z.ZodString>;
305
+ harness: z.ZodOptional<z.ZodEnum<{
306
+ pi: "pi";
307
+ claude: "claude";
308
+ }>>;
309
+ thinking: z.ZodOptional<z.ZodEnum<{
310
+ off: "off";
311
+ minimal: "minimal";
312
+ low: "low";
313
+ medium: "medium";
314
+ high: "high";
315
+ xhigh: "xhigh";
316
+ max: "max";
317
+ }>>;
318
+ provider: z.ZodOptional<z.ZodString>;
319
+ tools: z.ZodOptional<z.ZodArray<z.ZodString>>;
320
+ integrations: z.ZodOptional<z.ZodArray<z.ZodObject<{
321
+ connection: z.ZodOptional<z.ZodString>;
322
+ include: z.ZodArray<z.ZodString>;
323
+ exclude: z.ZodOptional<z.ZodArray<z.ZodString>>;
324
+ allow_write: z.ZodOptional<z.ZodBoolean>;
325
+ }, z.core.$strict>>>;
326
+ agent: z.ZodOptional<z.ZodUnknown>;
327
+ gate: z.ZodOptional<z.ZodObject<{
328
+ success: z.ZodOptional<z.ZodString>;
329
+ on_failure: z.ZodOptional<z.ZodObject<{
330
+ restart_from: z.ZodString;
331
+ feedback: z.ZodOptional<z.ZodString>;
332
+ }, z.core.$strict>>;
333
+ }, z.core.$strict>>;
334
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
335
+ outputs: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodPipe<z.ZodEnum<{
336
+ string: "string";
337
+ number: "number";
338
+ boolean: "boolean";
339
+ json: "json";
340
+ }>, z.ZodTransform<{
341
+ type: "string" | "number" | "boolean" | "json";
342
+ }, "string" | "number" | "boolean" | "json">>, z.ZodObject<{
343
+ type: z.ZodEnum<{
344
+ string: "string";
345
+ number: "number";
346
+ boolean: "boolean";
347
+ json: "json";
348
+ }>;
349
+ schema: z.ZodOptional<z.ZodUnknown>;
350
+ }, z.core.$strict>]>>>;
351
+ }, z.core.$strict>>;
352
+ }, z.core.$strict>>;
353
+ }, z.core.$strict>;
354
+ export type WorkflowDocument = z.infer<typeof workflowDocumentSchema>;
355
+ export type WorkflowDocumentJobCheckout = z.infer<typeof workflowDocumentCheckoutSchema>;
356
+ export type WorkflowDocumentEnv = z.infer<typeof workflowDocumentEnvSchema>;
357
+ export type WorkflowDocumentJob = z.infer<typeof workflowDocumentJobSchema>;
358
+ export type WorkflowDocumentJobListening = z.infer<typeof workflowDocumentListeningSchema>;
359
+ export type WorkflowDocumentRunStepGate = z.infer<typeof workflowDocumentStepGateSchema>;
360
+ export type WorkflowDocumentStepIntegration = z.infer<typeof workflowDocumentStepIntegrationSchema>;
361
+ export type WorkflowDocumentStepOutputType = (typeof workflowDocumentStepOutputTypes)[number];
362
+ export type WorkflowDocumentStepOutputs = z.infer<typeof workflowDocumentStepOutputsSchema>;
363
+ export type WorkflowDocumentStep = z.infer<typeof workflowDocumentStepSchema>;
364
+ export type WorkflowDocumentTrigger = z.infer<typeof workflowDocumentTriggerSchema>;
365
+ export {};
366
+ //# sourceMappingURL=workflow-document.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-document.d.ts","sourceRoot":"","sources":["../../src/document/workflow-document.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAetB,eAAO,MAAM,iCAAiC,MAAM,CAAC;AACrD,eAAO,MAAM,0CAA0C,QAAY,CAAC;AACpE,eAAO,MAAM,+BAA+B,kDAAmD,CAAC;AAChG,eAAO,MAAM,0CAA0C,MAAoC,CAAC;AAC5F,eAAO,MAAM,yDAAyD,QAC1B,CAAC;AAC7C,eAAO,MAAM,8CAA8C,KAAK,CAAC;AAIjE,eAAO,MAAM,yBAAyB,yFAkBlC,CAAC;AAuDL,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;qBAmB1C,CAAC;AASL,eAAO,MAAM,0BAA0B;;;;;CAKF,CAAC;AAItC,eAAO,MAAM,6BAA6B;;;;;;kBA2BtC,CAAC;AAEL,QAAA,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;kBAkCjC,CAAC;AAEL,QAAA,MAAM,8BAA8B;;;;;;kBAYhC,CAAC;AAEL,eAAO,MAAM,8BAA8B;;;;;;;;kBAOzC,CAAC;AAEH,eAAO,MAAM,8CAA8C,yBAAoC,CAAC;AAEhG,eAAO,MAAM,qCAAqC;;;;;kBAKhD,CAAC;AAQH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAgFnC,CAAC;AAEL,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAYpC,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAMjC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACtE,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AACzF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAC5E,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAC5E,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;AAC3F,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AACzF,MAAM,MAAM,+BAA+B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qCAAqC,CAAC,CAAC;AACpG,MAAM,MAAM,8BAA8B,GAAG,CAAC,OAAO,+BAA+B,CAAC,CAAC,MAAM,CAAC,CAAC;AAC9F,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAC;AAC5F,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAC9E,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC"}