@securecode-ai/mcp 0.9.1 → 0.10.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"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"}
@@ -77,6 +77,9 @@ export declare function readScanCache(workspaceRoot: string): ScanCacheData | nu
77
77
  /**
78
78
  * Look up a cached scan result by file path + content hash.
79
79
  * Returns null if not found, expired, or version mismatch.
80
+ * Non-completed results (incomplete, failed, cancelled, or legacy statuses
81
+ * downgraded to one of those) are never served — they are treated as a
82
+ * cache miss and re-scanned.
80
83
  */
81
84
  export declare function getCachedScan(workspaceRoot: string, filePath: string, content: string): ScanCacheEntry | null;
82
85
  /**
@@ -107,6 +107,9 @@ function readScanCache(workspaceRoot) {
107
107
  /**
108
108
  * Look up a cached scan result by file path + content hash.
109
109
  * Returns null if not found, expired, or version mismatch.
110
+ * Non-completed results (incomplete, failed, cancelled, or legacy statuses
111
+ * downgraded to one of those) are never served — they are treated as a
112
+ * cache miss and re-scanned.
110
113
  */
111
114
  function getCachedScan(workspaceRoot, filePath, content) {
112
115
  const cache = readScanCache(workspaceRoot);
@@ -127,17 +130,22 @@ function getCachedScan(workspaceRoot, filePath, content) {
127
130
  // Old entries used 'capped', 'degraded', 'spawn_failed', 'blocked_recovery'
128
131
  // which no longer exist. A 'completed' entry without terminationReason
129
132
  // 'agent_finish' was actually an incomplete scan (blocked_read_recovery or
130
- // capped under the old naming).
133
+ // capped under the old naming). Downgraded entries fall through to the
134
+ // guard below and are rejected like any other non-completed result.
135
+ let normalized = entry;
131
136
  if (entry.status === 'capped' || entry.status === 'degraded' || entry.status === 'blocked_recovery') {
132
- return { ...entry, status: 'incomplete' };
137
+ normalized = { ...entry, status: 'incomplete' };
133
138
  }
134
- if (entry.status === 'spawn_failed') {
135
- return { ...entry, status: 'failed' };
139
+ else if (entry.status === 'spawn_failed') {
140
+ normalized = { ...entry, status: 'failed' };
136
141
  }
137
- if (entry.status === 'completed' && entry.terminationReason !== 'agent_finish') {
138
- return { ...entry, status: 'incomplete' };
142
+ else if (entry.status === 'completed' && entry.terminationReason !== 'agent_finish') {
143
+ normalized = { ...entry, status: 'incomplete' };
139
144
  }
140
- return entry;
145
+ // Never serve non-completed results — treat as a miss so the file is re-scanned.
146
+ if (normalized.status !== 'completed')
147
+ return null;
148
+ return normalized;
141
149
  }
142
150
  /**
143
151
  * Write a scan result to the cache. Merges with existing entries.
@@ -1 +1 @@
1
- {"version":3,"file":"scanCache.js","sourceRoot":"","sources":["../../src/project-map/scanCache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scanCache.js","sourceRoot":"","sources":["../../src/project-map/scanCache.ts"],"names":[],"mappings":"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"}
@@ -26,6 +26,14 @@ interface ProvenFinding extends AgentScanFinding {
26
26
  fixStatus?: 'fix-generated' | 'fix-denied' | 'fix-error' | 'fix-verified-closed' | 'fix-still-vulnerable' | 'fix-verification-inconclusive' | 'fix-syntax-invalid';
27
27
  fixDeniedReason?: string;
28
28
  fixApprovalId?: string;
29
+ /** How many fix-generation attempts ran (1 = single, 2 = one regeneration after a failed verification). */
30
+ fixAttempts?: number;
31
+ /** Cheap local differential check on the merged fix (tree-sitter based). */
32
+ fixQuality?: {
33
+ passes: boolean;
34
+ newVulnerabilities: string[];
35
+ regressions: string[];
36
+ };
29
37
  /** Sub-verdict from the verify loop — used to map to a review reason. */
30
38
  verifySubVerdict?: string;
31
39
  /** Human review queue status for INCONCLUSIVE findings. */
@@ -66,6 +66,8 @@ const agentScanLoop_1 = require("../attack/agentScanLoop");
66
66
  const agentScanCoordinator_1 = require("../attack/agentScanCoordinator");
67
67
  const verifyLoop_1 = require("../attack/verifyLoop");
68
68
  const fixVerifyLoop_1 = require("../attack/fixVerifyLoop");
69
+ const fixCodeMerge_1 = require("../attack/fixCodeMerge");
70
+ const fixTester_1 = require("../project-map/fixTester");
69
71
  const runtimeProbe_1 = require("../attack/runtimeProbe");
70
72
  const runtimeDetect_1 = require("../utils/runtimeDetect");
71
73
  const agentScanProtocol_1 = require("../attack/agentScanProtocol");
@@ -302,10 +304,12 @@ async function toolAgentScanInner(ctx, args) {
302
304
  catch {
303
305
  // best-effort — proceed without memory
304
306
  }
305
- // 2c. Check scan cache — if the file hasn't changed, return cached results
306
- const skipCacheRead = !!args._noCache;
307
+ // 2c. Check scan cache — if the file hasn't changed, return cached results.
308
+ // `noCache` is the documented arg; `_noCache` is the internal alias used
309
+ // by batch scans — both bypass the cache read for a fresh scan.
310
+ const noCacheRequested = !!args.noCache || !!args._noCache;
307
311
  const useCache = !!filePath;
308
- if (useCache && !skipCacheRead) {
312
+ if (useCache && !noCacheRequested) {
309
313
  try {
310
314
  const cached = (0, scanCache_1.getCachedScan)(ctx.workspaceRoot, filePath, code);
311
315
  if (cached) {
@@ -651,7 +655,7 @@ async function toolAgentScanInner(ctx, args) {
651
655
  devServer.host,
652
656
  devServer.port,
653
657
  ...probeCandidates.map(c => `${c.endpoint.method} ${String(c.endpoint.mountedPath ?? '') || c.endpoint.path}`),
654
- ], 60_000, 'paid-generation', ctx.workspaceRoot);
658
+ ], 120_000, 'paid-generation', ctx.workspaceRoot, { onUrl: progress ? (url) => progress(0, 1, `⏸ Approval required — open ${url} (expires in 120s)`) : undefined });
655
659
  if (!probeApproval.approved) {
656
660
  markAllProbeBlocked(' Live-server probe available — start your dev server and re-scan to attempt runtime proof.');
657
661
  }
@@ -803,25 +807,56 @@ async function toolAgentScanInner(ctx, args) {
803
807
  fixIdx++;
804
808
  progress(fixIdx, fixableFindings.length, `Fixing ${finding.type} at line ${finding.line}...`);
805
809
  }
806
- const fixSummary = `Generate fix for ${finding.type} at line ${finding.line}${finding.lineEnd ? `-${finding.lineEnd}` : ''}\nSeverity: ${finding.severity} | Confidence: ${finding.confidence}%\nEvidence: ${finding.evidence?.substring(0, 200) || '(none)'}`;
810
+ const fixSummary = `Generate fix for ${finding.type} at line ${finding.line}${finding.lineEnd ? `-${finding.lineEnd}` : ''}\nSeverity: ${finding.severity} | Confidence: ${finding.confidence}%\nEvidence: ${finding.evidence?.substring(0, 200) || '(none)'}\n\nIf verification fails, the fixer re-runs ONCE with the failure feedback (a second fix credit applies only if the first attempt fails).`;
807
811
  try {
808
- const approval = await fixBroker.requestApproval('securecode.agent-scan (fix generation)', fixSummary, [code, language, finding.type, finding.line, finding.lineEnd, finding.evidence, finding.severity, finding.confidence], 60_000, 'paid-generation', ctx.workspaceRoot);
812
+ const approval = await fixBroker.requestApproval('securecode.agent-scan (fix generation)', fixSummary, [code, language, finding.type, finding.line, finding.lineEnd, finding.evidence, finding.severity, finding.confidence], 120_000, 'paid-generation', ctx.workspaceRoot, { onUrl: progress ? (url) => progress(0, 1, `⏸ Approval required — open ${url} (expires in 120s)`) : undefined });
809
813
  if (!approval.approved) {
810
814
  finding.fixStatus = 'fix-denied';
811
815
  finding.fixDeniedReason = approval.reason;
812
816
  continue;
813
817
  }
814
- const fixResp = await client.postJson('/fix', {
815
- code,
816
- language,
817
- vulnerability: {
818
- type: finding.type,
819
- line_start: finding.line,
820
- line_end: finding.lineEnd || finding.line,
821
- evidence_snippet: finding.evidence,
822
- },
823
- });
824
- if (fixResp.fixed_code) {
818
+ // Ground the fixer in everything the scanner proved.
819
+ const verificationEvidenceParts = [];
820
+ if (finding.provenReason)
821
+ verificationEvidenceParts.push(`Original verification: ${finding.provenReason}`);
822
+ if (finding.probeEvidence)
823
+ verificationEvidenceParts.push(`Runtime probe (${finding.probeRule}): ${String(finding.probeEvidence).slice(0, 1200)}`);
824
+ if (finding.proofEvidence)
825
+ verificationEvidenceParts.push(`Proof evidence: ${JSON.stringify(finding.proofEvidence).slice(0, 1200)}`);
826
+ const verificationEvidence = verificationEvidenceParts.join('\n\n');
827
+ // Generate → apply-check → differential gate → sandbox verify.
828
+ // A failed verification triggers ONE regeneration with the
829
+ // failure feedback appended, under the same approval.
830
+ const MAX_FIX_ATTEMPTS = 2;
831
+ const replaceRange = { start_line: finding.line, end_line: finding.lineEnd || finding.line };
832
+ const sinkLanguage = ['javascript', 'typescript', 'tsx', 'python'].includes(language)
833
+ ? language
834
+ : null;
835
+ let attempt = 0;
836
+ let lastFeedback = '';
837
+ while (true) {
838
+ attempt++;
839
+ const attemptEvidence = attempt > 1 && lastFeedback
840
+ ? `${verificationEvidence ? verificationEvidence + '\n\n' : ''}PREVIOUS FIX ATTEMPT FAILED: ${lastFeedback}\nProduce a DIFFERENT fix that addresses this exact failure.`
841
+ : verificationEvidence;
842
+ const fixResp = await client.postJson('/fix', {
843
+ code,
844
+ language,
845
+ vulnerability: {
846
+ type: finding.type,
847
+ line_start: finding.line,
848
+ line_end: finding.lineEnd || finding.line,
849
+ evidence_snippet: finding.evidence,
850
+ ...(finding.why ? { why: String(finding.why).slice(0, 2000) } : {}),
851
+ ...(finding.severity ? { severity: String(finding.severity).slice(0, 50) } : {}),
852
+ ...(attemptEvidence ? { verification_evidence: attemptEvidence.slice(0, 4000) } : {}),
853
+ },
854
+ ...(relatedFiles.length > 0
855
+ ? { relatedFiles: relatedFiles.slice(0, 5).map(rf => ({ filePath: rf.filePath, content: rf.content, relationship: rf.relationship })) }
856
+ : {}),
857
+ });
858
+ if (!fixResp.fixed_code)
859
+ break;
825
860
  finding.fix = {
826
861
  fixedCode: fixResp.fixed_code,
827
862
  replaceRange: { start_line: finding.line, end_line: finding.lineEnd || finding.line },
@@ -831,6 +866,32 @@ async function toolAgentScanInner(ctx, args) {
831
866
  };
832
867
  finding.fixStatus = 'fix-generated';
833
868
  finding.fixApprovalId = approval.requestId;
869
+ finding.fixAttempts = attempt;
870
+ // Cheap local differential gate before the expensive
871
+ // sandbox verify: syntax + sink diff + regressions, all
872
+ // tree-sitter (no LLM). A hard failure regenerates
873
+ // immediately instead of burning sandbox rounds.
874
+ const merge = (0, fixCodeMerge_1.mergeFixedCode)(code, fixResp.fixed_code, replaceRange);
875
+ if (merge.ok && sinkLanguage) {
876
+ try {
877
+ const quality = await (0, fixTester_1.testFix)(code, merge.mergedCode, sinkLanguage);
878
+ finding.fixQuality = {
879
+ passes: quality.passes,
880
+ newVulnerabilities: quality.newVulnerabilities,
881
+ regressions: quality.regressions,
882
+ };
883
+ if (!quality.syntaxValid || quality.regressions.length > 0) {
884
+ lastFeedback = !quality.syntaxValid
885
+ ? 'the merged code has syntax errors'
886
+ : `behavioral regressions detected: ${quality.regressions.join('; ')}`;
887
+ if (attempt < MAX_FIX_ATTEMPTS)
888
+ continue;
889
+ finding.fixStatus = 'fix-syntax-invalid';
890
+ break;
891
+ }
892
+ }
893
+ catch { /* differential gate is best-effort */ }
894
+ }
834
895
  // 4c. Re-verify the fix — re-run the exploit against the
835
896
  // merged fixed code to prove the fix actually closed the
836
897
  // vulnerability. Uses a separate, smaller budget so a
@@ -841,7 +902,7 @@ async function toolAgentScanInner(ctx, args) {
841
902
  // any workspace files.
842
903
  try {
843
904
  if (progress) {
844
- progress(fixIdx, fixableFindings.length, `Verifying fix for ${finding.type} at line ${finding.line}...`);
905
+ progress(fixIdx, fixableFindings.length, `Verifying fix for ${finding.type} at line ${finding.line} (attempt ${attempt})...`);
845
906
  }
846
907
  const fixVerifyBudget = (0, agentScanProtocol_1.defaultFixVerifyBudget)();
847
908
  const fixVerifyTracker = new agentScanProtocol_1.VerifyBudgetTracker(fixVerifyBudget);
@@ -856,7 +917,7 @@ async function toolAgentScanInner(ctx, args) {
856
917
  },
857
918
  originalCode: code,
858
919
  fixedCode: fixResp.fixed_code,
859
- replaceRange: { start_line: finding.line, end_line: finding.lineEnd || finding.line },
920
+ replaceRange,
860
921
  filePath: filePath || '',
861
922
  relatedFiles: relatedFiles.map(rf => ({
862
923
  filePath: rf.filePath,
@@ -881,14 +942,21 @@ async function toolAgentScanInner(ctx, args) {
881
942
  finding.fixStatus = 'fix-verified-closed';
882
943
  break;
883
944
  case 'still-vulnerable':
884
- finding.fixStatus = 'fix-still-vulnerable';
945
+ case 'syntax-invalid': {
946
+ if (attempt < MAX_FIX_ATTEMPTS) {
947
+ lastFeedback = fixVerifyResult.status === 'still-vulnerable'
948
+ ? `the exploit still reproduces against the fixed code: ${fixVerifyResult.reason.slice(0, 600)}`
949
+ : `the fixed code failed to merge or parse: ${fixVerifyResult.reason.slice(0, 600)}`;
950
+ continue;
951
+ }
952
+ finding.fixStatus = fixVerifyResult.status === 'still-vulnerable'
953
+ ? 'fix-still-vulnerable'
954
+ : 'fix-syntax-invalid';
885
955
  break;
956
+ }
886
957
  case 'inconclusive':
887
958
  finding.fixStatus = 'fix-verification-inconclusive';
888
959
  break;
889
- case 'syntax-invalid':
890
- finding.fixStatus = 'fix-syntax-invalid';
891
- break;
892
960
  // sandbox-unavailable and cancelled leave fixStatus as 'fix-generated'
893
961
  }
894
962
  }
@@ -897,6 +965,7 @@ async function toolAgentScanInner(ctx, args) {
897
965
  // fix is still generated, just not re-verified.
898
966
  console.warn(`[Agent Scan] Fix verification failed for ${finding.type} at L${finding.line}: ${fixVerifyErr?.message || fixVerifyErr}`);
899
967
  }
968
+ break;
900
969
  }
901
970
  }
902
971
  catch (err) {
@@ -911,10 +980,12 @@ async function toolAgentScanInner(ctx, args) {
911
980
  await fixBroker.stop();
912
981
  }
913
982
  } // end else (skipFix)
914
- // 5. Write to cache before returning — but never cache llm_degraded
915
- // runs: they reflect a bad model-server window, not the file's true
916
- // state, and must not be served for 7 days.
917
- if (useCache && agentResult.terminationReason !== 'llm_degraded') {
983
+ // 5. Write to cache before returning — only fully-successful scans:
984
+ // status 'completed' AND terminationReason 'agent_finish'. Failed,
985
+ // degraded, or incomplete runs (llm_degraded, blocked reads, budget
986
+ // stops, crashes) reflect a bad model-server or environment window,
987
+ // not the file's true state, and must not be served for 7 days.
988
+ if (useCache && agentResult.status === 'completed' && agentResult.terminationReason === 'agent_finish') {
918
989
  try {
919
990
  (0, scanCache_1.writeCachedScan)(ctx.workspaceRoot, filePath, code, {
920
991
  findings: provenFindings,
@@ -1 +1 @@
1
- {"version":3,"file":"agentScan.js","sourceRoot":"","sources":["../../src/tools/agentScan.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgMH,sCASC;AA69BD,kEAuBC;AAMD,oDAWC;AA5sCD,0CAA0C;AAC1C,2CAA6B;AAE7B,0CAAuD;AACvD,0DAAsG;AACtG,wDAKkC;AAClC,4DAAsJ;AACtJ,0EAAoF;AACpF,gDAAiD;AACjD,4EAI4C;AAC5C,2DAAuD;AACvD,yEAAuE;AACvE,qDAAqD;AACrD,2DAA2D;AAC3D,yDAUgC;AAChC,0DAAuD;AACvD,mEAAmL;AAEnL,8DAAuE;AACvE,+CAAoD;AACpD,oDAAyD;AACzD,4DAAgE;AAChE,wDAA8D;AAC9D,oEAIqC;AA6CrC,2DAA2D;AAC3D,SAAS,WAAW,CAAC,OAAyB;IAC1C,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU,IAAI,OAAO,CAAC,QAAQ,KAAK,MAAM,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,CAAC;AAC3G,CAAC;AAED,sFAAsF;AACtF,MAAM,2BAA2B,GAAG,CAAC,CAAC;AAEtC;;;;;;;;;;;GAWG;AACH,SAAS,oBAAoB,CACzB,MAAc,EACd,aAAsB,EACtB,UAA8B,EAC9B,eAAyB;IAEzB,IAAI,MAAyB,CAAC;IAC9B,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACtB,MAAM,GAAG,aAAa,IAAI,eAAe,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,mBAAmB,CAAC;IACzF,CAAC;SAAM,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;QAC/B,MAAM,GAAG,iBAAiB,CAAC;IAC/B,CAAC;SAAM,CAAC;QACJ,MAAM,GAAG,iBAAiB,CAAC;IAC/B,CAAC;IAED,MAAM,KAAK,GAAwB,CAAC,iBAAiB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,mBAAmB,CAAC,CAAC;IAClH,IAAI,UAAU,EAAE,CAAC;QACb,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC3C,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACxC,OAAO,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC;IACtD,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AAED;;;GAGG;AACH,SAAS,iBAAiB,CAAC,OAAsB;IAC7C,IAAI,OAAO,CAAC,YAAY;QAAE,OAAO,uBAAuB,CAAC;IACzD,MAAM,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC;IACpC,QAAQ,EAAE,EAAE,CAAC;QACT,KAAK,qBAAqB,CAAC,CAAC,OAAO,qBAAqB,CAAC;QACzD,KAAK,kBAAkB,CAAC,CAAC,OAAO,+BAA+B,CAAC;QAChE,KAAK,iBAAiB,CAAC,CAAC,OAAO,iBAAiB,CAAC;QACjD,KAAK,aAAa,CAAC,CAAC,OAAO,wBAAwB,CAAC;QACpD,KAAK,SAAS,CAAC,CAAC,OAAO,iBAAiB,CAAC;QACzC,OAAO,CAAC,CAAC,OAAO,2BAA2B,CAAC;IAChD,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,SAAS,yBAAyB,CAAC,OAAsB;IACrD,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC9C,IAAI,OAAO,CAAC,MAAM,KAAK,kBAAkB;QAAE,OAAO,KAAK,CAAC;IAExD,0CAA0C;IAC1C,IAAI,OAAO,CAAC,gBAAgB,KAAK,WAAW,IAAI,OAAO,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;QACrF,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,cAAc;QAAE,OAAO,IAAI,CAAC;IAEnD,iDAAiD;IACjD,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU,IAAI,OAAO,CAAC,QAAQ,KAAK,MAAM,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,CAAC;IAC3G,CAAC;IAED,kEAAkE;IAClE,IAAI,OAAO,CAAC,MAAM,KAAK,UAAU,IAAI,OAAO,CAAC,UAAU,IAAI,EAAE;QAAE,OAAO,IAAI,CAAC;IAE3E,OAAO,KAAK,CAAC;AACjB,CAAC;AAEM,KAAK,UAAU,aAAa,CAAC,GAAkB,EAAE,IAAS;IAC7D,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,OAAO,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,4CAAqB,CAAC,YAAY,CACrC,GAAG,CAAC,aAAa,EACjB,GAAG,EAAE,CAAC,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,EACnC,EAAE,MAAM,EAAE,IAAI,CAAC,OAAkC,EAAE,CACtD,CAAC;AACN,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,GAAkB,EAAE,IAAS;IAC3D,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAqF,CAAC;IAC5G,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;IAEhC,6BAA6B;IAC7B,IAAI,IAAY,CAAC;IACjB,IAAI,QAAgB,CAAC;IACrB,IAAI,QAA4B,CAAC;IAEjC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAChB,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QACzB,MAAM,UAAU,GAAG,IAAA,6BAAqB,EAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC3E,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;QACvB,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,UAAU,CAAC,QAAQ,CAAC;IACpD,CAAC;SAAM,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACnB,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACjB,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,YAAY,CAAC;IAC7C,CAAC;SAAM,CAAC;QACJ,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IACjE,CAAC;IAED,4EAA4E;IAC5E,kEAAkE;IAClE,yEAAyE;IACzE,oCAAoC;IACpC,MAAM,cAAc,GAAG,SAAS,CAAC;IACjC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO;YACH,MAAM,EAAE,WAAW;YACnB,OAAO,EAAE,kCAAkC;YAC3C,aAAa,EAAE,EAAE;YACjB,QAAQ,EAAE,EAAE;YACZ,SAAS,EAAE,CAAC;YACZ,YAAY,EAAE,CAAC;YACf,UAAU,EAAE,EAAE;YACd,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,CAAC;SACjB,CAAC;IACN,CAAC;IACD,0EAA0E;IAC1E,4EAA4E;IAC5E,iCAAiC;IACjC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;IAC3D,IAAI,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,yFAAyF,CAAC,CAAC;IAC/G,CAAC;IACD,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,cAAc,EAAE,CAAC;QACnD,MAAM,MAAM,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACxE,MAAM,IAAI,KAAK,CAAC,mBAAmB,MAAM,0FAA0F,CAAC,CAAC;IACzI,CAAC;IAED,iEAAiE;IACjE,IAAI,eAAe,GAAU,EAAE,CAAC;IAChC,IAAI,YAAY,GAAU,EAAE,CAAC;IAC7B,IAAI,QAAQ,EAAE,CAAC;QACX,IAAI,CAAC;YACD,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;gBACrC,CAAC,CAAC,QAAQ;gBACV,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;YAC7C,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAClC,IAAA,sCAAyB,EAAC,OAAO,EAAE,GAAG,CAAC,aAAa,CAAC;gBACrD,IAAA,mCAAsB,EAAC,OAAO,EAAE,GAAG,CAAC,aAAa,CAAC;aACrD,CAAC,CAAC;YACH,eAAe,GAAG,GAAG,CAAC;YACtB,YAAY,GAAG,IAAI,CAAC;QACxB,CAAC;QAAC,MAAM,CAAC;YACL,wCAAwC;QAC5C,CAAC;IACL,CAAC;IAED,wEAAwE;IACxE,wEAAwE;IACxE,sEAAsE;IACtE,4DAA4D;IAC5D,IAAI,KAAiC,CAAC;IACtC,MAAM,OAAO,GAAG,IAAI,CAAC,OAA6B,CAAC;IACnD,IAAI,OAAO,EAAE,CAAC;QACV,IAAI,CAAC;YACD,MAAM,UAAU,GAAG,MAAM,IAAA,+BAAkB,EAAC,GAAG,CAAC,aAAa,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YACtF,IAAI,UAAU,CAAC,EAAE,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/C,IAAI,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC;gBAClC,IAAI,CAAC;oBACD,MAAM,GAAG,GAAG,MAAM,IAAA,mBAAM,EAAC,GAAG,CAAC,aAAa,CAAC,CAAC;oBAC5C,IAAI,GAAG,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;wBACnB,MAAM,WAAW,GAAG,IAAA,gCAAkB,EAAC;4BACnC,YAAY,EAAE,UAAU,CAAC,KAAK;4BAC9B,GAAG;yBACN,CAAC,CAAC;wBACH,UAAU,GAAG,WAAW,CAAC,KAAK,CAAC;oBACnC,CAAC;gBACL,CAAC;gBAAC,MAAM,CAAC;oBACL,iDAAiD;gBACrD,CAAC;gBACD,KAAK,GAAG;oBACJ,YAAY,EAAE,UAAU,CAAC,KAAK;oBAC9B,WAAW,EAAE,UAAU;oBACvB,OAAO,EAAE,UAAU,CAAC,OAAO;oBAC3B,OAAO,EAAE,UAAU,CAAC,OAAO;iBAC9B,CAAC;YACN,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACL,sCAAsC;QAC1C,CAAC;IACL,CAAC;IAED,oDAAoD;IACpD,EAAE;IACF,wEAAwE;IACxE,yEAAyE;IACzE,qEAAqE;IACrE,uCAAuC;IACvC,8DAA8D;IAC9D,wEAAwE;IACxE,mEAAmE;IACnE,+BAA+B;IAC/B,sEAAsE;IACtE,IAAI,eAAmC,CAAC;IACxC,IAAI,iBAAiB,GAAG,EAAE,CAAC;IAC3B,IAAI,cAAc,GAAyD,EAAE,CAAC;IAC9E,IAAI,CAAC;QACD,MAAM,MAAM,GAAG,IAAA,6BAAe,EAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAClD,eAAe,GAAG,IAAA,mCAAqB,EAAC,MAAM,CAAC,IAAI,SAAS,CAAC;QAC7D,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,EAAE,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;QACnH,iBAAiB,GAAG,IAAA,oCAAwB,EAAC,cAAc,CAAC,CAAC;QAC7D,IAAI,QAAQ,EAAE,CAAC;YACX,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACpG,IAAA,oCAAsB,EAAC,GAAG,CAAC,aAAa,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/E,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACL,uCAAuC;IAC3C,CAAC;IAED,2EAA2E;IAC3E,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;IACtC,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC;IAC5B,IAAI,QAAQ,IAAI,CAAC,aAAa,EAAE,CAAC;QAC7B,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,IAAA,yBAAa,EAAC,GAAG,CAAC,aAAa,EAAE,QAAS,EAAE,IAAI,CAAC,CAAC;YACjE,IAAI,MAAM,EAAE,CAAC;gBACT,4DAA4D;gBAC5D,wDAAwD;gBACxD,uDAAuD;gBACvD,sDAAsD;gBACtD,IAAI,gBAAgB,GAAG,MAAM,CAAC,QAAQ,CAAC;gBACvC,IAAI,MAAM,CAAC,UAAU,KAAK,iBAAiB,EAAE,CAAC;oBAC1C,gBAAgB,GAAG,IAAA,6CAAiC,EAAC,MAAM,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;gBAC1F,CAAC;gBACD,IAAI,QAAQ;oBAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,iDAAiD,CAAC,CAAC;gBAChF,IAAI,CAAC;oBACD,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACpG,IAAA,oCAAqB,EAAC,GAAG,CAAC,aAAa,EAAE;wBACrC,QAAQ,EAAE,QAAS;wBACnB,QAAQ;wBACR,QAAQ;wBACR,UAAU,EAAE,MAAM,CAAC,MAAM;wBACzB,SAAS,EAAE,MAAM,CAAC,SAAS;wBAC3B,YAAY,EAAE,CAAC;wBACf,aAAa,EAAE,gBAAgB;wBAC/B,UAAU,EAAE,EAAE;wBACd,MAAM,EAAE,IAAI;qBACf,CAAC,CAAC;gBACP,CAAC;gBAAC,MAAM,CAAC;oBACL,cAAc;gBAClB,CAAC;gBACD,OAAO;oBACH,MAAM,EAAE,MAAM,CAAC,MAAM;oBACrB,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;oBAC3C,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,2BAA2B;oBACtD,aAAa,EAAE,gBAAgB;oBAC/B,QAAQ,EAAE,EAAE;oBACZ,kBAAkB,EAAE,MAAM,CAAC,kBAAkB,IAAI,EAAE;oBACnD,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,EAAE;oBACvC,SAAS,EAAE,MAAM,CAAC,SAAS;oBAC3B,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,EAAE;oBACvC,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,IAAI,CAAC;oBAChD,YAAY,EAAE,CAAC;oBACf,UAAU,EAAE,EAAE;oBACd,MAAM,EAAE,IAAI;oBACZ,WAAW,EAAG,gBAA0B,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,MAAM;oBACzF,WAAW,EAAE;wBACT,KAAK,EAAE,EAAE;wBACT,YAAY,EAAG,gBAA0B,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,MAAM;qBACpG;iBACJ,CAAC;YACN,CAAC;QACL,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAChB,iEAAiE;YACjE,oDAAoD;YACpD,OAAO,CAAC,IAAI,CAAC,oCAAoC,GAAG,EAAE,OAAO,IAAI,GAAG,EAAE,CAAC,CAAC;QAC5E,CAAC;IACL,CAAC;IAED,wBAAwB;IACxB,qCAAqC;IAErC,qEAAqE;IACrE,qEAAqE;IACrE,mEAAmE;IACnE,gEAAgE;IAChE,0CAA0C;IAC1C,sEAAsE;IACtE,6CAA6C;IAC7C,IAAI,sBAA0C,CAAC;IAC/C,IAAI,QAAQ,EAAE,CAAC;QACX,IAAI,CAAC;YACD,MAAM,GAAG,GAAG,IAAA,iBAAS,EAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YACzC,IAAI,GAAG,EAAE,CAAC;gBACN,2DAA2D;gBAC3D,iDAAiD;gBACjD,KAAK,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAU,EAAE,CAAC;oBACrD,MAAM,MAAM,GAAG,IAAA,kDAA4B,EACvC,GAAG,CAAC,aAAa,EAAE,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CACjD,CAAC;oBACF,IAAI,MAAM,EAAE,CAAC;wBACT,sBAAsB,GAAG,IAAA,wDAAkC,EAAC,MAAM,CAAC,CAAC;wBACpE,8DAA8D;wBAC9D,MAAM,SAAS,GAAG,IAAA,0DAAoC,EAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;wBACzE,IAAI,SAAS,EAAE,CAAC;4BACZ,sBAAsB,GAAG,CAAC,sBAAsB,IAAI,EAAE,CAAC,GAAG,MAAM,GAAG,SAAS,CAAC;wBACjF,CAAC;wBACD,MAAM;oBACV,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACL,qDAAqD;QACzD,CAAC;IACL,CAAC;IAED,MAAM,MAAM,GAAoB;QAC5B,QAAQ,EAAE,QAAQ,IAAI,aAAa;QACnC,QAAQ;QACR,WAAW,EAAE,IAAI;QACjB,eAAe;QACf,eAAe;QACf,KAAK;QACL,mBAAmB,EAAE,sBAAsB;KAC9C,CAAC;IAEF,MAAM,WAAW,GAAG,MAAM,IAAA,4BAAY,EAAC,GAAG,EAAE,MAAM,EAAE;QAChD,MAAM,EAAG,IAAY,CAAC,OAAkC;QACxD,UAAU,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;YAC5B,IAAI,QAAQ;gBAAE,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAC5C,CAAC;KACJ,CAAC,CAAC;IAEH,IAAI,WAAW,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,KAAK,IAAI,6BAA6B,CAAC,CAAC;IACxE,CAAC;IAED,kFAAkF;IAClF,MAAM,MAAM,GAAG,IAAI,kBAAS,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC3E,MAAM,cAAc,GAAoB,EAAE,CAAC;IAE3C,qEAAqE;IACrE,wEAAwE;IACxE,MAAM,YAAY,GAAiB,IAAA,uCAAmB,GAAE,CAAC;IACzD,MAAM,aAAa,GAAG,IAAI,uCAAmB,CAAC,YAAY,CAAC,CAAC;IAC5D,MAAM,WAAW,GAAI,IAAY,CAAC,OAAkC,CAAC;IAErE,mEAAmE;IACnE,iEAAiE;IACjE,2DAA2D;IAC3D,iEAAiE;IACjE,qEAAqE;IACrE,kEAAkE;IAClE,IAAI,uBAAuB,GAAG,CAAC,CAAC;IAChC,IAAI,oBAAoB,GAAG,CAAC,CAAC;IAC7B,MAAM,oBAAoB,GAAG,OAAO,CAAC,GAAG,CAAC,gCAAgC,KAAK,GAAG,CAAC;IAClF,MAAM,eAAe,GAAwE,EAAE,CAAC;IAEhG,MAAM,SAAS,GAAG,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAC3D,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,EAAE,CAAC;QACnC,QAAQ,CAAC,CAAC,EAAE,SAAS,CAAC,MAAM,EAAE,aAAa,SAAS,CAAC,MAAM,gBAAgB,CAAC,CAAC;IACjF,CAAC;IAED,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,KAAK,MAAM,OAAO,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC;QACzC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;YACxB,cAAc,CAAC,IAAI,CAAC,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,6BAA6B,EAAE,CAAC,CAAC;YACpG,SAAS;QACb,CAAC;QAED,kEAAkE;QAClE,mEAAmE;QACnE,oEAAoE;QACpE,uDAAuD;QACvD,IAAI,CAAC,aAAa,CAAC,iBAAiB,EAAE,EAAE,CAAC;YACrC,oBAAoB,EAAE,CAAC;YACvB,cAAc,CAAC,IAAI,CAAC;gBAChB,GAAG,OAAO;gBACV,MAAM,EAAE,cAAc;gBACtB,YAAY,EAAE,kCAAkC,aAAa,CAAC,iBAAiB,IAAI,YAAY,CAAC,WAAW,cAAc,aAAa,CAAC,YAAY,IAAI,YAAY,CAAC,WAAW,eAAe,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,kBAAkB,GAAG,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK;gBACzS,gBAAgB,EAAE,kBAAkB;aACvC,CAAC,CAAC;YACH,SAAS;QACb,CAAC;QAED,IAAI,QAAQ,EAAE,CAAC;YACX,QAAQ,EAAE,CAAC;YACX,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,MAAM,EAAE,aAAa,OAAO,CAAC,IAAI,YAAY,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC;QACjG,CAAC;QAED,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,IAAA,0BAAa,EAAC;gBAC/B,OAAO,EAAE;oBACL,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,GAAG,EAAE,OAAO,CAAC,GAAG;oBAChB,QAAQ,EAAE,OAAO,CAAC,QAAQ;iBAC7B;gBACD,QAAQ,EAAE,QAAQ,IAAI,EAAE;gBACxB,IAAI;gBACJ,YAAY,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;oBAClC,QAAQ,EAAE,EAAE,CAAC,QAAQ;oBACrB,OAAO,EAAE,EAAE,CAAC,OAAO;oBACnB,YAAY,EAAE,EAAE,CAAC,YAAY;iBAChC,CAAC,CAAC;gBACH,aAAa,EAAE,GAAG,CAAC,aAAa;gBAChC,QAAQ;gBACR,MAAM;gBACN,aAAa,EAAE,aAAa;gBAC5B,MAAM,EAAE,WAAW;gBACnB,UAAU,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;oBAC7B,IAAI,QAAQ;wBAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,MAAM,EAAE,gBAAgB,KAAK,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC,CAAC;gBAChG,CAAC;aACJ,CAAC,CAAC;YAEH,IAAI,MAAM,CAAC,UAAU,KAAK,kBAAkB;gBAAE,oBAAoB,EAAE,CAAC;YAErE,iEAAiE;YACjE,8DAA8D;YAC9D,IAAI,MAAM,CAAC,UAAU,KAAK,WAAW,EAAE,CAAC;gBACpC,cAAc,CAAC,IAAI,CAAC;oBAChB,GAAG,OAAO;oBACV,MAAM,EAAE,MAAM,CAAC,OAAO;oBACtB,YAAY,EAAE,MAAM,CAAC,MAAM;oBAC3B,gBAAgB,EAAE,MAAM,CAAC,UAAU;iBACtC,CAAC,CAAC;gBACH,KAAK,MAAM,SAAS,IAAI,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;oBAC5F,cAAc,CAAC,IAAI,CAAC;wBAChB,GAAG,SAAS;wBACZ,MAAM,EAAE,SAAS;wBACjB,YAAY,EAAE,wCAAwC;qBACzD,CAAC,CAAC;gBACP,CAAC;gBACD,MAAM;YACV,CAAC;YAED,qEAAqE;YACrE,kEAAkE;YAClE,iEAAiE;YACjE,IAAI,MAAM,CAAC,UAAU,KAAK,qBAAqB,EAAE,CAAC;gBAC9C,IAAI,CAAC;oBACD,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAuB,gBAAgB,EAAE;wBAC5E,IAAI;wBACJ,QAAQ;wBACR,iBAAiB,EAAE,OAAO,CAAC,IAAI;wBAC/B,IAAI,EAAE,OAAO,CAAC,IAAI;wBAClB,OAAO,EAAE,OAAO,CAAC,OAAO;wBACxB,QAAQ,EAAE,OAAO,CAAC,QAAQ;wBAC1B,GAAG,EAAE,OAAO,CAAC,GAAG;qBACnB,CAAC,CAAC;oBACH,cAAc,CAAC,IAAI,CAAC;wBAChB,GAAG,OAAO;wBACV,MAAM,EAAE,SAAS,CAAC,MAAM;wBACxB,YAAY,EAAE,SAAS,CAAC,SAAS,IAAI,SAAS,CAAC,UAAU,IAAI,SAAS,CAAC,OAAO,EAAE,MAAM;wBACtF,gBAAgB,EAAE,MAAM,CAAC,UAAU;wBACnC,iBAAiB,EAAE,oBAAoB,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,iBAAiB,CAAC;wBAC1F,aAAa,EAAE,SAAS,CAAC,aAAa;wBACtC,eAAe,EAAE,SAAS,CAAC,eAAe;qBAC7C,CAAC,CAAC;gBACP,CAAC;gBAAC,OAAO,QAAa,EAAE,CAAC;oBACrB,uBAAuB,EAAE,CAAC;oBAC1B,cAAc,CAAC,IAAI,CAAC;wBAChB,GAAG,OAAO;wBACV,MAAM,EAAE,cAAc;wBACtB,YAAY,EAAE,MAAM,CAAC,MAAM;wBAC3B,gBAAgB,EAAE,MAAM,CAAC,UAAU;wBACnC,iBAAiB,EAAE,oBAAoB,CAAC,cAAc,EAAE,KAAK,EAAE,OAAO,CAAC,iBAAiB,CAAC;qBAC5F,CAAC,CAAC;gBACP,CAAC;gBACD,SAAS;YACb,CAAC;YAED,8DAA8D;YAC9D,gEAAgE;YAChE,iEAAiE;YACjE,gEAAgE;YAChE,8DAA8D;YAC9D,6DAA6D;YAC7D,0CAA0C;YAC1C,iEAAiE;YACjE,sDAAsD;YACtD,IACI,CAAC,oBAAoB;gBACrB,MAAM,CAAC,OAAO,KAAK,cAAc;gBACjC,IAAA,kCAAmB,EAAC,OAAO,CAAC,IAAI,CAAC;gBACjC,IAAA,qCAAsB,EAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,EAC7C,CAAC;gBACC,MAAM,aAAa,GAAG,IAAA,sCAAuB,EAAC,OAAO,EAAE,eAAe,CAAC;uBAChE,IAAA,qCAAsB,EAAC,OAAO,EAAE,IAAI,CAAC,CAAC;gBAC7C,IAAI,aAAa,EAAE,CAAC;oBAChB,MAAM,YAAY,GAAkB;wBAChC,GAAG,OAAO;wBACV,MAAM,EAAE,cAAc;wBACtB,YAAY,EAAE,MAAM,CAAC,MAAM;wBAC3B,gBAAgB,EAAE,MAAM,CAAC,UAAU;wBACnC,iBAAiB,EAAE,oBAAoB,CAAC,cAAc,EAAE,KAAK,EAAE,OAAO,CAAC,iBAAiB,CAAC;wBACzF,aAAa,EAAE,MAAM,CAAC,aAAa;wBACnC,eAAe,EAAE,MAAM,CAAC,eAAe;qBAC1C,CAAC;oBACF,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBAClC,eAAe,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,CAAC;oBACzE,SAAS;gBACb,CAAC;YACL,CAAC;YAED,cAAc,CAAC,IAAI,CAAC;gBAChB,GAAG,OAAO;gBACV,MAAM,EAAE,MAAM,CAAC,OAAO;gBACtB,YAAY,EAAE,MAAM,CAAC,MAAM;gBAC3B,gBAAgB,EAAE,MAAM,CAAC,UAAU;gBACnC,iBAAiB,EAAE,oBAAoB,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,iBAAiB,CAAC;gBACzF,aAAa,EAAE,MAAM,CAAC,aAAa;gBACnC,eAAe,EAAE,MAAM,CAAC,eAAe;aAC1C,CAAC,CAAC;QACP,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAChB,OAAO,CAAC,IAAI,CAAC,oCAAoC,GAAG,CAAC,OAAO,kCAAkC,CAAC,CAAC;YAChG,IAAI,CAAC;gBACD,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAuB,gBAAgB,EAAE;oBAC5E,IAAI;oBACJ,QAAQ;oBACR,iBAAiB,EAAE,OAAO,CAAC,IAAI;oBAC/B,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,GAAG,EAAE,OAAO,CAAC,GAAG;iBACnB,CAAC,CAAC;gBACH,cAAc,CAAC,IAAI,CAAC;oBAChB,GAAG,OAAO;oBACV,MAAM,EAAE,SAAS,CAAC,MAAM;oBACxB,YAAY,EAAE,SAAS,CAAC,SAAS,IAAI,SAAS,CAAC,UAAU,IAAI,SAAS,CAAC,OAAO,EAAE,MAAM;oBACtF,iBAAiB,EAAE,oBAAoB,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,iBAAiB,CAAC;oBAC1F,aAAa,EAAE,SAAS,CAAC,aAAa;oBACtC,eAAe,EAAE,SAAS,CAAC,eAAe;iBAC7C,CAAC,CAAC;YACP,CAAC;YAAC,OAAO,IAAS,EAAE,CAAC;gBACjB,cAAc,CAAC,IAAI,CAAC;oBAChB,GAAG,OAAO;oBACV,MAAM,EAAE,cAAc;oBACtB,YAAY,EAAE,kBAAkB,GAAG,CAAC,OAAO,mCAAmC,IAAI,CAAC,OAAO,EAAE;oBAC5F,iBAAiB,EAAE,oBAAoB,CAAC,cAAc,EAAE,KAAK,EAAE,OAAO,CAAC,iBAAiB,CAAC;iBAC5F,CAAC,CAAC;YACP,CAAC;QACL,CAAC;IACL,CAAC;IAED,2EAA2E;IAC3E,sEAAsE;IACtE,sEAAsE;IACtE,0EAA0E;IAC1E,8CAA8C;IAC9C,IAAI,iBAAiB,GAAG,CAAC,CAAC;IAC1B,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACtD,MAAM,mBAAmB,GAAG,CAAC,MAAc,EAAE,EAAE;YAC3C,KAAK,MAAM,SAAS,IAAI,eAAe,EAAE,CAAC;gBACtC,SAAS,CAAC,OAAO,CAAC,YAAY,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,YAAY,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC;gBACpF,SAAS,CAAC,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;YAC1C,CAAC;YACD,iBAAiB,IAAI,eAAe,CAAC,MAAM,CAAC;QAChD,CAAC,CAAC;QAEF,IAAI,SAAS,GAA2B,IAAI,CAAC;QAC7C,IAAI,CAAC;YACD,SAAS,GAAG,MAAM,IAAA,8BAAe,EAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QACzD,CAAC;QAAC,MAAM,CAAC;YACL,SAAS,GAAG,IAAI,CAAC;QACrB,CAAC;QAED,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,mBAAmB,CAAC,4FAA4F,CAAC,CAAC;QACtH,CAAC;aAAM,CAAC;YACJ,MAAM,WAAW,GAAG,IAAI,uBAAc,EAAE,CAAC;YACzC,MAAM,WAAW,CAAC,KAAK,EAAE,CAAC;YAC1B,IAAI,CAAC;gBACD,MAAM,YAAY,GACd,+BAA+B,eAAe,CAAC,MAAM,qDAAqD,SAAS,CAAC,IAAI,IAAI,SAAS,CAAC,IAAI,IAAI;oBAC9I,mFAAmF,CAAC;gBACxF,MAAM,aAAa,GAAG,MAAM,WAAW,CAAC,eAAe,CACnD,0BAA0B,EAC1B,YAAY,EACZ;oBACI,SAAS,CAAC,IAAI;oBACd,SAAS,CAAC,IAAI;oBACd,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;iBACjH,EACD,MAAM,EACN,iBAAiB,EACjB,GAAG,CAAC,aAAa,CACpB,CAAC;gBAEF,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;oBAC1B,mBAAmB,CAAC,4FAA4F,CAAC,CAAC;gBACtH,CAAC;qBAAM,CAAC;oBACJ,MAAM,YAAY,GAAa,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;oBACrE,MAAM,iBAAiB,GAAG,CAAC,GAAG,eAAe,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACzD,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;oBACzF,IAAI,WAAW,GAAG,CAAC,CAAC;oBACpB,MAAM,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAA,6BAAa,EAAC,GAAG,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;oBACjF,KAAK,MAAM,SAAS,IAAI,iBAAiB,EAAE,CAAC;wBACxC,IAAI,WAAW,IAAI,2BAA2B,EAAE,CAAC;4BAC7C,iBAAiB,EAAE,CAAC;4BACpB,SAAS,CAAC,OAAO,CAAC,YAAY,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,YAAY,IAAI,EAAE,sCAAsC,2BAA2B,gEAAgE,CAAC;4BAC1M,SAAS,CAAC,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;4BACtC,SAAS;wBACb,CAAC;wBACD,IAAI,CAAC;4BACD,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,QAAQ,CAA0B,oBAAoB,EAAE;gCAClF,OAAO,EAAE;oCACL,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,IAAI;oCAC5B,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,IAAI;oCAC5B,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,OAAO;oCAClC,QAAQ,EAAE,SAAS,CAAC,OAAO,CAAC,QAAQ;oCACpC,GAAG,EAAE,SAAS,CAAC,OAAO,CAAC,GAAG;oCAC1B,QAAQ,EAAE,SAAS,CAAC,OAAO,CAAC,QAAQ;iCACvC;gCACD,QAAQ,EAAE;oCACN,MAAM,EAAE,SAAS,CAAC,QAAQ,CAAC,MAAM;oCACjC,IAAI,EAAG,SAAS,CAAC,QAAQ,CAAC,WAAsB,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI;oCAC3E,WAAW,EAAE,SAAS,CAAC,QAAQ,CAAC,WAAiC;oCACjE,MAAM,EAAE,SAAS,CAAC,QAAQ,CAAC,MAA+B;oCAC1D,UAAU,EAAE,SAAS,CAAC,QAAQ,CAAC,UAAgC;oCAC/D,UAAU,EAAE,SAAS,CAAC,QAAQ,CAAC,UAAmC;iCACrE;gCACD,SAAS,EAAE,WAAW,EAAE,SAAS,IAAI,SAAS;gCAC9C,aAAa,EAAE,SAAS,CAAC,IAAI;6BAChC,CAAC,CAAC;4BACH,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gCACvC,iBAAiB,EAAE,CAAC;gCACpB,SAAS,CAAC,OAAO,CAAC,YAAY,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,YAAY,IAAI,EAAE,2BAA2B,QAAQ,CAAC,UAAU,IAAI,qCAAqC,EAAE,CAAC;gCAClK,SAAS,CAAC,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;gCACtC,SAAS;4BACb,CAAC;4BACD,MAAM,WAAW,GAAG,MAAM,IAAA,+BAAgB,EAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;4BACnF,WAAW,EAAE,CAAC;4BACd,SAAS,CAAC,OAAO,CAAC,aAAa,GAAG,WAAW,CAAC,QAAQ,CAAC;4BACvD,SAAS,CAAC,OAAO,CAAC,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC;4BAC/C,MAAM,YAAY,GAAG,WAAW,CAAC,QAAQ,CAAC,MAAM,GAAG,GAAG;gCAClD,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG;gCAC1C,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC;4BAC3B,IAAI,WAAW,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gCACnC,SAAS,CAAC,OAAO,CAAC,MAAM,GAAG,QAAQ,CAAC;gCACpC,SAAS,CAAC,OAAO,CAAC,YAAY,GAAG,4BAA4B,WAAW,CAAC,IAAI,MAAM,WAAW,CAAC,MAAM,qBAAqB,YAAY,EAAE,CAAC;gCACzI,SAAS,CAAC,OAAO,CAAC,iBAAiB,GAAG,oBAAoB,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;4BAC3H,CAAC;iCAAM,IAAI,WAAW,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;gCAC5C,SAAS,CAAC,OAAO,CAAC,MAAM,GAAG,UAAU,CAAC;gCACtC,SAAS,CAAC,OAAO,CAAC,YAAY,GAAG,0BAA0B,WAAW,CAAC,IAAI,MAAM,WAAW,CAAC,MAAM,qBAAqB,YAAY,EAAE,CAAC;gCACvI,SAAS,CAAC,OAAO,CAAC,iBAAiB,GAAG,oBAAoB,CAAC,UAAU,EAAE,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;4BAC7H,CAAC;iCAAM,CAAC;gCACJ,SAAS,CAAC,OAAO,CAAC,YAAY,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,YAAY,IAAI,EAAE,gCAAgC,WAAW,CAAC,MAAM,EAAE,CAAC;4BACjI,CAAC;wBACL,CAAC;wBAAC,OAAO,QAAa,EAAE,CAAC;4BACrB,SAAS,CAAC,OAAO,CAAC,YAAY,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,YAAY,IAAI,EAAE,0BAA0B,QAAQ,EAAE,OAAO,IAAI,QAAQ,EAAE,CAAC;4BAClI,SAAS,CAAC,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;wBAC1C,CAAC;oBACL,CAAC;gBACL,CAAC;YACL,CAAC;oBAAS,CAAC;gBACP,MAAM,WAAW,CAAC,IAAI,EAAE,CAAC;YAC7B,CAAC;QACL,CAAC;IACL,CAAC;IAED,2CAA2C;IAC3C,+EAA+E;IAC/E,4EAA4E;IAC5E,4EAA4E;IAC5E,2EAA2E;IAC3E,4DAA4D;IAC5D,yEAAyE;IACzE,oEAAoE;IACpE,2BAA2B,CAAC,cAAc,EAAE,WAAW,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAE9E,uEAAuE;IACvE,KAAK,MAAM,OAAO,IAAI,cAAc,EAAE,CAAC;QACnC,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ;YAAE,SAAS;QAC1C,MAAM,WAAW,GACb,OAAO,CAAC,QAAQ,KAAK,UAAU;YAC/B,CAAC,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,aAAa,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;YACvE,CAAC,OAAO,CAAC,aAAa;YACtB,CAAC,OAAO,CAAC,eAAe;YACxB,CAAC,OAAO,CAAC,eAAe,CAAC,iBAAiB,CAAC;QAC/C,OAAO,CAAC,mBAAmB,GAAG,WAAW,CAAC;IAC9C,CAAC;IAED,qEAAqE;IACrE,EAAE;IACF,yEAAyE;IACzE,uEAAuE;IACvE,mEAAmE;IACnE,sEAAsE;IACtE,yEAAyE;IACzE,qCAAqC;IACrC,MAAM,gBAAgB,GAAa,EAAE,CAAC;IACtC,IAAI,QAAQ,EAAE,CAAC;QACX,KAAK,MAAM,OAAO,IAAI,cAAc,EAAE,CAAC;YACnC,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC;gBAAE,SAAS;YAClD,IAAI,CAAC;gBACD,MAAM,UAAU,GAAG,IAAA,yCAAoB,EAAC,GAAG,CAAC,aAAa,EAAE;oBACvD,qBAAqB,EAAE,QAAQ;oBAC/B,WAAW,EAAE,IAAI;oBACjB,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,WAAW,EAAE,OAAO,CAAC,IAAI;oBACzB,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,MAAM,EAAE,OAAO,CAAC,MAAiD;oBACjE,YAAY,EAAE,iBAAiB,CAAC,OAAO,CAAC;oBACxC,kBAAkB,EAAE,OAAO,CAAC,YAAY;oBACxC,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,EAAE;iBACnC,CAAC,CAAC;gBACH,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;gBACjC,OAAO,CAAC,QAAQ,GAAG,UAAU,CAAC,EAAE,CAAC;gBACjC,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YACzC,CAAC;YAAC,OAAO,SAAc,EAAE,CAAC;gBACtB,4DAA4D;gBAC5D,OAAO,CAAC,IAAI,CAAC,6CAA6C,SAAS,EAAE,OAAO,IAAI,SAAS,EAAE,CAAC,CAAC;YACjG,CAAC;QACL,CAAC;IACL,CAAC;IAED,uEAAuE;IACvE,IAAI,OAAO,EAAE,CAAC;QACV,OAAO,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC;IACxE,CAAC;SAAM,CAAC;QACR,MAAM,eAAe,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAC9C,CAAC,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,IAAI,CAAC,CAAC,UAAU,IAAI,EAAE,CAAC,CAC3E,CAAC;QAEF,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,EAAE,CAAC;YACzC,QAAQ,CAAC,CAAC,EAAE,eAAe,CAAC,MAAM,EAAE,wBAAwB,eAAe,CAAC,MAAM,gBAAgB,CAAC,CAAC;QACxG,CAAC;QAED,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,uBAAc,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAC3E,IAAI,SAAS;YAAE,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;QAEvC,IAAI,CAAC;YACD,KAAK,MAAM,OAAO,IAAI,eAAe,EAAE,CAAC;gBACpC,IAAI,QAAQ,EAAE,CAAC;oBACX,MAAM,EAAE,CAAC;oBACT,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,UAAU,OAAO,CAAC,IAAI,YAAY,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC;gBAClG,CAAC;gBAED,MAAM,UAAU,GAAG,oBAAoB,OAAO,CAAC,IAAI,YAAY,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,OAAO,CAAC,QAAQ,kBAAkB,OAAO,CAAC,UAAU,gBAAgB,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,QAAQ,EAAE,CAAC;gBAE/P,IAAI,CAAC;oBACD,MAAM,QAAQ,GAAG,MAAM,SAAU,CAAC,eAAe,CAC7C,wCAAwC,EACxC,UAAU,EACV,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,EACrH,MAAM,EACN,iBAAiB,EACjB,GAAG,CAAC,aAAa,CACpB,CAAC;oBAEF,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;wBACrB,OAAO,CAAC,SAAS,GAAG,YAAY,CAAC;wBACjC,OAAO,CAAC,eAAe,GAAG,QAAQ,CAAC,MAAM,CAAC;wBAC1C,SAAS;oBACb,CAAC;oBAED,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAc,MAAM,EAAE;wBACvD,IAAI;wBACJ,QAAQ;wBACR,aAAa,EAAE;4BACX,IAAI,EAAE,OAAO,CAAC,IAAI;4BAClB,UAAU,EAAE,OAAO,CAAC,IAAI;4BACxB,QAAQ,EAAE,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI;4BACzC,gBAAgB,EAAE,OAAO,CAAC,QAAQ;yBACrC;qBACJ,CAAC,CAAC;oBAEH,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;wBACrB,OAAO,CAAC,GAAG,GAAG;4BACV,SAAS,EAAE,OAAO,CAAC,UAAU;4BAC7B,YAAY,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE;4BACrF,UAAU,EAAE,OAAO,CAAC,WAAW,IAAI,EAAE;4BACrC,aAAa,EAAE,OAAO,CAAC,cAAc;4BACrC,UAAU,EAAE,OAAO,CAAC,UAAU;yBACjC,CAAC;wBACF,OAAO,CAAC,SAAS,GAAG,eAAe,CAAC;wBACpC,OAAO,CAAC,aAAa,GAAG,QAAQ,CAAC,SAAS,CAAC;wBAE3C,yDAAyD;wBACzD,yDAAyD;wBACzD,sDAAsD;wBACtD,oDAAoD;wBACpD,wDAAwD;wBACxD,wDAAwD;wBACxD,0DAA0D;wBAC1D,uBAAuB;wBACvB,IAAI,CAAC;4BACD,IAAI,QAAQ,EAAE,CAAC;gCACX,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,qBAAqB,OAAO,CAAC,IAAI,YAAY,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC;4BAC7G,CAAC;4BACD,MAAM,eAAe,GAAG,IAAA,0CAAsB,GAAE,CAAC;4BACjD,MAAM,gBAAgB,GAAG,IAAI,uCAAmB,CAAC,eAAe,CAAC,CAAC;4BAClE,MAAM,eAAe,GAAG,MAAM,IAAA,gCAAgB,EAAC;gCAC3C,OAAO,EAAE;oCACL,IAAI,EAAE,OAAO,CAAC,IAAI;oCAClB,IAAI,EAAE,OAAO,CAAC,IAAI;oCAClB,OAAO,EAAE,OAAO,CAAC,OAAO;oCACxB,QAAQ,EAAE,OAAO,CAAC,QAAQ;oCAC1B,GAAG,EAAE,OAAO,CAAC,GAAG;oCAChB,QAAQ,EAAE,OAAO,CAAC,QAAQ;iCAC7B;gCACD,YAAY,EAAE,IAAI;gCAClB,SAAS,EAAE,OAAO,CAAC,UAAU;gCAC7B,YAAY,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE;gCACrF,QAAQ,EAAE,QAAQ,IAAI,EAAE;gCACxB,YAAY,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;oCAClC,QAAQ,EAAE,EAAE,CAAC,QAAQ;oCACrB,OAAO,EAAE,EAAE,CAAC,OAAO;oCACnB,YAAY,EAAE,EAAE,CAAC,YAAY;iCAChC,CAAC,CAAC;gCACH,aAAa,EAAE,GAAG,CAAC,aAAa;gCAChC,QAAQ;gCACR,MAAM;gCACN,eAAe,EAAE,OAAO,CAAC,MAA4D;gCACrF,aAAa,EAAE,gBAAgB;gCAC/B,MAAM,EAAE,WAAW;gCACnB,UAAU,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;oCAC7B,IAAI,QAAQ;wCAAE,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC,CAAC;gCACxG,CAAC;6BACJ,CAAC,CAAC;4BAEH,OAAO,CAAC,eAAe,GAAG,eAAe,CAAC;4BAC1C,0DAA0D;4BAC1D,QAAQ,eAAe,CAAC,MAAM,EAAE,CAAC;gCAC7B,KAAK,QAAQ;oCACT,OAAO,CAAC,SAAS,GAAG,qBAAqB,CAAC;oCAC1C,MAAM;gCACV,KAAK,kBAAkB;oCACnB,OAAO,CAAC,SAAS,GAAG,sBAAsB,CAAC;oCAC3C,MAAM;gCACV,KAAK,cAAc;oCACf,OAAO,CAAC,SAAS,GAAG,+BAA+B,CAAC;oCACpD,MAAM;gCACV,KAAK,gBAAgB;oCACjB,OAAO,CAAC,SAAS,GAAG,oBAAoB,CAAC;oCACzC,MAAM;gCACV,uEAAuE;4BAC3E,CAAC;wBACL,CAAC;wBAAC,OAAO,YAAiB,EAAE,CAAC;4BACzB,yDAAyD;4BACzD,gDAAgD;4BAChD,OAAO,CAAC,IAAI,CAAC,4CAA4C,OAAO,CAAC,IAAI,QAAQ,OAAO,CAAC,IAAI,KAAK,YAAY,EAAE,OAAO,IAAI,YAAY,EAAE,CAAC,CAAC;wBAC3I,CAAC;oBACL,CAAC;gBACL,CAAC;gBAAC,OAAO,GAAQ,EAAE,CAAC;oBAChB,OAAO,CAAC,SAAS,GAAG,WAAW,CAAC;oBAChC,OAAO,CAAC,eAAe,GAAG,GAAG,CAAC,OAAO,CAAC;oBACtC,OAAO,CAAC,IAAI,CAAC,0CAA0C,OAAO,CAAC,IAAI,QAAQ,OAAO,CAAC,IAAI,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC/G,CAAC;YACL,CAAC;QACL,CAAC;gBAAS,CAAC;YACP,IAAI,SAAS;gBAAE,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;QAC1C,CAAC;IACD,CAAC,CAAC,qBAAqB;IAEvB,oEAAoE;IACpE,oEAAoE;IACpE,4CAA4C;IAC5C,IAAI,QAAQ,IAAI,WAAW,CAAC,iBAAiB,KAAK,cAAc,EAAE,CAAC;QAC/D,IAAI,CAAC;YACD,IAAA,2BAAe,EAAC,GAAG,CAAC,aAAa,EAAE,QAAS,EAAE,IAAI,EAAE;gBAChD,QAAQ,EAAE,cAAc;gBACxB,kBAAkB,EAAE,WAAW,CAAC,kBAAkB;gBAClD,YAAY,EAAE,WAAW,CAAC,YAAY;gBACtC,MAAM,EAAE,WAAW,CAAC,MAAM;gBAC1B,iBAAiB,EAAE,WAAW,CAAC,iBAAiB;gBAChD,OAAO,EAAE,WAAW,CAAC,OAAO;gBAC5B,SAAS,EAAE,WAAW,CAAC,SAAS;gBAChC,YAAY,EAAE,WAAW,CAAC,YAAY;gBACtC,iBAAiB,EAAE,WAAW,CAAC,iBAAiB;gBAChD,YAAY,EAAE,WAAW,CAAC,YAAY;aACzC,EAAE,iBAAiB,CAAC,CAAC;QAC1B,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAChB,OAAO,CAAC,IAAI,CAAC,qCAAqC,GAAG,EAAE,OAAO,IAAI,GAAG,EAAE,CAAC,CAAC;QAC7E,CAAC;IACL,CAAC;IAED,kFAAkF;IAClF,EAAE;IACF,uEAAuE;IACvE,oEAAoE;IACpE,wEAAwE;IACxE,sEAAsE;IACtE,wEAAwE;IACxE,6BAA6B;IAC7B,IAAI,UAA8B,CAAC;IACnC,IAAI,uBAAuB,GAAG,CAAC,EAAE,CAAC;QAC9B,UAAU,GAAG,wCAAwC,uBAAuB,+KAA+K,6CAA2B,EAAE,CAAC;IAC7R,CAAC;SAAM,IAAI,oBAAoB,GAAG,CAAC,EAAE,CAAC;QAClC,UAAU,GAAG,wCAAwC,oBAAoB,yDAAyD,YAAY,CAAC,WAAW,cAAc,YAAY,CAAC,WAAW,eAAe,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,cAAc,GAAG,IAAI,CAAC,sHAAsH,CAAC;IACxX,CAAC;IACD,IAAI,iBAAiB,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,SAAS,GAAG,GAAG,iBAAiB,2JAA2J,CAAC;QAClM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,KAAK,SAAS,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACxE,CAAC;IAED,8EAA8E;IAC9E,IAAI,CAAC;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACpG,IAAA,oCAAqB,EAAC,GAAG,CAAC,aAAa,EAAE;YACrC,QAAQ,EAAE,QAAQ,IAAI,aAAa;YACnC,QAAQ;YACR,QAAQ;YACR,UAAU,EAAE,WAAW,CAAC,MAAM;YAC9B,SAAS,EAAE,WAAW,CAAC,SAAS;YAChC,YAAY,EAAE,WAAW,CAAC,YAAY;YACtC,aAAa,EAAE,cAAc;YAC7B,UAAU,EAAE,WAAW,CAAC,UAAU;YAClC,MAAM,EAAE,KAAK;YACb,WAAW,EAAE;gBACT,iBAAiB,EAAE,aAAa,CAAC,iBAAiB;gBAClD,UAAU,EAAE,aAAa,CAAC,UAAU;gBACpC,YAAY,EAAE,aAAa,CAAC,YAAY;gBACxC,YAAY,EAAE,aAAa,CAAC,YAAY;gBACxC,WAAW,EAAE,aAAa,CAAC,kBAAkB;aAChD;YACD,KAAK;YACL,kBAAkB,EAAE,WAAW,CAAC,kBAAkB;YAClD,YAAY,EAAE,WAAW,CAAC,YAAY;YACtC,sBAAsB,EAAE,CAAC,CAAC,sBAAsB;YAChD,YAAY,EAAE,WAAW,CAAC,YAAY;YACtC,iBAAiB,EAAE,WAAW,CAAC,iBAAiB;YAChD,iBAAiB,EAAE,WAAW,CAAC,iBAAiB;SACnD,CAAC,CAAC;IACP,CAAC;IAAC,MAAM,CAAC;QACL,0DAA0D;IAC9D,CAAC;IAED,wEAAwE;IACxE,oEAAoE;IACpE,uEAAuE;IACvE,IAAI,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC7C,IAAI,QAAQ,EAAE,CAAC;YACX,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACjH,CAAC;QACD,IAAI,WAAW,CAAC,kBAAkB,IAAI,WAAW,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9E,IAAA,oCAAsB,EAAC,GAAG,CAAC,aAAa,EAAE;gBACtC,KAAK,EAAE,WAAW,CAAC,kBAAkB;gBACrC,UAAU;aACb,CAAC,CAAC;QACP,CAAC;QACD,IAAI,WAAW,CAAC,YAAY,IAAI,WAAW,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClE,IAAA,8BAAgB,EAAC,GAAG,CAAC,aAAa,EAAE;gBAChC,IAAI,EAAE,WAAW,CAAC,YAAY;gBAC9B,UAAU;aACb,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACL,kEAAkE;IACtE,CAAC;IAED,OAAO;QACH,MAAM,EAAE,WAAW,CAAC,MAAM;QAC1B,OAAO,EAAE,WAAW,CAAC,OAAO;QAC5B,aAAa,EAAE,cAAc;QAC7B,gBAAgB,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC;QACnE,WAAW,EAAE,EAAE;QACf,kBAAkB,EAAE,WAAW,CAAC,kBAAkB,IAAI,EAAE;QACxD,YAAY,EAAE,WAAW,CAAC,YAAY,IAAI,EAAE;QAC5C,SAAS,EAAE,WAAW,CAAC,SAAS;QAChC,YAAY,EAAE,WAAW,CAAC,YAAY;QACtC,iBAAiB,EAAE,WAAW,CAAC,iBAAiB;QAChD,iBAAiB,EAAE,WAAW,CAAC,iBAAiB;QAChD,YAAY,EAAE,WAAW,CAAC,YAAY;QACtC,UAAU,EAAE,WAAW,CAAC,UAAU;QAClC,WAAW,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,MAAM;QACrE,aAAa,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,MAAM;QACzE,iBAAiB,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,cAAc,CAAC,CAAC,MAAM;QACjF,oBAAoB,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,kBAAkB,CAAC,CAAC,MAAM;QACxF,YAAY,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,MAAM;QACvE,UAAU;QACV,WAAW,EAAE;YACT,iBAAiB,EAAE,aAAa,CAAC,iBAAiB;YAClD,UAAU,EAAE,aAAa,CAAC,UAAU;YACpC,YAAY,EAAE,aAAa,CAAC,YAAY;YACxC,YAAY,EAAE,aAAa,CAAC,YAAY;YACxC,WAAW,EAAE,aAAa,CAAC,kBAAkB;YAC7C,MAAM,EAAE,YAAY;SACvB;QACD,WAAW,EAAE;YACT,KAAK,EAAE,gBAAgB;YACvB,YAAY,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,MAAM;SAChF;KACJ,CAAC;AACN,CAAC;AAED,SAAS,2BAA2B,CAChC,QAAyB,EACzB,UAA+D,EAC/D,QAAgB;IAEhB,MAAM,GAAG,GAAG,IAAA,kCAAa,EAAC,QAAQ,CAAC,CAAC;IAEpC,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC5B,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;QAC3B,IAAI,CAAC,KAAK,YAAY,IAAI,CAAC,KAAK,uBAAuB;YAAE,SAAS,GAAG,IAAI,CAAC;QAC1E,IAAI,CAAC,KAAK,aAAa;YAAE,SAAS,GAAG,IAAI,CAAC;QAC1C,IAAI,CAAC,KAAK,cAAc;YAAE,UAAU,GAAG,IAAI,CAAC;IAChD,CAAC;IAED,IAAI,aAAa,GAAG,CAAC,CAAC;IACtB,IAAI,SAAS;QAAE,aAAa,EAAE,CAAC;IAC/B,IAAI,SAAS;QAAE,aAAa,EAAE,CAAC;IAC/B,IAAI,UAAU;QAAE,aAAa,EAAE,CAAC;IAEhC,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACvB,MAAM,QAAQ,GAAG,CAAC,CAAC,UAAU,CAAC;QAC9B,MAAM,OAAO,GAAG,2BAA2B,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACvH,mEAAmE;QACnE,sEAAsE;QACtE,sEAAsE;QACtE,qDAAqD;QACrD,IAAI,OAAO,GAAG,QAAQ,CAAC;QACvB,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YACxB,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACzC,CAAC;QACD,+DAA+D;QAC/D,oEAAoE;QACpE,iEAAiE;QACjE,IAAI,CAAC,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxB,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACpC,CAAC;QAED,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC9B,CAAC,CAAC,aAAa,GAAG,IAAA,qCAAgB,EAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;QAC/E,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;YACvB,CAAC,CAAC,kBAAkB,GAAG,QAAQ,CAAC;YAChC,CAAC,CAAC,UAAU,GAAG,OAAO,CAAC;QAC3B,CAAC;IACL,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,SAAgB,2BAA2B,CACvC,OAAgC,EAChC,cAAgD,EAChD,aAAqB,EACrB,eAAyB;IAEzB,QAAQ,OAAO,EAAE,CAAC;QACd,KAAK,QAAQ;YACT,IAAI,eAAe;gBAAE,OAAO,EAAE,CAAC;YAC/B,OAAO,SAAS,CAAC;QACrB,KAAK,UAAU;YACX,OAAO,EAAE,CAAC;QACd,KAAK,kBAAkB;YACnB,OAAO,EAAE,CAAC;QACd,KAAK,cAAc,CAAC;QACpB,KAAK,SAAS;YACV,IAAI,cAAc,KAAK,UAAU;gBAAE,OAAO,EAAE,CAAC;YAC7C,IAAI,aAAa,KAAK,CAAC;gBAAE,OAAO,EAAE,CAAC;YACnC,IAAI,aAAa,KAAK,CAAC;gBAAE,OAAO,EAAE,CAAC;YACnC,OAAO,EAAE,CAAC;QACd;YACI,OAAO,EAAE,CAAC;IAClB,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,SAAgB,oBAAoB,CAChC,QAAgB,EAChB,OAAgC,EAChC,cAAgD,EAChD,aAAqB;IAErB,MAAM,OAAO,GAAG,2BAA2B,CAAC,OAAO,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC;IACpF,IAAI,OAAO,GAAG,QAAQ,CAAC;IACvB,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAChE,IAAI,OAAO,KAAK,QAAQ;QAAE,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC1D,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AAC/B,CAAC"}
1
+ {"version":3,"file":"agentScan.js","sourceRoot":"","sources":["../../src/tools/agentScan.ts"],"names":[],"mappings":"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"}
@@ -52,8 +52,9 @@ async function toolAttack(ctx, args) {
52
52
  `Budget: max ${12} steps, 90s wall clock`;
53
53
  const broker = new broker_1.ApprovalBroker();
54
54
  await broker.start();
55
+ const progress = args._progress;
55
56
  try {
56
- const result = await broker.requestApproval('securecode.attack', summary, [endpoint.path, targetHost, port, code, args.vulnerabilityType], 60_000);
57
+ const result = await broker.requestApproval('securecode.attack', summary, [endpoint.path, targetHost, port, code, args.vulnerabilityType], 120_000, 'paid-generation', null, { onUrl: progress ? (url) => progress(0, 1, `⏸ Approval required — open ${url} (expires in 120s)`) : undefined });
57
58
  if (!result.approved) {
58
59
  return {
59
60
  applied: false,
@@ -1 +1 @@
1
- {"version":3,"file":"attack.js","sourceRoot":"","sources":["../../src/tools/attack.ts"],"names":[],"mappings":";;AAOA,gCA6FC;AAnGD,+CAAoD;AACpD,mDAAgD;AAChD,gDAAiD;AACjD,0CAAsE;AAG/D,KAAK,UAAU,UAAU,CAAC,GAAkB,EAAE,IAAS;IAC1D,IAAI,IAAI,GAAuB,IAAI,CAAC,IAAI,CAAC;IACzC,IAAI,QAAQ,GAAuB,IAAI,CAAC,QAAQ,CAAC;IACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAA8B,CAAC;IAErD,IAAI,CAAC,IAAI,IAAI,QAAQ,EAAE,CAAC;QACpB,MAAM,IAAI,GAAG,IAAA,6BAAqB,EAAC,GAAG,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;QAChE,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACjB,QAAQ,GAAG,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC;IACzC,CAAC;IAED,IAAI,CAAC,IAAI,EAAE,CAAC;QACR,OAAO;YACH,OAAO,EAAE,KAAK;YACd,IAAI,EAAE,sDAAsD;SAC/D,CAAC;IACN,CAAC;IAED,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,OAAO;YACH,OAAO,EAAE,KAAK;YACd,IAAI,EAAE,oFAAoF;SAC7F,CAAC;IACN,CAAC;IAED,MAAM,GAAG,GAAG,IAAA,iBAAS,EAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IACzC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvD,OAAO;YACH,OAAO,EAAE,KAAK;YACd,IAAI,EAAE,wNAAwN;SACjO,CAAC;IACN,CAAC;IAED,IAAI,QAAa,CAAC;IAClB,IAAI,QAAQ,EAAE,CAAC;QACX,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAClE,QAAQ,GAAI,GAAG,CAAC,SAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;YAC3C,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YACpD,OAAO,EAAE,KAAK,OAAO,IAAI,EAAE,CAAC,QAAQ,CAAC,GAAG,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAChF,CAAC,CAAC,CAAC;IACP,CAAC;IACD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,QAAQ,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAChC,CAAC;IAED,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC;IAClD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,WAAW,CAAC;IAElD,MAAM,OAAO,GAAG,mBAAmB,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,IAAI,SAAS,QAAQ,CAAC,UAAU,IAAI;QAC/F,WAAW,UAAU,IAAI,IAAI,IAAI;QACjC,kBAAkB,IAAI,CAAC,iBAAiB,IAAI,iBAAiB,IAAI;QACjE,eAAe,EAAE,wBAAwB,CAAC;IAE9C,MAAM,MAAM,GAAG,IAAI,uBAAc,EAAE,CAAC;IACpC,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;IAErB,IAAI,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,eAAe,CACvC,mBAAmB,EACnB,OAAO,EACP,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,iBAAiB,CAAC,EAC/D,MAAM,CACT,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACnB,OAAO;gBACH,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,SAAS,EAAE,MAAM,CAAC,SAAS;aAC9B,CAAC;QACN,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,IAAA,qBAAS,EAChC,GAAG,EACH,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,CAAC,UAAU,EAAE,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE,EACpH,IAAI,EACJ,QAAQ,EACR;YACI,UAAU,EAAE,IAAI;YAChB,UAAU;YACV,MAAM,EAAE,SAAS;SACpB,CACJ,CAAC;QAEF,OAAO;YACH,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,YAAY,CAAC,MAAM;YAC3B,MAAM,EAAE,YAAY,CAAC,MAAM;YAC3B,KAAK,EAAE,YAAY,CAAC,KAAK;SAC5B,CAAC;IACN,CAAC;YAAS,CAAC;QACP,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;IACxB,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"attack.js","sourceRoot":"","sources":["../../src/tools/attack.ts"],"names":[],"mappings":"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"}
package/dist/tools/fix.js CHANGED
@@ -4,6 +4,7 @@ exports.toolFix = toolFix;
4
4
  const client_1 = require("../api/client");
5
5
  const files_1 = require("../utils/files");
6
6
  const broker_1 = require("../approval/broker");
7
+ const fixCodeMerge_1 = require("../attack/fixCodeMerge");
7
8
  async function toolFix(ctx, args) {
8
9
  const client = new client_1.ApiClient({ baseUrl: ctx.apiUrl, token: ctx.apiToken });
9
10
  let code = args.code;
@@ -18,8 +19,9 @@ async function toolFix(ctx, args) {
18
19
  const summary = `Fix ${args.vulnerabilityType} at line ${args.lineStart}-${args.lineEnd}\n\nEvidence: ${args.evidenceSnippet?.substring(0, 200) || '(not provided)'}`;
19
20
  const broker = new broker_1.ApprovalBroker();
20
21
  await broker.start();
22
+ const progress = args._progress;
21
23
  try {
22
- const result = await broker.requestApproval('securecode.fix', summary, [code, language, args.vulnerabilityType, args.lineStart, args.lineEnd, args.evidenceSnippet], 60_000, 'paid-generation', ctx.workspaceRoot);
24
+ const result = await broker.requestApproval('securecode.fix', summary, [code, language, args.vulnerabilityType, args.lineStart, args.lineEnd, args.evidenceSnippet], 120_000, 'paid-generation', ctx.workspaceRoot, { onUrl: progress ? (url) => progress(0, 1, `⏸ Approval required — open ${url} (expires in 120s)`) : undefined });
23
25
  if (!result.approved) {
24
26
  return {
25
27
  applied: false,
@@ -35,9 +37,29 @@ async function toolFix(ctx, args) {
35
37
  line_start: args.lineStart,
36
38
  line_end: args.lineEnd,
37
39
  evidence_snippet: args.evidenceSnippet,
40
+ ...(args.why ? { why: String(args.why).slice(0, 2000) } : {}),
41
+ ...(args.severity ? { severity: String(args.severity).slice(0, 50) } : {}),
42
+ ...(args.verificationEvidence ? { verification_evidence: String(args.verificationEvidence).slice(0, 4000) } : {}),
38
43
  },
39
44
  ...(args.framework ? { framework: args.framework } : {}),
45
+ ...(Array.isArray(args.relatedFiles) && args.relatedFiles.length > 0
46
+ ? { relatedFiles: args.relatedFiles.slice(0, 5) }
47
+ : {}),
40
48
  });
49
+ // Patch-apply validation: the fixer returns a fragment meant to
50
+ // replace [replace_range] lines. Verify the range actually fits the
51
+ // file the user has (it may have changed since the scan) so a broken
52
+ // patch is flagged instead of silently failing in the editor.
53
+ let applyValidation;
54
+ if (data.replace_range && data.fixed_code) {
55
+ const merge = (0, fixCodeMerge_1.mergeFixedCode)(code, data.fixed_code, data.replace_range);
56
+ applyValidation = merge.ok
57
+ ? { valid: true }
58
+ : { valid: false, error: merge.error };
59
+ }
60
+ else if (data.fixed_code) {
61
+ applyValidation = { valid: false, error: 'The fixer did not return a replace_range; apply manually by searching for the vulnerable snippet.' };
62
+ }
41
63
  return {
42
64
  applied: false,
43
65
  fix: {
@@ -48,7 +70,16 @@ async function toolFix(ctx, args) {
48
70
  whySecure: data.why_secure,
49
71
  importsNeeded: data.imports_needed,
50
72
  confidence: data.confidence,
73
+ replaceRange: data.replace_range,
74
+ },
75
+ syntax: {
76
+ valid: data.syntax_valid,
77
+ checked: data.syntax_checked,
78
+ retried: data.syntax_retried,
79
+ error: data.syntax_error,
80
+ unavailableReason: data.syntax_unavailable_reason,
51
81
  },
82
+ applyValidation,
52
83
  note: 'Patch returned for human review. Apply in your editor — do not auto-apply.',
53
84
  approvedBy: result.requestId,
54
85
  };