@provartesting/provardx-cli 1.5.0-beta.1 → 1.5.0-beta.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 (78) hide show
  1. package/README.md +137 -13
  2. package/lib/commands/provar/auth/clear.d.ts +7 -0
  3. package/lib/commands/provar/auth/clear.js +36 -0
  4. package/lib/commands/provar/auth/clear.js.map +1 -0
  5. package/lib/commands/provar/auth/login.d.ts +10 -0
  6. package/lib/commands/provar/auth/login.js +90 -0
  7. package/lib/commands/provar/auth/login.js.map +1 -0
  8. package/lib/commands/provar/auth/rotate.d.ts +7 -0
  9. package/lib/commands/provar/auth/rotate.js +42 -0
  10. package/lib/commands/provar/auth/rotate.js.map +1 -0
  11. package/lib/commands/provar/auth/status.d.ts +7 -0
  12. package/lib/commands/provar/auth/status.js +107 -0
  13. package/lib/commands/provar/auth/status.js.map +1 -0
  14. package/lib/mcp/docs/PROVAR_TEST_STEP_REFERENCE.md +1430 -0
  15. package/lib/mcp/licensing/licenseValidator.d.ts +3 -3
  16. package/lib/mcp/licensing/licenseValidator.js +4 -4
  17. package/lib/mcp/prompts/index.d.ts +2 -0
  18. package/lib/mcp/prompts/index.js +19 -0
  19. package/lib/mcp/prompts/index.js.map +1 -0
  20. package/lib/mcp/prompts/loopPrompts.d.ts +6 -0
  21. package/lib/mcp/prompts/loopPrompts.js +435 -0
  22. package/lib/mcp/prompts/loopPrompts.js.map +1 -0
  23. package/lib/mcp/prompts/migrationPrompts.d.ts +4 -0
  24. package/lib/mcp/prompts/migrationPrompts.js +207 -0
  25. package/lib/mcp/prompts/migrationPrompts.js.map +1 -0
  26. package/lib/mcp/rules/provar_best_practices_rules.json +256 -544
  27. package/lib/mcp/server.js +45 -1
  28. package/lib/mcp/server.js.map +1 -1
  29. package/lib/mcp/tools/antTools.d.ts +15 -0
  30. package/lib/mcp/tools/antTools.js +204 -50
  31. package/lib/mcp/tools/antTools.js.map +1 -1
  32. package/lib/mcp/tools/automationTools.d.ts +36 -3
  33. package/lib/mcp/tools/automationTools.js +335 -42
  34. package/lib/mcp/tools/automationTools.js.map +1 -1
  35. package/lib/mcp/tools/bestPracticesEngine.js +161 -23
  36. package/lib/mcp/tools/bestPracticesEngine.js.map +1 -1
  37. package/lib/mcp/tools/connectionTools.d.ts +4 -0
  38. package/lib/mcp/tools/connectionTools.js +168 -0
  39. package/lib/mcp/tools/connectionTools.js.map +1 -0
  40. package/lib/mcp/tools/nitroXTools.d.ts +22 -0
  41. package/lib/mcp/tools/nitroXTools.js +750 -0
  42. package/lib/mcp/tools/nitroXTools.js.map +1 -0
  43. package/lib/mcp/tools/pageObjectGenerate.js +103 -35
  44. package/lib/mcp/tools/pageObjectGenerate.js.map +1 -1
  45. package/lib/mcp/tools/propertiesTools.d.ts +2 -0
  46. package/lib/mcp/tools/propertiesTools.js +277 -39
  47. package/lib/mcp/tools/propertiesTools.js.map +1 -1
  48. package/lib/mcp/tools/qualityHubApiTools.d.ts +3 -0
  49. package/lib/mcp/tools/qualityHubApiTools.js +134 -0
  50. package/lib/mcp/tools/qualityHubApiTools.js.map +1 -0
  51. package/lib/mcp/tools/qualityHubTools.js +127 -19
  52. package/lib/mcp/tools/qualityHubTools.js.map +1 -1
  53. package/lib/mcp/tools/rcaTools.d.ts +3 -2
  54. package/lib/mcp/tools/rcaTools.js +145 -20
  55. package/lib/mcp/tools/rcaTools.js.map +1 -1
  56. package/lib/mcp/tools/testCaseGenerate.js +88 -59
  57. package/lib/mcp/tools/testCaseGenerate.js.map +1 -1
  58. package/lib/mcp/tools/testCaseStepTools.d.ts +4 -0
  59. package/lib/mcp/tools/testCaseStepTools.js +221 -0
  60. package/lib/mcp/tools/testCaseStepTools.js.map +1 -0
  61. package/lib/mcp/tools/testCaseValidate.d.ts +11 -0
  62. package/lib/mcp/tools/testCaseValidate.js +146 -19
  63. package/lib/mcp/tools/testCaseValidate.js.map +1 -1
  64. package/lib/services/auth/credentials.d.ts +21 -0
  65. package/lib/services/auth/credentials.js +75 -0
  66. package/lib/services/auth/credentials.js.map +1 -0
  67. package/lib/services/auth/loginFlow.d.ts +68 -0
  68. package/lib/services/auth/loginFlow.js +216 -0
  69. package/lib/services/auth/loginFlow.js.map +1 -0
  70. package/lib/services/qualityHub/client.d.ts +161 -0
  71. package/lib/services/qualityHub/client.js +226 -0
  72. package/lib/services/qualityHub/client.js.map +1 -0
  73. package/messages/sf.provar.auth.clear.md +16 -0
  74. package/messages/sf.provar.auth.login.md +31 -0
  75. package/messages/sf.provar.auth.rotate.md +23 -0
  76. package/messages/sf.provar.auth.status.md +16 -0
  77. package/oclif.manifest.json +214 -1
  78. package/package.json +8 -4
package/lib/mcp/server.js CHANGED
@@ -5,6 +5,9 @@
5
5
  * For full license text, see LICENSE.md file in the repo root or https://opensource.org/licenses/BSD-3-Clause
6
6
  */
7
7
  import { createRequire } from 'node:module';
8
+ import { readFileSync } from 'node:fs';
9
+ import { fileURLToPath } from 'node:url';
10
+ import { dirname, join } from 'node:path';
8
11
  import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
9
12
  import { z } from 'zod';
10
13
  import { log } from './logging/logger.js';
@@ -20,11 +23,16 @@ import { registerTestPlanValidate } from './tools/testPlanValidate.js';
20
23
  import { registerProjectValidateFromPath } from './tools/projectValidateFromPath.js';
21
24
  import { registerAllPropertiesTools } from './tools/propertiesTools.js';
22
25
  import { registerAllQualityHubTools } from './tools/qualityHubTools.js';
26
+ import { registerAllQualityHubApiTools } from './tools/qualityHubApiTools.js';
23
27
  import { registerAllAutomationTools } from './tools/automationTools.js';
24
28
  import { registerAllDefectTools } from './tools/defectTools.js';
25
29
  import { registerAllAntTools } from './tools/antTools.js';
26
30
  import { registerAllRcaTools } from './tools/rcaTools.js';
27
31
  import { registerAllTestPlanTools } from './tools/testPlanTools.js';
