cognetivy 0.1.8 → 0.1.10

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 (43) hide show
  1. package/dist/cli.js +187 -1
  2. package/dist/cli.js.map +1 -1
  3. package/dist/default-collection-schema.d.ts.map +1 -1
  4. package/dist/default-collection-schema.js +16 -0
  5. package/dist/default-collection-schema.js.map +1 -1
  6. package/dist/default-workflow.d.ts.map +1 -1
  7. package/dist/default-workflow.js +7 -3
  8. package/dist/default-workflow.js.map +1 -1
  9. package/dist/kind-templates.d.ts +1 -0
  10. package/dist/kind-templates.d.ts.map +1 -1
  11. package/dist/kind-templates.js +14 -9
  12. package/dist/kind-templates.js.map +1 -1
  13. package/dist/mcp.d.ts.map +1 -1
  14. package/dist/mcp.js +198 -16
  15. package/dist/mcp.js.map +1 -1
  16. package/dist/models.d.ts +9 -0
  17. package/dist/models.d.ts.map +1 -1
  18. package/dist/models.js.map +1 -1
  19. package/dist/skills.d.ts.map +1 -1
  20. package/dist/skills.js +37 -24
  21. package/dist/skills.js.map +1 -1
  22. package/dist/studio/assets/index-B1uz6Ewl.css +1 -0
  23. package/dist/studio/assets/index-Cbvah-pg.js +96 -0
  24. package/dist/studio/assets/index-DTK0SCwL.css +1 -0
  25. package/dist/studio/assets/index-DmntCnBe.js +96 -0
  26. package/dist/studio/assets/index-jQR0RL1o.js +96 -0
  27. package/dist/studio/assets/index.es-C1dpmutL.js +5 -0
  28. package/dist/studio/assets/index.es-C4vElYon.js +5 -0
  29. package/dist/studio/assets/index.es-DJXBkJhb.js +5 -0
  30. package/dist/studio/assets/jspdf.es.min-B3_vfH3S.js +79 -0
  31. package/dist/studio/assets/jspdf.es.min-DCNsC1_p.js +79 -0
  32. package/dist/studio/assets/jspdf.es.min-DMFDYk4G.js +79 -0
  33. package/dist/studio/index.html +2 -2
  34. package/dist/studio-server.d.ts.map +1 -1
  35. package/dist/studio-server.js +7 -1
  36. package/dist/studio-server.js.map +1 -1
  37. package/dist/validate.d.ts.map +1 -1
  38. package/dist/validate.js +25 -0
  39. package/dist/validate.js.map +1 -1
  40. package/dist/workspace.d.ts.map +1 -1
  41. package/dist/workspace.js +5 -3
  42. package/dist/workspace.js.map +1 -1
  43. package/package.json +1 -1
package/dist/cli.js CHANGED
@@ -5,6 +5,7 @@ import fs from "node:fs/promises";
5
5
  import { ensureWorkspace, requireWorkspace, workspaceExists, readWorkflowIndex, writeWorkflowIndex, listWorkflows, readWorkflowRecord, writeWorkflowRecord, listWorkflowVersionIds, readWorkflowVersionRecord, writeWorkflowVersionRecord, writeRunFile, readRunFile, updateRunFile, appendEventLine, runExists, readCollectionSchema, writeCollectionSchema, listCollectionKindsForRun, readCollections, writeCollections, appendCollection, listNodeResults, readNodeResult, writeNodeResult, } from "./workspace.js";
6
6
  import { getMergedConfig } from "./config.js";
7
7
  import { validateWorkflowVersion } from "./validate.js";
8
+ import { getNextStep, formatNextStepLine } from "./run-engine.js";
8
9
  import { mergeKindTemplate } from "./kind-templates.js";
9
10
  import { NodeResultStatus } from "./models.js";
10
11
  import { runMcpServer } from "./mcp.js";
@@ -268,6 +269,24 @@ runCmd
268
269
  await appendCollection(runId, "run_input", input, { id: "run_input", created_by_node_id: systemNodeId, created_by_node_result_id: systemNodeResultId }, cwd);
269
270
  console.log(runId);
270
271
  console.log(`COGNETIVY_RUN_ID=${runId}`);
272
+ let { next_step, current_node_id, current_node_ids } = await getNextStep(runId, cwd);
273
+ if (next_step.action === "run_node" && next_step.node_id) {
274
+ await appendEventLine(runId, { ts: now, type: "step_started", by, data: { step: next_step.node_id, step_id: next_step.node_id } }, cwd);
275
+ await writeNodeResult(runId, next_step.node_id, {
276
+ node_result_id: generateId("node_result"),
277
+ run_id: runId,
278
+ workflow_id: workflowId,
279
+ workflow_version_id: versionId,
280
+ node_id: next_step.node_id,
281
+ status: NodeResultStatus.Started,
282
+ started_at: now,
283
+ }, cwd);
284
+ const after = await getNextStep(runId, cwd);
285
+ next_step = after.next_step;
286
+ current_node_id = after.current_node_id;
287
+ current_node_ids = after.current_node_ids;
288
+ }
289
+ console.log(formatNextStepLine(runId, "running", next_step, current_node_id, current_node_ids));
271
290
  });
272
291
  runCmd
273
292
  .command("complete")
@@ -282,6 +301,7 @@ runCmd
282
301
  }
283
302
  await updateRunFile(opts.run, { status: "completed" }, cwd);
284
303
  console.log(`Run "${opts.run}" marked as completed.`);
304
+ console.log(formatNextStepLine(opts.run, "completed", { action: "done", hint: "Run finished." }));
285
305
  });
286
306
  runCmd
287
307
  .command("status")
@@ -327,18 +347,27 @@ runCmd
327
347
  const nr = nodeResultByNodeId.get("__system__");
328
348
  nodesList.unshift({ node_id: "__system__", status: nr.status, completed_at: nr.completed_at });
329
349
  }
350
+ const { next_step, current_node_id, current_node_ids } = await getNextStep(opts.run, cwd);
330
351
  const runSummary = {
331
352
  run_id: run.run_id,
332
353
  status: run.status,
333
354
  name: run.name,
334
355
  workflow_id: run.workflow_id,
335
356
  workflow_version_id: run.workflow_version_id,
357
+ ...(current_node_id !== undefined && { current_node_id, current_node_status: "in_progress" }),
358
+ ...(current_node_ids !== undefined && current_node_ids.length > 0 && { current_node_ids }),
336
359
  };
337
360
  if (opts.json) {
338
- console.log(JSON.stringify({ run: runSummary, nodes: nodesList, collections }, null, 2));
361
+ console.log(JSON.stringify({ run: runSummary, nodes: nodesList, collections, next_step, ...(current_node_id !== undefined && { current_node_id }), ...(current_node_ids !== undefined && current_node_ids.length > 0 && { current_node_ids }) }, null, 2));
339
362
  return;
340
363
  }
341
364
  console.log("Run:", run.run_id, run.status, run.name ? `"${run.name}"` : "", `(${run.workflow_id} @ ${run.workflow_version_id})`);
365
+ if (current_node_ids !== undefined && current_node_ids.length > 0) {
366
+ console.log("Current nodes (in progress):", current_node_ids.join(", "));
367
+ }
368
+ else if (current_node_id !== undefined) {
369
+ console.log("Current node (in progress):", current_node_id);
370
+ }
342
371
  if (nodesList.length > 0) {
343
372
  console.log("Nodes:");
344
373
  for (const n of nodesList) {
@@ -355,6 +384,163 @@ runCmd
355
384
  console.log(` ${c.kind}: ${c.item_count} item(s)`);
356
385
  }
357
386
  }
