@agent-webui/ai-desk-python-darwin-x64 1.0.29-beta1

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 (1883) hide show
  1. package/README.md +3 -0
  2. package/package.json +20 -0
  3. package/python/bin/idle3.13 +7 -0
  4. package/python/bin/pip +8 -0
  5. package/python/bin/pip3 +8 -0
  6. package/python/bin/pip3.13 +8 -0
  7. package/python/bin/pydoc3.13 +7 -0
  8. package/python/bin/python3.13 +0 -0
  9. package/python/bin/python3.13-config +76 -0
  10. package/python/include/python3.13/Python.h +140 -0
  11. package/python/include/python3.13/abstract.h +921 -0
  12. package/python/include/python3.13/bltinmodule.h +14 -0
  13. package/python/include/python3.13/boolobject.h +54 -0
  14. package/python/include/python3.13/bytearrayobject.h +44 -0
  15. package/python/include/python3.13/bytesobject.h +66 -0
  16. package/python/include/python3.13/ceval.h +145 -0
  17. package/python/include/python3.13/codecs.h +176 -0
  18. package/python/include/python3.13/compile.h +22 -0
  19. package/python/include/python3.13/complexobject.h +30 -0
  20. package/python/include/python3.13/cpython/abstract.h +87 -0
  21. package/python/include/python3.13/cpython/bytearrayobject.h +34 -0
  22. package/python/include/python3.13/cpython/bytesobject.h +37 -0
  23. package/python/include/python3.13/cpython/cellobject.h +44 -0
  24. package/python/include/python3.13/cpython/ceval.h +25 -0
  25. package/python/include/python3.13/cpython/classobject.h +71 -0
  26. package/python/include/python3.13/cpython/code.h +358 -0
  27. package/python/include/python3.13/cpython/compile.h +50 -0
  28. package/python/include/python3.13/cpython/complexobject.h +33 -0
  29. package/python/include/python3.13/cpython/context.h +74 -0
  30. package/python/include/python3.13/cpython/critical_section.h +134 -0
  31. package/python/include/python3.13/cpython/descrobject.h +62 -0
  32. package/python/include/python3.13/cpython/dictobject.h +102 -0
  33. package/python/include/python3.13/cpython/fileobject.h +16 -0
  34. package/python/include/python3.13/cpython/fileutils.h +8 -0
  35. package/python/include/python3.13/cpython/floatobject.h +27 -0
  36. package/python/include/python3.13/cpython/frameobject.h +35 -0
  37. package/python/include/python3.13/cpython/funcobject.h +184 -0
  38. package/python/include/python3.13/cpython/genobject.h +83 -0
  39. package/python/include/python3.13/cpython/import.h +25 -0
  40. package/python/include/python3.13/cpython/initconfig.h +274 -0
  41. package/python/include/python3.13/cpython/listobject.h +53 -0
  42. package/python/include/python3.13/cpython/lock.h +63 -0
  43. package/python/include/python3.13/cpython/longintrepr.h +146 -0
  44. package/python/include/python3.13/cpython/longobject.h +116 -0
  45. package/python/include/python3.13/cpython/memoryobject.h +50 -0
  46. package/python/include/python3.13/cpython/methodobject.h +66 -0
  47. package/python/include/python3.13/cpython/modsupport.h +26 -0
  48. package/python/include/python3.13/cpython/monitoring.h +250 -0
  49. package/python/include/python3.13/cpython/object.h +535 -0
  50. package/python/include/python3.13/cpython/objimpl.h +104 -0
  51. package/python/include/python3.13/cpython/odictobject.h +43 -0
  52. package/python/include/python3.13/cpython/picklebufobject.h +31 -0
  53. package/python/include/python3.13/cpython/pthread_stubs.h +105 -0
  54. package/python/include/python3.13/cpython/pyatomic.h +569 -0
  55. package/python/include/python3.13/cpython/pyatomic_gcc.h +551 -0
  56. package/python/include/python3.13/cpython/pyatomic_msc.h +1095 -0
  57. package/python/include/python3.13/cpython/pyatomic_std.h +976 -0
  58. package/python/include/python3.13/cpython/pyctype.h +39 -0
  59. package/python/include/python3.13/cpython/pydebug.h +38 -0
  60. package/python/include/python3.13/cpython/pyerrors.h +132 -0
  61. package/python/include/python3.13/cpython/pyfpe.h +15 -0
  62. package/python/include/python3.13/cpython/pyframe.h +45 -0
  63. package/python/include/python3.13/cpython/pyhash.h +47 -0
  64. package/python/include/python3.13/cpython/pylifecycle.h +92 -0
  65. package/python/include/python3.13/cpython/pymem.h +84 -0
  66. package/python/include/python3.13/cpython/pystate.h +277 -0
  67. package/python/include/python3.13/cpython/pystats.h +175 -0
  68. package/python/include/python3.13/cpython/pythonrun.h +96 -0
  69. package/python/include/python3.13/cpython/pythread.h +43 -0
  70. package/python/include/python3.13/cpython/pytime.h +27 -0
  71. package/python/include/python3.13/cpython/setobject.h +71 -0
  72. package/python/include/python3.13/cpython/sysmodule.h +22 -0
  73. package/python/include/python3.13/cpython/traceback.h +13 -0
  74. package/python/include/python3.13/cpython/tracemalloc.h +32 -0
  75. package/python/include/python3.13/cpython/tupleobject.h +38 -0
  76. package/python/include/python3.13/cpython/unicodeobject.h +703 -0
  77. package/python/include/python3.13/cpython/warnings.h +20 -0
  78. package/python/include/python3.13/cpython/weakrefobject.h +63 -0
  79. package/python/include/python3.13/critical_section.h +16 -0
  80. package/python/include/python3.13/datetime.h +267 -0
  81. package/python/include/python3.13/descrobject.h +100 -0
  82. package/python/include/python3.13/dictobject.h +108 -0
  83. package/python/include/python3.13/dynamic_annotations.h +499 -0
  84. package/python/include/python3.13/enumobject.h +17 -0
  85. package/python/include/python3.13/errcode.h +45 -0
  86. package/python/include/python3.13/exports.h +108 -0
  87. package/python/include/python3.13/fileobject.h +41 -0
  88. package/python/include/python3.13/fileutils.h +62 -0
  89. package/python/include/python3.13/floatobject.h +54 -0
  90. package/python/include/python3.13/frameobject.h +20 -0
  91. package/python/include/python3.13/genericaliasobject.h +14 -0
  92. package/python/include/python3.13/import.h +103 -0
  93. package/python/include/python3.13/internal/mimalloc/mimalloc/atomic.h +392 -0
  94. package/python/include/python3.13/internal/mimalloc/mimalloc/internal.h +969 -0
  95. package/python/include/python3.13/internal/mimalloc/mimalloc/prim.h +329 -0
  96. package/python/include/python3.13/internal/mimalloc/mimalloc/track.h +147 -0
  97. package/python/include/python3.13/internal/mimalloc/mimalloc/types.h +721 -0
  98. package/python/include/python3.13/internal/mimalloc/mimalloc.h +565 -0
  99. package/python/include/python3.13/internal/pycore_abstract.h +61 -0
  100. package/python/include/python3.13/internal/pycore_asdl.h +112 -0
  101. package/python/include/python3.13/internal/pycore_ast.h +926 -0
  102. package/python/include/python3.13/internal/pycore_ast_state.h +268 -0
  103. package/python/include/python3.13/internal/pycore_atexit.h +67 -0
  104. package/python/include/python3.13/internal/pycore_backoff.h +145 -0
  105. package/python/include/python3.13/internal/pycore_bitutils.h +186 -0
  106. package/python/include/python3.13/internal/pycore_blocks_output_buffer.h +321 -0
  107. package/python/include/python3.13/internal/pycore_brc.h +74 -0
  108. package/python/include/python3.13/internal/pycore_bytes_methods.h +82 -0
  109. package/python/include/python3.13/internal/pycore_bytesobject.h +152 -0
  110. package/python/include/python3.13/internal/pycore_call.h +205 -0
  111. package/python/include/python3.13/internal/pycore_capsule.h +17 -0
  112. package/python/include/python3.13/internal/pycore_cell.h +48 -0
  113. package/python/include/python3.13/internal/pycore_ceval.h +305 -0
  114. package/python/include/python3.13/internal/pycore_ceval_state.h +137 -0
  115. package/python/include/python3.13/internal/pycore_code.h +603 -0
  116. package/python/include/python3.13/internal/pycore_codecs.h +86 -0
  117. package/python/include/python3.13/internal/pycore_compile.h +118 -0
  118. package/python/include/python3.13/internal/pycore_complexobject.h +25 -0
  119. package/python/include/python3.13/internal/pycore_condvar.h +93 -0
  120. package/python/include/python3.13/internal/pycore_context.h +61 -0
  121. package/python/include/python3.13/internal/pycore_critical_section.h +233 -0
  122. package/python/include/python3.13/internal/pycore_crossinterp.h +340 -0
  123. package/python/include/python3.13/internal/pycore_descrobject.h +28 -0
  124. package/python/include/python3.13/internal/pycore_dict.h +340 -0
  125. package/python/include/python3.13/internal/pycore_dict_state.h +32 -0
  126. package/python/include/python3.13/internal/pycore_dtoa.h +75 -0
  127. package/python/include/python3.13/internal/pycore_emscripten_signal.h +30 -0
  128. package/python/include/python3.13/internal/pycore_emscripten_trampoline.h +81 -0
  129. package/python/include/python3.13/internal/pycore_exceptions.h +40 -0
  130. package/python/include/python3.13/internal/pycore_faulthandler.h +99 -0
  131. package/python/include/python3.13/internal/pycore_fileutils.h +335 -0
  132. package/python/include/python3.13/internal/pycore_fileutils_windows.h +98 -0
  133. package/python/include/python3.13/internal/pycore_floatobject.h +62 -0
  134. package/python/include/python3.13/internal/pycore_flowgraph.h +40 -0
  135. package/python/include/python3.13/internal/pycore_format.h +27 -0
  136. package/python/include/python3.13/internal/pycore_frame.h +370 -0
  137. package/python/include/python3.13/internal/pycore_freelist.h +153 -0
  138. package/python/include/python3.13/internal/pycore_function.h +55 -0
  139. package/python/include/python3.13/internal/pycore_gc.h +365 -0
  140. package/python/include/python3.13/internal/pycore_genobject.h +32 -0
  141. package/python/include/python3.13/internal/pycore_getopt.h +22 -0
  142. package/python/include/python3.13/internal/pycore_gil.h +66 -0
  143. package/python/include/python3.13/internal/pycore_global_objects.h +105 -0
  144. package/python/include/python3.13/internal/pycore_global_objects_fini_generated.h +1554 -0
  145. package/python/include/python3.13/internal/pycore_global_strings.h +814 -0
  146. package/python/include/python3.13/internal/pycore_hamt.h +134 -0
  147. package/python/include/python3.13/internal/pycore_hashtable.h +150 -0
  148. package/python/include/python3.13/internal/pycore_identifier.h +20 -0
  149. package/python/include/python3.13/internal/pycore_import.h +213 -0
  150. package/python/include/python3.13/internal/pycore_importdl.h +139 -0
  151. package/python/include/python3.13/internal/pycore_initconfig.h +200 -0
  152. package/python/include/python3.13/internal/pycore_instruction_sequence.h +73 -0
  153. package/python/include/python3.13/internal/pycore_instruments.h +75 -0
  154. package/python/include/python3.13/internal/pycore_interp.h +423 -0
  155. package/python/include/python3.13/internal/pycore_intrinsics.h +51 -0
  156. package/python/include/python3.13/internal/pycore_jit.h +25 -0
  157. package/python/include/python3.13/internal/pycore_list.h +66 -0
  158. package/python/include/python3.13/internal/pycore_llist.h +106 -0
  159. package/python/include/python3.13/internal/pycore_lock.h +241 -0
  160. package/python/include/python3.13/internal/pycore_long.h +310 -0
  161. package/python/include/python3.13/internal/pycore_memoryobject.h +20 -0
  162. package/python/include/python3.13/internal/pycore_mimalloc.h +69 -0
  163. package/python/include/python3.13/internal/pycore_modsupport.h +107 -0
  164. package/python/include/python3.13/internal/pycore_moduleobject.h +56 -0
  165. package/python/include/python3.13/internal/pycore_namespace.h +21 -0
  166. package/python/include/python3.13/internal/pycore_object.h +867 -0
  167. package/python/include/python3.13/internal/pycore_object_alloc.h +71 -0
  168. package/python/include/python3.13/internal/pycore_object_stack.h +97 -0
  169. package/python/include/python3.13/internal/pycore_object_state.h +41 -0
  170. package/python/include/python3.13/internal/pycore_obmalloc.h +702 -0
  171. package/python/include/python3.13/internal/pycore_obmalloc_init.h +66 -0
  172. package/python/include/python3.13/internal/pycore_opcode_metadata.h +1922 -0
  173. package/python/include/python3.13/internal/pycore_opcode_utils.h +73 -0
  174. package/python/include/python3.13/internal/pycore_optimizer.h +272 -0
  175. package/python/include/python3.13/internal/pycore_parking_lot.h +97 -0
  176. package/python/include/python3.13/internal/pycore_parser.h +95 -0
  177. package/python/include/python3.13/internal/pycore_pathconfig.h +26 -0
  178. package/python/include/python3.13/internal/pycore_pyarena.h +68 -0
  179. package/python/include/python3.13/internal/pycore_pyatomic_ft_wrappers.h +165 -0
  180. package/python/include/python3.13/internal/pycore_pybuffer.h +21 -0
  181. package/python/include/python3.13/internal/pycore_pyerrors.h +190 -0
  182. package/python/include/python3.13/internal/pycore_pyhash.h +107 -0
  183. package/python/include/python3.13/internal/pycore_pylifecycle.h +136 -0
  184. package/python/include/python3.13/internal/pycore_pymath.h +205 -0
  185. package/python/include/python3.13/internal/pycore_pymem.h +161 -0
  186. package/python/include/python3.13/internal/pycore_pymem_init.h +103 -0
  187. package/python/include/python3.13/internal/pycore_pystate.h +299 -0
  188. package/python/include/python3.13/internal/pycore_pystats.h +21 -0
  189. package/python/include/python3.13/internal/pycore_pythonrun.h +39 -0
  190. package/python/include/python3.13/internal/pycore_pythread.h +172 -0
  191. package/python/include/python3.13/internal/pycore_qsbr.h +173 -0
  192. package/python/include/python3.13/internal/pycore_range.h +21 -0
  193. package/python/include/python3.13/internal/pycore_runtime.h +410 -0
  194. package/python/include/python3.13/internal/pycore_runtime_init.h +329 -0
  195. package/python/include/python3.13/internal/pycore_runtime_init_generated.h +1551 -0
  196. package/python/include/python3.13/internal/pycore_semaphore.h +67 -0
  197. package/python/include/python3.13/internal/pycore_setobject.h +39 -0
  198. package/python/include/python3.13/internal/pycore_signal.h +108 -0
  199. package/python/include/python3.13/internal/pycore_sliceobject.h +20 -0
  200. package/python/include/python3.13/internal/pycore_stackref.h +195 -0
  201. package/python/include/python3.13/internal/pycore_strhex.h +39 -0
  202. package/python/include/python3.13/internal/pycore_structseq.h +40 -0
  203. package/python/include/python3.13/internal/pycore_symtable.h +204 -0
  204. package/python/include/python3.13/internal/pycore_sysmodule.h +38 -0
  205. package/python/include/python3.13/internal/pycore_time.h +337 -0
  206. package/python/include/python3.13/internal/pycore_token.h +106 -0
  207. package/python/include/python3.13/internal/pycore_traceback.h +106 -0
  208. package/python/include/python3.13/internal/pycore_tracemalloc.h +170 -0
  209. package/python/include/python3.13/internal/pycore_tstate.h +46 -0
  210. package/python/include/python3.13/internal/pycore_tuple.h +35 -0
  211. package/python/include/python3.13/internal/pycore_typeobject.h +245 -0
  212. package/python/include/python3.13/internal/pycore_typevarobject.h +27 -0
  213. package/python/include/python3.13/internal/pycore_ucnhash.h +36 -0
  214. package/python/include/python3.13/internal/pycore_unicodeobject.h +351 -0
  215. package/python/include/python3.13/internal/pycore_unicodeobject_generated.h +2980 -0
  216. package/python/include/python3.13/internal/pycore_unionobject.h +25 -0
  217. package/python/include/python3.13/internal/pycore_uop_ids.h +295 -0
  218. package/python/include/python3.13/internal/pycore_uop_metadata.h +1010 -0
  219. package/python/include/python3.13/internal/pycore_warnings.h +31 -0
  220. package/python/include/python3.13/internal/pycore_weakref.h +133 -0
  221. package/python/include/python3.13/intrcheck.h +23 -0
  222. package/python/include/python3.13/iterobject.h +24 -0
  223. package/python/include/python3.13/listobject.h +55 -0
  224. package/python/include/python3.13/lock.h +16 -0
  225. package/python/include/python3.13/longobject.h +114 -0
  226. package/python/include/python3.13/marshal.h +31 -0
  227. package/python/include/python3.13/memoryobject.h +34 -0
  228. package/python/include/python3.13/methodobject.h +137 -0
  229. package/python/include/python3.13/modsupport.h +146 -0
  230. package/python/include/python3.13/moduleobject.h +122 -0
  231. package/python/include/python3.13/monitoring.h +18 -0
  232. package/python/include/python3.13/object.h +1280 -0
  233. package/python/include/python3.13/objimpl.h +211 -0
  234. package/python/include/python3.13/opcode.h +42 -0
  235. package/python/include/python3.13/opcode_ids.h +244 -0
  236. package/python/include/python3.13/osdefs.h +57 -0
  237. package/python/include/python3.13/osmodule.h +17 -0
  238. package/python/include/python3.13/patchlevel.h +35 -0
  239. package/python/include/python3.13/py_curses.h +117 -0
  240. package/python/include/python3.13/pyatomic.h +16 -0
  241. package/python/include/python3.13/pybuffer.h +145 -0
  242. package/python/include/python3.13/pycapsule.h +58 -0
  243. package/python/include/python3.13/pyconfig.h +2033 -0
  244. package/python/include/python3.13/pydtrace.h +59 -0
  245. package/python/include/python3.13/pyerrors.h +335 -0
  246. package/python/include/python3.13/pyexpat.h +62 -0
  247. package/python/include/python3.13/pyframe.h +26 -0
  248. package/python/include/python3.13/pyhash.h +59 -0
  249. package/python/include/python3.13/pylifecycle.h +80 -0
  250. package/python/include/python3.13/pymacconfig.h +91 -0
  251. package/python/include/python3.13/pymacro.h +199 -0
  252. package/python/include/python3.13/pymath.h +62 -0
  253. package/python/include/python3.13/pymem.h +110 -0
  254. package/python/include/python3.13/pyport.h +633 -0
  255. package/python/include/python3.13/pystate.h +132 -0
  256. package/python/include/python3.13/pystats.h +26 -0
  257. package/python/include/python3.13/pystrcmp.h +23 -0
  258. package/python/include/python3.13/pystrtod.h +37 -0
  259. package/python/include/python3.13/pythonrun.h +49 -0
  260. package/python/include/python3.13/pythread.h +131 -0
  261. package/python/include/python3.13/pytypedefs.h +30 -0
  262. package/python/include/python3.13/rangeobject.h +27 -0
  263. package/python/include/python3.13/setobject.h +49 -0
  264. package/python/include/python3.13/sliceobject.h +69 -0
  265. package/python/include/python3.13/structmember.h +56 -0
  266. package/python/include/python3.13/structseq.h +46 -0
  267. package/python/include/python3.13/sysmodule.h +44 -0
  268. package/python/include/python3.13/traceback.h +26 -0
  269. package/python/include/python3.13/tupleobject.h +46 -0
  270. package/python/include/python3.13/typeslots.h +88 -0
  271. package/python/include/python3.13/unicodeobject.h +1021 -0
  272. package/python/include/python3.13/warnings.h +45 -0
  273. package/python/include/python3.13/weakrefobject.h +46 -0
  274. package/python/lib/itcl4.3.5/itcl.tcl +151 -0
  275. package/python/lib/itcl4.3.5/itclConfig.sh +67 -0
  276. package/python/lib/itcl4.3.5/itclHullCmds.tcl +562 -0
  277. package/python/lib/itcl4.3.5/itclWidget.tcl +447 -0
  278. package/python/lib/itcl4.3.5/libitcl4.3.5.dylib +0 -0
  279. package/python/lib/itcl4.3.5/libitclstub.a +0 -0
  280. package/python/lib/itcl4.3.5/libitclstub4.3.5.a +0 -0
  281. package/python/lib/itcl4.3.5/libtcl9itcl4.3.5.dylib +0 -0
  282. package/python/lib/itcl4.3.5/pkgIndex.tcl +14 -0
  283. package/python/lib/libpython3.13.dylib +0 -0
  284. package/python/lib/libtcl9.0.dylib +0 -0
  285. package/python/lib/libtcl9tk9.0.dylib +0 -0
  286. package/python/lib/pkgconfig/python-3.13-embed.pc +13 -0
  287. package/python/lib/pkgconfig/python-3.13.pc +13 -0
  288. package/python/lib/python3.13/LICENSE.txt +277 -0
  289. package/python/lib/python3.13/__future__.py +147 -0
  290. package/python/lib/python3.13/__hello__.py +16 -0
  291. package/python/lib/python3.13/__phello__/__init__.py +7 -0
  292. package/python/lib/python3.13/__phello__/spam.py +7 -0
  293. package/python/lib/python3.13/_aix_support.py +108 -0
  294. package/python/lib/python3.13/_android_support.py +192 -0
  295. package/python/lib/python3.13/_apple_support.py +66 -0
  296. package/python/lib/python3.13/_collections_abc.py +1182 -0
  297. package/python/lib/python3.13/_colorize.py +119 -0
  298. package/python/lib/python3.13/_compat_pickle.py +251 -0
  299. package/python/lib/python3.13/_compression.py +162 -0
  300. package/python/lib/python3.13/_ios_support.py +71 -0
  301. package/python/lib/python3.13/_markupbase.py +396 -0
  302. package/python/lib/python3.13/_opcode_metadata.py +343 -0
  303. package/python/lib/python3.13/_osx_support.py +579 -0
  304. package/python/lib/python3.13/_py_abc.py +147 -0
  305. package/python/lib/python3.13/_pydatetime.py +2639 -0
  306. package/python/lib/python3.13/_pydecimal.py +6351 -0
  307. package/python/lib/python3.13/_pyio.py +2704 -0
  308. package/python/lib/python3.13/_pylong.py +363 -0
  309. package/python/lib/python3.13/_pyrepl/__init__.py +19 -0
  310. package/python/lib/python3.13/_pyrepl/__main__.py +10 -0
  311. package/python/lib/python3.13/_pyrepl/_minimal_curses.py +68 -0
  312. package/python/lib/python3.13/_pyrepl/_threading_handler.py +74 -0
  313. package/python/lib/python3.13/_pyrepl/base_eventqueue.py +110 -0
  314. package/python/lib/python3.13/_pyrepl/commands.py +492 -0
  315. package/python/lib/python3.13/_pyrepl/completing_reader.py +295 -0
  316. package/python/lib/python3.13/_pyrepl/console.py +229 -0
  317. package/python/lib/python3.13/_pyrepl/curses.py +33 -0
  318. package/python/lib/python3.13/_pyrepl/fancy_termios.py +82 -0
  319. package/python/lib/python3.13/_pyrepl/historical_reader.py +419 -0
  320. package/python/lib/python3.13/_pyrepl/input.py +114 -0
  321. package/python/lib/python3.13/_pyrepl/keymap.py +213 -0
  322. package/python/lib/python3.13/_pyrepl/main.py +59 -0
  323. package/python/lib/python3.13/_pyrepl/mypy.ini +29 -0
  324. package/python/lib/python3.13/_pyrepl/pager.py +175 -0
  325. package/python/lib/python3.13/_pyrepl/reader.py +764 -0
  326. package/python/lib/python3.13/_pyrepl/readline.py +599 -0
  327. package/python/lib/python3.13/_pyrepl/simple_interact.py +180 -0
  328. package/python/lib/python3.13/_pyrepl/trace.py +21 -0
  329. package/python/lib/python3.13/_pyrepl/types.py +10 -0
  330. package/python/lib/python3.13/_pyrepl/unix_console.py +852 -0
  331. package/python/lib/python3.13/_pyrepl/unix_eventqueue.py +76 -0
  332. package/python/lib/python3.13/_pyrepl/utils.py +83 -0
  333. package/python/lib/python3.13/_pyrepl/windows_console.py +692 -0
  334. package/python/lib/python3.13/_pyrepl/windows_eventqueue.py +42 -0
  335. package/python/lib/python3.13/_sitebuiltins.py +91 -0
  336. package/python/lib/python3.13/_strptime.py +800 -0
  337. package/python/lib/python3.13/_sysconfigdata__darwin_darwin.py +1028 -0
  338. package/python/lib/python3.13/_threading_local.py +120 -0
  339. package/python/lib/python3.13/_weakrefset.py +205 -0
  340. package/python/lib/python3.13/abc.py +188 -0
  341. package/python/lib/python3.13/antigravity.py +17 -0
  342. package/python/lib/python3.13/argparse.py +2690 -0
  343. package/python/lib/python3.13/ast.py +1865 -0
  344. package/python/lib/python3.13/asyncio/__init__.py +47 -0
  345. package/python/lib/python3.13/asyncio/__main__.py +207 -0
  346. package/python/lib/python3.13/asyncio/base_events.py +2075 -0
  347. package/python/lib/python3.13/asyncio/base_futures.py +67 -0
  348. package/python/lib/python3.13/asyncio/base_subprocess.py +319 -0
  349. package/python/lib/python3.13/asyncio/base_tasks.py +94 -0
  350. package/python/lib/python3.13/asyncio/constants.py +41 -0
  351. package/python/lib/python3.13/asyncio/coroutines.py +109 -0
  352. package/python/lib/python3.13/asyncio/events.py +882 -0
  353. package/python/lib/python3.13/asyncio/exceptions.py +62 -0
  354. package/python/lib/python3.13/asyncio/format_helpers.py +84 -0
  355. package/python/lib/python3.13/asyncio/futures.py +425 -0
  356. package/python/lib/python3.13/asyncio/locks.py +617 -0
  357. package/python/lib/python3.13/asyncio/log.py +7 -0
  358. package/python/lib/python3.13/asyncio/mixins.py +21 -0
  359. package/python/lib/python3.13/asyncio/proactor_events.py +896 -0
  360. package/python/lib/python3.13/asyncio/protocols.py +216 -0
  361. package/python/lib/python3.13/asyncio/queues.py +307 -0
  362. package/python/lib/python3.13/asyncio/runners.py +216 -0
  363. package/python/lib/python3.13/asyncio/selector_events.py +1326 -0
  364. package/python/lib/python3.13/asyncio/sslproto.py +929 -0
  365. package/python/lib/python3.13/asyncio/staggered.py +174 -0
  366. package/python/lib/python3.13/asyncio/streams.py +787 -0
  367. package/python/lib/python3.13/asyncio/subprocess.py +229 -0
  368. package/python/lib/python3.13/asyncio/taskgroups.py +278 -0
  369. package/python/lib/python3.13/asyncio/tasks.py +1118 -0
  370. package/python/lib/python3.13/asyncio/threads.py +25 -0
  371. package/python/lib/python3.13/asyncio/timeouts.py +184 -0
  372. package/python/lib/python3.13/asyncio/transports.py +337 -0
  373. package/python/lib/python3.13/asyncio/trsock.py +98 -0
  374. package/python/lib/python3.13/asyncio/unix_events.py +1536 -0
  375. package/python/lib/python3.13/asyncio/windows_events.py +903 -0
  376. package/python/lib/python3.13/asyncio/windows_utils.py +173 -0
  377. package/python/lib/python3.13/base64.py +621 -0
  378. package/python/lib/python3.13/bdb.py +973 -0
  379. package/python/lib/python3.13/bisect.py +118 -0
  380. package/python/lib/python3.13/bz2.py +352 -0
  381. package/python/lib/python3.13/cProfile.py +197 -0
  382. package/python/lib/python3.13/calendar.py +813 -0
  383. package/python/lib/python3.13/cmd.py +409 -0
  384. package/python/lib/python3.13/code.py +386 -0
  385. package/python/lib/python3.13/codecs.py +1132 -0
  386. package/python/lib/python3.13/codeop.py +155 -0
  387. package/python/lib/python3.13/collections/__init__.py +1600 -0
  388. package/python/lib/python3.13/colorsys.py +166 -0
  389. package/python/lib/python3.13/compileall.py +470 -0
  390. package/python/lib/python3.13/concurrent/__init__.py +1 -0
  391. package/python/lib/python3.13/concurrent/futures/__init__.py +54 -0
  392. package/python/lib/python3.13/concurrent/futures/_base.py +654 -0
  393. package/python/lib/python3.13/concurrent/futures/process.py +862 -0
  394. package/python/lib/python3.13/concurrent/futures/thread.py +240 -0
  395. package/python/lib/python3.13/config-3.13-darwin/Makefile +3505 -0
  396. package/python/lib/python3.13/config-3.13-darwin/Setup +298 -0
  397. package/python/lib/python3.13/config-3.13-darwin/Setup.bootstrap +38 -0
  398. package/python/lib/python3.13/config-3.13-darwin/Setup.local +89 -0
  399. package/python/lib/python3.13/config-3.13-darwin/Setup.stdlib +181 -0
  400. package/python/lib/python3.13/config-3.13-darwin/config.c +260 -0
  401. package/python/lib/python3.13/config-3.13-darwin/config.c.in +71 -0
  402. package/python/lib/python3.13/config-3.13-darwin/install-sh +541 -0
  403. package/python/lib/python3.13/config-3.13-darwin/makesetup +341 -0
  404. package/python/lib/python3.13/config-3.13-darwin/python-config.py +76 -0
  405. package/python/lib/python3.13/config-3.13-darwin/python.o +0 -0
  406. package/python/lib/python3.13/configparser.py +1387 -0
  407. package/python/lib/python3.13/contextlib.py +814 -0
  408. package/python/lib/python3.13/contextvars.py +4 -0
  409. package/python/lib/python3.13/copy.py +306 -0
  410. package/python/lib/python3.13/copyreg.py +217 -0
  411. package/python/lib/python3.13/csv.py +513 -0
  412. package/python/lib/python3.13/ctypes/__init__.py +603 -0
  413. package/python/lib/python3.13/ctypes/_aix.py +327 -0
  414. package/python/lib/python3.13/ctypes/_endian.py +78 -0
  415. package/python/lib/python3.13/ctypes/macholib/README.ctypes +7 -0
  416. package/python/lib/python3.13/ctypes/macholib/__init__.py +9 -0
  417. package/python/lib/python3.13/ctypes/macholib/dyld.py +165 -0
  418. package/python/lib/python3.13/ctypes/macholib/dylib.py +42 -0
  419. package/python/lib/python3.13/ctypes/macholib/fetch_macholib +2 -0
  420. package/python/lib/python3.13/ctypes/macholib/fetch_macholib.bat +1 -0
  421. package/python/lib/python3.13/ctypes/macholib/framework.py +42 -0
  422. package/python/lib/python3.13/ctypes/util.py +388 -0
  423. package/python/lib/python3.13/ctypes/wintypes.py +202 -0
  424. package/python/lib/python3.13/curses/__init__.py +101 -0
  425. package/python/lib/python3.13/curses/ascii.py +99 -0
  426. package/python/lib/python3.13/curses/has_key.py +192 -0
  427. package/python/lib/python3.13/curses/panel.py +6 -0
  428. package/python/lib/python3.13/curses/textpad.py +204 -0
  429. package/python/lib/python3.13/dataclasses.py +1630 -0
  430. package/python/lib/python3.13/datetime.py +9 -0
  431. package/python/lib/python3.13/dbm/__init__.py +194 -0
  432. package/python/lib/python3.13/dbm/dumb.py +319 -0
  433. package/python/lib/python3.13/dbm/gnu.py +3 -0
  434. package/python/lib/python3.13/dbm/ndbm.py +3 -0
  435. package/python/lib/python3.13/dbm/sqlite3.py +144 -0
  436. package/python/lib/python3.13/decimal.py +109 -0
  437. package/python/lib/python3.13/difflib.py +2056 -0
  438. package/python/lib/python3.13/dis.py +1075 -0
  439. package/python/lib/python3.13/doctest.py +2919 -0
  440. package/python/lib/python3.13/email/__init__.py +61 -0
  441. package/python/lib/python3.13/email/_encoded_words.py +233 -0
  442. package/python/lib/python3.13/email/_header_value_parser.py +3145 -0
  443. package/python/lib/python3.13/email/_parseaddr.py +563 -0
  444. package/python/lib/python3.13/email/_policybase.py +382 -0
  445. package/python/lib/python3.13/email/architecture.rst +216 -0
  446. package/python/lib/python3.13/email/base64mime.py +115 -0
  447. package/python/lib/python3.13/email/charset.py +398 -0
  448. package/python/lib/python3.13/email/contentmanager.py +253 -0
  449. package/python/lib/python3.13/email/encoders.py +65 -0
  450. package/python/lib/python3.13/email/errors.py +117 -0
  451. package/python/lib/python3.13/email/feedparser.py +536 -0
  452. package/python/lib/python3.13/email/generator.py +530 -0
  453. package/python/lib/python3.13/email/header.py +582 -0
  454. package/python/lib/python3.13/email/headerregistry.py +618 -0
  455. package/python/lib/python3.13/email/iterators.py +68 -0
  456. package/python/lib/python3.13/email/message.py +1217 -0
  457. package/python/lib/python3.13/email/mime/__init__.py +0 -0
  458. package/python/lib/python3.13/email/mime/application.py +37 -0
  459. package/python/lib/python3.13/email/mime/audio.py +97 -0
  460. package/python/lib/python3.13/email/mime/base.py +29 -0
  461. package/python/lib/python3.13/email/mime/image.py +152 -0
  462. package/python/lib/python3.13/email/mime/message.py +33 -0
  463. package/python/lib/python3.13/email/mime/multipart.py +47 -0
  464. package/python/lib/python3.13/email/mime/nonmultipart.py +21 -0
  465. package/python/lib/python3.13/email/mime/text.py +40 -0
  466. package/python/lib/python3.13/email/parser.py +127 -0
  467. package/python/lib/python3.13/email/policy.py +232 -0
  468. package/python/lib/python3.13/email/quoprimime.py +300 -0
  469. package/python/lib/python3.13/email/utils.py +494 -0
  470. package/python/lib/python3.13/encodings/__init__.py +174 -0
  471. package/python/lib/python3.13/encodings/aliases.py +552 -0
  472. package/python/lib/python3.13/encodings/ascii.py +50 -0
  473. package/python/lib/python3.13/encodings/base64_codec.py +55 -0
  474. package/python/lib/python3.13/encodings/big5.py +39 -0
  475. package/python/lib/python3.13/encodings/big5hkscs.py +39 -0
  476. package/python/lib/python3.13/encodings/bz2_codec.py +78 -0
  477. package/python/lib/python3.13/encodings/charmap.py +69 -0
  478. package/python/lib/python3.13/encodings/cp037.py +307 -0
  479. package/python/lib/python3.13/encodings/cp1006.py +307 -0
  480. package/python/lib/python3.13/encodings/cp1026.py +307 -0
  481. package/python/lib/python3.13/encodings/cp1125.py +698 -0
  482. package/python/lib/python3.13/encodings/cp1140.py +307 -0
  483. package/python/lib/python3.13/encodings/cp1250.py +307 -0
  484. package/python/lib/python3.13/encodings/cp1251.py +307 -0
  485. package/python/lib/python3.13/encodings/cp1252.py +307 -0
  486. package/python/lib/python3.13/encodings/cp1253.py +307 -0
  487. package/python/lib/python3.13/encodings/cp1254.py +307 -0
  488. package/python/lib/python3.13/encodings/cp1255.py +307 -0
  489. package/python/lib/python3.13/encodings/cp1256.py +307 -0
  490. package/python/lib/python3.13/encodings/cp1257.py +307 -0
  491. package/python/lib/python3.13/encodings/cp1258.py +307 -0
  492. package/python/lib/python3.13/encodings/cp273.py +307 -0
  493. package/python/lib/python3.13/encodings/cp424.py +307 -0
  494. package/python/lib/python3.13/encodings/cp437.py +698 -0
  495. package/python/lib/python3.13/encodings/cp500.py +307 -0
  496. package/python/lib/python3.13/encodings/cp720.py +309 -0
  497. package/python/lib/python3.13/encodings/cp737.py +698 -0
  498. package/python/lib/python3.13/encodings/cp775.py +697 -0
  499. package/python/lib/python3.13/encodings/cp850.py +698 -0
  500. package/python/lib/python3.13/encodings/cp852.py +698 -0
  501. package/python/lib/python3.13/encodings/cp855.py +698 -0
  502. package/python/lib/python3.13/encodings/cp856.py +307 -0
  503. package/python/lib/python3.13/encodings/cp857.py +694 -0
  504. package/python/lib/python3.13/encodings/cp858.py +698 -0
  505. package/python/lib/python3.13/encodings/cp860.py +698 -0
  506. package/python/lib/python3.13/encodings/cp861.py +698 -0
  507. package/python/lib/python3.13/encodings/cp862.py +698 -0
  508. package/python/lib/python3.13/encodings/cp863.py +698 -0
  509. package/python/lib/python3.13/encodings/cp864.py +690 -0
  510. package/python/lib/python3.13/encodings/cp865.py +698 -0
  511. package/python/lib/python3.13/encodings/cp866.py +698 -0
  512. package/python/lib/python3.13/encodings/cp869.py +689 -0
  513. package/python/lib/python3.13/encodings/cp874.py +307 -0
  514. package/python/lib/python3.13/encodings/cp875.py +307 -0
  515. package/python/lib/python3.13/encodings/cp932.py +39 -0
  516. package/python/lib/python3.13/encodings/cp949.py +39 -0
  517. package/python/lib/python3.13/encodings/cp950.py +39 -0
  518. package/python/lib/python3.13/encodings/euc_jis_2004.py +39 -0
  519. package/python/lib/python3.13/encodings/euc_jisx0213.py +39 -0
  520. package/python/lib/python3.13/encodings/euc_jp.py +39 -0
  521. package/python/lib/python3.13/encodings/euc_kr.py +39 -0
  522. package/python/lib/python3.13/encodings/gb18030.py +39 -0
  523. package/python/lib/python3.13/encodings/gb2312.py +39 -0
  524. package/python/lib/python3.13/encodings/gbk.py +39 -0
  525. package/python/lib/python3.13/encodings/hex_codec.py +55 -0
  526. package/python/lib/python3.13/encodings/hp_roman8.py +314 -0
  527. package/python/lib/python3.13/encodings/hz.py +39 -0
  528. package/python/lib/python3.13/encodings/idna.py +387 -0
  529. package/python/lib/python3.13/encodings/iso2022_jp.py +39 -0
  530. package/python/lib/python3.13/encodings/iso2022_jp_1.py +39 -0
  531. package/python/lib/python3.13/encodings/iso2022_jp_2.py +39 -0
  532. package/python/lib/python3.13/encodings/iso2022_jp_2004.py +39 -0
  533. package/python/lib/python3.13/encodings/iso2022_jp_3.py +39 -0
  534. package/python/lib/python3.13/encodings/iso2022_jp_ext.py +39 -0
  535. package/python/lib/python3.13/encodings/iso2022_kr.py +39 -0
  536. package/python/lib/python3.13/encodings/iso8859_1.py +307 -0
  537. package/python/lib/python3.13/encodings/iso8859_10.py +307 -0
  538. package/python/lib/python3.13/encodings/iso8859_11.py +307 -0
  539. package/python/lib/python3.13/encodings/iso8859_13.py +307 -0
  540. package/python/lib/python3.13/encodings/iso8859_14.py +307 -0
  541. package/python/lib/python3.13/encodings/iso8859_15.py +307 -0
  542. package/python/lib/python3.13/encodings/iso8859_16.py +307 -0
  543. package/python/lib/python3.13/encodings/iso8859_2.py +307 -0
  544. package/python/lib/python3.13/encodings/iso8859_3.py +307 -0
  545. package/python/lib/python3.13/encodings/iso8859_4.py +307 -0
  546. package/python/lib/python3.13/encodings/iso8859_5.py +307 -0
  547. package/python/lib/python3.13/encodings/iso8859_6.py +307 -0
  548. package/python/lib/python3.13/encodings/iso8859_7.py +307 -0
  549. package/python/lib/python3.13/encodings/iso8859_8.py +307 -0
  550. package/python/lib/python3.13/encodings/iso8859_9.py +307 -0
  551. package/python/lib/python3.13/encodings/johab.py +39 -0
  552. package/python/lib/python3.13/encodings/koi8_r.py +307 -0
  553. package/python/lib/python3.13/encodings/koi8_t.py +308 -0
  554. package/python/lib/python3.13/encodings/koi8_u.py +307 -0
  555. package/python/lib/python3.13/encodings/kz1048.py +307 -0
  556. package/python/lib/python3.13/encodings/latin_1.py +50 -0
  557. package/python/lib/python3.13/encodings/mac_arabic.py +698 -0
  558. package/python/lib/python3.13/encodings/mac_croatian.py +307 -0
  559. package/python/lib/python3.13/encodings/mac_cyrillic.py +307 -0
  560. package/python/lib/python3.13/encodings/mac_farsi.py +307 -0
  561. package/python/lib/python3.13/encodings/mac_greek.py +307 -0
  562. package/python/lib/python3.13/encodings/mac_iceland.py +307 -0
  563. package/python/lib/python3.13/encodings/mac_latin2.py +312 -0
  564. package/python/lib/python3.13/encodings/mac_roman.py +307 -0
  565. package/python/lib/python3.13/encodings/mac_romanian.py +307 -0
  566. package/python/lib/python3.13/encodings/mac_turkish.py +307 -0
  567. package/python/lib/python3.13/encodings/mbcs.py +47 -0
  568. package/python/lib/python3.13/encodings/oem.py +41 -0
  569. package/python/lib/python3.13/encodings/palmos.py +308 -0
  570. package/python/lib/python3.13/encodings/ptcp154.py +312 -0
  571. package/python/lib/python3.13/encodings/punycode.py +253 -0
  572. package/python/lib/python3.13/encodings/quopri_codec.py +56 -0
  573. package/python/lib/python3.13/encodings/raw_unicode_escape.py +46 -0
  574. package/python/lib/python3.13/encodings/rot_13.py +113 -0
  575. package/python/lib/python3.13/encodings/shift_jis.py +39 -0
  576. package/python/lib/python3.13/encodings/shift_jis_2004.py +39 -0
  577. package/python/lib/python3.13/encodings/shift_jisx0213.py +39 -0
  578. package/python/lib/python3.13/encodings/tis_620.py +307 -0
  579. package/python/lib/python3.13/encodings/undefined.py +49 -0
  580. package/python/lib/python3.13/encodings/unicode_escape.py +46 -0
  581. package/python/lib/python3.13/encodings/utf_16.py +155 -0
  582. package/python/lib/python3.13/encodings/utf_16_be.py +42 -0
  583. package/python/lib/python3.13/encodings/utf_16_le.py +42 -0
  584. package/python/lib/python3.13/encodings/utf_32.py +150 -0
  585. package/python/lib/python3.13/encodings/utf_32_be.py +37 -0
  586. package/python/lib/python3.13/encodings/utf_32_le.py +37 -0
  587. package/python/lib/python3.13/encodings/utf_7.py +38 -0
  588. package/python/lib/python3.13/encodings/utf_8.py +42 -0
  589. package/python/lib/python3.13/encodings/utf_8_sig.py +130 -0
  590. package/python/lib/python3.13/encodings/uu_codec.py +103 -0
  591. package/python/lib/python3.13/encodings/zlib_codec.py +77 -0
  592. package/python/lib/python3.13/ensurepip/__init__.py +264 -0
  593. package/python/lib/python3.13/ensurepip/__main__.py +5 -0
  594. package/python/lib/python3.13/ensurepip/_bundled/pip-25.3-py3-none-any.whl +0 -0
  595. package/python/lib/python3.13/ensurepip/_uninstall.py +31 -0
  596. package/python/lib/python3.13/enum.py +2182 -0
  597. package/python/lib/python3.13/filecmp.py +320 -0
  598. package/python/lib/python3.13/fileinput.py +442 -0
  599. package/python/lib/python3.13/fnmatch.py +192 -0
  600. package/python/lib/python3.13/fractions.py +1043 -0
  601. package/python/lib/python3.13/ftplib.py +966 -0
  602. package/python/lib/python3.13/functools.py +1036 -0
  603. package/python/lib/python3.13/genericpath.py +200 -0
  604. package/python/lib/python3.13/getopt.py +215 -0
  605. package/python/lib/python3.13/getpass.py +192 -0
  606. package/python/lib/python3.13/gettext.py +657 -0
  607. package/python/lib/python3.13/glob.py +551 -0
  608. package/python/lib/python3.13/graphlib.py +250 -0
  609. package/python/lib/python3.13/gzip.py +691 -0
  610. package/python/lib/python3.13/hashlib.py +255 -0
  611. package/python/lib/python3.13/heapq.py +603 -0
  612. package/python/lib/python3.13/hmac.py +220 -0
  613. package/python/lib/python3.13/html/__init__.py +132 -0
  614. package/python/lib/python3.13/html/entities.py +2513 -0
  615. package/python/lib/python3.13/html/parser.py +553 -0
  616. package/python/lib/python3.13/http/__init__.py +202 -0
  617. package/python/lib/python3.13/http/client.py +1570 -0
  618. package/python/lib/python3.13/http/cookiejar.py +2122 -0
  619. package/python/lib/python3.13/http/cookies.py +615 -0
  620. package/python/lib/python3.13/http/server.py +1351 -0
  621. package/python/lib/python3.13/idlelib/CREDITS.txt +48 -0
  622. package/python/lib/python3.13/idlelib/ChangeLog +1591 -0
  623. package/python/lib/python3.13/idlelib/HISTORY.txt +296 -0
  624. package/python/lib/python3.13/idlelib/Icons/README.txt +51 -0
  625. package/python/lib/python3.13/idlelib/Icons/folder.gif +0 -0
  626. package/python/lib/python3.13/idlelib/Icons/idle.ico +0 -0
  627. package/python/lib/python3.13/idlelib/Icons/idle_16.gif +0 -0
  628. package/python/lib/python3.13/idlelib/Icons/idle_16.png +0 -0
  629. package/python/lib/python3.13/idlelib/Icons/idle_256.png +0 -0
  630. package/python/lib/python3.13/idlelib/Icons/idle_32.gif +0 -0
  631. package/python/lib/python3.13/idlelib/Icons/idle_32.png +0 -0
  632. package/python/lib/python3.13/idlelib/Icons/idle_48.gif +0 -0
  633. package/python/lib/python3.13/idlelib/Icons/idle_48.png +0 -0
  634. package/python/lib/python3.13/idlelib/Icons/minusnode.gif +0 -0
  635. package/python/lib/python3.13/idlelib/Icons/openfolder.gif +0 -0
  636. package/python/lib/python3.13/idlelib/Icons/plusnode.gif +0 -0
  637. package/python/lib/python3.13/idlelib/Icons/python.gif +0 -0
  638. package/python/lib/python3.13/idlelib/Icons/tk.gif +0 -0
  639. package/python/lib/python3.13/idlelib/NEWS2x.txt +660 -0
  640. package/python/lib/python3.13/idlelib/News3.txt +1407 -0
  641. package/python/lib/python3.13/idlelib/README.txt +290 -0
  642. package/python/lib/python3.13/idlelib/TODO.txt +210 -0
  643. package/python/lib/python3.13/idlelib/__init__.py +10 -0
  644. package/python/lib/python3.13/idlelib/__main__.py +7 -0
  645. package/python/lib/python3.13/idlelib/autocomplete.py +228 -0
  646. package/python/lib/python3.13/idlelib/autocomplete_w.py +498 -0
  647. package/python/lib/python3.13/idlelib/autoexpand.py +96 -0
  648. package/python/lib/python3.13/idlelib/browser.py +260 -0
  649. package/python/lib/python3.13/idlelib/calltip.py +205 -0
  650. package/python/lib/python3.13/idlelib/calltip_w.py +202 -0
  651. package/python/lib/python3.13/idlelib/codecontext.py +270 -0
  652. package/python/lib/python3.13/idlelib/colorizer.py +384 -0
  653. package/python/lib/python3.13/idlelib/config-extensions.def +62 -0
  654. package/python/lib/python3.13/idlelib/config-highlight.def +105 -0
  655. package/python/lib/python3.13/idlelib/config-keys.def +309 -0
  656. package/python/lib/python3.13/idlelib/config-main.def +92 -0
  657. package/python/lib/python3.13/idlelib/config.py +917 -0
  658. package/python/lib/python3.13/idlelib/config_key.py +354 -0
  659. package/python/lib/python3.13/idlelib/configdialog.py +2408 -0
  660. package/python/lib/python3.13/idlelib/debugger.py +602 -0
  661. package/python/lib/python3.13/idlelib/debugger_r.py +390 -0
  662. package/python/lib/python3.13/idlelib/debugobj.py +146 -0
  663. package/python/lib/python3.13/idlelib/debugobj_r.py +41 -0
  664. package/python/lib/python3.13/idlelib/delegator.py +34 -0
  665. package/python/lib/python3.13/idlelib/dynoption.py +57 -0
  666. package/python/lib/python3.13/idlelib/editor.py +1721 -0
  667. package/python/lib/python3.13/idlelib/extend.txt +83 -0
  668. package/python/lib/python3.13/idlelib/filelist.py +132 -0
  669. package/python/lib/python3.13/idlelib/format.py +426 -0
  670. package/python/lib/python3.13/idlelib/grep.py +223 -0
  671. package/python/lib/python3.13/idlelib/help.html +865 -0
  672. package/python/lib/python3.13/idlelib/help.py +343 -0
  673. package/python/lib/python3.13/idlelib/help_about.py +211 -0
  674. package/python/lib/python3.13/idlelib/history.py +106 -0
  675. package/python/lib/python3.13/idlelib/hyperparser.py +312 -0
  676. package/python/lib/python3.13/idlelib/idle.bat +4 -0
  677. package/python/lib/python3.13/idlelib/idle.py +14 -0
  678. package/python/lib/python3.13/idlelib/idle.pyw +17 -0
  679. package/python/lib/python3.13/idlelib/iomenu.py +441 -0
  680. package/python/lib/python3.13/idlelib/macosx.py +278 -0
  681. package/python/lib/python3.13/idlelib/mainmenu.py +126 -0
  682. package/python/lib/python3.13/idlelib/multicall.py +451 -0
  683. package/python/lib/python3.13/idlelib/outwin.py +188 -0
  684. package/python/lib/python3.13/idlelib/parenmatch.py +183 -0
  685. package/python/lib/python3.13/idlelib/pathbrowser.py +107 -0
  686. package/python/lib/python3.13/idlelib/percolator.py +120 -0
  687. package/python/lib/python3.13/idlelib/pyparse.py +589 -0
  688. package/python/lib/python3.13/idlelib/pyshell.py +1699 -0
  689. package/python/lib/python3.13/idlelib/query.py +390 -0
  690. package/python/lib/python3.13/idlelib/redirector.py +174 -0
  691. package/python/lib/python3.13/idlelib/replace.py +299 -0
  692. package/python/lib/python3.13/idlelib/rpc.py +635 -0
  693. package/python/lib/python3.13/idlelib/run.py +653 -0
  694. package/python/lib/python3.13/idlelib/runscript.py +213 -0
  695. package/python/lib/python3.13/idlelib/scrolledlist.py +151 -0
  696. package/python/lib/python3.13/idlelib/search.py +165 -0
  697. package/python/lib/python3.13/idlelib/searchbase.py +210 -0
  698. package/python/lib/python3.13/idlelib/searchengine.py +234 -0
  699. package/python/lib/python3.13/idlelib/sidebar.py +543 -0
  700. package/python/lib/python3.13/idlelib/squeezer.py +345 -0
  701. package/python/lib/python3.13/idlelib/stackviewer.py +134 -0
  702. package/python/lib/python3.13/idlelib/statusbar.py +52 -0
  703. package/python/lib/python3.13/idlelib/textview.py +193 -0
  704. package/python/lib/python3.13/idlelib/tooltip.py +190 -0
  705. package/python/lib/python3.13/idlelib/tree.py +509 -0
  706. package/python/lib/python3.13/idlelib/undo.py +367 -0
  707. package/python/lib/python3.13/idlelib/util.py +37 -0
  708. package/python/lib/python3.13/idlelib/window.py +98 -0
  709. package/python/lib/python3.13/idlelib/zoomheight.py +124 -0
  710. package/python/lib/python3.13/idlelib/zzdummy.py +73 -0
  711. package/python/lib/python3.13/imaplib.py +1651 -0
  712. package/python/lib/python3.13/importlib/__init__.py +136 -0
  713. package/python/lib/python3.13/importlib/_abc.py +39 -0
  714. package/python/lib/python3.13/importlib/_bootstrap.py +1551 -0
  715. package/python/lib/python3.13/importlib/_bootstrap_external.py +1826 -0
  716. package/python/lib/python3.13/importlib/abc.py +243 -0
  717. package/python/lib/python3.13/importlib/machinery.py +21 -0
  718. package/python/lib/python3.13/importlib/metadata/__init__.py +1093 -0
  719. package/python/lib/python3.13/importlib/metadata/_adapters.py +89 -0
  720. package/python/lib/python3.13/importlib/metadata/_collections.py +30 -0
  721. package/python/lib/python3.13/importlib/metadata/_functools.py +104 -0
  722. package/python/lib/python3.13/importlib/metadata/_itertools.py +73 -0
  723. package/python/lib/python3.13/importlib/metadata/_meta.py +67 -0
  724. package/python/lib/python3.13/importlib/metadata/_text.py +99 -0
  725. package/python/lib/python3.13/importlib/metadata/diagnose.py +21 -0
  726. package/python/lib/python3.13/importlib/readers.py +12 -0
  727. package/python/lib/python3.13/importlib/resources/__init__.py +43 -0
  728. package/python/lib/python3.13/importlib/resources/_adapters.py +168 -0
  729. package/python/lib/python3.13/importlib/resources/_common.py +211 -0
  730. package/python/lib/python3.13/importlib/resources/_functional.py +81 -0
  731. package/python/lib/python3.13/importlib/resources/_itertools.py +38 -0
  732. package/python/lib/python3.13/importlib/resources/abc.py +173 -0
  733. package/python/lib/python3.13/importlib/resources/readers.py +203 -0
  734. package/python/lib/python3.13/importlib/resources/simple.py +106 -0
  735. package/python/lib/python3.13/importlib/simple.py +14 -0
  736. package/python/lib/python3.13/importlib/util.py +274 -0
  737. package/python/lib/python3.13/inspect.py +3471 -0
  738. package/python/lib/python3.13/io.py +99 -0
  739. package/python/lib/python3.13/ipaddress.py +2440 -0
  740. package/python/lib/python3.13/json/__init__.py +365 -0
  741. package/python/lib/python3.13/json/decoder.py +364 -0
  742. package/python/lib/python3.13/json/encoder.py +446 -0
  743. package/python/lib/python3.13/json/scanner.py +73 -0
  744. package/python/lib/python3.13/json/tool.py +89 -0
  745. package/python/lib/python3.13/keyword.py +64 -0
  746. package/python/lib/python3.13/lib-dynload/.empty +0 -0
  747. package/python/lib/python3.13/lib-dynload/_ctypes_test.cpython-313-darwin.so +0 -0
  748. package/python/lib/python3.13/lib-dynload/_dbm.cpython-313-darwin.so +0 -0
  749. package/python/lib/python3.13/lib-dynload/_tkinter.cpython-313-darwin.so +0 -0
  750. package/python/lib/python3.13/linecache.py +236 -0
  751. package/python/lib/python3.13/locale.py +1778 -0
  752. package/python/lib/python3.13/logging/__init__.py +2326 -0
  753. package/python/lib/python3.13/logging/config.py +1065 -0
  754. package/python/lib/python3.13/logging/handlers.py +1629 -0
  755. package/python/lib/python3.13/lzma.py +364 -0
  756. package/python/lib/python3.13/mailbox.py +2219 -0
  757. package/python/lib/python3.13/mimetypes.py +679 -0
  758. package/python/lib/python3.13/modulefinder.py +671 -0
  759. package/python/lib/python3.13/multiprocessing/__init__.py +37 -0
  760. package/python/lib/python3.13/multiprocessing/connection.py +1190 -0
  761. package/python/lib/python3.13/multiprocessing/context.py +377 -0
  762. package/python/lib/python3.13/multiprocessing/dummy/__init__.py +126 -0
  763. package/python/lib/python3.13/multiprocessing/dummy/connection.py +75 -0
  764. package/python/lib/python3.13/multiprocessing/forkserver.py +364 -0
  765. package/python/lib/python3.13/multiprocessing/heap.py +337 -0
  766. package/python/lib/python3.13/multiprocessing/managers.py +1397 -0
  767. package/python/lib/python3.13/multiprocessing/pool.py +957 -0
  768. package/python/lib/python3.13/multiprocessing/popen_fork.py +87 -0
  769. package/python/lib/python3.13/multiprocessing/popen_forkserver.py +74 -0
  770. package/python/lib/python3.13/multiprocessing/popen_spawn_posix.py +76 -0
  771. package/python/lib/python3.13/multiprocessing/popen_spawn_win32.py +147 -0
  772. package/python/lib/python3.13/multiprocessing/process.py +436 -0
  773. package/python/lib/python3.13/multiprocessing/queues.py +399 -0
  774. package/python/lib/python3.13/multiprocessing/reduction.py +281 -0
  775. package/python/lib/python3.13/multiprocessing/resource_sharer.py +154 -0
  776. package/python/lib/python3.13/multiprocessing/resource_tracker.py +420 -0
  777. package/python/lib/python3.13/multiprocessing/shared_memory.py +544 -0
  778. package/python/lib/python3.13/multiprocessing/sharedctypes.py +240 -0
  779. package/python/lib/python3.13/multiprocessing/spawn.py +307 -0
  780. package/python/lib/python3.13/multiprocessing/synchronize.py +404 -0
  781. package/python/lib/python3.13/multiprocessing/util.py +562 -0
  782. package/python/lib/python3.13/netrc.py +199 -0
  783. package/python/lib/python3.13/ntpath.py +870 -0
  784. package/python/lib/python3.13/nturl2path.py +69 -0
  785. package/python/lib/python3.13/numbers.py +427 -0
  786. package/python/lib/python3.13/opcode.py +115 -0
  787. package/python/lib/python3.13/operator.py +467 -0
  788. package/python/lib/python3.13/optparse.py +1681 -0
  789. package/python/lib/python3.13/os.py +1184 -0
  790. package/python/lib/python3.13/pathlib/__init__.py +12 -0
  791. package/python/lib/python3.13/pathlib/_abc.py +930 -0
  792. package/python/lib/python3.13/pathlib/_local.py +861 -0
  793. package/python/lib/python3.13/pdb.py +2550 -0
  794. package/python/lib/python3.13/pickle.py +1866 -0
  795. package/python/lib/python3.13/pickletools.py +2904 -0
  796. package/python/lib/python3.13/pkgutil.py +529 -0
  797. package/python/lib/python3.13/platform.py +1454 -0
  798. package/python/lib/python3.13/plistlib.py +948 -0
  799. package/python/lib/python3.13/poplib.py +477 -0
  800. package/python/lib/python3.13/posixpath.py +578 -0
  801. package/python/lib/python3.13/pprint.py +658 -0
  802. package/python/lib/python3.13/profile.py +616 -0
  803. package/python/lib/python3.13/pstats.py +778 -0
  804. package/python/lib/python3.13/pty.py +211 -0
  805. package/python/lib/python3.13/py_compile.py +212 -0
  806. package/python/lib/python3.13/pyclbr.py +314 -0
  807. package/python/lib/python3.13/pydoc.py +2859 -0
  808. package/python/lib/python3.13/pydoc_data/__init__.py +0 -0
  809. package/python/lib/python3.13/pydoc_data/_pydoc.css +112 -0
  810. package/python/lib/python3.13/pydoc_data/module_docs.py +314 -0
  811. package/python/lib/python3.13/pydoc_data/topics.py +13000 -0
  812. package/python/lib/python3.13/queue.py +383 -0
  813. package/python/lib/python3.13/quopri.py +237 -0
  814. package/python/lib/python3.13/random.py +1070 -0
  815. package/python/lib/python3.13/re/__init__.py +428 -0
  816. package/python/lib/python3.13/re/_casefix.py +106 -0
  817. package/python/lib/python3.13/re/_compiler.py +768 -0
  818. package/python/lib/python3.13/re/_constants.py +222 -0
  819. package/python/lib/python3.13/re/_parser.py +1081 -0
  820. package/python/lib/python3.13/reprlib.py +230 -0
  821. package/python/lib/python3.13/rlcompleter.py +221 -0
  822. package/python/lib/python3.13/runpy.py +319 -0
  823. package/python/lib/python3.13/sched.py +167 -0
  824. package/python/lib/python3.13/secrets.py +71 -0
  825. package/python/lib/python3.13/selectors.py +603 -0
  826. package/python/lib/python3.13/shelve.py +250 -0
  827. package/python/lib/python3.13/shlex.py +345 -0
  828. package/python/lib/python3.13/shutil.py +1583 -0
  829. package/python/lib/python3.13/signal.py +94 -0
  830. package/python/lib/python3.13/site-packages/README.txt +2 -0
  831. package/python/lib/python3.13/site-packages/pip/__init__.py +13 -0
  832. package/python/lib/python3.13/site-packages/pip/__main__.py +24 -0
  833. package/python/lib/python3.13/site-packages/pip/__pip-runner__.py +50 -0
  834. package/python/lib/python3.13/site-packages/pip/_internal/__init__.py +18 -0
  835. package/python/lib/python3.13/site-packages/pip/_internal/build_env.py +606 -0
  836. package/python/lib/python3.13/site-packages/pip/_internal/cache.py +291 -0
  837. package/python/lib/python3.13/site-packages/pip/_internal/cli/__init__.py +3 -0
  838. package/python/lib/python3.13/site-packages/pip/_internal/cli/autocompletion.py +184 -0
  839. package/python/lib/python3.13/site-packages/pip/_internal/cli/base_command.py +255 -0
  840. package/python/lib/python3.13/site-packages/pip/_internal/cli/cmdoptions.py +1267 -0
  841. package/python/lib/python3.13/site-packages/pip/_internal/cli/command_context.py +28 -0
  842. package/python/lib/python3.13/site-packages/pip/_internal/cli/index_command.py +195 -0
  843. package/python/lib/python3.13/site-packages/pip/_internal/cli/main.py +85 -0
  844. package/python/lib/python3.13/site-packages/pip/_internal/cli/main_parser.py +136 -0
  845. package/python/lib/python3.13/site-packages/pip/_internal/cli/parser.py +358 -0
  846. package/python/lib/python3.13/site-packages/pip/_internal/cli/progress_bars.py +153 -0
  847. package/python/lib/python3.13/site-packages/pip/_internal/cli/req_command.py +447 -0
  848. package/python/lib/python3.13/site-packages/pip/_internal/cli/spinners.py +235 -0
  849. package/python/lib/python3.13/site-packages/pip/_internal/cli/status_codes.py +6 -0
  850. package/python/lib/python3.13/site-packages/pip/_internal/commands/__init__.py +139 -0
  851. package/python/lib/python3.13/site-packages/pip/_internal/commands/cache.py +255 -0
  852. package/python/lib/python3.13/site-packages/pip/_internal/commands/check.py +66 -0
  853. package/python/lib/python3.13/site-packages/pip/_internal/commands/completion.py +136 -0
  854. package/python/lib/python3.13/site-packages/pip/_internal/commands/configuration.py +288 -0
  855. package/python/lib/python3.13/site-packages/pip/_internal/commands/debug.py +203 -0
  856. package/python/lib/python3.13/site-packages/pip/_internal/commands/download.py +146 -0
  857. package/python/lib/python3.13/site-packages/pip/_internal/commands/freeze.py +107 -0
  858. package/python/lib/python3.13/site-packages/pip/_internal/commands/hash.py +58 -0
  859. package/python/lib/python3.13/site-packages/pip/_internal/commands/help.py +40 -0
  860. package/python/lib/python3.13/site-packages/pip/_internal/commands/index.py +166 -0
  861. package/python/lib/python3.13/site-packages/pip/_internal/commands/inspect.py +92 -0
  862. package/python/lib/python3.13/site-packages/pip/_internal/commands/install.py +810 -0
  863. package/python/lib/python3.13/site-packages/pip/_internal/commands/list.py +398 -0
  864. package/python/lib/python3.13/site-packages/pip/_internal/commands/lock.py +175 -0
  865. package/python/lib/python3.13/site-packages/pip/_internal/commands/search.py +178 -0
  866. package/python/lib/python3.13/site-packages/pip/_internal/commands/show.py +231 -0
  867. package/python/lib/python3.13/site-packages/pip/_internal/commands/uninstall.py +113 -0
  868. package/python/lib/python3.13/site-packages/pip/_internal/commands/wheel.py +171 -0
  869. package/python/lib/python3.13/site-packages/pip/_internal/configuration.py +396 -0
  870. package/python/lib/python3.13/site-packages/pip/_internal/distributions/__init__.py +21 -0
  871. package/python/lib/python3.13/site-packages/pip/_internal/distributions/base.py +55 -0
  872. package/python/lib/python3.13/site-packages/pip/_internal/distributions/installed.py +33 -0
  873. package/python/lib/python3.13/site-packages/pip/_internal/distributions/sdist.py +164 -0
  874. package/python/lib/python3.13/site-packages/pip/_internal/distributions/wheel.py +44 -0
  875. package/python/lib/python3.13/site-packages/pip/_internal/exceptions.py +971 -0
  876. package/python/lib/python3.13/site-packages/pip/_internal/index/__init__.py +1 -0
  877. package/python/lib/python3.13/site-packages/pip/_internal/index/collector.py +488 -0
  878. package/python/lib/python3.13/site-packages/pip/_internal/index/package_finder.py +1125 -0
  879. package/python/lib/python3.13/site-packages/pip/_internal/index/sources.py +287 -0
  880. package/python/lib/python3.13/site-packages/pip/_internal/locations/__init__.py +440 -0
  881. package/python/lib/python3.13/site-packages/pip/_internal/locations/_distutils.py +173 -0
  882. package/python/lib/python3.13/site-packages/pip/_internal/locations/_sysconfig.py +218 -0
  883. package/python/lib/python3.13/site-packages/pip/_internal/locations/base.py +82 -0
  884. package/python/lib/python3.13/site-packages/pip/_internal/main.py +12 -0
  885. package/python/lib/python3.13/site-packages/pip/_internal/metadata/__init__.py +169 -0
  886. package/python/lib/python3.13/site-packages/pip/_internal/metadata/_json.py +87 -0
  887. package/python/lib/python3.13/site-packages/pip/_internal/metadata/base.py +685 -0
  888. package/python/lib/python3.13/site-packages/pip/_internal/metadata/importlib/__init__.py +6 -0
  889. package/python/lib/python3.13/site-packages/pip/_internal/metadata/importlib/_compat.py +87 -0
  890. package/python/lib/python3.13/site-packages/pip/_internal/metadata/importlib/_dists.py +229 -0
  891. package/python/lib/python3.13/site-packages/pip/_internal/metadata/importlib/_envs.py +143 -0
  892. package/python/lib/python3.13/site-packages/pip/_internal/metadata/pkg_resources.py +298 -0
  893. package/python/lib/python3.13/site-packages/pip/_internal/models/__init__.py +1 -0
  894. package/python/lib/python3.13/site-packages/pip/_internal/models/candidate.py +25 -0
  895. package/python/lib/python3.13/site-packages/pip/_internal/models/direct_url.py +227 -0
  896. package/python/lib/python3.13/site-packages/pip/_internal/models/format_control.py +78 -0
  897. package/python/lib/python3.13/site-packages/pip/_internal/models/index.py +28 -0
  898. package/python/lib/python3.13/site-packages/pip/_internal/models/installation_report.py +57 -0
  899. package/python/lib/python3.13/site-packages/pip/_internal/models/link.py +617 -0
  900. package/python/lib/python3.13/site-packages/pip/_internal/models/release_control.py +92 -0
  901. package/python/lib/python3.13/site-packages/pip/_internal/models/scheme.py +25 -0
  902. package/python/lib/python3.13/site-packages/pip/_internal/models/search_scope.py +126 -0
  903. package/python/lib/python3.13/site-packages/pip/_internal/models/selection_prefs.py +56 -0
  904. package/python/lib/python3.13/site-packages/pip/_internal/models/target_python.py +122 -0
  905. package/python/lib/python3.13/site-packages/pip/_internal/models/wheel.py +80 -0
  906. package/python/lib/python3.13/site-packages/pip/_internal/network/__init__.py +1 -0
  907. package/python/lib/python3.13/site-packages/pip/_internal/network/auth.py +568 -0
  908. package/python/lib/python3.13/site-packages/pip/_internal/network/cache.py +128 -0
  909. package/python/lib/python3.13/site-packages/pip/_internal/network/download.py +341 -0
  910. package/python/lib/python3.13/site-packages/pip/_internal/network/lazy_wheel.py +215 -0
  911. package/python/lib/python3.13/site-packages/pip/_internal/network/session.py +532 -0
  912. package/python/lib/python3.13/site-packages/pip/_internal/network/utils.py +98 -0
  913. package/python/lib/python3.13/site-packages/pip/_internal/network/xmlrpc.py +61 -0
  914. package/python/lib/python3.13/site-packages/pip/_internal/operations/__init__.py +0 -0
  915. package/python/lib/python3.13/site-packages/pip/_internal/operations/build/__init__.py +0 -0
  916. package/python/lib/python3.13/site-packages/pip/_internal/operations/build/build_tracker.py +140 -0
  917. package/python/lib/python3.13/site-packages/pip/_internal/operations/build/metadata.py +38 -0
  918. package/python/lib/python3.13/site-packages/pip/_internal/operations/build/metadata_editable.py +41 -0
  919. package/python/lib/python3.13/site-packages/pip/_internal/operations/build/wheel.py +38 -0
  920. package/python/lib/python3.13/site-packages/pip/_internal/operations/build/wheel_editable.py +47 -0
  921. package/python/lib/python3.13/site-packages/pip/_internal/operations/check.py +175 -0
  922. package/python/lib/python3.13/site-packages/pip/_internal/operations/freeze.py +259 -0
  923. package/python/lib/python3.13/site-packages/pip/_internal/operations/install/__init__.py +1 -0
  924. package/python/lib/python3.13/site-packages/pip/_internal/operations/install/wheel.py +745 -0
  925. package/python/lib/python3.13/site-packages/pip/_internal/operations/prepare.py +747 -0
  926. package/python/lib/python3.13/site-packages/pip/_internal/pyproject.py +123 -0
  927. package/python/lib/python3.13/site-packages/pip/_internal/req/__init__.py +103 -0
  928. package/python/lib/python3.13/site-packages/pip/_internal/req/constructors.py +568 -0
  929. package/python/lib/python3.13/site-packages/pip/_internal/req/pep723.py +41 -0
  930. package/python/lib/python3.13/site-packages/pip/_internal/req/req_dependency_group.py +75 -0
  931. package/python/lib/python3.13/site-packages/pip/_internal/req/req_file.py +631 -0
  932. package/python/lib/python3.13/site-packages/pip/_internal/req/req_install.py +828 -0
  933. package/python/lib/python3.13/site-packages/pip/_internal/req/req_set.py +81 -0
  934. package/python/lib/python3.13/site-packages/pip/_internal/req/req_uninstall.py +639 -0
  935. package/python/lib/python3.13/site-packages/pip/_internal/resolution/__init__.py +0 -0
  936. package/python/lib/python3.13/site-packages/pip/_internal/resolution/base.py +20 -0
  937. package/python/lib/python3.13/site-packages/pip/_internal/resolution/legacy/__init__.py +0 -0
  938. package/python/lib/python3.13/site-packages/pip/_internal/resolution/legacy/resolver.py +598 -0
  939. package/python/lib/python3.13/site-packages/pip/_internal/resolution/resolvelib/__init__.py +0 -0
  940. package/python/lib/python3.13/site-packages/pip/_internal/resolution/resolvelib/base.py +142 -0
  941. package/python/lib/python3.13/site-packages/pip/_internal/resolution/resolvelib/candidates.py +591 -0
  942. package/python/lib/python3.13/site-packages/pip/_internal/resolution/resolvelib/factory.py +856 -0
  943. package/python/lib/python3.13/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py +166 -0
  944. package/python/lib/python3.13/site-packages/pip/_internal/resolution/resolvelib/provider.py +285 -0
  945. package/python/lib/python3.13/site-packages/pip/_internal/resolution/resolvelib/reporter.py +98 -0
  946. package/python/lib/python3.13/site-packages/pip/_internal/resolution/resolvelib/requirements.py +251 -0
  947. package/python/lib/python3.13/site-packages/pip/_internal/resolution/resolvelib/resolver.py +332 -0
  948. package/python/lib/python3.13/site-packages/pip/_internal/self_outdated_check.py +255 -0
  949. package/python/lib/python3.13/site-packages/pip/_internal/utils/__init__.py +0 -0
  950. package/python/lib/python3.13/site-packages/pip/_internal/utils/_jaraco_text.py +109 -0
  951. package/python/lib/python3.13/site-packages/pip/_internal/utils/_log.py +38 -0
  952. package/python/lib/python3.13/site-packages/pip/_internal/utils/appdirs.py +52 -0
  953. package/python/lib/python3.13/site-packages/pip/_internal/utils/compat.py +85 -0
  954. package/python/lib/python3.13/site-packages/pip/_internal/utils/compatibility_tags.py +201 -0
  955. package/python/lib/python3.13/site-packages/pip/_internal/utils/datetime.py +28 -0
  956. package/python/lib/python3.13/site-packages/pip/_internal/utils/deprecation.py +126 -0
  957. package/python/lib/python3.13/site-packages/pip/_internal/utils/direct_url_helpers.py +87 -0
  958. package/python/lib/python3.13/site-packages/pip/_internal/utils/egg_link.py +81 -0
  959. package/python/lib/python3.13/site-packages/pip/_internal/utils/entrypoints.py +88 -0
  960. package/python/lib/python3.13/site-packages/pip/_internal/utils/filesystem.py +203 -0
  961. package/python/lib/python3.13/site-packages/pip/_internal/utils/filetypes.py +24 -0
  962. package/python/lib/python3.13/site-packages/pip/_internal/utils/glibc.py +102 -0
  963. package/python/lib/python3.13/site-packages/pip/_internal/utils/hashes.py +150 -0
  964. package/python/lib/python3.13/site-packages/pip/_internal/utils/logging.py +396 -0
  965. package/python/lib/python3.13/site-packages/pip/_internal/utils/misc.py +771 -0
  966. package/python/lib/python3.13/site-packages/pip/_internal/utils/packaging.py +44 -0
  967. package/python/lib/python3.13/site-packages/pip/_internal/utils/pylock.py +116 -0
  968. package/python/lib/python3.13/site-packages/pip/_internal/utils/retry.py +45 -0
  969. package/python/lib/python3.13/site-packages/pip/_internal/utils/subprocess.py +248 -0
  970. package/python/lib/python3.13/site-packages/pip/_internal/utils/temp_dir.py +294 -0
  971. package/python/lib/python3.13/site-packages/pip/_internal/utils/unpacking.py +362 -0
  972. package/python/lib/python3.13/site-packages/pip/_internal/utils/urls.py +55 -0
  973. package/python/lib/python3.13/site-packages/pip/_internal/utils/virtualenv.py +105 -0
  974. package/python/lib/python3.13/site-packages/pip/_internal/utils/wheel.py +132 -0
  975. package/python/lib/python3.13/site-packages/pip/_internal/vcs/__init__.py +15 -0
  976. package/python/lib/python3.13/site-packages/pip/_internal/vcs/bazaar.py +130 -0
  977. package/python/lib/python3.13/site-packages/pip/_internal/vcs/git.py +571 -0
  978. package/python/lib/python3.13/site-packages/pip/_internal/vcs/mercurial.py +186 -0
  979. package/python/lib/python3.13/site-packages/pip/_internal/vcs/subversion.py +335 -0
  980. package/python/lib/python3.13/site-packages/pip/_internal/vcs/versioncontrol.py +695 -0
  981. package/python/lib/python3.13/site-packages/pip/_internal/wheel_builder.py +261 -0
  982. package/python/lib/python3.13/site-packages/pip/_vendor/README.rst +180 -0
  983. package/python/lib/python3.13/site-packages/pip/_vendor/__init__.py +117 -0
  984. package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/LICENSE.txt +13 -0
  985. package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/__init__.py +32 -0
  986. package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/_cmd.py +70 -0
  987. package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/adapter.py +167 -0
  988. package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/cache.py +75 -0
  989. package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/caches/__init__.py +8 -0
  990. package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py +145 -0
  991. package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py +48 -0
  992. package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/controller.py +511 -0
  993. package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/filewrapper.py +121 -0
  994. package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/heuristics.py +157 -0
  995. package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/py.typed +0 -0
  996. package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/serialize.py +146 -0
  997. package/python/lib/python3.13/site-packages/pip/_vendor/cachecontrol/wrapper.py +43 -0
  998. package/python/lib/python3.13/site-packages/pip/_vendor/certifi/LICENSE +20 -0
  999. package/python/lib/python3.13/site-packages/pip/_vendor/certifi/__init__.py +4 -0
  1000. package/python/lib/python3.13/site-packages/pip/_vendor/certifi/__main__.py +12 -0
  1001. package/python/lib/python3.13/site-packages/pip/_vendor/certifi/cacert.pem +4468 -0
  1002. package/python/lib/python3.13/site-packages/pip/_vendor/certifi/core.py +83 -0
  1003. package/python/lib/python3.13/site-packages/pip/_vendor/certifi/py.typed +0 -0
  1004. package/python/lib/python3.13/site-packages/pip/_vendor/dependency_groups/LICENSE.txt +9 -0
  1005. package/python/lib/python3.13/site-packages/pip/_vendor/dependency_groups/__init__.py +13 -0
  1006. package/python/lib/python3.13/site-packages/pip/_vendor/dependency_groups/__main__.py +65 -0
  1007. package/python/lib/python3.13/site-packages/pip/_vendor/dependency_groups/_implementation.py +209 -0
  1008. package/python/lib/python3.13/site-packages/pip/_vendor/dependency_groups/_lint_dependency_groups.py +59 -0
  1009. package/python/lib/python3.13/site-packages/pip/_vendor/dependency_groups/_pip_wrapper.py +62 -0
  1010. package/python/lib/python3.13/site-packages/pip/_vendor/dependency_groups/_toml_compat.py +9 -0
  1011. package/python/lib/python3.13/site-packages/pip/_vendor/dependency_groups/py.typed +0 -0
  1012. package/python/lib/python3.13/site-packages/pip/_vendor/distlib/LICENSE.txt +284 -0
  1013. package/python/lib/python3.13/site-packages/pip/_vendor/distlib/__init__.py +33 -0
  1014. package/python/lib/python3.13/site-packages/pip/_vendor/distlib/compat.py +1137 -0
  1015. package/python/lib/python3.13/site-packages/pip/_vendor/distlib/resources.py +358 -0
  1016. package/python/lib/python3.13/site-packages/pip/_vendor/distlib/scripts.py +447 -0
  1017. package/python/lib/python3.13/site-packages/pip/_vendor/distlib/t32.exe +0 -0
  1018. package/python/lib/python3.13/site-packages/pip/_vendor/distlib/t64-arm.exe +0 -0
  1019. package/python/lib/python3.13/site-packages/pip/_vendor/distlib/t64.exe +0 -0
  1020. package/python/lib/python3.13/site-packages/pip/_vendor/distlib/util.py +1984 -0
  1021. package/python/lib/python3.13/site-packages/pip/_vendor/distlib/w32.exe +0 -0
  1022. package/python/lib/python3.13/site-packages/pip/_vendor/distlib/w64-arm.exe +0 -0
  1023. package/python/lib/python3.13/site-packages/pip/_vendor/distlib/w64.exe +0 -0
  1024. package/python/lib/python3.13/site-packages/pip/_vendor/distro/LICENSE +202 -0
  1025. package/python/lib/python3.13/site-packages/pip/_vendor/distro/__init__.py +54 -0
  1026. package/python/lib/python3.13/site-packages/pip/_vendor/distro/__main__.py +4 -0
  1027. package/python/lib/python3.13/site-packages/pip/_vendor/distro/distro.py +1403 -0
  1028. package/python/lib/python3.13/site-packages/pip/_vendor/distro/py.typed +0 -0
  1029. package/python/lib/python3.13/site-packages/pip/_vendor/idna/LICENSE.md +31 -0
  1030. package/python/lib/python3.13/site-packages/pip/_vendor/idna/__init__.py +45 -0
  1031. package/python/lib/python3.13/site-packages/pip/_vendor/idna/codec.py +122 -0
  1032. package/python/lib/python3.13/site-packages/pip/_vendor/idna/compat.py +15 -0
  1033. package/python/lib/python3.13/site-packages/pip/_vendor/idna/core.py +437 -0
  1034. package/python/lib/python3.13/site-packages/pip/_vendor/idna/idnadata.py +4309 -0
  1035. package/python/lib/python3.13/site-packages/pip/_vendor/idna/intranges.py +57 -0
  1036. package/python/lib/python3.13/site-packages/pip/_vendor/idna/package_data.py +1 -0
  1037. package/python/lib/python3.13/site-packages/pip/_vendor/idna/py.typed +0 -0
  1038. package/python/lib/python3.13/site-packages/pip/_vendor/idna/uts46data.py +8841 -0
  1039. package/python/lib/python3.13/site-packages/pip/_vendor/msgpack/COPYING +14 -0
  1040. package/python/lib/python3.13/site-packages/pip/_vendor/msgpack/__init__.py +55 -0
  1041. package/python/lib/python3.13/site-packages/pip/_vendor/msgpack/exceptions.py +48 -0
  1042. package/python/lib/python3.13/site-packages/pip/_vendor/msgpack/ext.py +170 -0
  1043. package/python/lib/python3.13/site-packages/pip/_vendor/msgpack/fallback.py +929 -0
  1044. package/python/lib/python3.13/site-packages/pip/_vendor/packaging/LICENSE +3 -0
  1045. package/python/lib/python3.13/site-packages/pip/_vendor/packaging/LICENSE.APACHE +177 -0
  1046. package/python/lib/python3.13/site-packages/pip/_vendor/packaging/LICENSE.BSD +23 -0
  1047. package/python/lib/python3.13/site-packages/pip/_vendor/packaging/__init__.py +15 -0
  1048. package/python/lib/python3.13/site-packages/pip/_vendor/packaging/_elffile.py +108 -0
  1049. package/python/lib/python3.13/site-packages/pip/_vendor/packaging/_manylinux.py +262 -0
  1050. package/python/lib/python3.13/site-packages/pip/_vendor/packaging/_musllinux.py +85 -0
  1051. package/python/lib/python3.13/site-packages/pip/_vendor/packaging/_parser.py +365 -0
  1052. package/python/lib/python3.13/site-packages/pip/_vendor/packaging/_structures.py +69 -0
  1053. package/python/lib/python3.13/site-packages/pip/_vendor/packaging/_tokenizer.py +193 -0
  1054. package/python/lib/python3.13/site-packages/pip/_vendor/packaging/licenses/__init__.py +147 -0
  1055. package/python/lib/python3.13/site-packages/pip/_vendor/packaging/licenses/_spdx.py +799 -0
  1056. package/python/lib/python3.13/site-packages/pip/_vendor/packaging/markers.py +388 -0
  1057. package/python/lib/python3.13/site-packages/pip/_vendor/packaging/metadata.py +978 -0
  1058. package/python/lib/python3.13/site-packages/pip/_vendor/packaging/py.typed +0 -0
  1059. package/python/lib/python3.13/site-packages/pip/_vendor/packaging/pylock.py +635 -0
  1060. package/python/lib/python3.13/site-packages/pip/_vendor/packaging/requirements.py +86 -0
  1061. package/python/lib/python3.13/site-packages/pip/_vendor/packaging/specifiers.py +1068 -0
  1062. package/python/lib/python3.13/site-packages/pip/_vendor/packaging/tags.py +651 -0
  1063. package/python/lib/python3.13/site-packages/pip/_vendor/packaging/utils.py +158 -0
  1064. package/python/lib/python3.13/site-packages/pip/_vendor/packaging/version.py +792 -0
  1065. package/python/lib/python3.13/site-packages/pip/_vendor/pkg_resources/LICENSE +17 -0
  1066. package/python/lib/python3.13/site-packages/pip/_vendor/pkg_resources/__init__.py +3676 -0
  1067. package/python/lib/python3.13/site-packages/pip/_vendor/platformdirs/LICENSE +21 -0
  1068. package/python/lib/python3.13/site-packages/pip/_vendor/platformdirs/__init__.py +631 -0
  1069. package/python/lib/python3.13/site-packages/pip/_vendor/platformdirs/__main__.py +55 -0
  1070. package/python/lib/python3.13/site-packages/pip/_vendor/platformdirs/android.py +249 -0
  1071. package/python/lib/python3.13/site-packages/pip/_vendor/platformdirs/api.py +299 -0
  1072. package/python/lib/python3.13/site-packages/pip/_vendor/platformdirs/macos.py +146 -0
  1073. package/python/lib/python3.13/site-packages/pip/_vendor/platformdirs/py.typed +0 -0
  1074. package/python/lib/python3.13/site-packages/pip/_vendor/platformdirs/unix.py +272 -0
  1075. package/python/lib/python3.13/site-packages/pip/_vendor/platformdirs/version.py +34 -0
  1076. package/python/lib/python3.13/site-packages/pip/_vendor/platformdirs/windows.py +278 -0
  1077. package/python/lib/python3.13/site-packages/pip/_vendor/pygments/LICENSE +25 -0
  1078. package/python/lib/python3.13/site-packages/pip/_vendor/pygments/__init__.py +82 -0
  1079. package/python/lib/python3.13/site-packages/pip/_vendor/pygments/__main__.py +17 -0
  1080. package/python/lib/python3.13/site-packages/pip/_vendor/pygments/console.py +70 -0
  1081. package/python/lib/python3.13/site-packages/pip/_vendor/pygments/filter.py +70 -0
  1082. package/python/lib/python3.13/site-packages/pip/_vendor/pygments/filters/__init__.py +940 -0
  1083. package/python/lib/python3.13/site-packages/pip/_vendor/pygments/formatter.py +129 -0
  1084. package/python/lib/python3.13/site-packages/pip/_vendor/pygments/formatters/__init__.py +157 -0
  1085. package/python/lib/python3.13/site-packages/pip/_vendor/pygments/formatters/_mapping.py +23 -0
  1086. package/python/lib/python3.13/site-packages/pip/_vendor/pygments/lexer.py +963 -0
  1087. package/python/lib/python3.13/site-packages/pip/_vendor/pygments/lexers/__init__.py +362 -0
  1088. package/python/lib/python3.13/site-packages/pip/_vendor/pygments/lexers/_mapping.py +602 -0
  1089. package/python/lib/python3.13/site-packages/pip/_vendor/pygments/lexers/python.py +1201 -0
  1090. package/python/lib/python3.13/site-packages/pip/_vendor/pygments/modeline.py +43 -0
  1091. package/python/lib/python3.13/site-packages/pip/_vendor/pygments/plugin.py +72 -0
  1092. package/python/lib/python3.13/site-packages/pip/_vendor/pygments/regexopt.py +91 -0
  1093. package/python/lib/python3.13/site-packages/pip/_vendor/pygments/scanner.py +104 -0
  1094. package/python/lib/python3.13/site-packages/pip/_vendor/pygments/sphinxext.py +247 -0
  1095. package/python/lib/python3.13/site-packages/pip/_vendor/pygments/style.py +203 -0
  1096. package/python/lib/python3.13/site-packages/pip/_vendor/pygments/styles/__init__.py +61 -0
  1097. package/python/lib/python3.13/site-packages/pip/_vendor/pygments/styles/_mapping.py +54 -0
  1098. package/python/lib/python3.13/site-packages/pip/_vendor/pygments/token.py +214 -0
  1099. package/python/lib/python3.13/site-packages/pip/_vendor/pygments/unistring.py +153 -0
  1100. package/python/lib/python3.13/site-packages/pip/_vendor/pygments/util.py +324 -0
  1101. package/python/lib/python3.13/site-packages/pip/_vendor/pyproject_hooks/LICENSE +21 -0
  1102. package/python/lib/python3.13/site-packages/pip/_vendor/pyproject_hooks/__init__.py +31 -0
  1103. package/python/lib/python3.13/site-packages/pip/_vendor/pyproject_hooks/_impl.py +410 -0
  1104. package/python/lib/python3.13/site-packages/pip/_vendor/pyproject_hooks/_in_process/__init__.py +21 -0
  1105. package/python/lib/python3.13/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py +389 -0
  1106. package/python/lib/python3.13/site-packages/pip/_vendor/pyproject_hooks/py.typed +0 -0
  1107. package/python/lib/python3.13/site-packages/pip/_vendor/requests/LICENSE +175 -0
  1108. package/python/lib/python3.13/site-packages/pip/_vendor/requests/__init__.py +179 -0
  1109. package/python/lib/python3.13/site-packages/pip/_vendor/requests/__version__.py +14 -0
  1110. package/python/lib/python3.13/site-packages/pip/_vendor/requests/_internal_utils.py +50 -0
  1111. package/python/lib/python3.13/site-packages/pip/_vendor/requests/adapters.py +696 -0
  1112. package/python/lib/python3.13/site-packages/pip/_vendor/requests/api.py +157 -0
  1113. package/python/lib/python3.13/site-packages/pip/_vendor/requests/auth.py +314 -0
  1114. package/python/lib/python3.13/site-packages/pip/_vendor/requests/certs.py +17 -0
  1115. package/python/lib/python3.13/site-packages/pip/_vendor/requests/compat.py +90 -0
  1116. package/python/lib/python3.13/site-packages/pip/_vendor/requests/cookies.py +561 -0
  1117. package/python/lib/python3.13/site-packages/pip/_vendor/requests/exceptions.py +151 -0
  1118. package/python/lib/python3.13/site-packages/pip/_vendor/requests/help.py +127 -0
  1119. package/python/lib/python3.13/site-packages/pip/_vendor/requests/hooks.py +33 -0
  1120. package/python/lib/python3.13/site-packages/pip/_vendor/requests/models.py +1039 -0
  1121. package/python/lib/python3.13/site-packages/pip/_vendor/requests/packages.py +25 -0
  1122. package/python/lib/python3.13/site-packages/pip/_vendor/requests/sessions.py +831 -0
  1123. package/python/lib/python3.13/site-packages/pip/_vendor/requests/status_codes.py +128 -0
  1124. package/python/lib/python3.13/site-packages/pip/_vendor/requests/structures.py +99 -0
  1125. package/python/lib/python3.13/site-packages/pip/_vendor/requests/utils.py +1086 -0
  1126. package/python/lib/python3.13/site-packages/pip/_vendor/resolvelib/LICENSE +13 -0
  1127. package/python/lib/python3.13/site-packages/pip/_vendor/resolvelib/__init__.py +27 -0
  1128. package/python/lib/python3.13/site-packages/pip/_vendor/resolvelib/providers.py +196 -0
  1129. package/python/lib/python3.13/site-packages/pip/_vendor/resolvelib/py.typed +0 -0
  1130. package/python/lib/python3.13/site-packages/pip/_vendor/resolvelib/reporters.py +55 -0
  1131. package/python/lib/python3.13/site-packages/pip/_vendor/resolvelib/resolvers/__init__.py +27 -0
  1132. package/python/lib/python3.13/site-packages/pip/_vendor/resolvelib/resolvers/abstract.py +47 -0
  1133. package/python/lib/python3.13/site-packages/pip/_vendor/resolvelib/resolvers/criterion.py +48 -0
  1134. package/python/lib/python3.13/site-packages/pip/_vendor/resolvelib/resolvers/exceptions.py +57 -0
  1135. package/python/lib/python3.13/site-packages/pip/_vendor/resolvelib/resolvers/resolution.py +627 -0
  1136. package/python/lib/python3.13/site-packages/pip/_vendor/resolvelib/structs.py +209 -0
  1137. package/python/lib/python3.13/site-packages/pip/_vendor/rich/LICENSE +19 -0
  1138. package/python/lib/python3.13/site-packages/pip/_vendor/rich/__init__.py +177 -0
  1139. package/python/lib/python3.13/site-packages/pip/_vendor/rich/__main__.py +245 -0
  1140. package/python/lib/python3.13/site-packages/pip/_vendor/rich/_cell_widths.py +454 -0
  1141. package/python/lib/python3.13/site-packages/pip/_vendor/rich/_emoji_codes.py +3610 -0
  1142. package/python/lib/python3.13/site-packages/pip/_vendor/rich/_emoji_replace.py +32 -0
  1143. package/python/lib/python3.13/site-packages/pip/_vendor/rich/_export_format.py +76 -0
  1144. package/python/lib/python3.13/site-packages/pip/_vendor/rich/_extension.py +10 -0
  1145. package/python/lib/python3.13/site-packages/pip/_vendor/rich/_fileno.py +24 -0
  1146. package/python/lib/python3.13/site-packages/pip/_vendor/rich/_inspect.py +268 -0
  1147. package/python/lib/python3.13/site-packages/pip/_vendor/rich/_log_render.py +94 -0
  1148. package/python/lib/python3.13/site-packages/pip/_vendor/rich/_loop.py +43 -0
  1149. package/python/lib/python3.13/site-packages/pip/_vendor/rich/_null_file.py +69 -0
  1150. package/python/lib/python3.13/site-packages/pip/_vendor/rich/_palettes.py +309 -0
  1151. package/python/lib/python3.13/site-packages/pip/_vendor/rich/_pick.py +17 -0
  1152. package/python/lib/python3.13/site-packages/pip/_vendor/rich/_ratio.py +153 -0
  1153. package/python/lib/python3.13/site-packages/pip/_vendor/rich/_spinners.py +482 -0
  1154. package/python/lib/python3.13/site-packages/pip/_vendor/rich/_stack.py +16 -0
  1155. package/python/lib/python3.13/site-packages/pip/_vendor/rich/_timer.py +19 -0
  1156. package/python/lib/python3.13/site-packages/pip/_vendor/rich/_win32_console.py +661 -0
  1157. package/python/lib/python3.13/site-packages/pip/_vendor/rich/_windows.py +71 -0
  1158. package/python/lib/python3.13/site-packages/pip/_vendor/rich/_windows_renderer.py +56 -0
  1159. package/python/lib/python3.13/site-packages/pip/_vendor/rich/_wrap.py +93 -0
  1160. package/python/lib/python3.13/site-packages/pip/_vendor/rich/abc.py +33 -0
  1161. package/python/lib/python3.13/site-packages/pip/_vendor/rich/align.py +306 -0
  1162. package/python/lib/python3.13/site-packages/pip/_vendor/rich/ansi.py +241 -0
  1163. package/python/lib/python3.13/site-packages/pip/_vendor/rich/bar.py +93 -0
  1164. package/python/lib/python3.13/site-packages/pip/_vendor/rich/box.py +474 -0
  1165. package/python/lib/python3.13/site-packages/pip/_vendor/rich/cells.py +174 -0
  1166. package/python/lib/python3.13/site-packages/pip/_vendor/rich/color.py +621 -0
  1167. package/python/lib/python3.13/site-packages/pip/_vendor/rich/color_triplet.py +38 -0
  1168. package/python/lib/python3.13/site-packages/pip/_vendor/rich/columns.py +187 -0
  1169. package/python/lib/python3.13/site-packages/pip/_vendor/rich/console.py +2680 -0
  1170. package/python/lib/python3.13/site-packages/pip/_vendor/rich/constrain.py +37 -0
  1171. package/python/lib/python3.13/site-packages/pip/_vendor/rich/containers.py +167 -0
  1172. package/python/lib/python3.13/site-packages/pip/_vendor/rich/control.py +219 -0
  1173. package/python/lib/python3.13/site-packages/pip/_vendor/rich/default_styles.py +193 -0
  1174. package/python/lib/python3.13/site-packages/pip/_vendor/rich/diagnose.py +39 -0
  1175. package/python/lib/python3.13/site-packages/pip/_vendor/rich/emoji.py +91 -0
  1176. package/python/lib/python3.13/site-packages/pip/_vendor/rich/errors.py +34 -0
  1177. package/python/lib/python3.13/site-packages/pip/_vendor/rich/file_proxy.py +57 -0
  1178. package/python/lib/python3.13/site-packages/pip/_vendor/rich/filesize.py +88 -0
  1179. package/python/lib/python3.13/site-packages/pip/_vendor/rich/highlighter.py +232 -0
  1180. package/python/lib/python3.13/site-packages/pip/_vendor/rich/json.py +139 -0
  1181. package/python/lib/python3.13/site-packages/pip/_vendor/rich/jupyter.py +101 -0
  1182. package/python/lib/python3.13/site-packages/pip/_vendor/rich/layout.py +442 -0
  1183. package/python/lib/python3.13/site-packages/pip/_vendor/rich/live.py +400 -0
  1184. package/python/lib/python3.13/site-packages/pip/_vendor/rich/live_render.py +106 -0
  1185. package/python/lib/python3.13/site-packages/pip/_vendor/rich/logging.py +297 -0
  1186. package/python/lib/python3.13/site-packages/pip/_vendor/rich/markup.py +251 -0
  1187. package/python/lib/python3.13/site-packages/pip/_vendor/rich/measure.py +151 -0
  1188. package/python/lib/python3.13/site-packages/pip/_vendor/rich/padding.py +141 -0
  1189. package/python/lib/python3.13/site-packages/pip/_vendor/rich/pager.py +34 -0
  1190. package/python/lib/python3.13/site-packages/pip/_vendor/rich/palette.py +100 -0
  1191. package/python/lib/python3.13/site-packages/pip/_vendor/rich/panel.py +317 -0
  1192. package/python/lib/python3.13/site-packages/pip/_vendor/rich/pretty.py +1016 -0
  1193. package/python/lib/python3.13/site-packages/pip/_vendor/rich/progress.py +1715 -0
  1194. package/python/lib/python3.13/site-packages/pip/_vendor/rich/progress_bar.py +223 -0
  1195. package/python/lib/python3.13/site-packages/pip/_vendor/rich/prompt.py +400 -0
  1196. package/python/lib/python3.13/site-packages/pip/_vendor/rich/protocol.py +42 -0
  1197. package/python/lib/python3.13/site-packages/pip/_vendor/rich/py.typed +0 -0
  1198. package/python/lib/python3.13/site-packages/pip/_vendor/rich/region.py +10 -0
  1199. package/python/lib/python3.13/site-packages/pip/_vendor/rich/repr.py +149 -0
  1200. package/python/lib/python3.13/site-packages/pip/_vendor/rich/rule.py +130 -0
  1201. package/python/lib/python3.13/site-packages/pip/_vendor/rich/scope.py +86 -0
  1202. package/python/lib/python3.13/site-packages/pip/_vendor/rich/screen.py +54 -0
  1203. package/python/lib/python3.13/site-packages/pip/_vendor/rich/segment.py +752 -0
  1204. package/python/lib/python3.13/site-packages/pip/_vendor/rich/spinner.py +132 -0
  1205. package/python/lib/python3.13/site-packages/pip/_vendor/rich/status.py +131 -0
  1206. package/python/lib/python3.13/site-packages/pip/_vendor/rich/style.py +792 -0
  1207. package/python/lib/python3.13/site-packages/pip/_vendor/rich/styled.py +42 -0
  1208. package/python/lib/python3.13/site-packages/pip/_vendor/rich/syntax.py +985 -0
  1209. package/python/lib/python3.13/site-packages/pip/_vendor/rich/table.py +1006 -0
  1210. package/python/lib/python3.13/site-packages/pip/_vendor/rich/terminal_theme.py +153 -0
  1211. package/python/lib/python3.13/site-packages/pip/_vendor/rich/text.py +1361 -0
  1212. package/python/lib/python3.13/site-packages/pip/_vendor/rich/theme.py +115 -0
  1213. package/python/lib/python3.13/site-packages/pip/_vendor/rich/themes.py +5 -0
  1214. package/python/lib/python3.13/site-packages/pip/_vendor/rich/traceback.py +899 -0
  1215. package/python/lib/python3.13/site-packages/pip/_vendor/rich/tree.py +257 -0
  1216. package/python/lib/python3.13/site-packages/pip/_vendor/tomli/LICENSE +21 -0
  1217. package/python/lib/python3.13/site-packages/pip/_vendor/tomli/__init__.py +8 -0
  1218. package/python/lib/python3.13/site-packages/pip/_vendor/tomli/_parser.py +777 -0
  1219. package/python/lib/python3.13/site-packages/pip/_vendor/tomli/_re.py +115 -0
  1220. package/python/lib/python3.13/site-packages/pip/_vendor/tomli/_types.py +10 -0
  1221. package/python/lib/python3.13/site-packages/pip/_vendor/tomli/py.typed +1 -0
  1222. package/python/lib/python3.13/site-packages/pip/_vendor/tomli_w/LICENSE +21 -0
  1223. package/python/lib/python3.13/site-packages/pip/_vendor/tomli_w/__init__.py +4 -0
  1224. package/python/lib/python3.13/site-packages/pip/_vendor/tomli_w/_writer.py +229 -0
  1225. package/python/lib/python3.13/site-packages/pip/_vendor/tomli_w/py.typed +1 -0
  1226. package/python/lib/python3.13/site-packages/pip/_vendor/truststore/LICENSE +21 -0
  1227. package/python/lib/python3.13/site-packages/pip/_vendor/truststore/__init__.py +36 -0
  1228. package/python/lib/python3.13/site-packages/pip/_vendor/truststore/_api.py +341 -0
  1229. package/python/lib/python3.13/site-packages/pip/_vendor/truststore/_macos.py +571 -0
  1230. package/python/lib/python3.13/site-packages/pip/_vendor/truststore/_openssl.py +68 -0
  1231. package/python/lib/python3.13/site-packages/pip/_vendor/truststore/_ssl_constants.py +31 -0
  1232. package/python/lib/python3.13/site-packages/pip/_vendor/truststore/_windows.py +567 -0
  1233. package/python/lib/python3.13/site-packages/pip/_vendor/truststore/py.typed +0 -0
  1234. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/LICENSE.txt +21 -0
  1235. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/__init__.py +102 -0
  1236. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/_collections.py +355 -0
  1237. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/_version.py +2 -0
  1238. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/connection.py +572 -0
  1239. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/connectionpool.py +1140 -0
  1240. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/contrib/__init__.py +0 -0
  1241. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/contrib/_appengine_environ.py +36 -0
  1242. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__init__.py +0 -0
  1243. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/contrib/_securetransport/bindings.py +519 -0
  1244. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/contrib/_securetransport/low_level.py +397 -0
  1245. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/contrib/appengine.py +314 -0
  1246. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/contrib/ntlmpool.py +130 -0
  1247. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/contrib/pyopenssl.py +518 -0
  1248. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/contrib/securetransport.py +920 -0
  1249. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/contrib/socks.py +216 -0
  1250. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/exceptions.py +323 -0
  1251. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/fields.py +274 -0
  1252. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/filepost.py +98 -0
  1253. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/packages/__init__.py +0 -0
  1254. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/packages/backports/__init__.py +0 -0
  1255. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/packages/backports/makefile.py +51 -0
  1256. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/packages/backports/weakref_finalize.py +155 -0
  1257. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/packages/six.py +1076 -0
  1258. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/poolmanager.py +540 -0
  1259. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/request.py +191 -0
  1260. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/response.py +879 -0
  1261. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/util/__init__.py +49 -0
  1262. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/util/connection.py +149 -0
  1263. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/util/proxy.py +57 -0
  1264. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/util/queue.py +22 -0
  1265. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/util/request.py +137 -0
  1266. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/util/response.py +107 -0
  1267. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/util/retry.py +622 -0
  1268. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/util/ssl_.py +504 -0
  1269. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/util/ssl_match_hostname.py +159 -0
  1270. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/util/ssltransport.py +221 -0
  1271. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/util/timeout.py +271 -0
  1272. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/util/url.py +435 -0
  1273. package/python/lib/python3.13/site-packages/pip/_vendor/urllib3/util/wait.py +152 -0
  1274. package/python/lib/python3.13/site-packages/pip/_vendor/vendor.txt +19 -0
  1275. package/python/lib/python3.13/site-packages/pip/py.typed +4 -0
  1276. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/INSTALLER +1 -0
  1277. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/METADATA +111 -0
  1278. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/RECORD +879 -0
  1279. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/REQUESTED +0 -0
  1280. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/WHEEL +4 -0
  1281. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/direct_url.json +1 -0
  1282. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/entry_points.txt +4 -0
  1283. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/AUTHORS.txt +860 -0
  1284. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/LICENSE.txt +20 -0
  1285. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/cachecontrol/LICENSE.txt +13 -0
  1286. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/certifi/LICENSE +20 -0
  1287. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/dependency_groups/LICENSE.txt +9 -0
  1288. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/distlib/LICENSE.txt +284 -0
  1289. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/distro/LICENSE +202 -0
  1290. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/idna/LICENSE.md +31 -0
  1291. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/msgpack/COPYING +14 -0
  1292. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/packaging/LICENSE +3 -0
  1293. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/packaging/LICENSE.APACHE +177 -0
  1294. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/packaging/LICENSE.BSD +23 -0
  1295. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/pkg_resources/LICENSE +17 -0
  1296. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/platformdirs/LICENSE +21 -0
  1297. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/pygments/LICENSE +25 -0
  1298. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/pyproject_hooks/LICENSE +21 -0
  1299. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/requests/LICENSE +175 -0
  1300. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/resolvelib/LICENSE +13 -0
  1301. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/rich/LICENSE +19 -0
  1302. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/tomli/LICENSE +21 -0
  1303. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/tomli_w/LICENSE +21 -0
  1304. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/truststore/LICENSE +21 -0
  1305. package/python/lib/python3.13/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/urllib3/LICENSE.txt +21 -0
  1306. package/python/lib/python3.13/site.py +773 -0
  1307. package/python/lib/python3.13/smtplib.py +1123 -0
  1308. package/python/lib/python3.13/socket.py +982 -0
  1309. package/python/lib/python3.13/socketserver.py +863 -0
  1310. package/python/lib/python3.13/sqlite3/__init__.py +70 -0
  1311. package/python/lib/python3.13/sqlite3/__main__.py +139 -0
  1312. package/python/lib/python3.13/sqlite3/dbapi2.py +108 -0
  1313. package/python/lib/python3.13/sqlite3/dump.py +113 -0
  1314. package/python/lib/python3.13/sre_compile.py +7 -0
  1315. package/python/lib/python3.13/sre_constants.py +7 -0
  1316. package/python/lib/python3.13/sre_parse.py +7 -0
  1317. package/python/lib/python3.13/ssl.py +1529 -0
  1318. package/python/lib/python3.13/stat.py +212 -0
  1319. package/python/lib/python3.13/statistics.py +1817 -0
  1320. package/python/lib/python3.13/string.py +309 -0
  1321. package/python/lib/python3.13/stringprep.py +272 -0
  1322. package/python/lib/python3.13/struct.py +15 -0
  1323. package/python/lib/python3.13/subprocess.py +2258 -0
  1324. package/python/lib/python3.13/symtable.py +414 -0
  1325. package/python/lib/python3.13/sysconfig/__init__.py +726 -0
  1326. package/python/lib/python3.13/sysconfig/__main__.py +248 -0
  1327. package/python/lib/python3.13/tabnanny.py +340 -0
  1328. package/python/lib/python3.13/tarfile.py +3070 -0
  1329. package/python/lib/python3.13/tempfile.py +957 -0
  1330. package/python/lib/python3.13/textwrap.py +497 -0
  1331. package/python/lib/python3.13/this.py +28 -0
  1332. package/python/lib/python3.13/threading.py +1602 -0
  1333. package/python/lib/python3.13/timeit.py +381 -0
  1334. package/python/lib/python3.13/tkinter/__init__.py +5002 -0
  1335. package/python/lib/python3.13/tkinter/__main__.py +7 -0
  1336. package/python/lib/python3.13/tkinter/colorchooser.py +86 -0
  1337. package/python/lib/python3.13/tkinter/commondialog.py +53 -0
  1338. package/python/lib/python3.13/tkinter/constants.py +110 -0
  1339. package/python/lib/python3.13/tkinter/dialog.py +49 -0
  1340. package/python/lib/python3.13/tkinter/dnd.py +324 -0
  1341. package/python/lib/python3.13/tkinter/filedialog.py +492 -0
  1342. package/python/lib/python3.13/tkinter/font.py +239 -0
  1343. package/python/lib/python3.13/tkinter/messagebox.py +146 -0
  1344. package/python/lib/python3.13/tkinter/scrolledtext.py +56 -0
  1345. package/python/lib/python3.13/tkinter/simpledialog.py +441 -0
  1346. package/python/lib/python3.13/tkinter/ttk.py +1647 -0
  1347. package/python/lib/python3.13/token.py +141 -0
  1348. package/python/lib/python3.13/tokenize.py +592 -0
  1349. package/python/lib/python3.13/tomllib/__init__.py +10 -0
  1350. package/python/lib/python3.13/tomllib/_parser.py +691 -0
  1351. package/python/lib/python3.13/tomllib/_re.py +107 -0
  1352. package/python/lib/python3.13/tomllib/_types.py +10 -0
  1353. package/python/lib/python3.13/tomllib/mypy.ini +17 -0
  1354. package/python/lib/python3.13/trace.py +754 -0
  1355. package/python/lib/python3.13/traceback.py +1638 -0
  1356. package/python/lib/python3.13/tracemalloc.py +560 -0
  1357. package/python/lib/python3.13/tty.py +73 -0
  1358. package/python/lib/python3.13/turtle.py +4199 -0
  1359. package/python/lib/python3.13/turtledemo/__init__.py +14 -0
  1360. package/python/lib/python3.13/turtledemo/__main__.py +401 -0
  1361. package/python/lib/python3.13/turtledemo/bytedesign.py +161 -0
  1362. package/python/lib/python3.13/turtledemo/chaos.py +59 -0
  1363. package/python/lib/python3.13/turtledemo/clock.py +138 -0
  1364. package/python/lib/python3.13/turtledemo/colormixer.py +58 -0
  1365. package/python/lib/python3.13/turtledemo/forest.py +108 -0
  1366. package/python/lib/python3.13/turtledemo/fractalcurves.py +138 -0
  1367. package/python/lib/python3.13/turtledemo/lindenmayer.py +119 -0
  1368. package/python/lib/python3.13/turtledemo/minimal_hanoi.py +79 -0
  1369. package/python/lib/python3.13/turtledemo/nim.py +226 -0
  1370. package/python/lib/python3.13/turtledemo/paint.py +54 -0
  1371. package/python/lib/python3.13/turtledemo/peace.py +61 -0
  1372. package/python/lib/python3.13/turtledemo/penrose.py +175 -0
  1373. package/python/lib/python3.13/turtledemo/planet_and_moon.py +111 -0
  1374. package/python/lib/python3.13/turtledemo/rosette.py +65 -0
  1375. package/python/lib/python3.13/turtledemo/round_dance.py +86 -0
  1376. package/python/lib/python3.13/turtledemo/sorting_animate.py +204 -0
  1377. package/python/lib/python3.13/turtledemo/tree.py +62 -0
  1378. package/python/lib/python3.13/turtledemo/turtle.cfg +10 -0
  1379. package/python/lib/python3.13/turtledemo/two_canvases.py +54 -0
  1380. package/python/lib/python3.13/turtledemo/yinyang.py +49 -0
  1381. package/python/lib/python3.13/types.py +345 -0
  1382. package/python/lib/python3.13/typing.py +3831 -0
  1383. package/python/lib/python3.13/unittest/__init__.py +80 -0
  1384. package/python/lib/python3.13/unittest/__main__.py +18 -0
  1385. package/python/lib/python3.13/unittest/_log.py +86 -0
  1386. package/python/lib/python3.13/unittest/async_case.py +146 -0
  1387. package/python/lib/python3.13/unittest/case.py +1478 -0
  1388. package/python/lib/python3.13/unittest/loader.py +453 -0
  1389. package/python/lib/python3.13/unittest/main.py +280 -0
  1390. package/python/lib/python3.13/unittest/mock.py +3179 -0
  1391. package/python/lib/python3.13/unittest/result.py +256 -0
  1392. package/python/lib/python3.13/unittest/runner.py +292 -0
  1393. package/python/lib/python3.13/unittest/signals.py +71 -0
  1394. package/python/lib/python3.13/unittest/suite.py +379 -0
  1395. package/python/lib/python3.13/unittest/util.py +170 -0
  1396. package/python/lib/python3.13/urllib/__init__.py +0 -0
  1397. package/python/lib/python3.13/urllib/error.py +74 -0
  1398. package/python/lib/python3.13/urllib/parse.py +1262 -0
  1399. package/python/lib/python3.13/urllib/request.py +2797 -0
  1400. package/python/lib/python3.13/urllib/response.py +84 -0
  1401. package/python/lib/python3.13/urllib/robotparser.py +286 -0
  1402. package/python/lib/python3.13/uuid.py +784 -0
  1403. package/python/lib/python3.13/venv/__init__.py +687 -0
  1404. package/python/lib/python3.13/venv/__main__.py +10 -0
  1405. package/python/lib/python3.13/venv/scripts/common/Activate.ps1 +248 -0
  1406. package/python/lib/python3.13/venv/scripts/common/activate +76 -0
  1407. package/python/lib/python3.13/venv/scripts/common/activate.fish +69 -0
  1408. package/python/lib/python3.13/venv/scripts/posix/activate.csh +27 -0
  1409. package/python/lib/python3.13/warnings.py +735 -0
  1410. package/python/lib/python3.13/wave.py +665 -0
  1411. package/python/lib/python3.13/weakref.py +674 -0
  1412. package/python/lib/python3.13/webbrowser.py +710 -0
  1413. package/python/lib/python3.13/wsgiref/__init__.py +25 -0
  1414. package/python/lib/python3.13/wsgiref/handlers.py +573 -0
  1415. package/python/lib/python3.13/wsgiref/headers.py +187 -0
  1416. package/python/lib/python3.13/wsgiref/simple_server.py +161 -0
  1417. package/python/lib/python3.13/wsgiref/types.py +54 -0
  1418. package/python/lib/python3.13/wsgiref/util.py +159 -0
  1419. package/python/lib/python3.13/wsgiref/validate.py +438 -0
  1420. package/python/lib/python3.13/xml/__init__.py +20 -0
  1421. package/python/lib/python3.13/xml/dom/NodeFilter.py +27 -0
  1422. package/python/lib/python3.13/xml/dom/__init__.py +140 -0
  1423. package/python/lib/python3.13/xml/dom/domreg.py +99 -0
  1424. package/python/lib/python3.13/xml/dom/expatbuilder.py +962 -0
  1425. package/python/lib/python3.13/xml/dom/minicompat.py +109 -0
  1426. package/python/lib/python3.13/xml/dom/minidom.py +2024 -0
  1427. package/python/lib/python3.13/xml/dom/pulldom.py +336 -0
  1428. package/python/lib/python3.13/xml/dom/xmlbuilder.py +389 -0
  1429. package/python/lib/python3.13/xml/etree/ElementInclude.py +186 -0
  1430. package/python/lib/python3.13/xml/etree/ElementPath.py +423 -0
  1431. package/python/lib/python3.13/xml/etree/ElementTree.py +2098 -0
  1432. package/python/lib/python3.13/xml/etree/__init__.py +33 -0
  1433. package/python/lib/python3.13/xml/etree/cElementTree.py +3 -0
  1434. package/python/lib/python3.13/xml/parsers/__init__.py +8 -0
  1435. package/python/lib/python3.13/xml/parsers/expat.py +8 -0
  1436. package/python/lib/python3.13/xml/sax/__init__.py +94 -0
  1437. package/python/lib/python3.13/xml/sax/_exceptions.py +127 -0
  1438. package/python/lib/python3.13/xml/sax/expatreader.py +454 -0
  1439. package/python/lib/python3.13/xml/sax/handler.py +387 -0
  1440. package/python/lib/python3.13/xml/sax/saxutils.py +369 -0
  1441. package/python/lib/python3.13/xml/sax/xmlreader.py +378 -0
  1442. package/python/lib/python3.13/xmlrpc/__init__.py +1 -0
  1443. package/python/lib/python3.13/xmlrpc/client.py +1503 -0
  1444. package/python/lib/python3.13/xmlrpc/server.py +1002 -0
  1445. package/python/lib/python3.13/zipapp.py +229 -0
  1446. package/python/lib/python3.13/zipfile/__init__.py +2375 -0
  1447. package/python/lib/python3.13/zipfile/__main__.py +4 -0
  1448. package/python/lib/python3.13/zipfile/_path/__init__.py +452 -0
  1449. package/python/lib/python3.13/zipfile/_path/glob.py +113 -0
  1450. package/python/lib/python3.13/zipimport.py +803 -0
  1451. package/python/lib/python3.13/zoneinfo/__init__.py +34 -0
  1452. package/python/lib/python3.13/zoneinfo/_common.py +168 -0
  1453. package/python/lib/python3.13/zoneinfo/_tzpath.py +189 -0
  1454. package/python/lib/python3.13/zoneinfo/_zoneinfo.py +772 -0
  1455. package/python/lib/tcl9/9.0/http-2.10.1.tm +5475 -0
  1456. package/python/lib/tcl9/9.0/msgcat-1.7.1.tm +1349 -0
  1457. package/python/lib/tcl9/9.0/platform/shell-1.1.4.tm +241 -0
  1458. package/python/lib/tcl9/9.0/platform-1.1.0.tm +443 -0
  1459. package/python/lib/tcl9/9.0/tcltest-2.5.10.tm +3588 -0
  1460. package/python/lib/tcl9.0/auto.tcl +711 -0
  1461. package/python/lib/tcl9.0/clock.tcl +2110 -0
  1462. package/python/lib/tcl9.0/cookiejar0.2/cookiejar.tcl +746 -0
  1463. package/python/lib/tcl9.0/cookiejar0.2/idna.tcl +292 -0
  1464. package/python/lib/tcl9.0/cookiejar0.2/pkgIndex.tcl +3 -0
  1465. package/python/lib/tcl9.0/cookiejar0.2/public_suffix_list.dat.gz +0 -0
  1466. package/python/lib/tcl9.0/encoding/ascii.enc +20 -0
  1467. package/python/lib/tcl9.0/encoding/big5.enc +1516 -0
  1468. package/python/lib/tcl9.0/encoding/cns11643.enc +1584 -0
  1469. package/python/lib/tcl9.0/encoding/cp1250.enc +20 -0
  1470. package/python/lib/tcl9.0/encoding/cp1251.enc +20 -0
  1471. package/python/lib/tcl9.0/encoding/cp1252.enc +20 -0
  1472. package/python/lib/tcl9.0/encoding/cp1253.enc +20 -0
  1473. package/python/lib/tcl9.0/encoding/cp1254.enc +20 -0
  1474. package/python/lib/tcl9.0/encoding/cp1255.enc +20 -0
  1475. package/python/lib/tcl9.0/encoding/cp1256.enc +20 -0
  1476. package/python/lib/tcl9.0/encoding/cp1257.enc +20 -0
  1477. package/python/lib/tcl9.0/encoding/cp1258.enc +20 -0
  1478. package/python/lib/tcl9.0/encoding/cp165.enc +20 -0
  1479. package/python/lib/tcl9.0/encoding/cp437.enc +20 -0
  1480. package/python/lib/tcl9.0/encoding/cp737.enc +20 -0
  1481. package/python/lib/tcl9.0/encoding/cp775.enc +20 -0
  1482. package/python/lib/tcl9.0/encoding/cp850.enc +20 -0
  1483. package/python/lib/tcl9.0/encoding/cp852.enc +20 -0
  1484. package/python/lib/tcl9.0/encoding/cp855.enc +20 -0
  1485. package/python/lib/tcl9.0/encoding/cp857.enc +20 -0
  1486. package/python/lib/tcl9.0/encoding/cp860.enc +20 -0
  1487. package/python/lib/tcl9.0/encoding/cp861.enc +20 -0
  1488. package/python/lib/tcl9.0/encoding/cp862.enc +20 -0
  1489. package/python/lib/tcl9.0/encoding/cp863.enc +20 -0
  1490. package/python/lib/tcl9.0/encoding/cp864.enc +20 -0
  1491. package/python/lib/tcl9.0/encoding/cp865.enc +20 -0
  1492. package/python/lib/tcl9.0/encoding/cp866.enc +20 -0
  1493. package/python/lib/tcl9.0/encoding/cp869.enc +20 -0
  1494. package/python/lib/tcl9.0/encoding/cp874.enc +20 -0
  1495. package/python/lib/tcl9.0/encoding/cp932.enc +801 -0
  1496. package/python/lib/tcl9.0/encoding/cp936.enc +2162 -0
  1497. package/python/lib/tcl9.0/encoding/cp949.enc +2128 -0
  1498. package/python/lib/tcl9.0/encoding/cp950.enc +1499 -0
  1499. package/python/lib/tcl9.0/encoding/dingbats.enc +20 -0
  1500. package/python/lib/tcl9.0/encoding/ebcdic.enc +20 -0
  1501. package/python/lib/tcl9.0/encoding/euc-cn.enc +1397 -0
  1502. package/python/lib/tcl9.0/encoding/euc-jp.enc +1353 -0
  1503. package/python/lib/tcl9.0/encoding/euc-kr.enc +1533 -0
  1504. package/python/lib/tcl9.0/encoding/gb12345.enc +1414 -0
  1505. package/python/lib/tcl9.0/encoding/gb1988.enc +20 -0
  1506. package/python/lib/tcl9.0/encoding/gb2312-raw.enc +1380 -0
  1507. package/python/lib/tcl9.0/encoding/gb2312.enc +1397 -0
  1508. package/python/lib/tcl9.0/encoding/iso2022-jp.enc +12 -0
  1509. package/python/lib/tcl9.0/encoding/iso2022-kr.enc +7 -0
  1510. package/python/lib/tcl9.0/encoding/iso2022.enc +14 -0
  1511. package/python/lib/tcl9.0/encoding/iso8859-1.enc +20 -0
  1512. package/python/lib/tcl9.0/encoding/iso8859-10.enc +20 -0
  1513. package/python/lib/tcl9.0/encoding/iso8859-11.enc +20 -0
  1514. package/python/lib/tcl9.0/encoding/iso8859-13.enc +20 -0
  1515. package/python/lib/tcl9.0/encoding/iso8859-14.enc +20 -0
  1516. package/python/lib/tcl9.0/encoding/iso8859-15.enc +20 -0
  1517. package/python/lib/tcl9.0/encoding/iso8859-16.enc +20 -0
  1518. package/python/lib/tcl9.0/encoding/iso8859-2.enc +20 -0
  1519. package/python/lib/tcl9.0/encoding/iso8859-3.enc +20 -0
  1520. package/python/lib/tcl9.0/encoding/iso8859-4.enc +20 -0
  1521. package/python/lib/tcl9.0/encoding/iso8859-5.enc +20 -0
  1522. package/python/lib/tcl9.0/encoding/iso8859-6.enc +20 -0
  1523. package/python/lib/tcl9.0/encoding/iso8859-7.enc +20 -0
  1524. package/python/lib/tcl9.0/encoding/iso8859-8.enc +20 -0
  1525. package/python/lib/tcl9.0/encoding/iso8859-9.enc +20 -0
  1526. package/python/lib/tcl9.0/encoding/jis0201.enc +20 -0
  1527. package/python/lib/tcl9.0/encoding/jis0208.enc +1319 -0
  1528. package/python/lib/tcl9.0/encoding/jis0212.enc +1159 -0
  1529. package/python/lib/tcl9.0/encoding/koi8-r.enc +20 -0
  1530. package/python/lib/tcl9.0/encoding/koi8-ru.enc +20 -0
  1531. package/python/lib/tcl9.0/encoding/koi8-t.enc +20 -0
  1532. package/python/lib/tcl9.0/encoding/koi8-u.enc +20 -0
  1533. package/python/lib/tcl9.0/encoding/ksc5601.enc +1516 -0
  1534. package/python/lib/tcl9.0/encoding/macCentEuro.enc +20 -0
  1535. package/python/lib/tcl9.0/encoding/macCroatian.enc +20 -0
  1536. package/python/lib/tcl9.0/encoding/macCyrillic.enc +20 -0
  1537. package/python/lib/tcl9.0/encoding/macDingbats.enc +20 -0
  1538. package/python/lib/tcl9.0/encoding/macGreek.enc +20 -0
  1539. package/python/lib/tcl9.0/encoding/macIceland.enc +20 -0
  1540. package/python/lib/tcl9.0/encoding/macJapan.enc +785 -0
  1541. package/python/lib/tcl9.0/encoding/macRoman.enc +20 -0
  1542. package/python/lib/tcl9.0/encoding/macRomania.enc +20 -0
  1543. package/python/lib/tcl9.0/encoding/macThai.enc +20 -0
  1544. package/python/lib/tcl9.0/encoding/macTurkish.enc +20 -0
  1545. package/python/lib/tcl9.0/encoding/macUkraine.enc +20 -0
  1546. package/python/lib/tcl9.0/encoding/shiftjis.enc +690 -0
  1547. package/python/lib/tcl9.0/encoding/symbol.enc +20 -0
  1548. package/python/lib/tcl9.0/encoding/tis-620.enc +20 -0
  1549. package/python/lib/tcl9.0/foreachline.tcl +25 -0
  1550. package/python/lib/tcl9.0/history.tcl +335 -0
  1551. package/python/lib/tcl9.0/icu.tcl +145 -0
  1552. package/python/lib/tcl9.0/init.tcl +773 -0
  1553. package/python/lib/tcl9.0/install.tcl +275 -0
  1554. package/python/lib/tcl9.0/msgs/af.msg +49 -0
  1555. package/python/lib/tcl9.0/msgs/af_za.msg +6 -0
  1556. package/python/lib/tcl9.0/msgs/ar.msg +54 -0
  1557. package/python/lib/tcl9.0/msgs/ar_in.msg +6 -0
  1558. package/python/lib/tcl9.0/msgs/ar_jo.msg +39 -0
  1559. package/python/lib/tcl9.0/msgs/ar_lb.msg +39 -0
  1560. package/python/lib/tcl9.0/msgs/ar_sy.msg +39 -0
  1561. package/python/lib/tcl9.0/msgs/be.msg +52 -0
  1562. package/python/lib/tcl9.0/msgs/bg.msg +52 -0
  1563. package/python/lib/tcl9.0/msgs/bn.msg +49 -0
  1564. package/python/lib/tcl9.0/msgs/bn_in.msg +6 -0
  1565. package/python/lib/tcl9.0/msgs/ca.msg +50 -0
  1566. package/python/lib/tcl9.0/msgs/cs.msg +54 -0
  1567. package/python/lib/tcl9.0/msgs/da.msg +52 -0
  1568. package/python/lib/tcl9.0/msgs/de.msg +54 -0
  1569. package/python/lib/tcl9.0/msgs/de_at.msg +35 -0
  1570. package/python/lib/tcl9.0/msgs/de_be.msg +53 -0
  1571. package/python/lib/tcl9.0/msgs/el.msg +52 -0
  1572. package/python/lib/tcl9.0/msgs/en_au.msg +7 -0
  1573. package/python/lib/tcl9.0/msgs/en_be.msg +7 -0
  1574. package/python/lib/tcl9.0/msgs/en_bw.msg +6 -0
  1575. package/python/lib/tcl9.0/msgs/en_ca.msg +7 -0
  1576. package/python/lib/tcl9.0/msgs/en_gb.msg +7 -0
  1577. package/python/lib/tcl9.0/msgs/en_hk.msg +8 -0
  1578. package/python/lib/tcl9.0/msgs/en_ie.msg +7 -0
  1579. package/python/lib/tcl9.0/msgs/en_in.msg +8 -0
  1580. package/python/lib/tcl9.0/msgs/en_nz.msg +7 -0
  1581. package/python/lib/tcl9.0/msgs/en_ph.msg +8 -0
  1582. package/python/lib/tcl9.0/msgs/en_sg.msg +6 -0
  1583. package/python/lib/tcl9.0/msgs/en_za.msg +6 -0
  1584. package/python/lib/tcl9.0/msgs/en_zw.msg +6 -0
  1585. package/python/lib/tcl9.0/msgs/eo.msg +54 -0
  1586. package/python/lib/tcl9.0/msgs/es.msg +52 -0
  1587. package/python/lib/tcl9.0/msgs/es_ar.msg +6 -0
  1588. package/python/lib/tcl9.0/msgs/es_bo.msg +6 -0
  1589. package/python/lib/tcl9.0/msgs/es_cl.msg +6 -0
  1590. package/python/lib/tcl9.0/msgs/es_co.msg +6 -0
  1591. package/python/lib/tcl9.0/msgs/es_cr.msg +6 -0
  1592. package/python/lib/tcl9.0/msgs/es_do.msg +6 -0
  1593. package/python/lib/tcl9.0/msgs/es_ec.msg +6 -0
  1594. package/python/lib/tcl9.0/msgs/es_gt.msg +6 -0
  1595. package/python/lib/tcl9.0/msgs/es_hn.msg +6 -0
  1596. package/python/lib/tcl9.0/msgs/es_mx.msg +6 -0
  1597. package/python/lib/tcl9.0/msgs/es_ni.msg +6 -0
  1598. package/python/lib/tcl9.0/msgs/es_pa.msg +6 -0
  1599. package/python/lib/tcl9.0/msgs/es_pe.msg +6 -0
  1600. package/python/lib/tcl9.0/msgs/es_pr.msg +6 -0
  1601. package/python/lib/tcl9.0/msgs/es_py.msg +6 -0
  1602. package/python/lib/tcl9.0/msgs/es_sv.msg +6 -0
  1603. package/python/lib/tcl9.0/msgs/es_uy.msg +6 -0
  1604. package/python/lib/tcl9.0/msgs/es_ve.msg +6 -0
  1605. package/python/lib/tcl9.0/msgs/et.msg +52 -0
  1606. package/python/lib/tcl9.0/msgs/eu.msg +47 -0
  1607. package/python/lib/tcl9.0/msgs/eu_es.msg +7 -0
  1608. package/python/lib/tcl9.0/msgs/fa.msg +47 -0
  1609. package/python/lib/tcl9.0/msgs/fa_in.msg +52 -0
  1610. package/python/lib/tcl9.0/msgs/fa_ir.msg +9 -0
  1611. package/python/lib/tcl9.0/msgs/fi.msg +50 -0
  1612. package/python/lib/tcl9.0/msgs/fo.msg +47 -0
  1613. package/python/lib/tcl9.0/msgs/fo_fo.msg +7 -0
  1614. package/python/lib/tcl9.0/msgs/fr.msg +52 -0
  1615. package/python/lib/tcl9.0/msgs/fr_be.msg +7 -0
  1616. package/python/lib/tcl9.0/msgs/fr_ca.msg +7 -0
  1617. package/python/lib/tcl9.0/msgs/fr_ch.msg +7 -0
  1618. package/python/lib/tcl9.0/msgs/ga.msg +47 -0
  1619. package/python/lib/tcl9.0/msgs/ga_ie.msg +7 -0
  1620. package/python/lib/tcl9.0/msgs/gl.msg +47 -0
  1621. package/python/lib/tcl9.0/msgs/gl_es.msg +6 -0
  1622. package/python/lib/tcl9.0/msgs/gv.msg +47 -0
  1623. package/python/lib/tcl9.0/msgs/gv_gb.msg +6 -0
  1624. package/python/lib/tcl9.0/msgs/he.msg +52 -0
  1625. package/python/lib/tcl9.0/msgs/hi.msg +39 -0
  1626. package/python/lib/tcl9.0/msgs/hi_in.msg +6 -0
  1627. package/python/lib/tcl9.0/msgs/hr.msg +50 -0
  1628. package/python/lib/tcl9.0/msgs/hu.msg +54 -0
  1629. package/python/lib/tcl9.0/msgs/id.msg +47 -0
  1630. package/python/lib/tcl9.0/msgs/id_id.msg +6 -0
  1631. package/python/lib/tcl9.0/msgs/is.msg +50 -0
  1632. package/python/lib/tcl9.0/msgs/it.msg +54 -0
  1633. package/python/lib/tcl9.0/msgs/it_ch.msg +6 -0
  1634. package/python/lib/tcl9.0/msgs/ja.msg +44 -0
  1635. package/python/lib/tcl9.0/msgs/kl.msg +47 -0
  1636. package/python/lib/tcl9.0/msgs/kl_gl.msg +7 -0
  1637. package/python/lib/tcl9.0/msgs/ko.msg +55 -0
  1638. package/python/lib/tcl9.0/msgs/ko_kr.msg +8 -0
  1639. package/python/lib/tcl9.0/msgs/kok.msg +39 -0
  1640. package/python/lib/tcl9.0/msgs/kok_in.msg +6 -0
  1641. package/python/lib/tcl9.0/msgs/kw.msg +47 -0
  1642. package/python/lib/tcl9.0/msgs/kw_gb.msg +6 -0
  1643. package/python/lib/tcl9.0/msgs/lt.msg +52 -0
  1644. package/python/lib/tcl9.0/msgs/lv.msg +52 -0
  1645. package/python/lib/tcl9.0/msgs/mk.msg +52 -0
  1646. package/python/lib/tcl9.0/msgs/mr.msg +39 -0
  1647. package/python/lib/tcl9.0/msgs/mr_in.msg +6 -0
  1648. package/python/lib/tcl9.0/msgs/ms.msg +47 -0
  1649. package/python/lib/tcl9.0/msgs/ms_my.msg +6 -0
  1650. package/python/lib/tcl9.0/msgs/mt.msg +27 -0
  1651. package/python/lib/tcl9.0/msgs/nb.msg +52 -0
  1652. package/python/lib/tcl9.0/msgs/nl.msg +50 -0
  1653. package/python/lib/tcl9.0/msgs/nl_be.msg +7 -0
  1654. package/python/lib/tcl9.0/msgs/nn.msg +52 -0
  1655. package/python/lib/tcl9.0/msgs/pl.msg +52 -0
  1656. package/python/lib/tcl9.0/msgs/pt.msg +50 -0
  1657. package/python/lib/tcl9.0/msgs/pt_br.msg +7 -0
  1658. package/python/lib/tcl9.0/msgs/ro.msg +52 -0
  1659. package/python/lib/tcl9.0/msgs/ru.msg +52 -0
  1660. package/python/lib/tcl9.0/msgs/ru_ua.msg +6 -0
  1661. package/python/lib/tcl9.0/msgs/sh.msg +52 -0
  1662. package/python/lib/tcl9.0/msgs/sk.msg +52 -0
  1663. package/python/lib/tcl9.0/msgs/sl.msg +52 -0
  1664. package/python/lib/tcl9.0/msgs/sq.msg +54 -0
  1665. package/python/lib/tcl9.0/msgs/sr.msg +52 -0
  1666. package/python/lib/tcl9.0/msgs/sv.msg +52 -0
  1667. package/python/lib/tcl9.0/msgs/sw.msg +49 -0
  1668. package/python/lib/tcl9.0/msgs/ta.msg +39 -0
  1669. package/python/lib/tcl9.0/msgs/ta_in.msg +6 -0
  1670. package/python/lib/tcl9.0/msgs/te.msg +47 -0
  1671. package/python/lib/tcl9.0/msgs/te_in.msg +8 -0
  1672. package/python/lib/tcl9.0/msgs/th.msg +54 -0
  1673. package/python/lib/tcl9.0/msgs/tr.msg +50 -0
  1674. package/python/lib/tcl9.0/msgs/uk.msg +52 -0
  1675. package/python/lib/tcl9.0/msgs/vi.msg +50 -0
  1676. package/python/lib/tcl9.0/msgs/zh.msg +55 -0
  1677. package/python/lib/tcl9.0/msgs/zh_cn.msg +7 -0
  1678. package/python/lib/tcl9.0/msgs/zh_hk.msg +28 -0
  1679. package/python/lib/tcl9.0/msgs/zh_sg.msg +8 -0
  1680. package/python/lib/tcl9.0/msgs/zh_tw.msg +8 -0
  1681. package/python/lib/tcl9.0/opt0.4/optparse.tcl +1069 -0
  1682. package/python/lib/tcl9.0/opt0.4/pkgIndex.tcl +12 -0
  1683. package/python/lib/tcl9.0/package.tcl +767 -0
  1684. package/python/lib/tcl9.0/parray.tcl +28 -0
  1685. package/python/lib/tcl9.0/readfile.tcl +23 -0
  1686. package/python/lib/tcl9.0/safe.tcl +1461 -0
  1687. package/python/lib/tcl9.0/tclAppInit.c +183 -0
  1688. package/python/lib/tcl9.0/tclIndex +112 -0
  1689. package/python/lib/tcl9.0/tm.tcl +378 -0
  1690. package/python/lib/tcl9.0/word.tcl +155 -0
  1691. package/python/lib/tcl9.0/writefile.tcl +37 -0
  1692. package/python/lib/thread3.0.4/libtcl9thread3.0.4.dylib +0 -0
  1693. package/python/lib/thread3.0.4/libthread3.0.4.dylib +0 -0
  1694. package/python/lib/thread3.0.4/pkgIndex.tcl +52 -0
  1695. package/python/lib/thread3.0.4/ttrace.tcl +943 -0
  1696. package/python/lib/tk9.0/bgerror.tcl +282 -0
  1697. package/python/lib/tk9.0/button.tcl +782 -0
  1698. package/python/lib/tk9.0/choosedir.tcl +310 -0
  1699. package/python/lib/tk9.0/clrpick.tcl +696 -0
  1700. package/python/lib/tk9.0/comdlg.tcl +322 -0
  1701. package/python/lib/tk9.0/console.tcl +1148 -0
  1702. package/python/lib/tk9.0/demos/README +44 -0
  1703. package/python/lib/tk9.0/demos/anilabel.tcl +168 -0
  1704. package/python/lib/tk9.0/demos/aniwave.tcl +107 -0
  1705. package/python/lib/tk9.0/demos/arrow.tcl +260 -0
  1706. package/python/lib/tk9.0/demos/bind.tcl +78 -0
  1707. package/python/lib/tk9.0/demos/bitmap.tcl +52 -0
  1708. package/python/lib/tk9.0/demos/browse +66 -0
  1709. package/python/lib/tk9.0/demos/button.tcl +47 -0
  1710. package/python/lib/tk9.0/demos/check.tcl +71 -0
  1711. package/python/lib/tk9.0/demos/clrpick.tcl +54 -0
  1712. package/python/lib/tk9.0/demos/colors.tcl +99 -0
  1713. package/python/lib/tk9.0/demos/combo.tcl +62 -0
  1714. package/python/lib/tk9.0/demos/cscroll.tcl +134 -0
  1715. package/python/lib/tk9.0/demos/ctext.tcl +172 -0
  1716. package/python/lib/tk9.0/demos/dialog1.tcl +25 -0
  1717. package/python/lib/tk9.0/demos/dialog2.tcl +18 -0
  1718. package/python/lib/tk9.0/demos/en.msg +103 -0
  1719. package/python/lib/tk9.0/demos/entry1.tcl +34 -0
  1720. package/python/lib/tk9.0/demos/entry2.tcl +47 -0
  1721. package/python/lib/tk9.0/demos/entry3.tcl +185 -0
  1722. package/python/lib/tk9.0/demos/filebox.tcl +82 -0
  1723. package/python/lib/tk9.0/demos/floor.tcl +1379 -0
  1724. package/python/lib/tk9.0/demos/fontchoose.tcl +67 -0
  1725. package/python/lib/tk9.0/demos/form.tcl +38 -0
  1726. package/python/lib/tk9.0/demos/goldberg.tcl +1970 -0
  1727. package/python/lib/tk9.0/demos/hello +22 -0
  1728. package/python/lib/tk9.0/demos/hscale.tcl +49 -0
  1729. package/python/lib/tk9.0/demos/icon.tcl +51 -0
  1730. package/python/lib/tk9.0/demos/image1.tcl +44 -0
  1731. package/python/lib/tk9.0/demos/image2.tcl +114 -0
  1732. package/python/lib/tk9.0/demos/images/Tcl.svg +75 -0
  1733. package/python/lib/tk9.0/demos/images/Tk_feather.png +0 -0
  1734. package/python/lib/tk9.0/demos/images/earth.gif +0 -0
  1735. package/python/lib/tk9.0/demos/images/earthmenu.png +0 -0
  1736. package/python/lib/tk9.0/demos/images/earthris.gif +0 -0
  1737. package/python/lib/tk9.0/demos/images/flagdown.xbm +27 -0
  1738. package/python/lib/tk9.0/demos/images/flagup.xbm +27 -0
  1739. package/python/lib/tk9.0/demos/images/gray25.xbm +6 -0
  1740. package/python/lib/tk9.0/demos/images/letters.xbm +27 -0
  1741. package/python/lib/tk9.0/demos/images/noletter.xbm +27 -0
  1742. package/python/lib/tk9.0/demos/images/ouster.png +0 -0
  1743. package/python/lib/tk9.0/demos/images/pattern.xbm +6 -0
  1744. package/python/lib/tk9.0/demos/images/plowed_field.png +0 -0
  1745. package/python/lib/tk9.0/demos/images/starry_night.png +0 -0
  1746. package/python/lib/tk9.0/demos/images/tcllogo.gif +0 -0
  1747. package/python/lib/tk9.0/demos/images/teapot.ppm +31 -0
  1748. package/python/lib/tk9.0/demos/items.tcl +307 -0
  1749. package/python/lib/tk9.0/demos/ixset +328 -0
  1750. package/python/lib/tk9.0/demos/knightstour.tcl +274 -0
  1751. package/python/lib/tk9.0/demos/label.tcl +47 -0
  1752. package/python/lib/tk9.0/demos/labelframe.tcl +76 -0
  1753. package/python/lib/tk9.0/demos/license.terms +40 -0
  1754. package/python/lib/tk9.0/demos/mac_styles.tcl +266 -0
  1755. package/python/lib/tk9.0/demos/mac_tabs.tcl +76 -0
  1756. package/python/lib/tk9.0/demos/mac_wm.tcl +227 -0
  1757. package/python/lib/tk9.0/demos/mclist.tcl +170 -0
  1758. package/python/lib/tk9.0/demos/menu.tcl +184 -0
  1759. package/python/lib/tk9.0/demos/menubu.tcl +90 -0
  1760. package/python/lib/tk9.0/demos/msgbox.tcl +62 -0
  1761. package/python/lib/tk9.0/demos/nl.msg +132 -0
  1762. package/python/lib/tk9.0/demos/paned1.tcl +32 -0
  1763. package/python/lib/tk9.0/demos/paned2.tcl +74 -0
  1764. package/python/lib/tk9.0/demos/pendulum.tcl +206 -0
  1765. package/python/lib/tk9.0/demos/plot.tcl +97 -0
  1766. package/python/lib/tk9.0/demos/print.tcl +91 -0
  1767. package/python/lib/tk9.0/demos/puzzle.tcl +82 -0
  1768. package/python/lib/tk9.0/demos/radio.tcl +66 -0
  1769. package/python/lib/tk9.0/demos/rmt +210 -0
  1770. package/python/lib/tk9.0/demos/rolodex +204 -0
  1771. package/python/lib/tk9.0/demos/ruler.tcl +175 -0
  1772. package/python/lib/tk9.0/demos/sayings.tcl +44 -0
  1773. package/python/lib/tk9.0/demos/search.tcl +139 -0
  1774. package/python/lib/tk9.0/demos/spin.tcl +45 -0
  1775. package/python/lib/tk9.0/demos/states.tcl +54 -0
  1776. package/python/lib/tk9.0/demos/style.tcl +155 -0
  1777. package/python/lib/tk9.0/demos/systray.tcl +89 -0
  1778. package/python/lib/tk9.0/demos/tclIndex +70 -0
  1779. package/python/lib/tk9.0/demos/tcolor +358 -0
  1780. package/python/lib/tk9.0/demos/text.tcl +113 -0
  1781. package/python/lib/tk9.0/demos/textpeer.tcl +62 -0
  1782. package/python/lib/tk9.0/demos/timer +47 -0
  1783. package/python/lib/tk9.0/demos/toolbar.tcl +92 -0
  1784. package/python/lib/tk9.0/demos/tree.tcl +89 -0
  1785. package/python/lib/tk9.0/demos/ttkbut.tcl +84 -0
  1786. package/python/lib/tk9.0/demos/ttkmenu.tcl +53 -0
  1787. package/python/lib/tk9.0/demos/ttknote.tcl +57 -0
  1788. package/python/lib/tk9.0/demos/ttkpane.tcl +112 -0
  1789. package/python/lib/tk9.0/demos/ttkprogress.tcl +46 -0
  1790. package/python/lib/tk9.0/demos/ttkscale.tcl +39 -0
  1791. package/python/lib/tk9.0/demos/ttkspin.tcl +49 -0
  1792. package/python/lib/tk9.0/demos/twind.tcl +358 -0
  1793. package/python/lib/tk9.0/demos/unicodeout.tcl +126 -0
  1794. package/python/lib/tk9.0/demos/vscale.tcl +50 -0
  1795. package/python/lib/tk9.0/demos/widget +713 -0
  1796. package/python/lib/tk9.0/demos/windowicons.tcl +108 -0
  1797. package/python/lib/tk9.0/dialog.tcl +175 -0
  1798. package/python/lib/tk9.0/entry.tcl +720 -0
  1799. package/python/lib/tk9.0/focus.tcl +178 -0
  1800. package/python/lib/tk9.0/fontchooser.tcl +512 -0
  1801. package/python/lib/tk9.0/iconbadges.tcl +253 -0
  1802. package/python/lib/tk9.0/iconlist.tcl +705 -0
  1803. package/python/lib/tk9.0/icons.tcl +54 -0
  1804. package/python/lib/tk9.0/images/README +7 -0
  1805. package/python/lib/tk9.0/images/logo.eps +2091 -0
  1806. package/python/lib/tk9.0/images/logo100.gif +0 -0
  1807. package/python/lib/tk9.0/images/logo64.gif +0 -0
  1808. package/python/lib/tk9.0/images/logoLarge.gif +0 -0
  1809. package/python/lib/tk9.0/images/logoMed.gif +0 -0
  1810. package/python/lib/tk9.0/images/pwrdLogo.eps +1897 -0
  1811. package/python/lib/tk9.0/images/pwrdLogo100.gif +0 -0
  1812. package/python/lib/tk9.0/images/pwrdLogo150.gif +0 -0
  1813. package/python/lib/tk9.0/images/pwrdLogo175.gif +0 -0
  1814. package/python/lib/tk9.0/images/pwrdLogo200.gif +0 -0
  1815. package/python/lib/tk9.0/images/pwrdLogo75.gif +0 -0
  1816. package/python/lib/tk9.0/images/tai-ku.gif +0 -0
  1817. package/python/lib/tk9.0/listbox.tcl +522 -0
  1818. package/python/lib/tk9.0/megawidget.tcl +297 -0
  1819. package/python/lib/tk9.0/menu.tcl +1376 -0
  1820. package/python/lib/tk9.0/mkpsenc.tcl +1488 -0
  1821. package/python/lib/tk9.0/msgbox.tcl +454 -0
  1822. package/python/lib/tk9.0/msgs/cs.msg +95 -0
  1823. package/python/lib/tk9.0/msgs/da.msg +96 -0
  1824. package/python/lib/tk9.0/msgs/de.msg +109 -0
  1825. package/python/lib/tk9.0/msgs/el.msg +104 -0
  1826. package/python/lib/tk9.0/msgs/en.msg +110 -0
  1827. package/python/lib/tk9.0/msgs/en_gb.msg +3 -0
  1828. package/python/lib/tk9.0/msgs/eo.msg +93 -0
  1829. package/python/lib/tk9.0/msgs/es.msg +94 -0
  1830. package/python/lib/tk9.0/msgs/fi.msg +114 -0
  1831. package/python/lib/tk9.0/msgs/fr.msg +90 -0
  1832. package/python/lib/tk9.0/msgs/hu.msg +96 -0
  1833. package/python/lib/tk9.0/msgs/it.msg +91 -0
  1834. package/python/lib/tk9.0/msgs/nl.msg +109 -0
  1835. package/python/lib/tk9.0/msgs/pl.msg +109 -0
  1836. package/python/lib/tk9.0/msgs/pt.msg +92 -0
  1837. package/python/lib/tk9.0/msgs/ru.msg +112 -0
  1838. package/python/lib/tk9.0/msgs/sv.msg +94 -0
  1839. package/python/lib/tk9.0/msgs/zh_cn.msg +111 -0
  1840. package/python/lib/tk9.0/optMenu.tcl +43 -0
  1841. package/python/lib/tk9.0/palette.tcl +283 -0
  1842. package/python/lib/tk9.0/panedwindow.tcl +194 -0
  1843. package/python/lib/tk9.0/pkgIndex.tcl +3 -0
  1844. package/python/lib/tk9.0/print.tcl +1460 -0
  1845. package/python/lib/tk9.0/safetk.tcl +262 -0
  1846. package/python/lib/tk9.0/scale.tcl +299 -0
  1847. package/python/lib/tk9.0/scaling.tcl +232 -0
  1848. package/python/lib/tk9.0/scrlbar.tcl +500 -0
  1849. package/python/lib/tk9.0/spinbox.tcl +580 -0
  1850. package/python/lib/tk9.0/systray.tcl +483 -0
  1851. package/python/lib/tk9.0/tclIndex +252 -0
  1852. package/python/lib/tk9.0/tearoff.tcl +155 -0
  1853. package/python/lib/tk9.0/text.tcl +1295 -0
  1854. package/python/lib/tk9.0/tk.tcl +853 -0
  1855. package/python/lib/tk9.0/tkAppInit.c +200 -0
  1856. package/python/lib/tk9.0/tkfbox.tcl +1251 -0
  1857. package/python/lib/tk9.0/ttk/altTheme.tcl +153 -0
  1858. package/python/lib/tk9.0/ttk/aquaTheme.tcl +178 -0
  1859. package/python/lib/tk9.0/ttk/button.tcl +83 -0
  1860. package/python/lib/tk9.0/ttk/clamTheme.tcl +196 -0
  1861. package/python/lib/tk9.0/ttk/classicTheme.tcl +145 -0
  1862. package/python/lib/tk9.0/ttk/combobox.tcl +555 -0
  1863. package/python/lib/tk9.0/ttk/cursors.tcl +205 -0
  1864. package/python/lib/tk9.0/ttk/defaults.tcl +231 -0
  1865. package/python/lib/tk9.0/ttk/entry.tcl +678 -0
  1866. package/python/lib/tk9.0/ttk/fonts.tcl +152 -0
  1867. package/python/lib/tk9.0/ttk/menubutton.tcl +237 -0
  1868. package/python/lib/tk9.0/ttk/notebook.tcl +255 -0
  1869. package/python/lib/tk9.0/ttk/panedwindow.tcl +89 -0
  1870. package/python/lib/tk9.0/ttk/progress.tcl +55 -0
  1871. package/python/lib/tk9.0/ttk/scale.tcl +94 -0
  1872. package/python/lib/tk9.0/ttk/scrollbar.tcl +119 -0
  1873. package/python/lib/tk9.0/ttk/sizegrip.tcl +102 -0
  1874. package/python/lib/tk9.0/ttk/spinbox.tcl +204 -0
  1875. package/python/lib/tk9.0/ttk/treeview.tcl +464 -0
  1876. package/python/lib/tk9.0/ttk/ttk.tcl +223 -0
  1877. package/python/lib/tk9.0/ttk/utils.tcl +317 -0
  1878. package/python/lib/tk9.0/ttk/vistaTheme.tcl +259 -0
  1879. package/python/lib/tk9.0/ttk/winTheme.tcl +119 -0
  1880. package/python/lib/tk9.0/ttk/xpTheme.tcl +95 -0
  1881. package/python/lib/tk9.0/xmfbox.tcl +982 -0
  1882. package/python/share/man/man1/python3.13.1 +740 -0
  1883. package/runtime-manifest.json +7 -0