32
+ import { registerAllNitroXTools } from './tools/nitroXTools.js';
33
+ import { registerAllTestCaseStepTools } from './tools/testCaseStepTools.js';
34
+ import { registerAllConnectionTools } from './tools/connectionTools.js';
35
+ import { registerAllPrompts } from './prompts/index.js';
28
36
  export function createProvarMcpServer(config) {
29
37
  log('info', 'Creating Provar MCP server', { allowedPaths: config.allowedPaths });
30
38
  const server = new McpServer({
@@ -52,11 +60,47 @@ export function createProvarMcpServer(config) {
52
60
  registerProjectValidateFromPath(server, config);
53
61
  registerAllPropertiesTools(server, config);
54
62
  registerAllQualityHubTools(server);
63
+ registerAllQualityHubApiTools(server);
55
64
  registerAllAutomationTools(server, config);
56
65
  registerAllDefectTools(server);
57
66
  registerAllAntTools(server, config);
58
- registerAllRcaTools(server);
67
+ registerAllRcaTools(server, config);
59
68
  registerAllTestPlanTools(server, config);
69
+ registerAllNitroXTools(server, config);
70
+ registerAllTestCaseStepTools(server, config);
71
+ registerAllConnectionTools(server, config);
72
+ // ── Provar prompts ───────────────────────────────────────────────────────────
73
+ registerAllPrompts(server);
74
+ // ── Documentation resources ──────────────────────────────────────────────────
75
+ const docsDir = join(dirname(fileURLToPath(import.meta.url)), 'docs');
76
+ server.resource('provar-step-reference', 'provar://docs/step-reference', {
77
+ description: 'Canonical reference for all Provar XML test step API IDs, argument formats, validation rules, and corpus-verified examples. Use this to understand correct step structure when generating or reviewing test cases.',
78
+ mimeType: 'text/markdown',
79
+ }, () => {
80
+ try {
81
+ const content = readFileSync(join(docsDir, 'PROVAR_TEST_STEP_REFERENCE.md'), 'utf-8');
82
+ return {
83
+ contents: [
84
+ {
85
+ uri: 'provar://docs/step-reference',
86
+ mimeType: 'text/markdown',
87
+ text: content,
88
+ },
89
+ ],
90
+ };
91
+ }
92
+ catch {
93
+ return {
94
+ contents: [
95
+ {
96
+ uri: 'provar://docs/step-reference',
97
+ mimeType: 'text/markdown',
98
+ text: '# Provar Test Step Reference\n\nReference doc not found. If you are developing from source, rebuild the package. Otherwise, reinstall or upgrade the plugin/package and try again.',
99
+ },
100
+ ],
101
+ };
102
+ }
103
+ });
60
104
  return server;
61
105
  }
62
106
  //# sourceMappingURL=server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
@@ -18,4 +18,19 @@ export interface AntValidationResult {
18
18
  }
19
19
  /** Pure function — exported for unit testing */
20
20
  export declare function validateAntXml(xmlContent: string): AntValidationResult;
21
+ export interface JUnitStepResult {
22
+ testItemId: string;
23
+ title: string;
24
+ status: 'pass' | 'fail' | 'skip';
25
+ errorMessage?: string;
26
+ }
27
+ export interface JUnitParseResult {
28
+ steps: JUnitStepResult[];
29
+ warning?: string;
30
+ }
31
+ /**
32
+ * Scan a Provar results directory for JUnit XML files and return structured step results.
33
+ * Returns an empty steps array (+ optional warning) when no XML is found or parsing fails.
34
+ */
35
+ export declare function parseJUnitResults(resultsDir: string): JUnitParseResult;
21
36
  export declare function registerAllAntTools(server: McpServer, config: ServerConfig): void;
@@ -25,9 +25,7 @@ const FilesetSchema = z.object({
25
25
  .describe('Specific .testcase or .testplan file names to include (e.g. ["Login.testcase"]). Omit to run everything in dir.'),
26
26
  });
27
27
  const PlanFeatureSchema = z.object({
28
- name: z
29
- .enum(['PDF', 'PIECHART', 'EMAIL', 'JUNIT'])
30
- .describe('Feature name (PDF, PIECHART, EMAIL, JUNIT)'),
28
+ name: z.enum(['PDF', 'PIECHART', 'EMAIL', 'JUNIT']).describe('Feature name (PDF, PIECHART, EMAIL, JUNIT)'),
31
29
  type: z.enum(['OUTPUT', 'NOTIFICATION']).describe('Feature type'),
32
30
  enabled: z.boolean().describe('Whether this feature is enabled'),
33
31
  });
@@ -103,14 +101,8 @@ export function registerAntGenerate(server, config) {
103
101
  .string()
104
102
  .default('Full Screen')
105
103
  .describe('Browser window configuration (e.g. "Full Screen").'),
106
- web_browser_provider_name: z
107
- .string()
108
- .default('Desktop')
109
- .describe('Browser provider name (e.g. "Desktop").'),
110
- web_browser_device_name: z
111
- .string()
112
- .default('Full Screen')
113
- .describe('Browser device name (e.g. "Full Screen").'),
104
+ web_browser_provider_name: z.string().default('Desktop').describe('Browser provider name (e.g. "Desktop").'),
105
+ web_browser_device_name: z.string().default('Full Screen').describe('Browser device name (e.g. "Full Screen").'),
114
106
  test_environment: z
115
107
  .string()
116
108
  .default('')
@@ -146,24 +138,18 @@ export function registerAntGenerate(server, config) {
146
138
  .boolean()
147
139
  .optional()
148
140
  .describe('When true, the ANT build does not fail even if tests fail. Useful for CI pipelines that collect results separately.'),
149
- invoke_test_run_monitor: z
150
- .boolean()
151
- .default(true)
152
- .describe('Enable the Provar test run monitor.'),
141
+ invoke_test_run_monitor: z.boolean().default(true).describe('Enable the Provar test run monitor.'),
153
142
  // ── Secrets / security ──────────────────────────────────────────────────
154
143
  secrets_password: z
155
144
  .string()
156
145
  .default('${env.ProvarSecretsPassword}')
157
- .describe('Password for the Provar secrets store. Defaults to reading from the ProvarSecretsPassword environment variable.'),
146
+ .describe('Encryption key used to decrypt the Provar .secrets file (the password string itself, not a file path). Defaults to reading from the ProvarSecretsPassword environment variable.'),
158
147
  test_environment_secrets_password: z
159
148
  .string()
160
149
  .optional()
161
150
  .describe('Per-environment secrets password. Defaults to reading from the ProvarSecretsPassword_EnvName environment variable.'),
162
151
  // ── Test Cycle ──────────────────────────────────────────────────────────
163
- test_cycle_path: z
164
- .string()
165
- .optional()
166
- .describe('Path to a TestCycle folder (used with test cycle reporting).'),
152
+ test_cycle_path: z.string().optional().describe('Path to a TestCycle folder (used with test cycle reporting).'),
167
153
  test_cycle_run_type: z
168
154
  .enum(['ALL', 'FAILED', 'NEW'])
169
155
  .optional()
@@ -182,14 +168,8 @@ export function registerAntGenerate(server, config) {
182
168
  .string()
183
169
  .optional()
184
170
  .describe('Where to write the build.xml file (returned in response). Required when dry_run=false.'),
185
- overwrite: z
186
- .boolean()
187
- .default(false)
188
- .describe('Overwrite output_path if the file already exists.'),
189
- dry_run: z
190
- .boolean()
191
- .default(true)
192
- .describe('true = return XML only (default); false = write to output_path.'),
171
+ overwrite: z.boolean().default(false).describe('Overwrite output_path if the file already exists.'),
172
+ dry_run: z.boolean().default(true).describe('true = return XML only (default); false = write to output_path.'),
193
173
  }, (input) => {
194
174
  const requestId = makeRequestId();
195
175
  log('info', 'provar.ant.generate', {
@@ -237,7 +217,7 @@ export function registerAntGenerate(server, config) {
237
217
  }
238
218
  catch (err) {
239
219
  const error = err;
240
- const errResult = makeError(error instanceof PathPolicyError ? error.code : (error.code ?? 'GENERATE_ERROR'), error.message, requestId, false);
220
+ const errResult = makeError(error instanceof PathPolicyError ? error.code : error.code ?? 'GENERATE_ERROR', error.message, requestId, false);
241
221
  log('error', 'provar.ant.generate failed', { requestId, error: error.message });
242
222
  return { isError: true, content: [{ type: 'text', text: JSON.stringify(errResult) }] };
243
223
  }
@@ -251,14 +231,8 @@ export function registerAntValidate(server, config) {
251
231
  '<Run-Test-Case> with required attributes (provarHome, projectPath, resultsPath),',
252
232
  'and at least one <fileset> child. Returns is_valid, issues list, and a validity_score.',
253
233
  ].join(' '), {
254
- content: z
255
- .string()
256
- .optional()
257
- .describe('XML content to validate directly'),
258
- file_path: z
259
- .string()
260
- .optional()
261
- .describe('Path to the build.xml file to validate'),
234
+ content: z.string().optional().describe('XML content to validate directly'),
235
+ file_path: z.string().optional().describe('Path to the build.xml file to validate'),
262
236
  }, ({ content, file_path }) => {
263
237
  const requestId = makeRequestId();
264
238
  log('info', 'provar.ant.validate', { requestId, has_content: !!content, file_path });
@@ -408,10 +382,7 @@ function escapeXmlAttr(value) {
408
382
  .replace(/</g, '&lt;')
409
383
  .replace(/>/g, '&gt;');
410
384
  }
411
- const REQUIRED_TASKDEF_CLASSNAMES = [
412
- 'com.provar.testrunner.ant.CompileTask',
413
- 'com.provar.testrunner.ant.RunnerTask',
414
- ];
385
+ const REQUIRED_TASKDEF_CLASSNAMES = ['com.provar.testrunner.ant.CompileTask', 'com.provar.testrunner.ant.RunnerTask'];
415
386
  const VALID_BROWSERS = ['Chrome', 'Chrome_Headless', 'Firefox', 'Edge', 'Edge_Legacy', 'Safari', 'IE'];
416
387
  const VALID_CACHE = ['Reuse', 'Refresh', 'Reload'];
417
388
  const VALID_OUTPUT_LEVELS = ['BASIC', 'WARNING', 'DEBUG'];
@@ -468,19 +439,43 @@ function validateProjectStructure(project, defaultTarget, issues) {
468
439
  }
469
440
  function validateRtcEnumAttrs(rtc, webBrowser, issues) {
470
441
  if (webBrowser && !VALID_BROWSERS.includes(webBrowser)) {
471
- issues.push({ rule_id: 'ANT_030', severity: 'WARNING', message: `webBrowser "${webBrowser}" is not a recognised value. Expected one of: ${VALID_BROWSERS.join(', ')}.`, applies_to: 'Run-Test-Case', suggestion: `Use one of the supported browser values: ${VALID_BROWSERS.join(', ')}.` });
442
+ issues.push({
443
+ rule_id: 'ANT_030',
444
+ severity: 'WARNING',
445
+ message: `webBrowser "${webBrowser}" is not a recognised value. Expected one of: ${VALID_BROWSERS.join(', ')}.`,
446
+ applies_to: 'Run-Test-Case',
447
+ suggestion: `Use one of the supported browser values: ${VALID_BROWSERS.join(', ')}.`,
448
+ });
472
449
  }
473
450
  const metadataCache = rtc['@_salesforceMetadataCache'];
474
451
  if (metadataCache && !VALID_CACHE.includes(metadataCache)) {
475
- issues.push({ rule_id: 'ANT_031', severity: 'WARNING', message: `salesforceMetadataCache "${metadataCache}" is not a recognised value. Expected one of: ${VALID_CACHE.join(', ')}.`, applies_to: 'Run-Test-Case', suggestion: `Use one of: ${VALID_CACHE.join(', ')}.` });
452
+ issues.push({
453
+ rule_id: 'ANT_031',
454
+ severity: 'WARNING',
455
+ message: `salesforceMetadataCache "${metadataCache}" is not a recognised value. Expected one of: ${VALID_CACHE.join(', ')}.`,
456
+ applies_to: 'Run-Test-Case',
457
+ suggestion: `Use one of: ${VALID_CACHE.join(', ')}.`,
458
+ });
476
459
  }
477
460
  const testOutputLevel = rtc['@_testOutputlevel'];
478
461
  if (testOutputLevel && !VALID_OUTPUT_LEVELS.includes(testOutputLevel)) {
479
- issues.push({ rule_id: 'ANT_032', severity: 'WARNING', message: `testOutputlevel "${testOutputLevel}" is not a recognised value. Expected one of: ${VALID_OUTPUT_LEVELS.join(', ')}.`, applies_to: 'Run-Test-Case', suggestion: `Use one of: ${VALID_OUTPUT_LEVELS.join(', ')}.` });
462
+ issues.push({
463
+ rule_id: 'ANT_032',
464
+ severity: 'WARNING',
465
+ message: `testOutputlevel "${testOutputLevel}" is not a recognised value. Expected one of: ${VALID_OUTPUT_LEVELS.join(', ')}.`,
466
+ applies_to: 'Run-Test-Case',
467
+ suggestion: `Use one of: ${VALID_OUTPUT_LEVELS.join(', ')}.`,
468
+ });
480
469
  }
481
470
  const disposition = rtc['@_resultsPathDisposition'];
482
471
  if (disposition && !VALID_DISPOSITIONS.includes(disposition)) {
483
- issues.push({ rule_id: 'ANT_033', severity: 'WARNING', message: `resultsPathDisposition "${disposition}" is not a recognised value. Expected one of: ${VALID_DISPOSITIONS.join(', ')}.`, applies_to: 'Run-Test-Case', suggestion: `Use one of: ${VALID_DISPOSITIONS.join(', ')}.` });
472
+ issues.push({
473
+ rule_id: 'ANT_033',
474
+ severity: 'WARNING',
475
+ message: `resultsPathDisposition "${disposition}" is not a recognised value. Expected one of: ${VALID_DISPOSITIONS.join(', ')}.`,
476
+ applies_to: 'Run-Test-Case',
477
+ suggestion: `Use one of: ${VALID_DISPOSITIONS.join(', ')}.`,
478
+ });
484
479
  }
485
480
  }
486
481
  function validateRunTestCase(rtc, issues) {
@@ -490,22 +485,52 @@ function validateRunTestCase(rtc, issues) {
490
485
  const webBrowser = rtc['@_webBrowser'] ?? null;
491
486
  const testEnvironment = rtc['@_testEnvironment'] ?? null;
492
487
  if (!provarHome) {
493
- issues.push({ rule_id: 'ANT_021', severity: 'ERROR', message: '<Run-Test-Case> missing required "provarHome" attribute.', applies_to: 'Run-Test-Case', suggestion: 'Add provarHome="${provar.home}" to <Run-Test-Case>.' });
488
+ issues.push({
489
+ rule_id: 'ANT_021',
490
+ severity: 'ERROR',
491
+ message: '<Run-Test-Case> missing required "provarHome" attribute.',
492
+ applies_to: 'Run-Test-Case',
493
+ suggestion: 'Add provarHome="${provar.home}" to <Run-Test-Case>.',
494
+ });
494
495
  }
495
496
  if (!projectPath) {
496
- issues.push({ rule_id: 'ANT_022', severity: 'ERROR', message: '<Run-Test-Case> missing required "projectPath" attribute.', applies_to: 'Run-Test-Case', suggestion: 'Add projectPath="${testproject.home}" to <Run-Test-Case>.' });
497
+ issues.push({
498
+ rule_id: 'ANT_022',
499
+ severity: 'ERROR',
500
+ message: '<Run-Test-Case> missing required "projectPath" attribute.',
501
+ applies_to: 'Run-Test-Case',
502
+ suggestion: 'Add projectPath="${testproject.home}" to <Run-Test-Case>.',
503
+ });
497
504
  }
498
505
  if (!resultsPath) {
499
- issues.push({ rule_id: 'ANT_023', severity: 'ERROR', message: '<Run-Test-Case> missing required "resultsPath" attribute.', applies_to: 'Run-Test-Case', suggestion: 'Add resultsPath="${testproject.results}" to <Run-Test-Case>.' });
506
+ issues.push({
507
+ rule_id: 'ANT_023',
508
+ severity: 'ERROR',
509
+ message: '<Run-Test-Case> missing required "resultsPath" attribute.',
510
+ applies_to: 'Run-Test-Case',
511
+ suggestion: 'Add resultsPath="${testproject.results}" to <Run-Test-Case>.',
512
+ });
500
513
  }
501
514
  validateRtcEnumAttrs(rtc, webBrowser, issues);
502
515
  const filesets = rtc['fileset'] ?? [];
503
516
  if (filesets.length === 0) {
504
- issues.push({ rule_id: 'ANT_040', severity: 'ERROR', message: '<Run-Test-Case> has no <fileset> children — no tests will be selected.', applies_to: 'Run-Test-Case', suggestion: 'Add at least one <fileset dir="..."/> pointing to your tests or plans folder.' });
517
+ issues.push({
518
+ rule_id: 'ANT_040',
519
+ severity: 'ERROR',
520
+ message: '<Run-Test-Case> has no <fileset> children — no tests will be selected.',
521
+ applies_to: 'Run-Test-Case',
522
+ suggestion: 'Add at least one <fileset dir="..."/> pointing to your tests or plans folder.',
523
+ });
505
524
  }
506
525
  for (const [i, fsEntry] of filesets.entries()) {
507
526
  if (!fsEntry['@_dir']) {
508
- issues.push({ rule_id: 'ANT_041', severity: 'ERROR', message: `<fileset> at index ${i} is missing required "dir" attribute.`, applies_to: 'fileset', suggestion: 'Add dir="..." to each <fileset> element.' });
527
+ issues.push({
528
+ rule_id: 'ANT_041',
529
+ severity: 'ERROR',
530
+ message: `<fileset> at index ${i} is missing required "dir" attribute.`,
531
+ applies_to: 'fileset',
532
+ suggestion: 'Add dir="..." to each <fileset> element.',
533
+ });
509
534
  }
510
535
  }
511
536
  return { provarHome, projectPath, resultsPath, webBrowser, testEnvironment, filesetCount: filesets.length };
@@ -606,6 +631,135 @@ function finalizeAnt(issues, provarHome, projectPath, resultsPath, webBrowser, t
606
631
  issues,
607
632
  };
608
633
  }
634
+ function extractFailureText(el) {
635
+ if (!el)
636
+ return undefined;
637
+ if (typeof el === 'string')
638
+ return el.trim() || undefined;
639
+ if (typeof el === 'object') {
640
+ const obj = el;
641
+ // Prefer CDATA body ('#text') — it has the specific error. Fall back to 'message' attribute.
642
+ const body = obj['#text']?.trim();
643
+ const msg = obj['message']?.trim();
644
+ if (body && msg && body !== msg)
645
+ return `${msg}: ${body}`;
646
+ return body ?? msg;
647
+ }
648
+ return undefined;
649
+ }
650
+ function extractStepsFromJUnit(parsed) {
651
+ const steps = [];
652
+ let idx = 0;
653
+ // Normalise to array of suites — handles both <testsuites> and bare <testsuite>
654
+ let suites = [];
655
+ if (parsed['testsuites']) {
656
+ const inner = parsed['testsuites']['testsuite'];
657
+ suites = Array.isArray(inner)
658
+ ? inner
659
+ : inner
660
+ ? [inner]
661
+ : [];
662
+ }
663
+ else if (parsed['testsuite']) {
664
+ const ts = parsed['testsuite'];
665
+ suites = Array.isArray(ts) ? ts : [ts];
666
+ }
667
+ for (const suite of suites) {
668
+ const rawTc = suite['testcase'];
669
+ if (!rawTc)
670
+ continue;
671
+ const testcases = Array.isArray(rawTc)
672
+ ? rawTc
673
+ : [rawTc];
674
+ for (const tc of testcases) {
675
+ idx++;
676
+ // Provar JUnit: name = test case file name (no attribute prefix since attributeNamePrefix: '')
677
+ const title = tc['name'] ?? `Test ${idx}`;
678
+ const hasFailure = 'failure' in tc || 'error' in tc;
679
+ const hasSkipped = 'skipped' in tc;
680
+ let status = 'pass';
681
+ if (hasFailure)
682
+ status = 'fail';
683
+ else if (hasSkipped)
684
+ status = 'skip';
685
+ const errorMessage = extractFailureText(tc['failure'] ?? tc['error']);
686
+ const step = { testItemId: String(idx), title, status };
687
+ if (errorMessage)
688
+ step.errorMessage = errorMessage;
689
+ steps.push(step);
690
+ }
691
+ }
692
+ return steps;
693
+ }
694
+ function findXmlFiles(dir) {
695
+ const results = [];
696
+ try {
697
+ for (const entry of fs.readdirSync(dir, { withFileTypes: true })) {
698
+ if (entry.isFile() && entry.name.endsWith('.xml') && !entry.name.startsWith('.')) {
699
+ results.push(path.join(dir, entry.name));
700
+ }
701
+ }
702
+ }
703
+ catch {
704
+ // ignore unreadable dirs
705
+ }
706
+ return results;
707
+ }
708
+ /**
709
+ * Scan a Provar results directory for JUnit XML files and return structured step results.
710
+ * Returns an empty steps array (+ optional warning) when no XML is found or parsing fails.
711
+ */
712
+ export function parseJUnitResults(resultsDir) {
713
+ if (!fs.existsSync(resultsDir)) {
714
+ return { steps: [], warning: `Results directory not found: ${resultsDir}` };
715
+ }
716
+ const xmlFiles = findXmlFiles(resultsDir);
717
+ if (xmlFiles.length === 0) {
718
+ return {
719
+ steps: [],
720
+ warning: 'No JUnit XML files found in results directory — structured step output unavailable.',
721
+ };
722
+ }
723
+ const parser = new XMLParser({
724
+ ignoreAttributes: false,
725
+ attributeNamePrefix: '',
726
+ textNodeName: '#text',
727
+ allowBooleanAttributes: true,
728
+ parseAttributeValue: false,
729
+ isArray: (tagName) => ['testsuite', 'testcase'].includes(tagName),
730
+ });
731
+ const allSteps = [];
732
+ let parsedAny = false;
733
+ let parseFailures = 0;
734
+ for (const xmlFile of xmlFiles) {
735
+ try {
736
+ const content = fs.readFileSync(xmlFile, 'utf-8');
737
+ const parsed = parser.parse(content);
738
+ const steps = extractStepsFromJUnit(parsed);
739
+ allSteps.push(...steps);
740
+ parsedAny = true;
741
+ }
742
+ catch {
743
+ parseFailures++;
744
+ }
745
+ }
746
+ if (!parsedAny) {
747
+ return {
748
+ steps: [],
749
+ warning: 'JUnit XML files found but could not be parsed — structured step output unavailable.',
750
+ };
751
+ }
752
+ if (allSteps.length === 0) {
753
+ return {
754
+ steps: [],
755
+ warning: 'JUnit XML found but no test steps could be extracted — files may not be standard JUnit format.',
756
+ };
757
+ }
758
+ const warning = parseFailures > 0
759
+ ? `${parseFailures} JUnit XML file(s) could not be parsed — step data may be incomplete.`
760
+ : undefined;
761
+ return { steps: allSteps, warning };
762
+ }
609
763
  // ── Registration ──────────────────────────────────────────────────────────────
610
764
  export function registerAllAntTools(server, config) {
611
765
  registerAntGenerate(server, config);
@@ -1 +1 @@
1
- {"version":3,"file":"antTools.js","sourceRoot":"","sources":["../../../src/mcp/tools/antTools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,8BAA8B;AAC9B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAE,SAAS,EAAE,aAAa,EAAwB,MAAM,sBAAsB,CAAC;AACtF,OAAO,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAE3C,iFAAiF;AAEjF,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7B,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC;IACjF,EAAE,EAAE,CAAC;SACF,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,mGAAmG,CACpG;IACH,QAAQ,EAAE,CAAC;SACR,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,EAAE;SACV,QAAQ,CACP,iHAAiH,CAClH;CACJ,CAAC,CAAC;AAEH,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,IAAI,EAAE,CAAC;SACJ,IAAI,CAAC,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;SAC3C,QAAQ,CAAC,4CAA4C,CAAC;IACzD,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC;IACjE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;CACjE,CAAC,CAAC;AAEH,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACtC,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAC1C,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAChD,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IACjD,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,wBAAwB,CAAC;IAC3D,uBAAuB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAClD,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;CACvC,CAAC,CAAC;AAEH,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,+BAA+B,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAC1D,qBAAqB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACjD,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACvC,eAAe,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAC3C,6BAA6B,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACzD,mBAAmB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAC9C,wBAAwB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACpD,qBAAqB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACjD,sBAAsB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAClD,sBAAsB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACjD,gCAAgC,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAC3D,wBAAwB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;CACrD,CAAC,CAAC;AAEH,iFAAiF;AAEjF,MAAM,UAAU,mBAAmB,CAAC,MAAiB,EAAE,MAAoB;IACzE,MAAM,CAAC,IAAI,CACT,qBAAqB,EACrB;QACE,uCAAuC;QACvC,uFAAuF;QACvF,oGAAoG;QACpG,8DAA8D;KAC/D,CAAC,IAAI,CAAC,GAAG,CAAC,EACX;QACE,2EAA2E;QAC3E,WAAW,EAAE,CAAC;aACX,MAAM,EAAE;aACR,QAAQ,CACP,iJAAiJ,CAClJ;QACH,YAAY,EAAE,CAAC;aACZ,MAAM,EAAE;aACR,OAAO,CAAC,IAAI,CAAC;aACb,QAAQ,CACP,oFAAoF,CACrF;QACH,YAAY,EAAE,CAAC;aACZ,MAAM,EAAE;aACR,OAAO,CAAC,gBAAgB,CAAC;aACzB,QAAQ,CAAC,oEAAoE,CAAC;QACjF,kBAAkB,EAAE,CAAC;aAClB,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,oGAAoG,CACrG;QACH,YAAY,EAAE,CAAC;aACZ,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,+EAA+E,CAAC;QAC5F,SAAS,EAAE,CAAC;aACT,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,uEAAuE,CAAC;QAEpF,2EAA2E;QAC3E,QAAQ,EAAE,CAAC;aACR,KAAK,CAAC,aAAa,CAAC;aACpB,GAAG,CAAC,CAAC,CAAC;aACN,QAAQ,CACP,oDAAoD;YAClD,wDAAwD;YACxD,6DAA6D;YAC7D,uFAAuF,CAC1F;QAEH,2EAA2E;QAC3E,WAAW,EAAE,CAAC;aACX,IAAI,CAAC,CAAC,QAAQ,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;aACrF,OAAO,CAAC,QAAQ,CAAC;aACjB,QAAQ,CAAC,wCAAwC,CAAC;QACrD,yBAAyB,EAAE,CAAC;aACzB,MAAM,EAAE;aACR,OAAO,CAAC,aAAa,CAAC;aACtB,QAAQ,CAAC,oDAAoD,CAAC;QACjE,yBAAyB,EAAE,CAAC;aACzB,MAAM,EAAE;aACR,OAAO,CAAC,SAAS,CAAC;aAClB,QAAQ,CAAC,yCAAyC,CAAC;QACtD,uBAAuB,EAAE,CAAC;aACvB,MAAM,EAAE;aACR,OAAO,CAAC,aAAa,CAAC;aACtB,QAAQ,CAAC,2CAA2C,CAAC;QACxD,gBAAgB,EAAE,CAAC;aAChB,MAAM,EAAE;aACR,OAAO,CAAC,EAAE,CAAC;aACX,QAAQ,CAAC,oGAAoG,CAAC;QAEjH,2EAA2E;QAC3E,yBAAyB,EAAE,CAAC;aACzB,IAAI,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;aACpC,OAAO,CAAC,OAAO,CAAC;aAChB,QAAQ,CACP,6HAA6H,CAC9H;QAEH,2EAA2E;QAC3E,wBAAwB,EAAE,CAAC;aACxB,IAAI,CAAC,CAAC,WAAW,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;aACvC,OAAO,CAAC,WAAW,CAAC;aACpB,QAAQ,CACP,0HAA0H,CAC3H;QACH,iBAAiB,EAAE,CAAC;aACjB,IAAI,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;aACnC,OAAO,CAAC,OAAO,CAAC;aAChB,QAAQ,CAAC,uCAAuC,CAAC;QACpD,mBAAmB,EAAE,CAAC;aACnB,IAAI,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;aACnC,OAAO,CAAC,SAAS,CAAC;aAClB,QAAQ,CAAC,yCAAyC,CAAC;QAEtD,2EAA2E;QAC3E,sBAAsB,EAAE,CAAC;aACtB,OAAO,EAAE;aACT,OAAO,CAAC,KAAK,CAAC;aACd,QAAQ,CAAC,qDAAqD,CAAC;QAClE,2BAA2B,EAAE,CAAC;aAC3B,OAAO,EAAE;aACT,OAAO,CAAC,IAAI,CAAC;aACb,QAAQ,CAAC,gEAAgE,CAAC;QAC7E,eAAe,EAAE,CAAC;aACf,OAAO,EAAE;aACT,QAAQ,EAAE;aACV,QAAQ,CACP,qHAAqH,CACtH;QACH,uBAAuB,EAAE,CAAC;aACvB,OAAO,EAAE;aACT,OAAO,CAAC,IAAI,CAAC;aACb,QAAQ,CAAC,qCAAqC,CAAC;QAElD,2EAA2E;QAC3E,gBAAgB,EAAE,CAAC;aAChB,MAAM,EAAE;aACR,OAAO,CAAC,8BAA8B,CAAC;aACvC,QAAQ,CACP,iHAAiH,CAClH;QACH,iCAAiC,EAAE,CAAC;aACjC,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,oHAAoH,CACrH;QAEH,2EAA2E;QAC3E,eAAe,EAAE,CAAC;aACf,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,8DAA8D,CAAC;QAC3E,mBAAmB,EAAE,CAAC;aACnB,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;aAC9B,QAAQ,EAAE;aACV,QAAQ,CAAC,qDAAqD,CAAC;QAElE,2EAA2E;QAC3E,aAAa,EAAE,CAAC;aACb,KAAK,CAAC,iBAAiB,CAAC;aACxB,QAAQ,EAAE;aACV,QAAQ,CACP,kFAAkF;YAChF,4CAA4C,CAC/C;QAEH,2EAA2E;QAC3E,gBAAgB,EAAE,qBAAqB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CACzD,8EAA8E,CAC/E;QACD,qBAAqB,EAAE,0BAA0B,CAAC,QAAQ,EAAE,CAAC,QAAQ,CACnE,0FAA0F,CAC3F;QAED,2EAA2E;QAC3E,WAAW,EAAE,CAAC;aACX,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,wFAAwF,CAAC;QACrG,SAAS,EAAE,CAAC;aACT,OAAO,EAAE;aACT,OAAO,CAAC,KAAK,CAAC;aACd,QAAQ,CAAC,mDAAmD,CAAC;QAChE,OAAO,EAAE,CAAC;aACP,OAAO,EAAE;aACT,OAAO,CAAC,IAAI,CAAC;aACb,QAAQ,CAAC,iEAAiE,CAAC;KAC/E,EACD,CAAC,KAAK,EAAE,EAAE;QACR,MAAM,SAAS,GAAG,aAAa,EAAE,CAAC;QAClC,GAAG,CAAC,MAAM,EAAE,qBAAqB,EAAE;YACjC,SAAS;YACT,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,OAAO,EAAE,KAAK,CAAC,OAAO;SACvB,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,+EAA+E;YAC/E,0EAA0E;YAC1E,iBAAiB,CAAC,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;YAC1D,iBAAiB,CAAC,KAAK,CAAC,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;YAC3D,iBAAiB,CAAC,KAAK,CAAC,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;YAC3D,IAAI,KAAK,CAAC,YAAY;gBAAE,iBAAiB,CAAC,KAAK,CAAC,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;YACnF,IAAI,KAAK,CAAC,SAAS;gBAAE,iBAAiB,CAAC,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;YAC7E,IAAI,KAAK,CAAC,kBAAkB;gBAAE,iBAAiB,CAAC,KAAK,CAAC,kBAAkB,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;YAE/F,MAAM,UAAU,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;YACtC,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACjF,IAAI,OAAO,GAAG,KAAK,CAAC;YAEpB,IAAI,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;gBAC/B,iBAAiB,CAAC,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;gBAEjD,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;oBAChD,MAAM,GAAG,GAAG,SAAS,CACnB,aAAa,EACb,wBAAwB,QAAQ,kCAAkC,EAClE,SAAS,CACV,CAAC;oBACF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC5F,CAAC;gBAED,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC1D,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;gBAChD,OAAO,GAAG,IAAI,CAAC;gBACf,GAAG,CAAC,MAAM,EAAE,iCAAiC,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC1E,CAAC;YAED,MAAM,MAAM,GAAG;gBACb,SAAS;gBACT,WAAW,EAAE,UAAU;gBACvB,SAAS,EAAE,QAAQ;gBACnB,OAAO;gBACP,OAAO,EAAE,KAAK,CAAC,OAAO;aACvB,CAAC;YACF,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;gBAClE,iBAAiB,EAAE,MAAM;aAC1B,CAAC;QACJ,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,MAAM,KAAK,GAAG,GAAgC,CAAC;YAC/C,MAAM,SAAS,GAAG,SAAS,CACzB,KAAK,YAAY,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,gBAAgB,CAAC,EAChF,KAAK,CAAC,OAAO,EACb,SAAS,EACT,KAAK,CACN,CAAC;YACF,GAAG,CAAC,OAAO,EAAE,4BAA4B,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAChF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;QAClG,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC;AAED,iFAAiF;AAEjF,MAAM,UAAU,mBAAmB,CAAC,MAAiB,EAAE,MAAoB;IACzE,MAAM,CAAC,IAAI,CACT,qBAAqB,EACrB;QACE,6DAA6D;QAC7D,qFAAqF;QACrF,kFAAkF;QAClF,wFAAwF;KACzF,CAAC,IAAI,CAAC,GAAG,CAAC,EACX;QACE,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,kCAAkC,CAAC;QAC/C,SAAS,EAAE,CAAC;aACT,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,wCAAwC,CAAC;KACtD,EACD,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE;QACzB,MAAM,SAAS,GAAG,aAAa,EAAE,CAAC;QAClC,GAAG,CAAC,MAAM,EAAE,qBAAqB,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;QAErF,IAAI,CAAC;YACH,IAAI,MAAM,GAAG,OAAO,CAAC;YAErB,IAAI,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC;gBACzB,iBAAiB,CAAC,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;gBAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBACzC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC7B,MAAM,GAAG,GAAG,SAAS,CAAC,gBAAgB,EAAE,mBAAmB,QAAQ,EAAE,EAAE,SAAS,CAAC,CAAC;oBAClF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC5F,CAAC;gBACD,MAAM,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAC9C,CAAC;YAED,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,GAAG,GAAG,SAAS,CAAC,eAAe,EAAE,sCAAsC,EAAE,SAAS,CAAC,CAAC;gBAC1F,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YAC5F,CAAC;YAED,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;YAC1C,MAAM,MAAM,GAAG,EAAE,SAAS,EAAE,GAAG,UAAU,EAAE,CAAC;YAC5C,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;gBAClE,iBAAiB,EAAE,MAAM;aAC1B,CAAC;QACJ,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,MAAM,KAAK,GAAG,GAAgC,CAAC;YAC/C,MAAM,SAAS,GAAG,SAAS,CACzB,KAAK,YAAY,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,EAChE,KAAK,CAAC,OAAO,EACb,SAAS,EACT,KAAK,CACN,CAAC;YACF,GAAG,CAAC,OAAO,EAAE,4BAA4B,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAChF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;QAClG,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC;AAuDD,SAAS,qBAAqB,CAAC,KAAuB,EAAE,CAAwB;IAC9E,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,KAAK,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;QACxC,KAAK,CAAC,IAAI,CAAC,0BAA0B,KAAK,CAAC,eAAe,GAAG,CAAC,CAAC;IACjE,CAAC;IACD,IAAI,KAAK,CAAC,uBAAuB,EAAE,CAAC;QAClC,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACpB,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACzD,CAAC;IACD,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;IAC1D,CAAC;IACD,IAAI,KAAK,CAAC,mBAAmB,EAAE,CAAC;QAC9B,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;IAC3E,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,WAAW,CAAC,KAAuB;IAC1C,MAAM,CAAC,GAAG,aAAa,CAAC;IACxB,MAAM,SAAS,GAAG,KAAK,CAAC,kBAAkB,IAAI,qBAAqB,CAAC;IAEpE,+EAA+E;IAC/E,MAAM,KAAK,GAAa;QACtB,8BAA8B;QAC9B,iCAAiC;QACjC,yCAAyC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK;QAClE,8CAA8C,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK;QACxE,iDAAiD,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK;QAC3E,8CAA8C,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,KAAK;KAC7E,CAAC;IAEF,IAAI,KAAK,CAAC,iCAAiC,EAAE,CAAC;QAC5C,KAAK,CAAC,IAAI,CACR,6DAA6D,CAAC,CAAC,KAAK,CAAC,iCAAiC,CAAC,KAAK,CAC7G,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CACR,mGAAmG,CACpG,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;IACxF,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,+EAA+E;IAC/E,KAAK,CAAC,IAAI,CACR,oIAAoI,EACpI,iNAAiN,EACjN,8NAA8N,EAC9N,EAAE,CACH,CAAC;IAEF,+EAA+E;IAC/E,KAAK,CAAC,IAAI,CAAC,4BAA4B,EAAE,EAAE,CAAC,CAAC;IAC7C,KAAK,CAAC,IAAI,CAAC,qFAAqF,EAAE,EAAE,CAAC,CAAC;IAEtG,gFAAgF;IAChF,MAAM,QAAQ,GAAa;QACzB,gDAAgD;QAChD,2CAA2C;QAC3C,8CAA8C;QAC9C,mCAAmC,CAAC,CAAC,KAAK,CAAC,wBAAwB,CAAC,GAAG;QACvE,4BAA4B,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,GAAG;QACxD,uBAAuB,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG;QAC9C,oCAAoC,CAAC,CAAC,KAAK,CAAC,yBAAyB,CAAC,GAAG;QACzE,mCAAmC,CAAC,CAAC,KAAK,CAAC,yBAAyB,CAAC,GAAG;QACxE,iCAAiC,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC,GAAG;QACpE,qCAAqC,KAAK,CAAC,2BAA2B,GAAG;QACzE,oCAAoC,CAAC,CAAC,KAAK,CAAC,yBAAyB,CAAC,GAAG;QACzE,6BAA6B,CAAC,CAAC,SAAS,CAAC,GAAG;QAC5C,4BAA4B,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,GAAG;QACzD,8BAA8B,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,GAAG;QAC7D,+BAA+B,KAAK,CAAC,sBAAsB,GAAG;QAC9D,+CAA+C;QAC/C,6EAA6E;KAC9E,CAAC;IAEF,QAAQ,CAAC,IAAI,CAAC,GAAG,qBAAqB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IAElD,iDAAiD;IACjD,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC;IAChD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,gFAAgF;IAChF,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1D,IAAI,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpD,KAAK,CAAC,IAAI,CAAC,iBAAiB,MAAM,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC/D,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;gBACnC,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACpD,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACjC,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,iBAAiB,MAAM,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,iFAAiF;IACjF,IAAI,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1D,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;YACrC,KAAK,CAAC,IAAI,CACR,4BAA4B,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,OAAO,KAAK,CACzF,CAAC;QACJ,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,iFAAiF;IACjF,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;QAC3B,MAAM,EAAE,GAAG,KAAK,CAAC,gBAAgB,CAAC;QAClC,KAAK,CAAC,IAAI,CACR,qCAAqC,EAAE,CAAC,UAAU,wBAAwB,CAAC,CAAC,EAAE,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC,aAAa,IAAI,EAAE,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC,cAAc,IAAI,EAAE,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,4BAA4B,EAAE,CAAC,uBAAuB,gBAAgB,EAAE,CAAC,UAAU,KAAK,CAC3T,CAAC;IACJ,CAAC;IAED,iFAAiF;IACjF,IAAI,KAAK,CAAC,qBAAqB,EAAE,CAAC;QAChC,MAAM,EAAE,GAAG,KAAK,CAAC,qBAAqB,CAAC;QACvC,KAAK,CAAC,IAAI,CACR,4DAA4D,EAAE,CAAC,+BAA+B,0BAA0B,EAAE,CAAC,qBAAqB,iBAAiB,EAAE,CAAC,WAAW,qBAAqB,EAAE,CAAC,eAAe,iCAAiC,EAAE,CAAC,6BAA6B,yBAAyB,EAAE,CAAC,mBAAmB,6BAA6B,EAAE,CAAC,wBAAwB,0BAA0B,EAAE,CAAC,qBAAqB,2BAA2B,EAAE,CAAC,sBAAsB,0BAA0B,EAAE,CAAC,sBAAsB,mCAAmC,EAAE,CAAC,gCAAgC,4BAA4B,EAAE,CAAC,wBAAwB,KAAK,CAC1pB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,sBAAsB,EAAE,EAAE,EAAE,aAAa,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;IAExE,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,aAAa,CAAC,KAAa;IAClC,OAAO,KAAK;SACT,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;SACvB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;SACvB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAC3B,CAAC;AAkBD,MAAM,2BAA2B,GAAG;IAClC,uCAAuC;IACvC,sCAAsC;CACvC,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,QAAQ,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;AACvG,MAAM,WAAW,GAAG,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;AACnD,MAAM,mBAAmB,GAAG,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;AAC1D,MAAM,kBAAkB,GAAG,CAAC,WAAW,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;AAW7D,SAAS,wBAAwB,CAC/B,OAAgC,EAChC,aAAiC,EACjC,MAAyB;IAEzB,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,iDAAiD;YAC1D,UAAU,EAAE,SAAS;YACrB,UAAU,EAAE,4DAA4D;SACzE,CAAC,CAAC;IACL,CAAC;IAED,MAAM,QAAQ,GAAI,OAAO,CAAC,SAAS,CAAgD,IAAI,EAAE,CAAC;IAC1F,KAAK,MAAM,aAAa,IAAI,2BAA2B,EAAE,CAAC;QACxD,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAE,EAAE,CAAC,aAAa,CAAwB,KAAK,aAAa,CAAC,CAAC;QACjG,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,CAAC,IAAI,CAAC;gBACV,OAAO,EAAE,SAAS;gBAClB,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,oCAAoC,aAAa,IAAI;gBAC9D,UAAU,EAAE,SAAS;gBACrB,UAAU,EAAE,2BAA2B,aAAa,wBAAwB;aAC7E,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAI,OAAO,CAAC,QAAQ,CAAgD,IAAI,EAAE,CAAC;IACxF,MAAM,eAAe,GAAG,aAAa;QACnC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAAC,CAAC,QAAQ,CAAwB,KAAK,aAAa,CAAC;QAC5E,CAAC,CAAC,SAAS,CAAC;IAEd,IAAI,aAAa,IAAI,CAAC,eAAe,EAAE,CAAC;QACtC,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,mBAAmB,aAAa,2BAA2B;YACpE,UAAU,EAAE,SAAS;YACrB,UAAU,EAAE,uBAAuB,aAAa,aAAa;SAC9D,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,MAAM,GAAG,eAAe,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;IAC7C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,0CAA0C;YACnD,UAAU,EAAE,SAAS;YACrB,UAAU,EAAE,oCAAoC;SACjD,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,oBAAoB,CAAC,GAA4B,EAAE,UAAyB,EAAE,MAAyB;IAC9G,IAAI,UAAU,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QACvD,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,eAAe,UAAU,iDAAiD,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,4CAA4C,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC/R,CAAC;IACD,MAAM,aAAa,GAAG,GAAG,CAAC,2BAA2B,CAAuB,CAAC;IAC7E,IAAI,aAAa,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;QAC1D,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,4BAA4B,aAAa,iDAAiD,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,eAAe,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC5Q,CAAC;IACD,MAAM,eAAe,GAAG,GAAG,CAAC,mBAAmB,CAAuB,CAAC;IACvE,IAAI,eAAe,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;QACtE,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,oBAAoB,eAAe,iDAAiD,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,eAAe,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IACtR,CAAC;IACD,MAAM,WAAW,GAAG,GAAG,CAAC,0BAA0B,CAAuB,CAAC;IAC1E,IAAI,WAAW,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;QAC7D,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,2BAA2B,WAAW,iDAAiD,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,eAAe,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IACvR,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,GAA4B,EAAE,MAAyB;IAClF,MAAM,UAAU,GAAI,GAAG,CAAC,cAAc,CAAwB,IAAI,IAAI,CAAC;IACvE,MAAM,WAAW,GAAI,GAAG,CAAC,eAAe,CAAwB,IAAI,IAAI,CAAC;IACzE,MAAM,WAAW,GAAI,GAAG,CAAC,eAAe,CAAwB,IAAI,IAAI,CAAC;IACzE,MAAM,UAAU,GAAI,GAAG,CAAC,cAAc,CAAwB,IAAI,IAAI,CAAC;IACvE,MAAM,eAAe,GAAI,GAAG,CAAC,mBAAmB,CAAwB,IAAI,IAAI,CAAC;IAEjF,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,0DAA0D,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,qDAAqD,EAAE,CAAC,CAAC;IAC9N,CAAC;IACD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,2DAA2D,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,2DAA2D,EAAE,CAAC,CAAC;IACrO,CAAC;IACD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,2DAA2D,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,8DAA8D,EAAE,CAAC,CAAC;IACxO,CAAC;IACD,oBAAoB,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAI,GAAG,CAAC,SAAS,CAAgD,IAAI,EAAE,CAAC;IACtF,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,wEAAwE,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,+EAA+E,EAAE,CAAC,CAAC;IACtQ,CAAC;IACD,KAAK,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;QAC9C,IAAI,CAAE,OAAO,CAAC,OAAO,CAAwB,EAAE,CAAC;YAC9C,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,sBAAsB,CAAC,uCAAuC,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,0CAA0C,EAAE,CAAC,CAAC;QACjN,CAAC;IACH,CAAC;IACD,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,eAAe,EAAE,YAAY,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;AAC9G,CAAC;AAED,gDAAgD;AAChD,MAAM,UAAU,cAAc,CAAC,UAAkB;IAC/C,MAAM,MAAM,GAAsB,EAAE,CAAC;IAErC,2BAA2B;IAC3B,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAChD,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,SAAS;YACnB,OAAO,EAAE,oGAAoG;YAC7G,UAAU,EAAE,UAAU;YACtB,UAAU,EAAE,wCAAwC;SACrD,CAAC,CAAC;IACL,CAAC;IAED,QAAQ;IACR,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;QAC3B,gBAAgB,EAAE,KAAK;QACvB,mBAAmB,EAAE,IAAI;QACzB,mBAAmB,EAAE,KAAK;QAC1B,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,CACnB,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;KAC/E,CAAC,CAAC;IACH,IAAI,MAA+B,CAAC;IACpC,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,CAA4B,CAAC;IAC/D,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,MAAM,UAAU,GAAG,CAAU,CAAC;QAC9B,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,oBAAoB,UAAU,CAAC,OAAO,EAAE;YACjD,UAAU,EAAE,UAAU;YACtB,UAAU,EAAE,wBAAwB;SACrC,CAAC,CAAC;QACH,OAAO,WAAW,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,0CAA0C;IAC1C,IAAI,CAAC,CAAC,SAAS,IAAI,MAAM,CAAC,EAAE,CAAC;QAC3B,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,iCAAiC;YAC1C,UAAU,EAAE,UAAU;YACtB,UAAU,EAAE,sCAAsC;SACnD,CAAC,CAAC;QACH,OAAO,WAAW,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAA4B,CAAC;IAC7D,MAAM,aAAa,GAAG,OAAO,CAAC,WAAW,CAAuB,CAAC;IAEjE,MAAM,MAAM,GAAG,wBAAwB,CAAC,OAAO,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;IACxE,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,WAAW,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,+BAA+B;IAC/B,MAAM,WAAW,GAAG,MAAM,CAAC,gBAAgB,CAAwC,CAAC;IACpF,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,SAAS;YACnB,OAAO,EAAE,uDAAuD;YAChE,UAAU,EAAE,QAAQ;YACpB,UAAU,EAAE,gFAAgF;SAC7F,CAAC,CAAC;IACL,CAAC;IAED,8BAA8B;IAC9B,MAAM,GAAG,GAAG,MAAM,CAAC,eAAe,CAAwC,CAAC;IAC3E,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,yDAAyD;YAClE,UAAU,EAAE,QAAQ;YACpB,UAAU,EAAE,iDAAiD;SAC9D,CAAC,CAAC;QACH,OAAO,WAAW,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,eAAe,EAAE,YAAY,EAAE,GACvF,mBAAmB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAEnC,OAAO,WAAW,CAAC,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,eAAe,EAAE,YAAY,CAAC,CAAC;AAC9G,CAAC;AAED,SAAS,WAAW,CAClB,MAAyB,EACzB,UAAyB,EACzB,WAA0B,EAC1B,WAA0B,EAC1B,UAAyB,EACzB,eAA8B,EAC9B,YAAoB;IAEpB,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,MAAM,CAAC;IACvE,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,MAAM,CAAC;IAC3E,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,UAAU,GAAG,EAAE,CAAC,CAAC;IAEzD,OAAO;QACL,QAAQ,EAAE,UAAU,KAAK,CAAC;QAC1B,cAAc,EAAE,aAAa;QAC7B,WAAW,EAAE,UAAU;QACvB,YAAY,EAAE,WAAW;QACzB,YAAY,EAAE,WAAW;QACzB,WAAW,EAAE,UAAU;QACvB,gBAAgB,EAAE,eAAe;QACjC,aAAa,EAAE,YAAY;QAC3B,WAAW,EAAE,UAAU;QACvB,aAAa,EAAE,YAAY;QAC3B,MAAM;KACP,CAAC;AACJ,CAAC;AAED,iFAAiF;AAEjF,MAAM,UAAU,mBAAmB,CAAC,MAAiB,EAAE,MAAoB;IACzE,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AACtC,CAAC"}
1
+ {"version":3,"file":"antTools.js","sourceRoot":"","sources":["../../../src/mcp/tools/antTools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,8BAA8B;AAC9B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAE,SAAS,EAAE,aAAa,EAAwB,MAAM,sBAAsB,CAAC;AACtF,OAAO,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAE3C,iFAAiF;AAEjF,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7B,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC;IACjF,EAAE,EAAE,CAAC;SACF,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,mGAAmG,CAAC;IAChH,QAAQ,EAAE,CAAC;SACR,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,EAAE;SACV,QAAQ,CACP,iHAAiH,CAClH;CACJ,CAAC,CAAC;AAEH,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,4CAA4C,CAAC;IAC1G,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC;IACjE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;CACjE,CAAC,CAAC;AAEH,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACtC,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAC1C,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAChD,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IACjD,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,wBAAwB,CAAC;IAC3D,uBAAuB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAClD,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;CACvC,CAAC,CAAC;AAEH,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,+BAA+B,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAC1D,qBAAqB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACjD,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACvC,eAAe,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAC3C,6BAA6B,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACzD,mBAAmB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAC9C,wBAAwB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACpD,qBAAqB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACjD,sBAAsB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAClD,sBAAsB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACjD,gCAAgC,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAC3D,wBAAwB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;CACrD,CAAC,CAAC;AAEH,iFAAiF;AAEjF,MAAM,UAAU,mBAAmB,CAAC,MAAiB,EAAE,MAAoB;IACzE,MAAM,CAAC,IAAI,CACT,qBAAqB,EACrB;QACE,uCAAuC;QACvC,uFAAuF;QACvF,oGAAoG;QACpG,8DAA8D;KAC/D,CAAC,IAAI,CAAC,GAAG,CAAC,EACX;QACE,2EAA2E;QAC3E,WAAW,EAAE,CAAC;aACX,MAAM,EAAE;aACR,QAAQ,CACP,iJAAiJ,CAClJ;QACH,YAAY,EAAE,CAAC;aACZ,MAAM,EAAE;aACR,OAAO,CAAC,IAAI,CAAC;aACb,QAAQ,CAAC,oFAAoF,CAAC;QACjG,YAAY,EAAE,CAAC;aACZ,MAAM,EAAE;aACR,OAAO,CAAC,gBAAgB,CAAC;aACzB,QAAQ,CAAC,oEAAoE,CAAC;QACjF,kBAAkB,EAAE,CAAC;aAClB,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,oGAAoG,CAAC;QACjH,YAAY,EAAE,CAAC;aACZ,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,+EAA+E,CAAC;QAC5F,SAAS,EAAE,CAAC;aACT,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,uEAAuE,CAAC;QAEpF,2EAA2E;QAC3E,QAAQ,EAAE,CAAC;aACR,KAAK,CAAC,aAAa,CAAC;aACpB,GAAG,CAAC,CAAC,CAAC;aACN,QAAQ,CACP,oDAAoD;YAClD,wDAAwD;YACxD,6DAA6D;YAC7D,uFAAuF,CAC1F;QAEH,2EAA2E;QAC3E,WAAW,EAAE,CAAC;aACX,IAAI,CAAC,CAAC,QAAQ,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;aACrF,OAAO,CAAC,QAAQ,CAAC;aACjB,QAAQ,CAAC,wCAAwC,CAAC;QACrD,yBAAyB,EAAE,CAAC;aACzB,MAAM,EAAE;aACR,OAAO,CAAC,aAAa,CAAC;aACtB,QAAQ,CAAC,oDAAoD,CAAC;QACjE,yBAAyB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,yCAAyC,CAAC;QAC5G,uBAAuB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,2CAA2C,CAAC;QAChH,gBAAgB,EAAE,CAAC;aAChB,MAAM,EAAE;aACR,OAAO,CAAC,EAAE,CAAC;aACX,QAAQ,CAAC,oGAAoG,CAAC;QAEjH,2EAA2E;QAC3E,yBAAyB,EAAE,CAAC;aACzB,IAAI,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;aACpC,OAAO,CAAC,OAAO,CAAC;aAChB,QAAQ,CACP,6HAA6H,CAC9H;QAEH,2EAA2E;QAC3E,wBAAwB,EAAE,CAAC;aACxB,IAAI,CAAC,CAAC,WAAW,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;aACvC,OAAO,CAAC,WAAW,CAAC;aACpB,QAAQ,CACP,0HAA0H,CAC3H;QACH,iBAAiB,EAAE,CAAC;aACjB,IAAI,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;aACnC,OAAO,CAAC,OAAO,CAAC;aAChB,QAAQ,CAAC,uCAAuC,CAAC;QACpD,mBAAmB,EAAE,CAAC;aACnB,IAAI,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;aACnC,OAAO,CAAC,SAAS,CAAC;aAClB,QAAQ,CAAC,yCAAyC,CAAC;QAEtD,2EAA2E;QAC3E,sBAAsB,EAAE,CAAC;aACtB,OAAO,EAAE;aACT,OAAO,CAAC,KAAK,CAAC;aACd,QAAQ,CAAC,qDAAqD,CAAC;QAClE,2BAA2B,EAAE,CAAC;aAC3B,OAAO,EAAE;aACT,OAAO,CAAC,IAAI,CAAC;aACb,QAAQ,CAAC,gEAAgE,CAAC;QAC7E,eAAe,EAAE,CAAC;aACf,OAAO,EAAE;aACT,QAAQ,EAAE;aACV,QAAQ,CACP,qHAAqH,CACtH;QACH,uBAAuB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,qCAAqC,CAAC;QAElG,2EAA2E;QAC3E,gBAAgB,EAAE,CAAC;aAChB,MAAM,EAAE;aACR,OAAO,CAAC,8BAA8B,CAAC;aACvC,QAAQ,CACP,iLAAiL,CAClL;QACH,iCAAiC,EAAE,CAAC;aACjC,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,oHAAoH,CACrH;QAEH,2EAA2E;QAC3E,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8DAA8D,CAAC;QAC/G,mBAAmB,EAAE,CAAC;aACnB,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;aAC9B,QAAQ,EAAE;aACV,QAAQ,CAAC,qDAAqD,CAAC;QAElE,2EAA2E;QAC3E,aAAa,EAAE,CAAC;aACb,KAAK,CAAC,iBAAiB,CAAC;aACxB,QAAQ,EAAE;aACV,QAAQ,CACP,kFAAkF;YAChF,4CAA4C,CAC/C;QAEH,2EAA2E;QAC3E,gBAAgB,EAAE,qBAAqB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CACzD,8EAA8E,CAC/E;QACD,qBAAqB,EAAE,0BAA0B,CAAC,QAAQ,EAAE,CAAC,QAAQ,CACnE,0FAA0F,CAC3F;QAED,2EAA2E;QAC3E,WAAW,EAAE,CAAC;aACX,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,wFAAwF,CAAC;QACrG,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,mDAAmD,CAAC;QACnG,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,iEAAiE,CAAC;KAC/G,EACD,CAAC,KAAK,EAAE,EAAE;QACR,MAAM,SAAS,GAAG,aAAa,EAAE,CAAC;QAClC,GAAG,CAAC,MAAM,EAAE,qBAAqB,EAAE;YACjC,SAAS;YACT,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,OAAO,EAAE,KAAK,CAAC,OAAO;SACvB,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,+EAA+E;YAC/E,0EAA0E;YAC1E,iBAAiB,CAAC,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;YAC1D,iBAAiB,CAAC,KAAK,CAAC,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;YAC3D,iBAAiB,CAAC,KAAK,CAAC,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;YAC3D,IAAI,KAAK,CAAC,YAAY;gBAAE,iBAAiB,CAAC,KAAK,CAAC,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;YACnF,IAAI,KAAK,CAAC,SAAS;gBAAE,iBAAiB,CAAC,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;YAC7E,IAAI,KAAK,CAAC,kBAAkB;gBAAE,iBAAiB,CAAC,KAAK,CAAC,kBAAkB,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;YAE/F,MAAM,UAAU,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;YACtC,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACjF,IAAI,OAAO,GAAG,KAAK,CAAC;YAEpB,IAAI,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;gBAC/B,iBAAiB,CAAC,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;gBAEjD,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;oBAChD,MAAM,GAAG,GAAG,SAAS,CACnB,aAAa,EACb,wBAAwB,QAAQ,kCAAkC,EAClE,SAAS,CACV,CAAC;oBACF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC5F,CAAC;gBAED,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC1D,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;gBAChD,OAAO,GAAG,IAAI,CAAC;gBACf,GAAG,CAAC,MAAM,EAAE,iCAAiC,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC1E,CAAC;YAED,MAAM,MAAM,GAAG;gBACb,SAAS;gBACT,WAAW,EAAE,UAAU;gBACvB,SAAS,EAAE,QAAQ;gBACnB,OAAO;gBACP,OAAO,EAAE,KAAK,CAAC,OAAO;aACvB,CAAC;YACF,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;gBAClE,iBAAiB,EAAE,MAAM;aAC1B,CAAC;QACJ,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,MAAM,KAAK,GAAG,GAAgC,CAAC;YAC/C,MAAM,SAAS,GAAG,SAAS,CACzB,KAAK,YAAY,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,gBAAgB,EAC9E,KAAK,CAAC,OAAO,EACb,SAAS,EACT,KAAK,CACN,CAAC;YACF,GAAG,CAAC,OAAO,EAAE,4BAA4B,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAChF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;QAClG,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC;AAED,iFAAiF;AAEjF,MAAM,UAAU,mBAAmB,CAAC,MAAiB,EAAE,MAAoB;IACzE,MAAM,CAAC,IAAI,CACT,qBAAqB,EACrB;QACE,6DAA6D;QAC7D,qFAAqF;QACrF,kFAAkF;QAClF,wFAAwF;KACzF,CAAC,IAAI,CAAC,GAAG,CAAC,EACX;QACE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;QAC3E,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;KACpF,EACD,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE;QACzB,MAAM,SAAS,GAAG,aAAa,EAAE,CAAC;QAClC,GAAG,CAAC,MAAM,EAAE,qBAAqB,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;QAErF,IAAI,CAAC;YACH,IAAI,MAAM,GAAG,OAAO,CAAC;YAErB,IAAI,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC;gBACzB,iBAAiB,CAAC,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;gBAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBACzC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC7B,MAAM,GAAG,GAAG,SAAS,CAAC,gBAAgB,EAAE,mBAAmB,QAAQ,EAAE,EAAE,SAAS,CAAC,CAAC;oBAClF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC5F,CAAC;gBACD,MAAM,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAC9C,CAAC;YAED,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,GAAG,GAAG,SAAS,CAAC,eAAe,EAAE,sCAAsC,EAAE,SAAS,CAAC,CAAC;gBAC1F,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YAC5F,CAAC;YAED,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;YAC1C,MAAM,MAAM,GAAG,EAAE,SAAS,EAAE,GAAG,UAAU,EAAE,CAAC;YAC5C,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;gBAClE,iBAAiB,EAAE,MAAM;aAC1B,CAAC;QACJ,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,MAAM,KAAK,GAAG,GAAgC,CAAC;YAC/C,MAAM,SAAS,GAAG,SAAS,CACzB,KAAK,YAAY,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,EAChE,KAAK,CAAC,OAAO,EACb,SAAS,EACT,KAAK,CACN,CAAC;YACF,GAAG,CAAC,OAAO,EAAE,4BAA4B,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAChF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;QAClG,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC;AAuDD,SAAS,qBAAqB,CAAC,KAAuB,EAAE,CAAwB;IAC9E,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,KAAK,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;QACxC,KAAK,CAAC,IAAI,CAAC,0BAA0B,KAAK,CAAC,eAAe,GAAG,CAAC,CAAC;IACjE,CAAC;IACD,IAAI,KAAK,CAAC,uBAAuB,EAAE,CAAC;QAClC,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACpB,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACzD,CAAC;IACD,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;IAC1D,CAAC;IACD,IAAI,KAAK,CAAC,mBAAmB,EAAE,CAAC;QAC9B,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;IAC3E,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,WAAW,CAAC,KAAuB;IAC1C,MAAM,CAAC,GAAG,aAAa,CAAC;IACxB,MAAM,SAAS,GAAG,KAAK,CAAC,kBAAkB,IAAI,qBAAqB,CAAC;IAEpE,+EAA+E;IAC/E,MAAM,KAAK,GAAa;QACtB,8BAA8B;QAC9B,iCAAiC;QACjC,yCAAyC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK;QAClE,8CAA8C,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK;QACxE,iDAAiD,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK;QAC3E,8CAA8C,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,KAAK;KAC7E,CAAC;IAEF,IAAI,KAAK,CAAC,iCAAiC,EAAE,CAAC;QAC5C,KAAK,CAAC,IAAI,CACR,6DAA6D,CAAC,CAAC,KAAK,CAAC,iCAAiC,CAAC,KAAK,CAC7G,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,mGAAmG,CAAC,CAAC;IAClH,CAAC;IAED,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;IACxF,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,+EAA+E;IAC/E,KAAK,CAAC,IAAI,CACR,oIAAoI,EACpI,iNAAiN,EACjN,8NAA8N,EAC9N,EAAE,CACH,CAAC;IAEF,+EAA+E;IAC/E,KAAK,CAAC,IAAI,CAAC,4BAA4B,EAAE,EAAE,CAAC,CAAC;IAC7C,KAAK,CAAC,IAAI,CAAC,qFAAqF,EAAE,EAAE,CAAC,CAAC;IAEtG,gFAAgF;IAChF,MAAM,QAAQ,GAAa;QACzB,gDAAgD;QAChD,2CAA2C;QAC3C,8CAA8C;QAC9C,mCAAmC,CAAC,CAAC,KAAK,CAAC,wBAAwB,CAAC,GAAG;QACvE,4BAA4B,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,GAAG;QACxD,uBAAuB,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG;QAC9C,oCAAoC,CAAC,CAAC,KAAK,CAAC,yBAAyB,CAAC,GAAG;QACzE,mCAAmC,CAAC,CAAC,KAAK,CAAC,yBAAyB,CAAC,GAAG;QACxE,iCAAiC,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC,GAAG;QACpE,qCAAqC,KAAK,CAAC,2BAA2B,GAAG;QACzE,oCAAoC,CAAC,CAAC,KAAK,CAAC,yBAAyB,CAAC,GAAG;QACzE,6BAA6B,CAAC,CAAC,SAAS,CAAC,GAAG;QAC5C,4BAA4B,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,GAAG;QACzD,8BAA8B,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,GAAG;QAC7D,+BAA+B,KAAK,CAAC,sBAAsB,GAAG;QAC9D,+CAA+C;QAC/C,6EAA6E;KAC9E,CAAC;IAEF,QAAQ,CAAC,IAAI,CAAC,GAAG,qBAAqB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IAElD,iDAAiD;IACjD,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC;IAChD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,gFAAgF;IAChF,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1D,IAAI,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpD,KAAK,CAAC,IAAI,CAAC,iBAAiB,MAAM,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC/D,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;gBACnC,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACpD,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACjC,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,iBAAiB,MAAM,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,iFAAiF;IACjF,IAAI,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1D,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;YACrC,KAAK,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,OAAO,KAAK,CAAC,CAAC;QACvG,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,iFAAiF;IACjF,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;QAC3B,MAAM,EAAE,GAAG,KAAK,CAAC,gBAAgB,CAAC;QAClC,KAAK,CAAC,IAAI,CACR,qCAAqC,EAAE,CAAC,UAAU,wBAAwB,CAAC,CACzE,EAAE,CAAC,kBAAkB,CACtB,mBAAmB,CAAC,CAAC,EAAE,CAAC,aAAa,IAAI,EAAE,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC,cAAc,IAAI,EAAE,CAAC,mBAAmB,CAAC,CAC7G,EAAE,CAAC,aAAa,CACjB,4BAA4B,EAAE,CAAC,uBAAuB,gBAAgB,EAAE,CAAC,UAAU,KAAK,CAC1F,CAAC;IACJ,CAAC;IAED,iFAAiF;IACjF,IAAI,KAAK,CAAC,qBAAqB,EAAE,CAAC;QAChC,MAAM,EAAE,GAAG,KAAK,CAAC,qBAAqB,CAAC;QACvC,KAAK,CAAC,IAAI,CACR,4DAA4D,EAAE,CAAC,+BAA+B,0BAA0B,EAAE,CAAC,qBAAqB,iBAAiB,EAAE,CAAC,WAAW,qBAAqB,EAAE,CAAC,eAAe,iCAAiC,EAAE,CAAC,6BAA6B,yBAAyB,EAAE,CAAC,mBAAmB,6BAA6B,EAAE,CAAC,wBAAwB,0BAA0B,EAAE,CAAC,qBAAqB,2BAA2B,EAAE,CAAC,sBAAsB,0BAA0B,EAAE,CAAC,sBAAsB,mCAAmC,EAAE,CAAC,gCAAgC,4BAA4B,EAAE,CAAC,wBAAwB,KAAK,CAC1pB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,sBAAsB,EAAE,EAAE,EAAE,aAAa,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;IAExE,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,aAAa,CAAC,KAAa;IAClC,OAAO,KAAK;SACT,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;SACvB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;SACvB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAC3B,CAAC;AAkBD,MAAM,2BAA2B,GAAG,CAAC,uCAAuC,EAAE,sCAAsC,CAAC,CAAC;AAEtH,MAAM,cAAc,GAAG,CAAC,QAAQ,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;AACvG,MAAM,WAAW,GAAG,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;AACnD,MAAM,mBAAmB,GAAG,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;AAC1D,MAAM,kBAAkB,GAAG,CAAC,WAAW,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;AAW7D,SAAS,wBAAwB,CAC/B,OAAgC,EAChC,aAAiC,EACjC,MAAyB;IAEzB,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,iDAAiD;YAC1D,UAAU,EAAE,SAAS;YACrB,UAAU,EAAE,4DAA4D;SACzE,CAAC,CAAC;IACL,CAAC;IAED,MAAM,QAAQ,GAAI,OAAO,CAAC,SAAS,CAAgD,IAAI,EAAE,CAAC;IAC1F,KAAK,MAAM,aAAa,IAAI,2BAA2B,EAAE,CAAC;QACxD,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAE,EAAE,CAAC,aAAa,CAAwB,KAAK,aAAa,CAAC,CAAC;QACjG,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,CAAC,IAAI,CAAC;gBACV,OAAO,EAAE,SAAS;gBAClB,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,oCAAoC,aAAa,IAAI;gBAC9D,UAAU,EAAE,SAAS;gBACrB,UAAU,EAAE,2BAA2B,aAAa,wBAAwB;aAC7E,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAI,OAAO,CAAC,QAAQ,CAAgD,IAAI,EAAE,CAAC;IACxF,MAAM,eAAe,GAAG,aAAa;QACnC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAAC,CAAC,QAAQ,CAAwB,KAAK,aAAa,CAAC;QAC5E,CAAC,CAAC,SAAS,CAAC;IAEd,IAAI,aAAa,IAAI,CAAC,eAAe,EAAE,CAAC;QACtC,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,mBAAmB,aAAa,2BAA2B;YACpE,UAAU,EAAE,SAAS;YACrB,UAAU,EAAE,uBAAuB,aAAa,aAAa;SAC9D,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,MAAM,GAAG,eAAe,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;IAC7C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,0CAA0C;YACnD,UAAU,EAAE,SAAS;YACrB,UAAU,EAAE,oCAAoC;SACjD,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,oBAAoB,CAC3B,GAA4B,EAC5B,UAAyB,EACzB,MAAyB;IAEzB,IAAI,UAAU,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QACvD,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,SAAS;YACnB,OAAO,EAAE,eAAe,UAAU,iDAAiD,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;YAC/G,UAAU,EAAE,eAAe;YAC3B,UAAU,EAAE,4CAA4C,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;SACrF,CAAC,CAAC;IACL,CAAC;IACD,MAAM,aAAa,GAAG,GAAG,CAAC,2BAA2B,CAAuB,CAAC;IAC7E,IAAI,aAAa,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;QAC1D,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,SAAS;YACnB,OAAO,EAAE,4BAA4B,aAAa,iDAAiD,WAAW,CAAC,IAAI,CACjH,IAAI,CACL,GAAG;YACJ,UAAU,EAAE,eAAe;YAC3B,UAAU,EAAE,eAAe,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;SACrD,CAAC,CAAC;IACL,CAAC;IACD,MAAM,eAAe,GAAG,GAAG,CAAC,mBAAmB,CAAuB,CAAC;IACvE,IAAI,eAAe,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;QACtE,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,SAAS;YACnB,OAAO,EAAE,oBAAoB,eAAe,iDAAiD,mBAAmB,CAAC,IAAI,CACnH,IAAI,CACL,GAAG;YACJ,UAAU,EAAE,eAAe;YAC3B,UAAU,EAAE,eAAe,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;SAC7D,CAAC,CAAC;IACL,CAAC;IACD,MAAM,WAAW,GAAG,GAAG,CAAC,0BAA0B,CAAuB,CAAC;IAC1E,IAAI,WAAW,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;QAC7D,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,SAAS;YACnB,OAAO,EAAE,2BAA2B,WAAW,iDAAiD,kBAAkB,CAAC,IAAI,CACrH,IAAI,CACL,GAAG;YACJ,UAAU,EAAE,eAAe;YAC3B,UAAU,EAAE,eAAe,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;SAC5D,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,GAA4B,EAAE,MAAyB;IAClF,MAAM,UAAU,GAAI,GAAG,CAAC,cAAc,CAAwB,IAAI,IAAI,CAAC;IACvE,MAAM,WAAW,GAAI,GAAG,CAAC,eAAe,CAAwB,IAAI,IAAI,CAAC;IACzE,MAAM,WAAW,GAAI,GAAG,CAAC,eAAe,CAAwB,IAAI,IAAI,CAAC;IACzE,MAAM,UAAU,GAAI,GAAG,CAAC,cAAc,CAAwB,IAAI,IAAI,CAAC;IACvE,MAAM,eAAe,GAAI,GAAG,CAAC,mBAAmB,CAAwB,IAAI,IAAI,CAAC;IAEjF,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,0DAA0D;YACnE,UAAU,EAAE,eAAe;YAC3B,UAAU,EAAE,qDAAqD;SAClE,CAAC,CAAC;IACL,CAAC;IACD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,2DAA2D;YACpE,UAAU,EAAE,eAAe;YAC3B,UAAU,EAAE,2DAA2D;SACxE,CAAC,CAAC;IACL,CAAC;IACD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,2DAA2D;YACpE,UAAU,EAAE,eAAe;YAC3B,UAAU,EAAE,8DAA8D;SAC3E,CAAC,CAAC;IACL,CAAC;IACD,oBAAoB,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAI,GAAG,CAAC,SAAS,CAAgD,IAAI,EAAE,CAAC;IACtF,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,wEAAwE;YACjF,UAAU,EAAE,eAAe;YAC3B,UAAU,EAAE,+EAA+E;SAC5F,CAAC,CAAC;IACL,CAAC;IACD,KAAK,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;QAC9C,IAAI,CAAE,OAAO,CAAC,OAAO,CAAwB,EAAE,CAAC;YAC9C,MAAM,CAAC,IAAI,CAAC;gBACV,OAAO,EAAE,SAAS;gBAClB,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,sBAAsB,CAAC,uCAAuC;gBACvE,UAAU,EAAE,SAAS;gBACrB,UAAU,EAAE,0CAA0C;aACvD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,eAAe,EAAE,YAAY,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;AAC9G,CAAC;AAED,gDAAgD;AAChD,MAAM,UAAU,cAAc,CAAC,UAAkB;IAC/C,MAAM,MAAM,GAAsB,EAAE,CAAC;IAErC,2BAA2B;IAC3B,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAChD,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,SAAS;YACnB,OAAO,EAAE,oGAAoG;YAC7G,UAAU,EAAE,UAAU;YACtB,UAAU,EAAE,wCAAwC;SACrD,CAAC,CAAC;IACL,CAAC;IAED,QAAQ;IACR,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;QAC3B,gBAAgB,EAAE,KAAK;QACvB,mBAAmB,EAAE,IAAI;QACzB,mBAAmB,EAAE,KAAK;QAC1B,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;KACnG,CAAC,CAAC;IACH,IAAI,MAA+B,CAAC;IACpC,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,CAA4B,CAAC;IAC/D,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,MAAM,UAAU,GAAG,CAAU,CAAC;QAC9B,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,oBAAoB,UAAU,CAAC,OAAO,EAAE;YACjD,UAAU,EAAE,UAAU;YACtB,UAAU,EAAE,wBAAwB;SACrC,CAAC,CAAC;QACH,OAAO,WAAW,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,0CAA0C;IAC1C,IAAI,CAAC,CAAC,SAAS,IAAI,MAAM,CAAC,EAAE,CAAC;QAC3B,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,iCAAiC;YAC1C,UAAU,EAAE,UAAU;YACtB,UAAU,EAAE,sCAAsC;SACnD,CAAC,CAAC;QACH,OAAO,WAAW,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAA4B,CAAC;IAC7D,MAAM,aAAa,GAAG,OAAO,CAAC,WAAW,CAAuB,CAAC;IAEjE,MAAM,MAAM,GAAG,wBAAwB,CAAC,OAAO,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;IACxE,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,WAAW,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,+BAA+B;IAC/B,MAAM,WAAW,GAAG,MAAM,CAAC,gBAAgB,CAAwC,CAAC;IACpF,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,SAAS;YACnB,OAAO,EAAE,uDAAuD;YAChE,UAAU,EAAE,QAAQ;YACpB,UAAU,EAAE,gFAAgF;SAC7F,CAAC,CAAC;IACL,CAAC;IAED,8BAA8B;IAC9B,MAAM,GAAG,GAAG,MAAM,CAAC,eAAe,CAAwC,CAAC;IAC3E,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,yDAAyD;YAClE,UAAU,EAAE,QAAQ;YACpB,UAAU,EAAE,iDAAiD;SAC9D,CAAC,CAAC;QACH,OAAO,WAAW,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,eAAe,EAAE,YAAY,EAAE,GAAG,mBAAmB,CAC7G,GAAG,EACH,MAAM,CACP,CAAC;IAEF,OAAO,WAAW,CAAC,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,eAAe,EAAE,YAAY,CAAC,CAAC;AAC9G,CAAC;AAED,SAAS,WAAW,CAClB,MAAyB,EACzB,UAAyB,EACzB,WAA0B,EAC1B,WAA0B,EAC1B,UAAyB,EACzB,eAA8B,EAC9B,YAAoB;IAEpB,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,MAAM,CAAC;IACvE,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,MAAM,CAAC;IAC3E,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,UAAU,GAAG,EAAE,CAAC,CAAC;IAEzD,OAAO;QACL,QAAQ,EAAE,UAAU,KAAK,CAAC;QAC1B,cAAc,EAAE,aAAa;QAC7B,WAAW,EAAE,UAAU;QACvB,YAAY,EAAE,WAAW;QACzB,YAAY,EAAE,WAAW;QACzB,WAAW,EAAE,UAAU;QACvB,gBAAgB,EAAE,eAAe;QACjC,aAAa,EAAE,YAAY;QAC3B,WAAW,EAAE,UAAU;QACvB,aAAa,EAAE,YAAY;QAC3B,MAAM;KACP,CAAC;AACJ,CAAC;AAgBD,SAAS,kBAAkB,CAAC,EAAW;IACrC,IAAI,CAAC,EAAE;QAAE,OAAO,SAAS,CAAC;IAC1B,IAAI,OAAO,EAAE,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,SAAS,CAAC;IAC1D,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE,CAAC;QAC3B,MAAM,GAAG,GAAG,EAA6B,CAAC;QAC1C,6FAA6F;QAC7F,MAAM,IAAI,GAAI,GAAG,CAAC,OAAO,CAAwB,EAAE,IAAI,EAAE,CAAC;QAC1D,MAAM,GAAG,GAAI,GAAG,CAAC,SAAS,CAAwB,EAAE,IAAI,EAAE,CAAC;QAC3D,IAAI,IAAI,IAAI,GAAG,IAAI,IAAI,KAAK,GAAG;YAAE,OAAO,GAAG,GAAG,KAAK,IAAI,EAAE,CAAC;QAC1D,OAAO,IAAI,IAAI,GAAG,CAAC;IACrB,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,qBAAqB,CAAC,MAA+B;IAC5D,MAAM,KAAK,GAAsB,EAAE,CAAC;IACpC,IAAI,GAAG,GAAG,CAAC,CAAC;IAEZ,gFAAgF;IAChF,IAAI,MAAM,GAAmC,EAAE,CAAC;IAChD,IAAI,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;QACzB,MAAM,KAAK,GAAI,MAAM,CAAC,YAAY,CAA6B,CAAC,WAAW,CAAC,CAAC;QAC7E,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAC3B,CAAC,CAAE,KAAwC;YAC3C,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,CAAC,KAAgC,CAAC;gBACpC,CAAC,CAAC,EAAE,CAAC;IACT,CAAC;SAAM,IAAI,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;QAC/B,MAAM,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;QAC/B,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,EAAqC,CAAC,CAAC,CAAC,CAAC,EAA6B,CAAC,CAAC;IACxG,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC;QAChC,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,MAAM,SAAS,GAAmC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YACpE,CAAC,CAAE,KAAwC;YAC3C,CAAC,CAAC,CAAC,KAAgC,CAAC,CAAC;QAEvC,KAAK,MAAM,EAAE,IAAI,SAAS,EAAE,CAAC;YAC3B,GAAG,EAAE,CAAC;YACN,+FAA+F;YAC/F,MAAM,KAAK,GAAI,EAAE,CAAC,MAAM,CAAwB,IAAI,QAAQ,GAAG,EAAE,CAAC;YAClE,MAAM,UAAU,GAAG,SAAS,IAAI,EAAE,IAAI,OAAO,IAAI,EAAE,CAAC;YACpD,MAAM,UAAU,GAAG,SAAS,IAAI,EAAE,CAAC;YAEnC,IAAI,MAAM,GAA6B,MAAM,CAAC;YAC9C,IAAI,UAAU;gBAAE,MAAM,GAAG,MAAM,CAAC;iBAC3B,IAAI,UAAU;gBAAE,MAAM,GAAG,MAAM,CAAC;YAErC,MAAM,YAAY,GAAG,kBAAkB,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;YACtE,MAAM,IAAI,GAAoB,EAAE,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;YACzE,IAAI,YAAY;gBAAE,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;YACnD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,YAAY,CAAC,GAAW;IAC/B,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,IAAI,CAAC;QACH,KAAK,MAAM,KAAK,IAAI,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;YACjE,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACjF,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YAC3C,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,yBAAyB;IAC3B,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,UAAkB;IAClD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,gCAAgC,UAAU,EAAE,EAAE,CAAC;IAC9E,CAAC;IAED,MAAM,QAAQ,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;IAC1C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO;YACL,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,qFAAqF;SAC/F,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;QAC3B,gBAAgB,EAAE,KAAK;QACvB,mBAAmB,EAAE,EAAE;QACvB,YAAY,EAAE,OAAO;QACrB,sBAAsB,EAAE,IAAI;QAC5B,mBAAmB,EAAE,KAAK;QAC1B,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;KAClE,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAsB,EAAE,CAAC;IACvC,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,aAAa,GAAG,CAAC,CAAC;IAEtB,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAClD,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAA4B,CAAC;YAChE,MAAM,KAAK,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;YAC5C,QAAQ,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC;YACxB,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC;QAAC,MAAM,CAAC;YACP,aAAa,EAAE,CAAC;QAClB,CAAC;IACH,CAAC;IAED,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO;YACL,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,qFAAqF;SAC/F,CAAC;IACJ,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO;YACL,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,gGAAgG;SAC1G,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GACX,aAAa,GAAG,CAAC;QACf,CAAC,CAAC,GAAG,aAAa,uEAAuE;QACzF,CAAC,CAAC,SAAS,CAAC;IAChB,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;AACtC,CAAC;AAED,iFAAiF;AAEjF,MAAM,UAAU,mBAAmB,CAAC,MAAiB,EAAE,MAAoB;IACzE,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AACtC,CAAC"}
@@ -1,3 +1,4 @@
1
+ /// <reference types="node" resolution-mode="require"/>
1
2
  import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
3
  import type { ServerConfig } from '../server.js';
3
4
  /**
@@ -5,10 +6,42 @@ import type { ServerConfig } from '../server.js';
5
6
  * Used as a fallback when `sf` is not in PATH.
6
7
  */
7
8
  export declare function getSfCommonPaths(): string[];
8
- /** Exposed for testing only — pre-seeds the cached sf executable path, bypassing the probe spawn. */
9
- export declare function setSfPathCacheForTesting(value: string | null): void;
9
+ /**
10
+ * Exposed for testing only pre-seeds the cached sf executable path, bypassing the probe spawn.
11
+ * Pass `undefined` to reset the cache so the next call triggers a fresh probe.
12
+ */
13
+ export declare function setSfPathCacheForTesting(value: string | null | undefined): void;
14
+ /** Exposed for testing only — overrides process.platform for needsWindowsShell decisions. */
15
+ export declare function setSfPlatformForTesting(platform: NodeJS.Platform | undefined): void;
16
+ /**
17
+ * Returns true when spawning `executable` requires the Windows shell.
18
+ * On Windows, `.cmd` and `.bat` batch scripts cannot be executed directly by
19
+ * Node's spawnSync — they must be invoked through cmd.exe (i.e. shell: true).
20
+ * The bare name "sf" also needs this treatment on Windows because the file on
21
+ * disk is actually "sf.cmd" and Node won't auto-append the extension.
22
+ *
23
+ * The `platform` parameter defaults to `process.platform` and is exposed for
24
+ * unit testing so tests can verify both Windows and non-Windows behaviour
25
+ * without having to run on the corresponding OS.
26
+ */
27
+ export declare function needsWindowsShell(executable: string, platform?: NodeJS.Platform): boolean;
10
28
  export declare function registerAutomationConfigLoad(server: McpServer, config: ServerConfig): void;
11
- export declare function registerAutomationTestRun(server: McpServer): void;
29
+ /**
30
+ * Strip Java schema-validator debug lines and stale logger-lock SEVERE warnings
31
+ * from Provar testrun output. These two patterns account for the bulk of output
32
+ * volume and cause MCP responses to be truncated before the pass/fail lines.
33
+ *
34
+ * Everything else (including real SEVERE failures) passes through unchanged.
35
+ * Collapses runs of blank lines to a single blank to keep the output readable.
36
+ * Returns the filtered text and the count of suppressed lines.
37
+ */
38
+ export declare function filterTestRunOutput(raw: string): {
39
+ filtered: string;
40
+ suppressed: number;
41
+ };
42
+ /** Exposed for testing only — set the results path returned by the sf config reader. Pass undefined to reset. */
43
+ export declare function setSfResultsPathForTesting(p: string | null | undefined): void;
44
+ export declare function registerAutomationTestRun(server: McpServer, config: ServerConfig): void;
12
45
  export declare function registerAutomationCompile(server: McpServer): void;
13
46
  export declare function registerAutomationMetadataDownload(server: McpServer): void;
14
47
  export declare function registerAutomationSetup(server: McpServer): void;