387
+ console.log(formatNextStepLine(run.run_id, run.status, next_step, current_node_id, current_node_ids));
388
+ });
389
+ runCmd
390
+ .command("step")
391
+ .description("Advance run: start next node (no args) or complete a node (--node and optional --collection-kind with payload from stdin). Prints next_step.")
392
+ .requiredOption("--run <run_id>", "Run ID")
393
+ .option("--node <node_id>", "Node ID (required when completing a node with payload)")
394
+ .option("--collection-kind <kind>", "Collection kind when completing node (payload from stdin)")
395
+ .option("--collection-mode <mode>", "set (array) or append (single object); default: infer", "infer")
396
+ .option("--by <string>", "Actor; defaults to config or 'cli'")
397
+ .action(async (opts) => {
398
+ const cwd = process.cwd();
399
+ const exists = await runExists(opts.run, cwd);
400
+ if (!exists) {
401
+ console.error(`Error: Run "${opts.run}" not found.`);
402
+ process.exit(1);
403
+ }
404
+ const run = await readRunFile(opts.run, cwd);
405
+ if (run.status !== "running") {
406
+ console.error(`Error: Run is not running (status: ${run.status}).`);
407
+ process.exit(1);
408
+ }
409
+ const by = opts.by ?? (await resolveBy(cwd));
410
+ const now = new Date().toISOString();
411
+ if (opts.node !== undefined) {
412
+ const nodeId = opts.node;
413
+ const existingResult = await readNodeResult(opts.run, nodeId, cwd);
414
+ if (!opts.collectionKind && !existingResult) {
415
+ await appendEventLine(opts.run, { ts: now, type: "step_started", by, data: { step: nodeId, step_id: nodeId } }, cwd);
416
+ await writeNodeResult(opts.run, nodeId, {
417
+ node_result_id: generateId("node_result"),
418
+ run_id: opts.run,
419
+ workflow_id: run.workflow_id,
420
+ workflow_version_id: run.workflow_version_id,
421
+ node_id: nodeId,
422
+ status: NodeResultStatus.Started,
423
+ started_at: now,
424
+ }, cwd);
425
+ const { next_step: afterStep, current_node_id: afterCurrent, current_node_ids: afterIds } = await getNextStep(opts.run, cwd);
426
+ const runAfter = await readRunFile(opts.run, cwd);
427
+ console.log(formatNextStepLine(runAfter.run_id, runAfter.status, afterStep, afterCurrent, afterIds));
428
+ return;
429
+ }
430
+ if (!existingResult || existingResult.status !== "started") {
431
+ const startedAt = new Date().toISOString();
432
+ await appendEventLine(opts.run, { ts: startedAt, type: "step_started", by, data: { step: nodeId, step_id: nodeId } }, cwd);
433
+ await writeNodeResult(opts.run, nodeId, {
434
+ node_result_id: generateId("node_result"),
435
+ run_id: opts.run,
436
+ workflow_id: run.workflow_id,
437
+ workflow_version_id: run.workflow_version_id,
438
+ node_id: nodeId,
439
+ status: NodeResultStatus.Started,
440
+ started_at: startedAt,
441
+ }, cwd);
442
+ }
443
+ const nodeResultId = generateId("node_result");
444
+ if (opts.collectionKind) {
445
+ const raw = await readPayloadFromFileOrStdin(undefined, cwd);
446
+ const payload = JSON.parse(raw);
447
+ const mode = opts.collectionMode === "set" || opts.collectionMode === "append" ? opts.collectionMode : Array.isArray(payload) ? "set" : "append";
448
+ const writes = [];
449
+ if (mode === "set") {
450
+ const payloads = payload.map((p, i) => ({
451
+ ...p,
452
+ id: p.id ?? `${opts.collectionKind}_${i}`,
453
+ }));
454
+ await writeCollections(opts.run, opts.collectionKind, payloads, { created_by_node_id: nodeId, created_by_node_result_id: nodeResultId }, cwd);
455
+ writes.push({ kind: opts.collectionKind, item_ids: payloads.map((p) => p.id) });
456
+ }
457
+ else {
458
+ const item = await appendCollection(opts.run, opts.collectionKind, payload, { created_by_node_id: nodeId, created_by_node_result_id: nodeResultId }, cwd);
459
+ writes.push({ kind: opts.collectionKind, item_ids: [item.id] });
460
+ }
461
+ const result = {
462
+ node_result_id: nodeResultId,
463
+ run_id: opts.run,
464
+ workflow_id: run.workflow_id,
465
+ workflow_version_id: run.workflow_version_id,
466
+ node_id: nodeId,
467
+ status: NodeResultStatus.Completed,
468
+ started_at: now,
469
+ completed_at: now,
470
+ writes,
471
+ };
472
+ await writeNodeResult(opts.run, nodeId, result, cwd);
473
+ await appendEventLine(opts.run, { ts: now, type: "step_completed", by, data: { step: nodeId, step_id: nodeId } }, cwd);
474
+ }
475
+ else {
476
+ await writeNodeResult(opts.run, nodeId, {
477
+ node_result_id: nodeResultId,
478
+ run_id: opts.run,
479
+ workflow_id: run.workflow_id,
480
+ workflow_version_id: run.workflow_version_id,
481
+ node_id: nodeId,
482
+ status: NodeResultStatus.Completed,
483
+ started_at: now,
484
+ completed_at: now,
485
+ }, cwd);
486
+ await appendEventLine(opts.run, { ts: now, type: "step_completed", by, data: { step: nodeId, step_id: nodeId } }, cwd);
487
+ }
488
+ }
489
+ else {
490
+ const { next_step: ns } = await getNextStep(opts.run, cwd);
491
+ if (ns.action === "run_nodes_parallel" && ns.runnable_node_ids?.length) {
492
+ for (const nodeId of ns.runnable_node_ids) {
493
+ const existing = await readNodeResult(opts.run, nodeId, cwd);
494
+ if (!existing || existing.status !== NodeResultStatus.Started) {
495
+ await appendEventLine(opts.run, { ts: now, type: "step_started", by, data: { step: nodeId, step_id: nodeId } }, cwd);
496
+ await writeNodeResult(opts.run, nodeId, {
497
+ node_result_id: generateId("node_result"),
498
+ run_id: opts.run,
499
+ workflow_id: run.workflow_id,
500
+ workflow_version_id: run.workflow_version_id,
501
+ node_id: nodeId,
502
+ status: NodeResultStatus.Started,
503
+ started_at: now,
504
+ }, cwd);
505
+ }
506
+ }
507
+ const runAfter = await readRunFile(opts.run, cwd);
508
+ console.log(formatNextStepLine(runAfter.run_id, runAfter.status, ns, undefined, ns.runnable_node_ids));
509
+ return;
510
+ }
511
+ if (ns.action === "run_node" && ns.node_id) {
512
+ const nodeResultId = generateId("node_result");
513
+ await appendEventLine(opts.run, { ts: now, type: "step_started", by, data: { step: ns.node_id, step_id: ns.node_id } }, cwd);
514
+ await writeNodeResult(opts.run, ns.node_id, {
515
+ node_result_id: nodeResultId,
516
+ run_id: opts.run,
517
+ workflow_id: run.workflow_id,
518
+ workflow_version_id: run.workflow_version_id,
519
+ node_id: ns.node_id,
520
+ status: NodeResultStatus.Started,
521
+ started_at: now,
522
+ }, cwd);
523
+ }
524
+ }
525
+ let { next_step, current_node_id, current_node_ids } = await getNextStep(opts.run, cwd);
526
+ if (next_step.action === "run_node" && next_step.node_id) {
527
+ await appendEventLine(opts.run, { ts: now, type: "step_started", by, data: { step: next_step.node_id, step_id: next_step.node_id } }, cwd);
528
+ await writeNodeResult(opts.run, next_step.node_id, {
529
+ node_result_id: generateId("node_result"),
530
+ run_id: opts.run,
531
+ workflow_id: run.workflow_id,
532
+ workflow_version_id: run.workflow_version_id,
533
+ node_id: next_step.node_id,
534
+ status: NodeResultStatus.Started,
535
+ started_at: now,
536
+ }, cwd);
537
+ const after = await getNextStep(opts.run, cwd);
538
+ next_step = after.next_step;
539
+ current_node_id = after.current_node_id;
540
+ current_node_ids = after.current_node_ids;
541
+ }
542
+ const runAfter = await readRunFile(opts.run, cwd);
543
+ console.log(formatNextStepLine(runAfter.run_id, runAfter.status, next_step, current_node_id, current_node_ids));
358
544
  });
359
545
  runCmd
