common-qa-mcp 0.10.1 → 0.12.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 (42) hide show
  1. package/dist/adapters/http.d.ts +4 -0
  2. package/dist/adapters/http.d.ts.map +1 -1
  3. package/dist/adapters/http.js +19 -0
  4. package/dist/adapters/http.js.map +1 -1
  5. package/dist/adapters/remoteMcp/adapter.js +1 -1
  6. package/dist/adapters/simplifyqa/adapter.d.ts +60 -2
  7. package/dist/adapters/simplifyqa/adapter.d.ts.map +1 -1
  8. package/dist/adapters/simplifyqa/adapter.js +427 -47
  9. package/dist/adapters/simplifyqa/adapter.js.map +1 -1
  10. package/dist/adapters/simplifyqa/mapper.d.ts.map +1 -1
  11. package/dist/adapters/simplifyqa/mapper.js +4 -0
  12. package/dist/adapters/simplifyqa/mapper.js.map +1 -1
  13. package/dist/adapters/types.d.ts +35 -1
  14. package/dist/adapters/types.d.ts.map +1 -1
  15. package/dist/domain/types.d.ts +38 -0
  16. package/dist/domain/types.d.ts.map +1 -1
  17. package/dist/initAgents.d.ts.map +1 -1
  18. package/dist/initAgents.js +32 -17
  19. package/dist/initAgents.js.map +1 -1
  20. package/dist/server.d.ts.map +1 -1
  21. package/dist/server.js +18 -12
  22. package/dist/server.js.map +1 -1
  23. package/dist/tools/backlog.tools.d.ts.map +1 -1
  24. package/dist/tools/backlog.tools.js +96 -0
  25. package/dist/tools/backlog.tools.js.map +1 -1
  26. package/dist/tools/discovery.tools.d.ts.map +1 -1
  27. package/dist/tools/discovery.tools.js +160 -10
  28. package/dist/tools/discovery.tools.js.map +1 -1
  29. package/dist/tools/recording.tools.js +74 -16
  30. package/dist/tools/recording.tools.js.map +1 -1
  31. package/dist/tools/report.tools.d.ts +12 -0
  32. package/dist/tools/report.tools.d.ts.map +1 -0
  33. package/dist/tools/report.tools.js +104 -0
  34. package/dist/tools/report.tools.js.map +1 -0
  35. package/dist/tools/testcase.tools.d.ts.map +1 -1
  36. package/dist/tools/testcase.tools.js +167 -12
  37. package/dist/tools/testcase.tools.js.map +1 -1
  38. package/dist/tools/xlsx.d.ts +8 -0
  39. package/dist/tools/xlsx.d.ts.map +1 -0
  40. package/dist/tools/xlsx.js +113 -0
  41. package/dist/tools/xlsx.js.map +1 -0
  42. package/package.json +1 -1
@@ -10,6 +10,16 @@ import { emitTcEdit, openTcViewerWindow } from './tcEditPublisher.js';
10
10
  function describeError(e) {
11
11
  return e instanceof Error ? e.message : String(e);
12
12
  }
13
+ /** First text block from an MCP tool result, for forwarding agent-side save errors. */
14
+ function firstText(res) {
15
+ const r = res;
16
+ if (Array.isArray(r?.content)) {
17
+ const text = r.content.map((c) => (typeof c?.text === 'string' ? c.text : '')).filter(Boolean).join('\n');
18
+ if (text)
19
+ return text;
20
+ }
21
+ return 'Recorder save failed.';
22
+ }
13
23
  /** The agent's `read_journal` emits an API step's whole request as top-level `apiData` (the wire
14
24
  * key), whereas the neutral Step holds it as `api`. Fold it across so the save mapper finds it and
15
25
  * emits a real API step (with its request + assertions) instead of an empty NORMAL_STATEMENT. */
@@ -565,21 +575,90 @@ export function registerTestcaseTools(server, deps) {
565
575
  }
566
576
  });
