shortcutxl 0.2.19 → 0.2.21

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 (951) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/agent-docs/api-reference.json +2041 -0
  3. package/agent-docs/examples/extensions/built-in-tool-renderer.ts +2 -13
  4. package/agent-docs/examples/extensions/claude-code.ts +69 -0
  5. package/agent-docs/examples/extensions/custom-provider-gitlab-duo/test.ts +1 -7
  6. package/agent-docs/examples/sdk/04-skills.ts +1 -6
  7. package/dist/cli/config-selector.js +1 -1
  8. package/dist/cli/session-picker.js +1 -1
  9. package/dist/config.js +15 -5
  10. package/dist/core/agent-loop.js +8 -9
  11. package/dist/core/agent-session.js +102 -462
  12. package/dist/core/agent.js +1 -0
  13. package/dist/core/export-html/template.js +14 -2
  14. package/dist/core/extensions/loader.js +4 -4
  15. package/dist/core/keybindings.js +1 -1
  16. package/dist/core/run-agent.js +84 -0
  17. package/dist/core/session/extension-emitter.js +36 -0
  18. package/dist/core/session/model-manager.js +111 -0
  19. package/dist/core/session/persistence-handler.js +104 -0
  20. package/dist/core/session/queue-tracker.js +91 -0
  21. package/dist/core/session/tool-registry.js +231 -0
  22. package/dist/core/settings-manager.js +11 -3
  23. package/dist/core/theme.js +1 -1
  24. package/dist/core/tools/edit.js +1 -1
  25. package/dist/core/tools/find.js +1 -1
  26. package/dist/core/tools/grep.js +1 -1
  27. package/dist/core/tools/ls.js +1 -1
  28. package/dist/core/tools/read.js +1 -1
  29. package/dist/core/tools/write.js +1 -1
  30. package/dist/custom/dev/index.js +16 -1
  31. package/dist/custom/excel-session.js +2 -2
  32. package/dist/custom/exec-mode-command.js +27 -0
  33. package/dist/custom/install-utils.js +1 -4
  34. package/dist/custom/new-sheet/api-guidelines.js +83 -0
  35. package/dist/custom/new-sheet/api-lookup.js +69 -0
  36. package/dist/custom/new-sheet/api-overlay.js +133 -0
  37. package/dist/custom/new-sheet/api-reference-loader.js +29 -0
  38. package/dist/custom/new-sheet/cell-diff/address-utils.js +80 -0
  39. package/dist/custom/new-sheet/cell-diff/cell-categorizer.js +100 -0
  40. package/dist/custom/new-sheet/cell-diff/cell-diff-formatter.js +201 -0
  41. package/dist/custom/new-sheet/cell-diff/index.js +23 -0
  42. package/dist/custom/new-sheet/cell-diff/types.js +33 -0
  43. package/dist/custom/new-sheet/mutation-tracker.js +358 -0
  44. package/dist/custom/new-sheet/sandbox-globals.js +118 -0
  45. package/dist/custom/new-sheet/sdk-types.js +9 -0
  46. package/dist/custom/new-sheet/sheet-engine-poc.js +112 -0
  47. package/dist/custom/new-sheet/sheet-engine.js +146 -0
  48. package/dist/custom/new-sheet/sheet-exec.js +219 -0
  49. package/dist/custom/new-sheet-command.js +24 -0
  50. package/dist/custom/preflight.js +28 -18
  51. package/dist/custom/prompts/action.js +33 -12
  52. package/dist/custom/prompts/shared.js +0 -6
  53. package/dist/custom/providers/llm-usage.js +1 -5
  54. package/dist/custom/providers/shortcut-invoke.js +3 -4
  55. package/dist/custom/providers/shortcut-stream.js +3 -4
  56. package/dist/custom/sandbox/index.js +6 -10
  57. package/dist/custom/sandbox/lib/bwrap.js +93 -0
  58. package/dist/custom/sandbox/lib/index.js +20 -0
  59. package/dist/custom/sandbox/lib/manager.js +87 -0
  60. package/dist/custom/sandbox/lib/network/domain-filter.js +29 -0
  61. package/dist/custom/sandbox/lib/network/http-proxy.js +172 -0
  62. package/dist/custom/sandbox/lib/network/index.js +5 -0
  63. package/dist/custom/sandbox/lib/network/proxy.js +145 -0
  64. package/dist/custom/sandbox/lib/network/socks-proxy.js +269 -0
  65. package/dist/custom/sandbox/{sandbox-paths.js → lib/paths.js} +1 -3
  66. package/dist/custom/sandbox/lib/resolve.js +320 -0
  67. package/dist/custom/sandbox/lib/smoke.js +87 -0
  68. package/dist/custom/sandbox/lib/types.js +9 -0
  69. package/dist/custom/sandbox/lib/wrap-command.js +110 -0
  70. package/dist/custom/sandbox/{wsl-detect.js → lib/wsl-detect.js} +10 -14
  71. package/dist/custom/sandbox/lib/wsl-setup.js +152 -0
  72. package/dist/custom/sandbox/sandbox-bash-tool.js +12 -7
  73. package/dist/custom/sandbox/sandbox-command.js +17 -16
  74. package/dist/custom/sandbox/sandbox-executor.js +13 -38
  75. package/dist/custom/sandbox/sandbox-manager.js +43 -31
  76. package/dist/custom/sandbox/sandbox-prompt.js +2 -2
  77. package/dist/custom/sandbox/tests/test-helpers.js +24 -0
  78. package/dist/custom/sheet-api/api-guidelines.js +83 -0
  79. package/dist/custom/sheet-api/api-lookup.js +69 -0
  80. package/dist/custom/sheet-api/api-overlay.js +133 -0
  81. package/dist/custom/sheet-api/api-reference-loader.js +29 -0
  82. package/dist/custom/sync-xll.js +1 -1
  83. package/dist/custom/tools/approval.js +2 -2
  84. package/dist/custom/tools/excel-exec.js +29 -9
  85. package/dist/custom/tools/llm-analysis.js +54 -29
  86. package/dist/custom/tools/task/task.js +4 -7
  87. package/dist/custom/tools/todo-list.js +5 -1
  88. package/dist/custom/tracing/session-upload.js +4 -1
  89. package/dist/custom/uninstall.js +31 -20
  90. package/dist/main.js +77 -22
  91. package/dist/modes/interactive/components/assistant-message.js +1 -1
  92. package/dist/modes/interactive/components/bash-execution.js +5 -9
  93. package/dist/modes/interactive/components/branch-summary-message.js +1 -1
  94. package/dist/modes/interactive/components/compaction-summary-message.js +1 -1
  95. package/dist/modes/interactive/components/config-selector.js +1 -1
  96. package/dist/modes/interactive/components/custom-editor.js +3 -1
  97. package/dist/modes/interactive/components/custom-message.js +1 -1
  98. package/dist/modes/interactive/components/extension-editor.js +1 -1
  99. package/dist/modes/interactive/components/extension-input.js +1 -1
  100. package/dist/modes/interactive/components/extension-selector.js +1 -1
  101. package/dist/modes/interactive/components/footer.js +3 -2
  102. package/dist/modes/interactive/components/keybinding-hints.js +1 -1
  103. package/dist/modes/interactive/components/layout.js +1 -1
  104. package/dist/modes/interactive/components/login-dialog.js +1 -1
  105. package/dist/modes/interactive/components/model-selector.js +1 -1
  106. package/dist/modes/interactive/components/oauth-selector.js +1 -1
  107. package/dist/modes/interactive/components/session-selector.js +1 -1
  108. package/dist/modes/interactive/components/skill-invocation-message.js +1 -1
  109. package/dist/modes/interactive/components/theme-selector.js +1 -1
  110. package/dist/modes/interactive/components/tool-execution.js +1 -1
  111. package/dist/modes/interactive/components/tool-group.js +1 -1
  112. package/dist/modes/interactive/components/tree-selector.js +1 -1
  113. package/dist/modes/interactive/components/user-message-selector.js +1 -1
  114. package/dist/modes/interactive/components/user-message.js +1 -1
  115. package/dist/modes/interactive/file-attachments.js +4 -9
  116. package/dist/modes/interactive/interactive-mode.js +8 -136
  117. package/dist/modes/print-mode.js +2 -1
  118. package/dist/modes/rpc/rpc-mode.js +3 -4
  119. package/dist/tui/autocomplete.js +543 -555
  120. package/dist/tui/components/box.js +93 -89
  121. package/dist/tui/components/cancellable-loader.js +23 -23
  122. package/dist/tui/components/editor.js +1671 -1642
  123. package/dist/tui/components/image.js +67 -63
  124. package/dist/tui/components/input.js +408 -408
  125. package/dist/tui/components/loader.js +42 -42
  126. package/dist/tui/components/markdown.js +612 -617
  127. package/dist/tui/components/select-list.js +148 -142
  128. package/dist/tui/components/settings-list.js +187 -172
  129. package/dist/tui/components/spacer.js +17 -17
  130. package/dist/tui/components/text.js +83 -80
  131. package/dist/tui/components/truncated-text.js +43 -43
  132. package/dist/tui/editor-component.js +1 -1
  133. package/dist/tui/fuzzy.js +86 -88
  134. package/dist/tui/get-east-asian-width/index.js +13 -17
  135. package/dist/tui/get-east-asian-width/lookup.js +386 -384
  136. package/dist/tui/index.js +54 -22
  137. package/dist/tui/keybindings.js +92 -95
  138. package/dist/tui/keys.js +794 -806
  139. package/dist/tui/kill-ring.js +31 -33
  140. package/dist/tui/stdin-buffer.js +236 -241
  141. package/dist/tui/terminal-image.js +210 -224
  142. package/dist/tui/terminal.js +235 -242
  143. package/dist/tui/tui/autocomplete.js +543 -555
  144. package/dist/tui/tui/components/box.js +91 -89
  145. package/dist/tui/tui/components/cancellable-loader.js +23 -23
  146. package/dist/tui/tui/components/editor.js +1671 -1642
  147. package/dist/tui/tui/components/image.js +67 -63
  148. package/dist/tui/tui/components/input.js +408 -408
  149. package/dist/tui/tui/components/loader.js +42 -42
  150. package/dist/tui/tui/components/markdown.js +612 -617
  151. package/dist/tui/tui/components/select-list.js +148 -142
  152. package/dist/tui/tui/components/settings-list.js +187 -172
  153. package/dist/tui/tui/components/spacer.js +17 -17
  154. package/dist/tui/tui/components/text.js +81 -80
  155. package/dist/tui/tui/components/truncated-text.js +43 -43
  156. package/dist/tui/tui/editor-component.js +1 -1
  157. package/dist/tui/tui/fuzzy.js +86 -88
  158. package/dist/tui/tui/get-east-asian-width/index.js +13 -17
  159. package/dist/tui/tui/get-east-asian-width/lookup.js +386 -384
  160. package/dist/tui/tui/index.js +54 -22
  161. package/dist/tui/tui/keybindings.js +92 -95
  162. package/dist/tui/tui/keys.js +794 -806
  163. package/dist/tui/tui/kill-ring.js +31 -33
  164. package/dist/tui/tui/stdin-buffer.js +236 -241
  165. package/dist/tui/tui/terminal-image.js +210 -224
  166. package/dist/tui/tui/terminal.js +235 -242
  167. package/dist/tui/tui/tui.js +908 -920
  168. package/dist/tui/tui/undo-stack.js +17 -17
  169. package/dist/tui/tui/utils.js +647 -674
  170. package/dist/tui/tui.js +908 -920
  171. package/dist/tui/undo-stack.js +17 -17
  172. package/dist/tui/utils.js +647 -674
  173. package/dist/utils/log.js +51 -0
  174. package/package.json +9 -5
  175. package/skills/{com-advanced-api → advanced-com-api}/SKILL.md +1 -1
  176. package/skills/advanced-com-api/excel-type-library.py +30935 -0
  177. package/skills/advanced-com-api/office-type-library.py +11220 -0
  178. package/skills/sec-edgar/sec_to_pdf.py +26 -28
  179. package/wsl/alpine-minirootfs.tar.gz +0 -0
  180. package/xll/ShortcutXL.xll +0 -0
  181. package/xll/modules/debug_render.py +289 -0
  182. package/xll/modules/shortcut_xl/_com.py +10 -11
  183. package/xll/modules/shortcut_xl/_diff_highlight.py +17 -15
  184. package/xll/modules/shortcut_xl/_exec_entry.py +32 -14
  185. package/xll/modules/shortcut_xl/_log.py +4 -4
  186. package/xll/modules/shortcut_xl/_managed.py +25 -8
  187. package/xll/modules/shortcut_xl/_registry.py +12 -7
  188. package/xll/modules/shortcut_xl/_threading.py +33 -20
  189. package/xll/modules/shortcut_xl/_tracking.py +31 -14
  190. package/xll/modules/shortcut_xl/api/categorize.py +31 -17
  191. package/xll/modules/shortcut_xl/api/format.py +16 -26
  192. package/xll/modules/shortcut_xl/api/named_ranges.py +10 -10
  193. package/xll/modules/shortcut_xl/api/picture.py +6 -6
  194. package/xll/modules/shortcut_xl/api/range_formatter.py +44 -22
  195. package/xll/modules/shortcut_xl/api/style.py +3 -3
  196. package/xll/modules/shortcut_xl/api/utils/helpers.py +16 -26
  197. package/xll/modules/shortcut_xl/api/utils/numerical.py +6 -1
  198. package/xll/modules/shortcut_xl/api/utils/ranges.py +12 -7
  199. package/xll/modules/shortcut_xl/api/workbook.py +14 -28
  200. package/xll/modules/shortcut_xl/api/worksheet.py +33 -49
  201. package/xll/modules/shortcut_xl/api-reference.py +9 -5
  202. package/xll/python/Lib/site-packages/__pycache__/typing_extensions.cpython-312.pyc +0 -0
  203. package/xll/python/Lib/site-packages/anyio/__pycache__/__init__.cpython-312.pyc +0 -0
  204. package/xll/python/Lib/site-packages/anyio/__pycache__/from_thread.cpython-312.pyc +0 -0
  205. package/xll/python/Lib/site-packages/anyio/__pycache__/functools.cpython-312.pyc +0 -0
  206. package/xll/python/Lib/site-packages/anyio/__pycache__/lowlevel.cpython-312.pyc +0 -0
  207. package/xll/python/Lib/site-packages/anyio/__pycache__/pytest_plugin.cpython-312.pyc +0 -0
  208. package/xll/python/Lib/site-packages/anyio/__pycache__/to_interpreter.cpython-312.pyc +0 -0
  209. package/xll/python/Lib/site-packages/anyio/__pycache__/to_process.cpython-312.pyc +0 -0
  210. package/xll/python/Lib/site-packages/anyio/__pycache__/to_thread.cpython-312.pyc +0 -0
  211. package/xll/python/Lib/site-packages/anyio/_backends/__pycache__/__init__.cpython-312.pyc +0 -0
  212. package/xll/python/Lib/site-packages/anyio/_backends/__pycache__/_asyncio.cpython-312.pyc +0 -0
  213. package/xll/python/Lib/site-packages/anyio/_backends/__pycache__/_trio.cpython-312.pyc +0 -0
  214. package/xll/python/Lib/site-packages/anyio/_backends/_asyncio.py +39 -23
  215. package/xll/python/Lib/site-packages/anyio/_backends/_trio.py +2 -5
  216. package/xll/python/Lib/site-packages/anyio/_core/__pycache__/__init__.cpython-312.pyc +0 -0
  217. package/xll/python/Lib/site-packages/anyio/_core/__pycache__/_asyncio_selector_thread.cpython-312.pyc +0 -0
  218. package/xll/python/Lib/site-packages/anyio/_core/__pycache__/_contextmanagers.cpython-312.pyc +0 -0
  219. package/xll/python/Lib/site-packages/anyio/_core/__pycache__/_eventloop.cpython-312.pyc +0 -0
  220. package/xll/python/Lib/site-packages/anyio/_core/__pycache__/_exceptions.cpython-312.pyc +0 -0
  221. package/xll/python/Lib/site-packages/anyio/_core/__pycache__/_fileio.cpython-312.pyc +0 -0
  222. package/xll/python/Lib/site-packages/anyio/_core/__pycache__/_resources.cpython-312.pyc +0 -0
  223. package/xll/python/Lib/site-packages/anyio/_core/__pycache__/_signals.cpython-312.pyc +0 -0
  224. package/xll/python/Lib/site-packages/anyio/_core/__pycache__/_sockets.cpython-312.pyc +0 -0
  225. package/xll/python/Lib/site-packages/anyio/_core/__pycache__/_streams.cpython-312.pyc +0 -0
  226. package/xll/python/Lib/site-packages/anyio/_core/__pycache__/_subprocesses.cpython-312.pyc +0 -0
  227. package/xll/python/Lib/site-packages/anyio/_core/__pycache__/_synchronization.cpython-312.pyc +0 -0
  228. package/xll/python/Lib/site-packages/anyio/_core/__pycache__/_tasks.cpython-312.pyc +0 -0
  229. package/xll/python/Lib/site-packages/anyio/_core/__pycache__/_tempfile.cpython-312.pyc +0 -0
  230. package/xll/python/Lib/site-packages/anyio/_core/__pycache__/_testing.cpython-312.pyc +0 -0
  231. package/xll/python/Lib/site-packages/anyio/_core/__pycache__/_typedattr.cpython-312.pyc +0 -0
  232. package/xll/python/Lib/site-packages/anyio/_core/_fileio.py +12 -10
  233. package/xll/python/Lib/site-packages/anyio/_core/_subprocesses.py +2 -8
  234. package/xll/python/Lib/site-packages/anyio/_core/_synchronization.py +4 -0
  235. package/xll/python/Lib/site-packages/anyio/_core/_tempfile.py +1 -4
  236. package/xll/python/Lib/site-packages/anyio/abc/__pycache__/__init__.cpython-312.pyc +0 -0
  237. package/xll/python/Lib/site-packages/anyio/abc/__pycache__/_eventloop.cpython-312.pyc +0 -0
  238. package/xll/python/Lib/site-packages/anyio/abc/__pycache__/_resources.cpython-312.pyc +0 -0
  239. package/xll/python/Lib/site-packages/anyio/abc/__pycache__/_sockets.cpython-312.pyc +0 -0
  240. package/xll/python/Lib/site-packages/anyio/abc/__pycache__/_streams.cpython-312.pyc +0 -0
  241. package/xll/python/Lib/site-packages/anyio/abc/__pycache__/_subprocesses.cpython-312.pyc +0 -0
  242. package/xll/python/Lib/site-packages/anyio/abc/__pycache__/_tasks.cpython-312.pyc +0 -0
  243. package/xll/python/Lib/site-packages/anyio/abc/__pycache__/_testing.cpython-312.pyc +0 -0
  244. package/xll/python/Lib/site-packages/anyio/abc/_eventloop.py +2 -7
  245. package/xll/python/Lib/site-packages/anyio/abc/_sockets.py +5 -11
  246. package/xll/python/Lib/site-packages/anyio/abc/_streams.py +14 -20
  247. package/xll/python/Lib/site-packages/anyio/functools.py +51 -17
  248. package/xll/python/Lib/site-packages/anyio/pytest_plugin.py +62 -1
  249. package/xll/python/Lib/site-packages/anyio/streams/__pycache__/__init__.cpython-312.pyc +0 -0
  250. package/xll/python/Lib/site-packages/anyio/streams/__pycache__/buffered.cpython-312.pyc +0 -0
  251. package/xll/python/Lib/site-packages/anyio/streams/__pycache__/file.cpython-312.pyc +0 -0
  252. package/xll/python/Lib/site-packages/anyio/streams/__pycache__/memory.cpython-312.pyc +0 -0
  253. package/xll/python/Lib/site-packages/anyio/streams/__pycache__/stapled.cpython-312.pyc +0 -0
  254. package/xll/python/Lib/site-packages/anyio/streams/__pycache__/text.cpython-312.pyc +0 -0
  255. package/xll/python/Lib/site-packages/anyio/streams/__pycache__/tls.cpython-312.pyc +0 -0
  256. package/xll/python/Lib/site-packages/anyio/streams/file.py +5 -5
  257. package/xll/python/Lib/site-packages/anyio/streams/tls.py +6 -9
  258. package/xll/python/Lib/site-packages/anyio/to_thread.py +3 -3
  259. package/xll/python/Lib/site-packages/{anyio-4.12.1.dist-info → anyio-4.13.0.dist-info}/METADATA +14 -5
  260. package/xll/python/Lib/site-packages/{anyio-4.12.1.dist-info → anyio-4.13.0.dist-info}/RECORD +21 -21
  261. package/xll/python/Lib/site-packages/{anyio-4.12.1.dist-info → anyio-4.13.0.dist-info}/WHEEL +1 -1
  262. package/xll/python/Lib/site-packages/certifi/__pycache__/__init__.cpython-312.pyc +0 -0
  263. package/xll/python/Lib/site-packages/certifi/__pycache__/__main__.cpython-312.pyc +0 -0
  264. package/xll/python/Lib/site-packages/certifi/__pycache__/core.cpython-312.pyc +0 -0
  265. package/xll/python/Lib/site-packages/et_xmlfile/__pycache__/__init__.cpython-312.pyc +0 -0
  266. package/xll/python/Lib/site-packages/et_xmlfile/__pycache__/incremental_tree.cpython-312.pyc +0 -0
  267. package/xll/python/Lib/site-packages/et_xmlfile/__pycache__/xmlfile.cpython-312.pyc +0 -0
  268. package/xll/python/Lib/site-packages/h11/__pycache__/__init__.cpython-312.pyc +0 -0
  269. package/xll/python/Lib/site-packages/h11/__pycache__/_abnf.cpython-312.pyc +0 -0
  270. package/xll/python/Lib/site-packages/h11/__pycache__/_connection.cpython-312.pyc +0 -0
  271. package/xll/python/Lib/site-packages/h11/__pycache__/_events.cpython-312.pyc +0 -0
  272. package/xll/python/Lib/site-packages/h11/__pycache__/_headers.cpython-312.pyc +0 -0
  273. package/xll/python/Lib/site-packages/h11/__pycache__/_readers.cpython-312.pyc +0 -0
  274. package/xll/python/Lib/site-packages/h11/__pycache__/_receivebuffer.cpython-312.pyc +0 -0
  275. package/xll/python/Lib/site-packages/h11/__pycache__/_state.cpython-312.pyc +0 -0
  276. package/xll/python/Lib/site-packages/h11/__pycache__/_util.cpython-312.pyc +0 -0
  277. package/xll/python/Lib/site-packages/h11/__pycache__/_version.cpython-312.pyc +0 -0
  278. package/xll/python/Lib/site-packages/h11/__pycache__/_writers.cpython-312.pyc +0 -0
  279. package/xll/python/Lib/site-packages/httpcore/__pycache__/__init__.cpython-312.pyc +0 -0
  280. package/xll/python/Lib/site-packages/httpcore/__pycache__/_api.cpython-312.pyc +0 -0
  281. package/xll/python/Lib/site-packages/httpcore/__pycache__/_exceptions.cpython-312.pyc +0 -0
  282. package/xll/python/Lib/site-packages/httpcore/__pycache__/_models.cpython-312.pyc +0 -0
  283. package/xll/python/Lib/site-packages/httpcore/__pycache__/_ssl.cpython-312.pyc +0 -0
  284. package/xll/python/Lib/site-packages/httpcore/__pycache__/_synchronization.cpython-312.pyc +0 -0
  285. package/xll/python/Lib/site-packages/httpcore/__pycache__/_trace.cpython-312.pyc +0 -0
  286. package/xll/python/Lib/site-packages/httpcore/__pycache__/_utils.cpython-312.pyc +0 -0
  287. package/xll/python/Lib/site-packages/httpcore/_async/__pycache__/__init__.cpython-312.pyc +0 -0
  288. package/xll/python/Lib/site-packages/httpcore/_async/__pycache__/connection.cpython-312.pyc +0 -0
  289. package/xll/python/Lib/site-packages/httpcore/_async/__pycache__/connection_pool.cpython-312.pyc +0 -0
  290. package/xll/python/Lib/site-packages/httpcore/_async/__pycache__/http11.cpython-312.pyc +0 -0
  291. package/xll/python/Lib/site-packages/httpcore/_async/__pycache__/http2.cpython-312.pyc +0 -0
  292. package/xll/python/Lib/site-packages/httpcore/_async/__pycache__/http_proxy.cpython-312.pyc +0 -0
  293. package/xll/python/Lib/site-packages/httpcore/_async/__pycache__/interfaces.cpython-312.pyc +0 -0
  294. package/xll/python/Lib/site-packages/httpcore/_async/__pycache__/socks_proxy.cpython-312.pyc +0 -0
  295. package/xll/python/Lib/site-packages/httpcore/_backends/__pycache__/__init__.cpython-312.pyc +0 -0
  296. package/xll/python/Lib/site-packages/httpcore/_backends/__pycache__/anyio.cpython-312.pyc +0 -0
  297. package/xll/python/Lib/site-packages/httpcore/_backends/__pycache__/auto.cpython-312.pyc +0 -0
  298. package/xll/python/Lib/site-packages/httpcore/_backends/__pycache__/base.cpython-312.pyc +0 -0
  299. package/xll/python/Lib/site-packages/httpcore/_backends/__pycache__/mock.cpython-312.pyc +0 -0
  300. package/xll/python/Lib/site-packages/httpcore/_backends/__pycache__/sync.cpython-312.pyc +0 -0
  301. package/xll/python/Lib/site-packages/httpcore/_backends/__pycache__/trio.cpython-312.pyc +0 -0
  302. package/xll/python/Lib/site-packages/httpcore/_sync/__pycache__/__init__.cpython-312.pyc +0 -0
  303. package/xll/python/Lib/site-packages/httpcore/_sync/__pycache__/connection.cpython-312.pyc +0 -0
  304. package/xll/python/Lib/site-packages/httpcore/_sync/__pycache__/connection_pool.cpython-312.pyc +0 -0
  305. package/xll/python/Lib/site-packages/httpcore/_sync/__pycache__/http11.cpython-312.pyc +0 -0
  306. package/xll/python/Lib/site-packages/httpcore/_sync/__pycache__/http2.cpython-312.pyc +0 -0
  307. package/xll/python/Lib/site-packages/httpcore/_sync/__pycache__/http_proxy.cpython-312.pyc +0 -0
  308. package/xll/python/Lib/site-packages/httpcore/_sync/__pycache__/interfaces.cpython-312.pyc +0 -0
  309. package/xll/python/Lib/site-packages/httpcore/_sync/__pycache__/socks_proxy.cpython-312.pyc +0 -0
  310. package/xll/python/Lib/site-packages/httpx/__pycache__/__init__.cpython-312.pyc +0 -0
  311. package/xll/python/Lib/site-packages/httpx/__pycache__/__version__.cpython-312.pyc +0 -0
  312. package/xll/python/Lib/site-packages/httpx/__pycache__/_api.cpython-312.pyc +0 -0
  313. package/xll/python/Lib/site-packages/httpx/__pycache__/_auth.cpython-312.pyc +0 -0
  314. package/xll/python/Lib/site-packages/httpx/__pycache__/_client.cpython-312.pyc +0 -0
  315. package/xll/python/Lib/site-packages/httpx/__pycache__/_config.cpython-312.pyc +0 -0
  316. package/xll/python/Lib/site-packages/httpx/__pycache__/_content.cpython-312.pyc +0 -0
  317. package/xll/python/Lib/site-packages/httpx/__pycache__/_decoders.cpython-312.pyc +0 -0
  318. package/xll/python/Lib/site-packages/httpx/__pycache__/_exceptions.cpython-312.pyc +0 -0
  319. package/xll/python/Lib/site-packages/httpx/__pycache__/_main.cpython-312.pyc +0 -0
  320. package/xll/python/Lib/site-packages/httpx/__pycache__/_models.cpython-312.pyc +0 -0
  321. package/xll/python/Lib/site-packages/httpx/__pycache__/_multipart.cpython-312.pyc +0 -0
  322. package/xll/python/Lib/site-packages/httpx/__pycache__/_status_codes.cpython-312.pyc +0 -0
  323. package/xll/python/Lib/site-packages/httpx/__pycache__/_types.cpython-312.pyc +0 -0
  324. package/xll/python/Lib/site-packages/httpx/__pycache__/_urlparse.cpython-312.pyc +0 -0
  325. package/xll/python/Lib/site-packages/httpx/__pycache__/_urls.cpython-312.pyc +0 -0
  326. package/xll/python/Lib/site-packages/httpx/__pycache__/_utils.cpython-312.pyc +0 -0
  327. package/xll/python/Lib/site-packages/httpx/_transports/__pycache__/__init__.cpython-312.pyc +0 -0
  328. package/xll/python/Lib/site-packages/httpx/_transports/__pycache__/asgi.cpython-312.pyc +0 -0
  329. package/xll/python/Lib/site-packages/httpx/_transports/__pycache__/base.cpython-312.pyc +0 -0
  330. package/xll/python/Lib/site-packages/httpx/_transports/__pycache__/default.cpython-312.pyc +0 -0
  331. package/xll/python/Lib/site-packages/httpx/_transports/__pycache__/mock.cpython-312.pyc +0 -0
  332. package/xll/python/Lib/site-packages/httpx/_transports/__pycache__/wsgi.cpython-312.pyc +0 -0
  333. package/xll/python/Lib/site-packages/httpx-0.28.1.dist-info/RECORD +1 -1
  334. package/xll/python/Lib/site-packages/idna/__pycache__/__init__.cpython-312.pyc +0 -0
  335. package/xll/python/Lib/site-packages/idna/__pycache__/codec.cpython-312.pyc +0 -0
  336. package/xll/python/Lib/site-packages/idna/__pycache__/compat.cpython-312.pyc +0 -0
  337. package/xll/python/Lib/site-packages/idna/__pycache__/core.cpython-312.pyc +0 -0
  338. package/xll/python/Lib/site-packages/idna/__pycache__/idnadata.cpython-312.pyc +0 -0
  339. package/xll/python/Lib/site-packages/idna/__pycache__/intranges.cpython-312.pyc +0 -0
  340. package/xll/python/Lib/site-packages/idna/__pycache__/package_data.cpython-312.pyc +0 -0
  341. package/xll/python/Lib/site-packages/idna/__pycache__/uts46data.cpython-312.pyc +0 -0
  342. package/xll/python/Lib/site-packages/openpyxl/__pycache__/__init__.cpython-312.pyc +0 -0
  343. package/xll/python/Lib/site-packages/openpyxl/__pycache__/_constants.cpython-312.pyc +0 -0
  344. package/xll/python/Lib/site-packages/openpyxl/cell/__pycache__/__init__.cpython-312.pyc +0 -0
  345. package/xll/python/Lib/site-packages/openpyxl/cell/__pycache__/_writer.cpython-312.pyc +0 -0
  346. package/xll/python/Lib/site-packages/openpyxl/cell/__pycache__/cell.cpython-312.pyc +0 -0
  347. package/xll/python/Lib/site-packages/openpyxl/cell/__pycache__/read_only.cpython-312.pyc +0 -0
  348. package/xll/python/Lib/site-packages/openpyxl/cell/__pycache__/rich_text.cpython-312.pyc +0 -0
  349. package/xll/python/Lib/site-packages/openpyxl/cell/__pycache__/text.cpython-312.pyc +0 -0
  350. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/_3d.cpython-312.pyc +0 -0
  351. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/__init__.cpython-312.pyc +0 -0
  352. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/_chart.cpython-312.pyc +0 -0
  353. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/area_chart.cpython-312.pyc +0 -0
  354. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/axis.cpython-312.pyc +0 -0
  355. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/bar_chart.cpython-312.pyc +0 -0
  356. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/bubble_chart.cpython-312.pyc +0 -0
  357. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/chartspace.cpython-312.pyc +0 -0
  358. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/data_source.cpython-312.pyc +0 -0
  359. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/descriptors.cpython-312.pyc +0 -0
  360. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/error_bar.cpython-312.pyc +0 -0
  361. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/label.cpython-312.pyc +0 -0
  362. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/layout.cpython-312.pyc +0 -0
  363. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/legend.cpython-312.pyc +0 -0
  364. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/line_chart.cpython-312.pyc +0 -0
  365. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/marker.cpython-312.pyc +0 -0
  366. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/picture.cpython-312.pyc +0 -0
  367. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/pie_chart.cpython-312.pyc +0 -0
  368. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/pivot.cpython-312.pyc +0 -0
  369. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/plotarea.cpython-312.pyc +0 -0
  370. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/print_settings.cpython-312.pyc +0 -0
  371. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/radar_chart.cpython-312.pyc +0 -0
  372. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/reader.cpython-312.pyc +0 -0
  373. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/reference.cpython-312.pyc +0 -0
  374. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/scatter_chart.cpython-312.pyc +0 -0
  375. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/series.cpython-312.pyc +0 -0
  376. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/series_factory.cpython-312.pyc +0 -0
  377. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/shapes.cpython-312.pyc +0 -0
  378. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/stock_chart.cpython-312.pyc +0 -0
  379. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/surface_chart.cpython-312.pyc +0 -0
  380. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/text.cpython-312.pyc +0 -0
  381. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/title.cpython-312.pyc +0 -0
  382. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/trendline.cpython-312.pyc +0 -0
  383. package/xll/python/Lib/site-packages/openpyxl/chart/__pycache__/updown_bars.cpython-312.pyc +0 -0
  384. package/xll/python/Lib/site-packages/openpyxl/chartsheet/__pycache__/__init__.cpython-312.pyc +0 -0
  385. package/xll/python/Lib/site-packages/openpyxl/chartsheet/__pycache__/chartsheet.cpython-312.pyc +0 -0
  386. package/xll/python/Lib/site-packages/openpyxl/chartsheet/__pycache__/custom.cpython-312.pyc +0 -0
  387. package/xll/python/Lib/site-packages/openpyxl/chartsheet/__pycache__/properties.cpython-312.pyc +0 -0
  388. package/xll/python/Lib/site-packages/openpyxl/chartsheet/__pycache__/protection.cpython-312.pyc +0 -0
  389. package/xll/python/Lib/site-packages/openpyxl/chartsheet/__pycache__/publish.cpython-312.pyc +0 -0
  390. package/xll/python/Lib/site-packages/openpyxl/chartsheet/__pycache__/relation.cpython-312.pyc +0 -0
  391. package/xll/python/Lib/site-packages/openpyxl/chartsheet/__pycache__/views.cpython-312.pyc +0 -0
  392. package/xll/python/Lib/site-packages/openpyxl/comments/__pycache__/__init__.cpython-312.pyc +0 -0
  393. package/xll/python/Lib/site-packages/openpyxl/comments/__pycache__/author.cpython-312.pyc +0 -0
  394. package/xll/python/Lib/site-packages/openpyxl/comments/__pycache__/comment_sheet.cpython-312.pyc +0 -0
  395. package/xll/python/Lib/site-packages/openpyxl/comments/__pycache__/comments.cpython-312.pyc +0 -0
  396. package/xll/python/Lib/site-packages/openpyxl/comments/__pycache__/shape_writer.cpython-312.pyc +0 -0
  397. package/xll/python/Lib/site-packages/openpyxl/compat/__pycache__/__init__.cpython-312.pyc +0 -0
  398. package/xll/python/Lib/site-packages/openpyxl/compat/__pycache__/abc.cpython-312.pyc +0 -0
  399. package/xll/python/Lib/site-packages/openpyxl/compat/__pycache__/numbers.cpython-312.pyc +0 -0
  400. package/xll/python/Lib/site-packages/openpyxl/compat/__pycache__/product.cpython-312.pyc +0 -0
  401. package/xll/python/Lib/site-packages/openpyxl/compat/__pycache__/singleton.cpython-312.pyc +0 -0
  402. package/xll/python/Lib/site-packages/openpyxl/compat/__pycache__/strings.cpython-312.pyc +0 -0
  403. package/xll/python/Lib/site-packages/openpyxl/descriptors/__pycache__/__init__.cpython-312.pyc +0 -0
  404. package/xll/python/Lib/site-packages/openpyxl/descriptors/__pycache__/base.cpython-312.pyc +0 -0
  405. package/xll/python/Lib/site-packages/openpyxl/descriptors/__pycache__/container.cpython-312.pyc +0 -0
  406. package/xll/python/Lib/site-packages/openpyxl/descriptors/__pycache__/excel.cpython-312.pyc +0 -0
  407. package/xll/python/Lib/site-packages/openpyxl/descriptors/__pycache__/namespace.cpython-312.pyc +0 -0
  408. package/xll/python/Lib/site-packages/openpyxl/descriptors/__pycache__/nested.cpython-312.pyc +0 -0
  409. package/xll/python/Lib/site-packages/openpyxl/descriptors/__pycache__/sequence.cpython-312.pyc +0 -0
  410. package/xll/python/Lib/site-packages/openpyxl/descriptors/__pycache__/serialisable.cpython-312.pyc +0 -0
  411. package/xll/python/Lib/site-packages/openpyxl/descriptors/__pycache__/slots.cpython-312.pyc +0 -0
  412. package/xll/python/Lib/site-packages/openpyxl/drawing/__pycache__/__init__.cpython-312.pyc +0 -0
  413. package/xll/python/Lib/site-packages/openpyxl/drawing/__pycache__/colors.cpython-312.pyc +0 -0
  414. package/xll/python/Lib/site-packages/openpyxl/drawing/__pycache__/connector.cpython-312.pyc +0 -0
  415. package/xll/python/Lib/site-packages/openpyxl/drawing/__pycache__/drawing.cpython-312.pyc +0 -0
  416. package/xll/python/Lib/site-packages/openpyxl/drawing/__pycache__/effect.cpython-312.pyc +0 -0
  417. package/xll/python/Lib/site-packages/openpyxl/drawing/__pycache__/fill.cpython-312.pyc +0 -0
  418. package/xll/python/Lib/site-packages/openpyxl/drawing/__pycache__/geometry.cpython-312.pyc +0 -0
  419. package/xll/python/Lib/site-packages/openpyxl/drawing/__pycache__/graphic.cpython-312.pyc +0 -0
  420. package/xll/python/Lib/site-packages/openpyxl/drawing/__pycache__/image.cpython-312.pyc +0 -0
  421. package/xll/python/Lib/site-packages/openpyxl/drawing/__pycache__/line.cpython-312.pyc +0 -0
  422. package/xll/python/Lib/site-packages/openpyxl/drawing/__pycache__/picture.cpython-312.pyc +0 -0
  423. package/xll/python/Lib/site-packages/openpyxl/drawing/__pycache__/properties.cpython-312.pyc +0 -0
  424. package/xll/python/Lib/site-packages/openpyxl/drawing/__pycache__/relation.cpython-312.pyc +0 -0
  425. package/xll/python/Lib/site-packages/openpyxl/drawing/__pycache__/spreadsheet_drawing.cpython-312.pyc +0 -0
  426. package/xll/python/Lib/site-packages/openpyxl/drawing/__pycache__/text.cpython-312.pyc +0 -0
  427. package/xll/python/Lib/site-packages/openpyxl/drawing/__pycache__/xdr.cpython-312.pyc +0 -0
  428. package/xll/python/Lib/site-packages/openpyxl/formatting/__pycache__/__init__.cpython-312.pyc +0 -0
  429. package/xll/python/Lib/site-packages/openpyxl/formatting/__pycache__/formatting.cpython-312.pyc +0 -0
  430. package/xll/python/Lib/site-packages/openpyxl/formatting/__pycache__/rule.cpython-312.pyc +0 -0
  431. package/xll/python/Lib/site-packages/openpyxl/formula/__pycache__/__init__.cpython-312.pyc +0 -0
  432. package/xll/python/Lib/site-packages/openpyxl/formula/__pycache__/tokenizer.cpython-312.pyc +0 -0
  433. package/xll/python/Lib/site-packages/openpyxl/formula/__pycache__/translate.cpython-312.pyc +0 -0
  434. package/xll/python/Lib/site-packages/openpyxl/packaging/__pycache__/__init__.cpython-312.pyc +0 -0
  435. package/xll/python/Lib/site-packages/openpyxl/packaging/__pycache__/core.cpython-312.pyc +0 -0
  436. package/xll/python/Lib/site-packages/openpyxl/packaging/__pycache__/custom.cpython-312.pyc +0 -0
  437. package/xll/python/Lib/site-packages/openpyxl/packaging/__pycache__/extended.cpython-312.pyc +0 -0
  438. package/xll/python/Lib/site-packages/openpyxl/packaging/__pycache__/interface.cpython-312.pyc +0 -0
  439. package/xll/python/Lib/site-packages/openpyxl/packaging/__pycache__/manifest.cpython-312.pyc +0 -0
  440. package/xll/python/Lib/site-packages/openpyxl/packaging/__pycache__/relationship.cpython-312.pyc +0 -0
  441. package/xll/python/Lib/site-packages/openpyxl/packaging/__pycache__/workbook.cpython-312.pyc +0 -0
  442. package/xll/python/Lib/site-packages/openpyxl/pivot/__pycache__/__init__.cpython-312.pyc +0 -0
  443. package/xll/python/Lib/site-packages/openpyxl/pivot/__pycache__/cache.cpython-312.pyc +0 -0
  444. package/xll/python/Lib/site-packages/openpyxl/pivot/__pycache__/fields.cpython-312.pyc +0 -0
  445. package/xll/python/Lib/site-packages/openpyxl/pivot/__pycache__/record.cpython-312.pyc +0 -0
  446. package/xll/python/Lib/site-packages/openpyxl/pivot/__pycache__/table.cpython-312.pyc +0 -0
  447. package/xll/python/Lib/site-packages/openpyxl/reader/__pycache__/__init__.cpython-312.pyc +0 -0
  448. package/xll/python/Lib/site-packages/openpyxl/reader/__pycache__/drawings.cpython-312.pyc +0 -0
  449. package/xll/python/Lib/site-packages/openpyxl/reader/__pycache__/excel.cpython-312.pyc +0 -0
  450. package/xll/python/Lib/site-packages/openpyxl/reader/__pycache__/strings.cpython-312.pyc +0 -0
  451. package/xll/python/Lib/site-packages/openpyxl/reader/__pycache__/workbook.cpython-312.pyc +0 -0
  452. package/xll/python/Lib/site-packages/openpyxl/styles/__pycache__/__init__.cpython-312.pyc +0 -0
  453. package/xll/python/Lib/site-packages/openpyxl/styles/__pycache__/alignment.cpython-312.pyc +0 -0
  454. package/xll/python/Lib/site-packages/openpyxl/styles/__pycache__/borders.cpython-312.pyc +0 -0
  455. package/xll/python/Lib/site-packages/openpyxl/styles/__pycache__/builtins.cpython-312.pyc +0 -0
  456. package/xll/python/Lib/site-packages/openpyxl/styles/__pycache__/cell_style.cpython-312.pyc +0 -0
  457. package/xll/python/Lib/site-packages/openpyxl/styles/__pycache__/colors.cpython-312.pyc +0 -0
  458. package/xll/python/Lib/site-packages/openpyxl/styles/__pycache__/differential.cpython-312.pyc +0 -0
  459. package/xll/python/Lib/site-packages/openpyxl/styles/__pycache__/fills.cpython-312.pyc +0 -0
  460. package/xll/python/Lib/site-packages/openpyxl/styles/__pycache__/fonts.cpython-312.pyc +0 -0
  461. package/xll/python/Lib/site-packages/openpyxl/styles/__pycache__/named_styles.cpython-312.pyc +0 -0
  462. package/xll/python/Lib/site-packages/openpyxl/styles/__pycache__/numbers.cpython-312.pyc +0 -0
  463. package/xll/python/Lib/site-packages/openpyxl/styles/__pycache__/protection.cpython-312.pyc +0 -0
  464. package/xll/python/Lib/site-packages/openpyxl/styles/__pycache__/proxy.cpython-312.pyc +0 -0
  465. package/xll/python/Lib/site-packages/openpyxl/styles/__pycache__/styleable.cpython-312.pyc +0 -0
  466. package/xll/python/Lib/site-packages/openpyxl/styles/__pycache__/stylesheet.cpython-312.pyc +0 -0
  467. package/xll/python/Lib/site-packages/openpyxl/styles/__pycache__/table.cpython-312.pyc +0 -0
  468. package/xll/python/Lib/site-packages/openpyxl/utils/__pycache__/__init__.cpython-312.pyc +0 -0
  469. package/xll/python/Lib/site-packages/openpyxl/utils/__pycache__/bound_dictionary.cpython-312.pyc +0 -0
  470. package/xll/python/Lib/site-packages/openpyxl/utils/__pycache__/cell.cpython-312.pyc +0 -0
  471. package/xll/python/Lib/site-packages/openpyxl/utils/__pycache__/dataframe.cpython-312.pyc +0 -0
  472. package/xll/python/Lib/site-packages/openpyxl/utils/__pycache__/datetime.cpython-312.pyc +0 -0
  473. package/xll/python/Lib/site-packages/openpyxl/utils/__pycache__/escape.cpython-312.pyc +0 -0
  474. package/xll/python/Lib/site-packages/openpyxl/utils/__pycache__/exceptions.cpython-312.pyc +0 -0
  475. package/xll/python/Lib/site-packages/openpyxl/utils/__pycache__/formulas.cpython-312.pyc +0 -0
  476. package/xll/python/Lib/site-packages/openpyxl/utils/__pycache__/indexed_list.cpython-312.pyc +0 -0
  477. package/xll/python/Lib/site-packages/openpyxl/utils/__pycache__/inference.cpython-312.pyc +0 -0
  478. package/xll/python/Lib/site-packages/openpyxl/utils/__pycache__/protection.cpython-312.pyc +0 -0
  479. package/xll/python/Lib/site-packages/openpyxl/utils/__pycache__/units.cpython-312.pyc +0 -0
  480. package/xll/python/Lib/site-packages/openpyxl/workbook/__pycache__/__init__.cpython-312.pyc +0 -0
  481. package/xll/python/Lib/site-packages/openpyxl/workbook/__pycache__/_writer.cpython-312.pyc +0 -0
  482. package/xll/python/Lib/site-packages/openpyxl/workbook/__pycache__/child.cpython-312.pyc +0 -0
  483. package/xll/python/Lib/site-packages/openpyxl/workbook/__pycache__/defined_name.cpython-312.pyc +0 -0
  484. package/xll/python/Lib/site-packages/openpyxl/workbook/__pycache__/external_reference.cpython-312.pyc +0 -0
  485. package/xll/python/Lib/site-packages/openpyxl/workbook/__pycache__/function_group.cpython-312.pyc +0 -0
  486. package/xll/python/Lib/site-packages/openpyxl/workbook/__pycache__/properties.cpython-312.pyc +0 -0
  487. package/xll/python/Lib/site-packages/openpyxl/workbook/__pycache__/protection.cpython-312.pyc +0 -0
  488. package/xll/python/Lib/site-packages/openpyxl/workbook/__pycache__/smart_tags.cpython-312.pyc +0 -0
  489. package/xll/python/Lib/site-packages/openpyxl/workbook/__pycache__/views.cpython-312.pyc +0 -0
  490. package/xll/python/Lib/site-packages/openpyxl/workbook/__pycache__/web.cpython-312.pyc +0 -0
  491. package/xll/python/Lib/site-packages/openpyxl/workbook/__pycache__/workbook.cpython-312.pyc +0 -0
  492. package/xll/python/Lib/site-packages/openpyxl/workbook/external_link/__pycache__/__init__.cpython-312.pyc +0 -0
  493. package/xll/python/Lib/site-packages/openpyxl/workbook/external_link/__pycache__/external.cpython-312.pyc +0 -0
  494. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/__init__.cpython-312.pyc +0 -0
  495. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/_read_only.cpython-312.pyc +0 -0
  496. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/_reader.cpython-312.pyc +0 -0
  497. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/_write_only.cpython-312.pyc +0 -0
  498. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/_writer.cpython-312.pyc +0 -0
  499. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/cell_range.cpython-312.pyc +0 -0
  500. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/cell_watch.cpython-312.pyc +0 -0
  501. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/controls.cpython-312.pyc +0 -0
  502. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/copier.cpython-312.pyc +0 -0
  503. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/custom.cpython-312.pyc +0 -0
  504. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/datavalidation.cpython-312.pyc +0 -0
  505. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/dimensions.cpython-312.pyc +0 -0
  506. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/drawing.cpython-312.pyc +0 -0
  507. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/errors.cpython-312.pyc +0 -0
  508. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/filters.cpython-312.pyc +0 -0
  509. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/formula.cpython-312.pyc +0 -0
  510. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/header_footer.cpython-312.pyc +0 -0
  511. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/hyperlink.cpython-312.pyc +0 -0
  512. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/merge.cpython-312.pyc +0 -0
  513. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/ole.cpython-312.pyc +0 -0
  514. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/page.cpython-312.pyc +0 -0
  515. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/pagebreak.cpython-312.pyc +0 -0
  516. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/picture.cpython-312.pyc +0 -0
  517. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/print_settings.cpython-312.pyc +0 -0
  518. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/properties.cpython-312.pyc +0 -0
  519. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/protection.cpython-312.pyc +0 -0
  520. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/related.cpython-312.pyc +0 -0
  521. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/scenario.cpython-312.pyc +0 -0
  522. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/smart_tag.cpython-312.pyc +0 -0
  523. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/table.cpython-312.pyc +0 -0
  524. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/views.cpython-312.pyc +0 -0
  525. package/xll/python/Lib/site-packages/openpyxl/worksheet/__pycache__/worksheet.cpython-312.pyc +0 -0
  526. package/xll/python/Lib/site-packages/openpyxl/writer/__pycache__/__init__.cpython-312.pyc +0 -0
  527. package/xll/python/Lib/site-packages/openpyxl/writer/__pycache__/excel.cpython-312.pyc +0 -0
  528. package/xll/python/Lib/site-packages/openpyxl/writer/__pycache__/theme.cpython-312.pyc +0 -0
  529. package/xll/python/Lib/site-packages/openpyxl/xml/__pycache__/__init__.cpython-312.pyc +0 -0
  530. package/xll/python/Lib/site-packages/openpyxl/xml/__pycache__/constants.cpython-312.pyc +0 -0
  531. package/xll/python/Lib/site-packages/openpyxl/xml/__pycache__/functions.cpython-312.pyc +0 -0
  532. package/xll/python/Lib/site-packages/pip/__pycache__/__init__.cpython-312.pyc +0 -0
  533. package/xll/python/Lib/site-packages/pip/__pycache__/__main__.cpython-312.pyc +0 -0
  534. package/xll/python/Lib/site-packages/pip/__pycache__/__pip-runner__.cpython-312.pyc +0 -0
  535. package/xll/python/Lib/site-packages/pip/_internal/__pycache__/__init__.cpython-312.pyc +0 -0
  536. package/xll/python/Lib/site-packages/pip/_internal/__pycache__/build_env.cpython-312.pyc +0 -0
  537. package/xll/python/Lib/site-packages/pip/_internal/__pycache__/cache.cpython-312.pyc +0 -0
  538. package/xll/python/Lib/site-packages/pip/_internal/__pycache__/configuration.cpython-312.pyc +0 -0
  539. package/xll/python/Lib/site-packages/pip/_internal/__pycache__/exceptions.cpython-312.pyc +0 -0
  540. package/xll/python/Lib/site-packages/pip/_internal/__pycache__/main.cpython-312.pyc +0 -0
  541. package/xll/python/Lib/site-packages/pip/_internal/__pycache__/pyproject.cpython-312.pyc +0 -0
  542. package/xll/python/Lib/site-packages/pip/_internal/__pycache__/self_outdated_check.cpython-312.pyc +0 -0
  543. package/xll/python/Lib/site-packages/pip/_internal/__pycache__/wheel_builder.cpython-312.pyc +0 -0
  544. package/xll/python/Lib/site-packages/pip/_internal/cli/__pycache__/__init__.cpython-312.pyc +0 -0
  545. package/xll/python/Lib/site-packages/pip/_internal/cli/__pycache__/autocompletion.cpython-312.pyc +0 -0
  546. package/xll/python/Lib/site-packages/pip/_internal/cli/__pycache__/base_command.cpython-312.pyc +0 -0
  547. package/xll/python/Lib/site-packages/pip/_internal/cli/__pycache__/cmdoptions.cpython-312.pyc +0 -0
  548. package/xll/python/Lib/site-packages/pip/_internal/cli/__pycache__/command_context.cpython-312.pyc +0 -0
  549. package/xll/python/Lib/site-packages/pip/_internal/cli/__pycache__/index_command.cpython-312.pyc +0 -0
  550. package/xll/python/Lib/site-packages/pip/_internal/cli/__pycache__/main.cpython-312.pyc +0 -0
  551. package/xll/python/Lib/site-packages/pip/_internal/cli/__pycache__/main_parser.cpython-312.pyc +0 -0
  552. package/xll/python/Lib/site-packages/pip/_internal/cli/__pycache__/parser.cpython-312.pyc +0 -0
  553. package/xll/python/Lib/site-packages/pip/_internal/cli/__pycache__/progress_bars.cpython-312.pyc +0 -0
  554. package/xll/python/Lib/site-packages/pip/_internal/cli/__pycache__/req_command.cpython-312.pyc +0 -0
  555. package/xll/python/Lib/site-packages/pip/_internal/cli/__pycache__/spinners.cpython-312.pyc +0 -0
  556. package/xll/python/Lib/site-packages/pip/_internal/cli/__pycache__/status_codes.cpython-312.pyc +0 -0
  557. package/xll/python/Lib/site-packages/pip/_internal/commands/__pycache__/__init__.cpython-312.pyc +0 -0
  558. package/xll/python/Lib/site-packages/pip/_internal/commands/__pycache__/cache.cpython-312.pyc +0 -0
  559. package/xll/python/Lib/site-packages/pip/_internal/commands/__pycache__/check.cpython-312.pyc +0 -0
  560. package/xll/python/Lib/site-packages/pip/_internal/commands/__pycache__/completion.cpython-312.pyc +0 -0
  561. package/xll/python/Lib/site-packages/pip/_internal/commands/__pycache__/configuration.cpython-312.pyc +0 -0
  562. package/xll/python/Lib/site-packages/pip/_internal/commands/__pycache__/debug.cpython-312.pyc +0 -0
  563. package/xll/python/Lib/site-packages/pip/_internal/commands/__pycache__/download.cpython-312.pyc +0 -0
  564. package/xll/python/Lib/site-packages/pip/_internal/commands/__pycache__/freeze.cpython-312.pyc +0 -0
  565. package/xll/python/Lib/site-packages/pip/_internal/commands/__pycache__/hash.cpython-312.pyc +0 -0
  566. package/xll/python/Lib/site-packages/pip/_internal/commands/__pycache__/help.cpython-312.pyc +0 -0
  567. package/xll/python/Lib/site-packages/pip/_internal/commands/__pycache__/index.cpython-312.pyc +0 -0
  568. package/xll/python/Lib/site-packages/pip/_internal/commands/__pycache__/inspect.cpython-312.pyc +0 -0
  569. package/xll/python/Lib/site-packages/pip/_internal/commands/__pycache__/install.cpython-312.pyc +0 -0
  570. package/xll/python/Lib/site-packages/pip/_internal/commands/__pycache__/list.cpython-312.pyc +0 -0
  571. package/xll/python/Lib/site-packages/pip/_internal/commands/__pycache__/lock.cpython-312.pyc +0 -0
  572. package/xll/python/Lib/site-packages/pip/_internal/commands/__pycache__/search.cpython-312.pyc +0 -0
  573. package/xll/python/Lib/site-packages/pip/_internal/commands/__pycache__/show.cpython-312.pyc +0 -0
  574. package/xll/python/Lib/site-packages/pip/_internal/commands/__pycache__/uninstall.cpython-312.pyc +0 -0
  575. package/xll/python/Lib/site-packages/pip/_internal/commands/__pycache__/wheel.cpython-312.pyc +0 -0
  576. package/xll/python/Lib/site-packages/pip/_internal/distributions/__pycache__/__init__.cpython-312.pyc +0 -0
  577. package/xll/python/Lib/site-packages/pip/_internal/distributions/__pycache__/base.cpython-312.pyc +0 -0
  578. package/xll/python/Lib/site-packages/pip/_internal/distributions/__pycache__/installed.cpython-312.pyc +0 -0
  579. package/xll/python/Lib/site-packages/pip/_internal/distributions/__pycache__/sdist.cpython-312.pyc +0 -0
  580. package/xll/python/Lib/site-packages/pip/_internal/distributions/__pycache__/wheel.cpython-312.pyc +0 -0
  581. package/xll/python/Lib/site-packages/pip/_internal/index/__pycache__/__init__.cpython-312.pyc +0 -0
  582. package/xll/python/Lib/site-packages/pip/_internal/index/__pycache__/collector.cpython-312.pyc +0 -0
  583. package/xll/python/Lib/site-packages/pip/_internal/index/__pycache__/package_finder.cpython-312.pyc +0 -0
  584. package/xll/python/Lib/site-packages/pip/_internal/index/__pycache__/sources.cpython-312.pyc +0 -0
  585. package/xll/python/Lib/site-packages/pip/_internal/locations/__pycache__/__init__.cpython-312.pyc +0 -0
  586. package/xll/python/Lib/site-packages/pip/_internal/locations/__pycache__/_distutils.cpython-312.pyc +0 -0
  587. package/xll/python/Lib/site-packages/pip/_internal/locations/__pycache__/_sysconfig.cpython-312.pyc +0 -0
  588. package/xll/python/Lib/site-packages/pip/_internal/locations/__pycache__/base.cpython-312.pyc +0 -0
  589. package/xll/python/Lib/site-packages/pip/_internal/metadata/__pycache__/__init__.cpython-312.pyc +0 -0
  590. package/xll/python/Lib/site-packages/pip/_internal/metadata/__pycache__/_json.cpython-312.pyc +0 -0
  591. package/xll/python/Lib/site-packages/pip/_internal/metadata/__pycache__/base.cpython-312.pyc +0 -0
  592. package/xll/python/Lib/site-packages/pip/_internal/metadata/__pycache__/pkg_resources.cpython-312.pyc +0 -0
  593. package/xll/python/Lib/site-packages/pip/_internal/metadata/importlib/__pycache__/__init__.cpython-312.pyc +0 -0
  594. package/xll/python/Lib/site-packages/pip/_internal/metadata/importlib/__pycache__/_compat.cpython-312.pyc +0 -0
  595. package/xll/python/Lib/site-packages/pip/_internal/metadata/importlib/__pycache__/_dists.cpython-312.pyc +0 -0
  596. package/xll/python/Lib/site-packages/pip/_internal/metadata/importlib/__pycache__/_envs.cpython-312.pyc +0 -0
  597. package/xll/python/Lib/site-packages/pip/_internal/models/__pycache__/__init__.cpython-312.pyc +0 -0
  598. package/xll/python/Lib/site-packages/pip/_internal/models/__pycache__/candidate.cpython-312.pyc +0 -0
  599. package/xll/python/Lib/site-packages/pip/_internal/models/__pycache__/direct_url.cpython-312.pyc +0 -0
  600. package/xll/python/Lib/site-packages/pip/_internal/models/__pycache__/format_control.cpython-312.pyc +0 -0
  601. package/xll/python/Lib/site-packages/pip/_internal/models/__pycache__/index.cpython-312.pyc +0 -0
  602. package/xll/python/Lib/site-packages/pip/_internal/models/__pycache__/installation_report.cpython-312.pyc +0 -0
  603. package/xll/python/Lib/site-packages/pip/_internal/models/__pycache__/link.cpython-312.pyc +0 -0
  604. package/xll/python/Lib/site-packages/pip/_internal/models/__pycache__/release_control.cpython-312.pyc +0 -0
  605. package/xll/python/Lib/site-packages/pip/_internal/models/__pycache__/scheme.cpython-312.pyc +0 -0
  606. package/xll/python/Lib/site-packages/pip/_internal/models/__pycache__/search_scope.cpython-312.pyc +0 -0
  607. package/xll/python/Lib/site-packages/pip/_internal/models/__pycache__/selection_prefs.cpython-312.pyc +0 -0
  608. package/xll/python/Lib/site-packages/pip/_internal/models/__pycache__/target_python.cpython-312.pyc +0 -0
  609. package/xll/python/Lib/site-packages/pip/_internal/models/__pycache__/wheel.cpython-312.pyc +0 -0
  610. package/xll/python/Lib/site-packages/pip/_internal/network/__pycache__/__init__.cpython-312.pyc +0 -0
  611. package/xll/python/Lib/site-packages/pip/_internal/network/__pycache__/auth.cpython-312.pyc +0 -0
  612. package/xll/python/Lib/site-packages/pip/_internal/network/__pycache__/cache.cpython-312.pyc +0 -0
  613. package/xll/python/Lib/site-packages/pip/_internal/network/__pycache__/download.cpython-312.pyc +0 -0
  614. package/xll/python/Lib/site-packages/pip/_internal/network/__pycache__/lazy_wheel.cpython-312.pyc +0 -0
  615. package/xll/python/Lib/site-packages/pip/_internal/network/__pycache__/session.cpython-312.pyc +0 -0
  616. package/xll/python/Lib/site-packages/pip/_internal/network/__pycache__/utils.cpython-312.pyc +0 -0
  617. package/xll/python/Lib/site-packages/pip/_internal/network/__pycache__/xmlrpc.cpython-312.pyc +0 -0
  618. package/xll/python/Lib/site-packages/pip/_internal/operations/__pycache__/__init__.cpython-312.pyc +0 -0
  619. package/xll/python/Lib/site-packages/pip/_internal/operations/__pycache__/check.cpython-312.pyc +0 -0
  620. package/xll/python/Lib/site-packages/pip/_internal/operations/__pycache__/freeze.cpython-312.pyc +0 -0
  621. package/xll/python/Lib/site-packages/pip/_internal/operations/__pycache__/prepare.cpython-312.pyc +0 -0
  622. package/xll/python/Lib/site-packages/pip/_internal/operations/build/__pycache__/__init__.cpython-312.pyc +0 -0
  623. package/xll/python/Lib/site-packages/pip/_internal/operations/build/__pycache__/build_tracker.cpython-312.pyc +0 -0
  624. package/xll/python/Lib/site-packages/pip/_internal/operations/build/__pycache__/metadata.cpython-312.pyc +0 -0
  625. package/xll/python/Lib/site-packages/pip/_internal/operations/build/__pycache__/metadata_editable.cpython-312.pyc +0 -0
  626. package/xll/python/Lib/site-packages/pip/_internal/operations/build/__pycache__/wheel.cpython-312.pyc +0 -0
  627. package/xll/python/Lib/site-packages/pip/_internal/operations/build/__pycache__/wheel_editable.cpython-312.pyc +0 -0
  628. package/xll/python/Lib/site-packages/pip/_internal/operations/install/__pycache__/__init__.cpython-312.pyc +0 -0
  629. package/xll/python/Lib/site-packages/pip/_internal/operations/install/__pycache__/wheel.cpython-312.pyc +0 -0
  630. package/xll/python/Lib/site-packages/pip/_internal/req/__pycache__/__init__.cpython-312.pyc +0 -0
  631. package/xll/python/Lib/site-packages/pip/_internal/req/__pycache__/constructors.cpython-312.pyc +0 -0
  632. package/xll/python/Lib/site-packages/pip/_internal/req/__pycache__/pep723.cpython-312.pyc +0 -0
  633. package/xll/python/Lib/site-packages/pip/_internal/req/__pycache__/req_dependency_group.cpython-312.pyc +0 -0
  634. package/xll/python/Lib/site-packages/pip/_internal/req/__pycache__/req_file.cpython-312.pyc +0 -0
  635. package/xll/python/Lib/site-packages/pip/_internal/req/__pycache__/req_install.cpython-312.pyc +0 -0
  636. package/xll/python/Lib/site-packages/pip/_internal/req/__pycache__/req_set.cpython-312.pyc +0 -0
  637. package/xll/python/Lib/site-packages/pip/_internal/req/__pycache__/req_uninstall.cpython-312.pyc +0 -0
  638. package/xll/python/Lib/site-packages/pip/_internal/resolution/__pycache__/__init__.cpython-312.pyc +0 -0
  639. package/xll/python/Lib/site-packages/pip/_internal/resolution/__pycache__/base.cpython-312.pyc +0 -0
  640. package/xll/python/Lib/site-packages/pip/_internal/resolution/legacy/__pycache__/__init__.cpython-312.pyc +0 -0
  641. package/xll/python/Lib/site-packages/pip/_internal/resolution/legacy/__pycache__/resolver.cpython-312.pyc +0 -0
  642. package/xll/python/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/__init__.cpython-312.pyc +0 -0
  643. package/xll/python/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/base.cpython-312.pyc +0 -0
  644. package/xll/python/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/candidates.cpython-312.pyc +0 -0
  645. package/xll/python/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/factory.cpython-312.pyc +0 -0
  646. package/xll/python/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/found_candidates.cpython-312.pyc +0 -0
  647. package/xll/python/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/provider.cpython-312.pyc +0 -0
  648. package/xll/python/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/reporter.cpython-312.pyc +0 -0
  649. package/xll/python/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/requirements.cpython-312.pyc +0 -0
  650. package/xll/python/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/resolver.cpython-312.pyc +0 -0
  651. package/xll/python/Lib/site-packages/pip/_internal/utils/__pycache__/__init__.cpython-312.pyc +0 -0
  652. package/xll/python/Lib/site-packages/pip/_internal/utils/__pycache__/_jaraco_text.cpython-312.pyc +0 -0
  653. package/xll/python/Lib/site-packages/pip/_internal/utils/__pycache__/_log.cpython-312.pyc +0 -0
  654. package/xll/python/Lib/site-packages/pip/_internal/utils/__pycache__/appdirs.cpython-312.pyc +0 -0
  655. package/xll/python/Lib/site-packages/pip/_internal/utils/__pycache__/compat.cpython-312.pyc +0 -0
  656. package/xll/python/Lib/site-packages/pip/_internal/utils/__pycache__/compatibility_tags.cpython-312.pyc +0 -0
  657. package/xll/python/Lib/site-packages/pip/_internal/utils/__pycache__/datetime.cpython-312.pyc +0 -0
  658. package/xll/python/Lib/site-packages/pip/_internal/utils/__pycache__/deprecation.cpython-312.pyc +0 -0
  659. package/xll/python/Lib/site-packages/pip/_internal/utils/__pycache__/direct_url_helpers.cpython-312.pyc +0 -0
  660. package/xll/python/Lib/site-packages/pip/_internal/utils/__pycache__/egg_link.cpython-312.pyc +0 -0
  661. package/xll/python/Lib/site-packages/pip/_internal/utils/__pycache__/entrypoints.cpython-312.pyc +0 -0
  662. package/xll/python/Lib/site-packages/pip/_internal/utils/__pycache__/filesystem.cpython-312.pyc +0 -0
  663. package/xll/python/Lib/site-packages/pip/_internal/utils/__pycache__/filetypes.cpython-312.pyc +0 -0
  664. package/xll/python/Lib/site-packages/pip/_internal/utils/__pycache__/glibc.cpython-312.pyc +0 -0
  665. package/xll/python/Lib/site-packages/pip/_internal/utils/__pycache__/hashes.cpython-312.pyc +0 -0
  666. package/xll/python/Lib/site-packages/pip/_internal/utils/__pycache__/logging.cpython-312.pyc +0 -0
  667. package/xll/python/Lib/site-packages/pip/_internal/utils/__pycache__/misc.cpython-312.pyc +0 -0
  668. package/xll/python/Lib/site-packages/pip/_internal/utils/__pycache__/packaging.cpython-312.pyc +0 -0
  669. package/xll/python/Lib/site-packages/pip/_internal/utils/__pycache__/pylock.cpython-312.pyc +0 -0
  670. package/xll/python/Lib/site-packages/pip/_internal/utils/__pycache__/retry.cpython-312.pyc +0 -0
  671. package/xll/python/Lib/site-packages/pip/_internal/utils/__pycache__/subprocess.cpython-312.pyc +0 -0
  672. package/xll/python/Lib/site-packages/pip/_internal/utils/__pycache__/temp_dir.cpython-312.pyc +0 -0
  673. package/xll/python/Lib/site-packages/pip/_internal/utils/__pycache__/unpacking.cpython-312.pyc +0 -0
  674. package/xll/python/Lib/site-packages/pip/_internal/utils/__pycache__/urls.cpython-312.pyc +0 -0
  675. package/xll/python/Lib/site-packages/pip/_internal/utils/__pycache__/virtualenv.cpython-312.pyc +0 -0
  676. package/xll/python/Lib/site-packages/pip/_internal/utils/__pycache__/wheel.cpython-312.pyc +0 -0
  677. package/xll/python/Lib/site-packages/pip/_internal/vcs/__pycache__/__init__.cpython-312.pyc +0 -0
  678. package/xll/python/Lib/site-packages/pip/_internal/vcs/__pycache__/bazaar.cpython-312.pyc +0 -0
  679. package/xll/python/Lib/site-packages/pip/_internal/vcs/__pycache__/git.cpython-312.pyc +0 -0
  680. package/xll/python/Lib/site-packages/pip/_internal/vcs/__pycache__/mercurial.cpython-312.pyc +0 -0
  681. package/xll/python/Lib/site-packages/pip/_internal/vcs/__pycache__/subversion.cpython-312.pyc +0 -0
  682. package/xll/python/Lib/site-packages/pip/_internal/vcs/__pycache__/versioncontrol.cpython-312.pyc +0 -0
  683. package/xll/python/Lib/site-packages/pip/_vendor/__pycache__/__init__.cpython-312.pyc +0 -0
  684. package/xll/python/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/__init__.cpython-312.pyc +0 -0
  685. package/xll/python/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/_cmd.cpython-312.pyc +0 -0
  686. package/xll/python/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/adapter.cpython-312.pyc +0 -0
  687. package/xll/python/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/cache.cpython-312.pyc +0 -0
  688. package/xll/python/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/controller.cpython-312.pyc +0 -0
  689. package/xll/python/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/filewrapper.cpython-312.pyc +0 -0
  690. package/xll/python/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/heuristics.cpython-312.pyc +0 -0
  691. package/xll/python/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/serialize.cpython-312.pyc +0 -0
  692. package/xll/python/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/wrapper.cpython-312.pyc +0 -0
  693. package/xll/python/Lib/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/__init__.cpython-312.pyc +0 -0
  694. package/xll/python/Lib/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/file_cache.cpython-312.pyc +0 -0
  695. package/xll/python/Lib/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/redis_cache.cpython-312.pyc +0 -0
  696. package/xll/python/Lib/site-packages/pip/_vendor/certifi/__pycache__/__init__.cpython-312.pyc +0 -0
  697. package/xll/python/Lib/site-packages/pip/_vendor/certifi/__pycache__/__main__.cpython-312.pyc +0 -0
  698. package/xll/python/Lib/site-packages/pip/_vendor/certifi/__pycache__/core.cpython-312.pyc +0 -0
  699. package/xll/python/Lib/site-packages/pip/_vendor/dependency_groups/__pycache__/__init__.cpython-312.pyc +0 -0
  700. package/xll/python/Lib/site-packages/pip/_vendor/dependency_groups/__pycache__/__main__.cpython-312.pyc +0 -0
  701. package/xll/python/Lib/site-packages/pip/_vendor/dependency_groups/__pycache__/_implementation.cpython-312.pyc +0 -0
  702. package/xll/python/Lib/site-packages/pip/_vendor/dependency_groups/__pycache__/_lint_dependency_groups.cpython-312.pyc +0 -0
  703. package/xll/python/Lib/site-packages/pip/_vendor/dependency_groups/__pycache__/_pip_wrapper.cpython-312.pyc +0 -0
  704. package/xll/python/Lib/site-packages/pip/_vendor/dependency_groups/__pycache__/_toml_compat.cpython-312.pyc +0 -0
  705. package/xll/python/Lib/site-packages/pip/_vendor/distlib/__pycache__/__init__.cpython-312.pyc +0 -0
  706. package/xll/python/Lib/site-packages/pip/_vendor/distlib/__pycache__/compat.cpython-312.pyc +0 -0
  707. package/xll/python/Lib/site-packages/pip/_vendor/distlib/__pycache__/resources.cpython-312.pyc +0 -0
  708. package/xll/python/Lib/site-packages/pip/_vendor/distlib/__pycache__/scripts.cpython-312.pyc +0 -0
  709. package/xll/python/Lib/site-packages/pip/_vendor/distlib/__pycache__/util.cpython-312.pyc +0 -0
  710. package/xll/python/Lib/site-packages/pip/_vendor/distro/__pycache__/__init__.cpython-312.pyc +0 -0
  711. package/xll/python/Lib/site-packages/pip/_vendor/distro/__pycache__/__main__.cpython-312.pyc +0 -0
  712. package/xll/python/Lib/site-packages/pip/_vendor/distro/__pycache__/distro.cpython-312.pyc +0 -0
  713. package/xll/python/Lib/site-packages/pip/_vendor/idna/__pycache__/__init__.cpython-312.pyc +0 -0
  714. package/xll/python/Lib/site-packages/pip/_vendor/idna/__pycache__/codec.cpython-312.pyc +0 -0
  715. package/xll/python/Lib/site-packages/pip/_vendor/idna/__pycache__/compat.cpython-312.pyc +0 -0
  716. package/xll/python/Lib/site-packages/pip/_vendor/idna/__pycache__/core.cpython-312.pyc +0 -0
  717. package/xll/python/Lib/site-packages/pip/_vendor/idna/__pycache__/idnadata.cpython-312.pyc +0 -0
  718. package/xll/python/Lib/site-packages/pip/_vendor/idna/__pycache__/intranges.cpython-312.pyc +0 -0
  719. package/xll/python/Lib/site-packages/pip/_vendor/idna/__pycache__/package_data.cpython-312.pyc +0 -0
  720. package/xll/python/Lib/site-packages/pip/_vendor/idna/__pycache__/uts46data.cpython-312.pyc +0 -0
  721. package/xll/python/Lib/site-packages/pip/_vendor/msgpack/__pycache__/__init__.cpython-312.pyc +0 -0
  722. package/xll/python/Lib/site-packages/pip/_vendor/msgpack/__pycache__/exceptions.cpython-312.pyc +0 -0
  723. package/xll/python/Lib/site-packages/pip/_vendor/msgpack/__pycache__/ext.cpython-312.pyc +0 -0
  724. package/xll/python/Lib/site-packages/pip/_vendor/msgpack/__pycache__/fallback.cpython-312.pyc +0 -0
  725. package/xll/python/Lib/site-packages/pip/_vendor/packaging/__pycache__/__init__.cpython-312.pyc +0 -0
  726. package/xll/python/Lib/site-packages/pip/_vendor/packaging/__pycache__/_elffile.cpython-312.pyc +0 -0
  727. package/xll/python/Lib/site-packages/pip/_vendor/packaging/__pycache__/_manylinux.cpython-312.pyc +0 -0
  728. package/xll/python/Lib/site-packages/pip/_vendor/packaging/__pycache__/_musllinux.cpython-312.pyc +0 -0
  729. package/xll/python/Lib/site-packages/pip/_vendor/packaging/__pycache__/_parser.cpython-312.pyc +0 -0
  730. package/xll/python/Lib/site-packages/pip/_vendor/packaging/__pycache__/_structures.cpython-312.pyc +0 -0
  731. package/xll/python/Lib/site-packages/pip/_vendor/packaging/__pycache__/_tokenizer.cpython-312.pyc +0 -0
  732. package/xll/python/Lib/site-packages/pip/_vendor/packaging/__pycache__/markers.cpython-312.pyc +0 -0
  733. package/xll/python/Lib/site-packages/pip/_vendor/packaging/__pycache__/metadata.cpython-312.pyc +0 -0
  734. package/xll/python/Lib/site-packages/pip/_vendor/packaging/__pycache__/pylock.cpython-312.pyc +0 -0
  735. package/xll/python/Lib/site-packages/pip/_vendor/packaging/__pycache__/requirements.cpython-312.pyc +0 -0
  736. package/xll/python/Lib/site-packages/pip/_vendor/packaging/__pycache__/specifiers.cpython-312.pyc +0 -0
  737. package/xll/python/Lib/site-packages/pip/_vendor/packaging/__pycache__/tags.cpython-312.pyc +0 -0
  738. package/xll/python/Lib/site-packages/pip/_vendor/packaging/__pycache__/utils.cpython-312.pyc +0 -0
  739. package/xll/python/Lib/site-packages/pip/_vendor/packaging/__pycache__/version.cpython-312.pyc +0 -0
  740. package/xll/python/Lib/site-packages/pip/_vendor/packaging/licenses/__pycache__/__init__.cpython-312.pyc +0 -0
  741. package/xll/python/Lib/site-packages/pip/_vendor/packaging/licenses/__pycache__/_spdx.cpython-312.pyc +0 -0
  742. package/xll/python/Lib/site-packages/pip/_vendor/pkg_resources/__pycache__/__init__.cpython-312.pyc +0 -0
  743. package/xll/python/Lib/site-packages/pip/_vendor/platformdirs/__pycache__/__init__.cpython-312.pyc +0 -0
  744. package/xll/python/Lib/site-packages/pip/_vendor/platformdirs/__pycache__/__main__.cpython-312.pyc +0 -0
  745. package/xll/python/Lib/site-packages/pip/_vendor/platformdirs/__pycache__/android.cpython-312.pyc +0 -0
  746. package/xll/python/Lib/site-packages/pip/_vendor/platformdirs/__pycache__/api.cpython-312.pyc +0 -0
  747. package/xll/python/Lib/site-packages/pip/_vendor/platformdirs/__pycache__/macos.cpython-312.pyc +0 -0
  748. package/xll/python/Lib/site-packages/pip/_vendor/platformdirs/__pycache__/unix.cpython-312.pyc +0 -0
  749. package/xll/python/Lib/site-packages/pip/_vendor/platformdirs/__pycache__/version.cpython-312.pyc +0 -0
  750. package/xll/python/Lib/site-packages/pip/_vendor/platformdirs/__pycache__/windows.cpython-312.pyc +0 -0
  751. package/xll/python/Lib/site-packages/pip/_vendor/pygments/__pycache__/__init__.cpython-312.pyc +0 -0
  752. package/xll/python/Lib/site-packages/pip/_vendor/pygments/__pycache__/__main__.cpython-312.pyc +0 -0
  753. package/xll/python/Lib/site-packages/pip/_vendor/pygments/__pycache__/console.cpython-312.pyc +0 -0
  754. package/xll/python/Lib/site-packages/pip/_vendor/pygments/__pycache__/filter.cpython-312.pyc +0 -0
  755. package/xll/python/Lib/site-packages/pip/_vendor/pygments/__pycache__/formatter.cpython-312.pyc +0 -0
  756. package/xll/python/Lib/site-packages/pip/_vendor/pygments/__pycache__/lexer.cpython-312.pyc +0 -0
  757. package/xll/python/Lib/site-packages/pip/_vendor/pygments/__pycache__/modeline.cpython-312.pyc +0 -0
  758. package/xll/python/Lib/site-packages/pip/_vendor/pygments/__pycache__/plugin.cpython-312.pyc +0 -0
  759. package/xll/python/Lib/site-packages/pip/_vendor/pygments/__pycache__/regexopt.cpython-312.pyc +0 -0
  760. package/xll/python/Lib/site-packages/pip/_vendor/pygments/__pycache__/scanner.cpython-312.pyc +0 -0
  761. package/xll/python/Lib/site-packages/pip/_vendor/pygments/__pycache__/sphinxext.cpython-312.pyc +0 -0
  762. package/xll/python/Lib/site-packages/pip/_vendor/pygments/__pycache__/style.cpython-312.pyc +0 -0
  763. package/xll/python/Lib/site-packages/pip/_vendor/pygments/__pycache__/token.cpython-312.pyc +0 -0
  764. package/xll/python/Lib/site-packages/pip/_vendor/pygments/__pycache__/unistring.cpython-312.pyc +0 -0
  765. package/xll/python/Lib/site-packages/pip/_vendor/pygments/__pycache__/util.cpython-312.pyc +0 -0
  766. package/xll/python/Lib/site-packages/pip/_vendor/pygments/filters/__pycache__/__init__.cpython-312.pyc +0 -0
  767. package/xll/python/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/__init__.cpython-312.pyc +0 -0
  768. package/xll/python/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/_mapping.cpython-312.pyc +0 -0
  769. package/xll/python/Lib/site-packages/pip/_vendor/pygments/lexers/__pycache__/__init__.cpython-312.pyc +0 -0
  770. package/xll/python/Lib/site-packages/pip/_vendor/pygments/lexers/__pycache__/_mapping.cpython-312.pyc +0 -0
  771. package/xll/python/Lib/site-packages/pip/_vendor/pygments/lexers/__pycache__/python.cpython-312.pyc +0 -0
  772. package/xll/python/Lib/site-packages/pip/_vendor/pygments/styles/__pycache__/__init__.cpython-312.pyc +0 -0
  773. package/xll/python/Lib/site-packages/pip/_vendor/pygments/styles/__pycache__/_mapping.cpython-312.pyc +0 -0
  774. package/xll/python/Lib/site-packages/pip/_vendor/pyproject_hooks/__pycache__/__init__.cpython-312.pyc +0 -0
  775. package/xll/python/Lib/site-packages/pip/_vendor/pyproject_hooks/__pycache__/_impl.cpython-312.pyc +0 -0
  776. package/xll/python/Lib/site-packages/pip/_vendor/pyproject_hooks/_in_process/__pycache__/__init__.cpython-312.pyc +0 -0
  777. package/xll/python/Lib/site-packages/pip/_vendor/pyproject_hooks/_in_process/__pycache__/_in_process.cpython-312.pyc +0 -0
  778. package/xll/python/Lib/site-packages/pip/_vendor/requests/__pycache__/__init__.cpython-312.pyc +0 -0
  779. package/xll/python/Lib/site-packages/pip/_vendor/requests/__pycache__/__version__.cpython-312.pyc +0 -0
  780. package/xll/python/Lib/site-packages/pip/_vendor/requests/__pycache__/_internal_utils.cpython-312.pyc +0 -0
  781. package/xll/python/Lib/site-packages/pip/_vendor/requests/__pycache__/adapters.cpython-312.pyc +0 -0
  782. package/xll/python/Lib/site-packages/pip/_vendor/requests/__pycache__/api.cpython-312.pyc +0 -0
  783. package/xll/python/Lib/site-packages/pip/_vendor/requests/__pycache__/auth.cpython-312.pyc +0 -0
  784. package/xll/python/Lib/site-packages/pip/_vendor/requests/__pycache__/certs.cpython-312.pyc +0 -0
  785. package/xll/python/Lib/site-packages/pip/_vendor/requests/__pycache__/compat.cpython-312.pyc +0 -0
  786. package/xll/python/Lib/site-packages/pip/_vendor/requests/__pycache__/cookies.cpython-312.pyc +0 -0
  787. package/xll/python/Lib/site-packages/pip/_vendor/requests/__pycache__/exceptions.cpython-312.pyc +0 -0
  788. package/xll/python/Lib/site-packages/pip/_vendor/requests/__pycache__/help.cpython-312.pyc +0 -0
  789. package/xll/python/Lib/site-packages/pip/_vendor/requests/__pycache__/hooks.cpython-312.pyc +0 -0
  790. package/xll/python/Lib/site-packages/pip/_vendor/requests/__pycache__/models.cpython-312.pyc +0 -0
  791. package/xll/python/Lib/site-packages/pip/_vendor/requests/__pycache__/packages.cpython-312.pyc +0 -0
  792. package/xll/python/Lib/site-packages/pip/_vendor/requests/__pycache__/sessions.cpython-312.pyc +0 -0
  793. package/xll/python/Lib/site-packages/pip/_vendor/requests/__pycache__/status_codes.cpython-312.pyc +0 -0
  794. package/xll/python/Lib/site-packages/pip/_vendor/requests/__pycache__/structures.cpython-312.pyc +0 -0
  795. package/xll/python/Lib/site-packages/pip/_vendor/requests/__pycache__/utils.cpython-312.pyc +0 -0
  796. package/xll/python/Lib/site-packages/pip/_vendor/resolvelib/__pycache__/__init__.cpython-312.pyc +0 -0
  797. package/xll/python/Lib/site-packages/pip/_vendor/resolvelib/__pycache__/providers.cpython-312.pyc +0 -0
  798. package/xll/python/Lib/site-packages/pip/_vendor/resolvelib/__pycache__/reporters.cpython-312.pyc +0 -0
  799. package/xll/python/Lib/site-packages/pip/_vendor/resolvelib/__pycache__/structs.cpython-312.pyc +0 -0
  800. package/xll/python/Lib/site-packages/pip/_vendor/resolvelib/resolvers/__pycache__/__init__.cpython-312.pyc +0 -0
  801. package/xll/python/Lib/site-packages/pip/_vendor/resolvelib/resolvers/__pycache__/abstract.cpython-312.pyc +0 -0
  802. package/xll/python/Lib/site-packages/pip/_vendor/resolvelib/resolvers/__pycache__/criterion.cpython-312.pyc +0 -0
  803. package/xll/python/Lib/site-packages/pip/_vendor/resolvelib/resolvers/__pycache__/exceptions.cpython-312.pyc +0 -0
  804. package/xll/python/Lib/site-packages/pip/_vendor/resolvelib/resolvers/__pycache__/resolution.cpython-312.pyc +0 -0
  805. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/__init__.cpython-312.pyc +0 -0
  806. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/__main__.cpython-312.pyc +0 -0
  807. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/_cell_widths.cpython-312.pyc +0 -0
  808. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/_emoji_codes.cpython-312.pyc +0 -0
  809. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/_emoji_replace.cpython-312.pyc +0 -0
  810. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/_export_format.cpython-312.pyc +0 -0
  811. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/_extension.cpython-312.pyc +0 -0
  812. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/_fileno.cpython-312.pyc +0 -0
  813. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/_inspect.cpython-312.pyc +0 -0
  814. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/_log_render.cpython-312.pyc +0 -0
  815. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/_loop.cpython-312.pyc +0 -0
  816. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/_null_file.cpython-312.pyc +0 -0
  817. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/_palettes.cpython-312.pyc +0 -0
  818. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/_pick.cpython-312.pyc +0 -0
  819. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/_ratio.cpython-312.pyc +0 -0
  820. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/_spinners.cpython-312.pyc +0 -0
  821. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/_stack.cpython-312.pyc +0 -0
  822. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/_timer.cpython-312.pyc +0 -0
  823. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/_win32_console.cpython-312.pyc +0 -0
  824. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/_windows.cpython-312.pyc +0 -0
  825. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/_windows_renderer.cpython-312.pyc +0 -0
  826. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/_wrap.cpython-312.pyc +0 -0
  827. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/abc.cpython-312.pyc +0 -0
  828. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/align.cpython-312.pyc +0 -0
  829. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/ansi.cpython-312.pyc +0 -0
  830. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/bar.cpython-312.pyc +0 -0
  831. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/box.cpython-312.pyc +0 -0
  832. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/cells.cpython-312.pyc +0 -0
  833. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/color.cpython-312.pyc +0 -0
  834. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/color_triplet.cpython-312.pyc +0 -0
  835. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/columns.cpython-312.pyc +0 -0
  836. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/console.cpython-312.pyc +0 -0
  837. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/constrain.cpython-312.pyc +0 -0
  838. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/containers.cpython-312.pyc +0 -0
  839. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/control.cpython-312.pyc +0 -0
  840. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/default_styles.cpython-312.pyc +0 -0
  841. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/diagnose.cpython-312.pyc +0 -0
  842. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/emoji.cpython-312.pyc +0 -0
  843. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/errors.cpython-312.pyc +0 -0
  844. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/file_proxy.cpython-312.pyc +0 -0
  845. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/filesize.cpython-312.pyc +0 -0
  846. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/highlighter.cpython-312.pyc +0 -0
  847. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/json.cpython-312.pyc +0 -0
  848. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/jupyter.cpython-312.pyc +0 -0
  849. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/layout.cpython-312.pyc +0 -0
  850. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/live.cpython-312.pyc +0 -0
  851. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/live_render.cpython-312.pyc +0 -0
  852. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/logging.cpython-312.pyc +0 -0
  853. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/markup.cpython-312.pyc +0 -0
  854. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/measure.cpython-312.pyc +0 -0
  855. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/padding.cpython-312.pyc +0 -0
  856. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/pager.cpython-312.pyc +0 -0
  857. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/palette.cpython-312.pyc +0 -0
  858. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/panel.cpython-312.pyc +0 -0
  859. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/pretty.cpython-312.pyc +0 -0
  860. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/progress.cpython-312.pyc +0 -0
  861. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/progress_bar.cpython-312.pyc +0 -0
  862. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/prompt.cpython-312.pyc +0 -0
  863. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/protocol.cpython-312.pyc +0 -0
  864. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/region.cpython-312.pyc +0 -0
  865. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/repr.cpython-312.pyc +0 -0
  866. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/rule.cpython-312.pyc +0 -0
  867. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/scope.cpython-312.pyc +0 -0
  868. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/screen.cpython-312.pyc +0 -0
  869. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/segment.cpython-312.pyc +0 -0
  870. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/spinner.cpython-312.pyc +0 -0
  871. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/status.cpython-312.pyc +0 -0
  872. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/style.cpython-312.pyc +0 -0
  873. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/styled.cpython-312.pyc +0 -0
  874. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/syntax.cpython-312.pyc +0 -0
  875. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/table.cpython-312.pyc +0 -0
  876. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/terminal_theme.cpython-312.pyc +0 -0
  877. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/text.cpython-312.pyc +0 -0
  878. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/theme.cpython-312.pyc +0 -0
  879. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/themes.cpython-312.pyc +0 -0
  880. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/traceback.cpython-312.pyc +0 -0
  881. package/xll/python/Lib/site-packages/pip/_vendor/rich/__pycache__/tree.cpython-312.pyc +0 -0
  882. package/xll/python/Lib/site-packages/pip/_vendor/tomli/__pycache__/__init__.cpython-312.pyc +0 -0
  883. package/xll/python/Lib/site-packages/pip/_vendor/tomli/__pycache__/_parser.cpython-312.pyc +0 -0
  884. package/xll/python/Lib/site-packages/pip/_vendor/tomli/__pycache__/_re.cpython-312.pyc +0 -0
  885. package/xll/python/Lib/site-packages/pip/_vendor/tomli/__pycache__/_types.cpython-312.pyc +0 -0
  886. package/xll/python/Lib/site-packages/pip/_vendor/tomli_w/__pycache__/__init__.cpython-312.pyc +0 -0
  887. package/xll/python/Lib/site-packages/pip/_vendor/tomli_w/__pycache__/_writer.cpython-312.pyc +0 -0
  888. package/xll/python/Lib/site-packages/pip/_vendor/truststore/__pycache__/__init__.cpython-312.pyc +0 -0
  889. package/xll/python/Lib/site-packages/pip/_vendor/truststore/__pycache__/_api.cpython-312.pyc +0 -0
  890. package/xll/python/Lib/site-packages/pip/_vendor/truststore/__pycache__/_macos.cpython-312.pyc +0 -0
  891. package/xll/python/Lib/site-packages/pip/_vendor/truststore/__pycache__/_openssl.cpython-312.pyc +0 -0
  892. package/xll/python/Lib/site-packages/pip/_vendor/truststore/__pycache__/_ssl_constants.cpython-312.pyc +0 -0
  893. package/xll/python/Lib/site-packages/pip/_vendor/truststore/__pycache__/_windows.cpython-312.pyc +0 -0
  894. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/__pycache__/__init__.cpython-312.pyc +0 -0
  895. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/__pycache__/_collections.cpython-312.pyc +0 -0
  896. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/__pycache__/_version.cpython-312.pyc +0 -0
  897. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/__pycache__/connection.cpython-312.pyc +0 -0
  898. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/__pycache__/connectionpool.cpython-312.pyc +0 -0
  899. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/__pycache__/exceptions.cpython-312.pyc +0 -0
  900. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/__pycache__/fields.cpython-312.pyc +0 -0
  901. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/__pycache__/filepost.cpython-312.pyc +0 -0
  902. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/__pycache__/poolmanager.cpython-312.pyc +0 -0
  903. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/__pycache__/request.cpython-312.pyc +0 -0
  904. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/__pycache__/response.cpython-312.pyc +0 -0
  905. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/contrib/__pycache__/__init__.cpython-312.pyc +0 -0
  906. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/contrib/__pycache__/_appengine_environ.cpython-312.pyc +0 -0
  907. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/contrib/__pycache__/appengine.cpython-312.pyc +0 -0
  908. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/contrib/__pycache__/ntlmpool.cpython-312.pyc +0 -0
  909. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/contrib/__pycache__/pyopenssl.cpython-312.pyc +0 -0
  910. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/contrib/__pycache__/securetransport.cpython-312.pyc +0 -0
  911. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/contrib/__pycache__/socks.cpython-312.pyc +0 -0
  912. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__pycache__/__init__.cpython-312.pyc +0 -0
  913. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__pycache__/bindings.cpython-312.pyc +0 -0
  914. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__pycache__/low_level.cpython-312.pyc +0 -0
  915. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/packages/__pycache__/__init__.cpython-312.pyc +0 -0
  916. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/packages/__pycache__/six.cpython-312.pyc +0 -0
  917. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/packages/backports/__pycache__/__init__.cpython-312.pyc +0 -0
  918. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/packages/backports/__pycache__/makefile.cpython-312.pyc +0 -0
  919. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/packages/backports/__pycache__/weakref_finalize.cpython-312.pyc +0 -0
  920. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/__init__.cpython-312.pyc +0 -0
  921. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/connection.cpython-312.pyc +0 -0
  922. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/proxy.cpython-312.pyc +0 -0
  923. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/queue.cpython-312.pyc +0 -0
  924. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/request.cpython-312.pyc +0 -0
  925. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/response.cpython-312.pyc +0 -0
  926. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/retry.cpython-312.pyc +0 -0
  927. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/ssl_.cpython-312.pyc +0 -0
  928. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/ssl_match_hostname.cpython-312.pyc +0 -0
  929. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/ssltransport.cpython-312.pyc +0 -0
  930. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/timeout.cpython-312.pyc +0 -0
  931. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/url.cpython-312.pyc +0 -0
  932. package/xll/python/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/wait.cpython-312.pyc +0 -0
  933. package/xll/python/Lib/site-packages/pip-26.0.1.dist-info/RECORD +3 -3
  934. package/xll/python/Scripts/httpx.exe +0 -0
  935. package/xll/python/Scripts/pip.exe +0 -0
  936. package/xll/python/Scripts/pip3.12.exe +0 -0
  937. package/xll/python/Scripts/pip3.exe +0 -0
  938. package/dist/custom/ensure-excel.js +0 -63
  939. package/dist/custom/sandbox/network/index.js +0 -8
  940. package/dist/custom/sandbox/network/network-proxy.js +0 -136
  941. package/dist/custom/sandbox/network/proxy-worker.py +0 -257
  942. package/dist/custom/sandbox/sandbox-config.js +0 -153
  943. package/dist/custom/sandbox/sandbox-smoke.js +0 -49
  944. package/dist/custom/sandbox/wsl-setup.js +0 -92
  945. package/dist/custom/tools/task/agents.js +0 -6
  946. package/skills/com-advanced-api/excel-type-library.py +0 -27767
  947. package/skills/com-advanced-api/office-type-library.py +0 -10867
  948. /package/xll/python/Lib/site-packages/{anyio-4.12.1.dist-info → anyio-4.13.0.dist-info}/INSTALLER +0 -0
  949. /package/xll/python/Lib/site-packages/{anyio-4.12.1.dist-info → anyio-4.13.0.dist-info}/entry_points.txt +0 -0
  950. /package/xll/python/Lib/site-packages/{anyio-4.12.1.dist-info → anyio-4.13.0.dist-info}/licenses/LICENSE +0 -0
  951. /package/xll/python/Lib/site-packages/{anyio-4.12.1.dist-info → anyio-4.13.0.dist-info}/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