360
546
  .command("set-name")
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,yBAAyB,EACzB,0BAA0B,EAC1B,YAAY,EACZ,WAAW,EACX,aAAa,EACb,eAAe,EACf,SAAS,EACT,oBAAoB,EACpB,qBAAqB,EACrB,yBAAyB,EACzB,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,eAAe,GAChB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAAE,gBAAgB,EAA8C,MAAM,aAAa,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC5E,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EACL,UAAU,EACV,cAAc,EACd,aAAa,EACb,mBAAmB,EAEnB,YAAY,EACZ,0BAA0B,EAC1B,qBAAqB,EACrB,WAAW,EACX,eAAe,GAGhB,MAAM,aAAa,CAAC;AAErB,MAAM,UAAU,GAAG,KAAK,CAAC;AAEzB,SAAS,UAAU,CAAC,MAAc;IAChC,MAAM,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACpD,OAAO,GAAG,MAAM,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;AACnC,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,GAAW;IAClC,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,CAAC;IAC1C,OAAQ,MAAM,CAAC,UAAqB,IAAI,UAAU,CAAC;AACrD,CAAC;AAED,sFAAsF;AACtF,KAAK,UAAU,0BAA0B,CAAC,QAA4B,EAAE,GAAW;IACjF,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC;IAC3D,CAAC;IACD,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACxB,OAAO,CAAC,KAAK,CAAC,4GAA4G,CAAC,CAAC;QAC5H,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QACxC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAClC,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3D,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAC;QACxE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,kIAAkI;AAClI,KAAK,UAAU,YAAY,CAAC,aAAqB,EAAE,OAAe,mBAAmB;IACnF,MAAM,gBAAgB,CAAC,aAAa,CAAC,CAAC;IACtC,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,iBAAiB,CAAC,aAAa,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9F,MAAM,GAAG,GAAG,oBAAoB,UAAU,EAAE,CAAC;IAC7C,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,aAAa,GAAG,gBAAgB,aAAa,0BAA0B,CAAC,CAAC;AACvF,CAAC;AAED,OAAO;KACJ,IAAI,CAAC,WAAW,CAAC;KACjB,WAAW,CACV,kJAAkJ,CACnJ;KACA,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,oFAAoF,CAAC;KACjG,MAAM,CAAC,gBAAgB,EAAE,2DAA2D,CAAC;KACrF,MAAM,CAAC,SAAS,EAAE,oEAAoE,CAAC;KACvF,MAAM,CAAC,kBAAkB,EAAE,wEAAwE,CAAC;KACpG,MAAM,CAAC,KAAK,EAAE,IAAuE,EAAE,EAAE;IACxF,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC;IAC7C,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,MAAM,eAAe,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;QAC/D,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;IAChE,CAAC;SAAM,CAAC;QACN,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAC3D,MAAM,aAAa,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;IAC3E,CAAC;IACD,MAAM,YAAY,CAAC,GAAG,CAAC,CAAC;AAC1B,CAAC,CAAC,CAAC;AAEL,MAAM,WAAW,GAAG,OAAO;KACxB,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,qDAAqD,CAAC,CAAC;AAEtE,WAAW;KACR,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,gBAAgB,CAAC;KAC7B,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAC5B,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAC3C,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,GAAG,CAAC,CAAC;IAC3C,MAAM,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,WAAW,KAAK,KAAK,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC;IACnG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAC5C,CAAC,CAAC,CAAC;AAEL,WAAW;KACR,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,6EAA6E,CAAC;KAC1F,cAAc,CAAC,iBAAiB,EAAE,eAAe,CAAC;KAClD,MAAM,CAAC,eAAe,EAAE,kCAAkC,CAAC;KAC3D,MAAM,CAAC,wBAAwB,EAAE,sBAAsB,CAAC;KACxD,MAAM,CAAC,KAAK,EAAE,IAAyD,EAAE,EAAE;IAC1E,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAC5B,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAErC,MAAM,EAAE,GAAmB;QACzB,WAAW,EAAE,EAAE;QACf,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,kBAAkB,EAAE,IAAI;QACxB,UAAU,EAAE,GAAG;KAChB,CAAC;IAEF,MAAM,mBAAmB,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IACnC,MAAM,0BAA0B,CAC9B;QACE,WAAW,EAAE,EAAE;QACf,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,IAAI;QACV,UAAU,EAAE,GAAG;QACf,KAAK,EAAE,EAAE;KACV,EACD,GAAG,CACJ,CAAC;IAEF,MAAM,EAAE,6BAA6B,EAAE,GAAG,MAAM,MAAM,CAAC,gCAAgC,CAAC,CAAC;IACzF,MAAM,qBAAqB,CAAC,EAAE,EAAE,6BAA6B,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;IAExE,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAC3C,MAAM,IAAI,GAAG;QACX,GAAG,KAAK;QACR,SAAS,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,CAAC,WAAW,EAAE,kBAAkB,EAAE,EAAE,CAAC,kBAAkB,EAAE,CAAC;KACpJ,CAAC;IACF,MAAM,kBAAkB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACpC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEL,WAAW;KACR,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,wDAAwD,CAAC;KACrE,cAAc,CAAC,0BAA0B,EAAE,aAAa,CAAC;KACzD,MAAM,CAAC,KAAK,EAAE,IAA0B,EAAE,EAAE;IAC3C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAC5B,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAC3C,IAAI,CAAC,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1E,OAAO,CAAC,KAAK,CAAC,oBAAoB,IAAI,CAAC,QAAQ,cAAc,CAAC,CAAC;QAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,kBAAkB,CAAC,EAAE,GAAG,KAAK,EAAE,mBAAmB,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,GAAG,CAAC,CAAC;IAChF,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC7B,CAAC,CAAC,CAAC;AAEL,WAAW;KACR,OAAO,CAAC,KAAK,CAAC;KACd,WAAW,CAAC,yCAAyC,CAAC;KACtD,MAAM,CAAC,0BAA0B,EAAE,0DAA0D,CAAC;KAC9F,MAAM,CAAC,wBAAwB,EAAE,mDAAmD,CAAC;KACrF,MAAM,CAAC,KAAK,EAAE,IAA6C,EAAE,EAAE;IAC9D,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAC5B,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,mBAAmB,CAAC;IAC9D,MAAM,EAAE,GAAG,MAAM,kBAAkB,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IACrD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,kBAAkB,CAAC;IACxD,MAAM,OAAO,GAAG,MAAM,yBAAyB,CAAC,UAAU,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;IAC5E,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAChD,CAAC,CAAC,CAAC;AAEL,WAAW;KACR,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,8BAA8B,CAAC;KAC3C,MAAM,CAAC,0BAA0B,EAAE,0DAA0D,CAAC;KAC9F,MAAM,CAAC,KAAK,EAAE,IAA2B,EAAE,EAAE;IAC5C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAC5B,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,mBAAmB,CAAC;IAC9D,MAAM,GAAG,GAAG,MAAM,sBAAsB,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IAC1D,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAC5C,CAAC,CAAC,CAAC;AAEL,WAAW;KACR,OAAO,CAAC,KAAK,CAAC;KACd,WAAW,CAAC,0EAA0E,CAAC;KACvF,cAAc,CAAC,eAAe,EAAE,4BAA4B,CAAC;KAC7D,MAAM,CAAC,0BAA0B,EAAE,0DAA0D,CAAC;KAC9F,MAAM,CAAC,iBAAiB,EAAE,uBAAuB,CAAC;KAClD,MAAM,CAAC,KAAK,EAAE,IAAwD,EAAE,EAAE;IACzE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAC5B,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;IACrE,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAY,CAAC;IACxC,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,mBAAmB,CAAC;IAC9D,MAAM,EAAE,GAAG,MAAM,kBAAkB,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IAC/D,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACpG,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;IACzC,MAAM,YAAY,GAAG,IAAI,OAAO,EAAE,CAAC;IAEnC,MAAM,OAAO,GAAG;QACd,GAAI,IAAgC;QACpC,WAAW,EAAE,UAAU;QACvB,UAAU,EAAE,YAAY;QACxB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACrC,CAAC;IACF,uBAAuB,CAAC,OAAO,CAAC,CAAC;IAEjC,MAAM,0BAA0B,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IAC/C,MAAM,mBAAmB,CAAC,EAAE,GAAG,EAAE,EAAE,kBAAkB,EAAE,YAAY,EAAE,EAAE,GAAG,CAAC,CAAC;IAE5E,MAAM,SAAS,GAAG,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAClD,CAAC,CAAC,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,kBAAkB,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,CAC9E,CAAC;IACF,MAAM,kBAAkB,CAAC,EAAE,GAAG,KAAK,EAAE,SAAS,EAAE,EAAE,GAAG,CAAC,CAAC;IACvD,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;AAC5B,CAAC,CAAC,CAAC;AAEL,MAAM,MAAM,GAAG,OAAO;KACnB,OAAO,CAAC,KAAK,CAAC;KACd,WAAW,CAAC,gBAAgB,CAAC,CAAC;AACjC,MAAM;KACH,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,gCAAgC,CAAC;KAC7C,cAAc,CAAC,gBAAgB,EAAE,kCAAkC,CAAC;KACpE,MAAM,CAAC,iBAAiB,EAAE,+DAA+D,CAAC;KAC1F,MAAM,CAAC,eAAe,EAAE,wDAAwD,CAAC;KACjF,MAAM,CAAC,0BAA0B,EAAE,0DAA0D,CAAC;KAC9F,MAAM,CAAC,wBAAwB,EAAE,4DAA4D,CAAC;KAC9F,MAAM,CAAC,KAAK,EAAE,IAAwF,EAAE,EAAE;IACzG,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAC5B,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,mBAAmB,CAAC;IAC9D,MAAM,EAAE,GAAG,MAAM,kBAAkB,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IACrD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,kBAAkB,CAAC;IACxD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAChD,IAAI,QAAgB,CAAC;IACrB,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,GAAG,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,IAAI,GAAG,CAAC,CAAC,CAAE,GAA6B,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QACxG,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtB,OAAO,CAAC,KAAK,CAAC,gCAAgC,SAAS,EAAE,CAAC,CAAC;YAC3D,OAAO,CAAC,KAAK,CAAC,6FAA6F,CAAC,CAAC;YAC7G,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAA4B,CAAC;IAC9D,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IAChC,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC,MAAM,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7C,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACrC,MAAM,SAAS,GAAc;QAC3B,MAAM,EAAE,KAAK;QACb,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;QACrC,WAAW,EAAE,UAAU;QACvB,mBAAmB,EAAE,SAAS;QAC9B,MAAM,EAAE,SAAS;QACjB,KAAK;QACL,UAAU,EAAE,GAAG;KAChB,CAAC;IACF,MAAM,YAAY,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IACnC,MAAM,KAAK,GAAiB;QAC1B,EAAE,EAAE,GAAG;QACP,IAAI,EAAE,aAAa;QACnB,EAAE;QACF,IAAI,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,mBAAmB,EAAE,SAAS,EAAE,KAAK,EAAE;KACzE,CAAC;IACF,MAAM,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IAEzC,2DAA2D;IAC3D,MAAM,YAAY,GAAG,YAAY,CAAC;IAClC,MAAM,kBAAkB,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC;IACrD,MAAM,UAAU,GAAqB;QACnC,cAAc,EAAE,kBAAkB;QAClC,MAAM,EAAE,KAAK;QACb,WAAW,EAAE,UAAU;QACvB,mBAAmB,EAAE,SAAS;QAC9B,OAAO,EAAE,YAAY;QACrB,MAAM,EAAE,gBAAgB,CAAC,SAAS;QAClC,UAAU,EAAE,GAAG;QACf,YAAY,EAAE,GAAG;QACjB,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACtC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;KACzD,CAAC;IACF,MAAM,eAAe,CAAC,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC;IAC5D,MAAM,gBAAgB,CACpB,KAAK,EACL,WAAW,EACX,KAAK,EACL,EAAE,EAAE,EAAE,WAAW,EAAE,kBAAkB,EAAE,YAAY,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,EACpG,GAAG,CACJ,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACnB,OAAO,CAAC,GAAG,CAAC,oBAAoB,KAAK,EAAE,CAAC,CAAC;IACzC,IAAI,EAAE,SAAS,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,MAAM,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACrF,IAAI,SAAS,CAAC,MAAM,KAAK,UAAU,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;QACzD,MAAM,eAAe,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;QACxI,MAAM,eAAe,CAAC,KAAK,EAAE,SAAS,CAAC,OAAO,EAAE;YAC9C,cAAc,EAAE,UAAU,CAAC,aAAa,CAAC;YACzC,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,UAAU;YACvB,mBAAmB,EAAE,SAAS;YAC9B,OAAO,EAAE,SAAS,CAAC,OAAO;YAC1B,MAAM,EAAE,gBAAgB,CAAC,OAAO;YAChC,UAAU,EAAE,GAAG;SAChB,EAAE,GAAG,CAAC,CAAC;QACR,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC5C,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QAC5B,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC;QACxC,gBAAgB,GAAG,KAAK,CAAC,gBAAgB,CAAC;IAC5C,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,eAAe,EAAE,gBAAgB,CAAC,CAAC,CAAC;AAClG,CAAC,CAAC,CAAC;AACL,MAAM;KACH,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,iEAAiE,CAAC;KAC9E,cAAc,CAAC,gBAAgB,EAAE,yBAAyB,CAAC;KAC3D,MAAM,CAAC,KAAK,EAAE,IAAqB,EAAE,EAAE;IACtC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC9C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CAAC,eAAe,IAAI,CAAC,GAAG,cAAc,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,GAAG,CAAC,CAAC;IAC5D,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,GAAG,wBAAwB,CAAC,CAAC;IACtD,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC;AACpG,CAAC,CAAC,CAAC;AACL,MAAM;KACH,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,iFAAiF,CAAC;KAC9F,cAAc,CAAC,gBAAgB,EAAE,QAAQ,CAAC;KAC1C,MAAM,CAAC,QAAQ,EAAE,gBAAgB,CAAC;KAClC,MAAM,CAAC,KAAK,EAAE,IAAqC,EAAE,EAAE;IACtD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC9C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CAAC,eAAe,IAAI,CAAC,GAAG,cAAc,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC7C,IAAI,OAAO,GAAiE,IAAI,CAAC;IACjF,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,yBAAyB,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC;IAC3F,CAAC;IAAC,MAAM,CAAC;QACP,2BAA2B;IAC7B,CAAC;IACD,MAAM,WAAW,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACzD,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3E,MAAM,KAAK,GAAG,MAAM,yBAAyB,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC7D,MAAM,WAAW,GAA2C,EAAE,CAAC;IAC/D,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;QACzD,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7D,CAAC;IACD,MAAM,SAAS,GAAiE,EAAE,CAAC;IACnF,IAAI,OAAO,EAAE,KAAK,EAAE,CAAC;QACnB,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YACjC,MAAM,EAAE,GAAG,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC3C,SAAS,CAAC,IAAI,CAAC;gBACb,OAAO,EAAE,IAAI,CAAC,EAAE;gBAChB,MAAM,EAAE,EAAE,EAAE,MAAM,IAAI,GAAG;gBACzB,YAAY,EAAE,EAAE,EAAE,YAAY;aAC/B,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,+EAA+E;IAC/E,IAAI,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,OAAO,EAAE,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,YAAY,CAAC,EAAE,CAAC;QAChH,MAAM,EAAE,GAAG,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAE,CAAC;QACjD,SAAS,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC;IACjG,CAAC;IACD,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC1F,MAAM,UAAU,GAAG;QACjB,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,mBAAmB,EAAE,GAAG,CAAC,mBAAmB;QAC5C,GAAG,CAAC,eAAe,KAAK,SAAS,IAAI,EAAE,eAAe,EAAE,mBAAmB,EAAE,aAAa,EAAE,CAAC;QAC7F,GAAG,CAAC,gBAAgB,KAAK,SAAS,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,gBAAgB,EAAE,CAAC;KAC3F,CAAC;IACF,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,CAAC,eAAe,KAAK,SAAS,IAAI,EAAE,eAAe,EAAE,CAAC,EAAE,GAAG,CAAC,gBAAgB,KAAK,SAAS,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,gBAAgB,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC3P,OAAO;IACT,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,GAAG,CAAC,WAAW,MAAM,GAAG,CAAC,mBAAmB,GAAG,CAAC,CAAC;IAClI,IAAI,gBAAgB,KAAK,SAAS,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClE,OAAO,CAAC,GAAG,CAAC,8BAA8B,EAAE,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3E,CAAC;SAAM,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;QACzC,OAAO,CAAC,GAAG,CAAC,6BAA6B,EAAE,eAAe,CAAC,CAAC;IAC9D,CAAC;IACD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACtB,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;YAC1B,MAAM,EAAE,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;SAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC5B,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,UAAU,UAAU,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,gBAAgB,CAAC,CAAC,CAAC;AACxG,CAAC,CAAC,CAAC;AACL,MAAM;KACH,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,8IAA8I,CAAC;KAC3J,cAAc,CAAC,gBAAgB,EAAE,QAAQ,CAAC;KAC1C,MAAM,CAAC,kBAAkB,EAAE,wDAAwD,CAAC;KACpF,MAAM,CAAC,0BAA0B,EAAE,2DAA2D,CAAC;KAC/F,MAAM,CAAC,0BAA0B,EAAE,uDAAuD,EAAE,OAAO,CAAC;KACpG,MAAM,CAAC,eAAe,EAAE,oCAAoC,CAAC;KAC7D,MAAM,CACL,KAAK,EAAE,IAAmG,EAAE,EAAE;IAC5G,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC9C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CAAC,eAAe,IAAI,CAAC,GAAG,cAAc,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC7C,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,CAAC,KAAK,CAAC,sCAAsC,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;QACpE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC,MAAM,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7C,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAErC,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC;QACzB,MAAM,cAAc,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QACnE,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,cAAc,EAAE,CAAC;YAC5C,MAAM,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;YACrH,MAAM,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE;gBACtC,cAAc,EAAE,UAAU,CAAC,aAAa,CAAC;gBACzC,MAAM,EAAE,IAAI,CAAC,GAAG;gBAChB,WAAW,EAAE,GAAG,CAAC,WAAW;gBAC5B,mBAAmB,EAAE,GAAG,CAAC,mBAAmB;gBAC5C,OAAO,EAAE,MAAM;gBACf,MAAM,EAAE,gBAAgB,CAAC,OAAO;gBAChC,UAAU,EAAE,GAAG;aAChB,EAAE,GAAG,CAAC,CAAC;YACR,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,eAAe,EAAE,YAAY,EAAE,gBAAgB,EAAE,QAAQ,EAAE,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAC7H,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAClD,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC;YACrG,OAAO;QACT,CAAC;QACD,IAAI,CAAC,cAAc,IAAI,cAAc,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC3D,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YAC3C,MAAM,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;YAC3H,MAAM,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE;gBACtC,cAAc,EAAE,UAAU,CAAC,aAAa,CAAC;gBACzC,MAAM,EAAE,IAAI,CAAC,GAAG;gBAChB,WAAW,EAAE,GAAG,CAAC,WAAW;gBAC5B,mBAAmB,EAAE,GAAG,CAAC,mBAAmB;gBAC5C,OAAO,EAAE,MAAM;gBACf,MAAM,EAAE,gBAAgB,CAAC,OAAO;gBAChC,UAAU,EAAE,SAAS;aACtB,EAAE,GAAG,CAAC,CAAC;QACV,CAAC;QACD,MAAM,YAAY,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC;QAC/C,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,MAAM,GAAG,GAAG,MAAM,0BAA0B,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YAC7D,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAY,CAAC;YAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,KAAK,KAAK,IAAI,IAAI,CAAC,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;YACjJ,MAAM,MAAM,GAA2C,EAAE,CAAC;YAC1D,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;gBACnB,MAAM,QAAQ,GAAI,OAA0C,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;oBAC1E,GAAG,CAAC;oBACJ,EAAE,EAAG,CAAqB,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC,cAAc,IAAI,CAAC,EAAE;iBAC/D,CAAC,CAAC,CAAC;gBACJ,MAAM,gBAAgB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,cAAc,EAAE,QAAQ,EAAE,EAAE,kBAAkB,EAAE,MAAM,EAAE,yBAAyB,EAAE,YAAY,EAAE,EAAE,GAAG,CAAC,CAAC;gBAC9I,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,cAAc,EAAE,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAAoB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACtG,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,cAAc,EAAE,OAAkC,EAAE,EAAE,kBAAkB,EAAE,MAAM,EAAE,yBAAyB,EAAE,YAAY,EAAE,EAAE,GAAG,CAAC,CAAC;gBACrL,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,cAAc,EAAE,QAAQ,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YAClE,CAAC;YACD,MAAM,MAAM,GAAqB;gBAC/B,cAAc,EAAE,YAAY;gBAC5B,MAAM,EAAE,IAAI,CAAC,GAAG;gBAChB,WAAW,EAAE,GAAG,CAAC,WAAW;gBAC5B,mBAAmB,EAAE,GAAG,CAAC,mBAAmB;gBAC5C,OAAO,EAAE,MAAM;gBACf,MAAM,EAAE,gBAAgB,CAAC,SAAS;gBAClC,UAAU,EAAE,GAAG;gBACf,YAAY,EAAE,GAAG;gBACjB,MAAM;aACP,CAAC;YACF,MAAM,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;YACrD,MAAM,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,gBAAgB,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;QACzH,CAAC;aAAM,CAAC;YACN,MAAM,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE;gBACtC,cAAc,EAAE,YAAY;gBAC5B,MAAM,EAAE,IAAI,CAAC,GAAG;gBAChB,WAAW,EAAE,GAAG,CAAC,WAAW;gBAC5B,mBAAmB,EAAE,GAAG,CAAC,mBAAmB;gBAC5C,OAAO,EAAE,MAAM;gBACf,MAAM,EAAE,gBAAgB,CAAC,SAAS;gBAClC,UAAU,EAAE,GAAG;gBACf,YAAY,EAAE,GAAG;aAClB,EAAE,GAAG,CAAC,CAAC;YACR,MAAM,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,gBAAgB,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;QACzH,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAE3D,IAAI,EAAE,CAAC,MAAM,KAAK,oBAAoB,IAAI,EAAE,CAAC,iBAAiB,EAAE,MAAM,EAAE,CAAC;YACvE,KAAK,MAAM,MAAM,IAAI,EAAE,CAAC,iBAAiB,EAAE,CAAC;gBAC1C,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;gBAC7D,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,gBAAgB,CAAC,OAAO,EAAE,CAAC;oBAC9D,MAAM,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;oBACrH,MAAM,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE;wBACtC,cAAc,EAAE,UAAU,CAAC,aAAa,CAAC;wBACzC,MAAM,EAAE,IAAI,CAAC,GAAG;wBAChB,WAAW,EAAE,GAAG,CAAC,WAAW;wBAC5B,mBAAmB,EAAE,GAAG,CAAC,mBAAmB;wBAC5C,OAAO,EAAE,MAAM;wBACf,MAAM,EAAE,gBAAgB,CAAC,OAAO;wBAChC,UAAU,EAAE,GAAG;qBAChB,EAAE,GAAG,CAAC,CAAC;gBACV,CAAC;YACH,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAClD,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC;YACvG,OAAO;QACT,CAAC;QAED,IAAI,EAAE,CAAC,MAAM,KAAK,UAAU,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;YAC3C,MAAM,YAAY,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC;YAC/C,MAAM,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;YAC7H,MAAM,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,EAAE;gBAC1C,cAAc,EAAE,YAAY;gBAC5B,MAAM,EAAE,IAAI,CAAC,GAAG;gBAChB,WAAW,EAAE,GAAG,CAAC,WAAW;gBAC5B,mBAAmB,EAAE,GAAG,CAAC,mBAAmB;gBAC5C,OAAO,EAAE,EAAE,CAAC,OAAO;gBACnB,MAAM,EAAE,gBAAgB,CAAC,OAAO;gBAChC,UAAU,EAAE,GAAG;aAChB,EAAE,GAAG,CAAC,CAAC;QACV,CAAC;IACH,CAAC;IACD,IAAI,EAAE,SAAS,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACxF,IAAI,SAAS,CAAC,MAAM,KAAK,UAAU,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;QACzD,MAAM,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;QAC3I,MAAM,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,OAAO,EAAE;YACjD,cAAc,EAAE,UAAU,CAAC,aAAa,CAAC;YACzC,MAAM,EAAE,IAAI,CAAC,GAAG;YAChB,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,mBAAmB,EAAE,GAAG,CAAC,mBAAmB;YAC5C,OAAO,EAAE,SAAS,CAAC,OAAO;YAC1B,MAAM,EAAE,gBAAgB,CAAC,OAAO;YAChC,UAAU,EAAE,GAAG;SAChB,EAAE,GAAG,CAAC,CAAC;QACR,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC/C,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QAC5B,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC;QACxC,gBAAgB,GAAG,KAAK,CAAC,gBAAgB,CAAC;IAC5C,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAClD,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,gBAAgB,CAAC,CAAC,CAAC;AAClH,CAAC,CACF,CAAC;AACJ,MAAM;KACH,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,2DAA2D,CAAC;KACxE,cAAc,CAAC,gBAAgB,EAAE,QAAQ,CAAC;KAC1C,cAAc,CAAC,iBAAiB,EAAE,kBAAkB,CAAC;KACrD,MAAM,CAAC,KAAK,EAAE,IAAmC,EAAE,EAAE;IACpD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC9C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CAAC,eAAe,IAAI,CAAC,GAAG,cAAc,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;IACxD,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,GAAG,YAAY,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC;AACzD,CAAC,CAAC,CAAC;AAEL,MAAM,QAAQ,GAAG,OAAO;KACrB,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,sBAAsB,CAAC,CAAC;AACvC,QAAQ;KACL,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,yKAAyK,CAAC;KACtL,cAAc,CAAC,gBAAgB,EAAE,QAAQ,CAAC;KAC1C,MAAM,CAAC,eAAe,EAAE,mDAAmD,CAAC;KAC5E,MAAM,CAAC,eAAe,EAAE,oCAAoC,CAAC;KAC7D,MAAM,CAAC,KAAK,EAAE,IAAiD,EAAE,EAAE;IAClE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC9C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CAAC,eAAe,IAAI,CAAC,GAAG,iDAAiD,CAAC,CAAC;QACxF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,0BAA0B,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAA4B,CAAC;IACxD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC,MAAM,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7C,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACrC,MAAM,KAAK,GAAiB;QAC1B,EAAE,EAAG,IAAI,CAAC,EAAa,IAAI,GAAG;QAC9B,IAAI,EAAG,IAAI,CAAC,IAA6B,IAAI,UAAU;QACvD,EAAE,EAAG,IAAI,CAAC,EAAa,IAAI,EAAE;QAC7B,IAAI,EAAG,IAAI,CAAC,IAAgC,IAAK,IAAgC;KAClF,CAAC;IACF,MAAM,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IAC5C,IAAI,KAAK,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;QACnC,MAAM,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,GAAG,CAAC,CAAC;IAC9D,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;AACjC,CAAC,CAAC,CAAC;AAEL,MAAM,mBAAmB,GAAG,OAAO;KAChC,OAAO,CAAC,mBAAmB,CAAC;KAC5B,WAAW,CAAC,kEAAkE,CAAC,CAAC;AACnF,mBAAmB;KAChB,OAAO,CAAC,KAAK,CAAC;KACd,WAAW,CAAC,gDAAgD,CAAC;KAC7D,MAAM,CAAC,0BAA0B,EAAE,0DAA0D,CAAC;KAC9F,MAAM,CAAC,KAAK,EAAE,IAA2B,EAAE,EAAE;IAC5C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAC5B,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,mBAAmB,CAAC;IAC9D,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAC/C,CAAC,CAAC,CAAC;AACL,mBAAmB;KAChB,OAAO,CAAC,KAAK,CAAC;KACd,WAAW,CAAC,sCAAsC,CAAC;KACnD,cAAc,CAAC,eAAe,EAAE,qCAAqC,CAAC;KACtE,MAAM,CAAC,0BAA0B,EAAE,0DAA0D,CAAC;KAC9F,MAAM,CAAC,KAAK,EAAE,IAAyC,EAAE,EAAE;IAC1D,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAC5B,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,mBAAmB,CAAC;IAC9D,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;IACrE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAA2B,CAAC;IACzD,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QACtD,OAAO,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC3D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,MAAM,GAA2B,EAAE,WAAW,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAC9E,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QAClD,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5C,CAAC;IACD,MAAM,qBAAqB,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;IACrD,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;AAC5C,CAAC,CAAC,CAAC;AAEL,MAAM,aAAa,GAAG,OAAO;KAC1B,OAAO,CAAC,YAAY,CAAC;KACrB,WAAW,CAAC,iEAAiE,CAAC,CAAC;AAClF,aAAa;KACV,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,gDAAgD,CAAC;KAC7D,cAAc,CAAC,gBAAgB,EAAE,QAAQ,CAAC;KAC1C,MAAM,CAAC,KAAK,EAAE,IAAqB,EAAE,EAAE;IACtC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,KAAK,GAAG,MAAM,yBAAyB,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAC9C,CAAC,CAAC,CAAC;AACL,aAAa;KACV,OAAO,CAAC,KAAK,CAAC;KACd,WAAW,CAAC,yCAAyC,CAAC;KACtD,cAAc,CAAC,gBAAgB,EAAE,QAAQ,CAAC;KAC1C,cAAc,CAAC,eAAe,EAAE,uCAAuC,CAAC;KACxE,MAAM,CAAC,KAAK,EAAE,IAAmC,EAAE,EAAE;IACpD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC9D,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAC9C,CAAC,CAAC,CAAC;AACL,aAAa;KACV,OAAO,CAAC,KAAK,CAAC;KACd,WAAW,CAAC,uEAAuE,CAAC;KACpF,cAAc,CAAC,gBAAgB,EAAE,QAAQ,CAAC;KAC1C,cAAc,CAAC,eAAe,EAAE,iBAAiB,CAAC;KAClD,MAAM,CAAC,eAAe,EAAE,mDAAmD,CAAC;KAC5E,cAAc,CAAC,kBAAkB,EAAE,kCAAkC,CAAC;KACtE,cAAc,CAAC,gCAAgC,EAAE,yCAAyC,CAAC;KAC3F,MAAM,CAAC,KAAK,EAAE,IAAoF,EAAE,EAAE;IACrG,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,GAAG,GAAG,MAAM,0BAA0B,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC7D,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAmC,CAAC;IACnE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,OAAO,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;QAC5E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,gBAAgB,CACpB,IAAI,CAAC,GAAG,EACR,IAAI,CAAC,IAAI,EACT,QAAQ,EACR,EAAE,kBAAkB,EAAE,IAAI,CAAC,IAAI,EAAE,yBAAyB,EAAE,IAAI,CAAC,UAAU,EAAE,EAC7E,GAAG,CACJ,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,OAAO,QAAQ,CAAC,MAAM,4BAA4B,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC;AAC/E,CAAC,CAAC,CAAC;AACL,aAAa;KACV,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,sEAAsE,CAAC;KACnF,cAAc,CAAC,gBAAgB,EAAE,QAAQ,CAAC;KAC1C,cAAc,CAAC,eAAe,EAAE,iBAAiB,CAAC;KAClD,MAAM,CAAC,eAAe,EAAE,qDAAqD,CAAC;KAC9E,cAAc,CAAC,kBAAkB,EAAE,gCAAgC,CAAC;KACpE,cAAc,CAAC,gCAAgC,EAAE,uCAAuC,CAAC;KACzF,MAAM,CAAC,eAAe,EAAE,wBAAwB,CAAC;KACjD,MAAM,CAAC,KAAK,EAAE,IAAiG,EAAE,EAAE;IAClH,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,GAAG,GAAG,MAAM,0BAA0B,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAA4B,CAAC;IAC3D,MAAM,IAAI,GAAG,MAAM,gBAAgB,CACjC,IAAI,CAAC,GAAG,EACR,IAAI,CAAC,IAAI,EACT,OAAO,EACP,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,kBAAkB,EAAE,IAAI,CAAC,IAAI,EAAE,yBAAyB,EAAE,IAAI,CAAC,UAAU,EAAE,EAC1F,GAAG,CACJ,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAC7C,CAAC,CAAC,CAAC;AAEL,MAAM,aAAa,GAAG,OAAO;KAC1B,OAAO,CAAC,aAAa,CAAC;KACtB,WAAW,CAAC,oEAAoE,CAAC,CAAC;AAErF,aAAa;KACV,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,6BAA6B,CAAC;KAC1C,cAAc,CAAC,gBAAgB,EAAE,QAAQ,CAAC;KAC1C,MAAM,CAAC,KAAK,EAAE,IAAqB,EAAE,EAAE;IACtC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACrD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAChD,CAAC,CAAC,CAAC;AAEL,aAAa;KACV,OAAO,CAAC,KAAK,CAAC;KACd,WAAW,CAAC,qCAAqC,CAAC;KAClD,cAAc,CAAC,gBAAgB,EAAE,QAAQ,CAAC;KAC1C,cAAc,CAAC,kBAAkB,EAAE,SAAS,CAAC;KAC7C,MAAM,CAAC,KAAK,EAAE,IAAmC,EAAE,EAAE;IACpD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC9D,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAC5B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAC/C,CAAC,CAAC,CAAC;AAEL,aAAa;KACV,OAAO,CAAC,KAAK,CAAC;KACd,WAAW,CAAC,qDAAqD,CAAC;KAClE,cAAc,CAAC,gBAAgB,EAAE,QAAQ,CAAC;KAC1C,cAAc,CAAC,kBAAkB,EAAE,SAAS,CAAC;KAC7C,cAAc,CAAC,mBAAmB,EAAE,8CAA8C,CAAC;KACnF,MAAM,CAAC,uBAAuB,EAAE,qCAAqC,CAAC;KACtE,MAAM,CAAC,sBAAsB,EAAE,yCAAyC,CAAC;KACzE,MAAM,CAAC,mBAAmB,EAAE,oBAAoB,CAAC;KACjD,MAAM,CACL,KAAK,EAAE,IAAsG,EAAE,EAAE;IAC/G,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC7C,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACrC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAoC,CAAC;IACzD,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAa,CAAC;IAClE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QACpC,OAAO,CAAC,KAAK,CAAC,iCAAiC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,MAAM,GAAuB,IAAI,CAAC,MAAM,CAAC;IAC7C,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QACpB,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,CAAC;IAC1E,CAAC;IACD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,UAAU,CAAC,aAAa,CAAC,CAAC;IAChD,MAAM,YAAY,GAChB,MAAM,KAAK,gBAAgB,CAAC,SAAS,IAAI,MAAM,KAAK,gBAAgB,CAAC,MAAM,IAAI,MAAM,KAAK,gBAAgB,CAAC,UAAU;QACnH,CAAC,CAAC,GAAG;QACL,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,MAAM,GAAqB;QAC/B,cAAc,EAAE,EAAE;QAClB,MAAM,EAAE,IAAI,CAAC,GAAG;QAChB,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,mBAAmB,EAAE,GAAG,CAAC,mBAAmB;QAC5C,OAAO,EAAE,IAAI,CAAC,IAAI;QAClB,MAAM;QACN,UAAU,EAAE,GAAG;QACf,YAAY;QACZ,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC9B,CAAC;IACF,MAAM,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;IACxD,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE,EAAE,CAAC,CAAC;IAC9C,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAC/C,CAAC,CACF,CAAC;AAEJ,MAAM,OAAO,GAAG,OAAO;KACpB,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,6GAA6G,CAAC,CAAC;AAE9H,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,4GAA4G,CAAC;KACzH,cAAc,CAAC,gBAAgB,EAAE,QAAQ,CAAC;KAC1C,cAAc,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;KACtD,MAAM,CAAC,eAAe,EAAE,oCAAoC,CAAC;KAC7D,MAAM,CAAC,KAAK,EAAE,IAAgD,EAAE,EAAE;IACjE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC9C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CAAC,eAAe,IAAI,CAAC,GAAG,cAAc,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC7C,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC,MAAM,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7C,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACrC,MAAM,YAAY,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC;IAC/C,MAAM,KAAK,GAAiB;QAC1B,EAAE,EAAE,GAAG;QACP,IAAI,EAAE,cAAc;QACpB,EAAE;QACF,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE;KAC9C,CAAC;IACF,MAAM,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAqB;QAC/B,cAAc,EAAE,YAAY;QAC5B,MAAM,EAAE,IAAI,CAAC,GAAG;QAChB,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,mBAAmB,EAAE,GAAG,CAAC,mBAAmB;QAC5C,OAAO,EAAE,IAAI,CAAC,IAAI;QAClB,MAAM,EAAE,gBAAgB,CAAC,OAAO;QAChC,UAAU,EAAE,GAAG;KAChB,CAAC;IACF,MAAM,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;IACxD,OAAO,CAAC,GAAG,CAAC,4BAA4B,YAAY,EAAE,CAAC,CAAC;AAC1D,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,mHAAmH,CAAC;KAChI,cAAc,CAAC,gBAAgB,EAAE,QAAQ,CAAC;KAC1C,cAAc,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;KACtD,cAAc,CAAC,mBAAmB,EAAE,sCAAsC,CAAC;KAC3E,MAAM,CAAC,mBAAmB,EAAE,wCAAwC,CAAC;KACrE,MAAM,CAAC,sBAAsB,EAAE,qCAAqC,CAAC;KACrE,MAAM,CAAC,0BAA0B,EAAE,4EAA4E,CAAC;KAChH,MAAM,CAAC,0BAA0B,EAAE,8EAA8E,CAAC;KAClH,MAAM,CAAC,0BAA0B,EAAE,oEAAoE,EAAE,OAAO,CAAC;KACjH,MAAM,CAAC,eAAe,EAAE,oCAAoC,CAAC;KAC7D,MAAM,CACL,KAAK,EAAE,IAUN,EAAE,EAAE;IACH,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC9C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CAAC,eAAe,IAAI,CAAC,GAAG,cAAc,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC7C,MAAM,aAAa,GAAG,CAAC,WAAW,EAAE,QAAQ,EAAE,aAAa,CAAU,CAAC;IACtE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAwC,CAAC,EAAE,CAAC;QAC3E,OAAO,CAAC,KAAK,CAAC,iCAAiC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAoC,CAAC;IACzD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC,MAAM,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7C,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACrC,IAAI,MAAM,GAAuB,IAAI,CAAC,MAAM,CAAC;IAC7C,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QACpB,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,CAAC;IAC1E,CAAC;IACD,MAAM,YAAY,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC;IAC/C,MAAM,MAAM,GAA2C,EAAE,CAAC;IAE1D,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,MAAM,GAAG,GAAG,MAAM,0BAA0B,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;QACvE,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAY,CAAC;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,KAAK,KAAK,IAAI,IAAI,CAAC,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;QACjJ,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;YACnB,MAAM,QAAQ,GAAG,OAAyC,CAAC;YAC3D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC7B,OAAO,CAAC,KAAK,CAAC,gEAAgE,CAAC,CAAC;gBAChF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,MAAM,eAAe,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC9C,GAAG,CAAC;gBACJ,EAAE,EAAG,CAAqB,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC,cAAc,IAAI,CAAC,EAAE;aAC/D,CAAC,CAAC,CAAC;YACJ,MAAM,OAAO,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAAoB,CAAC,EAAE,CAAC,CAAC;YACrE,MAAM,gBAAgB,CACpB,IAAI,CAAC,GAAG,EACR,IAAI,CAAC,cAAc,EACnB,eAAe,EACf,EAAE,kBAAkB,EAAE,IAAI,CAAC,IAAI,EAAE,yBAAyB,EAAE,YAAY,EAAE,EAC1E,GAAG,CACJ,CAAC;YACF,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,cAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;QAChE,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,OAAkC,CAAC;YAClD,MAAM,IAAI,GAAG,MAAM,gBAAgB,CACjC,IAAI,CAAC,GAAG,EACR,IAAI,CAAC,cAAc,EACnB,MAAM,EACN,EAAE,kBAAkB,EAAE,IAAI,CAAC,IAAI,EAAE,yBAAyB,EAAE,YAAY,EAAE,EAC1E,GAAG,CACJ,CAAC;YACF,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,cAAc,EAAE,QAAQ,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAqB;QAC/B,cAAc,EAAE,YAAY;QAC5B,MAAM,EAAE,IAAI,CAAC,GAAG;QAChB,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,mBAAmB,EAAE,GAAG,CAAC,mBAAmB;QAC5C,OAAO,EAAE,IAAI,CAAC,IAAI;QAClB,MAAM;QACN,UAAU,EAAE,GAAG;QACf,YAAY,EAAE,GAAG;QACjB,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7B,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACzC,CAAC;IACF,MAAM,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;IAExD,MAAM,kBAAkB,GAAiB;QACvC,EAAE,EAAE,GAAG;QACP,IAAI,EAAE,gBAAgB;QACtB,EAAE;QACF,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE;KAC9C,CAAC;IACF,MAAM,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,GAAG,CAAC,CAAC;IAEzD,OAAO,CAAC,GAAG,CAAC,4BAA4B,YAAY,EAAE,CAAC,CAAC;AAC1D,CAAC,CACF,CAAC;AAEJ,OAAO;KACJ,OAAO,CAAC,kBAAkB,CAAC;KAC3B,WAAW,CACV,oLAAoL,CACrL;KACA,MAAM,CAAC,SAAS,EAAE,mCAAmC,CAAC;KACtD,MAAM,CAAC,WAAW,EAAE,oDAAoD,CAAC;KACzE,MAAM,CAAC,eAAe,EAAE,mEAAmE,CAAC;KAC5F,MAAM,CAAC,KAAK,EAAE,MAA0B,EAAE,IAAgE,EAAE,EAAE;IAC7G,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS,CAAC;IACjE,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAC3D,MAAM,aAAa,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC,CAAC;QAC3E,OAAO;IACT,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QACxB,MAAM,eAAe,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IACD,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;IACxC,MAAM,SAAS,GAA+C;QAC5D,MAAM,EAAE,OAAO;QACf,MAAM,EAAE,QAAQ;QAChB,QAAQ,EAAE,UAAU;QACpB,SAAS,EAAE,WAAW;QACtB,GAAG,EAAE,KAAK;KACX,CAAC;IACF,MAAM,QAAQ,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC;IACvC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,CAAC,KAAK,CAAC,8DAA8D,CAAC,CAAC;QAC9E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,CAAC;IAC1C,MAAM,YAAY,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;IACvD,MAAM,gBAAgB,GACpB,QAAQ,KAAK,KAAK;QAChB,CAAC,CAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,CAA0B;QACxE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IACjB,MAAM,UAAU,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;IACpE,IAAI,CAAC;QACH,KAAK,MAAM,cAAc,IAAI,gBAAgB,EAAE,CAAC;YAC9C,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,0BAA0B,CAAC,GAAG,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC;YACtF,MAAM,KAAK,GACT,cAAc,KAAK,OAAO;gBACxB,CAAC,CAAC,QAAQ;gBACV,CAAC,CAAC,cAAc,KAAK,QAAQ;oBAC3B,CAAC,CAAC,QAAQ;oBACZ,CAAC,CAAC,cAAc,KAAK,UAAU;wBAC7B,CAAC,CAAC,UAAU;wBACZ,CAAC,CAAC,WAAW,CAAC;YACpB,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;gBACxB,OAAO,CAAC,GAAG,CAAC,IAAI,KAAK,kBAAkB,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;QACD,KAAK,MAAM,cAAc,IAAI,gBAAgB,EAAE,CAAC;YAC9C,MAAM,aAAa,GAAG,MAAM,qBAAqB,CAAC,cAAc,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;YACrF,MAAM,KAAK,GACT,cAAc,KAAK,OAAO;gBACxB,CAAC,CAAC,QAAQ;gBACV,CAAC,CAAC,cAAc,KAAK,QAAQ;oBAC3B,CAAC,CAAC,QAAQ;oBACZ,CAAC,CAAC,cAAc,KAAK,UAAU;wBAC7B,CAAC,CAAC,UAAU;wBACZ,CAAC,CAAC,WAAW,CAAC;YACpB,OAAO,CAAC,GAAG,CAAC,IAAI,KAAK,wBAAwB,aAAa,EAAE,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAChE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,SAAS,yBAAyB,CAChC,MAAmD;IAEnD,MAAM,MAAM,GAAG,MAAM,CAAC,MAET,CAAC;IACd,OAAO,MAAM,IAAI,EAAE,CAAC;AACtB,CAAC;AAED,MAAM,SAAS,GAAG,OAAO;KACtB,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,oEAAoE,CAAC,CAAC;AACrF,SAAS;KACN,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,qCAAqC,CAAC;KAClD,MAAM,CAAC,mBAAmB,EAAE,8CAA8C,CAAC;KAC3E,MAAM,CAAC,YAAY,EAAE,uCAAuC,CAAC;KAC7D,MAAM,CAAC,KAAK,EAAE,IAA6C,EAAE,EAAE;IAC9D,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,CAAC;IAC1C,MAAM,YAAY,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;IACvD,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM;QACzB,CAAC,CAAE,CAAC,IAAI,CAAC,MAAM,CAAmB;QAClC,CAAC,CAAC,YAAY,CAAC,OAAO,IAAK,CAAC,OAAO,EAAE,UAAU,EAAE,WAAW,CAAmB,CAAC;IAClF,IAAI,MAAM,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,CAAC,SAAS,EAAE,EAAE,YAAY,CAAC,CAAC;IACjG,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,MAAM,KAAK,GAAkB,EAAE,CAAC;QAChC,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;YACvB,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,MAAM,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAClD,IAAI,EAAE;gBAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxB,CAAC;QACD,MAAM,GAAG,KAAK,CAAC;IACjB,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC7B,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI;QACrB,WAAW,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW;QACnC,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,MAAM,EAAE,CAAC,CAAC,MAAM;KACjB,CAAC,CAAC,CAAC;IACJ,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAC5C,CAAC,CAAC,CAAC;AACL,SAAS;KACN,OAAO,CAAC,aAAa,CAAC;KACtB,WAAW,CAAC,0DAA0D,CAAC;KACvE,MAAM,CAAC,KAAK,EAAE,IAAY,EAAE,EAAE;IAC7B,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,CAAC;IAC1C,MAAM,YAAY,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;IACvE,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,UAAU,IAAI,cAAc,CAAC,CAAC;QAC5C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAClF,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CACxB;QACE,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,WAAW,EAAE,OAAO;KACrB,EACD,IAAI,EACJ,CAAC,CACF,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AACL,SAAS;KACN,OAAO,CAAC,cAAc,CAAC;KACvB,WAAW,CAAC,uEAAuE,CAAC;KACpF,MAAM,CAAC,KAAK,EAAE,OAAgB,EAAE,EAAE;IACjC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAC5C,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;QACxD,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACxB,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;YACpC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;YAC/C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,OAAO;IACT,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,CAAC;IAC1C,MAAM,YAAY,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;IACvD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;IAC9D,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,UAAU,GAAG,IAAI,CAAC;YAClB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAC;YACrC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;IACD,IAAI,UAAU;QAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAChC,OAAO,CAAC,GAAG,CAAC,OAAO,MAAM,CAAC,MAAM,kBAAkB,CAAC,CAAC;AACtD,CAAC,CAAC,CAAC;AACL,SAAS;KACN,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,0CAA0C,CAAC;KACvD,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,CAAC;IAC1C,MAAM,YAAY,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;IACvD,MAAM,OAAO,GAAkB,YAAY,CAAC,OAAO,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;IAC1F,MAAM,GAAG,GAA6B,EAAE,CAAC;IACzC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,GAAG,CAAC,MAAM,CAAC,GAAG,MAAM,mBAAmB,CAAC,MAAM,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAC5C,CAAC,CAAC,CAAC;AACL,SAAS;KACN,OAAO,CAAC,kBAAkB,CAAC;KAC3B,WAAW,CAAC,sHAAsH,CAAC;KACnI,MAAM,CAAC,mBAAmB,EAAE,yEAAyE,CAAC;KACtG,MAAM,CAAC,SAAS,EAAE,mCAAmC,CAAC;KACtD,MAAM,CAAC,KAAK,EAAE,MAA0B,EAAE,IAA0C,EAAE,EAAE;IACvF,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,CAAC;IAC1C,MAAM,YAAY,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;IACvD,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,YAAY,CAAC,sBAAsB,IAAI,WAAW,CAAuB,CAAC;IACzG,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QACnE,OAAO,CAAC,KAAK,CAAC,yDAAyD,CAAC,CAAC;QACzE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,CAAW,CAAC;IACxD,IAAI,CAAC;QACH,MAAM,YAAY,GAChB,aAAa,KAAK,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,aAAa,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAClF,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,0BAA0B,CAAC,GAAG,EAAE,MAAM,EAAE;gBAChE,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,GAAG;gBACH,MAAM,EAAE,YAAY;aACrB,CAAC,CAAC;YACH,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;gBACxB,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,aAAa,EAAE,MAAM,EAAE;gBACvD,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,GAAG;gBACH,MAAM,EAAE,YAAY;aACrB,CAAC,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,gBAAgB,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAChE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AACL,SAAS;KACN,OAAO,CAAC,eAAe,CAAC;KACxB,WAAW,CAAC,0EAA0E,CAAC;KACvF,MAAM,CAAC,mBAAmB,EAAE,4CAA4C,CAAC;KACzE,MAAM,CAAC,OAAO,EAAE,kCAAkC,CAAC;KACnD,MAAM,CAAC,WAAW,EAAE,sBAAsB,CAAC;KAC3C,MAAM,CAAC,KAAK,EAAE,IAAwB,EAAE,IAA0D,EAAE,EAAE;IACrG,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,CAAC;IAC1C,MAAM,YAAY,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;IACvD,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,YAAY,CAAC,sBAAsB,CAAmC,CAAC;IACtG,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CAAC,kEAAkE,CAAC,CAAC;QAClF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;QACb,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE;YACzD,GAAG;YACH,MAAM,EAAE,YAAY;YACpB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,YAAY,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC;QACxD,IAAI,OAAO,CAAC,MAAM;YAAE,OAAO,CAAC,GAAG,CAAC,YAAY,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClE,OAAO;IACT,CAAC;IACD,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;QAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,CAAC;QACH,MAAM,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACpF,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,CAAC;IAClC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAChE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,KAAK,CAAC;KACd,WAAW,CAAC,iDAAiD,CAAC;KAC9D,MAAM,CAAC,oBAAoB,EAAE,oCAAoC,CAAC;KAClE,MAAM,CAAC,KAAK,EAAE,IAA4B,EAAE,EAAE;IAC7C,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;IACnG,MAAM,YAAY,CAAC,aAAa,CAAC,CAAC;AACpC,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,wEAAwE,CAAC;KACrF,MAAM,CAAC,oBAAoB,EAAE,oCAAoC,CAAC;KAClE,MAAM,CAAC,iBAAiB,EAAE,wBAAwB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,mBAAmB,CAAC;KAChG,MAAM,CAAC,YAAY,EAAE,kEAAkE,CAAC;KACxF,MAAM,CAAC,KAAK,EAAE,IAA8D,EAAE,EAAE;IAC/E,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAC/E,MAAM,gBAAgB,CAAC,aAAa,CAAC,CAAC;IACtC,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,IAAI,mBAAmB,CAAC;IACvD,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,iBAAiB,CAAC,aAAa,EAAE,aAAa,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;IAC9G,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAClB,MAAM,GAAG,GAAG,oBAAoB,UAAU,EAAE,CAAC;QAC7C,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,aAAa,GAAG,gBAAgB,aAAa,0BAA0B,CAAC,CAAC;IACvF,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,kCAAkC,UAAU,gBAAgB,aAAa,IAAI,CAAC,CAAC;QAC3F,OAAO,CAAC,GAAG,CAAC,+EAA+E,CAAC,CAAC;QAC7F,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IACvC,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE;IACxB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,IAAI,CAAC,CAAC,MAAM,eAAe,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QAClC,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAC3D,MAAM,aAAa,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3C,CAAC;IACD,MAAM,YAAY,CAAC,GAAG,CAAC,CAAC;AAC1B,CAAC,CAAC,CAAC;AAEH,OAAO,CAAC,KAAK,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"default-collection-schema.d.ts","sourceRoot":"","sources":["../src/default-collection-schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAE1D,wBAAgB,6BAA6B,CAAC,UAAU,EAAE,MAAM,GAAG,sBAAsB,CAcxF"}
1
+ {"version":3,"file":"default-collection-schema.d.ts","sourceRoot":"","sources":["../src/default-collection-schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAG1D,wBAAgB,6BAA6B,CAAC,UAAU,EAAE,MAAM,GAAG,sBAAsB,CA8BxF"}
@@ -1,3 +1,4 @@
1
+ import { TRACEABILITY_PROPERTIES } from "./traceability-schema.js";
1
2
  export function createDefaultCollectionSchema(workflowId) {
2
3
  return {
3
4
  workflow_id: workflowId,
@@ -10,6 +11,21 @@ export function createDefaultCollectionSchema(workflowId) {
10
11
  additionalProperties: true,
11
12
  },
12
13
  },
14
+ sources: {
15
+ name: "Sources",
16
+ description: "Verified sources (e.g. articles, docs). The url field must be a URL the agent has actually retrieved or opened, not invented. Use citations/derived_from on other kinds to point to these.",
17
+ item_schema: {
18
+ type: "object",
19
+ required: ["url"],
20
+ properties: {
21
+ url: { type: "string", description: "URL that has been verified (retrieved or opened); do not invent." },
22
+ title: { type: "string", description: "Short title for the source." },
23
+ excerpt: { type: "string", description: "Brief excerpt or summary." },
24
+ ...TRACEABILITY_PROPERTIES,
25
+ },
26
+ additionalProperties: true,
27
+ },
28
+ },
13
29
  },
14
30
  };