@@ -0,0 +1,2024 @@
1
+ """Simple implementation of the Level 1 DOM.
2
+
3
+ Namespaces and other minor Level 2 features are also supported.
4
+
5
+ parse("foo.xml")
6
+
7
+ parseString("<foo><bar/></foo>")
8
+
9
+ Todo:
10
+ =====
11
+ * convenience methods for getting elements and text.
12
+ * more testing
13
+ * bring some of the writer and linearizer code into conformance with this
14
+ interface
15
+ * SAX 2 namespaces
16
+ """
17
+
18
+ import io
19
+ import xml.dom
20
+
21
+ from xml.dom import EMPTY_NAMESPACE, EMPTY_PREFIX, XMLNS_NAMESPACE, domreg
22
+ from xml.dom.minicompat import *
23
+ from xml.dom.xmlbuilder import DOMImplementationLS, DocumentLS
24
+
25
+ # This is used by the ID-cache invalidation checks; the list isn't
26
+ # actually complete, since the nodes being checked will never be the
27
+ # DOCUMENT_NODE or DOCUMENT_FRAGMENT_NODE. (The node being checked is
28
+ # the node being added or removed, not the node being modified.)
29
+ #
30
+ _nodeTypes_with_children = (xml.dom.Node.ELEMENT_NODE,
31
+ xml.dom.Node.ENTITY_REFERENCE_NODE)
32
+
33
+
34
+ class Node(xml.dom.Node):
35
+ namespaceURI = None # this is non-null only for elements and attributes
36
+ parentNode = None
37
+ ownerDocument = None
38
+ nextSibling = None
39
+ previousSibling = None
40
+
41
+ prefix = EMPTY_PREFIX # non-null only for NS elements and attributes
42
+
43
+ def __bool__(self):
44
+ return True
45
+
46
+ def toxml(self, encoding=None, standalone=None):
47
+ return self.toprettyxml("", "", encoding, standalone)
48
+
49
+ def toprettyxml(self, indent="\t", newl="\n", encoding=None,
50
+ standalone=None):
51
+ if encoding is None:
52
+ writer = io.StringIO()
53
+ else:
54
+ writer = io.TextIOWrapper(io.BytesIO(),
55
+ encoding=encoding,
56
+ errors="xmlcharrefreplace",
57
+ newline='\n')
58
+ if self.nodeType == Node.DOCUMENT_NODE:
59
+ # Can pass encoding only to document, to put it into XML header
60
+ self.writexml(writer, "", indent, newl, encoding, standalone)
61
+ else:
62
+ self.writexml(writer, "", indent, newl)
63
+ if encoding is None:
64
+ return writer.getvalue()
65
+ else:
66
+ return writer.detach().getvalue()
67
+
68
+ def hasChildNodes(self):
69
+ return bool(self.childNodes)
70
+
71
+ def _get_childNodes(self):
72
+ return self.childNodes
73
+
74
+ def _get_firstChild(self):
75
+ if self.childNodes:
76
+ return self.childNodes[0]
77
+
78
+ def _get_lastChild(self):
79
+ if self.childNodes:
80
+ return self.childNodes[-1]
81
+
82
+ def insertBefore(self, newChild, refChild):
83
+ if newChild.nodeType == self.DOCUMENT_FRAGMENT_NODE:
84
+ for c in tuple(newChild.childNodes):
85
+ self.insertBefore(c, refChild)
86
+ ### The DOM does not clearly specify what to return in this case
87
+ return newChild
88
+ if newChild.nodeType not in self._child_node_types:
89
+ raise xml.dom.HierarchyRequestErr(
90
+ "%s cannot be child of %s" % (repr(newChild), repr(self)))
91
+ if newChild.parentNode is not None:
92
+ newChild.parentNode.removeChild(newChild)
93
+ if refChild is None:
94
+ self.appendChild(newChild)
95
+ else:
96
+ try:
97
+ index = self.childNodes.index(refChild)
98
+ except ValueError:
99
+ raise xml.dom.NotFoundErr()
100
+ if newChild.nodeType in _nodeTypes_with_children:
101
+ _clear_id_cache(self)
102
+ self.childNodes.insert(index, newChild)
103
+ newChild.nextSibling = refChild
104
+ refChild.previousSibling = newChild
105
+ if index:
106
+ node = self.childNodes[index-1]
107
+ node.nextSibling = newChild
108
+ newChild.previousSibling = node
109
+ else:
110
+ newChild.previousSibling = None
111
+ newChild.parentNode = self
112
+ return newChild
113
+
114
+ def appendChild(self, node):
115
+ if node.nodeType == self.DOCUMENT_FRAGMENT_NODE:
116
+ for c in tuple(node.childNodes):
117
+ self.appendChild(c)
118
+ ### The DOM does not clearly specify what to return in this case
119
+ return node
120
+ if node.nodeType not in self._child_node_types:
121
+ raise xml.dom.HierarchyRequestErr(
122
+ "%s cannot be child of %s" % (repr(node), repr(self)))
123
+ elif node.nodeType in _nodeTypes_with_children:
124
+ _clear_id_cache(self)
125
+ if node.parentNode is not None:
126
+ node.parentNode.removeChild(node)
127
+ _append_child(self, node)
128
+ node.nextSibling = None
129
+ return node
130
+
131
+ def replaceChild(self, newChild, oldChild):
132
+ if newChild.nodeType == self.DOCUMENT_FRAGMENT_NODE:
133
+ refChild = oldChild.nextSibling
134
+ self.removeChild(oldChild)
135
+ return self.insertBefore(newChild, refChild)
136
+ if newChild.nodeType not in self._child_node_types:
137
+ raise xml.dom.HierarchyRequestErr(
138
+ "%s cannot be child of %s" % (repr(newChild), repr(self)))
139
+ if newChild is oldChild:
140
+ return
141
+ if newChild.parentNode is not None:
142
+ newChild.parentNode.removeChild(newChild)
143
+ try:
144
+ index = self.childNodes.index(oldChild)
145
+ except ValueError:
146
+ raise xml.dom.NotFoundErr()
147
+ self.childNodes[index] = newChild
148
+ newChild.parentNode = self
149
+ oldChild.parentNode = None
150
+ if (newChild.nodeType in _nodeTypes_with_children
151
+ or oldChild.nodeType in _nodeTypes_with_children):
152
+ _clear_id_cache(self)
153
+ newChild.nextSibling = oldChild.nextSibling
154
+ newChild.previousSibling = oldChild.previousSibling
155
+ oldChild.nextSibling = None
156
+ oldChild.previousSibling = None
157
+ if newChild.previousSibling:
158
+ newChild.previousSibling.nextSibling = newChild
159
+ if newChild.nextSibling:
160
+ newChild.nextSibling.previousSibling = newChild
161
+ return oldChild
162
+
163
+ def removeChild(self, oldChild):
164
+ try:
165
+ self.childNodes.remove(oldChild)
166
+ except ValueError:
167
+ raise xml.dom.NotFoundErr()
168
+ if oldChild.nextSibling is not None:
169
+ oldChild.nextSibling.previousSibling = oldChild.previousSibling
170
+ if oldChild.previousSibling is not None:
171
+ oldChild.previousSibling.nextSibling = oldChild.nextSibling
172
+ oldChild.nextSibling = oldChild.previousSibling = None
173
+ if oldChild.nodeType in _nodeTypes_with_children:
174
+ _clear_id_cache(self)
175
+
176
+ oldChild.parentNode = None
177
+ return oldChild
178
+
179
+ def normalize(self):
180
+ L = []
181
+ for child in self.childNodes:
182
+ if child.nodeType == Node.TEXT_NODE:
183
+ if not child.data:
184
+ # empty text node; discard
185
+ if L:
186
+ L[-1].nextSibling = child.nextSibling
187
+ if child.nextSibling:
188
+ child.nextSibling.previousSibling = child.previousSibling
189
+ child.unlink()
190
+ elif L and L[-1].nodeType == child.nodeType:
191
+ # collapse text node
192
+ node = L[-1]
193
+ node.data = node.data + child.data
194
+ node.nextSibling = child.nextSibling
195
+ if child.nextSibling:
196
+ child.nextSibling.previousSibling = node
197
+ child.unlink()
198
+ else:
199
+ L.append(child)
200
+ else:
201
+ L.append(child)
202
+ if child.nodeType == Node.ELEMENT_NODE:
203
+ child.normalize()
204
+ self.childNodes[:] = L
205
+
206
+ def cloneNode(self, deep):
207
+ return _clone_node(self, deep, self.ownerDocument or self)
208
+
209
+ def isSupported(self, feature, version):
210
+ return self.ownerDocument.implementation.hasFeature(feature, version)
211
+
212
+ def _get_localName(self):
213
+ # Overridden in Element and Attr where localName can be Non-Null
214
+ return None
215
+
216
+ # Node interfaces from Level 3 (WD 9 April 2002)
217
+
218
+ def isSameNode(self, other):
219
+ return self is other
220
+
221
+ def getInterface(self, feature):
222
+ if self.isSupported(feature, None):
223
+ return self
224
+ else:
225
+ return None
226
+
227
+ # The "user data" functions use a dictionary that is only present
228
+ # if some user data has been set, so be careful not to assume it
229
+ # exists.
230
+
231
+ def getUserData(self, key):
232
+ try:
233
+ return self._user_data[key][0]
234
+ except (AttributeError, KeyError):
235
+ return None
236
+
237
+ def setUserData(self, key, data, handler):
238
+ old = None
239
+ try:
240
+ d = self._user_data
241
+ except AttributeError:
242
+ d = {}
243
+ self._user_data = d
244
+ if key in d:
245
+ old = d[key][0]
246
+ if data is None:
247
+ # ignore handlers passed for None
248
+ handler = None
249
+ if old is not None:
250
+ del d[key]
251
+ else:
252
+ d[key] = (data, handler)
253
+ return old
254
+
255
+ def _call_user_data_handler(self, operation, src, dst):
256
+ if hasattr(self, "_user_data"):
257
+ for key, (data, handler) in list(self._user_data.items()):
258
+ if handler is not None:
259
+ handler.handle(operation, key, data, src, dst)
260
+
261
+ # minidom-specific API:
262
+
263
+ def unlink(self):
264
+ self.parentNode = self.ownerDocument = None
265
+ if self.childNodes:
266
+ for child in self.childNodes:
267
+ child.unlink()
268
+ self.childNodes = NodeList()
269
+ self.previousSibling = None
270
+ self.nextSibling = None
271
+
272
+ # A Node is its own context manager, to ensure that an unlink() call occurs.
273
+ # This is similar to how a file object works.
274
+ def __enter__(self):
275
+ return self
276
+
277
+ def __exit__(self, et, ev, tb):
278
+ self.unlink()
279
+
280
+ defproperty(Node, "firstChild", doc="First child node, or None.")
281
+ defproperty(Node, "lastChild", doc="Last child node, or None.")
282
+ defproperty(Node, "localName", doc="Namespace-local name of this node.")
283
+
284
+
285
+ def _append_child(self, node):
286
+ # fast path with less checks; usable by DOM builders if careful
287
+ childNodes = self.childNodes
288
+ if childNodes:
289
+ last = childNodes[-1]
290
+ node.previousSibling = last
291
+ last.nextSibling = node
292
+ childNodes.append(node)
293
+ node.parentNode = self
294
+
295
+
296
+ def _write_data(writer, text, attr):
297
+ "Writes datachars to writer."
298
+ if not text:
299
+ return
300
+ # See the comments in ElementTree.py for behavior and
301
+ # implementation details.
302
+ if "&" in text:
303
+ text = text.replace("&", "&amp;")
304
+ if "<" in text:
305
+ text = text.replace("<", "&lt;")
306
+ if ">" in text:
307
+ text = text.replace(">", "&gt;")
308
+ if attr:
309
+ if '"' in text:
310
+ text = text.replace('"', "&quot;")
311
+ if "\r" in text:
312
+ text = text.replace("\r", "&#13;")
313
+ if "\n" in text:
314
+ text = text.replace("\n", "&#10;")
315
+ if "\t" in text:
316
+ text = text.replace("\t", "&#9;")
317
+ writer.write(text)
318
+
319
+ def _get_elements_by_tagName_helper(parent, name, rc):
320
+ for node in parent.childNodes:
321
+ if node.nodeType == Node.ELEMENT_NODE and \
322
+ (name == "*" or node.tagName == name):
323
+ rc.append(node)
324
+ _get_elements_by_tagName_helper(node, name, rc)
325
+ return rc
326
+
327
+ def _get_elements_by_tagName_ns_helper(parent, nsURI, localName, rc):
328
+ for node in parent.childNodes:
329
+ if node.nodeType == Node.ELEMENT_NODE:
330
+ if ((localName == "*" or node.localName == localName) and
331
+ (nsURI == "*" or node.namespaceURI == nsURI)):
332
+ rc.append(node)
333
+ _get_elements_by_tagName_ns_helper(node, nsURI, localName, rc)
334
+ return rc
335
+
336
+ class DocumentFragment(Node):
337
+ nodeType = Node.DOCUMENT_FRAGMENT_NODE
338
+ nodeName = "#document-fragment"
339
+ nodeValue = None
340
+ attributes = None
341
+ parentNode = None
342
+ _child_node_types = (Node.ELEMENT_NODE,
343
+ Node.TEXT_NODE,
344
+ Node.CDATA_SECTION_NODE,
345
+ Node.ENTITY_REFERENCE_NODE,
346
+ Node.PROCESSING_INSTRUCTION_NODE,
347
+ Node.COMMENT_NODE,
348
+ Node.NOTATION_NODE)
349
+
350
+ def __init__(self):
351
+ self.childNodes = NodeList()
352
+
353
+
354
+ class Attr(Node):
355
+ __slots__=('_name', '_value', 'namespaceURI',
356
+ '_prefix', 'childNodes', '_localName', 'ownerDocument', 'ownerElement')
357
+ nodeType = Node.ATTRIBUTE_NODE
358
+ attributes = None
359
+ specified = False
360
+ _is_id = False
361
+
362
+ _child_node_types = (Node.TEXT_NODE, Node.ENTITY_REFERENCE_NODE)
363
+
364
+ def __init__(self, qName, namespaceURI=EMPTY_NAMESPACE, localName=None,
365
+ prefix=None):
366
+ self.ownerElement = None
367
+ self.ownerDocument = None
368
+ self._name = qName
369
+ self.namespaceURI = namespaceURI
370
+ self._prefix = prefix
371
+ if localName is not None:
372
+ self._localName = localName
373
+ self.childNodes = NodeList()
374
+
375
+ # Add the single child node that represents the value of the attr
376
+ self.childNodes.append(Text())
377
+
378
+ # nodeValue and value are set elsewhere
379
+
380
+ def _get_localName(self):
381
+ try:
382
+ return self._localName
383
+ except AttributeError:
384
+ return self.nodeName.split(":", 1)[-1]
385
+
386
+ def _get_specified(self):
387
+ return self.specified
388
+
389
+ def _get_name(self):
390
+ return self._name
391
+
392
+ def _set_name(self, value):
393
+ self._name = value
394
+ if self.ownerElement is not None:
395
+ _clear_id_cache(self.ownerElement)
396
+
397
+ nodeName = name = property(_get_name, _set_name)
398
+
399
+ def _get_value(self):
400
+ return self._value
401
+
402
+ def _set_value(self, value):
403
+ self._value = value
404
+ self.childNodes[0].data = value
405
+ if self.ownerElement is not None:
406
+ _clear_id_cache(self.ownerElement)
407
+ self.childNodes[0].data = value
408
+
409
+ nodeValue = value = property(_get_value, _set_value)
410
+
411
+ def _get_prefix(self):
412
+ return self._prefix
413
+
414
+ def _set_prefix(self, prefix):
415
+ nsuri = self.namespaceURI
416
+ if prefix == "xmlns":
417
+ if nsuri and nsuri != XMLNS_NAMESPACE:
418
+ raise xml.dom.NamespaceErr(
419
+ "illegal use of 'xmlns' prefix for the wrong namespace")
420
+ self._prefix = prefix
421
+ if prefix is None:
422
+ newName = self.localName
423
+ else:
424
+ newName = "%s:%s" % (prefix, self.localName)
425
+ if self.ownerElement:
426
+ _clear_id_cache(self.ownerElement)
427
+ self.name = newName
428
+
429
+ prefix = property(_get_prefix, _set_prefix)
430
+
431
+ def unlink(self):
432
+ # This implementation does not call the base implementation
433
+ # since most of that is not needed, and the expense of the
434
+ # method call is not warranted. We duplicate the removal of
435
+ # children, but that's all we needed from the base class.
436
+ elem = self.ownerElement
437
+ if elem is not None:
438
+ del elem._attrs[self.nodeName]
439
+ del elem._attrsNS[(self.namespaceURI, self.localName)]
440
+ if self._is_id:
441
+ self._is_id = False
442
+ elem._magic_id_nodes -= 1
443
+ self.ownerDocument._magic_id_count -= 1
444
+ for child in self.childNodes:
445
+ child.unlink()
446
+ del self.childNodes[:]
447
+
448
+ def _get_isId(self):
449
+ if self._is_id:
450
+ return True
451
+ doc = self.ownerDocument
452
+ elem = self.ownerElement
453
+ if doc is None or elem is None:
454
+ return False
455
+
456
+ info = doc._get_elem_info(elem)
457
+ if info is None:
458
+ return False
459
+ if self.namespaceURI:
460
+ return info.isIdNS(self.namespaceURI, self.localName)
461
+ else:
462
+ return info.isId(self.nodeName)
463
+
464
+ def _get_schemaType(self):
465
+ doc = self.ownerDocument
466
+ elem = self.ownerElement
467
+ if doc is None or elem is None:
468
+ return _no_type
469
+
470
+ info = doc._get_elem_info(elem)
471
+ if info is None:
472
+ return _no_type
473
+ if self.namespaceURI:
474
+ return info.getAttributeTypeNS(self.namespaceURI, self.localName)
475
+ else:
476
+ return info.getAttributeType(self.nodeName)
477
+
478
+ defproperty(Attr, "isId", doc="True if this attribute is an ID.")
479
+ defproperty(Attr, "localName", doc="Namespace-local name of this attribute.")
480
+ defproperty(Attr, "schemaType", doc="Schema type for this attribute.")
481
+
482
+
483
+ class NamedNodeMap(object):
484
+ """The attribute list is a transient interface to the underlying
485
+ dictionaries. Mutations here will change the underlying element's
486
+ dictionary.
487
+
488
+ Ordering is imposed artificially and does not reflect the order of
489
+ attributes as found in an input document.
490
+ """
491
+
492
+ __slots__ = ('_attrs', '_attrsNS', '_ownerElement')
493
+
494
+ def __init__(self, attrs, attrsNS, ownerElement):
495
+ self._attrs = attrs
496
+ self._attrsNS = attrsNS
497
+ self._ownerElement = ownerElement
498
+
499
+ def _get_length(self):
500
+ return len(self._attrs)
501
+
502
+ def item(self, index):
503
+ try:
504
+ return self[list(self._attrs.keys())[index]]
505
+ except IndexError:
506
+ return None
507
+
508
+ def items(self):
509
+ L = []
510
+ for node in self._attrs.values():
511
+ L.append((node.nodeName, node.value))
512
+ return L
513
+
514
+ def itemsNS(self):
515
+ L = []
516
+ for node in self._attrs.values():
517
+ L.append(((node.namespaceURI, node.localName), node.value))
518
+ return L
519
+
520
+ def __contains__(self, key):
521
+ if isinstance(key, str):
522
+ return key in self._attrs
523
+ else:
524
+ return key in self._attrsNS
525
+
526
+ def keys(self):
527
+ return self._attrs.keys()
528
+
529
+ def keysNS(self):
530
+ return self._attrsNS.keys()
531
+
532
+ def values(self):
533
+ return self._attrs.values()
534
+
535
+ def get(self, name, value=None):
536
+ return self._attrs.get(name, value)
537
+
538
+ __len__ = _get_length
539
+
540
+ def _cmp(self, other):
541
+ if self._attrs is getattr(other, "_attrs", None):
542
+ return 0
543
+ else:
544
+ return (id(self) > id(other)) - (id(self) < id(other))
545
+
546
+ def __eq__(self, other):
547
+ return self._cmp(other) == 0
548
+
549
+ def __ge__(self, other):
550
+ return self._cmp(other) >= 0
551
+
552
+ def __gt__(self, other):
553
+ return self._cmp(other) > 0
554
+
555
+ def __le__(self, other):
556
+ return self._cmp(other) <= 0
557
+
558
+ def __lt__(self, other):
559
+ return self._cmp(other) < 0
560
+
561
+ def __getitem__(self, attname_or_tuple):
562
+ if isinstance(attname_or_tuple, tuple):
563
+ return self._attrsNS[attname_or_tuple]
564
+ else:
565
+ return self._attrs[attname_or_tuple]
566
+
567
+ # same as set
568
+ def __setitem__(self, attname, value):
569
+ if isinstance(value, str):
570
+ try:
571
+ node = self._attrs[attname]
572
+ except KeyError:
573
+ node = Attr(attname)
574
+ node.ownerDocument = self._ownerElement.ownerDocument
575
+ self.setNamedItem(node)
576
+ node.value = value
577
+ else:
578
+ if not isinstance(value, Attr):
579
+ raise TypeError("value must be a string or Attr object")
580
+ node = value
581
+ self.setNamedItem(node)
582
+
583
+ def getNamedItem(self, name):
584
+ try:
585
+ return self._attrs[name]
586
+ except KeyError:
587
+ return None
588
+
589
+ def getNamedItemNS(self, namespaceURI, localName):
590
+ try:
591
+ return self._attrsNS[(namespaceURI, localName)]
592
+ except KeyError:
593
+ return None
594
+
595
+ def removeNamedItem(self, name):
596
+ n = self.getNamedItem(name)
597
+ if n is not None:
598
+ _clear_id_cache(self._ownerElement)
599
+ del self._attrs[n.nodeName]
600
+ del self._attrsNS[(n.namespaceURI, n.localName)]
601
+ if hasattr(n, 'ownerElement'):
602
+ n.ownerElement = None
603
+ return n
604
+ else:
605
+ raise xml.dom.NotFoundErr()
606
+
607
+ def removeNamedItemNS(self, namespaceURI, localName):
608
+ n = self.getNamedItemNS(namespaceURI, localName)
609
+ if n is not None:
610
+ _clear_id_cache(self._ownerElement)
611
+ del self._attrsNS[(n.namespaceURI, n.localName)]
612
+ del self._attrs[n.nodeName]
613
+ if hasattr(n, 'ownerElement'):
614
+ n.ownerElement = None
615
+ return n
616
+ else:
617
+ raise xml.dom.NotFoundErr()
618
+
619
+ def setNamedItem(self, node):
620
+ if not isinstance(node, Attr):
621
+ raise xml.dom.HierarchyRequestErr(
622
+ "%s cannot be child of %s" % (repr(node), repr(self)))
623
+ old = self._attrs.get(node.name)
624
+ if old:
625
+ old.unlink()
626
+ self._attrs[node.name] = node
627
+ self._attrsNS[(node.namespaceURI, node.localName)] = node
628
+ node.ownerElement = self._ownerElement
629
+ _clear_id_cache(node.ownerElement)
630
+ return old
631
+
632
+ def setNamedItemNS(self, node):
633
+ return self.setNamedItem(node)
634
+
635
+ def __delitem__(self, attname_or_tuple):
636
+ node = self[attname_or_tuple]
637
+ _clear_id_cache(node.ownerElement)
638
+ node.unlink()
639
+
640
+ def __getstate__(self):
641
+ return self._attrs, self._attrsNS, self._ownerElement
642
+
643
+ def __setstate__(self, state):
644
+ self._attrs, self._attrsNS, self._ownerElement = state
645
+
646
+ defproperty(NamedNodeMap, "length",
647
+ doc="Number of nodes in the NamedNodeMap.")
648
+
649
+ AttributeList = NamedNodeMap
650
+
651
+
652
+ class TypeInfo(object):
653
+ __slots__ = 'namespace', 'name'
654
+
655
+ def __init__(self, namespace, name):
656
+ self.namespace = namespace
657
+ self.name = name
658
+
659
+ def __repr__(self):
660
+ if self.namespace:
661
+ return "<%s %r (from %r)>" % (self.__class__.__name__, self.name,
662
+ self.namespace)
663
+ else:
664
+ return "<%s %r>" % (self.__class__.__name__, self.name)
665
+
666
+ def _get_name(self):
667
+ return self.name
668
+
669
+ def _get_namespace(self):
670
+ return self.namespace
671
+
672
+ _no_type = TypeInfo(None, None)
673
+
674
+ class Element(Node):
675
+ __slots__=('ownerDocument', 'parentNode', 'tagName', 'nodeName', 'prefix',
676
+ 'namespaceURI', '_localName', 'childNodes', '_attrs', '_attrsNS',
677
+ 'nextSibling', 'previousSibling')
678
+ nodeType = Node.ELEMENT_NODE
679
+ nodeValue = None
680
+ schemaType = _no_type
681
+
682
+ _magic_id_nodes = 0
683
+
684
+ _child_node_types = (Node.ELEMENT_NODE,
685
+ Node.PROCESSING_INSTRUCTION_NODE,
686
+ Node.COMMENT_NODE,
687
+ Node.TEXT_NODE,
688
+ Node.CDATA_SECTION_NODE,
689
+ Node.ENTITY_REFERENCE_NODE)
690
+
691
+ def __init__(self, tagName, namespaceURI=EMPTY_NAMESPACE, prefix=None,
692
+ localName=None):
693
+ self.ownerDocument = None
694
+ self.parentNode = None
695
+ self.tagName = self.nodeName = tagName
696
+ self.prefix = prefix
697
+ self.namespaceURI = namespaceURI
698
+ self.childNodes = NodeList()
699
+ self.nextSibling = self.previousSibling = None
700
+
701
+ # Attribute dictionaries are lazily created
702
+ # attributes are double-indexed:
703
+ # tagName -> Attribute
704
+ # URI,localName -> Attribute
705
+ # in the future: consider lazy generation
706
+ # of attribute objects this is too tricky
707
+ # for now because of headaches with
708
+ # namespaces.
709
+ self._attrs = None
710
+ self._attrsNS = None
711
+
712
+ def _ensure_attributes(self):
713
+ if self._attrs is None:
714
+ self._attrs = {}
715
+ self._attrsNS = {}
716
+
717
+ def _get_localName(self):
718
+ try:
719
+ return self._localName
720
+ except AttributeError:
721
+ return self.tagName.split(":", 1)[-1]
722
+
723
+ def _get_tagName(self):
724
+ return self.tagName
725
+
726
+ def unlink(self):
727
+ if self._attrs is not None:
728
+ for attr in list(self._attrs.values()):
729
+ attr.unlink()
730
+ self._attrs = None
731
+ self._attrsNS = None
732
+ Node.unlink(self)
733
+
734
+ def getAttribute(self, attname):
735
+ """Returns the value of the specified attribute.
736
+
737
+ Returns the value of the element's attribute named attname as
738
+ a string. An empty string is returned if the element does not
739
+ have such an attribute. Note that an empty string may also be
740
+ returned as an explicitly given attribute value, use the
741
+ hasAttribute method to distinguish these two cases.
742
+ """
743
+ if self._attrs is None:
744
+ return ""
745
+ try:
746
+ return self._attrs[attname].value
747
+ except KeyError:
748
+ return ""
749
+
750
+ def getAttributeNS(self, namespaceURI, localName):
751
+ if self._attrsNS is None:
752
+ return ""
753
+ try:
754
+ return self._attrsNS[(namespaceURI, localName)].value
755
+ except KeyError:
756
+ return ""
757
+
758
+ def setAttribute(self, attname, value):
759
+ attr = self.getAttributeNode(attname)
760
+ if attr is None:
761
+ attr = Attr(attname)
762
+ attr.value = value # also sets nodeValue
763
+ attr.ownerDocument = self.ownerDocument
764
+ self.setAttributeNode(attr)
765
+ elif value != attr.value:
766
+ attr.value = value
767
+ if attr.isId:
768
+ _clear_id_cache(self)
769
+
770
+ def setAttributeNS(self, namespaceURI, qualifiedName, value):
771
+ prefix, localname = _nssplit(qualifiedName)
772
+ attr = self.getAttributeNodeNS(namespaceURI, localname)
773
+ if attr is None:
774
+ attr = Attr(qualifiedName, namespaceURI, localname, prefix)
775
+ attr.value = value
776
+ attr.ownerDocument = self.ownerDocument
777
+ self.setAttributeNode(attr)
778
+ else:
779
+ if value != attr.value:
780
+ attr.value = value
781
+ if attr.isId:
782
+ _clear_id_cache(self)
783
+ if attr.prefix != prefix:
784
+ attr.prefix = prefix
785
+ attr.nodeName = qualifiedName
786
+
787
+ def getAttributeNode(self, attrname):
788
+ if self._attrs is None:
789
+ return None
790
+ return self._attrs.get(attrname)
791
+
792
+ def getAttributeNodeNS(self, namespaceURI, localName):
793
+ if self._attrsNS is None:
794
+ return None
795
+ return self._attrsNS.get((namespaceURI, localName))
796
+
797
+ def setAttributeNode(self, attr):
798
+ if attr.ownerElement not in (None, self):
799
+ raise xml.dom.InuseAttributeErr("attribute node already owned")
800
+ self._ensure_attributes()
801
+ old1 = self._attrs.get(attr.name, None)
802
+ if old1 is not None:
803
+ self.removeAttributeNode(old1)
804
+ old2 = self._attrsNS.get((attr.namespaceURI, attr.localName), None)
805
+ if old2 is not None and old2 is not old1:
806
+ self.removeAttributeNode(old2)
807
+ _set_attribute_node(self, attr)
808
+
809
+ if old1 is not attr:
810
+ # It might have already been part of this node, in which case
811
+ # it doesn't represent a change, and should not be returned.
812
+ return old1
813
+ if old2 is not attr:
814
+ return old2
815
+
816
+ setAttributeNodeNS = setAttributeNode
817
+
818
+ def removeAttribute(self, name):
819
+ if self._attrsNS is None:
820
+ raise xml.dom.NotFoundErr()
821
+ try:
822
+ attr = self._attrs[name]
823
+ except KeyError:
824
+ raise xml.dom.NotFoundErr()
825
+ self.removeAttributeNode(attr)
826
+
827
+ def removeAttributeNS(self, namespaceURI, localName):
828
+ if self._attrsNS is None:
829
+ raise xml.dom.NotFoundErr()
830
+ try:
831
+ attr = self._attrsNS[(namespaceURI, localName)]
832
+ except KeyError:
833
+ raise xml.dom.NotFoundErr()
834
+ self.removeAttributeNode(attr)
835
+
836
+ def removeAttributeNode(self, node):
837
+ if node is None:
838
+ raise xml.dom.NotFoundErr()
839
+ try:
840
+ self._attrs[node.name]
841
+ except KeyError:
842
+ raise xml.dom.NotFoundErr()
843
+ _clear_id_cache(self)
844
+ node.unlink()
845
+ # Restore this since the node is still useful and otherwise
846
+ # unlinked
847
+ node.ownerDocument = self.ownerDocument
848
+ return node
849
+
850
+ removeAttributeNodeNS = removeAttributeNode
851
+
852
+ def hasAttribute(self, name):
853
+ """Checks whether the element has an attribute with the specified name.
854
+
855
+ Returns True if the element has an attribute with the specified name.
856
+ Otherwise, returns False.
857
+ """
858
+ if self._attrs is None:
859
+ return False
860
+ return name in self._attrs
861
+
862
+ def hasAttributeNS(self, namespaceURI, localName):
863
+ if self._attrsNS is None:
864
+ return False
865
+ return (namespaceURI, localName) in self._attrsNS
866
+
867
+ def getElementsByTagName(self, name):
868
+ """Returns all descendant elements with the given tag name.
869
+
870
+ Returns the list of all descendant elements (not direct children
871
+ only) with the specified tag name.
872
+ """
873
+ return _get_elements_by_tagName_helper(self, name, NodeList())
874
+
875
+ def getElementsByTagNameNS(self, namespaceURI, localName):
876
+ return _get_elements_by_tagName_ns_helper(
877
+ self, namespaceURI, localName, NodeList())
878
+
879
+ def __repr__(self):
880
+ return "<DOM Element: %s at %#x>" % (self.tagName, id(self))
881
+
882
+ def writexml(self, writer, indent="", addindent="", newl=""):
883
+ """Write an XML element to a file-like object
884
+
885
+ Write the element to the writer object that must provide
886
+ a write method (e.g. a file or StringIO object).
887
+ """
888
+ # indent = current indentation
889
+ # addindent = indentation to add to higher levels
890
+ # newl = newline string
891
+ writer.write(indent+"<" + self.tagName)
892
+
893
+ attrs = self._get_attributes()
894
+
895
+ for a_name in attrs.keys():
896
+ writer.write(" %s=\"" % a_name)
897
+ _write_data(writer, attrs[a_name].value, True)
898
+ writer.write("\"")
899
+ if self.childNodes:
900
+ writer.write(">")
901
+ if (len(self.childNodes) == 1 and
902
+ self.childNodes[0].nodeType in (
903
+ Node.TEXT_NODE, Node.CDATA_SECTION_NODE)):
904
+ self.childNodes[0].writexml(writer, '', '', '')
905
+ else:
906
+ writer.write(newl)
907
+ for node in self.childNodes:
908
+ node.writexml(writer, indent+addindent, addindent, newl)
909
+ writer.write(indent)
910
+ writer.write("</%s>%s" % (self.tagName, newl))
911
+ else:
912
+ writer.write("/>%s"%(newl))
913
+
914
+ def _get_attributes(self):
915
+ self._ensure_attributes()
916
+ return NamedNodeMap(self._attrs, self._attrsNS, self)
917
+
918
+ def hasAttributes(self):
919
+ if self._attrs:
920
+ return True
921
+ else:
922
+ return False
923
+
924
+ # DOM Level 3 attributes, based on the 22 Oct 2002 draft
925
+
926
+ def setIdAttribute(self, name):
927
+ idAttr = self.getAttributeNode(name)
928
+ self.setIdAttributeNode(idAttr)
929
+
930
+ def setIdAttributeNS(self, namespaceURI, localName):
931
+ idAttr = self.getAttributeNodeNS(namespaceURI, localName)
932
+ self.setIdAttributeNode(idAttr)
933
+
934
+ def setIdAttributeNode(self, idAttr):
935
+ if idAttr is None or not self.isSameNode(idAttr.ownerElement):
936
+ raise xml.dom.NotFoundErr()
937
+ if _get_containing_entref(self) is not None:
938
+ raise xml.dom.NoModificationAllowedErr()
939
+ if not idAttr._is_id:
940
+ idAttr._is_id = True
941
+ self._magic_id_nodes += 1
942
+ self.ownerDocument._magic_id_count += 1
943
+ _clear_id_cache(self)
944
+
945
+ defproperty(Element, "attributes",
946
+ doc="NamedNodeMap of attributes on the element.")
947
+ defproperty(Element, "localName",
948
+ doc="Namespace-local name of this element.")
949
+
950
+
951
+ def _set_attribute_node(element, attr):
952
+ _clear_id_cache(element)
953
+ element._ensure_attributes()
954
+ element._attrs[attr.name] = attr
955
+ element._attrsNS[(attr.namespaceURI, attr.localName)] = attr
956
+
957
+ # This creates a circular reference, but Element.unlink()
958
+ # breaks the cycle since the references to the attribute
959
+ # dictionaries are tossed.
960
+ attr.ownerElement = element
961
+
962
+ class Childless:
963
+ """Mixin that makes childless-ness easy to implement and avoids
964
+ the complexity of the Node methods that deal with children.
965
+ """
966
+ __slots__ = ()
967
+
968
+ attributes = None
969
+ childNodes = EmptyNodeList()
970
+ firstChild = None
971
+ lastChild = None
972
+
973
+ def _get_firstChild(self):
974
+ return None
975
+
976
+ def _get_lastChild(self):
977
+ return None
978
+
979
+ def appendChild(self, node):
980
+ raise xml.dom.HierarchyRequestErr(
981
+ self.nodeName + " nodes cannot have children")
982
+
983
+ def hasChildNodes(self):
984
+ return False
985
+
986
+ def insertBefore(self, newChild, refChild):
987
+ raise xml.dom.HierarchyRequestErr(
988
+ self.nodeName + " nodes do not have children")
989
+
990
+ def removeChild(self, oldChild):
991
+ raise xml.dom.NotFoundErr(
992
+ self.nodeName + " nodes do not have children")
993
+
994
+ def normalize(self):
995
+ # For childless nodes, normalize() has nothing to do.
996
+ pass
997
+
998
+ def replaceChild(self, newChild, oldChild):
999
+ raise xml.dom.HierarchyRequestErr(
1000
+ self.nodeName + " nodes do not have children")
1001
+
1002
+
1003
+ class ProcessingInstruction(Childless, Node):
1004
+ nodeType = Node.PROCESSING_INSTRUCTION_NODE
1005
+ __slots__ = ('target', 'data')
1006
+
1007
+ def __init__(self, target, data):
1008
+ self.target = target
1009
+ self.data = data
1010
+
1011
+ # nodeValue is an alias for data
1012
+ def _get_nodeValue(self):
1013
+ return self.data
1014
+ def _set_nodeValue(self, value):
1015
+ self.data = value
1016
+ nodeValue = property(_get_nodeValue, _set_nodeValue)
1017
+
1018
+ # nodeName is an alias for target
1019
+ def _get_nodeName(self):
1020
+ return self.target
1021
+ def _set_nodeName(self, value):
1022
+ self.target = value
1023
+ nodeName = property(_get_nodeName, _set_nodeName)
1024
+
1025
+ def writexml(self, writer, indent="", addindent="", newl=""):
1026
+ writer.write("%s<?%s %s?>%s" % (indent,self.target, self.data, newl))
1027
+
1028
+
1029
+ class CharacterData(Childless, Node):
1030
+ __slots__=('_data', 'ownerDocument','parentNode', 'previousSibling', 'nextSibling')
1031
+
1032
+ def __init__(self):
1033
+ self.ownerDocument = self.parentNode = None
1034
+ self.previousSibling = self.nextSibling = None
1035
+ self._data = ''
1036
+ Node.__init__(self)
1037
+
1038
+ def _get_length(self):
1039
+ return len(self.data)
1040
+ __len__ = _get_length
1041
+
1042
+ def _get_data(self):
1043
+ return self._data
1044
+ def _set_data(self, data):
1045
+ self._data = data
1046
+
1047
+ data = nodeValue = property(_get_data, _set_data)
1048
+
1049
+ def __repr__(self):
1050
+ data = self.data
1051
+ if len(data) > 10:
1052
+ dotdotdot = "..."
1053
+ else:
1054
+ dotdotdot = ""
1055
+ return '<DOM %s node "%r%s">' % (
1056
+ self.__class__.__name__, data[0:10], dotdotdot)
1057
+
1058
+ def substringData(self, offset, count):
1059
+ if offset < 0:
1060
+ raise xml.dom.IndexSizeErr("offset cannot be negative")
1061
+ if offset >= len(self.data):
1062
+ raise xml.dom.IndexSizeErr("offset cannot be beyond end of data")
1063
+ if count < 0:
1064
+ raise xml.dom.IndexSizeErr("count cannot be negative")
1065
+ return self.data[offset:offset+count]
1066
+
1067
+ def appendData(self, arg):
1068
+ self.data = self.data + arg
1069
+
1070
+ def insertData(self, offset, arg):
1071
+ if offset < 0:
1072
+ raise xml.dom.IndexSizeErr("offset cannot be negative")
1073
+ if offset >= len(self.data):
1074
+ raise xml.dom.IndexSizeErr("offset cannot be beyond end of data")
1075
+ if arg:
1076
+ self.data = "%s%s%s" % (
1077
+ self.data[:offset], arg, self.data[offset:])
1078
+
1079
+ def deleteData(self, offset, count):
1080
+ if offset < 0:
1081
+ raise xml.dom.IndexSizeErr("offset cannot be negative")
1082
+ if offset >= len(self.data):
1083
+ raise xml.dom.IndexSizeErr("offset cannot be beyond end of data")
1084
+ if count < 0:
1085
+ raise xml.dom.IndexSizeErr("count cannot be negative")
1086
+ if count:
1087
+ self.data = self.data[:offset] + self.data[offset+count:]
1088
+
1089
+ def replaceData(self, offset, count, arg):
1090
+ if offset < 0:
1091
+ raise xml.dom.IndexSizeErr("offset cannot be negative")
1092
+ if offset >= len(self.data):
1093
+ raise xml.dom.IndexSizeErr("offset cannot be beyond end of data")
1094
+ if count < 0:
1095
+ raise xml.dom.IndexSizeErr("count cannot be negative")
1096
+ if count:
1097
+ self.data = "%s%s%s" % (
1098
+ self.data[:offset], arg, self.data[offset+count:])
1099
+
1100
+ defproperty(CharacterData, "length", doc="Length of the string data.")
1101
+
1102
+
1103
+ class Text(CharacterData):
1104
+ __slots__ = ()
1105
+
1106
+ nodeType = Node.TEXT_NODE
1107
+ nodeName = "#text"
1108
+ attributes = None
1109
+
1110
+ def splitText(self, offset):
1111
+ if offset < 0 or offset > len(self.data):
1112
+ raise xml.dom.IndexSizeErr("illegal offset value")
1113
+ newText = self.__class__()
1114
+ newText.data = self.data[offset:]
1115
+ newText.ownerDocument = self.ownerDocument
1116
+ next = self.nextSibling
1117
+ if self.parentNode and self in self.parentNode.childNodes:
1118
+ if next is None:
1119
+ self.parentNode.appendChild(newText)
1120
+ else:
1121
+ self.parentNode.insertBefore(newText, next)
1122
+ self.data = self.data[:offset]
1123
+ return newText
1124
+
1125
+ def writexml(self, writer, indent="", addindent="", newl=""):
1126
+ _write_data(writer, "%s%s%s" % (indent, self.data, newl), False)
1127
+
1128
+ # DOM Level 3 (WD 9 April 2002)
1129
+
1130
+ def _get_wholeText(self):
1131
+ L = [self.data]
1132
+ n = self.previousSibling
1133
+ while n is not None:
1134
+ if n.nodeType in (Node.TEXT_NODE, Node.CDATA_SECTION_NODE):
1135
+ L.insert(0, n.data)
1136
+ n = n.previousSibling
1137
+ else:
1138
+ break
1139
+ n = self.nextSibling
1140
+ while n is not None:
1141
+ if n.nodeType in (Node.TEXT_NODE, Node.CDATA_SECTION_NODE):
1142
+ L.append(n.data)
1143
+ n = n.nextSibling
1144
+ else:
1145
+ break
1146
+ return ''.join(L)
1147
+
1148
+ def replaceWholeText(self, content):
1149
+ # XXX This needs to be seriously changed if minidom ever
1150
+ # supports EntityReference nodes.
1151
+ parent = self.parentNode
1152
+ n = self.previousSibling
1153
+ while n is not None:
1154
+ if n.nodeType in (Node.TEXT_NODE, Node.CDATA_SECTION_NODE):
1155
+ next = n.previousSibling
1156
+ parent.removeChild(n)
1157
+ n = next
1158
+ else:
1159
+ break
1160
+ n = self.nextSibling
1161
+ if not content:
1162
+ parent.removeChild(self)
1163
+ while n is not None:
1164
+ if n.nodeType in (Node.TEXT_NODE, Node.CDATA_SECTION_NODE):
1165
+ next = n.nextSibling
1166
+ parent.removeChild(n)
1167
+ n = next
1168
+ else:
1169
+ break
1170
+ if content:
1171
+ self.data = content
1172
+ return self
1173
+ else:
1174
+ return None
1175
+
1176
+ def _get_isWhitespaceInElementContent(self):
1177
+ if self.data.strip():
1178
+ return False
1179
+ elem = _get_containing_element(self)
1180
+ if elem is None:
1181
+ return False
1182
+ info = self.ownerDocument._get_elem_info(elem)
1183
+ if info is None:
1184
+ return False
1185
+ else:
1186
+ return info.isElementContent()
1187
+
1188
+ defproperty(Text, "isWhitespaceInElementContent",
1189
+ doc="True iff this text node contains only whitespace"
1190
+ " and is in element content.")
1191
+ defproperty(Text, "wholeText",
1192
+ doc="The text of all logically-adjacent text nodes.")
1193
+
1194
+
1195
+ def _get_containing_element(node):
1196
+ c = node.parentNode
1197
+ while c is not None:
1198
+ if c.nodeType == Node.ELEMENT_NODE:
1199
+ return c
1200
+ c = c.parentNode
1201
+ return None
1202
+
1203
+ def _get_containing_entref(node):
1204
+ c = node.parentNode
1205
+ while c is not None:
1206
+ if c.nodeType == Node.ENTITY_REFERENCE_NODE:
1207
+ return c
1208
+ c = c.parentNode
1209
+ return None
1210
+
1211
+
1212
+ class Comment(CharacterData):
1213
+ nodeType = Node.COMMENT_NODE
1214
+ nodeName = "#comment"
1215
+
1216
+ def __init__(self, data):
1217
+ CharacterData.__init__(self)
1218
+ self._data = data
1219
+
1220
+ def writexml(self, writer, indent="", addindent="", newl=""):
1221
+ if "--" in self.data:
1222
+ raise ValueError("'--' is not allowed in a comment node")
1223
+ writer.write("%s<!--%s-->%s" % (indent, self.data, newl))
1224
+
1225
+
1226
+ class CDATASection(Text):
1227
+ __slots__ = ()
1228
+
1229
+ nodeType = Node.CDATA_SECTION_NODE
1230
+ nodeName = "#cdata-section"
1231
+
1232
+ def writexml(self, writer, indent="", addindent="", newl=""):
1233
+ if self.data.find("]]>") >= 0:
1234
+ raise ValueError("']]>' not allowed in a CDATA section")
1235
+ writer.write("<![CDATA[%s]]>" % self.data)
1236
+
1237
+
1238
+ class ReadOnlySequentialNamedNodeMap(object):
1239
+ __slots__ = '_seq',
1240
+
1241
+ def __init__(self, seq=()):
1242
+ # seq should be a list or tuple
1243
+ self._seq = seq
1244
+
1245
+ def __len__(self):
1246
+ return len(self._seq)
1247
+
1248
+ def _get_length(self):
1249
+ return len(self._seq)
1250
+
1251
+ def getNamedItem(self, name):
1252
+ for n in self._seq:
1253
+ if n.nodeName == name:
1254
+ return n
1255
+
1256
+ def getNamedItemNS(self, namespaceURI, localName):
1257
+ for n in self._seq:
1258
+ if n.namespaceURI == namespaceURI and n.localName == localName:
1259
+ return n
1260
+
1261
+ def __getitem__(self, name_or_tuple):
1262
+ if isinstance(name_or_tuple, tuple):
1263
+ node = self.getNamedItemNS(*name_or_tuple)
1264
+ else:
1265
+ node = self.getNamedItem(name_or_tuple)
1266
+ if node is None:
1267
+ raise KeyError(name_or_tuple)
1268
+ return node
1269
+
1270
+ def item(self, index):
1271
+ if index < 0:
1272
+ return None
1273
+ try:
1274
+ return self._seq[index]
1275
+ except IndexError:
1276
+ return None
1277
+
1278
+ def removeNamedItem(self, name):
1279
+ raise xml.dom.NoModificationAllowedErr(
1280
+ "NamedNodeMap instance is read-only")
1281
+
1282
+ def removeNamedItemNS(self, namespaceURI, localName):
1283
+ raise xml.dom.NoModificationAllowedErr(
1284
+ "NamedNodeMap instance is read-only")
1285
+
1286
+ def setNamedItem(self, node):
1287
+ raise xml.dom.NoModificationAllowedErr(
1288
+ "NamedNodeMap instance is read-only")
1289
+
1290
+ def setNamedItemNS(self, node):
1291
+ raise xml.dom.NoModificationAllowedErr(
1292
+ "NamedNodeMap instance is read-only")
1293
+
1294
+ def __getstate__(self):
1295
+ return [self._seq]
1296
+
1297
+ def __setstate__(self, state):
1298
+ self._seq = state[0]
1299
+
1300
+ defproperty(ReadOnlySequentialNamedNodeMap, "length",
1301
+ doc="Number of entries in the NamedNodeMap.")
1302
+
1303
+
1304
+ class Identified:
1305
+ """Mix-in class that supports the publicId and systemId attributes."""
1306
+
1307
+ __slots__ = 'publicId', 'systemId'
1308
+
1309
+ def _identified_mixin_init(self, publicId, systemId):
1310
+ self.publicId = publicId
1311
+ self.systemId = systemId
1312
+
1313
+ def _get_publicId(self):
1314
+ return self.publicId
1315
+
1316
+ def _get_systemId(self):
1317
+ return self.systemId
1318
+
1319
+ class DocumentType(Identified, Childless, Node):
1320
+ nodeType = Node.DOCUMENT_TYPE_NODE
1321
+ nodeValue = None
1322
+ name = None
1323
+ publicId = None
1324
+ systemId = None
1325
+ internalSubset = None
1326
+
1327
+ def __init__(self, qualifiedName):
1328
+ self.entities = ReadOnlySequentialNamedNodeMap()
1329
+ self.notations = ReadOnlySequentialNamedNodeMap()
1330
+ if qualifiedName:
1331
+ prefix, localname = _nssplit(qualifiedName)
1332
+ self.name = localname
1333
+ self.nodeName = self.name
1334
+
1335
+ def _get_internalSubset(self):
1336
+ return self.internalSubset
1337
+
1338
+ def cloneNode(self, deep):
1339
+ if self.ownerDocument is None:
1340
+ # it's ok
1341
+ clone = DocumentType(None)
1342
+ clone.name = self.name
1343
+ clone.nodeName = self.name
1344
+ operation = xml.dom.UserDataHandler.NODE_CLONED
1345
+ if deep:
1346
+ clone.entities._seq = []
1347
+ clone.notations._seq = []
1348
+ for n in self.notations._seq:
1349
+ notation = Notation(n.nodeName, n.publicId, n.systemId)
1350
+ clone.notations._seq.append(notation)
1351
+ n._call_user_data_handler(operation, n, notation)
1352
+ for e in self.entities._seq:
1353
+ entity = Entity(e.nodeName, e.publicId, e.systemId,
1354
+ e.notationName)
1355
+ entity.actualEncoding = e.actualEncoding
1356
+ entity.encoding = e.encoding
1357
+ entity.version = e.version
1358
+ clone.entities._seq.append(entity)
1359
+ e._call_user_data_handler(operation, e, entity)
1360
+ self._call_user_data_handler(operation, self, clone)
1361
+ return clone
1362
+ else:
1363
+ return None
1364
+
1365
+ def writexml(self, writer, indent="", addindent="", newl=""):
1366
+ writer.write("<!DOCTYPE ")
1367
+ writer.write(self.name)
1368
+ if self.publicId:
1369
+ writer.write("%s PUBLIC '%s'%s '%s'"
1370
+ % (newl, self.publicId, newl, self.systemId))
1371
+ elif self.systemId:
1372
+ writer.write("%s SYSTEM '%s'" % (newl, self.systemId))
1373
+ if self.internalSubset is not None:
1374
+ writer.write(" [")
1375
+ writer.write(self.internalSubset)
1376
+ writer.write("]")
1377
+ writer.write(">"+newl)
1378
+
1379
+ class Entity(Identified, Node):
1380
+ attributes = None
1381
+ nodeType = Node.ENTITY_NODE
1382
+ nodeValue = None
1383
+
1384
+ actualEncoding = None
1385
+ encoding = None
1386
+ version = None
1387
+
1388
+ def __init__(self, name, publicId, systemId, notation):
1389
+ self.nodeName = name
1390
+ self.notationName = notation
1391
+ self.childNodes = NodeList()
1392
+ self._identified_mixin_init(publicId, systemId)
1393
+
1394
+ def _get_actualEncoding(self):
1395
+ return self.actualEncoding
1396
+
1397
+ def _get_encoding(self):
1398
+ return self.encoding
1399
+
1400
+ def _get_version(self):
1401
+ return self.version
1402
+
1403
+ def appendChild(self, newChild):
1404
+ raise xml.dom.HierarchyRequestErr(
1405
+ "cannot append children to an entity node")
1406
+
1407
+ def insertBefore(self, newChild, refChild):
1408
+ raise xml.dom.HierarchyRequestErr(
1409
+ "cannot insert children below an entity node")
1410
+
1411
+ def removeChild(self, oldChild):
1412
+ raise xml.dom.HierarchyRequestErr(
1413
+ "cannot remove children from an entity node")
1414
+
1415
+ def replaceChild(self, newChild, oldChild):
1416
+ raise xml.dom.HierarchyRequestErr(
1417
+ "cannot replace children of an entity node")
1418
+
1419
+ class Notation(Identified, Childless, Node):
1420
+ nodeType = Node.NOTATION_NODE
1421
+ nodeValue = None
1422
+
1423
+ def __init__(self, name, publicId, systemId):
1424
+ self.nodeName = name
1425
+ self._identified_mixin_init(publicId, systemId)
1426
+
1427
+
1428
+ class DOMImplementation(DOMImplementationLS):
1429
+ _features = [("core", "1.0"),
1430
+ ("core", "2.0"),
1431
+ ("core", None),
1432
+ ("xml", "1.0"),
1433
+ ("xml", "2.0"),
1434
+ ("xml", None),
1435
+ ("ls-load", "3.0"),
1436
+ ("ls-load", None),
1437
+ ]
1438
+
1439
+ def hasFeature(self, feature, version):
1440
+ if version == "":
1441
+ version = None
1442
+ return (feature.lower(), version) in self._features
1443
+
1444
+ def createDocument(self, namespaceURI, qualifiedName, doctype):
1445
+ if doctype and doctype.parentNode is not None:
1446
+ raise xml.dom.WrongDocumentErr(
1447
+ "doctype object owned by another DOM tree")
1448
+ doc = self._create_document()
1449
+
1450
+ add_root_element = not (namespaceURI is None
1451
+ and qualifiedName is None
1452
+ and doctype is None)
1453
+
1454
+ if not qualifiedName and add_root_element:
1455
+ # The spec is unclear what to raise here; SyntaxErr
1456
+ # would be the other obvious candidate. Since Xerces raises
1457
+ # InvalidCharacterErr, and since SyntaxErr is not listed
1458
+ # for createDocument, that seems to be the better choice.
1459
+ # XXX: need to check for illegal characters here and in
1460
+ # createElement.
1461
+
1462
+ # DOM Level III clears this up when talking about the return value
1463
+ # of this function. If namespaceURI, qName and DocType are
1464
+ # Null the document is returned without a document element
1465
+ # Otherwise if doctype or namespaceURI are not None
1466
+ # Then we go back to the above problem
1467
+ raise xml.dom.InvalidCharacterErr("Element with no name")
1468
+
1469
+ if add_root_element:
1470
+ prefix, localname = _nssplit(qualifiedName)
1471
+ if prefix == "xml" \
1472
+ and namespaceURI != "http://www.w3.org/XML/1998/namespace":
1473
+ raise xml.dom.NamespaceErr("illegal use of 'xml' prefix")
1474
+ if prefix and not namespaceURI:
1475
+ raise xml.dom.NamespaceErr(
1476
+ "illegal use of prefix without namespaces")
1477
+ element = doc.createElementNS(namespaceURI, qualifiedName)
1478
+ if doctype:
1479
+ doc.appendChild(doctype)
1480
+ doc.appendChild(element)
1481
+
1482
+ if doctype:
1483
+ doctype.parentNode = doctype.ownerDocument = doc
1484
+
1485
+ doc.doctype = doctype
1486
+ doc.implementation = self
1487
+ return doc
1488
+
1489
+ def createDocumentType(self, qualifiedName, publicId, systemId):
1490
+ doctype = DocumentType(qualifiedName)
1491
+ doctype.publicId = publicId
1492
+ doctype.systemId = systemId
1493
+ return doctype
1494
+
1495
+ # DOM Level 3 (WD 9 April 2002)
1496
+
1497
+ def getInterface(self, feature):
1498
+ if self.hasFeature(feature, None):
1499
+ return self
1500
+ else:
1501
+ return None
1502
+
1503
+ # internal
1504
+ def _create_document(self):
1505
+ return Document()
1506
+
1507
+ class ElementInfo(object):
1508
+ """Object that represents content-model information for an element.
1509
+
1510
+ This implementation is not expected to be used in practice; DOM
1511
+ builders should provide implementations which do the right thing
1512
+ using information available to it.
1513
+
1514
+ """
1515
+
1516
+ __slots__ = 'tagName',
1517
+
1518
+ def __init__(self, name):
1519
+ self.tagName = name
1520
+
1521
+ def getAttributeType(self, aname):
1522
+ return _no_type
1523
+
1524
+ def getAttributeTypeNS(self, namespaceURI, localName):
1525
+ return _no_type
1526
+
1527
+ def isElementContent(self):
1528
+ return False
1529
+
1530
+ def isEmpty(self):
1531
+ """Returns true iff this element is declared to have an EMPTY
1532
+ content model."""
1533
+ return False
1534
+
1535
+ def isId(self, aname):
1536
+ """Returns true iff the named attribute is a DTD-style ID."""
1537
+ return False
1538
+
1539
+ def isIdNS(self, namespaceURI, localName):
1540
+ """Returns true iff the identified attribute is a DTD-style ID."""
1541
+ return False
1542
+
1543
+ def __getstate__(self):
1544
+ return self.tagName
1545
+
1546
+ def __setstate__(self, state):
1547
+ self.tagName = state
1548
+
1549
+ def _clear_id_cache(node):
1550
+ if node.nodeType == Node.DOCUMENT_NODE:
1551
+ node._id_cache.clear()
1552
+ node._id_search_stack = None
1553
+ elif node.ownerDocument:
1554
+ node.ownerDocument._id_cache.clear()
1555
+ node.ownerDocument._id_search_stack= None
1556
+
1557
+ class Document(Node, DocumentLS):
1558
+ __slots__ = ('_elem_info', 'doctype',
1559
+ '_id_search_stack', 'childNodes', '_id_cache')
1560
+ _child_node_types = (Node.ELEMENT_NODE, Node.PROCESSING_INSTRUCTION_NODE,
1561
+ Node.COMMENT_NODE, Node.DOCUMENT_TYPE_NODE)
1562
+
1563
+ implementation = DOMImplementation()
1564
+ nodeType = Node.DOCUMENT_NODE
1565
+ nodeName = "#document"
1566
+ nodeValue = None
1567
+ attributes = None
1568
+ parentNode = None
1569
+ previousSibling = nextSibling = None
1570
+
1571
+
1572
+ # Document attributes from Level 3 (WD 9 April 2002)
1573
+
1574
+ actualEncoding = None
1575
+ encoding = None
1576
+ standalone = None
1577
+ version = None
1578
+ strictErrorChecking = False
1579
+ errorHandler = None
1580
+ documentURI = None
1581
+
1582
+ _magic_id_count = 0
1583
+
1584
+ def __init__(self):
1585
+ self.doctype = None
1586
+ self.childNodes = NodeList()
1587
+ # mapping of (namespaceURI, localName) -> ElementInfo
1588
+ # and tagName -> ElementInfo
1589
+ self._elem_info = {}
1590
+ self._id_cache = {}
1591
+ self._id_search_stack = None
1592
+
1593
+ def _get_elem_info(self, element):
1594
+ if element.namespaceURI:
1595
+ key = element.namespaceURI, element.localName
1596
+ else:
1597
+ key = element.tagName
1598
+ return self._elem_info.get(key)
1599
+
1600
+ def _get_actualEncoding(self):
1601
+ return self.actualEncoding
1602
+
1603
+ def _get_doctype(self):
1604
+ return self.doctype
1605
+
1606
+ def _get_documentURI(self):
1607
+ return self.documentURI
1608
+
1609
+ def _get_encoding(self):
1610
+ return self.encoding
1611
+
1612
+ def _get_errorHandler(self):
1613
+ return self.errorHandler
1614
+
1615
+ def _get_standalone(self):
1616
+ return self.standalone
1617
+
1618
+ def _get_strictErrorChecking(self):
1619
+ return self.strictErrorChecking
1620
+
1621
+ def _get_version(self):
1622
+ return self.version
1623
+
1624
+ def appendChild(self, node):
1625
+ if node.nodeType not in self._child_node_types:
1626
+ raise xml.dom.HierarchyRequestErr(
1627
+ "%s cannot be child of %s" % (repr(node), repr(self)))
1628
+ if node.parentNode is not None:
1629
+ # This needs to be done before the next test since this
1630
+ # may *be* the document element, in which case it should
1631
+ # end up re-ordered to the end.
1632
+ node.parentNode.removeChild(node)
1633
+
1634
+ if node.nodeType == Node.ELEMENT_NODE \
1635
+ and self._get_documentElement():
1636
+ raise xml.dom.HierarchyRequestErr(
1637
+ "two document elements disallowed")
1638
+ return Node.appendChild(self, node)
1639
+
1640
+ def removeChild(self, oldChild):
1641
+ try:
1642
+ self.childNodes.remove(oldChild)
1643
+ except ValueError:
1644
+ raise xml.dom.NotFoundErr()
1645
+ oldChild.nextSibling = oldChild.previousSibling = None
1646
+ oldChild.parentNode = None
1647
+ if self.documentElement is oldChild:
1648
+ self.documentElement = None
1649
+
1650
+ return oldChild
1651
+
1652
+ def _get_documentElement(self):
1653
+ for node in self.childNodes:
1654
+ if node.nodeType == Node.ELEMENT_NODE:
1655
+ return node
1656
+
1657
+ def unlink(self):
1658
+ if self.doctype is not None:
1659
+ self.doctype.unlink()
1660
+ self.doctype = None
1661
+ Node.unlink(self)
1662
+
1663
+ def cloneNode(self, deep):
1664
+ if not deep:
1665
+ return None
1666
+ clone = self.implementation.createDocument(None, None, None)
1667
+ clone.encoding = self.encoding
1668
+ clone.standalone = self.standalone
1669
+ clone.version = self.version
1670
+ for n in self.childNodes:
1671
+ childclone = _clone_node(n, deep, clone)
1672
+ assert childclone.ownerDocument.isSameNode(clone)
1673
+ clone.childNodes.append(childclone)
1674
+ if childclone.nodeType == Node.DOCUMENT_NODE:
1675
+ assert clone.documentElement is None
1676
+ elif childclone.nodeType == Node.DOCUMENT_TYPE_NODE:
1677
+ assert clone.doctype is None
1678
+ clone.doctype = childclone
1679
+ childclone.parentNode = clone
1680
+ self._call_user_data_handler(xml.dom.UserDataHandler.NODE_CLONED,
1681
+ self, clone)
1682
+ return clone
1683
+
1684
+ def createDocumentFragment(self):
1685
+ d = DocumentFragment()
1686
+ d.ownerDocument = self
1687
+ return d
1688
+
1689
+ def createElement(self, tagName):
1690
+ e = Element(tagName)
1691
+ e.ownerDocument = self
1692
+ return e
1693
+
1694
+ def createTextNode(self, data):
1695
+ if not isinstance(data, str):
1696
+ raise TypeError("node contents must be a string")
1697
+ t = Text()
1698
+ t.data = data
1699
+ t.ownerDocument = self
1700
+ return t
1701
+
1702
+ def createCDATASection(self, data):
1703
+ if not isinstance(data, str):
1704
+ raise TypeError("node contents must be a string")
1705
+ c = CDATASection()
1706
+ c.data = data
1707
+ c.ownerDocument = self
1708
+ return c
1709
+
1710
+ def createComment(self, data):
1711
+ c = Comment(data)
1712
+ c.ownerDocument = self
1713
+ return c
1714
+
1715
+ def createProcessingInstruction(self, target, data):
1716
+ p = ProcessingInstruction(target, data)
1717
+ p.ownerDocument = self
1718
+ return p
1719
+
1720
+ def createAttribute(self, qName):
1721
+ a = Attr(qName)
1722
+ a.ownerDocument = self
1723
+ a.value = ""
1724
+ return a
1725
+
1726
+ def createElementNS(self, namespaceURI, qualifiedName):
1727
+ prefix, localName = _nssplit(qualifiedName)
1728
+ e = Element(qualifiedName, namespaceURI, prefix)
1729
+ e.ownerDocument = self
1730
+ return e
1731
+
1732
+ def createAttributeNS(self, namespaceURI, qualifiedName):
1733
+ prefix, localName = _nssplit(qualifiedName)
1734
+ a = Attr(qualifiedName, namespaceURI, localName, prefix)
1735
+ a.ownerDocument = self
1736
+ a.value = ""
1737
+ return a
1738
+
1739
+ # A couple of implementation-specific helpers to create node types
1740
+ # not supported by the W3C DOM specs:
1741
+
1742
+ def _create_entity(self, name, publicId, systemId, notationName):
1743
+ e = Entity(name, publicId, systemId, notationName)
1744
+ e.ownerDocument = self
1745
+ return e
1746
+
1747
+ def _create_notation(self, name, publicId, systemId):
1748
+ n = Notation(name, publicId, systemId)
1749
+ n.ownerDocument = self
1750
+ return n
1751
+
1752
+ def getElementById(self, id):
1753
+ if id in self._id_cache:
1754
+ return self._id_cache[id]
1755
+ if not (self._elem_info or self._magic_id_count):
1756
+ return None
1757
+
1758
+ stack = self._id_search_stack
1759
+ if stack is None:
1760
+ # we never searched before, or the cache has been cleared
1761
+ stack = [self.documentElement]
1762
+ self._id_search_stack = stack
1763
+ elif not stack:
1764
+ # Previous search was completed and cache is still valid;
1765
+ # no matching node.
1766
+ return None
1767
+
1768
+ result = None
1769
+ while stack:
1770
+ node = stack.pop()
1771
+ # add child elements to stack for continued searching
1772
+ stack.extend([child for child in node.childNodes
1773
+ if child.nodeType in _nodeTypes_with_children])
1774
+ # check this node
1775
+ info = self._get_elem_info(node)
1776
+ if info:
1777
+ # We have to process all ID attributes before
1778
+ # returning in order to get all the attributes set to
1779
+ # be IDs using Element.setIdAttribute*().
1780
+ for attr in node.attributes.values():
1781
+ if attr.namespaceURI:
1782
+ if info.isIdNS(attr.namespaceURI, attr.localName):
1783
+ self._id_cache[attr.value] = node
1784
+ if attr.value == id:
1785
+ result = node
1786
+ elif not node._magic_id_nodes:
1787
+ break
1788
+ elif info.isId(attr.name):
1789
+ self._id_cache[attr.value] = node
1790
+ if attr.value == id:
1791
+ result = node
1792
+ elif not node._magic_id_nodes:
1793
+ break
1794
+ elif attr._is_id:
1795
+ self._id_cache[attr.value] = node
1796
+ if attr.value == id:
1797
+ result = node
1798
+ elif node._magic_id_nodes == 1:
1799
+ break
1800
+ elif node._magic_id_nodes:
1801
+ for attr in node.attributes.values():
1802
+ if attr._is_id:
1803
+ self._id_cache[attr.value] = node
1804
+ if attr.value == id:
1805
+ result = node
1806
+ if result is not None:
1807
+ break
1808
+ return result
1809
+
1810
+ def getElementsByTagName(self, name):
1811
+ return _get_elements_by_tagName_helper(self, name, NodeList())
1812
+
1813
+ def getElementsByTagNameNS(self, namespaceURI, localName):
1814
+ return _get_elements_by_tagName_ns_helper(
1815
+ self, namespaceURI, localName, NodeList())
1816
+
1817
+ def isSupported(self, feature, version):
1818
+ return self.implementation.hasFeature(feature, version)
1819
+
1820
+ def importNode(self, node, deep):
1821
+ if node.nodeType == Node.DOCUMENT_NODE:
1822
+ raise xml.dom.NotSupportedErr("cannot import document nodes")
1823
+ elif node.nodeType == Node.DOCUMENT_TYPE_NODE:
1824
+ raise xml.dom.NotSupportedErr("cannot import document type nodes")
1825
+ return _clone_node(node, deep, self)
1826
+
1827
+ def writexml(self, writer, indent="", addindent="", newl="", encoding=None,
1828
+ standalone=None):
1829
+ declarations = []
1830
+
1831
+ if encoding:
1832
+ declarations.append(f'encoding="{encoding}"')
1833
+ if standalone is not None:
1834
+ declarations.append(f'standalone="{"yes" if standalone else "no"}"')
1835
+
1836
+ writer.write(f'<?xml version="1.0" {" ".join(declarations)}?>{newl}')
1837
+
1838
+ for node in self.childNodes:
1839
+ node.writexml(writer, indent, addindent, newl)
1840
+
1841
+ # DOM Level 3 (WD 9 April 2002)
1842
+
1843
+ def renameNode(self, n, namespaceURI, name):
1844
+ if n.ownerDocument is not self:
1845
+ raise xml.dom.WrongDocumentErr(
1846
+ "cannot rename nodes from other documents;\n"
1847
+ "expected %s,\nfound %s" % (self, n.ownerDocument))
1848
+ if n.nodeType not in (Node.ELEMENT_NODE, Node.ATTRIBUTE_NODE):
1849
+ raise xml.dom.NotSupportedErr(
1850
+ "renameNode() only applies to element and attribute nodes")
1851
+ if namespaceURI != EMPTY_NAMESPACE:
1852
+ if ':' in name:
1853
+ prefix, localName = name.split(':', 1)
1854
+ if ( prefix == "xmlns"
1855
+ and namespaceURI != xml.dom.XMLNS_NAMESPACE):
1856
+ raise xml.dom.NamespaceErr(
1857
+ "illegal use of 'xmlns' prefix")
1858
+ else:
1859
+ if ( name == "xmlns"
1860
+ and namespaceURI != xml.dom.XMLNS_NAMESPACE
1861
+ and n.nodeType == Node.ATTRIBUTE_NODE):
1862
+ raise xml.dom.NamespaceErr(
1863
+ "illegal use of the 'xmlns' attribute")
1864
+ prefix = None
1865
+ localName = name
1866
+ else:
1867
+ prefix = None
1868
+ localName = None
1869
+ if n.nodeType == Node.ATTRIBUTE_NODE:
1870
+ element = n.ownerElement
1871
+ if element is not None:
1872
+ is_id = n._is_id
1873
+ element.removeAttributeNode(n)
1874
+ else:
1875
+ element = None
1876
+ n.prefix = prefix
1877
+ n._localName = localName
1878
+ n.namespaceURI = namespaceURI
1879
+ n.nodeName = name
1880
+ if n.nodeType == Node.ELEMENT_NODE:
1881
+ n.tagName = name
1882
+ else:
1883
+ # attribute node
1884
+ n.name = name
1885
+ if element is not None:
1886
+ element.setAttributeNode(n)
1887
+ if is_id:
1888
+ element.setIdAttributeNode(n)
1889
+ # It's not clear from a semantic perspective whether we should
1890
+ # call the user data handlers for the NODE_RENAMED event since
1891
+ # we're re-using the existing node. The draft spec has been
1892
+ # interpreted as meaning "no, don't call the handler unless a
1893
+ # new node is created."
1894
+ return n
1895
+
1896
+ defproperty(Document, "documentElement",
1897
+ doc="Top-level element of this document.")
1898
+
1899
+
1900
+ def _clone_node(node, deep, newOwnerDocument):
1901
+ """
1902
+ Clone a node and give it the new owner document.
1903
+ Called by Node.cloneNode and Document.importNode
1904
+ """
1905
+ if node.ownerDocument.isSameNode(newOwnerDocument):
1906
+ operation = xml.dom.UserDataHandler.NODE_CLONED
1907
+ else:
1908
+ operation = xml.dom.UserDataHandler.NODE_IMPORTED
1909
+ if node.nodeType == Node.ELEMENT_NODE:
1910
+ clone = newOwnerDocument.createElementNS(node.namespaceURI,
1911
+ node.nodeName)
1912
+ for attr in node.attributes.values():
1913
+ clone.setAttributeNS(attr.namespaceURI, attr.nodeName, attr.value)
1914
+ a = clone.getAttributeNodeNS(attr.namespaceURI, attr.localName)
1915
+ a.specified = attr.specified
1916
+
1917
+ if deep:
1918
+ for child in node.childNodes:
1919
+ c = _clone_node(child, deep, newOwnerDocument)
1920
+ clone.appendChild(c)
1921
+
1922
+ elif node.nodeType == Node.DOCUMENT_FRAGMENT_NODE:
1923
+ clone = newOwnerDocument.createDocumentFragment()
1924
+ if deep:
1925
+ for child in node.childNodes:
1926
+ c = _clone_node(child, deep, newOwnerDocument)
1927
+ clone.appendChild(c)
1928
+
1929
+ elif node.nodeType == Node.TEXT_NODE:
1930
+ clone = newOwnerDocument.createTextNode(node.data)
1931
+ elif node.nodeType == Node.CDATA_SECTION_NODE:
1932
+ clone = newOwnerDocument.createCDATASection(node.data)
1933
+ elif node.nodeType == Node.PROCESSING_INSTRUCTION_NODE:
1934
+ clone = newOwnerDocument.createProcessingInstruction(node.target,
1935
+ node.data)
1936
+ elif node.nodeType == Node.COMMENT_NODE:
1937
+ clone = newOwnerDocument.createComment(node.data)
1938
+ elif node.nodeType == Node.ATTRIBUTE_NODE:
1939
+ clone = newOwnerDocument.createAttributeNS(node.namespaceURI,
1940
+ node.nodeName)
1941
+ clone.specified = True
1942
+ clone.value = node.value
1943
+ elif node.nodeType == Node.DOCUMENT_TYPE_NODE:
1944
+ assert node.ownerDocument is not newOwnerDocument
1945
+ operation = xml.dom.UserDataHandler.NODE_IMPORTED
1946
+ clone = newOwnerDocument.implementation.createDocumentType(
1947
+ node.name, node.publicId, node.systemId)
1948
+ clone.ownerDocument = newOwnerDocument
1949
+ if deep:
1950
+ clone.entities._seq = []
1951
+ clone.notations._seq = []
1952
+ for n in node.notations._seq:
1953
+ notation = Notation(n.nodeName, n.publicId, n.systemId)
1954
+ notation.ownerDocument = newOwnerDocument
1955
+ clone.notations._seq.append(notation)
1956
+ if hasattr(n, '_call_user_data_handler'):
1957
+ n._call_user_data_handler(operation, n, notation)
1958
+ for e in node.entities._seq:
1959
+ entity = Entity(e.nodeName, e.publicId, e.systemId,
1960
+ e.notationName)
1961
+ entity.actualEncoding = e.actualEncoding
1962
+ entity.encoding = e.encoding
1963
+ entity.version = e.version
1964
+ entity.ownerDocument = newOwnerDocument
1965
+ clone.entities._seq.append(entity)
1966
+ if hasattr(e, '_call_user_data_handler'):
1967
+ e._call_user_data_handler(operation, e, entity)
1968
+ else:
1969
+ # Note the cloning of Document and DocumentType nodes is
1970
+ # implementation specific. minidom handles those cases
1971
+ # directly in the cloneNode() methods.
1972
+ raise xml.dom.NotSupportedErr("Cannot clone node %s" % repr(node))
1973
+
1974
+ # Check for _call_user_data_handler() since this could conceivably
1975
+ # used with other DOM implementations (one of the FourThought
1976
+ # DOMs, perhaps?).
1977
+ if hasattr(node, '_call_user_data_handler'):
1978
+ node._call_user_data_handler(operation, node, clone)
1979
+ return clone
1980
+
1981
+
1982
+ def _nssplit(qualifiedName):
1983
+ fields = qualifiedName.split(':', 1)
1984
+ if len(fields) == 2:
1985
+ return fields
1986
+ else:
1987
+ return (None, fields[0])
1988
+
1989
+
1990
+ def _do_pulldom_parse(func, args, kwargs):
1991
+ events = func(*args, **kwargs)
1992
+ toktype, rootNode = events.getEvent()
1993
+ events.expandNode(rootNode)
1994
+ events.clear()
1995
+ return rootNode
1996
+
1997
+ def parse(file, parser=None, bufsize=None):
1998
+ """Parse a file into a DOM by filename or file object."""
1999
+ if parser is None and not bufsize:
2000
+ from xml.dom import expatbuilder
2001
+ return expatbuilder.parse(file)
2002
+ else:
2003
+ from xml.dom import pulldom
2004
+ return _do_pulldom_parse(pulldom.parse, (file,),
2005
+ {'parser': parser, 'bufsize': bufsize})
2006
+
2007
+ def parseString(string, parser=None):
2008
+ """Parse a file into a DOM from a string."""
2009
+ if parser is None:
2010
+ from xml.dom import expatbuilder
2011
+ return expatbuilder.parseString(string)
2012
+ else:
2013
+ from xml.dom import pulldom
2014
+ return _do_pulldom_parse(pulldom.parseString, (string,),
2015
+ {'parser': parser})
2016
+
2017
+ def getDOMImplementation(features=None):
2018
+ if features:
2019
+ if isinstance(features, str):
2020
+ features = domreg._parse_feature_string(features)
2021
+ for f, v in features:
2022
+ if not Document.implementation.hasFeature(f, v):
2023
+ return None
2024
+ return Document.implementation