- ../../Scripts/pip.exe,sha256=WUxPGfKVYqi6pL-dP6dmpiVGzK6S0_wAEp92hdMDPRM,108390
2
- ../../Scripts/pip3.12.exe,sha256=WUxPGfKVYqi6pL-dP6dmpiVGzK6S0_wAEp92hdMDPRM,108390
3
- ../../Scripts/pip3.exe,sha256=WUxPGfKVYqi6pL-dP6dmpiVGzK6S0_wAEp92hdMDPRM,108390
1
+ ../../Scripts/pip.exe,sha256=4_QS5yA5JhuG4MAWTsGrxamccPGe1rRH7tfxee6TXfI,108390
2
+ ../../Scripts/pip3.12.exe,sha256=4_QS5yA5JhuG4MAWTsGrxamccPGe1rRH7tfxee6TXfI,108390
3
+ ../../Scripts/pip3.exe,sha256=4_QS5yA5JhuG4MAWTsGrxamccPGe1rRH7tfxee6TXfI,108390
4
4
  pip-26.0.1.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
5
5
  pip-26.0.1.dist-info/METADATA,sha256=ZqIZuNGsG6l2gHiKlQjVQghFQhgSWfhEDHuCVPW3aN8,4675
6
6
  pip-26.0.1.dist-info/RECORD,,