15
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"default-collection-schema.js","sourceRoot":"","sources":["../src/default-collection-schema.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,6BAA6B,CAAC,UAAkB;IAC9D,OAAO;QACL,WAAW,EAAE,UAAU;QACvB,KAAK,EAAE;YACL,SAAS,EAAE;gBACT,IAAI,EAAE,WAAW;gBACjB,WAAW,EAAE,qDAAqD;gBAClE,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,oBAAoB,EAAE,IAAI;iBAC3B;aACF;SACF;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"default-collection-schema.js","sourceRoot":"","sources":["../src/default-collection-schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAEnE,MAAM,UAAU,6BAA6B,CAAC,UAAkB;IAC9D,OAAO;QACL,WAAW,EAAE,UAAU;QACvB,KAAK,EAAE;YACL,SAAS,EAAE;gBACT,IAAI,EAAE,WAAW;gBACjB,WAAW,EAAE,qDAAqD;gBAClE,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,oBAAoB,EAAE,IAAI;iBAC3B;aACF;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,SAAS;gBACf,WAAW,EACT,4LAA4L;gBAC9L,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,CAAC,KAAK,CAAC;oBACjB,UAAU,EAAE;wBACV,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kEAAkE,EAAE;wBACxG,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,6BAA6B,EAAE;wBACrE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2BAA2B,EAAE;wBACrE,GAAG,uBAAuB;qBAC3B;oBACD,oBAAoB,EAAE,IAAI;iBAC3B;aACF;SACF;KACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"default-workflow.d.ts","sourceRoot":"","sources":["../src/default-workflow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,KAAK,mBAAmB,EAAE,KAAK,cAAc,EAAE,KAAK,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAE1H,eAAO,MAAM,mBAAmB,eAAe,CAAC;AAChD,eAAO,MAAM,kBAAkB,OAAO,CAAC;AAEvC,wBAAgB,0BAA0B,IAAI,mBAAmB,CAYhE;AAED,wBAAgB,2BAA2B,CAAC,GAAG,GAAE,MAAiC,GAAG,cAAc,CAQlG;AAED,wBAAgB,kCAAkC,CAChD,GAAG,GAAE,MAAiC,GACrC,qBAAqB,CA8BvB"}
1
+ {"version":3,"file":"default-workflow.d.ts","sourceRoot":"","sources":["../src/default-workflow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,KAAK,mBAAmB,EAAE,KAAK,cAAc,EAAE,KAAK,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAE1H,eAAO,MAAM,mBAAmB,eAAe,CAAC;AAChD,eAAO,MAAM,kBAAkB,OAAO,CAAC;AAEvC,wBAAgB,0BAA0B,IAAI,mBAAmB,CAYhE;AAED,wBAAgB,2BAA2B,CAAC,GAAG,GAAE,MAAiC,GAAG,cAAc,CAQlG;AAED,wBAAgB,kCAAkC,CAChD,GAAG,GAAE,MAAiC,GACrC,qBAAqB,CAqCvB"}
@@ -35,21 +35,25 @@ export function createDefaultWorkflowVersionRecord(now = new Date().toISOString(
35
35
  type: WorkflowNodeType.Prompt,
36
36
  input_collections: ["run_input"],
37
37
  output_collections: ["sources"],
38
- prompt: "Retrieve relevant sources for the run input topic.",
38
+ minimum_rows: 5,
39
+ required_skills: ["cognetivy"],
40
+ required_mcps: ["user-context7", "cursor-ide-browser"],
41
+ prompt: "Retrieve relevant sources for the run input topic. Use only real sources: either provided in run input/collections or actually retrieved by you via tools (e.g. web search, MCP, browser). Do not invent or guess URLs or facts. Each source must be something you have verified (e.g. fetched or opened). For each item output: a verified URL, a short title, and a brief excerpt. Aim for at least the minimum number of sources required by this node.",
39
42
  },
40
43
  {
41
44
  id: "synthesize_summary",
42
45
  type: WorkflowNodeType.Prompt,
43
46
  input_collections: ["sources"],
44
47
  output_collections: ["summary"],
45
- prompt: "Synthesize the sources into a summary.",
48
+ required_skills: ["cognetivy"],
49
+ prompt: "Synthesize the provided sources into a concise summary. Use only the content from the sources collection; do not add claims, quotes, or facts that are not present in those sources. If the sources are insufficient for a point, say so rather than inventing information. Output clear, well-structured markdown.",
46
50
  },
47
51
  {
48
52
  id: "human_review",
49
53
  type: WorkflowNodeType.HumanInTheLoop,
50
54
  input_collections: ["summary"],
51
55
  output_collections: ["approved_summary"],
52
- prompt: "Review the summary. If approved, copy it into approved_summary (or edit it).",
56
+ prompt: "Review the summary. If approved, copy it into approved_summary (or edit it). If changes are needed, update the content before approving.",
53
57
  },
54
58
  ],
55
59
  };
@@ -1 +1 @@
1
- {"version":3,"file":"default-workflow.js","sourceRoot":"","sources":["../src/default-workflow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAA6E,MAAM,aAAa,CAAC;AAE1H,MAAM,CAAC,MAAM,mBAAmB,GAAG,YAAY,CAAC;AAChD,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,CAAC;AAEvC,MAAM,UAAU,0BAA0B;IACxC,OAAO;QACL,mBAAmB,EAAE,mBAAmB;QACxC,SAAS,EAAE;YACT;gBACE,WAAW,EAAE,mBAAmB;gBAChC,IAAI,EAAE,kBAAkB;gBACxB,WAAW,EAAE,iEAAiE;gBAC9E,kBAAkB,EAAE,kBAAkB;aACvC;SACF;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,MAAc,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;IAChF,OAAO;QACL,WAAW,EAAE,mBAAmB;QAChC,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,iEAAiE;QAC9E,kBAAkB,EAAE,kBAAkB;QACtC,UAAU,EAAE,GAAG;KAChB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kCAAkC,CAChD,MAAc,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;IAEtC,OAAO;QACL,WAAW,EAAE,mBAAmB;QAChC,UAAU,EAAE,kBAAkB;QAC9B,IAAI,EAAE,IAAI;QACV,UAAU,EAAE,GAAG;QACf,KAAK,EAAE;YACL;gBACE,EAAE,EAAE,kBAAkB;gBACtB,IAAI,EAAE,gBAAgB,CAAC,MAAM;gBAC7B,iBAAiB,EAAE,CAAC,WAAW,CAAC;gBAChC,kBAAkB,EAAE,CAAC,SAAS,CAAC;gBAC/B,MAAM,EAAE,oDAAoD;aAC7D;YACD;gBACE,EAAE,EAAE,oBAAoB;gBACxB,IAAI,EAAE,gBAAgB,CAAC,MAAM;gBAC7B,iBAAiB,EAAE,CAAC,SAAS,CAAC;gBAC9B,kBAAkB,EAAE,CAAC,SAAS,CAAC;gBAC/B,MAAM,EAAE,wCAAwC;aACjD;YACD;gBACE,EAAE,EAAE,cAAc;gBAClB,IAAI,EAAE,gBAAgB,CAAC,cAAc;gBACrC,iBAAiB,EAAE,CAAC,SAAS,CAAC;gBAC9B,kBAAkB,EAAE,CAAC,kBAAkB,CAAC;gBACxC,MAAM,EAAE,8EAA8E;aACvF;SACF;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"default-workflow.js","sourceRoot":"","sources":["../src/default-workflow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAA6E,MAAM,aAAa,CAAC;AAE1H,MAAM,CAAC,MAAM,mBAAmB,GAAG,YAAY,CAAC;AAChD,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,CAAC;AAEvC,MAAM,UAAU,0BAA0B;IACxC,OAAO;QACL,mBAAmB,EAAE,mBAAmB;QACxC,SAAS,EAAE;YACT;gBACE,WAAW,EAAE,mBAAmB;gBAChC,IAAI,EAAE,kBAAkB;gBACxB,WAAW,EAAE,iEAAiE;gBAC9E,kBAAkB,EAAE,kBAAkB;aACvC;SACF;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,MAAc,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;IAChF,OAAO;QACL,WAAW,EAAE,mBAAmB;QAChC,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,iEAAiE;QAC9E,kBAAkB,EAAE,kBAAkB;QACtC,UAAU,EAAE,GAAG;KAChB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kCAAkC,CAChD,MAAc,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;IAEtC,OAAO;QACL,WAAW,EAAE,mBAAmB;QAChC,UAAU,EAAE,kBAAkB;QAC9B,IAAI,EAAE,IAAI;QACV,UAAU,EAAE,GAAG;QACf,KAAK,EAAE;YACL;gBACE,EAAE,EAAE,kBAAkB;gBACtB,IAAI,EAAE,gBAAgB,CAAC,MAAM;gBAC7B,iBAAiB,EAAE,CAAC,WAAW,CAAC;gBAChC,kBAAkB,EAAE,CAAC,SAAS,CAAC;gBAC/B,YAAY,EAAE,CAAC;gBACf,eAAe,EAAE,CAAC,WAAW,CAAC;gBAC9B,aAAa,EAAE,CAAC,eAAe,EAAE,oBAAoB,CAAC;gBACtD,MAAM,EACJ,4bAA4b;aAC/b;YACD;gBACE,EAAE,EAAE,oBAAoB;gBACxB,IAAI,EAAE,gBAAgB,CAAC,MAAM;gBAC7B,iBAAiB,EAAE,CAAC,SAAS,CAAC;gBAC9B,kBAAkB,EAAE,CAAC,SAAS,CAAC;gBAC/B,eAAe,EAAE,CAAC,WAAW,CAAC;gBAC9B,MAAM,EACJ,qTAAqT;aACxT;YACD;gBACE,EAAE,EAAE,cAAc;gBAClB,IAAI,EAAE,gBAAgB,CAAC,cAAc;gBACrC,iBAAiB,EAAE,CAAC,SAAS,CAAC;gBAC9B,kBAAkB,EAAE,CAAC,kBAAkB,CAAC;gBACxC,MAAM,EACJ,0IAA0I;aAC7I;SACF;KACF,CAAC;AACJ,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import type { CollectionKindSchema } from "./models.js";
2
2
  /**
3
3
  * Merge kind template into the provided kind schema. Template fields are added if not already present.
4
+ * Also merges traceability fields (citations, derived_from, reasoning) for non-run_input kinds.
4
5
  */
5
6
  export declare function mergeKindTemplate(kind: string, schema: CollectionKindSchema): CollectionKindSchema;
6
7
  //# sourceMappingURL=kind-templates.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"kind-templates.d.ts","sourceRoot":"","sources":["../src/kind-templates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAqBxD;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,oBAAoB,GAC3B,oBAAoB,CA6BtB"}
1
+ {"version":3,"file":"kind-templates.d.ts","sourceRoot":"","sources":["../src/kind-templates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAsBxD;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,oBAAoB,GAC3B,oBAAoB,CAiCtB"}
@@ -1,3 +1,4 @@
1
+ import { mergeTraceabilityIntoItemSchema } from "./traceability-schema.js";
1
2
  /**
2
3
  * Default fields to merge when adding certain collection kinds via collection_schema_add_kind.
3
4
  * Ensures standard fields (e.g. industry for ideas) are always present.
@@ -15,30 +16,34 @@ const KIND_TEMPLATES = {
15
16
  };
16
17
  /**
17
18
  * Merge kind template into the provided kind schema. Template fields are added if not already present.
19
+ * Also merges traceability fields (citations, derived_from, reasoning) for non-run_input kinds.
18
20
  */
19
21
  export function mergeKindTemplate(kind, schema) {
20
- const template = KIND_TEMPLATES[kind];
21
- if (!template)
22
- return schema;
23
22
  const itemSchema = schema.item_schema;
24
23
  if (itemSchema == null || typeof itemSchema !== "object")
25
24
  return schema;
26
25
  const base = itemSchema;
27
- if (base.type && base.type !== "object")
28
- return schema;
29
- const required = Array.isArray(base.required) ? [...base.required] : [];
26
+ let mergedSchema = mergeTraceabilityIntoItemSchema(kind, { ...base });
27
+ const template = KIND_TEMPLATES[kind];
28
+ if (!template)
29
+ return { ...schema, item_schema: mergedSchema };
30
+ if (mergedSchema.type && mergedSchema.type !== "object")
31
+ return { ...schema, item_schema: mergedSchema };
32
+ const required = Array.isArray(mergedSchema.required) ? [...mergedSchema.required] : [];
30
33
  for (const field of template.required ?? []) {
31
34
  if (!required.includes(field))
32
35
  required.push(field);
33
36
  }
34
- const properties = base.properties && typeof base.properties === "object" ? { ...base.properties } : {};
37
+ const properties = mergedSchema.properties && typeof mergedSchema.properties === "object"
38
+ ? { ...mergedSchema.properties }
39
+ : {};
35
40
  for (const [key, prop] of Object.entries(template.properties ?? {})) {
36
41
  if (!(key in properties))
37
42
  properties[key] = prop;
38
43
  }
39
- const mergedSchema = {
44
+ mergedSchema = {
40
45
  type: "object",
41
- ...base,
46
+ ...mergedSchema,
42
47
  required: required.length > 0 ? required : undefined,
43
48
  properties,
44
49
  };
@@ -1 +1 @@
1
- {"version":3,"file":"kind-templates.js","sourceRoot":"","sources":["../src/kind-templates.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,cAAc,GAGhB;IACF,KAAK,EAAE;QACL,QAAQ,EAAE,CAAC,UAAU,CAAC;QACtB,UAAU,EAAE;YACV,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,0EAA0E;aACxF;SACF;KACF;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAC/B,IAAY,EACZ,MAA4B;IAE5B,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;IACtC,IAAI,CAAC,QAAQ;QAAE,OAAO,MAAM,CAAC;IAE7B,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC;IACtC,IAAI,UAAU,IAAI,IAAI,IAAI,OAAO,UAAU,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC;IAExE,MAAM,IAAI,GAAG,UAAqC,CAAC;IACnD,IAAK,IAAI,CAAC,IAA2B,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC;IAE/E,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,GAAI,IAAI,CAAC,QAAqB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACtF,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;QAC5C,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACtD,CAAC;IAED,MAAM,UAAU,GACd,IAAI,CAAC,UAAU,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAI,IAAI,CAAC,UAAsC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACpH,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,IAAI,EAAE,CAAC,EAAE,CAAC;QACpE,IAAI,CAAC,CAAC,GAAG,IAAI,UAAU,CAAC;YAAE,UAAU,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IACnD,CAAC;IAED,MAAM,YAAY,GAA4B;QAC5C,IAAI,EAAE,QAAQ;QACd,GAAG,IAAI;QACP,QAAQ,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;QACpD,UAAU;KACX,CAAC;IAEF,OAAO,EAAE,GAAG,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC;AAClD,CAAC"}
1
+ {"version":3,"file":"kind-templates.js","sourceRoot":"","sources":["../src/kind-templates.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,+BAA+B,EAAE,MAAM,0BAA0B,CAAC;AAE3E;;;GAGG;AACH,MAAM,cAAc,GAGhB;IACF,KAAK,EAAE;QACL,QAAQ,EAAE,CAAC,UAAU,CAAC;QACtB,UAAU,EAAE;YACV,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,0EAA0E;aACxF;SACF;KACF;CACF,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAC/B,IAAY,EACZ,MAA4B;IAE5B,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC;IACtC,IAAI,UAAU,IAAI,IAAI,IAAI,OAAO,UAAU,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC;IAExE,MAAM,IAAI,GAAG,UAAqC,CAAC;IACnD,IAAI,YAAY,GAAG,+BAA+B,CAAC,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;IAEtE,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;IACtC,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,GAAG,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC;IAE/D,IAAK,YAAY,CAAC,IAA2B,IAAI,YAAY,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,EAAE,GAAG,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC;IAEjI,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,GAAI,YAAY,CAAC,QAAqB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACtG,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;QAC5C,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACtD,CAAC;IAED,MAAM,UAAU,GACd,YAAY,CAAC,UAAU,IAAI,OAAO,YAAY,CAAC,UAAU,KAAK,QAAQ;QACpE,CAAC,CAAC,EAAE,GAAI,YAAY,CAAC,UAAsC,EAAE;QAC7D,CAAC,CAAC,EAAE,CAAC;IACT,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,IAAI,EAAE,CAAC,EAAE,CAAC;QACpE,IAAI,CAAC,CAAC,GAAG,IAAI,UAAU,CAAC;YAAE,UAAU,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IACnD,CAAC;IAED,YAAY,GAAG;QACb,IAAI,EAAE,QAAQ;QACd,GAAG,YAAY;QACf,QAAQ,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;QACpD,UAAU;KACX,CAAC;IAEF,OAAO,EAAE,GAAG,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC;AAClD,CAAC"}
package/dist/mcp.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAkzBH,wBAAsB,YAAY,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAuDvE"}
1
+ {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAw/BH,wBAAsB,YAAY,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAuDvE"}