@pixelbyte-software/pixcode 1.42.2 → 1.42.4

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 (42) hide show
  1. package/dist/assets/{index-CMeiCqQf.js → index-cTGs3Dvx.js} +72 -72
  2. package/dist/index.html +1 -1
  3. package/dist-server/server/claude-sdk.js +23 -2
  4. package/dist-server/server/claude-sdk.js.map +1 -1
  5. package/dist-server/server/modules/orchestration/a2a/adapters/abstract-a2a.adapter.js.map +1 -1
  6. package/dist-server/server/modules/orchestration/a2a/adapters/claude-code.adapter.js +2 -0
  7. package/dist-server/server/modules/orchestration/a2a/adapters/claude-code.adapter.js.map +1 -1
  8. package/dist-server/server/modules/orchestration/a2a/routes.js +2 -0
  9. package/dist-server/server/modules/orchestration/a2a/routes.js.map +1 -1
  10. package/dist-server/server/modules/orchestration/index.js +1 -0
  11. package/dist-server/server/modules/orchestration/index.js.map +1 -1
  12. package/dist-server/server/modules/orchestration/security/permission-policy.js +269 -0
  13. package/dist-server/server/modules/orchestration/security/permission-policy.js.map +1 -0
  14. package/dist-server/server/modules/orchestration/tasks/orchestration-task.service.js +86 -0
  15. package/dist-server/server/modules/orchestration/tasks/orchestration-task.service.js.map +1 -1
  16. package/dist-server/server/modules/orchestration/tasks/task-run-graph.js +158 -0
  17. package/dist-server/server/modules/orchestration/tasks/task-run-graph.js.map +1 -0
  18. package/dist-server/server/modules/orchestration/workflows/workflow-runner.js +121 -1
  19. package/dist-server/server/modules/orchestration/workflows/workflow-runner.js.map +1 -1
  20. package/dist-server/server/modules/orchestration/workflows/workflow-trace.js +32 -0
  21. package/dist-server/server/modules/orchestration/workflows/workflow-trace.js.map +1 -1
  22. package/dist-server/server/modules/orchestration/workflows/workflow.routes.js +103 -0
  23. package/dist-server/server/modules/orchestration/workflows/workflow.routes.js.map +1 -1
  24. package/dist-server/server/routes/taskmaster.js +93 -25
  25. package/dist-server/server/routes/taskmaster.js.map +1 -1
  26. package/package.json +1 -1
  27. package/scripts/smoke/permission-policy.mjs +50 -0
  28. package/scripts/smoke/taskmaster-run-graph.mjs +55 -0
  29. package/server/claude-sdk.js +24 -2
  30. package/server/modules/orchestration/a2a/adapters/abstract-a2a.adapter.ts +8 -0
  31. package/server/modules/orchestration/a2a/adapters/claude-code.adapter.ts +2 -0
  32. package/server/modules/orchestration/a2a/routes.ts +6 -0
  33. package/server/modules/orchestration/index.ts +18 -0
  34. package/server/modules/orchestration/security/permission-policy.ts +401 -0
  35. package/server/modules/orchestration/tasks/orchestration-task.service.ts +94 -0
  36. package/server/modules/orchestration/tasks/orchestration-task.types.ts +10 -0
  37. package/server/modules/orchestration/tasks/task-run-graph.ts +219 -0
  38. package/server/modules/orchestration/workflows/workflow-runner.ts +148 -2
  39. package/server/modules/orchestration/workflows/workflow-trace.ts +32 -0
  40. package/server/modules/orchestration/workflows/workflow.routes.ts +121 -0
  41. package/server/modules/orchestration/workflows/workflow.types.ts +9 -1
  42. package/server/routes/taskmaster.js +90 -23
@@ -13,6 +13,9 @@ import { spawn } from 'child_process';
13
13
  import express from 'express';
14
14
  import crossSpawn from 'cross-spawn';
15
15
  import { orchestrationTaskService } from '../modules/orchestration/tasks/orchestration-task.service.js';
16
+ import { buildTaskRunGraph } from '../modules/orchestration/tasks/task-run-graph.js';
17
+ import { workflowRunner } from '../modules/orchestration/workflows/workflow-runner.js';
18
+ import { workflowStore } from '../modules/orchestration/workflows/workflow-store.js';
16
19
  import { extractProjectDirectory } from '../projects.js';
17
20
  import { cancelInstallJob, buildCliSpawnEnv, createInstallJob, findExecutableOnPath, getInstallJob, snapshotDonePayload } from '../services/install-jobs.js';
18
21
  import { buildTaskMasterEnv, getTaskMasterConfigSummary, saveTaskMasterConfig } from '../services/taskmaster-config.js';
@@ -132,6 +135,19 @@ function taskMasterExecutionDescription(task) {
132
135
  : '',
133
136
  ].filter(Boolean).join('\n\n');
134
137
  }