Binary file
Binary file
Binary file
Binary file
@@ -1,63 +0,0 @@
1
- /**
2
- * Ensure Excel is running with the ShortcutXL add-in loaded.
3
- *
4
- * 1. Ping the XLL HTTP server.
5
- * 2. If unreachable, launch Excel via COM (no splash screen) and register the XLL.
6
- * 3. Wait for the HTTP server to become available.
7
- */
8
- import { execSync } from 'child_process';
9
- import { existsSync } from 'fs';
10
- import { getXllPath } from '../config.js';
11
- import { EXCEL_HTTP_URL } from './constants.js';
12
- function resolveXllPath() {
13
- const candidate = getXllPath();
14
- return existsSync(candidate) ? candidate : null;
15
- }
16
- async function isXllReachable(url) {
17
- try {
18
- const res = await fetch(`${url}/ping`, { signal: AbortSignal.timeout(2000) });
19
- return res.ok;
20
- }
21
- catch {
22
- return false;
23
- }
24
- }
25
- function launchExcelWithXll(xllPath) {
26
- const script = [
27
- '$xl = New-Object -ComObject Excel.Application',
28
- '$xl.Visible = $true',
29
- '$xl.Workbooks.Add() | Out-Null',
30
- `$xl.RegisterXLL('${xllPath.replace(/'/g, "''")}') | Out-Null`
31
- ].join('; ');
32
- // Base64-encode the script to avoid all shell quoting issues.
33
- const encoded = Buffer.from(script, 'utf16le').toString('base64');
34
- execSync(`powershell -NoProfile -EncodedCommand ${encoded}`, {
35
- stdio: 'ignore',
36
- timeout: 30_000
37
- });
38
- }
39
- /**
40
- * Ensure Excel + XLL are running. Returns true if the HTTP server is reachable
41
- * after this call, false if we couldn't start Excel.
42
- */
43
- export async function ensureExcel() {
44
- if (await isXllReachable(EXCEL_HTTP_URL))
45
- return true;
46
- const xllPath = resolveXllPath();
47
- if (!xllPath)
48
- return false;
49
- try {
50
- launchExcelWithXll(xllPath);
51
- }
52
- catch {
53
- return false;
54
- }
55
- // Wait for the HTTP server to come up (XLL init takes a moment)
56
- for (let i = 0; i < 15; i++) {
57
- await new Promise((r) => setTimeout(r, 1000));
58
- if (await isXllReachable(EXCEL_HTTP_URL))
59
- return true;
60
- }
61
- return false;
62
- }
63
- //# sourceMappingURL=ensure-excel.js.map
@@ -1,8 +0,0 @@
1
- /**
2
- * Network proxy subsystem for the sandbox.
3
- *
4
- * Provides domain-level network control via an HTTP CONNECT proxy
5
- * running inside WSL, with interactive approval prompts.
6
- */
7
- export { startNetworkProxy, deployProxyWorker, isDomainAllowed } from './network-proxy.js';
8
- //# sourceMappingURL=index.js.map
@@ -1,136 +0,0 @@
1
- /**
2
- * Network proxy manager for the sandbox.
3
- *
4
- * Spawns a proxy worker inside WSL that listens on a Unix socket.
5
- * Domain approval requests are forwarded to the agent process via IPC.
6
- */
7
- import { spawn, spawnSync } from 'child_process';
8
- import { readFileSync } from 'fs';
9
- import { createInterface } from 'readline';
10
- import { dirname, join } from 'path';
11
- import { fileURLToPath } from 'url';
12
- import { SANDBOX_DISTRO } from '../sandbox-config.js';
13
- const __dirname = dirname(fileURLToPath(import.meta.url));
14
- /**
15
- * Start the network proxy worker inside WSL.
16
- *
17
- * The worker runs outside bwrap (so it has network access) and listens
18
- * on a Unix socket that gets bind-mounted into the sandbox. Inside bwrap,
19
- * socat bridges the socket to TCP and HTTP_PROXY routes all traffic through it.
20
- */
21
- export function startNetworkProxy(config) {
22
- return new Promise((resolve, reject) => {
23
- const socketPath = `/tmp/shortcut-proxy-${process.pid}.sock`;
24
- const allowedSet = new Set(config.allowedDomains);
25
- // Spawn the Python proxy worker inside WSL (outside bwrap — full network access)
26
- const child = spawn('wsl', ['-d', SANDBOX_DISTRO, '--', 'python3', '/tmp/shortcut-proxy-worker.py', socketPath], {
27
- stdio: ['pipe', 'pipe', 'pipe'],
28
- windowsHide: true
29
- });
30
- let settled = false;
31
- const rl = createInterface({ input: child.stdout });
32
- rl.on('line', async (line) => {
33
- try {
34
- const msg = JSON.parse(line);
35
- if (msg.type === 'ready') {
36
- if (!settled) {
37
- settled = true;
38
- resolve({
39
- socketPath: msg.socket,
40
- stop: () => {
41
- child.kill('SIGTERM');
42
- }
43
- });
44
- }
45
- }
46
- else if (msg.type === 'error') {
47
- if (!settled) {
48
- settled = true;
49
- reject(new Error(`Proxy worker error: ${msg.message}`));
50
- }
51
- }
52
- else if (msg.type === 'check') {
53
- const domain = msg.domain;
54
- const id = msg.id;
55
- // Check allowlist first (exact match and wildcard)
56
- let allowed = isDomainAllowed(domain, allowedSet);
57
- if (!allowed) {
58
- const choice = await config.onDomainCheck(domain);
59
- allowed = choice !== false;
60
- if (choice === 'always') {
61
- // Add to runtime set so this session skips the prompt too
62
- allowedSet.add(domain);
63
- }
64
- // 'once' — allowed this request only, prompt again next time
65
- }
66
- // Send result back to worker
67
- const result = JSON.stringify({ type: 'result', id, allowed });
68
- child.stdin.write(result + '\n');
69
- }
70
- }
71
- catch {
72
- // Ignore malformed lines
73
- }
74
- });
75
- child.on('error', (err) => {
76
- if (!settled) {
77
- settled = true;
78
- reject(err);
79
- }
80
- });
81
- child.on('close', (code) => {
82
- if (!settled) {
83
- settled = true;
84
- reject(new Error(`Proxy worker exited with code ${code}`));
85
- }
86
- });
87
- // Timeout
88
- setTimeout(() => {
89
- if (!settled) {
90
- settled = true;
91
- child.kill();
92
- reject(new Error('Proxy worker startup timed out'));
93
- }
94
- }, 10000);
95
- });
96
- }
97
- /** Domains that are always allowed without prompting (local machine traffic). */
98
- const ALWAYS_ALLOWED = new Set(['localhost', '127.0.0.1', '::1']);
99
- /** Check if a domain matches the allowlist (exact or wildcard). */
100
- export function isDomainAllowed(domain, allowed) {
101
- if (ALWAYS_ALLOWED.has(domain))
102
- return true;
103
- if (allowed.has(domain))
104
- return true;
105
- // Check wildcard patterns (e.g., *.github.com)
106
- for (const pattern of allowed) {
107
- if (pattern.startsWith('*.')) {
108
- const suffix = pattern.slice(1); // .github.com
109
- if (domain.endsWith(suffix) || domain === pattern.slice(2)) {
110
- return true;
111
- }
112
- }
113
- }
114
- return false;
115
- }
116
- /**
117
- * Deploy the proxy worker script into the WSL distro.
118
- * Called once during sandbox setup.
119
- */
120
- export function deployProxyWorker() {
121
- const workerSource = join(__dirname, 'proxy-worker.py');
122
- let script;
123
- try {
124
- script = readFileSync(workerSource, 'utf-8');
125
- }
126
- catch {
127
- return false;
128
- }
129
- const result = spawnSync('wsl', ['-d', SANDBOX_DISTRO, '--', 'tee', '/tmp/shortcut-proxy-worker.py'], {
130
- input: script,
131
- timeout: 5000,
132
- windowsHide: true
133
- });
134
- return result.status === 0;
135
- }
136
- //# sourceMappingURL=network-proxy.js.map
@@ -1,257 +0,0 @@
1
- #!/usr/bin/env python3
2
- """
3
- Sandbox network proxy worker — runs inside WSL, outside bwrap.
4
-
5
- Listens on a Unix socket and proxies HTTP CONNECT requests.
6
- Domain approval is delegated to the parent process via stdin/stdout JSON IPC.
7
-
8
- Protocol:
9
- Worker → Parent: {"type":"check","id":"<uuid>","domain":"example.com"}
10
- Parent → Worker: {"type":"result","id":"<uuid>","allowed":true}
11
- Worker → Parent: {"type":"ready","socket":"<path>"}
12
- Worker → Parent: {"type":"error","message":"..."}
13
- """
14
-
15
- import asyncio
16
- import json
17
- import os
18
- import signal
19
- import socket
20
- import sys
21
- import uuid
22
-
23
- SOCKET_PATH = sys.argv[1] if len(sys.argv) > 1 else "/tmp/shortcut-proxy.sock"
24
-
25
-
26
- def log(msg: str) -> None:
27
- """Debug log to stderr (doesn't interfere with IPC on stdout)."""
28
- print(f"[proxy] {msg}", file=sys.stderr, flush=True)
29
-
30
- # Pending domain checks: id → asyncio.Future
31
- pending: dict[str, asyncio.Future[bool]] = {}
32
-
33
-
34
- def send_msg(msg: dict) -> None:
35
- """Send a JSON message to the parent process via stdout."""
36
- sys.stdout.write(json.dumps(msg) + "\n")
37
- sys.stdout.flush()
38
-
39
-
40
- async def read_stdin(loop: asyncio.AbstractEventLoop) -> None:
41
- """Read approval results from parent via stdin."""
42
- reader = asyncio.StreamReader()
43
- transport, _ = await loop.connect_read_pipe(
44
- lambda: asyncio.StreamReaderProtocol(reader), sys.stdin
45
- )
46
- try:
47
- while True:
48
- line = await reader.readline()
49
- if not line:
50
- log("stdin EOF — parent closed pipe")
51
- break
52
- try:
53
- msg = json.loads(line)
54
- log(f"stdin got: {msg}")
55
- if msg.get("type") == "result" and msg.get("id") in pending:
56
- fut = pending.pop(msg["id"])
57
- if not fut.done():
58
- fut.set_result(bool(msg.get("allowed", False)))
59
- except (json.JSONDecodeError, KeyError) as e:
60
- log(f"stdin parse error: {e}")
61
- except Exception as e:
62
- log(f"stdin reader crashed: {e}")
63
-
64
-
65
- async def check_domain(domain: str, loop: asyncio.AbstractEventLoop) -> bool:
66
- """Ask the parent process whether a domain is allowed."""
67
- check_id = str(uuid.uuid4())
68
- fut: asyncio.Future[bool] = loop.create_future()
69
- pending[check_id] = fut
70
- send_msg({"type": "check", "id": check_id, "domain": domain})
71
- try:
72
- return await asyncio.wait_for(fut, timeout=30.0)
73
- except asyncio.TimeoutError:
74
- pending.pop(check_id, None)
75
- return False
76
-
77
-
78
- class ParsedRequest:
79
- """Parsed proxy request — either CONNECT tunnel or plain HTTP forward."""
80
- __slots__ = ("method", "host", "port", "is_connect", "raw_data")
81
-
82
- def __init__(self, method: str, host: str, port: int, is_connect: bool, raw_data: bytes):
83
- self.method = method
84
- self.host = host
85
- self.port = port
86
- self.is_connect = is_connect
87
- self.raw_data = raw_data
88
-
89
-
90
- def parse_proxy_request(data: bytes) -> ParsedRequest | None:
91
- """Parse an HTTP proxy request (CONNECT or plain HTTP forward)."""
92
- try:
93
- first_line = data.split(b"\r\n")[0].decode("utf-8", errors="replace")
94
- parts = first_line.split(" ")
95
- method = parts[0]
96
-
97
- if method == "CONNECT":
98
- host_port = parts[1].split(":")
99
- host = host_port[0]
100
- port = int(host_port[1]) if len(host_port) > 1 else 443
101
- return ParsedRequest(method, host, port, True, data)
102
-
103
- # Plain HTTP: GET http://host/path HTTP/1.1
104
- if len(parts) >= 2 and parts[1].startswith("http://"):
105
- from urllib.parse import urlparse
106
- url = urlparse(parts[1])
107
- host = url.hostname or ""
108
- port = url.port or 80
109
- # Rewrite the request line to use relative path for the upstream server
110
- relative_path = url.path or "/"
111
- if url.query:
112
- relative_path += "?" + url.query
113
- rewritten_line = f"{method} {relative_path} {parts[2] if len(parts) > 2 else 'HTTP/1.1'}"
114
- # Replace the first line in the raw data
115
- rest = data.split(b"\r\n", 1)[1] if b"\r\n" in data else b""
116
- rewritten = rewritten_line.encode() + b"\r\n" + rest
117
- return ParsedRequest(method, host, port, False, rewritten)
118
-
119
- return None
120
- except (IndexError, ValueError):
121
- return None
122
-
123
-
124
- async def pipe(reader: asyncio.StreamReader, writer: asyncio.StreamWriter) -> None:
125
- """Pipe data from reader to writer until EOF or error."""
126
- try:
127
- while True:
128
- data = await reader.read(65536)
129
- if not data:
130
- break
131
- writer.write(data)
132
- await writer.drain()
133
- except (ConnectionError, OSError):
134
- pass
135
- finally:
136
- try:
137
- writer.close()
138
- except OSError:
139
- pass
140
-
141
-
142
- async def handle_client(
143
- client_reader: asyncio.StreamReader,
144
- client_writer: asyncio.StreamWriter,
145
- loop: asyncio.AbstractEventLoop,
146
- ) -> None:
147
- """Handle a single proxy connection (CONNECT tunnel or plain HTTP forward)."""
148
- try:
149
- log("new connection")
150
- data = await asyncio.wait_for(client_reader.read(8192), timeout=10.0)
151
- if not data:
152
- log("empty request, closing")
153
- client_writer.close()
154
- return
155
-
156
- req = parse_proxy_request(data)
157
- if req is None:
158
- log(f"bad request: {data[:80]!r}")
159
- client_writer.write(b"HTTP/1.1 400 Bad Request\r\n\r\n")
160
- await client_writer.drain()
161
- client_writer.close()
162
- return
163
-
164
- log(f"{req.method} {req.host}:{req.port} — checking domain")
165
- allowed = await check_domain(req.host, loop)
166
- log(f"{req.method} {req.host}:{req.port} — allowed={allowed}")
167
- if not allowed:
168
- client_writer.write(b"HTTP/1.1 403 Forbidden\r\n\r\nBlocked by sandbox policy\r\n")
169
- await client_writer.drain()
170
- client_writer.close()
171
- return
172
-
173
- # Connect to the target
174
- try:
175
- log(f"{req.method} {req.host}:{req.port} — opening connection")
176
- target_reader, target_writer = await asyncio.wait_for(
177
- asyncio.open_connection(req.host, req.port), timeout=10.0
178
- )
179
- log(f"{req.method} {req.host}:{req.port} — connected")
180
- except (OSError, asyncio.TimeoutError) as e:
181
- msg = str(e) if str(e) else "Connection failed"
182
- log(f"{req.method} {req.host}:{req.port} — connect failed: {msg}")
183
- client_writer.write(f"HTTP/1.1 502 Bad Gateway\r\n\r\n{msg}\r\n".encode())
184
- await client_writer.drain()
185
- client_writer.close()
186
- return
187
-
188
- if req.is_connect:
189
- # CONNECT tunnel: send 200, then pipe bidirectionally
190
- client_writer.write(b"HTTP/1.1 200 Connection Established\r\n\r\n")
191
- await client_writer.drain()
192
- log(f"CONNECT {req.host}:{req.port} — piping")
193
- await asyncio.gather(
194
- pipe(client_reader, target_writer),
195
- pipe(target_reader, client_writer),
196
- return_exceptions=True,
197
- )
198
- else:
199
- # Plain HTTP: forward the rewritten request, pipe response back
200
- target_writer.write(req.raw_data)
201
- await target_writer.drain()
202
- log(f"{req.method} {req.host}:{req.port} — forwarding request, piping response")
203
- await asyncio.gather(
204
- pipe(client_reader, target_writer),
205
- pipe(target_reader, client_writer),
206
- return_exceptions=True,
207
- )
208
-
209
- log(f"{req.method} {req.host}:{req.port} — done")
210
- except (ConnectionError, OSError, asyncio.TimeoutError) as e:
211
- log(f"error: {e}")
212
- finally:
213
- try:
214
- client_writer.close()
215
- except OSError:
216
- pass
217
-
218
-
219
- async def main() -> None:
220
- loop = asyncio.get_running_loop()
221
-
222
- # Clean up stale socket
223
- if os.path.exists(SOCKET_PATH):
224
- try:
225
- os.unlink(SOCKET_PATH)
226
- except OSError:
227
- pass
228
-
229
- # Start reading stdin for approval results.
230
- # Hold a reference to prevent GC from destroying the task.
231
- stdin_task = asyncio.create_task(read_stdin(loop))
232
-
233
- # Start Unix socket server
234
- server = await asyncio.start_unix_server(
235
- lambda r, w: handle_client(r, w, loop),
236
- path=SOCKET_PATH,
237
- )
238
-
239
- send_msg({"type": "ready", "socket": SOCKET_PATH})
240
- log(f"listening on {SOCKET_PATH}")
241
-
242
- def cleanup() -> None:
243
- server.close()
244
- try:
245
- os.unlink(SOCKET_PATH)
246
- except OSError:
247
- pass
248
-
249
- for sig in (signal.SIGTERM, signal.SIGINT):
250
- loop.add_signal_handler(sig, lambda: (cleanup(), loop.stop()))
251
-
252
- async with server:
253
- await server.serve_forever()
254
-
255
-
256
- if __name__ == "__main__":
257
- asyncio.run(main())