@meetploy/emulator 1.14.1 → 1.15.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/dist/bundler/bundler.js +16 -1
- package/dist/bundler/bundler.js.map +1 -1
- package/dist/config/ploy-config.d.ts +2 -2
- package/dist/config/ploy-config.js +2 -2
- package/dist/config/ploy-config.js.map +1 -1
- package/dist/dashboard-dist/assets/{main-DTpABleT.js → main-DAd-oei_.js} +26 -26
- package/dist/dashboard-dist/assets/main-Db4OPfPK.css +1 -0
- package/dist/dashboard-dist/index.html +2 -2
- package/dist/runtime/workflow-runtime.d.ts +1 -1
- package/dist/runtime/workflow-runtime.js +6 -5
- package/dist/runtime/workflow-runtime.js.map +1 -1
- package/dist/runtime/workflow-runtime.spec.d.ts +1 -0
- package/dist/runtime/workflow-runtime.spec.js +348 -0
- package/dist/runtime/workflow-runtime.spec.js.map +1 -0
- package/dist/services/dashboard-routes.js +3 -1
- package/dist/services/dashboard-routes.js.map +1 -1
- package/dist/services/workflow-service.d.ts +2 -0
- package/dist/services/workflow-service.js +10 -10
- package/dist/services/workflow-service.js.map +1 -1
- package/dist/services/workflow-service.spec.js +159 -0
- package/dist/services/workflow-service.spec.js.map +1 -1
- package/dist/utils/sqlite.js +2 -0
- package/dist/utils/sqlite.js.map +1 -1
- package/package.json +1 -1
- package/dist/dashboard-dist/assets/main-kKaL2zMb.css +0 -1
|
@@ -0,0 +1,348 @@
|
|
|
1
|
+
import { randomUUID } from "node:crypto";
|
|
2
|
+
import { Hono } from "hono";
|
|
3
|
+
import { afterEach, beforeEach, describe, expect, test } from "vitest";
|
|
4
|
+
import { createWorkflowHandlers } from "../services/workflow-service.js";
|
|
5
|
+
import { openDatabase } from "../utils/sqlite-db.js";
|
|
6
|
+
const SCHEMA = `
|
|
7
|
+
CREATE TABLE IF NOT EXISTS workflow_executions (
|
|
8
|
+
id TEXT PRIMARY KEY,
|
|
9
|
+
workflow_name TEXT NOT NULL,
|
|
10
|
+
status TEXT DEFAULT 'pending',
|
|
11
|
+
input TEXT,
|
|
12
|
+
output TEXT,
|
|
13
|
+
error TEXT,
|
|
14
|
+
started_at INTEGER,
|
|
15
|
+
completed_at INTEGER,
|
|
16
|
+
created_at INTEGER DEFAULT (strftime('%s', 'now'))
|
|
17
|
+
);
|
|
18
|
+
|
|
19
|
+
CREATE TABLE IF NOT EXISTS workflow_steps (
|
|
20
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
21
|
+
execution_id TEXT NOT NULL,
|
|
22
|
+
step_name TEXT NOT NULL,
|
|
23
|
+
step_index INTEGER NOT NULL,
|
|
24
|
+
status TEXT DEFAULT 'pending',
|
|
25
|
+
output TEXT,
|
|
26
|
+
error TEXT,
|
|
27
|
+
duration_ms INTEGER,
|
|
28
|
+
attempt INTEGER,
|
|
29
|
+
max_retries INTEGER,
|
|
30
|
+
created_at INTEGER DEFAULT (strftime('%s', 'now')),
|
|
31
|
+
FOREIGN KEY (execution_id) REFERENCES workflow_executions(id),
|
|
32
|
+
UNIQUE (execution_id, step_name, step_index)
|
|
33
|
+
);
|
|
34
|
+
`;
|
|
35
|
+
function createTestApp(db) {
|
|
36
|
+
const handlers = createWorkflowHandlers(db);
|
|
37
|
+
const app = new Hono();
|
|
38
|
+
app.post("/workflow/trigger", handlers.triggerHandler);
|
|
39
|
+
app.post("/workflow/status", handlers.statusHandler);
|
|
40
|
+
app.post("/workflow/step/start", handlers.stepStartHandler);
|
|
41
|
+
app.post("/workflow/step/complete", handlers.stepCompleteHandler);
|
|
42
|
+
app.post("/workflow/step/fail", handlers.stepFailHandler);
|
|
43
|
+
app.post("/workflow/complete", handlers.completeHandler);
|
|
44
|
+
app.post("/workflow/fail", handlers.failHandler);
|
|
45
|
+
return app;
|
|
46
|
+
}
|
|
47
|
+
function post(app, path, body) {
|
|
48
|
+
return app.request(path, {
|
|
49
|
+
method: "POST",
|
|
50
|
+
headers: { "Content-Type": "application/json" },
|
|
51
|
+
body: JSON.stringify(body),
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
function getStep(db, executionId, stepName) {
|
|
55
|
+
return db
|
|
56
|
+
.prepare(`SELECT status, output, error, attempt, max_retries, duration_ms
|
|
57
|
+
FROM workflow_steps WHERE execution_id = ? AND step_name = ?`)
|
|
58
|
+
.get(executionId, stepName);
|
|
59
|
+
}
|
|
60
|
+
describe("workflow runtime retry integration", () => {
|
|
61
|
+
let db;
|
|
62
|
+
let app;
|
|
63
|
+
beforeEach(() => {
|
|
64
|
+
db = openDatabase(":memory:");
|
|
65
|
+
db.exec(SCHEMA);
|
|
66
|
+
app = createTestApp(db);
|
|
67
|
+
});
|
|
68
|
+
afterEach(() => {
|
|
69
|
+
db.close();
|
|
70
|
+
});
|
|
71
|
+
function insertExecution(id) {
|
|
72
|
+
const now = Math.floor(Date.now() / 1000);
|
|
73
|
+
db.prepare(`INSERT INTO workflow_executions (id, workflow_name, status, started_at, created_at)
|
|
74
|
+
VALUES (?, ?, 'running', ?, ?)`).run(id, "test_workflow", now, now);
|
|
75
|
+
}
|
|
76
|
+
async function simulateStepRun(executionId, stepName, stepIndex, opts) {
|
|
77
|
+
const { maxRetries, succeedOnAttempt } = opts;
|
|
78
|
+
const startRes = await post(app, "/workflow/step/start", {
|
|
79
|
+
executionId,
|
|
80
|
+
stepName,
|
|
81
|
+
stepIndex,
|
|
82
|
+
});
|
|
83
|
+
const startBody = (await startRes.json());
|
|
84
|
+
if (startBody.alreadyCompleted) {
|
|
85
|
+
return { succeeded: true, attempts: 0 };
|
|
86
|
+
}
|
|
87
|
+
for (let attempt = 0; attempt <= maxRetries; attempt++) {
|
|
88
|
+
const attemptNum = attempt + 1;
|
|
89
|
+
if (succeedOnAttempt !== undefined && attemptNum === succeedOnAttempt) {
|
|
90
|
+
await post(app, "/workflow/step/complete", {
|
|
91
|
+
executionId,
|
|
92
|
+
stepName,
|
|
93
|
+
stepIndex,
|
|
94
|
+
output: { result: "ok" },
|
|
95
|
+
durationMs: 100,
|
|
96
|
+
attempt: attemptNum,
|
|
97
|
+
maxRetries,
|
|
98
|
+
});
|
|
99
|
+
return { succeeded: true, attempts: attemptNum };
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
await post(app, "/workflow/step/fail", {
|
|
103
|
+
executionId,
|
|
104
|
+
stepName,
|
|
105
|
+
stepIndex,
|
|
106
|
+
error: "Step failed after all retries",
|
|
107
|
+
durationMs: 500,
|
|
108
|
+
attempt: maxRetries + 1,
|
|
109
|
+
maxRetries,
|
|
110
|
+
});
|
|
111
|
+
return { succeeded: false, attempts: maxRetries + 1 };
|
|
112
|
+
}
|
|
113
|
+
test("step succeeds on first attempt — attempt=1, maxRetries stored", async () => {
|
|
114
|
+
const executionId = randomUUID();
|
|
115
|
+
insertExecution(executionId);
|
|
116
|
+
await simulateStepRun(executionId, "load_data", 0, {
|
|
117
|
+
maxRetries: 3,
|
|
118
|
+
succeedOnAttempt: 1,
|
|
119
|
+
});
|
|
120
|
+
const step = getStep(db, executionId, "load_data");
|
|
121
|
+
expect(step.status).toBe("completed");
|
|
122
|
+
expect(step.attempt).toBe(1);
|
|
123
|
+
expect(step.max_retries).toBe(3);
|
|
124
|
+
expect(step.output).toBe(JSON.stringify({ result: "ok" }));
|
|
125
|
+
});
|
|
126
|
+
test("step succeeds after retries — attempt reflects actual attempt number", async () => {
|
|
127
|
+
const executionId = randomUUID();
|
|
128
|
+
insertExecution(executionId);
|
|
129
|
+
const result = await simulateStepRun(executionId, "flaky_api", 0, {
|
|
130
|
+
maxRetries: 3,
|
|
131
|
+
succeedOnAttempt: 3,
|
|
132
|
+
});
|
|
133
|
+
expect(result.succeeded).toBe(true);
|
|
134
|
+
expect(result.attempts).toBe(3);
|
|
135
|
+
const step = getStep(db, executionId, "flaky_api");
|
|
136
|
+
expect(step.status).toBe("completed");
|
|
137
|
+
expect(step.attempt).toBe(3);
|
|
138
|
+
expect(step.max_retries).toBe(3);
|
|
139
|
+
});
|
|
140
|
+
test("step fails after exhausting all retries — attempt = maxRetries + 1", async () => {
|
|
141
|
+
const executionId = randomUUID();
|
|
142
|
+
insertExecution(executionId);
|
|
143
|
+
const result = await simulateStepRun(executionId, "broken_step", 0, {
|
|
144
|
+
maxRetries: 3,
|
|
145
|
+
});
|
|
146
|
+
expect(result.succeeded).toBe(false);
|
|
147
|
+
expect(result.attempts).toBe(4);
|
|
148
|
+
const step = getStep(db, executionId, "broken_step");
|
|
149
|
+
expect(step.status).toBe("failed");
|
|
150
|
+
expect(step.attempt).toBe(4);
|
|
151
|
+
expect(step.max_retries).toBe(3);
|
|
152
|
+
expect(step.error).toBe("Step failed after all retries");
|
|
153
|
+
});
|
|
154
|
+
test("step with retries=0 fails immediately without retrying", async () => {
|
|
155
|
+
const executionId = randomUUID();
|
|
156
|
+
insertExecution(executionId);
|
|
157
|
+
const result = await simulateStepRun(executionId, "no_retry_step", 0, {
|
|
158
|
+
maxRetries: 0,
|
|
159
|
+
});
|
|
160
|
+
expect(result.succeeded).toBe(false);
|
|
161
|
+
expect(result.attempts).toBe(1);
|
|
162
|
+
const step = getStep(db, executionId, "no_retry_step");
|
|
163
|
+
expect(step.status).toBe("failed");
|
|
164
|
+
expect(step.attempt).toBe(1);
|
|
165
|
+
expect(step.max_retries).toBe(0);
|
|
166
|
+
});
|
|
167
|
+
test("step with retries=0 succeeds on first attempt", async () => {
|
|
168
|
+
const executionId = randomUUID();
|
|
169
|
+
insertExecution(executionId);
|
|
170
|
+
const result = await simulateStepRun(executionId, "one_shot", 0, {
|
|
171
|
+
maxRetries: 0,
|
|
172
|
+
succeedOnAttempt: 1,
|
|
173
|
+
});
|
|
174
|
+
expect(result.succeeded).toBe(true);
|
|
175
|
+
expect(result.attempts).toBe(1);
|
|
176
|
+
const step = getStep(db, executionId, "one_shot");
|
|
177
|
+
expect(step.status).toBe("completed");
|
|
178
|
+
expect(step.attempt).toBe(1);
|
|
179
|
+
expect(step.max_retries).toBe(0);
|
|
180
|
+
});
|
|
181
|
+
test("only the failing step retries — earlier completed steps are unaffected", async () => {
|
|
182
|
+
const executionId = randomUUID();
|
|
183
|
+
insertExecution(executionId);
|
|
184
|
+
await simulateStepRun(executionId, "step_0", 0, {
|
|
185
|
+
maxRetries: 3,
|
|
186
|
+
succeedOnAttempt: 1,
|
|
187
|
+
});
|
|
188
|
+
await simulateStepRun(executionId, "step_1", 1, {
|
|
189
|
+
maxRetries: 3,
|
|
190
|
+
succeedOnAttempt: 1,
|
|
191
|
+
});
|
|
192
|
+
await simulateStepRun(executionId, "step_2", 2, {
|
|
193
|
+
maxRetries: 3,
|
|
194
|
+
});
|
|
195
|
+
const step0 = getStep(db, executionId, "step_0");
|
|
196
|
+
expect(step0.status).toBe("completed");
|
|
197
|
+
expect(step0.attempt).toBe(1);
|
|
198
|
+
const step1 = getStep(db, executionId, "step_1");
|
|
199
|
+
expect(step1.status).toBe("completed");
|
|
200
|
+
expect(step1.attempt).toBe(1);
|
|
201
|
+
const step2 = getStep(db, executionId, "step_2");
|
|
202
|
+
expect(step2.status).toBe("failed");
|
|
203
|
+
expect(step2.attempt).toBe(4);
|
|
204
|
+
expect(step2.max_retries).toBe(3);
|
|
205
|
+
});
|
|
206
|
+
test("different steps can have different retry counts", async () => {
|
|
207
|
+
const executionId = randomUUID();
|
|
208
|
+
insertExecution(executionId);
|
|
209
|
+
await simulateStepRun(executionId, "quick_retry", 0, {
|
|
210
|
+
maxRetries: 1,
|
|
211
|
+
succeedOnAttempt: 2,
|
|
212
|
+
});
|
|
213
|
+
await simulateStepRun(executionId, "many_retries", 1, {
|
|
214
|
+
maxRetries: 5,
|
|
215
|
+
succeedOnAttempt: 4,
|
|
216
|
+
});
|
|
217
|
+
const step0 = getStep(db, executionId, "quick_retry");
|
|
218
|
+
expect(step0.status).toBe("completed");
|
|
219
|
+
expect(step0.attempt).toBe(2);
|
|
220
|
+
expect(step0.max_retries).toBe(1);
|
|
221
|
+
const step1 = getStep(db, executionId, "many_retries");
|
|
222
|
+
expect(step1.status).toBe("completed");
|
|
223
|
+
expect(step1.attempt).toBe(4);
|
|
224
|
+
expect(step1.max_retries).toBe(5);
|
|
225
|
+
});
|
|
226
|
+
test("step complete without attempt/maxRetries stores null (backwards compat)", async () => {
|
|
227
|
+
const executionId = randomUUID();
|
|
228
|
+
insertExecution(executionId);
|
|
229
|
+
await post(app, "/workflow/step/start", {
|
|
230
|
+
executionId,
|
|
231
|
+
stepName: "legacy_step",
|
|
232
|
+
stepIndex: 0,
|
|
233
|
+
});
|
|
234
|
+
await post(app, "/workflow/step/complete", {
|
|
235
|
+
executionId,
|
|
236
|
+
stepName: "legacy_step",
|
|
237
|
+
stepIndex: 0,
|
|
238
|
+
output: { data: 1 },
|
|
239
|
+
durationMs: 50,
|
|
240
|
+
});
|
|
241
|
+
const step = getStep(db, executionId, "legacy_step");
|
|
242
|
+
expect(step.status).toBe("completed");
|
|
243
|
+
expect(step.attempt).toBeNull();
|
|
244
|
+
expect(step.max_retries).toBeNull();
|
|
245
|
+
});
|
|
246
|
+
test("step fail without attempt/maxRetries stores null (backwards compat)", async () => {
|
|
247
|
+
const executionId = randomUUID();
|
|
248
|
+
insertExecution(executionId);
|
|
249
|
+
await post(app, "/workflow/step/start", {
|
|
250
|
+
executionId,
|
|
251
|
+
stepName: "legacy_fail",
|
|
252
|
+
stepIndex: 0,
|
|
253
|
+
});
|
|
254
|
+
await post(app, "/workflow/step/fail", {
|
|
255
|
+
executionId,
|
|
256
|
+
stepName: "legacy_fail",
|
|
257
|
+
stepIndex: 0,
|
|
258
|
+
error: "Something went wrong",
|
|
259
|
+
durationMs: 50,
|
|
260
|
+
});
|
|
261
|
+
const step = getStep(db, executionId, "legacy_fail");
|
|
262
|
+
expect(step.status).toBe("failed");
|
|
263
|
+
expect(step.attempt).toBeNull();
|
|
264
|
+
expect(step.max_retries).toBeNull();
|
|
265
|
+
});
|
|
266
|
+
});
|
|
267
|
+
describe("workflow runtime retry — dashboard API contract", () => {
|
|
268
|
+
let db;
|
|
269
|
+
let app;
|
|
270
|
+
beforeEach(() => {
|
|
271
|
+
db = openDatabase(":memory:");
|
|
272
|
+
db.exec(SCHEMA);
|
|
273
|
+
app = createTestApp(db);
|
|
274
|
+
});
|
|
275
|
+
afterEach(() => {
|
|
276
|
+
db.close();
|
|
277
|
+
});
|
|
278
|
+
function insertExecution(id) {
|
|
279
|
+
const now = Math.floor(Date.now() / 1000);
|
|
280
|
+
db.prepare(`INSERT INTO workflow_executions (id, workflow_name, status, started_at, created_at)
|
|
281
|
+
VALUES (?, ?, 'running', ?, ?)`).run(id, "test_workflow", now, now);
|
|
282
|
+
}
|
|
283
|
+
test("dashboard API includes attempt and maxRetries in step data", async () => {
|
|
284
|
+
const executionId = randomUUID();
|
|
285
|
+
insertExecution(executionId);
|
|
286
|
+
await post(app, "/workflow/step/start", {
|
|
287
|
+
executionId,
|
|
288
|
+
stepName: "process_data",
|
|
289
|
+
stepIndex: 0,
|
|
290
|
+
});
|
|
291
|
+
await post(app, "/workflow/step/complete", {
|
|
292
|
+
executionId,
|
|
293
|
+
stepName: "process_data",
|
|
294
|
+
stepIndex: 0,
|
|
295
|
+
output: { ok: true },
|
|
296
|
+
durationMs: 200,
|
|
297
|
+
attempt: 2,
|
|
298
|
+
maxRetries: 3,
|
|
299
|
+
});
|
|
300
|
+
const step = getStep(db, executionId, "process_data");
|
|
301
|
+
expect(step.attempt).toBe(2);
|
|
302
|
+
expect(step.max_retries).toBe(3);
|
|
303
|
+
expect(step.status).toBe("completed");
|
|
304
|
+
});
|
|
305
|
+
test("dashboard API shows null attempt/maxRetries when not sent", async () => {
|
|
306
|
+
const executionId = randomUUID();
|
|
307
|
+
insertExecution(executionId);
|
|
308
|
+
await post(app, "/workflow/step/start", {
|
|
309
|
+
executionId,
|
|
310
|
+
stepName: "old_step",
|
|
311
|
+
stepIndex: 0,
|
|
312
|
+
});
|
|
313
|
+
await post(app, "/workflow/step/complete", {
|
|
314
|
+
executionId,
|
|
315
|
+
stepName: "old_step",
|
|
316
|
+
stepIndex: 0,
|
|
317
|
+
output: { ok: true },
|
|
318
|
+
durationMs: 100,
|
|
319
|
+
});
|
|
320
|
+
const step = getStep(db, executionId, "old_step");
|
|
321
|
+
expect(step.attempt).toBeNull();
|
|
322
|
+
expect(step.max_retries).toBeNull();
|
|
323
|
+
});
|
|
324
|
+
test("failed step stores attempt and maxRetries for dashboard display", async () => {
|
|
325
|
+
const executionId = randomUUID();
|
|
326
|
+
insertExecution(executionId);
|
|
327
|
+
await post(app, "/workflow/step/start", {
|
|
328
|
+
executionId,
|
|
329
|
+
stepName: "failing_step",
|
|
330
|
+
stepIndex: 0,
|
|
331
|
+
});
|
|
332
|
+
await post(app, "/workflow/step/fail", {
|
|
333
|
+
executionId,
|
|
334
|
+
stepName: "failing_step",
|
|
335
|
+
stepIndex: 0,
|
|
336
|
+
error: "Service unavailable",
|
|
337
|
+
durationMs: 800,
|
|
338
|
+
attempt: 4,
|
|
339
|
+
maxRetries: 3,
|
|
340
|
+
});
|
|
341
|
+
const step = getStep(db, executionId, "failing_step");
|
|
342
|
+
expect(step.status).toBe("failed");
|
|
343
|
+
expect(step.attempt).toBe(4);
|
|
344
|
+
expect(step.max_retries).toBe(3);
|
|
345
|
+
expect(step.error).toBe("Service unavailable");
|
|
346
|
+
});
|
|
347
|
+
});
|
|
348
|
+
//# sourceMappingURL=workflow-runtime.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-runtime.spec.js","sourceRoot":"","sources":["../../src/runtime/workflow-runtime.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -631,7 +631,7 @@ export function createDashboardRoutes(app, dbManager, config) {
|
|
|
631
631
|
return c.json({ error: "Execution not found" }, 404);
|
|
632
632
|
}
|
|
633
633
|
const steps = db
|
|
634
|
-
.prepare(`SELECT id, step_name, step_index, status, output, error, duration_ms, created_at
|
|
634
|
+
.prepare(`SELECT id, step_name, step_index, status, output, error, duration_ms, attempt, max_retries, created_at
|
|
635
635
|
FROM workflow_steps
|
|
636
636
|
WHERE execution_id = ?
|
|
637
637
|
ORDER BY step_index`)
|
|
@@ -668,6 +668,8 @@ export function createDashboardRoutes(app, dbManager, config) {
|
|
|
668
668
|
output: s.output ? JSON.parse(s.output) : null,
|
|
669
669
|
errorMessage: s.error,
|
|
670
670
|
durationMs: s.duration_ms,
|
|
671
|
+
attempt: s.attempt,
|
|
672
|
+
maxRetries: s.max_retries,
|
|
671
673
|
createdAt: new Date(s.created_at * 1000).toISOString(),
|
|
672
674
|
})),
|
|
673
675
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dashboard-routes.js","sourceRoot":"","sources":["../../src/services/dashboard-routes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dashboard-routes.js","sourceRoot":"","sources":["../../src/services/dashboard-routes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAM1D,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAGtC,SAAS,qBAAqB;IAC7B,MAAM,aAAa,GAAG;QACrB,IAAI,CAAC,SAAS,EAAE,gBAAgB,CAAC;QACjC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,gBAAgB,CAAC;QACvC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,gBAAgB,CAAC;KACpD,CAAC;IAEF,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;QAC/B,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YACnB,OAAO,CAAC,CAAC;QACV,CAAC;IACF,CAAC;IAED,OAAO,IAAI,CAAC;AACb,CAAC;AAGD,MAAM,UAAU,GAA2B;IAC1C,OAAO,EAAE,WAAW;IACpB,KAAK,EAAE,wBAAwB;IAC/B,MAAM,EAAE,UAAU;IAClB,OAAO,EAAE,kBAAkB;IAC3B,MAAM,EAAE,WAAW;IACnB,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,eAAe;IACvB,MAAM,EAAE,cAAc;IACtB,OAAO,EAAE,WAAW;IACpB,QAAQ,EAAE,YAAY;CACtB,CAAC;AAEF,SAAS,WAAW,CAAC,QAAgB;IACpC,MAAM,GAAG,GAAG,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1D,OAAO,UAAU,CAAC,GAAG,CAAC,IAAI,0BAA0B,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,qBAAqB,CACpC,GAAS,EACT,SAA0B,EAC1B,MAAkB;IAElB,MAAM,iBAAiB,GAAG,qBAAqB,EAAE,CAAC;IAClD,MAAM,YAAY,GAAG,iBAAiB,KAAK,IAAI,CAAC;IAIhD,SAAS,iBAAiB,CAAC,WAAmB;QAC7C,OAAO,MAAM,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC;IACzC,CAAC;IAGD,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE;QAC5B,OAAO,CAAC,CAAC,IAAI,CAAC;YACb,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,IAAI,EAAE,MAAM,CAAC,IAAI;SACjB,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAGH,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QACjB,GAAG,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC,CAAC,EAAE,EAAE;YACjC,IAAI,CAAC;gBACJ,MAAM,EAAE,GAAG,SAAS,CAAC,UAAU,CAAC;gBAEhC,MAAM,MAAM,GAAG,EAAE;qBACf,OAAO,CACP;;qBAEe,CACf;qBACA,GAAG,EAA6B,CAAC;gBAEnC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC3B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,OAAO,CAAC,CAAC,IAAI,CACZ,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAC3D,GAAG,CACH,CAAC;YACH,CAAC;QACF,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,GAAG,CAAC,6BAA6B,EAAE,CAAC,CAAC,EAAE,EAAE;YAC5C,MAAM,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAG3C,IAAI,SAAS,KAAK,YAAY,IAAI,SAAS,KAAK,eAAe,EAAE,CAAC;gBACjE,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,iBAAiB,EAAE,EAAE,GAAG,CAAC,CAAC;YAClD,CAAC;YAED,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;YACzD,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC;YAE1D,IAAI,CAAC;gBACJ,MAAM,EAAE,GAAG,SAAS,CAAC,UAAU,CAAC;gBAGhC,MAAM,aAAa,GAAG,EAAE;qBACtB,OAAO,CAAC,sBAAsB,SAAS,IAAI,CAAC;qBAC5C,GAAG,EAA6B,CAAC;gBACnC,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAGrD,MAAM,WAAW,GAAG,EAAE;qBACpB,OAAO,CAAC,kCAAkC,SAAS,GAAG,CAAC;qBACvD,GAAG,EAAuB,CAAC;gBAC7B,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC;gBAGhC,IAAI,IAA+B,CAAC;gBACpC,IAAI,SAAS,KAAK,YAAY,EAAE,CAAC;oBAEhC,IAAI,GAAG,EAAE;yBACP,OAAO,CACP,4EAA4E,SAAS,oBAAoB,CACzG;yBACA,GAAG,CAAC,KAAK,EAAE,MAAM,CAA8B,CAAC;gBACnD,CAAC;qBAAM,CAAC;oBACP,IAAI,GAAG,EAAE;yBACP,OAAO,CAAC,kBAAkB,SAAS,oBAAoB,CAAC;yBACxD,GAAG,CAAC,KAAK,EAAE,MAAM,CAA8B,CAAC;gBACnD,CAAC;gBAGD,MAAM,cAAc,GACnB,SAAS,KAAK,YAAY;oBACzB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,eAAe,CAAC;oBAC9C,CAAC,CAAC,OAAO,CAAC;gBAEZ,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAC;YACzD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,OAAO,CAAC,CAAC,IAAI,CACZ,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAC3D,GAAG,CACH,CAAC;YACH,CAAC;QACF,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC,CAAC,EAAE,EAAE;YACjC,IAAI,CAAC;gBACJ,MAAM,EAAE,GAAG,SAAS,CAAC,UAAU,CAAC;gBAEhC,MAAM,MAAM,GAAG,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;oBAChE,MAAM,aAAa,GAAG,EAAE;yBACtB,OAAO,CAAC,sBAAsB,SAAS,IAAI,CAAC;yBAC5C,GAAG,EAKH,CAAC;oBAGH,MAAM,cAAc,GACnB,SAAS,KAAK,YAAY;wBACzB,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,eAAe,CAAC;wBAC7D,CAAC,CAAC,aAAa,CAAC;oBAElB,OAAO;wBACN,IAAI,EAAE,SAAS;wBACf,OAAO,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;4BACrC,IAAI,EAAE,GAAG,CAAC,IAAI;4BACd,IAAI,EAAE,GAAG,CAAC,IAAI;4BACd,OAAO,EAAE,GAAG,CAAC,OAAO,KAAK,CAAC;4BAC1B,UAAU,EAAE,GAAG,CAAC,EAAE,KAAK,CAAC;yBACxB,CAAC,CAAC;qBACH,CAAC;gBACH,CAAC,CAAC,CAAC;gBAEH,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC3B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,OAAO,CAAC,CAAC,IAAI,CACZ,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAC3D,GAAG,CACH,CAAC;YACH,CAAC;QACF,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,IAAI,CAAC,iBAAiB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;YACvC,MAAM,IAAI,GAAsB,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;YACnD,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;YAEvB,IAAI,CAAC,KAAK,EAAE,CAAC;gBACZ,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,mBAAmB,EAAE,EAAE,GAAG,CAAC,CAAC;YACpD,CAAC;YAGD,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACnD,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC3C,OAAO,CAAC,CAAC,IAAI,CACZ,EAAE,KAAK,EAAE,gDAAgD,EAAE,EAC3D,GAAG,CACH,CAAC;YACH,CAAC;YAGD,MAAM,aAAa,GAAG,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;YACtD,MAAM,kBAAkB,GAAG,CAAC,aAAa,CAAC,IAAI,CAC7C,CAAC,KAAK,EAAE,EAAE,CACT,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,QAAQ,KAAK,EAAE,CAAC;gBAC7C,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,QAAQ,KAAK,EAAE,CAAC,CAC9C,CAAC;YAEF,IAAI,kBAAkB,EAAE,CAAC;gBACxB,OAAO,CAAC,CAAC,IAAI,CACZ;oBACC,KAAK,EACJ,gEAAgE;iBACjE,EACD,GAAG,CACH,CAAC;YACH,CAAC;YAED,IAAI,CAAC;gBACJ,MAAM,EAAE,GAAG,SAAS,CAAC,UAAU,CAAC;gBAChC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAC7B,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAA+B,CAAC;gBAGxD,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;oBAC5C,MAAM,EAAE,aAAa,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,GAAG,CAAC;oBAC1C,OAAO,IAAI,CAAC;gBACb,CAAC,CAAC,CAAC;gBAEH,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;gBACxC,OAAO,CAAC,CAAC,IAAI,CAAC;oBACb,OAAO,EAAE,gBAAgB;oBACzB,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE;wBACL,QAAQ;wBACR,SAAS,EAAE,OAAO,CAAC,MAAM;wBACzB,YAAY,EAAE,CAAC;qBACf;iBACD,CAAC,CAAC;YACJ,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,OAAO,CAAC,CAAC,IAAI,CACZ;oBACC,OAAO,EAAE,EAAE;oBACX,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;oBACvD,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;iBACpD,EACD,GAAG,CACH,CAAC;YACH,CAAC;QACF,CAAC,CAAC,CAAC;QAGH,GAAG,CAAC,GAAG,CAAC,oBAAoB,EAAE,CAAC,CAAC,EAAE,EAAE;YACnC,IAAI,CAAC;gBACJ,MAAM,EAAE,GAAG,SAAS,CAAC,UAAU,CAAC;gBAChC,MAAM,QAAQ,GAAG,EAAE;qBACjB,OAAO,CAAC,0CAA0C,CAAC;qBACnD,GAAG,EAQO,CAAC;gBAEb,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACf,OAAO,CAAC,CAAC,IAAI,CAAC;wBACb,kBAAkB,EAAE,MAAM;wBAC1B,YAAY,EAAE,IAAI;wBAClB,wBAAwB,EAAE,KAAK;wBAC/B,WAAW,EAAE,KAAK;qBAClB,CAAC,CAAC;gBACJ,CAAC;gBAED,OAAO,CAAC,CAAC,IAAI,CAAC;oBACb,kBAAkB,EAAE,QAAQ,CAAC,oBAAoB;oBACjD,YAAY,EAAE,QAAQ,CAAC,aAAa,KAAK,CAAC;oBAC1C,wBAAwB,EAAE,QAAQ,CAAC,0BAA0B,KAAK,CAAC;oBACnE,WAAW,EAAE,QAAQ,CAAC,YAAY,KAAK,CAAC;iBACxC,CAAC,CAAC;YACJ,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,OAAO,CAAC,CAAC,IAAI,CACZ,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAC3D,GAAG,CACH,CAAC;YACH,CAAC;QACF,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,KAAK,CAAC,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;YAC3C,IAAI,CAAC;gBACJ,MAAM,IAAI,GAKN,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;gBAEvB,MAAM,EAAE,GAAG,SAAS,CAAC,UAAU,CAAC;gBAGhC,MAAM,OAAO,GAAa,EAAE,CAAC;gBAC7B,MAAM,MAAM,GAAwB,EAAE,CAAC;gBAEvC,IAAI,IAAI,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;oBAC3C,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;oBACzC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;gBACtC,CAAC;gBACD,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;oBACrC,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;oBAClC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACxC,CAAC;gBACD,IAAI,IAAI,CAAC,wBAAwB,KAAK,SAAS,EAAE,CAAC;oBACjD,OAAO,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;oBAC/C,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACpD,CAAC;gBACD,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;oBACpC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;oBACjC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACvC,CAAC;gBAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACxB,OAAO,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;oBACnD,MAAM,GAAG,GAAG,4BAA4B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC;oBAC1E,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC;gBAChC,CAAC;gBAGD,MAAM,QAAQ,GAAG,EAAE;qBACjB,OAAO,CAAC,0CAA0C,CAAC;qBACnD,GAAG,EAKJ,CAAC;gBAEF,OAAO,CAAC,CAAC,IAAI,CAAC;oBACb,kBAAkB,EAAE,QAAQ,CAAC,oBAAoB;oBACjD,YAAY,EAAE,QAAQ,CAAC,aAAa,KAAK,CAAC;oBAC1C,wBAAwB,EAAE,QAAQ,CAAC,0BAA0B,KAAK,CAAC;oBACnE,WAAW,EAAE,QAAQ,CAAC,YAAY,KAAK,CAAC;iBACxC,CAAC,CAAC;YACJ,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,OAAO,CAAC,CAAC,IAAI,CACZ,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAC3D,GAAG,CACH,CAAC;YACH,CAAC;QACF,CAAC,CAAC,CAAC;IACJ,CAAC;IAGD,GAAG,CAAC,IAAI,CAAC,wBAAwB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAC9C,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACvC,MAAM,YAAY,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAEhD,IAAI,CAAC,YAAY,EAAE,CAAC;YACnB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,OAAO,aAAa,EAAE,EAAE,GAAG,CAAC,CAAC;QAC1E,CAAC;QAED,MAAM,IAAI,GAAsB,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QACnD,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QAEvB,IAAI,CAAC,KAAK,EAAE,CAAC;YACZ,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,mBAAmB,EAAE,EAAE,GAAG,CAAC,CAAC;QACpD,CAAC;QAED,IAAI,CAAC;YACJ,MAAM,EAAE,GAAG,SAAS,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;YAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC/B,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YAEjE,IAAI,OAAO,GAAc,EAAE,CAAC;YAC5B,IAAI,OAAO,GAAG,CAAC,CAAC;YAEhB,IAAI,QAAQ,EAAE,CAAC;gBACd,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACtB,CAAC;iBAAM,CAAC;gBACP,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBACxB,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;YACxB,CAAC;YAED,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YACxC,OAAO,CAAC,CAAC,IAAI,CAAC;gBACb,OAAO;gBACP,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE;oBACL,QAAQ;oBACR,SAAS,EAAE,OAAO,CAAC,MAAM;oBACzB,YAAY,EAAE,OAAO;iBACrB;aACD,CAAC,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,CAAC,IAAI,CACZ;gBACC,OAAO,EAAE,EAAE;gBACX,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;gBACvD,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;aACpD,EACD,GAAG,CACH,CAAC;QACH,CAAC;IACF,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,yBAAyB,EAAE,CAAC,CAAC,EAAE,EAAE;QACxC,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACvC,MAAM,YAAY,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAEhD,IAAI,CAAC,YAAY,EAAE,CAAC;YACnB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,OAAO,aAAa,EAAE,EAAE,GAAG,CAAC,CAAC;QAC1E,CAAC;QAED,IAAI,CAAC;YACJ,MAAM,EAAE,GAAG,SAAS,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;YAC/C,MAAM,MAAM,GAAG,EAAE;iBACf,OAAO,CACP;;oBAEe,CACf;iBACA,GAAG,EAA6B,CAAC;YAEnC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QAC3B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,CAAC,IAAI,CACZ,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAC3D,GAAG,CACH,CAAC;QACH,CAAC;IACF,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,oCAAoC,EAAE,CAAC,CAAC,EAAE,EAAE;QACnD,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACvC,MAAM,YAAY,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAEhD,IAAI,CAAC,YAAY,EAAE,CAAC;YACnB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,OAAO,aAAa,EAAE,EAAE,GAAG,CAAC,CAAC;QAC1E,CAAC;QAED,MAAM,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAC3C,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC;QAE1D,IAAI,CAAC;YACJ,MAAM,EAAE,GAAG,SAAS,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;YAG/C,MAAM,aAAa,GAAG,EAAE;iBACtB,OAAO,CAAC,sBAAsB,SAAS,IAAI,CAAC;iBAC5C,GAAG,EAEH,CAAC;YACH,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAGrD,MAAM,WAAW,GAAG,EAAE;iBACpB,OAAO,CAAC,kCAAkC,SAAS,GAAG,CAAC;iBACvD,GAAG,EAAuB,CAAC;YAC7B,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC;YAGhC,MAAM,IAAI,GAAG,EAAE;iBACb,OAAO,CAAC,kBAAkB,SAAS,oBAAoB,CAAC;iBACxD,GAAG,CAAC,KAAK,EAAE,MAAM,CAA8B,CAAC;YAElD,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QACzC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,CAAC,IAAI,CACZ,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAC3D,GAAG,CACH,CAAC;QACH,CAAC;IACF,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,yBAAyB,EAAE,CAAC,CAAC,EAAE,EAAE;QACxC,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACvC,MAAM,YAAY,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAEhD,IAAI,CAAC,YAAY,EAAE,CAAC;YACnB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,OAAO,aAAa,EAAE,EAAE,GAAG,CAAC,CAAC;QAC1E,CAAC;QAED,IAAI,CAAC;YACJ,MAAM,EAAE,GAAG,SAAS,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;YAG/C,MAAM,YAAY,GAAG,EAAE;iBACrB,OAAO,CACP;;oBAEe,CACf;iBACA,GAAG,EAA6B,CAAC;YAEnC,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;gBACzC,MAAM,aAAa,GAAG,EAAE;qBACtB,OAAO,CAAC,sBAAsB,KAAK,CAAC,IAAI,IAAI,CAAC;qBAC7C,GAAG,EAKH,CAAC;gBAEH,OAAO;oBACN,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,OAAO,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;wBACpC,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,OAAO,EAAE,GAAG,CAAC,OAAO,KAAK,CAAC;wBAC1B,UAAU,EAAE,GAAG,CAAC,EAAE,KAAK,CAAC;qBACxB,CAAC,CAAC;iBACH,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QAC3B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,CAAC,IAAI,CACZ,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAC3D,GAAG,CACH,CAAC;QACH,CAAC;IACF,CAAC,CAAC,CAAC;IAGH,GAAG,CAAC,GAAG,CAAC,6BAA6B,EAAE,CAAC,CAAC,EAAE,EAAE;QAC5C,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACvC,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,CAAC;QAE1C,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,iBAAiB,EAAE,EAAE,GAAG,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,CAAC;YACJ,MAAM,EAAE,GAAG,SAAS,CAAC,UAAU,CAAC;YAEhC,MAAM,OAAO,GAAG;gBACf,OAAO,EAAE,CAAC;gBACV,UAAU,EAAE,CAAC;gBACb,YAAY,EAAE,CAAC;gBACf,MAAM,EAAE,CAAC;gBACT,UAAU,EAAE,CAAC;aACb,CAAC;YAEF,MAAM,YAAY,GAAG,EAAE;iBACrB,OAAO,CACP;;;sBAGiB,CACjB;iBACA,GAAG,CAAC,SAAS,CAA6C,CAAC;YAE7D,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;gBAChC,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;oBAC9B,OAAO,CAAC,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC;gBAC7B,CAAC;qBAAM,IAAI,GAAG,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;oBACxC,OAAO,CAAC,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC;gBAChC,CAAC;qBAAM,IAAI,GAAG,CAAC,MAAM,KAAK,cAAc,EAAE,CAAC;oBAC1C,OAAO,CAAC,YAAY,GAAG,GAAG,CAAC,KAAK,CAAC;gBAClC,CAAC;qBAAM,IAAI,GAAG,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;oBACpC,OAAO,CAAC,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC;gBAC5B,CAAC;qBAAM,IAAI,GAAG,CAAC,MAAM,KAAK,aAAa,EAAE,CAAC;oBACzC,OAAO,CAAC,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC;gBAChC,CAAC;YACF,CAAC;YAED,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAC5B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,CAAC,IAAI,CACZ,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAC3D,GAAG,CACH,CAAC;QACH,CAAC;IACF,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,8BAA8B,EAAE,CAAC,CAAC,EAAE,EAAE;QAC7C,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACvC,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,CAAC;QAC1C,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;QAEzD,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,iBAAiB,EAAE,EAAE,GAAG,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,CAAC;YACJ,MAAM,EAAE,GAAG,SAAS,CAAC,UAAU,CAAC;YAEhC,MAAM,QAAQ,GAAG,EAAE;iBACjB,OAAO,CACP;;;;cAIS,CACT;iBACA,GAAG,CAAC,SAAS,EAAE,KAAK,CAMpB,CAAC;YAEH,OAAO,CAAC,CAAC,IAAI,CAAC;gBACb,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAC9B,EAAE,EAAE,CAAC,CAAC,EAAE;oBACR,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE;oBAC9B,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAY;oBACzC,OAAO,EAAE,CAAC,CAAC,OAAO;oBAClB,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE;iBACtD,CAAC,CAAC;aACH,CAAC,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,CAAC,IAAI,CACZ,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAC3D,GAAG,CACH,CAAC;QACH,CAAC;IACF,CAAC,CAAC,CAAC;IAGH,GAAG,CAAC,GAAG,CAAC,6BAA6B,EAAE,CAAC,CAAC,EAAE,EAAE;QAC5C,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACvC,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,CAAC;QAC1C,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC;QAC1D,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAE1C,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,yBAAyB,EAAE,EAAE,GAAG,CAAC,CAAC;QAC1D,CAAC;QAED,IAAI,CAAC;YACJ,MAAM,EAAE,GAAG,SAAS,CAAC,UAAU,CAAC;YAEhC,MAAM,KAAK,GACV,EAAE;iBACA,OAAO,CACP;+CACyC,CACzC;iBACA,GAAG,CAAC,SAAS,EAAE,GAAG,CACpB,CAAC,KAAK,CAAC;YAER,MAAM,OAAO,GAAG,EAAE;iBAChB,OAAO,CACP;;;;uBAIkB,CAClB;iBACA,GAAG,CAAC,SAAS,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,CAIjC,CAAC;YAEH,OAAO,CAAC,CAAC,IAAI,CAAC;gBACb,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAC5B,GAAG,EAAE,CAAC,CAAC,GAAG;oBACV,KAAK,EAAE,CAAC,CAAC,KAAK;oBACd,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,UAAU,GAAG,GAAG,CAAC;oBAC3C,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE;iBACtD,CAAC,CAAC;gBACH,KAAK;gBACL,KAAK;gBACL,MAAM;aACN,CAAC,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,CAAC,IAAI,CACZ,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAC3D,GAAG,CACH,CAAC;QACH,CAAC;IACF,CAAC,CAAC,CAAC;IAGH,GAAG,CAAC,GAAG,CAAC,6BAA6B,EAAE,CAAC,CAAC,EAAE,EAAE;QAC5C,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACvC,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,CAAC;QAC1C,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC;QAC1D,MAAM,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QAE3C,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,yBAAyB,EAAE,EAAE,GAAG,CAAC,CAAC;QAC1D,CAAC;QAED,IAAI,CAAC;YACJ,MAAM,EAAE,GAAG,SAAS,CAAC,UAAU,CAAC;YAChC,MAAM,UAAU,GAAG,KAAK,GAAG,CAAC,CAAC;YAE7B,MAAM,OAAO,GAAG,MAAM;gBACrB,CAAC,CAAE,EAAE;qBACF,OAAO,CACP;;;;wBAIiB,CACjB;qBACA,GAAG,CAAC,SAAS,EAAE,IAAI,MAAM,GAAG,EAAE,UAAU,EAAE,MAAM,CAG/C;gBACJ,CAAC,CAAE,EAAE;qBACF,OAAO,CACP;;;;uBAIgB,CAChB;qBACA,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,MAAM,CAGhC,CAAC;YAEN,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC;YAEvC,OAAO,CAAC,CAAC,IAAI,CAAC;gBACb,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC;gBAChC,OAAO;gBACP,KAAK;gBACL,MAAM;aACN,CAAC,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,CAAC,IAAI,CACZ,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAC3D,GAAG,CACH,CAAC;QACH,CAAC;IACF,CAAC,CAAC,CAAC;IAGH,GAAG,CAAC,GAAG,CAAC,mCAAmC,EAAE,CAAC,CAAC,EAAE,EAAE;QAClD,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACvC,MAAM,cAAc,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC;QAClD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CACrB,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC,EACvD,GAAG,CACH,CAAC;QACF,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;QACvE,MAAM,YAAY,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,IAAI,IAAI,CAAC;QAElE,MAAM,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC;QAE9C,IAAI,CAAC,cAAc,EAAE,CAAC;YACrB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oBAAoB,EAAE,EAAE,GAAG,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC;YAC7B,SAAS;YACT,SAAS;YACT,WAAW;YACX,QAAQ;YACR,WAAW;SACX,CAAC,CAAC;QAEH,IAAI,CAAC;YACJ,MAAM,EAAE,GAAG,SAAS,CAAC,UAAU,CAAC;YAChC,MAAM,YAAY,GAAG,eAAe,CAAC,cAAc,CAAC,CAAC;YAGrD,IAAI,OAAO,GAAkB,IAAI,CAAC;YAClC,IAAI,QAAQ,EAAE,CAAC;gBACd,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;gBAClD,IAAI,KAAK,EAAE,CAAC;oBACX,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACnC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;oBAC7B,MAAM,WAAW,GAA2B;wBAC3C,CAAC,EAAE,CAAC;wBACJ,CAAC,EAAE,EAAE;wBACL,CAAC,EAAE,IAAI;wBACP,CAAC,EAAE,KAAK;qBACR,CAAC;oBACF,OAAO;wBACN,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBACjE,CAAC;YACF,CAAC;YAGD,MAAM,UAAU,GAAa,CAAC,qBAAqB,CAAC,CAAC;YACrD,MAAM,SAAS,GAAwB,CAAC,YAAY,CAAC,CAAC;YAEtD,IAAI,YAAY,IAAI,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;gBACrD,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBAChC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC9B,CAAC;YAED,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;gBACtB,UAAU,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBACrC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACzB,CAAC;YAED,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAEvC,MAAM,QAAQ,GAAG,EAAE;iBACjB,OAAO,CACP,6DAA6D,KAAK,EAAE,CACpE;iBACA,GAAG,CAAC,GAAG,SAAS,CAAsB,CAAC;YAEzC,MAAM,UAAU,GAAG,EAAE;iBACnB,OAAO,CACP;;;;;;;;;;;cAWS,KAAK;;uBAEI,CAClB;iBACA,GAAG,CAAC,GAAG,SAAS,EAAE,KAAK,EAAE,MAAM,CAU/B,CAAC;YAEH,OAAO,CAAC,CAAC,IAAI,CAAC;gBACb,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAClC,EAAE,EAAE,CAAC,CAAC,EAAE;oBACR,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE;oBAC9B,SAAS,EAAE,CAAC,CAAC,UAAU;wBACtB,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE;wBAC7C,CAAC,CAAC,IAAI;oBACP,WAAW,EAAE,CAAC,CAAC,YAAY;wBAC1B,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE;wBAC/C,CAAC,CAAC,IAAI;oBACP,UAAU,EACT,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,YAAY;wBAC7B,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,IAAI;wBACxC,CAAC,CAAC,IAAI;oBACR,UAAU,EAAE,CAAC,CAAC,WAAW;oBACzB,cAAc,EAAE,CAAC,CAAC,eAAe;oBACjC,YAAY,EAAE,CAAC,CAAC,KAAK;oBACrB,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE;iBACtD,CAAC,CAAC;gBACH,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACrB,KAAK;gBACL,MAAM;aACN,CAAC,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,CAAC,IAAI,CACZ,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAC3D,GAAG,CACH,CAAC;QACH,CAAC;IACF,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,gDAAgD,EAAE,CAAC,CAAC,EAAE,EAAE;QAC/D,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACvC,MAAM,WAAW,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAC/C,MAAM,cAAc,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC;QAElD,IAAI,CAAC,cAAc,EAAE,CAAC;YACrB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oBAAoB,EAAE,EAAE,GAAG,CAAC,CAAC;QACrD,CAAC;QAED,IAAI,CAAC;YACJ,MAAM,EAAE,GAAG,SAAS,CAAC,UAAU,CAAC;YAEhC,MAAM,SAAS,GAAG,EAAE;iBAClB,OAAO,CACP;;mBAEc,CACd;iBACA,GAAG,CAAC,WAAW,CAYL,CAAC;YAEb,IAAI,CAAC,SAAS,EAAE,CAAC;gBAChB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,EAAE,EAAE,GAAG,CAAC,CAAC;YACtD,CAAC;YAED,MAAM,KAAK,GAAG,EAAE;iBACd,OAAO,CACP;;;0BAGqB,CACrB;iBACA,GAAG,CAAC,WAAW,CAWf,CAAC;YAEH,OAAO,CAAC,CAAC,IAAI,CAAC;gBACb,SAAS,EAAE;oBACV,EAAE,EAAE,SAAS,CAAC,EAAE;oBAChB,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,WAAW,EAAE;oBACtC,KAAK,EAAE,SAAS,CAAC,KAAK;wBACrB,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAa;wBAC1C,CAAC,CAAC,IAAI;oBACP,MAAM,EAAE,SAAS,CAAC,MAAM;wBACvB,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAa;wBAC3C,CAAC,CAAC,IAAI;oBACP,SAAS,EAAE,SAAS,CAAC,UAAU;wBAC9B,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE;wBACrD,CAAC,CAAC,IAAI;oBACP,WAAW,EAAE,SAAS,CAAC,YAAY;wBAClC,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE;wBACvD,CAAC,CAAC,IAAI;oBACP,UAAU,EACT,SAAS,CAAC,UAAU,IAAI,SAAS,CAAC,YAAY;wBAC7C,CAAC,CAAC,CAAC,SAAS,CAAC,YAAY,GAAG,SAAS,CAAC,UAAU,CAAC,GAAG,IAAI;wBACxD,CAAC,CAAC,IAAI;oBACR,UAAU,EAAE,KAAK,CAAC,MAAM;oBACxB,cAAc,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,MAAM;oBACpE,YAAY,EAAE,SAAS,CAAC,KAAK;oBAC7B,SAAS,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE;iBAC9D;gBACD,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACxB,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;oBAChB,QAAQ,EAAE,CAAC,CAAC,SAAS;oBACrB,SAAS,EAAE,CAAC,CAAC,UAAU;oBACvB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE;oBAC9B,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAa,CAAC,CAAC,CAAC,IAAI;oBAC3D,YAAY,EAAE,CAAC,CAAC,KAAK;oBACrB,UAAU,EAAE,CAAC,CAAC,WAAW;oBACzB,OAAO,EAAE,CAAC,CAAC,OAAO;oBAClB,UAAU,EAAE,CAAC,CAAC,WAAW;oBACzB,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE;iBACtD,CAAC,CAAC;aACH,CAAC,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,CAAC,IAAI,CACZ,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAC3D,GAAG,CACH,CAAC;QACH,CAAC;IACF,CAAC,CAAC,CAAC;IAGH,GAAG,CAAC,GAAG,CAAC,0BAA0B,EAAE,CAAC,CAAC,EAAE,EAAE;QACzC,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACvC,MAAM,MAAM,GAAG,MAAM,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;QACpC,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC;QAE1D,IAAI,CAAC,MAAM,EAAE,CAAC;YACb,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gCAAgC,EAAE,EAAE,GAAG,CAAC,CAAC;QACjE,CAAC;QAED,IAAI,CAAC;YACJ,MAAM,EAAE,GAAG,SAAS,CAAC,UAAU,CAAC;YAEhC,MAAM,KAAK,GACV,EAAE;iBACA,OAAO,CAAC,4DAA4D,CAAC;iBACrE,GAAG,CAAC,MAAM,CACZ,CAAC,KAAK,CAAC;YAER,MAAM,OAAO,GAAG,EAAE;iBAChB,OAAO,CACP;;;;uBAIkB,CAClB;iBACA,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAKzB,CAAC;YAEH,OAAO,CAAC,CAAC,IAAI,CAAC;gBACb,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAC5B,GAAG,EAAE,CAAC,CAAC,GAAG;oBACV,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,WAAW,EAAE,CAAC,CAAC,YAAY;oBAC3B,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE;iBACtD,CAAC,CAAC;gBACH,KAAK;gBACL,KAAK;gBACL,MAAM;aACN,CAAC,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,CAAC,IAAI,CACZ,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAC3D,GAAG,CACH,CAAC;QACH,CAAC;IACF,CAAC,CAAC,CAAC;IAGH,GAAG,CAAC,GAAG,CAAC,+BAA+B,EAAE,CAAC,CAAC,EAAE,EAAE;QAC9C,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACvC,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,CAAC;QAC9C,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;QAEzD,IAAI,CAAC,cAAc,EAAE,CAAC;YACrB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,wBAAwB,EAAE,EAAE,GAAG,CAAC,CAAC;QACzD,CAAC;QAED,IAAI,CAAC;YACJ,MAAM,EAAE,GAAG,SAAS,CAAC,UAAU,CAAC;YAEhC,MAAM,UAAU,GAAG,EAAE;iBACnB,OAAO,CACP;;;;cAIS,CACT;iBACA,GAAG,CAAC,OAAO,EAAE,KAAK,CAUlB,CAAC;YAEH,OAAO,CAAC,CAAC,IAAI,CAAC;gBACb,cAAc;gBACd,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAClC,EAAE,EAAE,CAAC,CAAC,EAAE;oBACR,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE;oBAC9B,KAAK,EAAE,CAAC,CAAC,KAAK;oBACd,UAAU,EAAE,CAAC,CAAC,WAAW;oBACzB,WAAW,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE;oBAC1D,WAAW,EAAE,CAAC,CAAC,YAAY;wBAC1B,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE;wBAC/C,CAAC,CAAC,IAAI;oBACP,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE;iBACtD,CAAC,CAAC;aACH,CAAC,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,CAAC,IAAI,CACZ,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAC3D,GAAG,CACH,CAAC;QACH,CAAC;IACF,CAAC,CAAC,CAAC;IAGH,GAAG,CAAC,GAAG,CAAC,6BAA6B,EAAE,CAAC,CAAC,EAAE,EAAE;QAC5C,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACvC,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,CAAC;QAC1C,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC;QAE1D,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,yBAAyB,EAAE,EAAE,GAAG,CAAC,CAAC;QAC1D,CAAC;QAED,IAAI,CAAC;YACJ,MAAM,EAAE,GAAG,SAAS,CAAC,UAAU,CAAC;YAEhC,MAAM,KAAK,GACV,EAAE;iBACA,OAAO,CACP,kEAAkE,CAClE;iBACA,GAAG,CAAC,SAAS,CACf,CAAC,KAAK,CAAC;YAER,MAAM,OAAO,GAAG,EAAE;iBAChB,OAAO,CACP;;;;uBAIkB,CAClB;iBACA,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,CAO5B,CAAC;YAEH,OAAO,CAAC,CAAC,IAAI,CAAC;gBACb,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAC5B,EAAE,EAAE,CAAC,CAAC,EAAE;oBACR,aAAa,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE;oBAC9D,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAa,CAAC,CAAC,CAAC,IAAI;oBAC9D,UAAU,EAAE,CAAC,CAAC,WAAW;oBACzB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE;oBAC9B,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE;iBACtD,CAAC,CAAC;gBACH,KAAK;gBACL,KAAK;gBACL,MAAM;aACN,CAAC,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,CAAC,IAAI,CACZ,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAC3D,GAAG,CACH,CAAC;QACH,CAAC;IACF,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,6BAA6B,EAAE,CAAC,CAAC,EAAE,EAAE;QAC5C,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACvC,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,CAAC;QAE1C,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,yBAAyB,EAAE,EAAE,GAAG,CAAC,CAAC;QAC1D,CAAC;QAED,IAAI,CAAC;YACJ,MAAM,EAAE,GAAG,SAAS,CAAC,UAAU,CAAC;YAEhC,MAAM,OAAO,GAAG,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;YAEzC,MAAM,YAAY,GAAG,EAAE;iBACrB,OAAO,CACP;;;sBAGiB,CACjB;iBACA,GAAG,CAAC,SAAS,CAA6C,CAAC;YAE7D,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;gBAChC,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;oBAC9B,OAAO,CAAC,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC;gBAC7B,CAAC;qBAAM,IAAI,GAAG,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;oBACnC,OAAO,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;gBAC3B,CAAC;YACF,CAAC;YAED,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAC5B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,CAAC,IAAI,CACZ,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAC3D,GAAG,CACH,CAAC;QACH,CAAC;IACF,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,gCAAgC,EAAE,CAAC,CAAC,EAAE,EAAE;QAC/C,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACvC,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,CAAC;QAC1C,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;QAEzD,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,yBAAyB,EAAE,EAAE,GAAG,CAAC,CAAC;QAC1D,CAAC;QAED,IAAI,CAAC;YACJ,MAAM,EAAE,GAAG,SAAS,CAAC,UAAU,CAAC;YAEhC,MAAM,UAAU,GAAG,EAAE;iBACnB,OAAO,CACP;;;;cAIS,CACT;iBACA,GAAG,CAAC,SAAS,EAAE,KAAK,CAQpB,CAAC;YAEH,OAAO,CAAC,CAAC,IAAI,CAAC;gBACb,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAClC,EAAE,EAAE,CAAC,CAAC,EAAE;oBACR,OAAO,EAAE,CAAC,CAAC,QAAQ;oBACnB,aAAa,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE;oBAC9D,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE;oBAC9B,KAAK,EAAE,CAAC,CAAC,KAAK;oBACd,UAAU,EAAE,CAAC,CAAC,WAAW;oBACzB,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE;iBACtD,CAAC,CAAC;aACH,CAAC,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,CAAC,IAAI,CACZ,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAC3D,GAAG,CACH,CAAC;QACH,CAAC;IACF,CAAC,CAAC,CAAC;IAGH,IAAI,YAAY,EAAE,CAAC;QAElB,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE;YAC1B,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;YACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;YAE/C,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC3B,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC;YACrB,CAAC;YAED,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;YACvC,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;YAEvC,OAAO,IAAI,QAAQ,CAAC,OAAO,EAAE;gBAC5B,OAAO,EAAE;oBACR,cAAc,EAAE,QAAQ;oBACxB,eAAe,EAAE,0BAA0B;iBAC3C;aACD,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAMH,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE;YAElB,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBACpC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC;YACrB,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,EAAE,YAAY,CAAC,CAAC;YACxD,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC5B,OAAO,CAAC,CAAC,IAAI,CACZ,kEAAkE,EAClE,GAAG,CACH,CAAC;YACH,CAAC;YAED,MAAM,OAAO,GAAG,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YACjD,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACxB,CAAC,CAAC,CAAC;IACJ,CAAC;AACF,CAAC"}
|
|
@@ -20,6 +20,8 @@ export interface WorkflowStep {
|
|
|
20
20
|
output: unknown;
|
|
21
21
|
error: string | null;
|
|
22
22
|
durationMs: number | null;
|
|
23
|
+
attempt: number | null;
|
|
24
|
+
maxRetries: number | null;
|
|
23
25
|
createdAt: number;
|
|
24
26
|
}
|
|
25
27
|
export declare function createWorkflowHandlers(db: SqliteDatabase, workerUrl?: string): {
|
|
@@ -134,16 +134,16 @@ export function createWorkflowHandlers(db, workerUrl) {
|
|
|
134
134
|
const stepCompleteHandler = async (c) => {
|
|
135
135
|
try {
|
|
136
136
|
const body = await c.req.json();
|
|
137
|
-
const { executionId, stepName, stepIndex, output, durationMs } = body;
|
|
137
|
+
const { executionId, stepName, stepIndex, output, durationMs, attempt, maxRetries, } = body;
|
|
138
138
|
if (stepIndex !== undefined) {
|
|
139
139
|
db.prepare(`UPDATE workflow_steps
|
|
140
|
-
SET status = 'completed', output = ?, duration_ms = ?
|
|
141
|
-
WHERE execution_id = ? AND step_name = ? AND step_index = ?`).run(JSON.stringify(output), durationMs, executionId, stepName, stepIndex);
|
|
140
|
+
SET status = 'completed', output = ?, duration_ms = ?, attempt = ?, max_retries = ?
|
|
141
|
+
WHERE execution_id = ? AND step_name = ? AND step_index = ?`).run(JSON.stringify(output), durationMs, attempt ?? null, maxRetries ?? null, executionId, stepName, stepIndex);
|
|
142
142
|
}
|
|
143
143
|
else {
|
|
144
144
|
db.prepare(`UPDATE workflow_steps
|
|
145
|
-
SET status = 'completed', output = ?, duration_ms = ?
|
|
146
|
-
WHERE execution_id = ? AND step_name = ?`).run(JSON.stringify(output), durationMs, executionId, stepName);
|
|
145
|
+
SET status = 'completed', output = ?, duration_ms = ?, attempt = ?, max_retries = ?
|
|
146
|
+
WHERE execution_id = ? AND step_name = ?`).run(JSON.stringify(output), durationMs, attempt ?? null, maxRetries ?? null, executionId, stepName);
|
|
147
147
|
}
|
|
148
148
|
return c.json({ success: true });
|
|
149
149
|
}
|
|
@@ -155,16 +155,16 @@ export function createWorkflowHandlers(db, workerUrl) {
|
|
|
155
155
|
const stepFailHandler = async (c) => {
|
|
156
156
|
try {
|
|
157
157
|
const body = await c.req.json();
|
|
158
|
-
const { executionId, stepName, stepIndex, error, durationMs } = body;
|
|
158
|
+
const { executionId, stepName, stepIndex, error, durationMs, attempt, maxRetries, } = body;
|
|
159
159
|
if (stepIndex !== undefined) {
|
|
160
160
|
db.prepare(`UPDATE workflow_steps
|
|
161
|
-
SET status = 'failed', error = ?, duration_ms = ?
|
|
162
|
-
WHERE execution_id = ? AND step_name = ? AND step_index = ?`).run(error, durationMs, executionId, stepName, stepIndex);
|
|
161
|
+
SET status = 'failed', error = ?, duration_ms = ?, attempt = ?, max_retries = ?
|
|
162
|
+
WHERE execution_id = ? AND step_name = ? AND step_index = ?`).run(error, durationMs, attempt ?? null, maxRetries ?? null, executionId, stepName, stepIndex);
|
|
163
163
|
}
|
|
164
164
|
else {
|
|
165
165
|
db.prepare(`UPDATE workflow_steps
|
|
166
|
-
SET status = 'failed', error = ?, duration_ms = ?
|
|
167
|
-
WHERE execution_id = ? AND step_name = ?`).run(error, durationMs, executionId, stepName);
|
|
166
|
+
SET status = 'failed', error = ?, duration_ms = ?, attempt = ?, max_retries = ?
|
|
167
|
+
WHERE execution_id = ? AND step_name = ?`).run(error, durationMs, attempt ?? null, maxRetries ?? null, executionId, stepName);
|
|
168
168
|
}
|
|
169
169
|
return c.json({ success: true });
|
|
170
170
|
}
|