138
+ function taskGraphForTask(projectId, task) {
139
+ return buildTaskRunGraph({
140
+ projectId,
141
+ taskmasterId: String(task.id),
142
+ taskmasterTask: task,
143
+ });
144
+ }
145
+ function attachTaskGraph(projectId, task) {
146
+ return {
147
+ ...task,
148
+ taskGraph: taskGraphForTask(projectId, task),
149
+ };
150
+ }
135
151
  function buildTaskMasterQueueSummary(projectName, projectPath, tasks) {
136
152
  const normalized = tasks.map((task) => ({
137
153
  ...task,
@@ -354,20 +370,24 @@ router.delete('/install/:jobId', async (req, res) => {
354
370
  router.get('/tasks/:projectName', async (req, res) => {
355
371
  try {
356
372
  const { projectName } = req.params;
373
+ const projectId = typeof req.query.projectId === 'string' && req.query.projectId.trim()
374
+ ? req.query.projectId.trim()
375
+ : projectName;
357
376
  const { projectPath, transformedTasks, currentTag } = await readTaskMasterTasks(projectName);
377
+ const tasksWithGraph = transformedTasks.map((task) => attachTaskGraph(projectId, task));
358
378
  res.json({
359
379
  projectName,
360
380
  projectPath,
361
- tasks: transformedTasks,
381
+ tasks: tasksWithGraph,
362
382
  currentTag,
363
- totalTasks: transformedTasks.length,
383
+ totalTasks: tasksWithGraph.length,
364
384
  tasksByStatus: {
365
- pending: transformedTasks.filter(t => t.status === 'pending').length,
366
- 'in-progress': transformedTasks.filter(t => t.status === 'in-progress').length,
367
- done: transformedTasks.filter(t => t.status === 'done').length,
368
- review: transformedTasks.filter(t => t.status === 'review').length,
369
- deferred: transformedTasks.filter(t => t.status === 'deferred').length,
370
- cancelled: transformedTasks.filter(t => t.status === 'cancelled').length
385
+ pending: tasksWithGraph.filter(t => t.status === 'pending').length,
386
+ 'in-progress': tasksWithGraph.filter(t => t.status === 'in-progress').length,
387
+ done: tasksWithGraph.filter(t => t.status === 'done').length,
388
+ review: tasksWithGraph.filter(t => t.status === 'review').length,
389
+ deferred: tasksWithGraph.filter(t => t.status === 'deferred').length,
390
+ cancelled: tasksWithGraph.filter(t => t.status === 'cancelled').length
371
391
  },
372
392
  timestamp: new Date().toISOString()
373
393
  });
@@ -421,6 +441,9 @@ router.get('/queue/:projectName', async (req, res) => {
421
441
  router.get('/task/:projectName/:taskId', async (req, res) => {
422
442
  try {
423
443
  const { projectName, taskId } = req.params;
444
+ const projectId = typeof req.query.projectId === 'string' && req.query.projectId.trim()
445
+ ? req.query.projectId.trim()
446
+ : projectName;
424
447
  const { projectPath, transformedTasks } = await readTaskMasterTasks(projectName);
425
448
  const task = transformedTasks.find((candidate) => String(candidate.id) === String(taskId));
426
449
  if (!task) {
@@ -434,7 +457,8 @@ router.get('/task/:projectName/:taskId', async (req, res) => {
434
457
  success: true,
435
458
  projectName,
436
459
  projectPath,
437
- task,
460
+ task: attachTaskGraph(projectId, task),
461
+ taskGraph: taskGraphForTask(projectId, task),
438
462
  execution: {
439
463
  supportsProvider: true,
440
464
  supportsModel: true,
@@ -467,6 +491,7 @@ router.post('/execute/:projectName/:taskId', async (req, res) => {
467
491
  : '';
468
492
  const model = typeof req.body?.model === 'string' ? req.body.model : undefined;
469
493
  const permissionMode = typeof req.body?.permissionMode === 'string' ? req.body.permissionMode : undefined;
494
+ const workflowId = typeof req.body?.workflowId === 'string' ? req.body.workflowId : undefined;
470
495
  const fallbackProvider = typeof req.body?.fallbackProvider === 'string' ? req.body.fallbackProvider : undefined;
471
496
  const workerSlot = Number.isInteger(req.body?.workerSlot) ? req.body.workerSlot : undefined;
472
497
  const isolation = ['host', 'worktree', 'docker'].includes(req.body?.isolation)
@@ -502,15 +527,50 @@ router.post('/execute/:projectName/:taskId', async (req, res) => {
502
527
  workerSlot,
503
528
  },
504
529
  });
505
- const dispatchedTask = await orchestrationTaskService.dispatch(orchestrationTask.id, {
506
- adapterId,
507
- isolation,
508
- projectPath,
509
- model,
510
- permissionMode,
511
- fallbackProvider,
512
- workerSlot,
513
- });
530
+ let dispatchedTask;
531
+ let workflowRun;
532
+ if (workflowId) {
533
+ const workflow = workflowStore.getWorkflow(workflowId);
534
+ if (!workflow) {
535
+ return res.status(404).json({
536
+ success: false,
537
+ error: 'Workflow not found',
538
+ message: `Workflow "${workflowId}" was not found`
539
+ });
540
+ }
541
+ workflowRun = workflowRunner.start(workflow, taskMasterExecutionDescription(task), {
542
+ projectId,
543
+ projectName,
544
+ projectPath,
545
+ selectedProjectPath: projectPath,
546
+ taskmasterId: String(task.id),
547
+ taskmasterTaskTitle: task.title,
548
+ orchestrationTaskId: orchestrationTask.id,
549
+ workflowName: workflow.name,
550
+ settings: {
551
+ isolation,
552
+ keepWorkspace: true,
553
+ baseRef: 'HEAD',
554
+ },
555
+ taskGraph: {
556
+ taskmasterId: String(task.id),
557
+ orchestrationTaskId: orchestrationTask.id,
558
+ source: 'taskmaster',
559
+ },
560
+ });
561
+ dispatchedTask = orchestrationTaskService.linkWorkflowRun(orchestrationTask.id, workflowRun) ?? orchestrationTask;
562
+ }
563
+ else {
564
+ dispatchedTask = await orchestrationTaskService.dispatch(orchestrationTask.id, {
565
+ adapterId,
566
+ isolation,
567
+ projectPath,
568
+ model,
569
+ permissionMode,
570
+ fallbackProvider,
571
+ workerSlot,
572
+ });
573
+ }
514
574
  res.json({
515
575
  success: true,
516
576
  projectName,
@@ -522,8 +582,11 @@ router.post('/execute/:projectName/:taskId', async (req, res) => {
522
582
  permissionMode,
523
583
  fallbackProvider,
524
584
  workerSlot,
585
+ workflowId,
525
586
  },
526
- task: dispatchedTask
587
+ task: dispatchedTask,
588
+ run: workflowRun,
589
+ taskGraph: taskGraphForTask(projectId, task),
527
590
  });
528
591
  }
529
592
  catch (error) {
@@ -546,12 +609,17 @@ router.post('/sync-orchestration/:projectName', async (req, res) => {
546
609
  const projectId = typeof req.body?.projectId === 'string' && req.body.projectId.trim()
547
610
  ? req.body.projectId.trim()
548
611
  : projectName;
549
- const syncedTasks = transformedTasks.map((task) => orchestrationTaskService.upsertFromTaskMaster({
550
- projectId,
551
- taskmasterId: String(task.id),
552
- title: task.title,
553
- description: task.description,
554
- }));
612
+ const syncedTasks = transformedTasks.map((task) => {
613
+ const taskGraph = taskGraphForTask(projectId, task);
614
+ return orchestrationTaskService.upsertFromTaskMaster({
615
+ projectId,
616
+ taskmasterId: String(task.id),
617
+ title: task.title,
618
+ description: task.description,
619
+ acceptanceCriteria: taskGraph.acceptanceCriteria,
620
+ changedFiles: taskGraph.changedFiles,
621
+ });
622
+ });
555
623
  res.json({
556
624
  success: true,
557
625
  projectName,
@@ -1 +1 @@
1
- {"version":3,"file":"taskmaster.js","sourceRoot":"","sources":["../../../server/routes/taskmaster.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taskmaster.js","sourceRoot":"","sources":["../../../server/routes/taskmaster.js"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,EAAE,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,IAAI,CAAC;AAChD,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEtC,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,UAAU,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,wBAAwB,EAAE,MAAM,6DAA6D,CAAC;AACvG,OAAO,EAAE,iBAAiB,EAAE,MAAM,iDAAiD,CAAC;AACpF,OAAO,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AACtF,OAAO,EAAE,aAAa,EAAE,MAAM,qDAAqD,CAAC;AAEpF,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EACH,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,oBAAoB,EACpB,aAAa,EACb,mBAAmB,EACtB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACH,kBAAkB,EAClB,0BAA0B,EAC1B,oBAAoB,EACvB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,gCAAgC,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AACpH,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAErE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;AAEhC;;;GAGG;AACH,KAAK,UAAU,qBAAqB,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG;IACtD,OAAO,kBAAkB,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC;AACzD,CAAC;AAED,SAAS,wBAAwB,CAAC,GAAG;IACjC,MAAM,cAAc,GAAG,oBAAoB,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;IAChE,IAAI,cAAc,EAAE,CAAC;QACjB,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;IACzD,CAAC;IAED,MAAM,UAAU,GAAG,oBAAoB,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;IAC/D,IAAI,UAAU,EAAE,CAAC;QACb,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;IACxD,CAAC;IAED,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,KAAK,UAAU,2BAA2B;IACtC,MAAM,GAAG,GAAG,MAAM,qBAAqB,EAAE,CAAC;IAE1C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC3B,MAAM,UAAU,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAC;QAEjD,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,OAAO,CAAC;gBACJ,WAAW,EAAE,KAAK;gBAClB,WAAW,EAAE,IAAI;gBACjB,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,IAAI;gBACZ,MAAM,EAAE,kCAAkC;aAC7C,CAAC,CAAC;YACH,OAAO;QACX,CAAC;QAED,MAAM,YAAY,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,WAAW,CAAC,EAAE;YAC5D,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;YACjC,GAAG;YACH,WAAW,EAAE,IAAI;SACpB,CAAC,CAAC;QAEH,IAAI,aAAa,GAAG,EAAE,CAAC;QAEvB,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YACrC,aAAa,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QACrC,CAAC,CAAC,CAAC;QAEH,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,WAAW,EAAE,EAAE;YACrC,OAAO,CAAC;gBACJ,WAAW,EAAE,IAAI;gBACjB,WAAW,EAAE,UAAU,CAAC,IAAI;gBAC5B,MAAM,EAAE,UAAU,CAAC,IAAI;gBACvB,OAAO,EAAE,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS;gBAC7D,MAAM,EAAE,IAAI;aACf,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YAC1B,OAAO,CAAC;gBACJ,WAAW,EAAE,IAAI;gBACjB,WAAW,EAAE,UAAU,CAAC,IAAI;gBAC5B,MAAM,EAAE,UAAU,CAAC,IAAI;gBACvB,OAAO,EAAE,SAAS;gBAClB,MAAM,EAAE,IAAI;aACf,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC;AAGD,KAAK,UAAU,mBAAmB,CAAC,WAAW;IAC1C,MAAM,WAAW,GAAG,MAAM,uBAAuB,CAAC,WAAW,CAAC,CAAC;IAC/D,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;IAEnF,MAAM,UAAU,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IACvC,MAAM,YAAY,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IACtE,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAE3C,IAAI,KAAK,GAAG,EAAE,CAAC;IACf,IAAI,UAAU,GAAG,QAAQ,CAAC;IAE1B,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QAC3B,KAAK,GAAG,SAAS,CAAC;IACtB,CAAC;SAAM,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;QACzB,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;IAC5B,CAAC;SAAM,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,CAAC;QAC9D,KAAK,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC;IACxC,CAAC;SAAM,IAAI,SAAS,CAAC,MAAM,IAAI,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACpD,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC;IACnC,CAAC;SAAM,CAAC;QACJ,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CACjD,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAC9D,CAAC;QACF,IAAI,QAAQ,EAAE,CAAC;YACX,KAAK,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;YAClC,UAAU,GAAG,QAAQ,CAAC;QAC1B,CAAC;IACL,CAAC;IAED,MAAM,gBAAgB,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC1C,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,eAAe;QACpC,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;QACnC,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,SAAS;QAChC,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,QAAQ;QACnC,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,EAAE;QACrC,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACrE,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACrE,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,EAAE;QAC3B,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,aAAa,IAAI,EAAE;QAC3D,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,EAAE;KAChC,CAAC,CAAC,CAAC;IAEJ,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,UAAU,EAAE,CAAC;AACzD,CAAC;AAED,SAAS,8BAA8B,CAAC,IAAI;IACxC,OAAO;QACH,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,iBAAiB,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE;QAC3D,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE;QAC/C,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,mBAAmB,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE;QAC/D,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM;YACxD,CAAC,CAAC,iBAAiB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACjD,CAAC,CAAC,EAAE;KACX,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACnC,CAAC;AAED,SAAS,gBAAgB,CAAC,SAAS,EAAE,IAAI;IACrC,OAAO,iBAAiB,CAAC;QACrB,SAAS;QACT,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7B,cAAc,EAAE,IAAI;KACvB,CAAC,CAAC;AACP,CAAC;AAED,SAAS,eAAe,CAAC,SAAS,EAAE,IAAI;IACpC,OAAO;QACH,GAAG,IAAI;QACP,SAAS,EAAE,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC;KAC/C,CAAC;AACN,CAAC;AAED,SAAS,2BAA2B,CAAC,WAAW,EAAE,WAAW,EAAE,KAAK;IAChE,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACpC,GAAG,IAAI;QACP,UAAU,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;YACxG,CAAC,CAAC,UAAU;YACZ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,SAAS,CAAC,KAAK,aAAa;gBAChD,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,QAAQ;KACrB,CAAC,CAAC,CAAC;IACJ,OAAO;QACH,WAAW;QACX,WAAW;QACX,KAAK,EAAE,UAAU;QACjB,MAAM,EAAE;YACJ,GAAG,EAAE,UAAU,CAAC,MAAM;YACtB,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,MAAM;YACxE,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,MAAM;YAC1E,QAAQ,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,CAAC,MAAM;SAC/E;QACD,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACtC,CAAC;AACN,CAAC;AAED,aAAa;AAEb;;;GAGG;AACH,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IACrC,IAAI,CAAC;QACD,GAAG,CAAC,IAAI,CAAC;YACL,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,MAAM,0BAA0B,EAAE;SAC7C,CAAC,CAAC;IACP,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,KAAK,CAAC,CAAC;QACzD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACjB,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,yCAAyC;YAChD,OAAO,EAAE,KAAK,CAAC,OAAO;SACzB,CAAC,CAAC;IACP,CAAC;AACL,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IACrC,IAAI,CAAC;QACD,GAAG,CAAC,IAAI,CAAC;YACL,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,MAAM,oBAAoB,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;SACrD,CAAC,CAAC;IACP,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,KAAK,CAAC,CAAC;QACxD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACjB,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,yCAAyC;YAChD,OAAO,EAAE,KAAK,CAAC,OAAO;SACzB,CAAC,CAAC;IACP,CAAC;AACL,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,GAAG,CAAC,sBAAsB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IAClD,IAAI,CAAC;QACD,MAAM,kBAAkB,GAAG,MAAM,2BAA2B,EAAE,CAAC;QAE/D,0CAA0C;QAC1C,MAAM,SAAS,GAAG,MAAM,yBAAyB,EAAE,CAAC;QAEpD,GAAG,CAAC,IAAI,CAAC;YACL,OAAO,EAAE,IAAI;YACb,YAAY,EAAE,kBAAkB;YAChC,SAAS,EAAE,SAAS;YACpB,OAAO,EAAE,kBAAkB,CAAC,WAAW,IAAI,SAAS,CAAC,YAAY;SACpE,CAAC,CAAC;IACP,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,yCAAyC,EAAE,KAAK,CAAC,CAAC;QAChE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACjB,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,gDAAgD;YACvD,YAAY,EAAE;gBACV,WAAW,EAAE,KAAK;gBAClB,MAAM,EAAE,iBAAiB,KAAK,CAAC,OAAO,EAAE;aAC3C;YACD,SAAS,EAAE;gBACP,YAAY,EAAE,KAAK;gBACnB,MAAM,EAAE,iBAAiB,KAAK,CAAC,OAAO,EAAE;aAC3C;YACD,OAAO,EAAE,KAAK;SACjB,CAAC,CAAC;IACP,CAAC;AACL,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IACvC,IAAI,CAAC;QACD,MAAM,GAAG,GAAG,gBAAgB,CAAC;YACzB,QAAQ,EAAE,YAAY;YACtB,UAAU,EAAE,4BAA4B;YACxC,WAAW,EAAE,aAAa;SAC7B,CAAC,CAAC;QAEH,GAAG,CAAC,IAAI,CAAC;YACL,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,GAAG,CAAC,EAAE;YACb,QAAQ,EAAE,YAAY;YACtB,WAAW,EAAE,aAAa;YAC1B,SAAS,EAAE,GAAG,CAAC,SAAS;SAC3B,CAAC,CAAC;IACP,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,KAAK,CAAC,CAAC;QACxD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACjB,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,oCAAoC;YAC3C,OAAO,EAAE,KAAK,CAAC,OAAO;SACzB,CAAC,CAAC;IACP,CAAC;AACL,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,GAAG,CAAC,wBAAwB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IACpD,MAAM,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5C,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;QACxC,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACxB,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,0CAA0C;SACpD,CAAC,CAAC;IACP,CAAC;IAED,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAAC;IACnD,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,wBAAwB,CAAC,CAAC;IACzD,GAAG,CAAC,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;IAC1C,GAAG,CAAC,SAAS,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC;IACzC,IAAI,OAAO,GAAG,CAAC,YAAY,KAAK,UAAU;QAAE,GAAG,CAAC,YAAY,EAAE,CAAC;IAE/D,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,MAAM,KAAK,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QAC7B,IAAI,MAAM;YAAE,OAAO;QACnB,IAAI,CAAC;YACD,GAAG,CAAC,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC;YAC/B,GAAG,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACtD,CAAC;QAAC,MAAM,CAAC;YACL,kBAAkB;QACtB,CAAC;IACL,CAAC,CAAC;IAEF,IAAI,CAAC;QAAC,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC;IACtD,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE;QAC/B,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,IAAI,CAAC;gBAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC;QACzD,CAAC;IACL,CAAC,EAAE,IAAI,CAAC,CAAC;IAET,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;QAC3B,KAAK,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,OAAO,GAAG,GAAG,EAAE;QACjB,IAAI,MAAM;YAAE,OAAO;QACnB,MAAM,GAAG,IAAI,CAAC;QACd,aAAa,CAAC,SAAS,CAAC,CAAC;QACzB,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC9B,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,CAAC,CAAC;IACF,MAAM,KAAK,GAAG,CAAC,KAAK,EAAE,EAAE;QACpB,KAAK,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IAC/D,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,CAAC,OAAO,EAAE,EAAE;QACvB,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACvB,OAAO,EAAE,CAAC;QACV,IAAI,CAAC;YAAC,GAAG,CAAC,GAAG,EAAE,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC;IAC3C,CAAC,CAAC;IAEF,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC3B,KAAK,CAAC,MAAM,EAAE,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC;QACxC,OAAO,EAAE,CAAC;QACV,IAAI,CAAC;YAAC,GAAG,CAAC,GAAG,EAAE,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC;QACvC,OAAO;IACX,CAAC;IAED,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC7B,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEjC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AAC7B,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IAChD,MAAM,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5C,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;QACxC,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACxB,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,uBAAuB;SACjC,CAAC,CAAC;IACP,CAAC;IAED,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;AAC/E,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,GAAG,CAAC,qBAAqB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IACjD,IAAI,CAAC;QACD,MAAM,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;QACnC,MAAM,SAAS,GAAG,OAAO,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,QAAQ,IAAI,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE;YACnF,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE;YAC5B,CAAC,CAAC,WAAW,CAAC;QAElB,MAAM,EAAE,WAAW,EAAE,gBAAgB,EAAE,UAAU,EAAE,GAAG,MAAM,mBAAmB,CAAC,WAAW,CAAC,CAAC;QAC7F,MAAM,cAAc,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;QAExF,GAAG,CAAC,IAAI,CAAC;YACL,WAAW;YACX,WAAW;YACX,KAAK,EAAE,cAAc;YACrB,UAAU;YACV,UAAU,EAAE,cAAc,CAAC,MAAM;YACjC,aAAa,EAAE;gBACX,OAAO,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,MAAM;gBAClE,aAAa,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC,MAAM;gBAC5E,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,MAAM;gBAC5D,MAAM,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,MAAM;gBAChE,QAAQ,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,MAAM;gBACpE,SAAS,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,MAAM;aACzE;YACD,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACtC,CAAC,CAAC;IAEP,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,IAAI,KAAK,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC3B,OAAO,GAAG,CAAC,IAAI,CAAC;gBACZ,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,WAAW;gBACnC,KAAK,EAAE,EAAE;gBACT,OAAO,EAAE,0BAA0B;aACtC,CAAC,CAAC;QACP,CAAC;QACD,IAAI,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC1D,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACxB,KAAK,EAAE,mBAAmB;gBAC1B,OAAO,EAAE,YAAY,GAAG,CAAC,MAAM,CAAC,WAAW,kBAAkB;aAChE,CAAC,CAAC;QACP,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,KAAK,CAAC,CAAC;QACxD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACjB,KAAK,EAAE,iCAAiC;YACxC,OAAO,EAAE,KAAK,CAAC,OAAO;SACzB,CAAC,CAAC;IACP,CAAC;AACL,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,GAAG,CAAC,qBAAqB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IACjD,IAAI,CAAC;QACD,MAAM,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;QACnC,MAAM,EAAE,WAAW,EAAE,gBAAgB,EAAE,GAAG,MAAM,mBAAmB,CAAC,WAAW,CAAC,CAAC;QACjF,GAAG,CAAC,IAAI,CAAC,2BAA2B,CAAC,WAAW,EAAE,WAAW,EAAE,gBAAgB,CAAC,CAAC,CAAC;IACtF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,IAAI,KAAK,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC3B,OAAO,GAAG,CAAC,IAAI,CAAC,2BAA2B,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;QACnF,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,KAAK,CAAC,CAAC;QACxD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACjB,KAAK,EAAE,iCAAiC;YACxC,OAAO,EAAE,KAAK,CAAC,OAAO;SACzB,CAAC,CAAC;IACP,CAAC;AACL,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,GAAG,CAAC,4BAA4B,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IACxD,IAAI,CAAC;QACD,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;QAC3C,MAAM,SAAS,GAAG,OAAO,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,QAAQ,IAAI,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE;YACnF,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE;YAC5B,CAAC,CAAC,WAAW,CAAC;QAClB,MAAM,EAAE,WAAW,EAAE,gBAAgB,EAAE,GAAG,MAAM,mBAAmB,CAAC,WAAW,CAAC,CAAC;QACjF,MAAM,IAAI,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QAC3F,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACxB,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,2BAA2B;gBAClC,OAAO,EAAE,SAAS,MAAM,+BAA+B,WAAW,GAAG;aACxE,CAAC,CAAC;QACP,CAAC;QACD,GAAG,CAAC,IAAI,CAAC;YACL,OAAO,EAAE,IAAI;YACb,WAAW;YACX,WAAW;YACX,IAAI,EAAE,eAAe,CAAC,SAAS,EAAE,IAAI,CAAC;YACtC,SAAS,EAAE,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC;YAC5C,SAAS,EAAE;gBACP,gBAAgB,EAAE,IAAI;gBACtB,aAAa,EAAE,IAAI;gBACnB,wBAAwB,EAAE,IAAI;gBAC9B,sBAAsB,EAAE,IAAI;gBAC5B,kBAAkB,EAAE,IAAI;aAC3B;SACJ,CAAC,CAAC;IACP,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAC;QACtD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACjB,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,gCAAgC;YACvC,OAAO,EAAE,KAAK,CAAC,OAAO;SACzB,CAAC,CAAC;IACP,CAAC;AACL,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IAC5D,IAAI,CAAC;QACD,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;QAC3C,MAAM,SAAS,GAAG,OAAO,GAAG,CAAC,IAAI,EAAE,SAAS,KAAK,QAAQ;YACrD,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS;YACpB,CAAC,CAAC,OAAO,GAAG,CAAC,IAAI,EAAE,QAAQ,KAAK,QAAQ;gBACpC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ;gBACnB,CAAC,CAAC,EAAE,CAAC;QACb,MAAM,KAAK,GAAG,OAAO,GAAG,CAAC,IAAI,EAAE,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/E,MAAM,cAAc,GAAG,OAAO,GAAG,CAAC,IAAI,EAAE,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1G,MAAM,UAAU,GAAG,OAAO,GAAG,CAAC,IAAI,EAAE,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;QAC9F,MAAM,gBAAgB,GAAG,OAAO,GAAG,CAAC,IAAI,EAAE,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;QAChH,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5F,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC;YAC1E,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS;YACpB,CAAC,CAAC,UAAU,CAAC;QACjB,MAAM,SAAS,GAAG,OAAO,GAAG,CAAC,IAAI,EAAE,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC;QAE7F,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACxB,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,mBAAmB;gBAC1B,OAAO,EAAE,mCAAmC;aAC/C,CAAC,CAAC;QACP,CAAC;QAED,MAAM,EAAE,WAAW,EAAE,gBAAgB,EAAE,GAAG,MAAM,mBAAmB,CAAC,WAAW,CAAC,CAAC;QACjF,MAAM,IAAI,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QAC3F,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACxB,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,2BAA2B;gBAClC,OAAO,EAAE,SAAS,MAAM,+BAA+B,WAAW,GAAG;aACxE,CAAC,CAAC;QACP,CAAC;QAED,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,oBAAoB,CAAC;YACpE,SAAS;YACT,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7B,KAAK,EAAE,eAAe,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,KAAK,EAAE;YAC9C,WAAW,EAAE,8BAA8B,CAAC,IAAI,CAAC;YACjD,QAAQ,EAAE;gBACN,QAAQ,EAAE,SAAS;gBACnB,KAAK;gBACL,cAAc;gBACd,gBAAgB;gBAChB,UAAU;aACb;SACJ,CAAC,CAAC;QAEH,IAAI,cAAc,CAAC;QACnB,IAAI,WAAW,CAAC;QAChB,IAAI,UAAU,EAAE,CAAC;YACb,MAAM,QAAQ,GAAG,aAAa,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YACvD,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACZ,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;oBACxB,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,oBAAoB;oBAC3B,OAAO,EAAE,aAAa,UAAU,iBAAiB;iBACpD,CAAC,CAAC;YACP,CAAC;YACD,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC,QAAQ,EAAE,8BAA8B,CAAC,IAAI,CAAC,EAAE;gBAC/E,SAAS;gBACT,WAAW;gBACX,WAAW;gBACX,mBAAmB,EAAE,WAAW;gBAChC,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC7B,mBAAmB,EAAE,IAAI,CAAC,KAAK;gBAC/B,mBAAmB,EAAE,iBAAiB,CAAC,EAAE;gBACzC,YAAY,EAAE,QAAQ,CAAC,IAAI;gBAC3B,QAAQ,EAAE;oBACN,SAAS;oBACT,aAAa,EAAE,IAAI;oBACnB,OAAO,EAAE,MAAM;iBAClB;gBACD,SAAS,EAAE;oBACP,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC7B,mBAAmB,EAAE,iBAAiB,CAAC,EAAE;oBACzC,MAAM,EAAE,YAAY;iBACvB;aACJ,CAAC,CAAC;YACH,cAAc,GAAG,wBAAwB,CAAC,eAAe,CAAC,iBAAiB,CAAC,EAAE,EAAE,WAAW,CAAC,IAAI,iBAAiB,CAAC;QACtH,CAAC;aAAM,CAAC;YACJ,cAAc,GAAG,MAAM,wBAAwB,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,EAAE;gBAC3E,SAAS;gBACT,SAAS;gBACT,WAAW;gBACX,KAAK;gBACL,cAAc;gBACd,gBAAgB;gBAChB,UAAU;aACb,CAAC,CAAC;QACP,CAAC;QAED,GAAG,CAAC,IAAI,CAAC;YACL,OAAO,EAAE,IAAI;YACb,WAAW;YACX,WAAW;YACX,cAAc,EAAE,IAAI;YACpB,SAAS,EAAE;gBACP,QAAQ,EAAE,SAAS;gBACnB,KAAK;gBACL,cAAc;gBACd,gBAAgB;gBAChB,UAAU;gBACV,UAAU;aACb;YACD,IAAI,EAAE,cAAc;YACpB,GAAG,EAAE,WAAW;YAChB,SAAS,EAAE,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC;SAC/C,CAAC,CAAC;IACP,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;QAClD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACjB,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,mCAAmC;YAC1C,OAAO,EAAE,KAAK,CAAC,OAAO;SACzB,CAAC,CAAC;IACP,CAAC;AACL,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,IAAI,CAAC,kCAAkC,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IAC/D,IAAI,CAAC;QACD,MAAM,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;QACnC,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,mBAAmB,CAAC,WAAW,CAAC,CAAC;QAEpE,MAAM,SAAS,GAAG,OAAO,GAAG,CAAC,IAAI,EAAE,SAAS,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE;YAClF,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE;YAC3B,CAAC,CAAC,WAAW,CAAC;QAElB,MAAM,WAAW,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YAC9C,MAAM,SAAS,GAAG,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YACpD,OAAO,wBAAwB,CAAC,oBAAoB,CAAC;gBACjD,SAAS;gBACT,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC7B,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,kBAAkB,EAAE,SAAS,CAAC,kBAAkB;gBAChD,YAAY,EAAE,SAAS,CAAC,YAAY;aACvC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,IAAI,CAAC;YACL,OAAO,EAAE,IAAI;YACb,WAAW;YACX,SAAS;YACT,MAAM,EAAE,WAAW,CAAC,MAAM;YAC1B,KAAK,EAAE,WAAW;YAClB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACtC,CAAC,CAAC;IACP,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,IAAI,KAAK,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC3B,OAAO,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;QAClG,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAC;QAC7D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACjB,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,kDAAkD;YACzD,OAAO,EAAE,KAAK,CAAC,OAAO;SACzB,CAAC,CAAC;IACP,CAAC;AACL,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,GAAG,CAAC,mBAAmB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IAC/C,IAAI,CAAC;QACD,MAAM,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;QAEnC,mBAAmB;QACnB,IAAI,WAAW,CAAC;QAChB,IAAI,CAAC;YACD,WAAW,GAAG,MAAM,uBAAuB,CAAC,WAAW,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACxB,KAAK,EAAE,mBAAmB;gBAC1B,OAAO,EAAE,YAAY,WAAW,kBAAkB;aACrD,CAAC,CAAC;QACP,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;QAE/D,iCAAiC;QACjC,IAAI,CAAC;YACD,MAAM,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACzD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,GAAG,CAAC,IAAI,CAAC;gBACZ,WAAW;gBACX,QAAQ,EAAE,EAAE;gBACZ,OAAO,EAAE,qCAAqC;aACjD,CAAC,CAAC;QACP,CAAC;QAED,0CAA0C;QAC1C,IAAI,CAAC;YACD,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACjD,MAAM,QAAQ,GAAG,EAAE,CAAC;YAEpB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;gBAC3C,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAE9C,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;oBACpE,QAAQ,CAAC,IAAI,CAAC;wBACV,IAAI,EAAE,IAAI;wBACV,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC;wBAC1C,IAAI,EAAE,KAAK,CAAC,IAAI;wBAChB,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE;wBACnC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE;qBACzC,CAAC,CAAC;gBACP,CAAC;YACL,CAAC;YAED,GAAG,CAAC,IAAI,CAAC;gBACL,WAAW;gBACX,WAAW;gBACX,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;gBAC9E,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACtC,CAAC,CAAC;QAEP,CAAC;QAAC,OAAO,SAAS,EAAE,CAAC;YACjB,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,SAAS,CAAC,CAAC;YAC1D,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACxB,KAAK,EAAE,0BAA0B;gBACjC,OAAO,EAAE,SAAS,CAAC,OAAO;aAC7B,CAAC,CAAC;QACP,CAAC;IAEL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;QACxC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACjB,KAAK,EAAE,0BAA0B;YACjC,OAAO,EAAE,KAAK,CAAC,OAAO;SACzB,CAAC,CAAC;IACP,CAAC;AACL,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IAChD,IAAI,CAAC;QACD,MAAM,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;QACnC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;QAEvC,IAAI,CAAC,QAAQ,IAAI,CAAC,OAAO,EAAE,CAAC;YACxB,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACxB,KAAK,EAAE,yBAAyB;gBAChC,OAAO,EAAE,mCAAmC;aAC/C,CAAC,CAAC;QACP,CAAC;QAED,oBAAoB;QACpB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,uBAAuB,CAAC,EAAE,CAAC;YAC3C,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACxB,KAAK,EAAE,kBAAkB;gBACzB,OAAO,EAAE,uGAAuG;aACnH,CAAC,CAAC;QACP,CAAC;QAED,mBAAmB;QACnB,IAAI,WAAW,CAAC;QAChB,IAAI,CAAC;YACD,WAAW,GAAG,MAAM,uBAAuB,CAAC,WAAW,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACxB,KAAK,EAAE,mBAAmB;gBAC1B,OAAO,EAAE,YAAY,WAAW,kBAAkB;aACrD,CAAC,CAAC;QACP,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;QAC/D,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAE/C,+BAA+B;QAC/B,IAAI,CAAC;YACD,MAAM,UAAU,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,KAAK,CAAC,CAAC;YACzD,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACxB,KAAK,EAAE,4BAA4B;gBACnC,OAAO,EAAE,KAAK,CAAC,OAAO;aACzB,CAAC,CAAC;QACP,CAAC;QAED,qBAAqB;QACrB,IAAI,CAAC;YACD,MAAM,UAAU,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YAEtD,iBAAiB;YACjB,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAE9C,GAAG,CAAC,IAAI,CAAC;gBACL,WAAW;gBACX,WAAW;gBACX,QAAQ;gBACR,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC;gBAC9C,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE;gBACtC,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE;gBACnC,OAAO,EAAE,6BAA6B;gBACtC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACtC,CAAC,CAAC;QAEP,CAAC;QAAC,OAAO,UAAU,EAAE,CAAC;YAClB,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,UAAU,CAAC,CAAC;YACvD,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACxB,KAAK,EAAE,0BAA0B;gBACjC,OAAO,EAAE,UAAU,CAAC,OAAO;aAC9B,CAAC,CAAC;QACP,CAAC;IAEL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;QACjD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACjB,KAAK,EAAE,kCAAkC;YACzC,OAAO,EAAE,KAAK,CAAC,OAAO;SACzB,CAAC,CAAC;IACP,CAAC;AACL,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,GAAG,CAAC,6BAA6B,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IACzD,IAAI,CAAC;QACD,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;QAE7C,mBAAmB;QACnB,IAAI,WAAW,CAAC;QAChB,IAAI,CAAC;YACD,WAAW,GAAG,MAAM,uBAAuB,CAAC,WAAW,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACxB,KAAK,EAAE,mBAAmB;gBAC1B,OAAO,EAAE,YAAY,WAAW,kBAAkB;aACrD,CAAC,CAAC;QACP,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;QAEzE,uBAAuB;QACvB,IAAI,CAAC;YACD,MAAM,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACzD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACxB,KAAK,EAAE,oBAAoB;gBAC3B,OAAO,EAAE,SAAS,QAAQ,kBAAkB;aAC/C,CAAC,CAAC;QACP,CAAC;QAED,oBAAoB;QACpB,IAAI,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC5D,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAE9C,GAAG,CAAC,IAAI,CAAC;gBACL,WAAW;gBACX,WAAW;gBACX,QAAQ;gBACR,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC;gBAC9C,OAAO;gBACP,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE;gBACtC,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE;gBACnC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACtC,CAAC,CAAC;QAEP,CAAC;QAAC,OAAO,SAAS,EAAE,CAAC;YACjB,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,SAAS,CAAC,CAAC;YACrD,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACxB,KAAK,EAAE,yBAAyB;gBAChC,OAAO,EAAE,SAAS,CAAC,OAAO;aAC7B,CAAC,CAAC;QACP,CAAC;IAEL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;QACxC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACjB,KAAK,EAAE,yBAAyB;YAChC,OAAO,EAAE,KAAK,CAAC,OAAO;SACzB,CAAC,CAAC;IACP,CAAC;AACL,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,IAAI,CAAC,oBAAoB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IACjD,IAAI,CAAC;QACD,MAAM,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;QAEnC,mBAAmB;QACnB,IAAI,WAAW,CAAC;QAChB,IAAI,CAAC;YACD,WAAW,GAAG,MAAM,uBAAuB,CAAC,WAAW,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACxB,KAAK,EAAE,mBAAmB;gBAC1B,OAAO,EAAE,YAAY,WAAW,kBAAkB;aACrD,CAAC,CAAC;QACP,CAAC;QAED,6CAA6C;QAC7C,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;QAC7D,IAAI,CAAC;YACD,MAAM,UAAU,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC3D,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACxB,KAAK,EAAE,gCAAgC;gBACvC,OAAO,EAAE,mDAAmD;aAC/D,CAAC,CAAC;QACP,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,0CAA0C;QAC9C,CAAC;QAED,8BAA8B;QAC9B,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,aAAa,EAAE,MAAM,CAAC,EAAE;YACtD,GAAG,EAAE,WAAW;YAChB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;YAC/B,GAAG,EAAE,MAAM,qBAAqB,EAAE;SACrC,CAAC,CAAC;QAEH,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,MAAM,GAAG,EAAE,CAAC;QAEhB,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YACnC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9B,CAAC,CAAC,CAAC;QAEH,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YACnC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9B,CAAC,CAAC,CAAC;QAEH,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YAC7B,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBACb,oDAAoD;gBACpD,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;oBACrB,gCAAgC,CAC5B,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAClB,WAAW,EACX,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,CACjD,CAAC;gBACN,CAAC;gBAED,GAAG,CAAC,IAAI,CAAC;oBACL,WAAW;oBACX,WAAW;oBACX,OAAO,EAAE,qCAAqC;oBAC9C,MAAM,EAAE,MAAM;oBACd,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;iBACtC,CAAC,CAAC;YACP,CAAC;iBAAM,CAAC;gBACJ,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,MAAM,CAAC,CAAC;gBACjD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;oBACjB,KAAK,EAAE,iCAAiC;oBACxC,OAAO,EAAE,MAAM,IAAI,MAAM;oBACzB,IAAI;iBACP,CAAC,CAAC;YACP,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,4CAA4C;QAC5C,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACjC,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;IAE5B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;QAC/C,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACjB,KAAK,EAAE,iCAAiC;YACxC,OAAO,EAAE,KAAK,CAAC,OAAO;SACzB,CAAC,CAAC;IACP,CAAC;AACL,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,IAAI,CAAC,wBAAwB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IACrD,IAAI,CAAC;QACD,MAAM,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;QACnC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,GAAG,QAAQ,EAAE,YAAY,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;QAEnF,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YACtC,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACxB,KAAK,EAAE,6BAA6B;gBACpC,OAAO,EAAE,gEAAgE;aAC5E,CAAC,CAAC;QACP,CAAC;QAED,mBAAmB;QACnB,IAAI,WAAW,CAAC;QAChB,IAAI,CAAC;YACD,WAAW,GAAG,MAAM,uBAAuB,CAAC,WAAW,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACxB,KAAK,EAAE,mBAAmB;gBAC1B,OAAO,EAAE,YAAY,WAAW,kBAAkB;aACrD,CAAC,CAAC;QACP,CAAC;QAED,yCAAyC;QACzC,MAAM,IAAI,GAAG,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;QAE5C,IAAI,MAAM,EAAE,CAAC;YACT,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAC9B,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,sCAAsC;QACnE,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,yBAAyB,KAAK,uBAAuB,WAAW,EAAE,CAAC,CAAC;QAC9F,CAAC;QAED,IAAI,QAAQ,EAAE,CAAC;YACX,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;QACtC,CAAC;QAED,IAAI,YAAY,EAAE,CAAC;YACf,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC;QAC9C,CAAC;QAED,mCAAmC;QACnC,MAAM,cAAc,GAAG,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE;YACtC,GAAG,EAAE,WAAW;YAChB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;YAC/B,GAAG,EAAE,MAAM,qBAAqB,EAAE;SACrC,CAAC,CAAC;QAEH,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,MAAM,GAAG,EAAE,CAAC;QAEhB,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YACtC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9B,CAAC,CAAC,CAAC;QAEH,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YACtC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9B,CAAC,CAAC,CAAC;QAEH,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YAChC,OAAO,CAAC,GAAG,CAAC,uCAAuC,EAAE,IAAI,CAAC,CAAC;YAC3D,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YAE/B,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBACb,sCAAsC;gBACtC,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;oBACrB,8BAA8B,CAC1B,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAClB,WAAW,CACd,CAAC;gBACN,CAAC;gBAED,GAAG,CAAC,IAAI,CAAC;oBACL,WAAW;oBACX,WAAW;oBACX,OAAO,EAAE,yBAAyB;oBAClC,MAAM,EAAE,MAAM;oBACd,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;iBACtC,CAAC,CAAC;YACP,CAAC;iBAAM,CAAC;gBACJ,OAAO,CAAC,KAAK,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;gBAC1C,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;oBACjB,KAAK,EAAE,oBAAoB;oBAC3B,OAAO,EAAE,MAAM,IAAI,MAAM;oBACzB,IAAI;iBACP,CAAC,CAAC;YACP,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,cAAc,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;IAE/B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;QACxC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACjB,KAAK,EAAE,oBAAoB;YAC3B,OAAO,EAAE,KAAK,CAAC,OAAO;SACzB,CAAC,CAAC;IACP,CAAC;AACL,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,GAAG,CAAC,mCAAmC,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IAC/D,IAAI,CAAC;QACD,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;QAC3C,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;QAEnE,mBAAmB;QACnB,IAAI,WAAW,CAAC;QAChB,IAAI,CAAC;YACD,WAAW,GAAG,MAAM,uBAAuB,CAAC,WAAW,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACxB,KAAK,EAAE,mBAAmB;gBAC1B,OAAO,EAAE,YAAY,WAAW,kBAAkB;aACrD,CAAC,CAAC;QACP,CAAC;QAED,kDAAkD;QAClD,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/C,MAAM,gBAAgB,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,gBAAgB,EAAE,YAAY,EAAE,QAAQ,MAAM,EAAE,EAAE,YAAY,MAAM,EAAE,CAAC,EAAE;gBAC5G,GAAG,EAAE,WAAW;gBAChB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;gBAC/B,GAAG,EAAE,MAAM,qBAAqB,EAAE;aACrC,CAAC,CAAC;YAEH,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,IAAI,MAAM,GAAG,EAAE,CAAC;YAEhB,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;gBACxC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC9B,CAAC,CAAC,CAAC;YAEH,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;gBACxC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC9B,CAAC,CAAC,CAAC;YAEH,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;gBAClC,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;oBACb,sCAAsC;oBACtC,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;wBACrB,8BAA8B,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;oBACpE,CAAC;oBAED,GAAG,CAAC,IAAI,CAAC;wBACL,WAAW;wBACX,WAAW;wBACX,MAAM;wBACN,OAAO,EAAE,kCAAkC;wBAC3C,MAAM,EAAE,MAAM;wBACd,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;qBACtC,CAAC,CAAC;gBACP,CAAC;qBAAM,CAAC;oBACJ,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,MAAM,CAAC,CAAC;oBACjD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;wBACjB,KAAK,EAAE,8BAA8B;wBACrC,OAAO,EAAE,MAAM,IAAI,MAAM;wBACzB,IAAI;qBACP,CAAC,CAAC;gBACP,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,gBAAgB,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QACjC,CAAC;aAAM,CAAC;YACJ,kFAAkF;YAClF,MAAM,OAAO,GAAG,EAAE,CAAC;YACnB,IAAI,KAAK;gBAAE,OAAO,CAAC,IAAI,CAAC,WAAW,KAAK,GAAG,CAAC,CAAC;YAC7C,IAAI,WAAW;gBAAE,OAAO,CAAC,IAAI,CAAC,iBAAiB,WAAW,GAAG,CAAC,CAAC;YAC/D,IAAI,QAAQ;gBAAE,OAAO,CAAC,IAAI,CAAC,cAAc,QAAQ,GAAG,CAAC,CAAC;YACtD,IAAI,OAAO;gBAAE,OAAO,CAAC,IAAI,CAAC,aAAa,OAAO,GAAG,CAAC,CAAC;YAEnD,MAAM,MAAM,GAAG,2CAA2C,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAE/E,MAAM,aAAa,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,gBAAgB,EAAE,aAAa,EAAE,QAAQ,MAAM,EAAE,EAAE,YAAY,MAAM,EAAE,CAAC,EAAE;gBAC1G,GAAG,EAAE,WAAW;gBAChB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;gBAC/B,GAAG,EAAE,MAAM,qBAAqB,EAAE;aACrC,CAAC,CAAC;YAEH,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,IAAI,MAAM,GAAG,EAAE,CAAC;YAEhB,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;gBACrC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC9B,CAAC,CAAC,CAAC;YAEH,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;gBACrC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC9B,CAAC,CAAC,CAAC;YAEH,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;gBAC/B,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;oBACb,sCAAsC;oBACtC,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;wBACrB,8BAA8B,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;oBACpE,CAAC;oBAED,GAAG,CAAC,IAAI,CAAC;wBACL,WAAW;wBACX,WAAW;wBACX,MAAM;wBACN,OAAO,EAAE,2BAA2B;wBACpC,MAAM,EAAE,MAAM;wBACd,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;qBACtC,CAAC,CAAC;gBACP,CAAC;qBAAM,CAAC;oBACJ,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;oBAC7C,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;wBACjB,KAAK,EAAE,uBAAuB;wBAC9B,OAAO,EAAE,MAAM,IAAI,MAAM;wBACzB,IAAI;qBACP,CAAC,CAAC;gBACP,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,aAAa,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QAC9B,CAAC;IAEL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC;QAC3C,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACjB,KAAK,EAAE,uBAAuB;YAC9B,OAAO,EAAE,KAAK,CAAC,OAAO;SACzB,CAAC,CAAC;IACP,CAAC;AACL,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,IAAI,CAAC,yBAAyB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IACtD,IAAI,CAAC;QACD,MAAM,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;QACnC,MAAM,EAAE,QAAQ,GAAG,SAAS,EAAE,QAAQ,EAAE,MAAM,GAAG,KAAK,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;QAEpE,mBAAmB;QACnB,IAAI,WAAW,CAAC;QAChB,IAAI,CAAC;YACD,WAAW,GAAG,MAAM,uBAAuB,CAAC,WAAW,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACxB,KAAK,EAAE,mBAAmB;gBAC1B,OAAO,EAAE,YAAY,WAAW,kBAAkB;aACrD,CAAC,CAAC;QACP,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;QAExE,2BAA2B;QAC3B,IAAI,CAAC;YACD,MAAM,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACxD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACxB,KAAK,EAAE,oBAAoB;gBAC3B,OAAO,EAAE,SAAS,QAAQ,uCAAuC;aACpE,CAAC,CAAC;QACP,CAAC;QAED,yBAAyB;QACzB,MAAM,IAAI,GAAG,CAAC,gBAAgB,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QAEtD,IAAI,QAAQ,EAAE,CAAC;YACX,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,MAAM,EAAE,CAAC;YACT,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC1B,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,sCAAsC;QAE/D,oCAAoC;QACpC,MAAM,eAAe,GAAG,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE;YACvC,GAAG,EAAE,WAAW;YAChB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;YAC/B,GAAG,EAAE,MAAM,qBAAqB,EAAE;SACrC,CAAC,CAAC;QAEH,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,MAAM,GAAG,EAAE,CAAC;QAEhB,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YACvC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9B,CAAC,CAAC,CAAC;QAEH,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YACvC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9B,CAAC,CAAC,CAAC;QAEH,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YACjC,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBACb,sCAAsC;gBACtC,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;oBACrB,8BAA8B,CAC1B,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAClB,WAAW,CACd,CAAC;gBACN,CAAC;gBAED,GAAG,CAAC,IAAI,CAAC;oBACL,WAAW;oBACX,WAAW;oBACX,OAAO,EAAE,QAAQ;oBACjB,OAAO,EAAE,6CAA6C;oBACtD,MAAM,EAAE,MAAM;oBACd,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;iBACtC,CAAC,CAAC;YACP,CAAC;iBAAM,CAAC;gBACJ,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;gBAC3C,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;oBACjB,KAAK,EAAE,qBAAqB;oBAC5B,OAAO,EAAE,MAAM,IAAI,MAAM;oBACzB,IAAI;iBACP,CAAC,CAAC;YACP,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,eAAe,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;IAEhC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;QACzC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACjB,KAAK,EAAE,qBAAqB;YAC5B,OAAO,EAAE,KAAK,CAAC,OAAO;SACzB,CAAC,CAAC;IACP,CAAC;AACL,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IAC5C,IAAI,CAAC;QACD,4BAA4B;QAC5B,MAAM,SAAS,GAAG;YACd;gBACI,EAAE,EAAE,SAAS;gBACb,IAAI,EAAE,iBAAiB;gBACvB,WAAW,EAAE,4EAA4E;gBACzF,QAAQ,EAAE,KAAK;gBACf,OAAO,EAAE;;;;;YAKb,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBA+D3B;aACV;YACD;gBACI,EAAE,EAAE,KAAK;gBACT,IAAI,EAAE,UAAU;gBAChB,WAAW,EAAE,4CAA4C;gBACzD,QAAQ,EAAE,SAAS;gBACnB,OAAO,EAAE;;;;;YAKb,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6BA2FrB;aAChB;YACD;gBACI,EAAE,EAAE,YAAY;gBAChB,IAAI,EAAE,oBAAoB;gBAC1B,WAAW,EAAE,4DAA4D;gBACzE,QAAQ,EAAE,QAAQ;gBAClB,OAAO,EAAE;;;;;;YAMb,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAuG/B;aACN;YACD;gBACI,EAAE,EAAE,eAAe;gBACnB,IAAI,EAAE,uBAAuB;gBAC7B,WAAW,EAAE,uDAAuD;gBACpE,QAAQ,EAAE,MAAM;gBAChB,OAAO,EAAE;;;;;YAKb,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6BAoHrB;aAChB;SACJ,CAAC;QAEF,GAAG,CAAC,IAAI,CAAC;YACL,SAAS;YACT,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACtC,CAAC,CAAC;IAEP,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,sBAAsB,EAAE,KAAK,CAAC,CAAC;QAC7C,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACjB,KAAK,EAAE,6BAA6B;YACpC,OAAO,EAAE,KAAK,CAAC,OAAO;SACzB,CAAC,CAAC;IACP,CAAC;AACL,CAAC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IAC3D,IAAI,CAAC;QACD,MAAM,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;QACnC,MAAM,EAAE,UAAU,EAAE,QAAQ,GAAG,SAAS,EAAE,cAAc,GAAG,EAAE,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;QAE3E,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACxB,KAAK,EAAE,4BAA4B;gBACnC,OAAO,EAAE,wBAAwB;aACpC,CAAC,CAAC;QACP,CAAC;QAED,mBAAmB;QACnB,IAAI,WAAW,CAAC;QAChB,IAAI,CAAC;YACD,WAAW,GAAG,MAAM,uBAAuB,CAAC,WAAW,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACxB,KAAK,EAAE,mBAAmB;gBAC1B,OAAO,EAAE,YAAY,WAAW,kBAAkB;aACrD,CAAC,CAAC;QACP,CAAC;QAED,+EAA+E;QAC/E,MAAM,SAAS,GAAG,MAAM,qBAAqB,EAAE,CAAC;QAChD,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,UAAU,CAAC,CAAC;QAE1D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACxB,KAAK,EAAE,oBAAoB;gBAC3B,OAAO,EAAE,aAAa,UAAU,kBAAkB;aACrD,CAAC,CAAC;QACP,CAAC;QAED,2CAA2C;QAC3C,IAAI,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;QAE/B,2CAA2C;QAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;YACxD,MAAM,WAAW,GAAG,IAAI,GAAG,GAAG,CAAC;YAC/B,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,wBAAwB,EAAE,QAAQ,CAAC,EAAE,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;QAC/G,CAAC;QAED,2CAA2C;QAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;QAC9D,IAAI,CAAC;YACD,MAAM,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACzD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,KAAK,CAAC,CAAC;QAC7D,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAE9C,yCAAyC;QACzC,IAAI,CAAC;YACD,MAAM,UAAU,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YAEtD,GAAG,CAAC,IAAI,CAAC;gBACL,WAAW;gBACX,WAAW;gBACX,UAAU;gBACV,YAAY,EAAE,QAAQ,CAAC,IAAI;gBAC3B,QAAQ;gBACR,QAAQ,EAAE,QAAQ;gBAClB,OAAO,EAAE,mCAAmC;gBAC5C,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACtC,CAAC,CAAC;QAEP,CAAC;QAAC,OAAO,UAAU,EAAE,CAAC;YAClB,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,UAAU,CAAC,CAAC;YAC3D,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACxB,KAAK,EAAE,8BAA8B;gBACrC,OAAO,EAAE,UAAU,CAAC,OAAO;aAC9B,CAAC,CAAC;QACP,CAAC;IAEL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,KAAK,CAAC,CAAC;QAC9C,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACjB,KAAK,EAAE,8BAA8B;YACrC,OAAO,EAAE,KAAK,CAAC,OAAO;SACzB,CAAC,CAAC;IACP,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,6CAA6C;AAC7C,KAAK,UAAU,qBAAqB;IAChC,wDAAwD;IACxD,OAAO;QACH;YACI,EAAE,EAAE,SAAS;YACb,IAAI,EAAE,iBAAiB;YACvB,WAAW,EAAE,uCAAuC;YACpD,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE;;;;;YAKT,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;sBAoB5B;SACb;QACD,qCAAqC;KACxC,CAAC;AACN,CAAC;AAED,eAAe,MAAM,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pixelbyte-software/pixcode",
3
- "version": "1.42.2",
3
+ "version": "1.42.4",
4
4
  "description": "Self-hosted AI coding agent control room for Claude Code, Cursor CLI, OpenAI Codex, Gemini CLI, Qwen Code, and OpenCode with chat, files, shell, Git, orchestration, API keys, Telegram, MCP, plugins, themes, and desktop/server deployment.",
5
5
  "type": "module",
6
6
  "main": "dist-server/server/index.js",
@@ -0,0 +1,50 @@
1
+ #!/usr/bin/env node
2
+
3
+ import assert from 'node:assert/strict';
4
+ import fs from 'node:fs';
5
+ import path from 'node:path';
6
+
7
+ const root = process.cwd();
8
+
9
+ function read(relativePath) {
10
+ return fs.readFileSync(path.join(root, relativePath), 'utf8');
11
+ }
12
+
13
+ const policy = read('server/modules/orchestration/security/permission-policy.ts');
14
+ assert.match(policy, /PIXCODE_PERMISSION_POLICY_PROTOCOL/, 'Permission policy should declare a stable protocol id.');
15
+ assert.match(policy, /pixcode\.permission-policy\.v1/, 'Permission policy should use the v1 protocol id.');
16
+ assert.match(policy, /shell/, 'Permission policy should classify shell access.');
17
+ assert.match(policy, /file_write/, 'Permission policy should classify file-write access.');
18
+ assert.match(policy, /external_directory/, 'Permission policy should classify external directory access.');
19
+ assert.match(policy, /network/, 'Permission policy should classify network access.');
20
+ assert.match(policy, /secret/, 'Permission policy should classify secret access.');
21
+ assert.match(policy, /evaluatePermissionRequest/, 'Permission policy should expose a shared evaluator.');
22
+ assert.match(policy, /createPermissionApprovalRequest/, 'Permission policy should create pending approval artifacts.');
23
+ assert.match(policy, /redactPermissionText/, 'Permission policy should redact local paths and secrets.');
24
+
25
+ const runner = read('server/modules/orchestration/workflows/workflow-runner.ts');
26
+ assert.match(runner, /evaluatePermissionRequest/, 'Workflow runner should route node preflight through the shared policy evaluator.');
27
+ assert.match(runner, /permissionPolicyEvents/, 'Workflow runner should store permission policy audit events.');
28
+ assert.match(runner, /pendingPermissionApprovals/, 'Workflow runner should preserve pending approval context on the run.');
29
+
30
+ const trace = read('server/modules/orchestration/workflows/workflow-trace.ts');
31
+ assert.match(trace, /workflow\.trace\.permissionPolicy/, 'Trace timeline should surface permission policy decisions.');
32
+ assert.match(trace, /permission_policy/, 'Trace events should include permission policy entries.');
33
+
34
+ const routes = read('server/modules/orchestration/workflows/workflow.routes.ts');
35
+ assert.match(routes, /permission-policy/, 'Workflow routes should expose the policy contract.');
36
+ assert.match(routes, /permission-approvals/, 'Workflow routes should expose pending approval context.');
37
+
38
+ const claude = read('server/claude-sdk.js');
39
+ assert.match(claude, /evaluatePermissionRequest/, 'Claude tool approvals should use the shared policy evaluator.');
40
+ assert.match(claude, /permissionPolicy/, 'Claude runtime should accept policy metadata.');
41
+
42
+ const a2aContext = read('server/modules/orchestration/a2a/adapters/abstract-a2a.adapter.ts');
43
+ assert.match(a2aContext, /permissionPolicy/, 'A2A adapter context should carry the shared permission policy.');
44
+
45
+ const en = read('src/i18n/locales/en/common.json');
46
+ const tr = read('src/i18n/locales/tr/common.json');
47
+ assert.match(en, /"permission_policy"/, 'English trace type for permission policy is missing.');
48
+ assert.match(tr, /"permission_policy"/, 'Turkish trace type for permission policy is missing.');
49
+
50
+ console.log('permission-policy smoke passed');
@@ -0,0 +1,55 @@
1
+ #!/usr/bin/env node
2
+
3
+ import assert from 'node:assert/strict';
4
+ import fs from 'node:fs';
5
+ import path from 'node:path';
6
+
7
+ const root = process.cwd();
8
+
9
+ function read(relativePath) {
10
+ return fs.readFileSync(path.join(root, relativePath), 'utf8');
11
+ }
12
+
13
+ const graph = read('server/modules/orchestration/tasks/task-run-graph.ts');
14
+ assert.match(graph, /PIXCODE_TASK_RUN_GRAPH_PROTOCOL/, 'Task/run graph should declare a stable protocol id.');
15
+ assert.match(graph, /pixcode\.task-run-graph\.v1/, 'Task/run graph should use the v1 protocol id.');
16
+ assert.match(graph, /buildTaskRunGraph/, 'Task/run graph builder is missing.');
17
+ assert.match(graph, /acceptanceCriteria/, 'Task/run graph should expose acceptance criteria.');
18
+ assert.match(graph, /changedFiles/, 'Task/run graph should expose changed files.');
19
+ assert.match(graph, /workflowRuns/, 'Task/run graph should expose workflow runs.');
20
+ assert.match(graph, /taskmasterId/, 'Task/run graph should link TaskMaster ids.');
21
+
22
+ const taskTypes = read('server/modules/orchestration/tasks/orchestration-task.types.ts');
23
+ assert.match(taskTypes, /workflowRunIds\?: string\[\]/, 'Orchestration tasks should persist workflow run ids.');
24
+ assert.match(taskTypes, /acceptanceCriteria/, 'Orchestration tasks should persist acceptance criteria snapshots.');
25
+ assert.match(taskTypes, /changedFiles\?: string\[\]/, 'Orchestration tasks should persist changed file snapshots.');
26
+
27
+ const taskService = read('server/modules/orchestration/tasks/orchestration-task.service.ts');
28
+ assert.match(taskService, /linkWorkflowRun/, 'Orchestration task service should link workflow runs to tasks.');
29
+ assert.match(taskService, /updateFromWorkflowRun/, 'Orchestration task service should write workflow results back to tasks.');
30
+
31
+ const workflowRunner = read('server/modules/orchestration/workflows/workflow-runner.ts');
32
+ assert.match(workflowRunner, /linkWorkflowRun/, 'Workflow runner should link runs to orchestration tasks.');
33
+ assert.match(workflowRunner, /updateFromWorkflowRun/, 'Workflow runner should write terminal run results to the task graph.');
34
+
35
+ const taskmasterRoute = read('server/routes/taskmaster.js');
36
+ assert.match(taskmasterRoute, /buildTaskRunGraph/, 'TaskMaster routes should attach task graph data.');
37
+ assert.match(taskmasterRoute, /taskGraph/, 'TaskMaster task responses should include taskGraph.');
38
+ assert.match(taskmasterRoute, /workflowRunner\.start/, 'TaskMaster execute route should support starting workflow runs.');
39
+
40
+ const workflowPanel = read('src/components/orchestration/workflows/WorkflowRunPanel.tsx');
41
+ assert.match(workflowPanel, /linkedTask/, 'Workflow run panel should render linked task metadata.');
42
+ assert.match(workflowPanel, /taskmasterId/, 'Workflow run panel should read taskmasterId metadata.');
43
+
44
+ const taskDetail = read('src/components/task-master/view/TaskDetailModal.tsx');
45
+ assert.match(taskDetail, /taskGraph/, 'Task detail modal should render task graph data.');
46
+ assert.match(taskDetail, /Associated runs/, 'Task detail modal should show associated runs.');
47
+ assert.match(taskDetail, /Changed files/, 'Task detail modal should show changed files.');
48
+ assert.match(taskDetail, /Acceptance criteria/, 'Task detail modal should show acceptance criteria.');
49
+
50
+ const en = read('src/i18n/locales/en/common.json');
51
+ const tr = read('src/i18n/locales/tr/common.json');
52
+ assert.match(en, /"linkedTask"/, 'English linked task translation is missing.');
53
+ assert.match(tr, /"linkedTask"/, 'Turkish linked task translation is missing.');
54
+
55
+ console.log('taskmaster run graph smoke passed');
@@ -29,6 +29,7 @@ import { sessionsService } from './modules/providers/services/sessions.service.j
29
29
  import { providerAuthService } from './modules/providers/services/provider-auth.service.js';
30
30
  import { resolveClaudeExecutable, resolveGitBashPath } from './services/install-jobs.js';
31
31
  import { createNormalizedMessage } from './shared/utils.js';
32
+ import { evaluatePermissionRequest } from './modules/orchestration/security/permission-policy.js';
32
33
 
33
34
  const activeSessions = new Map();
34
35
  const pendingToolApprovals = new Map();
@@ -184,7 +185,7 @@ function loadClaudeSettingsEnv(cwd) {
184
185
  * @returns {Object} SDK-compatible options
185
186
  */
186
187
  function mapCliOptionsToSDK(options = {}) {
187
- const { sessionId, cwd, toolsSettings, permissionMode } = options;
188
+ const { sessionId, cwd, toolsSettings, permissionMode, permissionPolicy, permissionPolicyContext } = options;
188
189
 
189
190
  const sdkOptions = {};
190
191
 
@@ -231,6 +232,8 @@ function mapCliOptionsToSDK(options = {}) {
231
232
  if (permissionMode && permissionMode !== 'default') {
232
233
  sdkOptions.permissionMode = permissionMode;
233
234
  }
235
+ sdkOptions.permissionPolicy = permissionPolicy;
236
+ sdkOptions.permissionPolicyContext = permissionPolicyContext;
234
237
 
235
238
  // Map tool settings
236
239
  const settings = toolsSettings || {
@@ -595,8 +598,27 @@ async function queryClaudeSDK(command, options = {}, ws) {
595
598
 
596
599
  sdkOptions.canUseTool = async (toolName, input, context) => {
597
600
  const requiresInteraction = TOOLS_REQUIRING_INTERACTION.has(toolName);
601
+ const policyDecision = evaluatePermissionRequest({
602
+ policy: sdkOptions.permissionPolicy,
603
+ request: {
604
+ source: 'provider_tool',
605
+ toolName,
606
+ input,
607
+ command: input && typeof input === 'object' && typeof input.command === 'string'
608
+ ? input.command
609
+ : undefined,
610
+ cwd: options.cwd,
611
+ workspacePath: options.cwd,
612
+ summary: `${toolName} tool request`,
613
+ },
614
+ context: sdkOptions.permissionPolicyContext,
615
+ });
616
+
617
+ if (policyDecision.behavior === 'deny') {
618
+ return { behavior: 'deny', message: policyDecision.message };
619
+ }
598
620
 
599
- if (!requiresInteraction) {
621
+ if (!requiresInteraction && policyDecision.behavior !== 'prompt') {
600
622
  if (sdkOptions.permissionMode === 'bypassPermissions') {
601
623
  return { behavior: 'allow', updatedInput: input };
602
624
  }
@@ -13,6 +13,10 @@ import type {
13
13
  TaskState,
14
14
  } from '@/modules/orchestration/a2a/types.js';
15
15
  import type { WorkspaceHandle } from '@/modules/orchestration/workspace/types.js';
16
+ import type {
17
+ PermissionPolicy,
18
+ PermissionPolicyContext,
19
+ } from '@/modules/orchestration/security/permission-policy.js';
16
20
 
17
21
  export interface AdapterContext {
18
22
  /** Isolated execution workspace for the task. */
@@ -21,6 +25,10 @@ export interface AdapterContext {
21
25
  cwd: string;
22
26
  /** pixcode permission mode passed through to the underlying CLI. */
23
27
  permissionMode?: string;
28
+ /** Provider-independent permission/sandbox policy evaluated before runtime tool use. */
29
+ permissionPolicy?: PermissionPolicy;
30
+ /** Run context preserved when the policy needs a human approval. */
31
+ permissionPolicyContext?: PermissionPolicyContext;
24
32
  /** Provider model selected by the user in Pixcode. */
25
33
  model?: string;
26
34
  /** Provider-specific tool / permission settings from Pixcode Settings. */
@@ -99,6 +99,8 @@ export class ClaudeCodeA2AAdapter extends AbstractA2AAdapter {
99
99
  {
100
100
  cwd: ctx.cwd,
101
101
  permissionMode: ctx.permissionMode ?? 'default',
102
+ permissionPolicy: ctx.permissionPolicy,
103
+ permissionPolicyContext: ctx.permissionPolicyContext,
102
104
  toolsSettings: ctx.toolsSettings,
103
105
  },
104
106
  fakeWS,
@@ -31,6 +31,10 @@ import type {
31
31
  WorkspaceMetadata,
32
32
  } from '@/modules/orchestration/workspace/types.js';
33
33
  import { WorkspaceError } from '@/modules/orchestration/workspace/types.js';
34
+ import type {
35
+ PermissionPolicy,
36
+ PermissionPolicyContext,
37
+ } from '@/modules/orchestration/security/permission-policy.js';
34
38
 
35
39
  type RoutingHints = {
36
40
  preferredAdapterId?: string;
@@ -475,6 +479,8 @@ export function createA2ARouter(): Router {
475
479
  workspace,
476
480
  model: readString(metadata?.model),
477
481
  permissionMode: readString(metadata?.permissionMode),
482
+ permissionPolicy: readObject(metadata?.permissionPolicy) as PermissionPolicy | undefined,
483
+ permissionPolicyContext: readObject(metadata?.permissionPolicyContext) as PermissionPolicyContext | undefined,
478
484
  toolsSettings: readObject(metadata?.toolsSettings),
479
485
  });
480
486
  } catch (err) {