567
577
  server.registerTool('tc_save', {
568
- title: 'Save a draft test case to the product',
569
- description: 'Validate a draft, then PERSIST it to the connected product — creating a NEW test case, or ' +
570
- 'UPDATING the one it was opened from (when the draft carries an id). Returns the product id + a ' +
571
- 'deep link. Requires a live connection (qa_connect); the persist is forwarded to the product MCP.\n' +
578
+ title: 'Save a draft or a live recording',
579
+ description: 'Persist a test case to the connected product. Pass EXACTLY ONE of:\n' +
580
+ ' • `draftId` — validate and save a draft (create, or update when the draft carries an id).\n' +
581
+ ' • `sessionId` — save a LIVE/RECENT recording by asking the /mcp-recorder window to click ' +
582
+ 'its OWN Save button. This is the exact-parity path: the recorder editor saves the steps, ' +
583
+ 'objects, parameters, control flow, functions, API popup values and title/module/story that ' +
584
+ 'the user is looking at, including edits made in the window. The recorder window must be ' +
585
+ 'open; it stays open for review after saving. Returns the created test case id + deep link.\n' +
586
+ 'Requires a live connection (qa_connect).\n' +
572
587
  '⚠️ CALL ONLY ON AN EXPLICIT USER SAVE INSTRUCTION (e.g. "save it", "save this", "persist it"). ' +
573
588
  'RECORDING or AUTHORING a test case is NOT a save instruction; neither is the user approving the ' +
574
589
  'content ("looks good", "nice"). After a recording/draft finishes, SHOW the steps and ASK — do NOT ' +
575
- 'auto-save. When unsure whether a reply meant save, ASK rather than saving.',
576
- inputSchema: { draftId: z.string().describe('The draft id from tc_draft_create / tc_draft_open.') },
590
+ 'auto-save. When unsure whether a reply meant save, ASK rather than saving. Never save a recording ' +
591
+ 'TWICE (UI Save + tc_save): if the user already clicked Save in the recorder, treat it as done.',
592
+ inputSchema: {
593
+ draftId: z.string().optional().describe('Draft id from tc_draft_create / tc_draft_open. Omit when saving a live recording.'),
594
+ sessionId: z.string().optional().describe('Recording session id from core_activate_technology (or core_active_recordings). Saves via the recorder window\'s own Save button.'),
595
+ allowDuplicate: z.boolean().optional().describe('Set true ONLY after the user confirms they want a new test case with the same name as an existing one. Default: a new test case whose name already exists is saved as name_1, name_2, ….'),
596
+ copyTestdataFrom: z.string().optional().describe('Optional source TC id (or TC code). After the recording is saved, copy that TC\'s default-' +
597
+ 'iteration testdata onto the new test case, matching parameters BY NAME. Use this when ' +
598
+ 'converting a manual TC (tc_automate) so the converted TC keeps the manual testdata instead ' +
599
+ 'of the values typed during recording. Omit for a normal recording.'),
600
+ },
577
601
  annotations: { readOnlyHint: false },
578
- }, async ({ draftId }) => {
602
+ }, async ({ draftId, sessionId, allowDuplicate, copyTestdataFrom }) => {
579
603
  const adapter = deps.getAdapter?.();
580
604
  if (!adapter) {
581
605
  return err('Not connected to a product. Use qa_connect first — saving persists to the backend.');
582
606
  }
607
+ if (!!draftId === !!sessionId) {
608
+ return err('Pass exactly one of draftId (save a draft) or sessionId (save a live recording via the recorder window).');
609
+ }
610
+ if (sessionId) {
611
+ if (!adapter.callRaw) {
612
+ return err('Saving a live recording needs a local recorder agent. Use qa_connect with an agent, or save a draft with draftId.');
613
+ }
614
+ let res;
615
+ try {
616
+ res = await adapter.callRaw('core_save_session', { sessionId, timeoutMs: 60000 });
617
+ }
618
+ catch (e) {
619
+ return err(`Recorder save failed: ${describeError(e)}`);
620
+ }
621
+ const r = res;
622
+ if (r?.isError)
623
+ return err(firstText(res));
624
+ const saved = r?.structuredContent?.saved;
625
+ const id = saved?.tcId ?? saved?.id;
626
+ if (id == null)
627
+ return err(firstText(res) || 'Recorder reported success but returned no test case id.');
628
+ const code = saved?.code != null ? String(saved.code) : String(id);
629
+ const verb = saved?.created === false ? 'Updated' : 'Created';
630
+ const productUrl = typeof saved?.productUrl === 'string' ? saved.productUrl : undefined;
631
+ const link = productUrl ? `\n${productUrl}` : '';
632
+ // tc_automate: make the converted TC's testdata come strictly from the SOURCE manual TC,
633
+ // overwriting whatever values the recording typed. Best-effort — the save already succeeded.
634
+ let copyNote = '';
635
+ if (copyTestdataFrom) {
636
+ if (!adapter.copyTestdata) {
637
+ copyNote = `\n⚠️ Testdata was NOT copied from ${copyTestdataFrom}: this provider has no testdata store.`;
638
+ }
639
+ else {
640
+ try {
641
+ const c = await adapter.copyTestdata({ fromTcId: copyTestdataFrom, toTcId: String(id) });
642
+ copyNote = `\nTestdata copied from ${copyTestdataFrom}: ${c.copied} value(s)` +
643
+ (c.skipped.length ? `; skipped (no matching parameter): ${c.skipped.join(', ')}` : '') + '.';
644
+ }
645
+ catch (e) {
646
+ copyNote = `\n⚠️ Testdata copy from ${copyTestdataFrom} failed: ${describeError(e)}. ` +
647
+ 'The test case was saved; copy the testdata manually.';
648
+ }
649
+ }
650
+ }
651
+ return ok(`${verb} test case ${code}.${link}${copyNote}`, {
652
+ saved: {
653
+ id: String(id),
654
+ ...(productUrl ? { productUrl } : {}),
655
+ ...(copyTestdataFrom ? { copyTestdataFrom } : {}),
656
+ },
657
+ });
658
+ }
659
+ if (!draftId) {
660
+ return err('Pass exactly one of draftId or sessionId.');
661
+ }
583
662
  let draft;
584
663
  try {
585
664
  draft = deps.drafts.get(draftId);
@@ -599,6 +678,27 @@ export function registerTestcaseTools(server, deps) {
599
678
  `tc_draft_update({ draftId: "${draftId}", ops: [{ op: "set_meta", patch: { folderOrModule: "<module id>" } }] }) ` +
600
679
  'before retrying tc_save.');
601
680
  }
681
+ let renamedFrom;
682
+ if (isCreate && !allowDuplicate) {
683
+ // A name that already exists is auto-suffixed (name_1, name_2, …) rather than saved as a
684
+ // duplicate. Best-effort: a failed lookup must not block the save.
685
+ try {
686
+ const base = draft.tc.title.trim();
687
+ const hits = await adapter.listTestCases({ search: base, limit: 200 });
688
+ const taken = new Set(hits.map((t) => t.title.trim().toLowerCase()));
689
+ if (taken.has(base.toLowerCase())) {
690
+ let n = 1;
691
+ while (taken.has(`${base}_${n}`.toLowerCase()))
692
+ n++;
693
+ // Mutate the stored draft directly: applyOps would drop its recorder sessionId.
694
+ draft.tc = { ...draft.tc, title: `${base}_${n}` };
695
+ renamedFrom = base;
696
+ }
697
+ }
698
+ catch {
699
+ // lookup failed — fall through to save
700
+ }
701
+ }
602
702
  {
603
703
  const missing = [];
604
704
  const data = draft.tc.data ?? {};
@@ -681,7 +781,9 @@ export function registerTestcaseTools(server, deps) {
681
781
  // per-save — the previous callRaw('recording_window_close', ...) had no handler anywhere and
682
782
  // was a silently-swallowed no-op.
683
783
  const link = saved.productUrl ? `\n${saved.productUrl}` : '';
684
- return ok(`${isUpdate ? 'Updated' : 'Created'} test case ${saved.id}.${link}`, { saved, draftId: draft.draftId });
784
+ return ok(`${isUpdate ? 'Updated' : 'Created'} test case ${saved.id}.` +
785
+ (renamedFrom ? ` "${renamedFrom}" already existed, so it was saved as "${draft.tc.title}".` : '') +
786
+ link, { saved, draftId: draft.draftId });
685
787
  }
686
788
  catch (e) {
687
789
  return err(describeError(e));
@@ -740,6 +842,37 @@ export function registerTestcaseTools(server, deps) {
740
842
  const moduleLine = moduleId !== undefined
741
843
  ? `moduleId:${moduleId} — is already selected in the recorder's module bar.`
742
844
  : 'no module on source — the user picks one in the recorder before Save.';
845
+ // The converted TC must take its testdata STRICTLY from the manual TC — not from whatever the
846
+ // recording happens to type (previously the recording context's values became the new TC's
847
+ // testdata). Read the source default iteration and put the exact values in the guide; the
848
+ // post-save copy (tc_save copyTestdataFrom / recorder sourceTcId) then enforces them.
849
+ let testData = null;
850
+ try {
851
+ if (adapter.getDefaultIteration) {
852
+ const tpl = await adapter.getDefaultIteration({
853
+ tcId,
854
+ ...(source.currentVersionId ? { versionId: source.currentVersionId } : {}),
855
+ });
856
+ if (tpl.parameters.length)
857
+ testData = tpl;
858
+ }
859
+ }
860
+ catch {
861
+ // testdata is best-effort — a broken store must not block the guide
862
+ }
863
+ const testDataBlock = testData
864
+ ? `\n── Testdata from the source manual TC (env ${testData.environmentType}) — use EXACTLY these values ──\n` +
865
+ testData.parameters
866
+ .map((p) => p.protected
867
+ ? `- ${p.name} = [PROTECTED on the source TC — ASK the user for the value; do not invent]`
868
+ : `- ${p.name} = "${p.seed}"`)
869
+ .join('\n') +
870
+ `\nWhen a manual step fills one of these fields, pass the parameter NAME as \`parameter_name\` ` +
871
+ `and type the value above. Do NOT invent values and do NOT reuse values from an earlier ` +
872
+ `recording or the chat context. A parameter whose value is blank has no seed — generate a ` +
873
+ `fresh random value (or reuse the previous session's ONLY if the user explicitly says so).\n`
874
+ : `\n── Testdata ──\nThe source manual TC has no testdata. Generate fresh random values for the fields ` +
875
+ `you type (or reuse the previous session's values ONLY if the user explicitly says so).\n`;
743
876
  const guide = 'Automate this manual test case by recording it end-to-end.\n\n' +
744
877
  `testcaseName:"${source.title}"\n` +
745
878
  `Story: ${storyLine}\n` +
@@ -747,9 +880,13 @@ export function registerTestcaseTools(server, deps) {
747
880
  (source.preconditions ? `Preconditions: ${source.preconditions}\n` : '') +
748
881
  (url ? `Start URL: ${url}\n` : '') +
749
882
  (extra ? `${extra}\n` : '') +
883
+ testDataBlock +
750
884
  `\nManual steps (guide only — do not paste verbatim; each granular action captures a real step):\n${stepLines}\n\n` +
751
885
  '── Recording tools (call on the connected agent) ──\n' +
752
- '1. core_activate_technology({ technology: "WEB", testcaseName, userstoryId?, moduleId? }) — session context.\n' +
886
+ `1. core_activate_technology({ technology: "WEB", testcaseName, userstoryId?: ${userstoryId ?? '<from source>'}, moduleId?: ${moduleId ?? '<from source>'}, ` +
887
+ `recordingMode, recordingModeAskedUser, sourceTcId: "${tcId}" }) — session context. ` +
888
+ `ASK the user AI-only vs Hybrid FIRST and pass recordingMode + recordingModeAskedUser ` +
889
+ `(they must match). sourceTcId lets the recorder copy the manual TC testdata at Save.\n` +
753
890
  `2. web_launch_application(${url ? `"${url}"` : '{ url }'}) — must be FIRST browser call; opens the Electron recorder window.\n` +
754
891
  '3. web_snapshot() — call BEFORE every action to get fresh element refs.\n' +
755
892
  '4. web_click({ ref }) / web_enter_text({ ref, value }) / web_select_item_from_dropdown({ ref, item })\n' +
@@ -761,14 +898,32 @@ export function registerTestcaseTools(server, deps) {
761
898
  '5. core_close_session() — when the flow is done.\n\n' +
762
899
  '── Save ──\n' +
763
900
  'The recorder window streams each step as it is captured. When done, STOP and ask the user to ' +
764
- 'review the step cards and click Save Testcase in the recorder. That save CREATES A NEW ' +
765
- `automated test case; the source manual TC ${tcId} stays as-is.\n\n` +
766
- 'Do NOT call tc_save / update_testcase / journal_modify from MCP in this flow — the recorder UI is the persist step.';
901
+ 'review the step cards and click Save Testcase in the recorder — sourceTcId was passed at ' +
902
+ 'activation, so the recorder copies the source manual TC\'s testdata onto the new TC. If the ' +
903
+ `user explicitly asks you to save from chat, call tc_save({ sessionId, copyTestdataFrom: "${tcId}" }) ` +
904
+ '— it clicks the recorder window\'s own Save button and then copies the manual testdata. ' +
905
+ 'Either way that CREATES A NEW automated test case; the ' +
906
+ `source manual TC ${tcId} stays as-is.\n\n` +
907
+ 'Do NOT rely on values typed during the recording for the converted TC\'s testdata — they are ' +
908
+ 'replaced by the source TC\'s values. Do NOT call tc_save({ draftId }) / ' +
909
+ 'tc_draft_from_journal / update_testcase / journal_modify from MCP in this flow — the recorder UI is the persist step.';
767
910
  return ok(guide, {
768
911
  sourceTcId: tcId,
769
912
  sourceTitle: source.title,
770
913
  ...(userstoryId !== undefined ? { userstoryId } : {}),
771
914
  ...(moduleId !== undefined ? { moduleId } : {}),
915
+ ...(testData
916
+ ? {
917
+ testData: {
918
+ environmentType: testData.environmentType,
919
+ parameters: testData.parameters.map((p) => ({
920
+ name: p.name,
921
+ seed: p.protected ? '*****' : p.seed,
922
+ ...(p.protected ? { protected: true } : {}),
923
+ })),
924
+ },
925
+ }
926
+ : {}),
772
927
  });
773
928
  });
774
929
  }
@@ -1 +1 @@
1
- {"version":3,"file":"testcase.tools.js","sourceRoot":"","sources":["../../src/tools/testcase.tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"testcase.tools.js","sourceRoot":"","sources":["../../src/tools/testcase.tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAG1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtG,OAAO,EAAE,iBAAiB,EAAmB,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAqCtE,SAAS,aAAa,CAAC,CAAU;IAC/B,OAAO,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,uFAAuF;AACvF,SAAS,SAAS,CAAC,GAAY;IAC7B,MAAM,CAAC,GAAG,GAA0D,CAAC;IACrE,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1G,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC;IACxB,CAAC;IACD,OAAO,uBAAuB,CAAC;AACjC,CAAC;AAED;;kGAEkG;AAClG,MAAM,UAAU,oBAAoB,CAAC,IAAU;IAC7C,MAAM,GAAG,GAAG,IAAoD,CAAC;IACjE,IAAI,IAAI,CAAC,QAAQ,KAAK,KAAK,IAAI,GAAG,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QACxD,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC;IACvC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,KAAK,UAAU,wBAAwB,CACrC,QAA4B,EAC5B,GAAW,EACX,KAAa;IAEb,MAAM,IAAI,GAAG,QAAQ,IAAI,uBAAuB,CAAC;IACjD,MAAM,GAAG,GAAG,IAAI,eAAe,EAAE,CAAC;IAClC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,CAAC;IAClD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,cAAc,EAAE;YAChE,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;YACpC,MAAM,EAAE,GAAG,CAAC,MAAM;SACnB,CAAC,CAAC;QACH,OAAO,GAAG,CAAC,EAAE,CAAC;IAChB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;AACH,CAAC;AAED;;;;;uEAKuE;AACvE,MAAM,UAAU,WAAW,CAAC,KAAY,EAAE,aAAyB,iBAAiB;IAClF,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;IACtD,MAAM,OAAO,GAAG,qBAAqB,CAAC,KAAK,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IACxD,MAAM,IAAI,GAAG,SAAS,KAAK,CAAC,OAAO,MAAM,OAAO,OAAO,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;IACjF,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;AACpE,CAAC;AAED,SAAS,WAAW,CAAC,OAAgB;IACnC,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;SAChD,QAAQ,CAAC,QAAQ,CAAC;SAClB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;SACnB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;SACnB,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AACxB,CAAC;AAED;;;;;GAKG;AACH,SAAS,cAAc,CAAC,MAAc,EAAE,KAAY;IAClD,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACpE,MAAM,OAAO,GAAG;QACd,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK;QACrB,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,QAAQ;QAC3B,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,QAAQ;QAC3B,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,IAAI,EAAE,MAAe;QACrB,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC;KAC7C,CAAC;IACF,OAAO,GAAG,OAAO,4BAA4B,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;AACtE,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAAiB,EAAE,IAAuB;IAC9E,iGAAiG;IACjG,gGAAgG;IAChG,2DAA2D;IAC3D,MAAM,UAAU,GAAG,GAAwB,EAAE,CAC3C,iBAAiB,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,IAAI,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,EAAE,IAAI,KAAK,CAAC,CAAC;IAEjF,MAAM,CAAC,YAAY,CACjB,iBAAiB,EACjB;QACE,KAAK,EAAE,sCAAsC;QAC7C,WAAW,EACT,gGAAgG;cAC9F,6FAA6F;cAC7F,4FAA4F;cAC5F,8DAA8D;QAClE,WAAW,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE;QACvG,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE;KACpC,EACD,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;QACrB,IAAI,CAAC;YACH,wFAAwF;YACxF,wFAAwF;YACxF,uFAAuF;YACvF,uEAAuE;YACvE,yFAAyF;YACzF,uFAAuF;YACvF,gDAAgD;YAChD,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;YACpC,IAAI,IAAI,GAAuB,IAAI,CAAC;YACpC,IAAI,OAAO,EAAE,cAAc,EAAE,CAAC;gBAC5B,IAAI,CAAC;oBAAC,IAAI,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC;oBAAC,IAAI,GAAG,IAAI,CAAC;gBAAC,CAAC;YAC/E,CAAC;YACD,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,IAAI,GAAG,IAAI,CAAC,YAAY,EAAE,EAAE;oBAC1B,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC,CAAC,GAAG,EAAE;wBACJ,MAAM,GAAG,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;wBAC3C,OAAO,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;oBACrE,CAAC,CAAC,EAAE,CAAC;YACX,CAAC;YACD,MAAM,IAAI,GACR,GAAG,IAAI,CAAC,MAAM,eAAe,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO;gBACrG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,UAAU,OAAO,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5G,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QACrC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,YAAY,CACjB,kBAAkB,EAClB;QACE,KAAK,EAAE,4DAA4D;QACnE,WAAW,EACT,8FAA8F;YAC9F,+FAA+F;YAC/F,uFAAuF;YACvF,gDAAgD;YAChD,yFAAyF;YACzF,+FAA+F;YAC/F,8CAA8C;YAC9C,mCAAmC;YACnC,+FAA+F;YAC/F,yFAAyF;YACzF,wCAAwC;YACxC,6BAA6B;YAC7B,0FAA0F;YAC1F,4FAA4F;YAC5F,eAAe;QACjB,WAAW,EAAE;YACX,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+CAA+C,CAAC;SAC3E;KACF,EACD,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;QACjB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;QACpC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,GAAG,CAAC,4FAA4F,CAAC,CAAC;QAC3G,CAAC;QACD,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAC3C,IAAI,CAAC,EAAE,CAAC,EAAE;gBAAE,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,CAAG,0EAA0E;YACtG,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACvC,OAAO,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,MAAM,UAAU,EAAE,CAAC,CAAC;QACnE,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,YAAY,CACjB,uBAAuB,EACvB;QACE,KAAK,EAAE,iDAAiD;QACxD,WAAW,EACT,0FAA0F;YAC1F,uFAAuF;YACvF,4FAA4F;YAC5F,6FAA6F;YAC7F,wFAAwF;YACxF,6DAA6D;QAC/D,WAAW,EAAE;YACX,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yEAAyE,CAAC;YACzG,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2FAA2F,CAAC;YACjI,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yGAAyG,CAAC;SACjJ;KACF,EACD,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;QACnC,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;QACpC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,GAAG,CAAC,0FAA0F,CAAC,CAAC;QACzG,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YACzB,OAAO,GAAG,CAAC,wCAAwC,CAAC,CAAC;QACvD,CAAC;QACD,IAAI,IAAiB,CAAC;QACtB,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QAC9C,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,GAAG,CAAC,uCAAuC,SAAS,MAAM,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACvF,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3C,OAAO,GAAG,CAAC,wBAAwB,SAAS,mDAAmD,CAAC,CAAC;QACnG,CAAC;QACD,IAAI,IAAI,GAAsB,EAAE,CAAC;QACjC,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;gBACjD,IAAI,GAAG,QAAQ,CAAC;YAClB,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,OAAO,GAAG,CAAC,mCAAmC,IAAI,MAAM,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC9E,CAAC;QACH,CAAC;QACD,MAAM,EAAE,GAAa;YACnB,GAAI,IAAiB;YACrB,KAAK,EAAE,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI,aAAa,SAAS,EAAE;YACtD,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,QAAQ;YACnC,QAAQ,EAAE,WAAW;YACrB,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,oBAAoB,CAAC;YAC3C,2EAA2E;YAC3E,0DAA0D;YAC1D,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,SAA0C,EAAE,CAAC;SACpE,CAAC;QACF,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;QAClD,OAAO,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,MAAM,UAAU,EAAE,CAAC,CAAC;IACnE,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,YAAY,CACjB,iBAAiB,EACjB;QACE,KAAK,EAAE,0BAA0B;QACjC,WAAW,EACT,mGAAmG;YACnG,sGAAsG;YACtG,mEAAmE;YACnE,wGAAwG;YACxG,sGAAsG;YACtG,uBAAuB;YACvB,0GAA0G;YAC1G,+FAA+F;YAC/F,2GAA2G;YAC3G,6GAA6G;YAC7G,wGAAwG;YACxG,0GAA0G;YAC1G,mHAAmH;YACnH,6GAA6G;YAC7G,2GAA2G;YAC3G,mGAAmG;YACnG,+FAA+F;YAC/F,kGAAkG;YAClG,uGAAuG;YACvG,uGAAuG;YACvG,gGAAgG;YAChG,oGAAoG;YACpG,iGAAiG;YACjG,uCAAuC;QACzC,WAAW,EAAE;YACX,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;YACxB,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE;YAC9B,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE;YAC9B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2CAA2C,CAAC;YACxF,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CACtC,0FAA0F;gBACxF,yFAAyF,CAC5F;YACD,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAC5C,wFAAwF;gBACtF,2FAA2F;gBAC3F,qCAAqC,CACxC;YACD,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE;YACnC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CACxD,sFAAsF;gBACpF,6EAA6E;gBAC7E,8EAA8E,CACjF;SACF;KACF,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,cAAc,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE;QAC1F,IAAI,CAAC;YACH,MAAM,EAAE,GAAa;gBACnB,KAAK;gBACL,QAAQ,EAAE,QAAQ,IAAI,QAAQ;gBAC9B,QAAQ,EAAE,QAAQ,IAAI,WAAW;gBACjC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7C,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACzB,iEAAiE;gBACjE,8DAA8D;gBAC9D,KAAK,EAAE,CAAC,KAAK,IAAI,EAAE,CAAW;aAC/B,CAAC;YACF,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACvC,OAAO,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,MAAM,UAAU,EAAE,CAAC,CAAC;QACnE,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,YAAY,CACjB,iBAAiB,EACjB;QACE,KAAK,EAAE,0BAA0B;QACjC,WAAW,EACT,wJAAwJ;YACxJ,6KAA6K;YAC7K,yFAAyF;YACzF,oGAAoG;QACtG,WAAW,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;KACpE,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE;QACzB,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAgB,CAAC,CAAC;YAC9D,uEAAuE;YACvE,sEAAsE;YACtE,uEAAuE;YACvE,6EAA6E;YAC7E,sEAAsE;YACtE,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;gBACpB,KAAK,MAAM,EAAE,IAAI,GAAgB,EAAE,CAAC;oBAClC,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC;wBACd,KAAK,UAAU;4BACb,KAAK,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,gBAAgB,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;4BACjF,MAAM;wBACR,KAAK,aAAa;4BAChB,KAAK,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,gBAAgB,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC;4BAChF,MAAM;wBACR,KAAK,aAAa;4BAChB,KAAK,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,gBAAgB,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;4BAChE,MAAM;wBACR,KAAK,WAAW;4BACd,KAAK,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,cAAc,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;4BAC5E,MAAM;wBACR,qEAAqE;oBACvE,CAAC;gBACH,CAAC;YACH,CAAC;YACD,OAAO,WAAW,CAAC,KAAK,EAAE,MAAM,UAAU,EAAE,CAAC,CAAC;QAChD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,YAAY,CACjB,cAAc,EACd;QACE,KAAK,EAAE,uBAAuB;QAC9B,WAAW,EAAE,0FAA0F;QACvG,WAAW,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE;QACpC,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE;KACpC,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QACpB,IAAI,CAAC;YACH,OAAO,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,MAAM,UAAU,EAAE,CAAC,CAAC;QACnE,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,YAAY,CACjB,kBAAkB,EAClB;QACE,KAAK,EAAE,2BAA2B;QAClC,WAAW,EAAE,0FAA0F;QACvG,WAAW,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE;KACrC,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QACpB,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC5B,OAAO,EAAE,CAAC,mBAAmB,OAAO,+BAA+B,CAAC,CAAC;QACvE,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,YAAY,CACjB,eAAe,EACf;QACE,KAAK,EAAE,sCAAsC;QAC7C,WAAW,EACT,6OAA6O;QAC/O,WAAW,EAAE;YACX,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;YACnB,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YACrC,2EAA2E;YAC3E,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;SACvC;QACD,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE;KACpC,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,EAAE,EAAE;QACpD,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACvC,MAAM,MAAM,GAAG,cAAc,IAAI,IAAI,CAAC,cAAc,IAAI,uBAAuB,CAAC;YAChF,MAAM,GAAG,GAAG,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAC1C,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,EAAE,EAAE,MAAM,UAAU,EAAE,CAAC,CAAC;YAC9D,MAAM,OAAO,GAAG,SAAS,KAAK,CAAC,OAAO,MAAM,qBAAqB,CAAC,KAAK,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC;YAEtF,0EAA0E;YAC1E,4EAA4E;YAC5E,4EAA4E;YAC5E,MAAM,UAAU,GACd,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAC,CAAS,EAAE,CAAS,EAAE,EAAE,CAAC,wBAAwB,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACrG,MAAM,aAAa,GAAG,cAAc,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;YAE/F,IAAI,aAAa,EAAE,CAAC;gBAClB,OAAO,EAAE,CACP,WAAW,KAAK,CAAC,EAAE,CAAC,KAAK,sCAAsC,OAAO,MAAM;oBAC1E,sCAAsC,GAAG,EAAE,EAC7C,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CACxE,CAAC;YACJ,CAAC;YAED,OAAO,EAAE,CACP,GAAG,GAAG,MAAM;gBACV,2BAA2B,KAAK,CAAC,EAAE,CAAC,KAAK,4FAA4F;gBACrI,GAAG,OAAO,EAAE,EACd,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAChE,CAAC;QACJ,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,YAAY,CACjB,cAAc,EACd;QACE,KAAK,EAAE,gEAAgE;QACvE,WAAW,EACT,+FAA+F;YAC/F,+FAA+F;YAC/F,4FAA4F;YAC5F,8FAA8F;YAC9F,oEAAoE;YACpE,mGAAmG;YACnG,gGAAgG;YAChG,+FAA+F;YAC/F,kDAAkD;QACpD,WAAW,EAAE;YACX,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gDAAgD,CAAC;YAC3E,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CACvC,wFAAwF;gBACtF,4FAA4F;gBAC5F,iEAAiE,CACpE;YACD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0EAA0E,CAAC;YACnH,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6DAA6D,CAAC;YAC1G,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE;YACpD,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE;SACxD;KACF,EACD,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE;QACrE,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;QACpC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,GAAG,CAAC,4FAA4F,CAAC,CAAC;QAC3G,CAAC;QACD,IAAI,EAAY,CAAC;QACjB,IAAI,CAAC;YACH,EAAE,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YACrC,IAAI,CAAC,EAAE,CAAC,EAAE;gBAAE,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC;QAC3B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,GAAG,CAAC,8BAA8B,IAAI,MAAM,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACzE,CAAC;QACD,+FAA+F;QAC/F,6FAA6F;QAC7F,qFAAqF;QACrF,MAAM,SAAS,GAAG,WAAW,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QACjG,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;QAClD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEvC,wFAAwF;QACxF,uFAAuF;QACvF,2FAA2F;QAC3F,MAAM,IAAI,GAAI,OAAmH,CAAC,iBAAiB,EAAE,EAAE,IAAI,EAAE,CAAC;QAC9J,MAAM,QAAQ,GAAG,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;QACzC,MAAM,YAAY,GAAG,WAAW,IAAI,IAAI,CAAC,KAAK,CAAC;QAC/C,MAAM,OAAO,GAAG,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC;QACtC,MAAM,UAAU,GAAG,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC;QAC/C,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC;YACtC,SAAS,EAAE,IAAI;YACf,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1C,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtD,GAAG,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvE,GAAG,CAAC,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACpF,CAAC,CAAC;QAEH,4FAA4F;QAC5F,IAAI,MAAM,EAAE,CAAC;YACX,KAAK,UAAU,CAAC,SAAS,EAAE,eAAe,EAAE;gBAC1C,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK;aACrC,CAAC,CAAC;QACL,CAAC;QAED,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,EAAE,EAAE,MAAM,UAAU,EAAE,CAAC,CAAC;QAC9D,MAAM,OAAO,GAAG,qBAAqB,CAAC,KAAK,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QACxD,MAAM,UAAU,GAAG,MAAM;YACvB,CAAC,CAAC,WAAW,KAAK,CAAC,EAAE,CAAC,KAAK,uCAAuC,SAAS,GAAG;YAC9E,CAAC,CAAC,SAAS,OAAO,kHAAkH,CAAC;QACvI,OAAO,EAAE,CACP,GAAG,UAAU,aAAa,KAAK,CAAC,OAAO,MAAM,OAAO,OAAO,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,EACpF,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,CAC3D,CAAC;IACJ,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,YAAY,CACjB,kBAAkB,EAClB;QACE,KAAK,EAAE,sEAAsE;QAC7E,WAAW,EACT,+FAA+F;YAC/F,kGAAkG;YAClG,oGAAoG;YACpG,mGAAmG;YACnG,oGAAoG;YACpG,2DAA2D;YAC3D,iGAAiG;YACjG,gGAAgG;YAChG,+FAA+F;YAC/F,gGAAgG;YAChG,qCAAqC;QACvC,WAAW,EAAE;YACX,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;SAChE;KACF,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QACpB,IAAI,KAAY,CAAC;QACjB,IAAI,CAAC;YACH,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACnC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;YACrB,OAAO,GAAG,CACR,UAAU,OAAO,oEAAoE;gBACnF,8DAA8D,CACjE,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,GACT,6DAA6D,KAAK,CAAC,SAAS,OAAO;YACnF,yEAAyE,KAAK,CAAC,SAAS,KAAK;YAC7F,kBAAkB,KAAK,CAAC,EAAE,CAAC,KAAK,oEAAoE;YACpG,+EAA+E;YAC/E,yGAAyG;YACzG,gDAAgD;YAChD,iCAAiC,OAAO,gEAAgE;YACxG,0BAA0B,OAAO,qDAAqD,CAAC;QACzF,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,iBAAiB,EAAE,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACvF,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,YAAY,CACjB,gBAAgB,EAChB;QACE,KAAK,EAAE,2DAA2D;QAClE,WAAW,EACT,yFAAyF;YACzF,kGAAkG;YAClG,gGAAgG;YAChG,6FAA6F;YAC7F,qGAAqG;QACvG,WAAW,EAAE;YACX,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;YACnB,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CACrC,yFAAyF,CAC1F;YACD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAC3D,6EAA6E,CAC9E;SACF;KACF,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,EAAE,EAAE;QACnD,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;QACpC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,GAAG,CAAC,0FAA0F,CAAC,CAAC;QACzG,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YACzB,OAAO,GAAG,CAAC,wCAAwC,CAAC,CAAC;QACvD,CAAC;QACD,IAAI,KAAY,CAAC;QACjB,IAAI,CAAC;YACH,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACnC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC;QACD,IAAI,IAAiB,CAAC;QACtB,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;QACvD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,GAAG,CAAC,uCAAuC,kBAAkB,MAAM,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAChG,CAAC;QACD,MAAM,IAAI,GAAG,SAAS,IAAI,CAAC,CAAC;QAC5B,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAChD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,EAAE,CACP,uCAAuC,IAAI,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC,mBAAmB,IAAI,IAAI,EACzF,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CACvC,CAAC;QACJ,CAAC;QACD,MAAM,GAAG,GAAc,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC7C,EAAE,EAAE,UAAmB;YACvB,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE,CAAC,EAAE,SAA8B,EAAE;SACrD,CAAC,CAAC,CAAC;QACJ,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YACnD,oFAAoF;YACpF,iDAAiD;YACjD,OAAO,EAAE,CACP,YAAY,QAAQ,CAAC,MAAM,8BAA8B,OAAO,4BAA4B,EAC5F,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,MAAM,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,CACvD,CAAC;QACJ,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,YAAY,CACjB,SAAS,EACT;QACE,KAAK,EAAE,kCAAkC;QACzC,WAAW,EACT,sEAAsE;YACtE,+FAA+F;YAC/F,6FAA6F;YAC7F,2FAA2F;YAC3F,6FAA6F;YAC7F,0FAA0F;YAC1F,8FAA8F;YAC9F,4CAA4C;YAC5C,iGAAiG;YACjG,kGAAkG;YAClG,oGAAoG;YACpG,oGAAoG;YACpG,gGAAgG;QAClG,WAAW,EAAE;YACX,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mFAAmF,CAAC;YAC5H,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mIAAmI,CAAC;YAC9K,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAC7C,0LAA0L,CAC3L;YACD,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAC9C,4FAA4F;gBAC5F,wFAAwF;gBACxF,6FAA6F;gBAC7F,oEAAoE,CACrE;SACF;QACD,WAAW,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE;KACrC,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,gBAAgB,EAAE,EAAE,EAAE;QACjE,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;QACpC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,GAAG,CAAC,oFAAoF,CAAC,CAAC;QACnG,CAAC;QACD,IAAI,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,SAAS,EAAE,CAAC;YAC9B,OAAO,GAAG,CAAC,0GAA0G,CAAC,CAAC;QACzH,CAAC;QACD,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACrB,OAAO,GAAG,CAAC,mHAAmH,CAAC,CAAC;YAClI,CAAC;YACD,IAAI,GAAY,CAAC;YACjB,IAAI,CAAC;gBACH,GAAG,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,mBAAmB,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;YACpF,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,OAAO,GAAG,CAAC,yBAAyB,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC1D,CAAC;YACD,MAAM,CAAC,GAAG,GAIT,CAAC;YACF,IAAI,CAAC,EAAE,OAAO;gBAAE,OAAO,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3C,MAAM,KAAK,GAAG,CAAC,EAAE,iBAAiB,EAAE,KAAK,CAAC;YAC1C,MAAM,EAAE,GAAG,KAAK,EAAE,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;YACpC,IAAI,EAAE,IAAI,IAAI;gBAAE,OAAO,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,yDAAyD,CAAC,CAAC;YACxG,MAAM,IAAI,GAAG,KAAK,EAAE,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACnE,MAAM,IAAI,GAAG,KAAK,EAAE,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9D,MAAM,UAAU,GAAG,OAAO,KAAK,EAAE,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;YACxF,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,KAAK,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjD,yFAAyF;YACzF,6FAA6F;YAC7F,IAAI,QAAQ,GAAG,EAAE,CAAC;YAClB,IAAI,gBAAgB,EAAE,CAAC;gBACrB,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;oBAC1B,QAAQ,GAAG,qCAAqC,gBAAgB,wCAAwC,CAAC;gBAC3G,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC;wBACH,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;wBACzF,QAAQ,GAAG,0BAA0B,gBAAgB,KAAK,CAAC,CAAC,MAAM,WAAW;4BAC3E,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,sCAAsC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;oBACjG,CAAC;oBAAC,OAAO,CAAC,EAAE,CAAC;wBACX,QAAQ,GAAG,2BAA2B,gBAAgB,YAAY,aAAa,CAAC,CAAC,CAAC,IAAI;4BACpF,sDAAsD,CAAC;oBAC3D,CAAC;gBACH,CAAC;YACH,CAAC;YACD,OAAO,EAAE,CAAC,GAAG,IAAI,cAAc,IAAI,IAAI,IAAI,GAAG,QAAQ,EAAE,EAAE;gBACxD,KAAK,EAAE;oBACL,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC;oBACd,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACrC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAClD;aACF,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,GAAG,CAAC,2CAA2C,CAAC,CAAC;QAC1D,CAAC;QACD,IAAI,KAAY,CAAC;QACjB,IAAI,CAAC;YACH,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACnC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,GAAG,CAAC,aAAa,OAAO,uFAAuF,CAAC,CAAC;QAC1H,CAAC;QACD,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,EAAE,EAAE,MAAM,UAAU,EAAE,CAAC,CAAC;QAC9D,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClB,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,IAAI,IAAI,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClH,OAAO,GAAG,CAAC,gBAAgB,KAAK,CAAC,EAAE,CAAC,KAAK,OAAO,MAAM,CAAC,MAAM,0BAA0B,MAAM,EAAE,CAAC,CAAC;QACnG,CAAC;QACD,MAAM,QAAQ,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;QAC9B,IAAI,QAAQ,IAAI,OAAO,CAAC,WAAW,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC;YAChE,OAAO,GAAG,CACR,gBAAgB,KAAK,CAAC,EAAE,CAAC,KAAK,uDAAuD;gBACnF,kFAAkF;gBAClF,+BAA+B,OAAO,4EAA4E;gBAClH,0BAA0B,CAC7B,CAAC;QACJ,CAAC;QACD,IAAI,WAA+B,CAAC;QACpC,IAAI,QAAQ,IAAI,CAAC,cAAc,EAAE,CAAC;YAChC,yFAAyF;YACzF,mEAAmE;YACnE,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;gBACnC,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;gBACvE,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;gBACrE,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;oBAClC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACV,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;wBAAE,CAAC,EAAE,CAAC;oBACpD,gFAAgF;oBAChF,KAAK,CAAC,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,GAAG,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;oBAClD,WAAW,GAAG,IAAI,CAAC;gBACrB,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,uCAAuC;YACzC,CAAC;QACH,CAAC;QACD,CAAC;YACC,MAAM,OAAO,GAAuC,EAAE,CAAC;YACvD,MAAM,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC;YACjC,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;gBACrC,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,CAAC;oBACzE,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC;oBACnB,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;oBACtF,MAAM,YAAY,GAAG,KAAK,CAAC,EAAE,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC;oBAC/F,IAAI,CAAC,OAAO,IAAI,CAAC,YAAY;wBAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;gBAChE,CAAC;YACH,CAAC;YACD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnB,MAAM,WAAW,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC7D,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC5E,OAAO,GAAG,CACR,gBAAgB,KAAK,CAAC,EAAE,CAAC,KAAK,mDAAmD,OAAO,IAAI;oBAC1F,0FAA0F;oBAC1F,yFAAyF;oBACzF,qDAAqD;oBACrD,+BAA+B,OAAO,+CAA+C,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa;oBACtJ,qBAAqB,CACxB,CAAC;YACJ,CAAC;QACH,CAAC;QACD,IAAI,KAAK,CAAC,EAAE,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;YACtC,6FAA6F;YAC7F,6FAA6F;YAC7F,6FAA6F;YAC7F,yFAAyF;YACzF,MAAM,UAAU,GAAa,EAAE,CAAC;YAChC,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBACtC,IAAI,CAAC,CAAC,CAAC,UAAU;oBAAE,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC;gBACpG,IAAI,CAAC,CAAC,CAAC,QAAQ;oBAAE,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;YAC3G,CAAC,CAAC,CAAC;YACH,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;gBACtB,OAAO,GAAG,CACR,gBAAgB,KAAK,CAAC,EAAE,CAAC,KAAK,OAAO,UAAU,CAAC,MAAM,iCAAiC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI;oBAChH,2FAA2F;oBAC3F,gGAAgG;oBAChG,uFAAuF,CAC1F,CAAC;YACJ,CAAC;QACH,CAAC;QACD,qEAAqE;QACrE,sEAAsE;QACtE,yEAAyE;QACzE,qEAAqE;QACrE,qEAAqE;QACrE,2EAA2E;QAC3E,sDAAsD;QACtD,IAAI,KAAK,CAAC,EAAE,CAAC,EAAE,IAAI,KAAK,CAAC,EAAE,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;YAC5C,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBACvD,IAAI,OAAO,CAAC,OAAO,IAAI,IAAI,IAAI,OAAO,CAAC,OAAO,KAAK,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC;oBACpE,OAAO,GAAG,CACR,gBAAgB,KAAK,CAAC,EAAE,CAAC,KAAK,UAAU,KAAK,CAAC,EAAE,CAAC,EAAE,2BAA2B;wBAC5E,wCAAwC,KAAK,CAAC,EAAE,CAAC,OAAO,MAAM,OAAO,CAAC,OAAO,KAAK;wBAClF,6EAA6E;wBAC7E,yEAAyE,CAC5E,CAAC;gBACJ,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,0EAA0E;YAC5E,CAAC;QACH,CAAC;QACD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAG,QAAQ;gBACpB,CAAC,CAAC,MAAM,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC,EAAY,EAAE,KAAK,CAAC,EAAE,CAAC;gBAC/D,CAAC,CAAC,MAAM,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC3C,6FAA6F;YAC7F,iGAAiG;YACjG,6CAA6C;YAC7C,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC;gBAC1B,IAAI,CAAC;oBAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC,CAAC,0CAA0C,CAAC,CAAC;YAC9G,CAAC;YACD,yFAAyF;YACzF,uFAAuF;YACvF,6FAA6F;YAC7F,kCAAkC;YAClC,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,OAAO,EAAE,CACP,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,cAAc,KAAK,CAAC,EAAE,GAAG;gBAC1D,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,WAAW,0CAA0C,KAAK,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjG,IAAI,EACN,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAClC,CAAC;QACJ,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,YAAY,CACjB,aAAa,EACb;QACE,KAAK,EAAE,6EAA6E;QACpF,WAAW,EACT,gGAAgG;YAChG,4FAA4F;YAC5F,wFAAwF;YACxF,gGAAgG;YAChG,oGAAoG;YACpG,kGAAkG;YAClG,oGAAoG;YACpG,8CAA8C;QAChD,WAAW,EAAE;YACX,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+DAA+D,CAAC;YAC1F,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sDAAsD,CAAC;YAC3F,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kEAAkE,CAAC;SAC1G;QACD,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE;KACpC,EACD,KAAK,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE;QAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;QACpC,IAAI,CAAC,OAAO;YAAE,OAAO,GAAG,CAAC,mDAAmD,CAAC,CAAC;QAC9E,IAAI,MAAgB,CAAC;QACrB,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC3C,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,GAAG,CAAC,6BAA6B,IAAI,MAAM,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACxE,CAAC;QACD,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACjC,OAAO,GAAG,CACR,IAAI,MAAM,CAAC,KAAK,MAAM,IAAI,8BAA8B,MAAM,CAAC,QAAQ,KAAK;gBAC1E,6GAA6G,CAChH,CAAC;QACJ,CAAC;QACD,yEAAyE;QACzE,MAAM,aAAa,GAAG,CAAC,CAAqB,EAAsB,EAAE;YAClE,IAAI,CAAC,CAAC;gBAAE,OAAO,SAAS,CAAC;YACzB,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC5B,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC7C,CAAC,CAAC;QACF,MAAM,WAAW,GAAG,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACnD,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QACtD,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK;aAC3B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;aACtG,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,IAAI,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,KAAK,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC,EAAE,CAAC;YAChE,OAAO,GAAG,CACR,gBAAgB,MAAM,CAAC,KAAK,6DAA6D;gBACvF,+DAA+D,CAClE,CAAC;QACJ,CAAC;QACD,MAAM,SAAS,GAAG,WAAW,KAAK,SAAS;YACzC,CAAC,CAAC,eAAe,WAAW,wDAAwD;YACpF,CAAC,CAAC,+FAA+F,CAAC;QACpG,MAAM,UAAU,GAAG,QAAQ,KAAK,SAAS;YACvC,CAAC,CAAC,YAAY,QAAQ,sDAAsD;YAC5E,CAAC,CAAC,uEAAuE,CAAC;QAC5E,8FAA8F;QAC9F,2FAA2F;QAC3F,0FAA0F;QAC1F,sFAAsF;QACtF,IAAI,QAAQ,GAA2H,IAAI,CAAC;QAC5I,IAAI,CAAC;YACH,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;gBAChC,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,mBAAmB,CAAC;oBAC5C,IAAI;oBACJ,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC3E,CAAC,CAAC;gBACH,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM;oBAAE,QAAQ,GAAG,GAAG,CAAC;YAC5C,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,oEAAoE;QACtE,CAAC;QACD,MAAM,aAAa,GAAG,QAAQ;YAC5B,CAAC,CAAC,gDAAgD,QAAQ,CAAC,eAAe,mCAAmC;gBAC3G,QAAQ,CAAC,UAAU;qBAChB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS;oBACrB,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,6EAA6E;oBAC1F,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,IAAI,GAAG,CAAC;qBAC/B,IAAI,CAAC,IAAI,CAAC;gBACb,gGAAgG;gBAChG,yFAAyF;gBACzF,2FAA2F;gBAC3F,6FAA6F;YAC/F,CAAC,CAAC,sGAAsG;gBACtG,0FAA0F,CAAC;QAC/F,MAAM,KAAK,GACT,gEAAgE;YAChE,iBAAiB,MAAM,CAAC,KAAK,KAAK;YAClC,UAAU,SAAS,IAAI;YACvB,WAAW,UAAU,IAAI;YACzB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,kBAAkB,MAAM,CAAC,aAAa,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YACxE,CAAC,GAAG,CAAC,CAAC,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YAClC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3B,aAAa;YACb,oGAAoG,SAAS,MAAM;YACnH,uDAAuD;YACvD,gFAAgF,WAAW,IAAI,eAAe,gBAAgB,QAAQ,IAAI,eAAe,IAAI;YAC7J,uDAAuD,IAAI,0BAA0B;YACrF,uFAAuF;YACvF,wFAAwF;YACxF,6BAA6B,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,SAAS,uEAAuE;YAChI,2EAA2E;YAC3E,yGAAyG;YACzG,2EAA2E;YAC3E,0FAA0F;YAC1F,8FAA8F;YAC9F,gFAAgF;YAChF,wFAAwF;YACxF,sDAAsD;YACtD,cAAc;YACd,+FAA+F;YAC/F,2FAA2F;YAC3F,8FAA8F;YAC9F,4FAA4F,IAAI,OAAO;YACvG,0FAA0F;YAC1F,yDAAyD;YACzD,oBAAoB,IAAI,mBAAmB;YAC3C,+FAA+F;YAC/F,0EAA0E;YAC1E,uHAAuH,CAAC;QAC1H,OAAO,EAAE,CAAC,KAAK,EAAE;YACf,UAAU,EAAE,IAAI;YAChB,WAAW,EAAE,MAAM,CAAC,KAAK;YACzB,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrD,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/C,GAAG,CAAC,QAAQ;gBACV,CAAC,CAAC;oBACE,QAAQ,EAAE;wBACR,eAAe,EAAE,QAAQ,CAAC,eAAe;wBACzC,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;4BAC1C,IAAI,EAAE,CAAC,CAAC,IAAI;4BACZ,IAAI,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;4BACpC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;yBAC5C,CAAC,CAAC;qBACJ;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CAAC;IACL,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Minimal dependency-free .xlsx writer: one sheet, a bold header row, text and number cells. Strings are
3
+ * written as inline strings (never evaluated as formulas), so test-case names that start with `=`/`+`
4
+ * are safe. Enough for tabular exports; not a general spreadsheet library.
5
+ */
6
+ export type XlsxCell = string | number | boolean | null | undefined;
7
+ export declare function buildXlsx(sheetName: string, headers: string[], rows: XlsxCell[][]): Buffer;
8
+ //# sourceMappingURL=xlsx.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xlsx.d.ts","sourceRoot":"","sources":["../../src/tools/xlsx.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;AAmFpE,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,GAAG,MAAM,CAgC1F"}
@@ -0,0 +1,113 @@
1
+ import { deflateRawSync } from 'node:zlib';
2
+ const CRC_TABLE = (() => {
3
+ const t = new Uint32Array(256);
4
+ for (let n = 0; n < 256; n++) {
5
+ let c = n;
6
+ for (let k = 0; k < 8; k++)
7
+ c = c & 1 ? 0xedb88320 ^ (c >>> 1) : c >>> 1;
8
+ t[n] = c >>> 0;
9
+ }
10
+ return t;
11
+ })();
12
+ function crc32(buf) {
13
+ let c = 0xffffffff;
14
+ for (let i = 0; i < buf.length; i++)
15
+ c = CRC_TABLE[(c ^ buf[i]) & 0xff] ^ (c >>> 8);
16
+ return (c ^ 0xffffffff) >>> 0;
17
+ }
18
+ function zip(entries) {
19
+ const parts = [];
20
+ const central = [];
21
+ let offset = 0;
22
+ for (const e of entries) {
23
+ const name = Buffer.from(e.name, 'utf8');
24
+ const comp = deflateRawSync(e.data);
25
+ const crc = crc32(e.data);
26
+ const local = Buffer.alloc(30);
27
+ local.writeUInt32LE(0x04034b50, 0);
28
+ local.writeUInt16LE(20, 4); // version needed
29
+ local.writeUInt16LE(0x0800, 6); // UTF-8 names
30
+ local.writeUInt16LE(8, 8); // deflate
31
+ local.writeUInt32LE(crc, 14);
32
+ local.writeUInt32LE(comp.length, 18);
33
+ local.writeUInt32LE(e.data.length, 22);
34
+ local.writeUInt16LE(name.length, 26);
35
+ parts.push(local, name, comp);
36
+ const cen = Buffer.alloc(46);
37
+ cen.writeUInt32LE(0x02014b50, 0);
38
+ cen.writeUInt16LE(20, 4);
39
+ cen.writeUInt16LE(20, 6);
40
+ cen.writeUInt16LE(0x0800, 8);
41
+ cen.writeUInt16LE(8, 10);
42
+ cen.writeUInt32LE(crc, 16);
43
+ cen.writeUInt32LE(comp.length, 20);
44
+ cen.writeUInt32LE(e.data.length, 24);
45
+ cen.writeUInt16LE(name.length, 28);
46
+ cen.writeUInt32LE(offset, 42);
47
+ central.push(cen, name);
48
+ offset += local.length + name.length + comp.length;
49
+ }
50
+ const cenBuf = Buffer.concat(central);
51
+ const end = Buffer.alloc(22);
52
+ end.writeUInt32LE(0x06054b50, 0);
53
+ end.writeUInt16LE(entries.length, 8);
54
+ end.writeUInt16LE(entries.length, 10);
55
+ end.writeUInt32LE(cenBuf.length, 12);
56
+ end.writeUInt32LE(offset, 16);
57
+ return Buffer.concat([...parts, cenBuf, end]);
58
+ }
59
+ const xmlEsc = (s) =>
60
+ // eslint-disable-next-line no-control-regex
61
+ s.replace(/[\u0000-\u0008\u000b\u000c\u000e-\u001f]/g, '').replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/"/g, '&quot;');
62
+ function colName(i) {
63
+ let n = i + 1;
64
+ let s = '';
65
+ while (n > 0) {
66
+ const r = (n - 1) % 26;
67
+ s = String.fromCharCode(65 + r) + s;
68
+ n = Math.floor((n - 1) / 26);
69
+ }
70
+ return s;
71
+ }
72
+ function cell(ref, v, style) {
73
+ const s = style ? ` s="${style}"` : '';
74
+ if (v === null || v === undefined || v === '')
75
+ return `<c r="${ref}"${s}/>`;
76
+ if (typeof v === 'number' && Number.isFinite(v))
77
+ return `<c r="${ref}"${s}><v>${v}</v></c>`;
78
+ if (typeof v === 'boolean')
79
+ return `<c r="${ref}"${s} t="b"><v>${v ? 1 : 0}</v></c>`;
80
+ return `<c r="${ref}"${s} t="inlineStr"><is><t xml:space="preserve">${xmlEsc(String(v))}</t></is></c>`;
81
+ }
82
+ export function buildXlsx(sheetName, headers, rows) {
83
+ const sheetRows = [];
84
+ sheetRows.push(`<row r="1">${headers.map((h, c) => cell(`${colName(c)}1`, h, 1)).join('')}</row>`);
85
+ rows.forEach((r, i) => {
86
+ const rn = i + 2;
87
+ sheetRows.push(`<row r="${rn}">${r.map((v, c) => cell(`${colName(c)}${rn}`, v)).join('')}</row>`);
88
+ });
89
+ const cols = headers.map((_, c) => `<col min="${c + 1}" max="${c + 1}" width="${c === 1 ? 50 : 18}" customWidth="1"/>`).join('');
90
+ const sheet = '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>' +
91
+ '<worksheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main">' +
92
+ `<sheetViews><sheetView workbookViewId="0"><pane ySplit="1" topLeftCell="A2" activePane="bottomLeft" state="frozen"/></sheetView></sheetViews>` +
93
+ `<cols>${cols}</cols><sheetData>${sheetRows.join('')}</sheetData></worksheet>`;
94
+ const styles = '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>' +
95
+ '<styleSheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main">' +
96
+ '<fonts count="2"><font><sz val="11"/><name val="Calibri"/></font><font><b/><sz val="11"/><name val="Calibri"/></font></fonts>' +
97
+ '<fills count="2"><fill><patternFill patternType="none"/></fill><fill><patternFill patternType="gray125"/></fill></fills>' +
98
+ '<borders count="1"><border><left/><right/><top/><bottom/><diagonal/></border></borders>' +
99
+ '<cellStyleXfs count="1"><xf numFmtId="0" fontId="0" fillId="0" borderId="0"/></cellStyleXfs>' +
100
+ '<cellXfs count="2"><xf numFmtId="0" fontId="0" fillId="0" borderId="0" xfId="0"/><xf numFmtId="0" fontId="1" fillId="0" borderId="0" xfId="0" applyFont="1"/></cellXfs>' +
101
+ '</styleSheet>';
102
+ const safeName = xmlEsc(sheetName.replace(/[\\/?*[\]:]/g, ' ').slice(0, 31) || 'Sheet1');
103
+ const files = [
104
+ { name: '[Content_Types].xml', data: Buffer.from('<?xml version="1.0" encoding="UTF-8" standalone="yes"?><Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types"><Default Extension="rels" ContentType="application/vnd.openxmlformats-package.relationships+xml"/><Default Extension="xml" ContentType="application/xml"/><Override PartName="/xl/workbook.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml"/><Override PartName="/xl/worksheets/sheet1.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml"/><Override PartName="/xl/styles.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml"/></Types>') },
105
+ { name: '_rels/.rels', data: Buffer.from('<?xml version="1.0" encoding="UTF-8" standalone="yes"?><Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" Target="xl/workbook.xml"/></Relationships>') },
106
+ { name: 'xl/workbook.xml', data: Buffer.from(`<?xml version="1.0" encoding="UTF-8" standalone="yes"?><workbook xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships"><sheets><sheet name="${safeName}" sheetId="1" r:id="rId1"/></sheets></workbook>`) },
107
+ { name: 'xl/_rels/workbook.xml.rels', data: Buffer.from('<?xml version="1.0" encoding="UTF-8" standalone="yes"?><Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet" Target="worksheets/sheet1.xml"/><Relationship Id="rId2" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles" Target="styles.xml"/></Relationships>') },
108
+ { name: 'xl/styles.xml', data: Buffer.from(styles) },
109
+ { name: 'xl/worksheets/sheet1.xml', data: Buffer.from(sheet) },
110
+ ];
111
+ return zip(files);
112
+ }
113
+ //# sourceMappingURL=xlsx.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xlsx.js","sourceRoot":"","sources":["../../src/tools/xlsx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAS3C,MAAM,SAAS,GAAG,CAAC,GAAG,EAAE;IACtB,MAAM,CAAC,GAAG,IAAI,WAAW,CAAC,GAAG,CAAC,CAAC;IAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7B,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;YAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC,CAAC,EAAE,CAAC;AAEL,SAAS,KAAK,CAAC,GAAW;IACxB,IAAI,CAAC,GAAG,UAAU,CAAC;IACnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE;QAAE,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAE,CAAC,GAAG,IAAI,CAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IACtF,OAAO,CAAC,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC;AAED,SAAS,GAAG,CAAC,OAA8C;IACzD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACzC,MAAM,IAAI,GAAG,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC1B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC/B,KAAK,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QACnC,KAAK,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,iBAAiB;QAC7C,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,cAAc;QAC9C,KAAK,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU;QACrC,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC7B,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACrC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACvC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACrC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC9B,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC7B,GAAG,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QACjC,GAAG,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACzB,GAAG,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACzB,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC7B,GAAG,CAAC,aAAa,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACzB,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC3B,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACnC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACrC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACnC,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC9B,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IACrD,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACtC,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC7B,GAAG,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IACjC,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACrC,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACtC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACrC,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC9B,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,MAAM,GAAG,CAAC,CAAS,EAAE,EAAE;AAC3B,4CAA4C;AAC5C,CAAC,CAAC,OAAO,CAAC,2CAA2C,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAExJ,SAAS,OAAO,CAAC,CAAS;IACxB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACd,IAAI,CAAC,GAAG,EAAE,CAAC;IACX,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACb,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;QACvB,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;QACpC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAC/B,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,IAAI,CAAC,GAAW,EAAE,CAAW,EAAE,KAAc;IACpD,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,OAAO,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IACvC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,EAAE;QAAE,OAAO,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC;IAC5E,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QAAE,OAAO,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;IAC5F,IAAI,OAAO,CAAC,KAAK,SAAS;QAAE,OAAO,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;IACrF,OAAO,SAAS,GAAG,IAAI,CAAC,8CAA8C,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC;AACzG,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,SAAiB,EAAE,OAAiB,EAAE,IAAkB;IAChF,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,SAAS,CAAC,IAAI,CAAC,cAAc,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;IACnG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACpB,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;QACjB,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;IACpG,CAAC,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,qBAAqB,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjI,MAAM,KAAK,GACT,yDAAyD;QACzD,+EAA+E;QAC/E,+IAA+I;QAC/I,SAAS,IAAI,qBAAqB,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,0BAA0B,CAAC;IACjF,MAAM,MAAM,GACV,yDAAyD;QACzD,gFAAgF;QAChF,+HAA+H;QAC/H,0HAA0H;QAC1H,yFAAyF;QACzF,8FAA8F;QAC9F,yKAAyK;QACzK,eAAe,CAAC;IAClB,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,QAAQ,CAAC,CAAC;IACzF,MAAM,KAAK,GAA0C;QACnD,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,yqBAAyqB,CAAC,EAAE;QAC7tB,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,ySAAyS,CAAC,EAAE;QACrV,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,yOAAyO,QAAQ,iDAAiD,CAAC,EAAE;QAClV,EAAE,IAAI,EAAE,4BAA4B,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,yaAAya,CAAC,EAAE;QACpe,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;QACpD,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;KAC/D,CAAC;IACF,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC;AACpB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "common-qa-mcp",
3
- "version": "0.10.1",
3
+ "version": "0.12.0",
4
4
  "type": "module",
5
5
  "description": "Common QA MCP — one product-neutral MCP that routes test-case lifecycle requests to Walnut or SimplifyQA for any AI client. Launch over stdio via npx; install the Walnut QA agent with `init-agents`.",
6
6
  "bin": {