@hongmaple0820/scale-engine 0.18.0 → 0.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. package/README.en.md +296 -237
  2. package/README.md +157 -63
  3. package/dist/api/cli.js +448 -27
  4. package/dist/api/cli.js.map +1 -1
  5. package/dist/api/doctor.d.ts +4 -1
  6. package/dist/api/doctor.js +85 -1
  7. package/dist/api/doctor.js.map +1 -1
  8. package/dist/api/quickstart.d.ts +3 -0
  9. package/dist/api/quickstart.js +9 -4
  10. package/dist/api/quickstart.js.map +1 -1
  11. package/dist/cli/phaseCommands.js +7 -0
  12. package/dist/cli/phaseCommands.js.map +1 -1
  13. package/dist/index.d.ts +2 -0
  14. package/dist/index.js +4 -0
  15. package/dist/index.js.map +1 -1
  16. package/dist/memory/MemoryFabric.d.ts +118 -0
  17. package/dist/memory/MemoryFabric.js +281 -0
  18. package/dist/memory/MemoryFabric.js.map +1 -0
  19. package/dist/memory/MemoryLearning.d.ts +61 -0
  20. package/dist/memory/MemoryLearning.js +203 -0
  21. package/dist/memory/MemoryLearning.js.map +1 -0
  22. package/dist/memory/index.d.ts +2 -0
  23. package/dist/memory/index.js +3 -0
  24. package/dist/memory/index.js.map +1 -0
  25. package/dist/output/HTMLArtifactLayer.js +31 -31
  26. package/dist/prompts/VibeTemplateGallery.js +121 -121
  27. package/dist/runtime/FinalReportGuard.d.ts +16 -0
  28. package/dist/runtime/FinalReportGuard.js +14 -0
  29. package/dist/runtime/FinalReportGuard.js.map +1 -0
  30. package/dist/runtime/RuntimeDoctor.d.ts +23 -0
  31. package/dist/runtime/RuntimeDoctor.js +151 -0
  32. package/dist/runtime/RuntimeDoctor.js.map +1 -0
  33. package/dist/runtime/RuntimeEvidenceLedger.d.ts +50 -0
  34. package/dist/runtime/RuntimeEvidenceLedger.js +89 -0
  35. package/dist/runtime/RuntimeEvidenceLedger.js.map +1 -0
  36. package/dist/runtime/SessionLedger.d.ts +53 -0
  37. package/dist/runtime/SessionLedger.js +104 -0
  38. package/dist/runtime/SessionLedger.js.map +1 -0
  39. package/dist/runtime/index.d.ts +4 -0
  40. package/dist/runtime/index.js +5 -0
  41. package/dist/runtime/index.js.map +1 -0
  42. package/dist/workflow/EngineeringStandards.js +69 -66
  43. package/dist/workflow/EngineeringStandards.js.map +1 -1
  44. package/dist/workflow/GovernanceTemplatePacks.js +126 -126
  45. package/dist/workflow/GovernanceTemplates.d.ts +1 -1
  46. package/dist/workflow/GovernanceTemplates.js +489 -218
  47. package/dist/workflow/GovernanceTemplates.js.map +1 -1
  48. package/dist/workflow/ResourceGovernance.js +27 -18
  49. package/dist/workflow/ResourceGovernance.js.map +1 -1
  50. package/dist/workflow/VerificationCommands.d.ts +11 -0
  51. package/dist/workflow/VerificationCommands.js +2 -0
  52. package/dist/workflow/VerificationCommands.js.map +1 -1
  53. package/dist/workflow/VerificationProfile.d.ts +2 -1
  54. package/dist/workflow/VerificationProfile.js +3 -0
  55. package/dist/workflow/VerificationProfile.js.map +1 -1
  56. package/dist/workflow/WorkflowArtifactWriter.js +2 -1
  57. package/dist/workflow/WorkflowArtifactWriter.js.map +1 -1
  58. package/dist/workflow/WorkflowEngine.js +4 -1
  59. package/dist/workflow/WorkflowEngine.js.map +1 -1
  60. package/dist/workflow/WorkspaceSafety.d.ts +9 -0
  61. package/dist/workflow/WorkspaceSafety.js +49 -0
  62. package/dist/workflow/WorkspaceSafety.js.map +1 -0
  63. package/dist/workflow/gates/GateSystem.d.ts +12 -1
  64. package/dist/workflow/gates/GateSystem.js +106 -0
  65. package/dist/workflow/gates/GateSystem.js.map +1 -1
  66. package/dist/workflow/types.d.ts +1 -1
  67. package/docs/MEMORY_FABRIC.md +107 -0
  68. package/docs/README.md +68 -0
  69. package/docs/RUNTIME_EVIDENCE.md +101 -0
  70. package/docs/start/README.md +42 -0
  71. package/docs/start/agent-governance-demo.md +107 -0
  72. package/docs/start/quickstart.md +127 -0
  73. package/examples/demo-projects/agent-governance-demo/README.md +37 -0
  74. package/examples/demo-projects/agent-governance-demo/package.json +16 -0
  75. package/examples/demo-projects/agent-governance-demo/src/oauth-state.ts +39 -0
  76. package/examples/demo-projects/agent-governance-demo/tests/oauth-state.test.ts +52 -0
  77. package/package.json +8 -3
@@ -0,0 +1,89 @@
1
+ import { randomUUID } from 'node:crypto';
2
+ import { existsSync, mkdirSync, readFileSync, readdirSync, writeFileSync } from 'node:fs';
3
+ import { isAbsolute, join, resolve } from 'node:path';
4
+ import { redactEvidenceText, redactEvidenceValue } from '../tools/ToolEvidenceStore.js';
5
+ export class RuntimeEvidenceLedger {
6
+ constructor(options = {}) {
7
+ this.sequence = 0;
8
+ const projectDir = resolve(options.projectDir ?? process.cwd());
9
+ const scaleRoot = isAbsolute(options.scaleDir ?? '')
10
+ ? options.scaleDir
11
+ : join(projectDir, options.scaleDir ?? '.scale');
12
+ this.rootDir = join(scaleRoot, 'evidence', 'runtime');
13
+ this.now = options.now ?? (() => new Date());
14
+ if (options.createDirs !== false && !existsSync(this.rootDir))
15
+ mkdirSync(this.rootDir, { recursive: true });
16
+ }
17
+ record(input) {
18
+ const command = input.command ? redactEvidenceText(input.command) : undefined;
19
+ const summary = redactEvidenceText(input.summary);
20
+ const metadata = redactEvidenceValue(input.metadata ?? {});
21
+ const artifacts = redactEvidenceValue(input.artifacts ?? []);
22
+ const record = {
23
+ ...input,
24
+ id: `RTE-${Date.now()}-${randomUUID().slice(0, 8)}`,
25
+ createdAt: this.now().toISOString(),
26
+ sequence: ++this.sequence,
27
+ command: command?.value,
28
+ summary: summary.value,
29
+ artifacts: artifacts.value,
30
+ metadata: metadata.value,
31
+ redactionApplied: Boolean(command?.redacted) || summary.redacted || metadata.redacted || artifacts.redacted,
32
+ };
33
+ writeFileSync(join(this.rootDir, `${record.id}.json`), JSON.stringify(record, null, 2), 'utf-8');
34
+ return record;
35
+ }
36
+ list(query = {}) {
37
+ if (!existsSync(this.rootDir))
38
+ return [];
39
+ const limit = query.limit ?? 50;
40
+ return readdirSync(this.rootDir)
41
+ .filter(file => file.endsWith('.json'))
42
+ .map(file => readRuntimeEvidence(join(this.rootDir, file)))
43
+ .filter((record) => Boolean(record))
44
+ .filter(record => !query.taskId || record.taskId === query.taskId)
45
+ .filter(record => !query.sessionId || record.sessionId === query.sessionId)
46
+ .sort((a, b) => {
47
+ const time = Date.parse(b.createdAt) - Date.parse(a.createdAt);
48
+ if (time !== 0)
49
+ return time;
50
+ return b.sequence - a.sequence;
51
+ })
52
+ .slice(0, limit);
53
+ }
54
+ get(id) {
55
+ return readRuntimeEvidence(join(this.rootDir, `${id}.json`));
56
+ }
57
+ summary(query = {}) {
58
+ const records = this.list({ ...query, limit: query.limit ?? Number.MAX_SAFE_INTEGER });
59
+ const passed = records.filter(record => record.status === 'passed').length;
60
+ const expectedRed = records.filter(isExpectedRedEvidence).length;
61
+ const failedRecords = records.filter(record => record.status === 'failed' && !isExpectedRedEvidence(record));
62
+ const failed = failedRecords.length;
63
+ const skipped = records.filter(record => record.status === 'skipped').length;
64
+ return {
65
+ total: records.length,
66
+ passed,
67
+ failed,
68
+ skipped,
69
+ expectedRed,
70
+ ok: failed === 0,
71
+ latestFailure: failedRecords[0],
72
+ };
73
+ }
74
+ }
75
+ function isExpectedRedEvidence(record) {
76
+ if (record.status !== 'failed')
77
+ return false;
78
+ const metadata = record.metadata ?? {};
79
+ return metadata.expectedRed === true || metadata.expectedFailure === true;
80
+ }
81
+ function readRuntimeEvidence(file) {
82
+ try {
83
+ return JSON.parse(readFileSync(file, 'utf-8'));
84
+ }
85
+ catch {
86
+ return null;
87
+ }
88
+ }
89
+ //# sourceMappingURL=RuntimeEvidenceLedger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RuntimeEvidenceLedger.js","sourceRoot":"","sources":["../../src/runtime/RuntimeEvidenceLedger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,53 @@
1
+ export type RuntimeSessionLevel = 'S' | 'M' | 'L' | 'CRITICAL';
2
+ export type RuntimeSessionStatus = 'active' | 'completed' | 'failed' | 'abandoned';
3
+ export type RuntimeSessionEventType = 'session.started' | 'session.ended' | 'phase.started' | 'phase.completed' | 'tool.used' | 'evidence.recorded' | 'note';
4
+ export interface RuntimeSessionStartInput {
5
+ sessionId?: string;
6
+ taskId?: string;
7
+ agent?: string;
8
+ level?: RuntimeSessionLevel;
9
+ summary?: string;
10
+ }
11
+ export interface RuntimeSessionRecord {
12
+ sessionId: string;
13
+ taskId?: string;
14
+ agent?: string;
15
+ level?: RuntimeSessionLevel;
16
+ status: RuntimeSessionStatus;
17
+ startedAt: string;
18
+ updatedAt: string;
19
+ endedAt?: string;
20
+ summary?: string;
21
+ }
22
+ export interface RuntimeSessionEventInput {
23
+ type: RuntimeSessionEventType;
24
+ phase?: string;
25
+ message?: string;
26
+ data?: Record<string, unknown>;
27
+ }
28
+ export interface RuntimeSessionEvent extends RuntimeSessionEventInput {
29
+ id: string;
30
+ sessionId: string;
31
+ createdAt: string;
32
+ redactionApplied: boolean;
33
+ }
34
+ export interface RuntimeSessionLedgerOptions {
35
+ projectDir?: string;
36
+ scaleDir?: string;
37
+ now?: () => Date;
38
+ createDirs?: boolean;
39
+ }
40
+ export declare class SessionLedger {
41
+ private sessionsDir;
42
+ private currentPath;
43
+ private now;
44
+ constructor(options?: RuntimeSessionLedgerOptions);
45
+ start(input?: RuntimeSessionStartInput): RuntimeSessionRecord;
46
+ append(sessionId: string, input: RuntimeSessionEventInput): RuntimeSessionEvent;
47
+ end(sessionId: string, status?: RuntimeSessionStatus, summary?: string): RuntimeSessionRecord;
48
+ current(): RuntimeSessionRecord | null;
49
+ listEvents(sessionId: string): RuntimeSessionEvent[];
50
+ sessionFile(sessionId: string): string;
51
+ private writeCurrent;
52
+ private sessionPath;
53
+ }
@@ -0,0 +1,104 @@
1
+ import { randomUUID } from 'node:crypto';
2
+ import { appendFileSync, existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
3
+ import { isAbsolute, join, resolve } from 'node:path';
4
+ import { redactEvidenceValue } from '../tools/ToolEvidenceStore.js';
5
+ export class SessionLedger {
6
+ constructor(options = {}) {
7
+ const projectDir = resolve(options.projectDir ?? process.cwd());
8
+ const scaleRoot = isAbsolute(options.scaleDir ?? '')
9
+ ? options.scaleDir
10
+ : join(projectDir, options.scaleDir ?? '.scale');
11
+ this.sessionsDir = join(scaleRoot, 'events', 'sessions');
12
+ this.currentPath = join(scaleRoot, 'events', 'current-session.json');
13
+ this.now = options.now ?? (() => new Date());
14
+ if (options.createDirs !== false && !existsSync(this.sessionsDir))
15
+ mkdirSync(this.sessionsDir, { recursive: true });
16
+ }
17
+ start(input = {}) {
18
+ const now = this.now().toISOString();
19
+ const record = {
20
+ sessionId: input.sessionId ?? `SESSION-${Date.now()}-${randomUUID().slice(0, 8)}`,
21
+ taskId: input.taskId,
22
+ agent: input.agent,
23
+ level: input.level,
24
+ status: 'active',
25
+ startedAt: now,
26
+ updatedAt: now,
27
+ summary: input.summary,
28
+ };
29
+ this.writeCurrent(record);
30
+ this.append(record.sessionId, {
31
+ type: 'session.started',
32
+ message: input.summary,
33
+ data: {
34
+ taskId: record.taskId,
35
+ agent: record.agent,
36
+ level: record.level,
37
+ },
38
+ });
39
+ return record;
40
+ }
41
+ append(sessionId, input) {
42
+ const data = redactEvidenceValue(input.data ?? {});
43
+ const event = {
44
+ ...input,
45
+ id: `EVT-${Date.now()}-${randomUUID().slice(0, 8)}`,
46
+ sessionId,
47
+ createdAt: this.now().toISOString(),
48
+ data: data.value,
49
+ redactionApplied: data.redacted,
50
+ };
51
+ appendFileSync(this.sessionPath(sessionId), `${JSON.stringify(event)}\n`, 'utf-8');
52
+ return event;
53
+ }
54
+ end(sessionId, status = 'completed', summary) {
55
+ const current = this.current();
56
+ const now = this.now().toISOString();
57
+ const record = {
58
+ ...(current?.sessionId === sessionId ? current : { sessionId, startedAt: now }),
59
+ status,
60
+ updatedAt: now,
61
+ endedAt: now,
62
+ summary: summary ?? current?.summary,
63
+ };
64
+ this.writeCurrent(record);
65
+ this.append(sessionId, {
66
+ type: 'session.ended',
67
+ message: summary,
68
+ data: { status },
69
+ });
70
+ return record;
71
+ }
72
+ current() {
73
+ try {
74
+ return JSON.parse(readFileSync(this.currentPath, 'utf-8'));
75
+ }
76
+ catch {
77
+ return null;
78
+ }
79
+ }
80
+ listEvents(sessionId) {
81
+ try {
82
+ return readFileSync(this.sessionPath(sessionId), 'utf-8')
83
+ .split(/\r?\n/)
84
+ .filter(Boolean)
85
+ .map(line => JSON.parse(line));
86
+ }
87
+ catch {
88
+ return [];
89
+ }
90
+ }
91
+ sessionFile(sessionId) {
92
+ return this.sessionPath(sessionId);
93
+ }
94
+ writeCurrent(record) {
95
+ writeFileSync(this.currentPath, JSON.stringify(record, null, 2), 'utf-8');
96
+ }
97
+ sessionPath(sessionId) {
98
+ return join(this.sessionsDir, `${safePathSegment(sessionId)}.jsonl`);
99
+ }
100
+ }
101
+ function safePathSegment(value) {
102
+ return value.replace(/[^a-zA-Z0-9._-]/g, '-').slice(0, 120) || 'unknown-session';
103
+ }
104
+ //# sourceMappingURL=SessionLedger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SessionLedger.js","sourceRoot":"","sources":["../../src/runtime/SessionLedger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export * from './RuntimeEvidenceLedger.js';
2
+ export * from './SessionLedger.js';
3
+ export * from './RuntimeDoctor.js';
4
+ export * from './FinalReportGuard.js';
@@ -0,0 +1,5 @@
1
+ export * from './RuntimeEvidenceLedger.js';
2
+ export * from './SessionLedger.js';
3
+ export * from './RuntimeDoctor.js';
4
+ export * from './FinalReportGuard.js';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/runtime/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAA;AAC1C,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAClC,cAAc,uBAAuB,CAAA"}
@@ -51,13 +51,13 @@ const SOURCE_EXTENSIONS = new Set([
51
51
  '.svelte',
52
52
  ]);
53
53
  export function engineeringStandardsPolicyPath(projectDir = process.cwd(), scaleDir = '.scale') {
54
- return join(projectDir, scaleDir, 'engineering-standards.json');
54
+ return join(resolveScaleRoot(projectDir, scaleDir), 'engineering-standards.json');
55
55
  }
56
56
  export function frameworksCatalogPath(projectDir = process.cwd(), scaleDir = '.scale') {
57
- return join(projectDir, scaleDir, 'frameworks.json');
57
+ return join(resolveScaleRoot(projectDir, scaleDir), 'frameworks.json');
58
58
  }
59
59
  export function engineeringStandardsBaselinePath(projectDir = process.cwd(), scaleDir = '.scale') {
60
- return join(projectDir, scaleDir, 'engineering-standards-baseline.json');
60
+ return join(resolveScaleRoot(projectDir, scaleDir), 'engineering-standards-baseline.json');
61
61
  }
62
62
  export function engineeringStandardsPolicyTemplate() {
63
63
  return JSON.stringify({
@@ -641,21 +641,21 @@ function standardsSettlementMarkdown(taskId, doctor) {
641
641
  const findings = doctor.findings.length
642
642
  ? doctor.findings.map(finding => `| ${finding.severity.toUpperCase()} | ${finding.ruleId} | ${escapeCell(finding.path)} | ${finding.line ?? ''} | ${escapeCell(finding.message)} |`).join('\n')
643
643
  : '| OK | no-findings | | | No engineering standards findings. |';
644
- return `
645
- ## SCALE Engineering Standards Settlement - ${new Date().toISOString()}
646
-
647
- Task: ${taskId ?? 'unspecified'}
648
- Status: ${doctor.ok ? 'passed' : 'blocked'}
649
-
650
- | Metric | Value |
651
- | --- | ---: |
652
- | Files scanned | ${doctor.scan.summary.filesScanned} |
653
- | Total findings | ${doctor.scan.summary.totalFindings} |
654
- | Blocking findings | ${doctor.scan.summary.blockingFindings} |
655
-
656
- | Severity | Rule | Path | Line | Message |
657
- | --- | --- | --- | ---: | --- |
658
- ${findings}
644
+ return `
645
+ ## SCALE Engineering Standards Settlement - ${new Date().toISOString()}
646
+
647
+ Task: ${taskId ?? 'unspecified'}
648
+ Status: ${doctor.ok ? 'passed' : 'blocked'}
649
+
650
+ | Metric | Value |
651
+ | --- | ---: |
652
+ | Files scanned | ${doctor.scan.summary.filesScanned} |
653
+ | Total findings | ${doctor.scan.summary.totalFindings} |
654
+ | Blocking findings | ${doctor.scan.summary.blockingFindings} |
655
+
656
+ | Severity | Rule | Path | Line | Message |
657
+ | --- | --- | --- | ---: | --- |
658
+ ${findings}
659
659
  `;
660
660
  }
661
661
  function baselineEntriesFromFindings(findings, reason) {
@@ -678,7 +678,7 @@ function baselineEntriesFromFindings(findings, reason) {
678
678
  return [...entries.values()];
679
679
  }
680
680
  function writeStandardsBaselineFile(options) {
681
- mkdirSync(join(options.projectDir, options.scaleDir), { recursive: true });
681
+ mkdirSync(resolveScaleRoot(options.projectDir, options.scaleDir), { recursive: true });
682
682
  writeFileSync(options.baselinePath, JSON.stringify({
683
683
  version: 1,
684
684
  generatedAt: new Date().toISOString(),
@@ -693,6 +693,9 @@ function writeStandardsBaselineFile(options) {
693
693
  })),
694
694
  }, null, 2) + '\n', 'utf-8');
695
695
  }
696
+ function resolveScaleRoot(projectDir, scaleDir) {
697
+ return isAbsolute(scaleDir) ? scaleDir : join(projectDir, scaleDir);
698
+ }
696
699
  function classifyStandardsDebt(filesScanned, findings) {
697
700
  const bySeverity = { info: 0, warn: 0, fail: 0 };
698
701
  const byCategory = emptyDebtCategorySummary();
@@ -756,53 +759,53 @@ function legacyDebtMarkdown(options) {
756
759
  const truncated = options.findings.length > detailLimit
757
760
  ? `\n\nDetail rows truncated to ${detailLimit} of ${options.findings.length}. The baseline file contains the complete machine-readable list.\n`
758
761
  : '';
759
- return `# SCALE Engineering Standards Legacy Debt Classification
760
-
761
- Generated: ${new Date().toISOString()}
762
- Task: ${options.taskId ?? 'unspecified'}
763
- Baseline written: ${options.wroteBaseline ? 'yes' : 'no'}
764
- Baseline path: ${options.baselinePath}
765
- Baseline entries: ${options.baselineEntries.length}
766
-
767
- ## Summary
768
-
769
- | Metric | Value |
770
- | --- | ---: |
771
- | Files scanned | ${options.debt.filesScanned} |
772
- | Total findings | ${options.debt.totalFindings} |
773
- | Blocking findings | ${options.debt.blockingFindings} |
774
- | Warnings | ${options.debt.bySeverity.warn} |
775
- | Info | ${options.debt.bySeverity.info} |
776
-
777
- ## By Category
778
-
779
- | Category | Total | Blocking | Warn | Info |
780
- | --- | ---: | ---: | ---: | ---: |
781
- ${categories}
782
-
783
- ## By Scope
784
-
785
- | Scope | Total | Blocking | Warn | Info |
786
- | --- | ---: | ---: | ---: | ---: |
787
- ${scopes}
788
-
789
- ## By Rule
790
-
791
- | Rule | Category | Total | Blocking | Warn | Info |
792
- | --- | --- | ---: | ---: | ---: | ---: |
793
- ${rules}
794
-
795
- ## Top Files
796
-
797
- | Path | Total | Blocking | Warn | Info |
798
- | --- | ---: | ---: | ---: | ---: |
799
- ${files}
800
-
801
- ## Finding Details
802
-
803
- | Severity | Category | Rule | Path | Line | Message |
804
- | --- | --- | --- | --- | ---: | --- |
805
- ${details}${truncated}
762
+ return `# SCALE Engineering Standards Legacy Debt Classification
763
+
764
+ Generated: ${new Date().toISOString()}
765
+ Task: ${options.taskId ?? 'unspecified'}
766
+ Baseline written: ${options.wroteBaseline ? 'yes' : 'no'}
767
+ Baseline path: ${options.baselinePath}
768
+ Baseline entries: ${options.baselineEntries.length}
769
+
770
+ ## Summary
771
+
772
+ | Metric | Value |
773
+ | --- | ---: |
774
+ | Files scanned | ${options.debt.filesScanned} |
775
+ | Total findings | ${options.debt.totalFindings} |
776
+ | Blocking findings | ${options.debt.blockingFindings} |
777
+ | Warnings | ${options.debt.bySeverity.warn} |
778
+ | Info | ${options.debt.bySeverity.info} |
779
+
780
+ ## By Category
781
+
782
+ | Category | Total | Blocking | Warn | Info |
783
+ | --- | ---: | ---: | ---: | ---: |
784
+ ${categories}
785
+
786
+ ## By Scope
787
+
788
+ | Scope | Total | Blocking | Warn | Info |
789
+ | --- | ---: | ---: | ---: | ---: |
790
+ ${scopes}
791
+
792
+ ## By Rule
793
+
794
+ | Rule | Category | Total | Blocking | Warn | Info |
795
+ | --- | --- | ---: | ---: | ---: | ---: |
796
+ ${rules}
797
+
798
+ ## Top Files
799
+
800
+ | Path | Total | Blocking | Warn | Info |
801
+ | --- | ---: | ---: | ---: | ---: |
802
+ ${files}
803
+
804
+ ## Finding Details
805
+
806
+ | Severity | Category | Rule | Path | Line | Message |
807
+ | --- | --- | --- | --- | ---: | --- |
808
+ ${details}${truncated}
806
809
  `;
807
810
  }
808
811
  function summarizeStandards(filesScanned, findings) {
@@ -1 +1 @@
1
- {"version":3,"file":"EngineeringStandards.js","sourceRoot":"","sources":["../../src/workflow/EngineeringStandards.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AACnH,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAqO7E,MAAM,0BAA0B,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC,CAAA;AACnG,MAAM,2BAA2B,GAAG;IAClC,MAAM;IACN,QAAQ;IACR,cAAc;IACd,MAAM;IACN,OAAO;IACP,UAAU;IACV,cAAc;IACd,mBAAmB;IACnB,KAAK;IACL,MAAM;IACN,MAAM;IACN,OAAO;IACP,WAAW;IACX,KAAK;CACN,CAAA;AACD,MAAM,mCAAmC,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;AAC7E,MAAM,6BAA6B,GAAG,CAAC,kCAAkC,CAAC,CAAA;AAC1E,MAAM,wBAAwB,GAAG;IAC/B,UAAU;IACV,QAAQ;IACR,OAAO;IACP,aAAa;IACb,cAAc;IACd,QAAQ;IACR,eAAe;IACf,QAAQ;IACR,QAAQ;IACR,YAAY;IACZ,YAAY;CACb,CAAA;AACD,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC;IAChC,KAAK;IACL,MAAM;IACN,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,KAAK;IACL,OAAO;IACP,KAAK;IACL,KAAK;IACL,MAAM;IACN,KAAK;IACL,KAAK;IACL,MAAM;IACN,SAAS;CACV,CAAC,CAAA;AAEF,MAAM,UAAU,8BAA8B,CAAC,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,GAAG,QAAQ;IAC5F,OAAO,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,4BAA4B,CAAC,CAAA;AACjE,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,GAAG,QAAQ;IACnF,OAAO,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAA;AACtD,CAAC;AAED,MAAM,UAAU,gCAAgC,CAAC,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,GAAG,QAAQ;IAC9F,OAAO,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,qCAAqC,CAAC,CAAA;AAC1E,CAAC;AAED,MAAM,UAAU,kCAAkC;IAChD,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,OAAO,EAAE,CAAC;QACV,IAAI,EAAE,MAAM;QACZ,iBAAiB,EAAE,0BAA0B;QAC7C,kBAAkB,EAAE,2BAA2B;QAC/C,yBAAyB,EAAE,mCAAmC;QAC9D,mBAAmB,EAAE,6BAA6B;QAClD,YAAY,EAAE,GAAG;QACjB,OAAO,EAAE;YACP,eAAe,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAC;YACxE,eAAe,EAAE,wBAAwB;SAC1C;QACD,YAAY,EAAE;YACZ,eAAe,EAAE,IAAI;SACtB;QACD,aAAa,EAAE,EAAE;QACjB,sBAAsB,EAAE,EAAE;QAC1B,gBAAgB,EAAE,EAAE;KACrB,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAA;AACpB,CAAC;AAED,MAAM,UAAU,oCAAoC;IAClD,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,OAAO,EAAE,CAAC;QACV,WAAW,EAAE,EAAE;QACf,KAAK,EAAE,mHAAmH;QAC1H,QAAQ,EAAE,EAAE;KACb,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAA;AACpB,CAAC;AAED,MAAM,UAAU,yBAAyB;IACvC,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,OAAO,EAAE,CAAC;QACV,cAAc,EAAE,EAAE;QAClB,kBAAkB,EAAE,EAAE;QACtB,UAAU,EAAE,EAAE;QACd,GAAG,EAAE,EAAE;QACP,EAAE,EAAE;YACF,YAAY,EAAE,EAAE;YAChB,gBAAgB,EAAE,EAAE;YACpB,oBAAoB,EAAE,IAAI;SAC3B;QACD,YAAY,EAAE;YACZ,MAAM,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,gBAAgB,CAAC;YACpE,cAAc,EAAE,wDAAwD;SACzE;QACD,aAAa,EAAE,EAAE;KAClB,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAA;AACpB,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,GAAG,QAAQ;IAC5F,MAAM,IAAI,GAAG,8BAA8B,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;IACjE,MAAM,QAAQ,GAAa,EAAE,CAAA;IAC7B,IAAI,MAAM,GAAmC,EAAE,CAAA;IAC/C,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACrB,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAmC,CAAA;QACpF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,QAAQ,CAAC,IAAI,CAAC,kBAAkB,IAAI,KAAM,KAAe,CAAC,OAAO,4BAA4B,CAAC,CAAA;QAChG,CAAC;IACH,CAAC;SAAM,CAAC;QACN,QAAQ,CAAC,IAAI,CAAC,4CAA4C,IAAI,4BAA4B,CAAC,CAAA;IAC7F,CAAC;IACD,OAAO;QACL,OAAO,EAAE,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAChE,IAAI,EAAE,MAAM,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;QAChD,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,IAAI,0BAA0B;QACzE,kBAAkB,EAAE,MAAM,CAAC,kBAAkB,IAAI,2BAA2B;QAC5E,yBAAyB,EAAE,MAAM,CAAC,yBAAyB,IAAI,mCAAmC;QAClG,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,IAAI,6BAA6B;QAChF,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,GAAG;QACxC,OAAO,EAAE;YACP,eAAe,EAAE,MAAM,CAAC,OAAO,EAAE,eAAe,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAC;YAC3G,eAAe,EAAE,MAAM,CAAC,OAAO,EAAE,eAAe,IAAI,wBAAwB;SAC7E;QACD,YAAY,EAAE;YACZ,eAAe,EAAE,MAAM,CAAC,YAAY,EAAE,eAAe,IAAI,IAAI;SAC9D;QACD,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC;YAChD,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;YACxF,CAAC,CAAC,EAAE;QACN,sBAAsB,EAAE,6BAA6B,CAAC,MAAM,EAAE,QAAQ,CAAC;QACvE,gBAAgB,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC;YACtD,CAAC,CAAC,MAAM,CAAC,gBAAgB;iBACtB,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC;iBAChF,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACZ,GAAG,IAAI;gBACP,IAAI,EAAE,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;aAC5D,CAAC,CAAC;YACL,CAAC,CAAC,EAAE;QACN,QAAQ;KACT,CAAA;AACH,CAAC;AAED,MAAM,UAAU,gCAAgC,CAC9C,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,EAC1B,QAAQ,GAAG,QAAQ;IAEnB,MAAM,IAAI,GAAG,gCAAgC,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;IACnE,MAAM,QAAQ,GAAa,EAAE,CAAA;IAC7B,IAAI,MAAM,GAAqC,EAAE,CAAA;IACjD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAA;IACxD,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAqC,CAAA;IACtF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,QAAQ,CAAC,IAAI,CAAC,kBAAkB,IAAI,KAAM,KAAe,CAAC,OAAO,wCAAwC,CAAC,CAAA;QAC1G,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAA;IACnC,CAAC;IACD,OAAO;QACL,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC;YACtC,CAAC,CAAC,MAAM,CAAC,QAAQ;iBACd,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC;iBAChF,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACZ,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC9B,IAAI,EAAE,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;gBAC3D,MAAM,EAAE,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;aAClE,CAAC,CAAC;YACL,CAAC,CAAC,EAAE;QACN,QAAQ;KACT,CAAA;AACH,CAAC;AAED,SAAS,6BAA6B,CACpC,MAAsC,EACtC,QAAkB;IAElB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,sBAAsB,CAAC;QAAE,OAAO,EAAE,CAAA;IAC5D,MAAM,QAAQ,GAAiE,EAAE,CAAA;IACjF,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,sBAAsB,EAAE,CAAC;QACjD,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,SAAQ;QAC/C,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,SAAQ;QACzE,IAAI,OAAO,IAAI,CAAC,eAAe,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,cAAc,KAAK,QAAQ;YAAE,SAAQ;QACjG,MAAM,oBAAoB,GAAG,OAAO,IAAI,CAAC,eAAe,KAAK,QAAQ,IAAI,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;QAC3G,MAAM,mBAAmB,GAAG,OAAO,IAAI,CAAC,cAAc,KAAK,QAAQ,IAAI,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;QACxG,IAAI,CAAC,oBAAoB,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAClD,QAAQ,CAAC,IAAI,CAAC,4CAA4C,IAAI,CAAC,MAAM,gCAAgC,CAAC,CAAA;YACtG,SAAQ;QACV,CAAC;QACD,QAAQ,CAAC,IAAI,CAAC;YACZ,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,IAAI,EAAE,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;YAC3D,eAAe,EAAE,OAAO,IAAI,CAAC,eAAe,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS;YAC5F,cAAc,EAAE,OAAO,IAAI,CAAC,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS;YACzF,MAAM,EAAE,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;SAClE,CAAC,CAAA;IACJ,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,SAAS,YAAY,CAAC,OAAe;IACnC,IAAI,CAAC;QACH,IAAI,MAAM,CAAC,OAAO,CAAC,CAAA;QACnB,OAAO,IAAI,CAAA;IACb,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,EAC1B,QAAQ,GAAG,QAAQ,EACnB,GAAG,GAAG,IAAI,IAAI,EAAE;IAEhB,MAAM,IAAI,GAAG,qBAAqB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;IACxD,MAAM,QAAQ,GAA+B,EAAE,CAAA;IAC/C,IAAI,MAAM,GAA0B,EAAE,CAAA;IACtC,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACrB,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAA0B,CAAA;QAC3E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,QAAQ,CAAC,IAAI,CAAC;gBACZ,MAAM,EAAE,4BAA4B;gBACpC,OAAO,EAAE,kBAAkB,IAAI,KAAM,KAAe,CAAC,OAAO,kCAAkC;aAC/F,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IACD,MAAM,cAAc,GAAG,OAAO,MAAM,CAAC,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAA;IACpG,MAAM,kBAAkB,GAAG,OAAO,MAAM,CAAC,kBAAkB,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS,CAAA;IAChH,IAAI,cAAc,IAAI,kBAAkB,IAAI,uBAAuB,CAAC,cAAc,EAAE,kBAAkB,EAAE,GAAG,CAAC,EAAE,CAAC;QAC7G,QAAQ,CAAC,IAAI,CAAC;YACZ,MAAM,EAAE,0BAA0B;YAClC,OAAO,EAAE,0CAA0C,cAAc,wBAAwB,kBAAkB,QAAQ;SACpH,CAAC,CAAA;IACJ,CAAC;IACD,OAAO;QACL,OAAO,EAAE,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAChE,cAAc;QACd,kBAAkB;QAClB,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC;YAChD,CAAC,CAAC,MAAM,CAAC,aAAa;iBACnB,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;iBACzE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACZ,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ,KAAK,MAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM;oBACxF,CAAC,CAAC,IAAI,CAAC,QAAQ;oBACf,CAAC,CAAC,MAAM;gBACV,MAAM,EAAE,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;gBACjE,WAAW,EAAE,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;aACjF,CAAC,CAAC;YACL,CAAC,CAAC,EAAE;QACN,QAAQ;KACT,CAAA;AACH,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,UAA2C,EAAE;IACpF,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,EAAE,CAAA;IACtD,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,QAAQ,CAAA;IAC7C,MAAM,MAAM,GAAG,8BAA8B,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;IACnE,MAAM,gBAAgB,GAAG,gCAAgC,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;IAC/E,MAAM,gBAAgB,GAAG,CAAC,GAAG,MAAM,CAAC,gBAAgB,EAAE,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAA;IACnF,MAAM,UAAU,GAAG,qBAAqB,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,CAAA;IAC3E,MAAM,KAAK,GAAG,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,CAAA;IACvE,MAAM,QAAQ,GAAG,KAAK;SACnB,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;SAC/D,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,uBAAuB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;SACxD,MAAM,CAAC,OAAO,CAAC,EAAE,CAChB,CAAC,uBAAuB,CAAC,OAAO,EAAE,MAAM,CAAC;QACzC,CAAC,OAAO,CAAC,uBAAuB,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC,CACnF,CAAA;IACH,OAAO;QACL,UAAU;QACV,UAAU,EAAE,8BAA8B,CAAC,UAAU,EAAE,QAAQ,CAAC;QAChE,YAAY,EAAE,gCAAgC,CAAC,UAAU,EAAE,QAAQ,CAAC;QACpE,cAAc,EAAE,qBAAqB,CAAC,UAAU,EAAE,QAAQ,CAAC;QAC3D,MAAM;QACN,UAAU;QACV,QAAQ;QACR,OAAO,EAAE,kBAAkB,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC;QACnD,QAAQ,EAAE,CAAC,GAAG,MAAM,CAAC,QAAQ,EAAE,GAAG,gBAAgB,CAAC,QAAQ,EAAE,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;KACrH,CAAA;AACH,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,UAA2C,EAAE;IACtF,MAAM,IAAI,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAA;IAC9C,MAAM,qBAAqB,GAAiC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC/F,QAAQ,EAAE,MAAM;QAChB,QAAQ,EAAE,WAAW;QACrB,MAAM,EAAE,0BAA0B;QAClC,IAAI,EAAE,IAAI,CAAC,UAAU;QACrB,OAAO;QACP,GAAG,EAAE,0DAA0D;KAChE,CAAC,CAAC,CAAA;IACH,MAAM,wBAAwB,GAAiC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACtG,QAAQ,EAAE,MAAM;QAChB,QAAQ,EAAE,WAAW;QACrB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,IAAI,EAAE,IAAI,CAAC,cAAc;QACzB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,GAAG,EAAE,8DAA8D;KACpE,CAAC,CAAC,CAAA;IACH,MAAM,QAAQ,GAAG,CAAC,GAAG,qBAAqB,EAAE,GAAG,wBAAwB,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC1F,OAAO;QACL,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,KAAK,MAAM,CAAC;QAC1D,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,QAAQ;QACR,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE;KAC5B,CAAA;AACH,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,UAA6C,EAAE;IACxF,MAAM,MAAM,GAAG,0BAA0B,CAAC,OAAO,CAAC,CAAA;IAClD,MAAM,mBAAmB,GAAG,OAAO,CAAC,YAAY;QAC9C,CAAC,CAAC,qBAAqB,CAAC;YACtB,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,EAAE;YAC/C,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,MAAM;SACP,CAAC;QACF,CAAC,CAAC,SAAS,CAAA;IACb,OAAO;QACL,EAAE,EAAE,MAAM,CAAC,EAAE;QACb,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,mBAAmB;QACnB,MAAM;KACP,CAAA;AACH,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,UAA+C,EAAE;IAC5F,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,EAAE,CAAA;IACtD,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,QAAQ,CAAA;IAC7C,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,uDAAuD,CAAA;IACxF,MAAM,IAAI,GAAG,wBAAwB,CAAC;QACpC,GAAG,OAAO;QACV,UAAU;QACV,QAAQ;QACR,YAAY,EAAE,SAAS;QACvB,uBAAuB,EAAE,IAAI;KAC9B,CAAC,CAAA;IACF,MAAM,eAAe,GAAG,2BAA2B,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;IAC1E,MAAM,IAAI,GAAG,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC5E,MAAM,YAAY,GAAG,gCAAgC,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;IAC3E,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;QAC1B,0BAA0B,CAAC;YACzB,UAAU;YACV,QAAQ;YACR,YAAY;YACZ,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,MAAM;YACN,OAAO,EAAE,eAAe;SACzB,CAAC,CAAA;IACJ,CAAC;IACD,MAAM,cAAc,GAAG,OAAO,CAAC,YAAY;QACzC,CAAC,CAAC,qBAAqB,CAAC;YACtB,UAAU;YACV,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,aAAa,EAAE,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;YAC7C,YAAY;YACZ,eAAe;YACf,IAAI;YACJ,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,IAAI,GAAG;SACxD,CAAC;QACF,CAAC,CAAC,SAAS,CAAA;IACb,OAAO;QACL,EAAE,EAAE,IAAI;QACR,UAAU;QACV,YAAY;QACZ,cAAc;QACd,aAAa,EAAE,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;QAC7C,eAAe;QACf,IAAI;QACJ,IAAI;QACJ,QAAQ,EAAE,IAAI,CAAC,QAAQ;KACxB,CAAA;AACH,CAAC;AAED,SAAS,QAAQ,CACf,UAAkB,EAClB,YAAoB,EACpB,MAA0C,EAC1C,UAAqC;IAErC,MAAM,IAAI,GAAG,aAAa,CAAC,QAAQ,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAA;IAC9D,MAAM,OAAO,GAAG,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;IACnD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IACpC,MAAM,QAAQ,GAAiC,EAAE,CAAA;IAEjD,IAAI,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC;QACvC,QAAQ,CAAC,IAAI,CAAC;YACZ,QAAQ,EAAE,MAAM;YAChB,QAAQ,EAAE,cAAc;YACxB,MAAM,EAAE,mBAAmB;YAC3B,IAAI;YACJ,OAAO,EAAE,mBAAmB,KAAK,CAAC,MAAM,iBAAiB,MAAM,CAAC,YAAY,GAAG;YAC/E,GAAG,EAAE,0EAA0E;SAChF,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACrD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAA;QACzB,IAAI,0BAA0B,CAAC,IAAI,CAAC;YAAE,SAAQ;QAC9C,MAAM,UAAU,GAAG,KAAK,GAAG,CAAC,CAAA;QAC5B,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAA;IACxE,CAAC;IACD,QAAQ,CAAC,IAAI,CAAC,GAAG,oBAAoB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAA;IACnD,OAAO,cAAc,CAAC,QAAQ,CAAC,CAAA;AACjC,CAAC;AAED,SAAS,QAAQ,CACf,IAAY,EACZ,IAAY,EACZ,UAAkB,EAClB,MAA0C,EAC1C,UAAqC;IAErC,MAAM,QAAQ,GAAiC,EAAE,CAAA;IACjD,MAAM,gBAAgB,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAA;IACtD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;IAE1C,QAAQ,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAA;IAEjF,IAAI,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC;QACpC,QAAQ,CAAC,IAAI,CAAC;YACZ,QAAQ,EAAE,MAAM;YAChB,QAAQ,EAAE,UAAU;YACpB,MAAM,EAAE,kBAAkB;YAC1B,IAAI;YACJ,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,sDAAsD;YAC/D,QAAQ;YACR,GAAG,EAAE,2GAA2G;SACjH,CAAC,CAAA;IACJ,CAAC;IAED,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,IAAI,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAChF,QAAQ,CAAC,IAAI,CAAC;YACZ,QAAQ,EAAE,MAAM;YAChB,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,eAAe;YACvB,IAAI;YACJ,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,6CAA6C;YACtD,QAAQ;YACR,GAAG,EAAE,gFAAgF;SACtF,CAAC,CAAA;IACJ,CAAC;SAAM,IAAI,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC;QACtE,QAAQ,CAAC,IAAI,CAAC;YACZ,QAAQ,EAAE,MAAM;YAChB,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,oBAAoB;YAC5B,IAAI;YACJ,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,wEAAwE;YACjF,QAAQ;YACR,GAAG,EAAE,sFAAsF;SAC5F,CAAC,CAAA;IACJ,CAAC;IAED,IAAI,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,QAAQ,CAAC,IAAI,CAAC;YACZ,QAAQ,EAAE,MAAM;YAChB,QAAQ,EAAE,UAAU;YACpB,MAAM,EAAE,sBAAsB;YAC9B,IAAI;YACJ,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,mDAAmD;YAC5D,QAAQ;YACR,GAAG,EAAE,uFAAuF;SAC7F,CAAC,CAAA;IACJ,CAAC;IAED,IAAI,8DAA8D,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9E,QAAQ,CAAC,IAAI,CAAC;YACZ,QAAQ,EAAE,MAAM;YAChB,QAAQ,EAAE,UAAU;YACpB,MAAM,EAAE,kBAAkB;YAC1B,IAAI;YACJ,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,uCAAuC;YAChD,QAAQ;YACR,GAAG,EAAE,yEAAyE;SAC/E,CAAC,CAAA;IACJ,CAAC;IAED,IAAI,iCAAiC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACjD,QAAQ,CAAC,IAAI,CAAC;YACZ,QAAQ,EAAE,MAAM;YAChB,QAAQ,EAAE,UAAU;YACpB,MAAM,EAAE,uBAAuB;YAC/B,IAAI;YACJ,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,mCAAmC;YAC5C,QAAQ;YACR,GAAG,EAAE,oFAAoF;SAC1F,CAAC,CAAA;IACJ,CAAC;IAED,IAAI,kCAAkC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAClD,QAAQ,CAAC,IAAI,CAAC;YACZ,QAAQ,EAAE,MAAM;YAChB,QAAQ,EAAE,cAAc;YACxB,MAAM,EAAE,WAAW;YACnB,IAAI;YACJ,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,mDAAmD;YAC5D,QAAQ;YACR,GAAG,EAAE,+EAA+E;SACrF,CAAC,CAAA;IACJ,CAAC;IAED,IAAI,4EAA4E,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5F,QAAQ,CAAC,IAAI,CAAC;YACZ,QAAQ,EAAE,MAAM;YAChB,QAAQ,EAAE,cAAc;YACxB,MAAM,EAAE,aAAa;YACrB,IAAI;YACJ,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,wDAAwD;YACjE,QAAQ;YACR,GAAG,EAAE,+DAA+D;SACrE,CAAC,CAAA;IACJ,CAAC;IAED,IAAI,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,uDAAuD,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3G,QAAQ,CAAC,IAAI,CAAC;YACZ,QAAQ,EAAE,MAAM;YAChB,QAAQ,EAAE,UAAU;YACpB,MAAM,EAAE,4BAA4B;YACpC,IAAI;YACJ,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,kDAAkD;YAC3D,QAAQ;YACR,GAAG,EAAE,+CAA+C;SACrD,CAAC,CAAA;IACJ,CAAC;IAED,IAAI,MAAM,CAAC,YAAY,CAAC,eAAe,IAAI,gBAAgB,CAAC,IAAI,CAAC,IAAI,uBAAuB,CAAC,IAAI,CAAC,EAAE,CAAC;QACnG,QAAQ,CAAC,IAAI,CAAC;YACZ,QAAQ,EAAE,MAAM;YAChB,QAAQ,EAAE,cAAc;YACxB,MAAM,EAAE,uBAAuB;YAC/B,IAAI;YACJ,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,+DAA+D;YACxE,QAAQ;YACR,GAAG,EAAE,6FAA6F;SACnG,CAAC,CAAA;IACJ,CAAC;IAED,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAY,EAAE,KAAe;IACzD,MAAM,QAAQ,GAAiC,EAAE,CAAA;IACjD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACrD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAA;QACzB,IAAI,4DAA4D,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5E,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;YACvD,SAAQ;QACV,CAAC;QACD,IAAI,CAAC,iCAAiC,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,SAAQ;QAC3D,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC;YACrD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;YAC3B,IAAI,OAAO,KAAK,EAAE,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,SAAQ;YAC/G,IAAI,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC;gBAAE,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;YACzF,MAAK;QACP,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAY,EAAE,IAAY,EAAE,IAAY;IACjE,OAAO;QACL,QAAQ,EAAE,MAAM;QAChB,QAAQ,EAAE,cAAc;QACxB,MAAM,EAAE,aAAa;QACrB,IAAI;QACJ,IAAI;QACJ,OAAO,EAAE,mDAAmD;QAC5D,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;QACnC,GAAG,EAAE,wFAAwF;KAC9F,CAAA;AACH,CAAC;AAED,SAAS,eAAe,CAAC,UAAkB,EAAE,MAA0C,EAAE,YAAuB;IAC9G,IAAI,YAAY;QAAE,OAAO,sBAAsB,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,CAAC,CAAA;IACjF,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,iBAAiB,EAAE,CAAC;QACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;QAC5C,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;YAAE,SAAQ;QACnC,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,CAAA;IAC3C,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,sBAAsB,CAAC,UAAkB,EAAE,MAA0C,EAAE,YAAsB;IACpH,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;IAC9B,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;QACvC,MAAM,UAAU,GAAG,oBAAoB,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;QAChE,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC;YAAE,SAAQ;QACjD,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;QACpB,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC;YAAE,SAAQ;QACvE,IAAI,CAAC,sBAAsB,CAAC,UAAU,EAAE,MAAM,CAAC;YAAE,SAAQ;QACzD,IAAI,aAAa,CAAC,UAAU,EAAE,MAAM,CAAC;YAAE,SAAQ;QAC/C,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,EAAE,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAA;QAC9D,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE;YAAE,SAAQ;QACnE,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,IAAI,IAAI,GAAG,IAAI;YAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAClE,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,oBAAoB,CAAC,UAAkB,EAAE,IAAY;IAC5D,MAAM,YAAY,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IACzE,MAAM,UAAU,GAAG,aAAa,CAAC,YAAY,CAAC,CAAA;IAC9C,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,CAAA;IACzD,OAAO,UAAU,CAAA;AACnB,CAAC;AAED,SAAS,sBAAsB,CAAC,IAAY,EAAE,MAA0C;IACtF,OAAO,MAAM,CAAC,iBAAiB;SAC5B,GAAG,CAAC,aAAa,CAAC;SAClB,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC,CAAA;AAC9E,CAAC;AAED,SAAS,aAAa,CAAC,IAAY,EAAE,MAA0C;IAC7E,OAAO,MAAM,CAAC,kBAAkB;SAC7B,GAAG,CAAC,aAAa,CAAC;SAClB,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,OAAO,GAAG,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAA;AAC7G,CAAC;AAED,SAAS,IAAI,CAAC,GAAW,EAAE,UAAkB,EAAE,MAA0C,EAAE,KAAe;IACxG,KAAK,MAAM,KAAK,IAAI,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;QAC9D,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;QACtC,MAAM,GAAG,GAAG,aAAa,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAA;QACzD,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;YACxB,IAAI,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,KAAK,aAAa,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC;gBAAE,SAAQ;YACjK,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,CAAA;QAC3C,CAAC;aAAM,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;YACtF,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,IAAI,IAAI,GAAG,IAAI;gBAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAClE,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,OAK9B;IACC,MAAM,GAAG,GAAG,UAAU,CAAC,OAAO,CAAC,YAAY,CAAC;QAC1C,CAAC,CAAC,OAAO,CAAC,YAAY;QACtB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,YAAY,CAAC,CAAA;IACrD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IACzD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,qBAAqB,CAAC,CAAA;IAC7C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,aAAa,CAAC,IAAI,EAAE,wBAAwB,EAAE,OAAO,CAAC,CAAA;IAC7E,cAAc,CAAC,IAAI,EAAE,2BAA2B,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAA;IAC1F,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,2BAA2B,CAAC,MAA0B,EAAE,MAAwC;IACvG,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM;QACrC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,OAAO,CAAC,MAAM,MAAM,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,OAAO,CAAC,IAAI,IAAI,EAAE,MAAM,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAC/L,CAAC,CAAC,iEAAiE,CAAA;IACrE,OAAO;8CACqC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;;QAE9D,MAAM,IAAI,aAAa;UACrB,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;;;;oBAItB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY;qBAC/B,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa;wBAC9B,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB;;;;EAI1D,QAAQ;CACT,CAAA;AACD,CAAC;AAED,SAAS,2BAA2B,CAAC,QAAsC,EAAE,MAAc;IACzF,MAAM,OAAO,GAAG,IAAI,GAAG,EAA6C,CAAA;IACpE,KAAK,MAAM,OAAO,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;QAC1D,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QACxC,MAAM,GAAG,GAAG,GAAG,OAAO,CAAC,MAAM,KAAK,IAAI,KAAK,OAAO,CAAC,IAAI,IAAI,EAAE,EAAE,CAAA;QAC/D,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,SAAQ;QAC9B,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE;YACf,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,IAAI;YACJ,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,MAAM;YACN,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB,CAAC,CAAA;IACJ,CAAC;IACD,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;AAC9B,CAAC;AAED,SAAS,0BAA0B,CAAC,OAOnC;IACC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC1E,aAAa,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC;QACjD,OAAO,EAAE,CAAC;QACV,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACrC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,KAAK,EAAE,mHAAmH;QAC1H,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACtC,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;YACzD,MAAM,EAAE,KAAK,CAAC,MAAM;SACrB,CAAC,CAAC;KACJ,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAA;AAC9B,CAAC;AAED,SAAS,qBAAqB,CAAC,YAAoB,EAAE,QAAsC;IACzF,MAAM,UAAU,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAA;IAChD,MAAM,UAAU,GAAG,wBAAwB,EAAE,CAAA;IAC7C,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAA;IACvC,MAAM,MAAM,GAAsD,EAAE,CAAA;IACpE,MAAM,MAAM,GAAG,IAAI,GAAG,EAA6C,CAAA;IACnE,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QACjC,kBAAkB,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAA;QAClE,kBAAkB,CAAC,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAA;QAC9E,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,cAAc,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAA;QAC9E,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAA;QAC5D,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,cAAc,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAA;QACzF,kBAAkB,CAAC,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAA;QAC/C,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;IACrC,CAAC;IACD,OAAO;QACL,YAAY;QACZ,aAAa,EAAE,QAAQ,CAAC,MAAM;QAC9B,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,MAAM;QAChF,UAAU;QACV,OAAO;QACP,UAAU;QACV,MAAM;QACN,QAAQ,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;aAC3B,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;aACjE,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;KAChB,CAAA;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,OAU9B;IACC,MAAM,GAAG,GAAG,UAAU,CAAC,OAAO,CAAC,YAAY,CAAC;QAC1C,CAAC,CAAC,OAAO,CAAC,YAAY;QACtB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,YAAY,CAAC,CAAA;IACrD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IACzD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,0BAA0B,CAAC,CAAA;IAClD,aAAa,CAAC,IAAI,EAAE,kBAAkB,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAA;IACzD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,kBAAkB,CAAC,OAQ3B;IACC,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC;SACvD,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;SACtC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,QAAQ,MAAM,KAAK,CAAC,KAAK,MAAM,KAAK,CAAC,QAAQ,MAAM,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC;SAClH,IAAI,CAAC,IAAI,CAAC,IAAI,0BAA0B,CAAA;IAC3C,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;SAChD,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;SACtC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,MAAM,KAAK,CAAC,KAAK,MAAM,KAAK,CAAC,QAAQ,MAAM,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC;SAC5G,IAAI,CAAC,IAAI,CAAC,IAAI,0BAA0B,CAAA;IAC3C,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;SAC9C,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;SACzC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,MAAM,MAAM,KAAK,CAAC,QAAQ,MAAM,KAAK,CAAC,KAAK,MAAM,KAAK,CAAC,QAAQ,MAAM,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC;SAClI,IAAI,CAAC,IAAI,CAAC,IAAI,iCAAiC,CAAA;IAClD,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ;SAChC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,KAAK,MAAM,KAAK,CAAC,QAAQ,MAAM,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC;SAClH,IAAI,CAAC,IAAI,CAAC,IAAI,0BAA0B,CAAA;IAC3C,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAA;IAC5D,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ;SAC7B,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC;SACrB,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,OAAO,CAAC,QAAQ,MAAM,OAAO,CAAC,MAAM,MAAM,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,OAAO,CAAC,IAAI,IAAI,EAAE,MAAM,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;SACxL,IAAI,CAAC,IAAI,CAAC,IAAI,wEAAwE,CAAA;IACzF,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,WAAW;QACrD,CAAC,CAAC,gCAAgC,WAAW,OAAO,OAAO,CAAC,QAAQ,CAAC,MAAM,oEAAoE;QAC/I,CAAC,CAAC,EAAE,CAAA;IACN,OAAO;;aAEI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QAC7B,OAAO,CAAC,MAAM,IAAI,aAAa;oBACnB,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;iBACvC,OAAO,CAAC,YAAY;oBACjB,OAAO,CAAC,eAAe,CAAC,MAAM;;;;;;oBAM9B,OAAO,CAAC,IAAI,CAAC,YAAY;qBACxB,OAAO,CAAC,IAAI,CAAC,aAAa;wBACvB,OAAO,CAAC,IAAI,CAAC,gBAAgB;eACtC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI;WAChC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI;;;;;;EAMrC,UAAU;;;;;;EAMV,MAAM;;;;;;EAMN,KAAK;;;;;;EAML,KAAK;;;;;;EAML,OAAO,GAAG,SAAS;CACpB,CAAA;AACD,CAAC;AAED,SAAS,kBAAkB,CAAC,YAAoB,EAAE,QAAsC;IACtF,MAAM,UAAU,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAA;IAChD,MAAM,UAAU,GAAG,oBAAoB,EAAE,CAAA;IACzC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QACjC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;IACnC,CAAC;IACD,OAAO;QACL,YAAY;QACZ,aAAa,EAAE,QAAQ,CAAC,MAAM;QAC9B,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,MAAM;QAChF,UAAU;QACV,UAAU;KACX,CAAA;AACH,CAAC;AAED,SAAS,oBAAoB;IAC3B,OAAO;QACL,OAAO,EAAE,CAAC;QACV,QAAQ,EAAE,CAAC;QACX,QAAQ,EAAE,CAAC;QACX,YAAY,EAAE,CAAC;QACf,cAAc,EAAE,CAAC;QACjB,SAAS,EAAE,CAAC;QACZ,OAAO,EAAE,CAAC;QACV,IAAI,EAAE,CAAC;KACR,CAAA;AACH,CAAC;AAED,SAAS,wBAAwB;IAC/B,OAAO;QACL,OAAO,EAAE,cAAc,EAAE;QACzB,QAAQ,EAAE,cAAc,EAAE;QAC1B,QAAQ,EAAE,cAAc,EAAE;QAC1B,YAAY,EAAE,cAAc,EAAE;QAC9B,cAAc,EAAE,cAAc,EAAE;QAChC,SAAS,EAAE,cAAc,EAAE;QAC3B,OAAO,EAAE,cAAc,EAAE;QACzB,IAAI,EAAE,cAAc,EAAE;KACvB,CAAA;AACH,CAAC;AAED,SAAS,qBAAqB;IAC5B,OAAO;QACL,UAAU,EAAE,cAAc,EAAE;QAC5B,IAAI,EAAE,cAAc,EAAE;QACtB,SAAS,EAAE,cAAc,EAAE;KAC5B,CAAA;AACH,CAAC;AAED,SAAS,cAAc;IACrB,OAAO;QACL,KAAK,EAAE,CAAC;QACR,QAAQ,EAAE,CAAC;QACX,IAAI,EAAE,CAAC;QACP,IAAI,EAAE,CAAC;KACR,CAAA;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAY;IACrC,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAA;IACpD,IACE,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC7B,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC9B,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC;QACjC,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC9B,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC;QAClC,UAAU,CAAC,QAAQ,CAAC,6BAA6B,CAAC;QAClD,UAAU,CAAC,QAAQ,CAAC,kBAAkB,CAAC;QACvC,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC9B,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,EACjC,CAAC;QACD,OAAO,WAAW,CAAA;IACpB,CAAC;IACD,IACE,yCAAyC,CAAC,IAAI,CAAC,UAAU,CAAC;QAC1D,8BAA8B,CAAC,IAAI,CAAC,UAAU,CAAC;QAC/C,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC;QAChC,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,EACjC,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IACD,OAAO,YAAY,CAAA;AACrB,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAoC,EAAE,QAAqC;IACrG,KAAK,CAAC,KAAK,IAAI,CAAC,CAAA;IAChB,IAAI,QAAQ,KAAK,MAAM;QAAE,KAAK,CAAC,QAAQ,IAAI,CAAC,CAAA;IAC5C,IAAI,QAAQ,KAAK,MAAM;QAAE,KAAK,CAAC,IAAI,IAAI,CAAC,CAAA;IACxC,IAAI,QAAQ,KAAK,MAAM;QAAE,KAAK,CAAC,IAAI,IAAI,CAAC,CAAA;AAC1C,CAAC;AAED,SAAS,eAAe,CAAC,CAA6B,EAAE,CAA6B;IACnF,OAAO,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC;QACjC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC;QAChC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;QAC7B,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;AACtC,CAAC;AAED,SAAS,uBAAuB,CAC9B,OAAmC,EACnC,MAA0C;IAE1C,IAAI,OAAO,CAAC,QAAQ,KAAK,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,OAAO,CAAA;IACjG,OAAO;QACL,GAAG,OAAO;QACV,QAAQ,EAAE,MAAM;QAChB,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,uCAAuC;KACnE,CAAA;AACH,CAAC;AAED,SAAS,iBAAiB,CACxB,IAAY,EACZ,IAAY,EACZ,UAAkB,EAClB,QAAgB,EAChB,UAAqC;IAErC,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,CAAA;IACtD,OAAO,UAAU,CAAC,aAAa;SAC5B,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;SAChD,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACZ,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,MAAM;QACjC,QAAQ,EAAE,WAAW;QACrB,MAAM,EAAE,eAAe;QACvB,IAAI;QACJ,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,gBAAgB,IAAI,CAAC,MAAM,oCAAoC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;QAC9G,QAAQ;QACR,GAAG,EAAE,IAAI,CAAC,WAAW;YACnB,CAAC,CAAC,OAAO,IAAI,CAAC,WAAW,WAAW;YACpC,CAAC,CAAC,8FAA8F;KACnG,CAAC,CAAC,CAAA;AACP,CAAC;AAED,SAAS,aAAa,CAAC,IAAY,EAAE,MAAc;IACjD,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,CAAA;IACnC,MAAM,cAAc,GAAG,YAAY,CAAA;IACnC,OAAO,IAAI,MAAM,CAAC,kBAAkB,OAAO,GAAG,cAAc,6BAA6B,OAAO,GAAG,cAAc,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACjI,CAAC;AAED,SAAS,uBAAuB,CAAC,cAAsB,EAAE,kBAA0B,EAAE,GAAS;IAC5F,MAAM,UAAU,GAAG,IAAI,IAAI,CAAC,GAAG,cAAc,YAAY,CAAC,CAAA;IAC1D,IAAI,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,IAAI,kBAAkB,IAAI,CAAC;QAAE,OAAO,KAAK,CAAA;IAC/E,OAAO,GAAG,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,OAAO,EAAE,GAAG,kBAAkB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;AACxF,CAAC;AAED,SAAS,qBAAqB,CAAC,MAA0C;IACvE,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACxE,OAAO,IAAI,MAAM,CAAC,SAAS,MAAM,MAAM,EAAE,GAAG,CAAC,CAAA;AAC/C,CAAC;AAED,SAAS,SAAS,CAAC,IAAY;IAC7B,OAAO,uKAAuK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAC3L,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAY;IACrC,OAAO,8KAA8K,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAClM,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAY,EAAE,MAA0C;IACjF,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACxE,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,aAAa,MAAM,+CAA+C,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC5G,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAA;IACxB,OAAO,CAAC,wEAAwE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;AACjG,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAY;IACxC,OAAO,6CAA6C,CAAC,IAAI,CAAC,IAAI,CAAC;QAC7D,oDAAoD,CAAC,IAAI,CAAC,IAAI,CAAC;QAC/D,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AACvE,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAY,EAAE,MAA0C;IAChF,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,CAAA;IACtC,IAAI,MAAM,CAAC,mBAAmB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAE,OAAO,IAAI,CAAA;IACnF,OAAO,MAAM,CAAC,yBAAyB;SACpC,GAAG,CAAC,aAAa,CAAC;SAClB,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,UAAU,KAAK,MAAM,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC,CAAA;AACjF,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAY;IACpC,OAAO,yEAAyE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAC7F,CAAC;AAED,SAAS,uBAAuB,CAAC,IAAY;IAC3C,OAAO,iMAAiM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACrN,CAAC;AAED,SAAS,0BAA0B,CAAC,IAAY;IAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;IAC3B,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC;QAAE,OAAO,IAAI,CAAA;IACvF,OAAO,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC;QACzC,+BAA+B,CAAC,IAAI,CAAC,OAAO,CAAC;QAC7C,oCAAoC,CAAC,IAAI,CAAC,OAAO,CAAC;QAClD,6CAA6C,CAAC,IAAI,CAAC,OAAO,CAAC;QAC3D,oCAAoC,CAAC,IAAI,CAAC,OAAO,CAAC;QAClD,iCAAiC,CAAC,IAAI,CAAC,OAAO,CAAC;QAC/C,wCAAwC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;AAC1D,CAAC;AAED,SAAS,uBAAuB,CAC9B,OAAmC,EACnC,MAA0C;IAE1C,OAAO,MAAM,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QAC/C,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM;YAAE,OAAO,KAAK,CAAA;QAChD,IAAI,IAAI,CAAC,IAAI,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC;YAAE,OAAO,KAAK,CAAA;QACvF,IAAI,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;YAAE,OAAO,KAAK,CAAA;QACxG,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;YAAE,OAAO,KAAK,CAAA;QAC/F,OAAO,IAAI,CAAA;IACb,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,iBAAiB,CACxB,OAAmC,EACnC,gBAAwE;IAExE,OAAO,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAClC,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM;QAC9B,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC;QACxD,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CACxD,CAAA;AACH,CAAC;AAED,SAAS,cAAc,CAAC,QAAsC;IAC5D,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;IAC9B,OAAO,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE;QAC/B,MAAM,GAAG,GAAG,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,IAAI,CAAC,EAAE,CAAA;QACpE,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO,KAAK,CAAA;QAC/B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACb,OAAO,IAAI,CAAA;IACb,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,IAAY;IACjC,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;AACvD,CAAC;AAED,SAAS,WAAW,CAAC,KAAa;IAChC,OAAO,KAAK,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAA;AACrD,CAAC;AAED,SAAS,UAAU,CAAC,KAAa;IAC/B,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;AAC3D,CAAC"}
1
+ {"version":3,"file":"EngineeringStandards.js","sourceRoot":"","sources":["../../src/workflow/EngineeringStandards.ts"],"names":[],"mappings":"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"}