@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,1970 @@
1
+ ##+#################################################################
2
+ #
3
+ # TkGoldberg.tcl
4
+ # by Keith Vetter, March 13, 2003
5
+ #
6
+ # "Man will always find a difficult means to perform a simple task"
7
+ # Rube Goldberg
8
+ #
9
+ # Reproduced here with permission.
10
+ #
11
+ ##+#################################################################
12
+ #
13
+ # Keith Vetter 2003-03-21: this started out as a simple little program
14
+ # but was so much fun that it grew and grew. So I apologize about the
15
+ # size but I just couldn't resist sharing it.
16
+ #
17
+ # This is a whizzlet that does a Rube Goldberg type animation, the
18
+ # design of which comes from an New Years e-card from IncrediMail.
19
+ # That version had nice sound effects which I eschewed. On the other
20
+ # hand, that version was in black and white (actually dark blue and
21
+ # light blue) and this one is fully colorized.
22
+ #
23
+ # One thing I learned from this project is that drawing filled complex
24
+ # objects on a canvas is really hard. More often than not I had to
25
+ # draw each item twice--once with the desired fill color but no
26
+ # outline, and once with no fill but with the outline. Another trick
27
+ # is erasing by drawing with the background color. Having a flood fill
28
+ # command would have been extremely helpful.
29
+ #
30
+ # Two wiki pages were extremely helpful: Drawing rounded rectangles
31
+ # which I generalized into Drawing rounded polygons, and regular
32
+ # polygons which allowed me to convert ovals and arcs into polygons
33
+ # which could then be rotated (see Canvas Rotation). I also wrote
34
+ # Named Colors to aid in the color selection.
35
+ #
36
+ # I could comment on the code, but it's just 26 state machines with
37
+ # lots of canvas create and move calls.
38
+
39
+ if {![info exists widgetDemo]} {
40
+ error "This script should be run from the \"widget\" demo."
41
+ }
42
+
43
+ package require tk
44
+
45
+ set w .goldberg
46
+ catch {destroy $w}
47
+ toplevel $w
48
+ wm title $w "Tk Goldberg (demonstration)"
49
+ wm iconname $w "goldberg"
50
+ wm resizable $w 0 0
51
+ #positionWindow $w
52
+
53
+ proc StartMessage {w} {
54
+ set msg1 "This\
55
+ is a demonstration of just how complex you can make your animations\
56
+ become. Close this dialog and click the ball to start things\
57
+ moving!\n\n\"Man will always find a difficult means to perform a\
58
+ simple task\"\n - Rube Goldberg"
59
+ PlacedDialog $w.c.messframe $msg1 {Helvetica 12}
60
+ }
61
+ ###--- End of Boilerplate ---###
62
+
63
+ array set BaseDimensions {
64
+ CanX 675
65
+ CanY 540
66
+ ScrX 750
67
+ ScrY 750
68
+ MsgX 338
69
+ MsgY 573
70
+ MovX 10
71
+ MovY -45
72
+ }
73
+
74
+ # The original value was 1.0 but this can make the demo
75
+ # too large for the screen. Try a smaller value.
76
+ set overallFactor 0.75
77
+
78
+ foreach el [array names BaseDimensions] {
79
+ set Dims($el) [expr {$BaseDimensions($el) * $overallFactor}]p
80
+ }
81
+
82
+ set scaleFactor [expr {$::tk::scalingPct / 100.0 * $overallFactor}]
83
+
84
+ # Ensure that this is an array
85
+ array set animationCallbacks {}
86
+ bind $w <Destroy> {
87
+ if {"%W" eq [winfo toplevel %W]} {
88
+ unset S C delays
89
+ }
90
+ }
91
+
92
+ set S(title) "Tk Goldberg"
93
+ set S(speed) 5
94
+ set S(cnt) 0
95
+ set S(message) "\\nWelcome\\nto\\nTcl/Tk!"
96
+ array set delays \
97
+ {1 500 2 400 3 300 4 200 5 150 6 100 7 80 8 50 9 20 10 10}
98
+
99
+ set MSTART 0; set MGO 1; set MPAUSE 2; set MSSTEP 3; set MBSTEP 4; set MDONE 5
100
+ set S(mode) $::MSTART
101
+
102
+ # Colors for everything
103
+ set C(fg) black
104
+ set C(bg) cornflowerblue
105
+
106
+ set C(0) white; set C(1a) darkgreen; set C(1b) yellow
107
+ set C(2) red; set C(3a) green; set C(3b) darkblue
108
+ set C(4) $C(fg); set C(5a) brown; set C(5b) white
109
+ set C(6) magenta; set C(7) green; set C(8) $C(fg)
110
+ set C(9) blue4; set C(10a) white; set C(10b) cyan
111
+ set C(11a) yellow; set C(11b) mediumblue; set C(12) tan2
112
+ set C(13a) yellow; set C(13b) red; set C(14) white
113
+ set C(15a) green; set C(15b) yellow; set C(16) gray65
114
+ set C(17) \#A65353; set C(18) $C(fg); set C(19) gray50
115
+ set C(20) cyan; set C(21) gray65; set C(22) $C(20)
116
+ set C(23a) blue; set C(23b) red; set C(23c) yellow
117
+ set C(24a) red; set C(24b) white;
118
+ set C(24c) black; set C(26) $C(0);
119
+
120
+ proc DoDisplay {w} {
121
+ global S C Dims
122
+
123
+ ttk::frame $w.ctrl -relief ridge -borderwidth 1 -padding 3p
124
+ pack [frame $w.screen -bd 1 -relief raised] \
125
+ -side left -fill both -expand 1
126
+
127
+ canvas $w.c -width $Dims(CanX) -height $Dims(CanY) -bg $C(bg) \
128
+ -highlightthickness 0
129
+ $w.c config -scrollregion [list 0 0 $Dims(ScrX) $Dims(ScrY)]
130
+ $w.c yview moveto .06 ;# Kludge: move everything up
131
+ pack $w.c -in $w.screen -side top -fill both -expand 1
132
+
133
+ bind $w.c <Configure> { %W yview moveto .06 }
134
+ bind $w.c <Button-3> [list $w.pause invoke]
135
+ bind $w.c <Destroy> {
136
+ after cancel $animationCallbacks(goldberg)
137
+ unset animationCallbacks(goldberg)
138
+ }
139
+ DoCtrlFrame $w
140
+ DoDetailFrame $w
141
+ if {[tk windowingsystem] ne "aqua"} {
142
+ ttk::button $w.show -text "▶" -command [list ShowCtrl $w] -width 2
143
+ } else {
144
+ button $w.show -text "▶" -command [list ShowCtrl $w] -width 1 \
145
+ -borderwidth 1 -highlightthickness 0 -padx 0 -pady 0 \
146
+ -highlightbackground $C(bg)
147
+ }
148
+ place $w.show -in $w.c -relx 1 -rely 0 -anchor ne
149
+ update
150
+ }
151
+
152
+ proc DoCtrlFrame {w} {
153
+ global S
154
+ ttk::button $w.start -text "Start" -command [list DoButton $w 0]
155
+ ttk::checkbutton $w.pause -text "Pause" -command [list DoButton $w 1] \
156
+ -variable S(pause)
157
+ ttk::button $w.step -text "Single Step" -command [list DoButton $w 2]
158
+ ttk::button $w.bstep -text "Big Step" -command [list DoButton $w 4]
159
+ ttk::button $w.reset -text "Reset" -command [list DoButton $w 3]
160
+ ttk::labelframe $w.details
161
+ raise $w.details
162
+ set S(details) 0
163
+ ttk::checkbutton $w.details.cb -text "Details" -variable S(details)
164
+ ttk::labelframe $w.message -text "Message"
165
+ ttk::entry $w.message.e -textvariable S(message) -justify center
166
+ ttk::labelframe $w.speed -text "Speed: 0"
167
+ ttk::scale $w.speed.scale -orient horizontal -from 1 -to 10 \
168
+ -variable S(speed)
169
+ ttk::button $w.about -text About -command [list About $w]
170
+
171
+ grid $w.start -in $w.ctrl -row 0 -sticky ew
172
+ grid rowconfigure $w.ctrl 1 -minsize 3p
173
+ grid $w.pause -in $w.ctrl -row 2 -sticky ew
174
+ grid $w.step -in $w.ctrl -sticky ew -pady 1.5p
175
+ grid $w.bstep -in $w.ctrl -sticky ew
176
+ grid $w.reset -in $w.ctrl -sticky ew -pady 1.5p
177
+ grid rowconfigure $w.ctrl 10 -minsize 3p
178
+ grid $w.details -in $w.ctrl -row 11 -sticky ew
179
+ grid rowconfigure $w.ctrl 11 -minsize 3p
180
+ $w.details configure -labelwidget $w.details.cb
181
+ grid [ttk::frame $w.details.b -height 1] ;# Work around minor bug
182
+ raise $w.details
183
+ raise $w.details.cb
184
+ grid rowconfigure $w.ctrl 50 -weight 1
185
+ trace add variable ::S(mode) write [list ActiveGUI $w]
186
+ trace add variable ::S(details) write [list ActiveGUI $w]
187
+ trace add variable ::S(speed) write [list ActiveGUI $w]
188
+
189
+ grid $w.message -in $w.ctrl -row 98 -sticky ew -pady {0 3p}
190
+ grid $w.message.e -sticky nsew
191
+ grid $w.speed -in $w.ctrl -row 99 -sticky ew -pady {0 3p}
192
+ pack $w.speed.scale -fill both -expand 1
193
+ grid $w.about -in $w.ctrl -row 100 -sticky ew
194
+ bind $w.reset <Button-3> {set S(mode) -1} ;# Debugging
195
+
196
+ ## See Code / Dismiss buttons hack!
197
+ grid [ttk::separator $w.ctrl.sep] -sticky ew -pady {3p 1.5p}
198
+ set btns {}
199
+ foreach b [winfo children [addSeeDismiss $w.ctrl.buttons $w]] {
200
+ if {[winfo class $b] eq "TButton"} {
201
+ set btns [linsert $btns 0 $b] ;# Prepend
202
+ }
203
+ }
204
+ set i 0
205
+ foreach b $btns {
206
+ grid [set b2 [ttk::button $w.ctrl.b[incr i]]] -sticky ew -pady {1.5p 0}
207
+ foreach b3 [$b configure] {
208
+ set b3 [lindex $b3 0]
209
+ # Some options are read-only; ignore those errors
210
+ catch {$b2 configure $b3 [$b cget $b3]}
211
+ }
212
+ }
213
+ destroy $btns
214
+ }
215
+
216
+ proc DoDetailFrame {w} {
217
+ set w2 $w.details.f
218
+ ttk::frame $w2
219
+
220
+ ttk::label $w2.l -textvariable S(cnt) -background white
221
+ grid $w2.l - - - -sticky ew -row 0
222
+ for {set i 1} {1} {incr i} {
223
+ if {[info procs "Move$i"] eq ""} break
224
+ ttk::label $w2.l$i -text $i -anchor e -width 2 -background white
225
+ ttk::label $w2.ll$i -textvariable STEP($i) -width 5 -background white
226
+ set row [expr {($i + 1) / 2}]
227
+ set col [expr {(($i + 1) & 1) * 2}]
228
+ grid $w2.l$i -sticky ew -row $row -column $col
229
+ grid $w2.ll$i -sticky ew -row $row -column [incr col]
230
+ }
231
+ grid columnconfigure $w2 1 -weight 1
232
+ }
233
+
234
+ # Map or unmap the ctrl window
235
+ proc ShowCtrl {w} {
236
+ if {[winfo ismapped $w.ctrl]} {
237
+ pack forget $w.ctrl
238
+ $w.show config -text "▶"
239
+ } else {
240
+ pack $w.ctrl -side right -fill both -ipady 5
241
+ $w.show config -text "◀"
242
+ }
243
+ }
244
+
245
+ proc DrawAll {w} {
246
+ global scaleFactor
247
+ ResetStep
248
+ $w.c delete all
249
+ for {set i 0} {1} {incr i} {
250
+ set p "Draw$i"
251
+ if {[info procs $p] eq ""} break
252
+ $p $w
253
+ }
254
+
255
+ $w.c scale all 0 0 $scaleFactor $scaleFactor
256
+
257
+ # Tile the strike box with a 4x4 bitmap image derived
258
+ # from Tk's built-in 16x16 bitmap gray25. Adjust
259
+ # x1, y2 to make dimensions multiples of 4 pixels.
260
+
261
+ image create bitmap smallGray25 -data {
262
+ #define smallGray25_width 4
263
+ #define smallGray25_height 4
264
+ static unsigned char smallGray25_bits[] = {
265
+ 0x08, 0x02, 0x08, 0x02};
266
+ } -foreground $::C(fg)
267
+
268
+ lassign [$w.c coords StrikeBox] x1 y1 x2 y2
269
+ set oldMidY [expr {round(($y1 + $y2) / 2.0)}]
270
+
271
+ set rowCount [expr {round(($y2 - $y1) / 4.0)}]
272
+ set colCount [expr {round(($x2 - $x1) / 4.0)}]
273
+ set x2 [expr {round($x2)}]
274
+ set x1 [expr {$x2 - $colCount * 4}]
275
+ set y1 [expr {round($y1)}]
276
+ set y2 [expr {$y1 + $rowCount * 4}]
277
+
278
+ set newMidY [expr {round(($y1 + $y2) / 2.0)}]
279
+ set deltaY [expr {$oldMidY - $newMidY}]
280
+ incr y1 $deltaY; incr y2 $deltaY
281
+ $w.c coords StrikeBox $x1 $y1 $x2 $y2
282
+
283
+ for {set row 0; set y $y1} {$row < $rowCount} {incr row; incr y 4} {
284
+ for {set col 0; set x $x1} {$col < $colCount} {incr col; incr x 4} {
285
+ $w.c create image $x $y -image smallGray25 -anchor nw
286
+ }
287
+ }
288
+ }
289
+
290
+ proc ActiveGUI {w var1 var2 op} {
291
+ global S MGO MSTART MDONE
292
+ array set z {0 disabled 1 normal}
293
+
294
+ set m $S(mode)
295
+ set S(pause) [expr {$m == 2}]
296
+ $w.start config -state $z([expr {$m != $MGO}])
297
+ $w.pause config -state $z([expr {$m != $MSTART && $m != $MDONE}])
298
+ $w.step config -state $z([expr {$m != $MGO && $m != $MDONE}])
299
+ $w.bstep config -state $z([expr {$m != $MGO && $m != $MDONE}])
300
+ $w.reset config -state $z([expr {$m != $MSTART}])
301
+
302
+ if {$S(details)} {
303
+ grid $w.details.f -sticky ew
304
+ } else {
305
+ grid forget $w.details.f
306
+ }
307
+ set S(speed) [expr {round($S(speed))}]
308
+ $w.speed config -text "Speed: $S(speed)"
309
+ }
310
+
311
+ proc Start {} {
312
+ global S MGO
313
+ set S(mode) $MGO
314
+ }
315
+
316
+ proc DoButton {w what} {
317
+ global S MDONE MGO MSSTEP MBSTEP MPAUSE
318
+
319
+ if {$what == 0} { ;# Start
320
+ if {$S(mode) == $MDONE} {
321
+ Reset $w
322
+ }
323
+ set S(mode) $MGO
324
+ } elseif {$what == 1} { ;# Pause
325
+ set S(mode) [expr {$S(pause) ? $MPAUSE : $MGO}]
326
+ } elseif {$what == 2} { ;# Step
327
+ set S(mode) $MSSTEP
328
+ } elseif {$what == 3} { ;# Reset
329
+ Reset $w
330
+ } elseif {$what == 4} { ;# Big step
331
+ set S(mode) $MBSTEP
332
+ }
333
+ }
334
+
335
+ proc Go {w {who {}}} {
336
+ global S delays animationCallbacks MGO MPAUSE MSSTEP MBSTEP
337
+
338
+ set now [clock clicks -milliseconds]
339
+ catch {after cancel $animationCallbacks(goldberg)}
340
+ if {$who ne ""} { ;# Start here for debugging
341
+ set S(active) $who
342
+ set S(mode) $MGO
343
+ }
344
+ if {$S(mode) == -1} return ;# Debugging
345
+ set n 0
346
+ if {$S(mode) != $MPAUSE} { ;# Not paused
347
+ set n [NextStep $w] ;# Do the next move
348
+ }
349
+ if {$S(mode) == $MSSTEP} { ;# Single step
350
+ set S(mode) $MPAUSE
351
+ }
352
+ if {$S(mode) == $MBSTEP && $n} { ;# Big step
353
+ set S(mode) $MSSTEP
354
+ }
355
+
356
+ set elapsed [expr {[clock click -milliseconds] - $now}]
357
+ set delay [expr {$delays($S(speed)) - $elapsed}]
358
+ if {$delay <= 0} {
359
+ set delay 1
360
+ }
361
+ set animationCallbacks(goldberg) [after $delay [list Go $w]]
362
+ }
363
+
364
+ # NextStep: drives the next step of the animation
365
+ proc NextStep {w} {
366
+ global S MSTART MDONE
367
+ set rval 0 ;# Return value
368
+
369
+ if {$S(mode) != $MSTART && $S(mode) != $MDONE} {
370
+ incr S(cnt)
371
+ }
372
+ set alive {}
373
+ foreach {who} $S(active) {
374
+ set n ["Move$who" $w]
375
+ if {$n & 1} { ;# This guy still alive
376
+ lappend alive $who
377
+ }
378
+ if {$n & 2} { ;# Next guy is active
379
+ lappend alive [expr {$who + 1}]
380
+ set rval 1
381
+ }
382
+ if {$n & 4} { ;# End of puzzle flag
383
+ set S(mode) $MDONE ;# Done mode
384
+ set S(active) {} ;# No more animation
385
+ return 1
386
+ }
387
+ }
388
+ set S(active) $alive
389
+ return $rval
390
+ }
391
+
392
+ proc About {w} {
393
+ set msg "$::S(title)\nby Keith Vetter, March 2003\n(Reproduced by kind\
394
+ permission of the author)\n\n\"Man will always find a difficult\
395
+ means to perform a simple task.\"\n - Rube Goldberg"
396
+ PlacedDialog $w.c.messframe $msg {Helvetica 12 bold}
397
+ return
398
+ }
399
+ ################################################################
400
+ #
401
+ # All the drawing and moving routines
402
+ #
403
+
404
+ # START HERE! banner
405
+ proc Draw0 {w} {
406
+ set color $::C(0)
407
+ set xy {699 119}
408
+ $w.c create text $xy -text "START HERE!" -fill $color -anchor e \
409
+ -tag {I0 I0_0} -font {Times 12 italic bold}
410
+ set xy {719 119 763 119}
411
+ $w.c create line $xy -tag {I0 I0_1} -fill $color -width 3.75p -arrow last \
412
+ -arrowshape {13.5p 13.5p 3.75p}
413
+ $w.c bind I0 <Button-1> Start
414
+ }
415
+ proc Move0 {w {step {}}} {
416
+ set step [GetStep 0 $step]
417
+
418
+ if {$::S(mode) > $::MSTART} { ;# Start the ball rolling
419
+ MoveAbs $w I0 {-100 -100} ;# Hide the banner
420
+ return 2
421
+ }
422
+
423
+ set pos [scl {
424
+ {719 119} {724 119} {729 119} {734 119}
425
+ {739 119} {734 119} {729 119} {724 119}
426
+ }]
427
+ set step [expr {$step % [llength $pos]}]
428
+ lassign [lindex $pos $step] x y
429
+ $w.c coords I0_0 [expr {$x - [scl 20]}] $y
430
+ $w.c coords I0_1 $x $y [expr {$x + [scl 44]}] $y
431
+ return 1
432
+ }
433
+
434
+ # Dropping ball
435
+ proc Draw1 {w} {
436
+ set color $::C(1a)
437
+ set color2 $::C(1b)
438
+ set xy {844 133 800 133 800 346 820 346 820 168 844 168 844 133}
439
+ $w.c create poly $xy -width 2.25p -fill $color -outline {}
440
+ set xy {771 133 685 133 685 168 751 168 751 346 771 346 771 133}
441
+ $w.c create poly $xy -width 2.25p -fill $color -outline {}
442
+
443
+ set xy [box 812 122 9]
444
+ $w.c create oval $xy -tag I1 -fill $color2 -outline {}
445
+ $w.c bind I1 <Button-1> Start
446
+ }
447
+ proc Move1 {w {step {}}} {
448
+ set step [GetStep 1 $step]
449
+ set pos [scl {
450
+ {807 122} {802 122} {797 123} {793 124} {789 129} {785 153}
451
+ {785 203} {785 278 x} {785 367} {810 392} {816 438} {821 503}
452
+ {824 585 y} {838 587} {848 593} {857 601} {-100 -100}
453
+ }]
454
+ if {$step >= [llength $pos]} {
455
+ return 0
456
+ }
457
+ set where [lindex $pos $step]
458
+ MoveAbs $w I1 $where
459
+
460
+ if {[lindex $where 2] eq "y"} {
461
+ Move15a $w
462
+ }
463
+ if {[lindex $where 2] eq "x"} {
464
+ return 3
465
+ }
466
+ return 1
467
+ }
468
+
469
+ # Lighting the match
470
+ proc Draw2 {w} {
471
+ set color red
472
+ set color $::C(2)
473
+ set xy {750 369 740 392 760 392} ;# Fulcrum
474
+ $w.c create poly $xy -fill $::C(fg) -outline $::C(fg)
475
+ set xy {628 335 660 383} ;# Strike box
476
+ $w.c create rect $xy -fill {} -outline $::C(fg) -tag StrikeBox
477
+
478
+ set xy {702 366 798 366} ;# Lever
479
+ $w.c create line $xy -fill $::C(fg) -width 5.25p -tag I2_0
480
+ set xy {712 363 712 355} ;# R strap
481
+ $w.c create line $xy -fill $::C(fg) -width 2.25p -tag I2_1
482
+ set xy {705 363 705 355} ;# L strap
483
+ $w.c create line $xy -fill $::C(fg) -width 2.25p -tag I2_2
484
+ set xy {679 356 679 360 717 360 717 356 679 356} ;# Match stick
485
+ $w.c create line $xy -fill $::C(fg) -tag I2_3
486
+
487
+ #set xy {662 352 680 365} ;# Match head
488
+ set xy {
489
+ 671 352 677.4 353.9 680 358.5 677.4 363.1 671 365 664.6 363.1
490
+ 662 358.5 664.6 353.9
491
+ }
492
+ $w.c create poly $xy -fill $color -outline $color -tag I2_4
493
+ }
494
+ proc Move2 {w {step {}}} {
495
+ set step [GetStep 2 $step]
496
+
497
+ set stages {0 0 1 2 0 2 1 0 1 2 0 2 1}
498
+ set xy(0) [scl {
499
+ 686 333 692 323 682 316 674 309 671 295 668 307 662 318 662 328
500
+ 671 336
501
+ }]
502
+ set xy(1) [scl {
503
+ 687 331 698 322 703 295 680 320 668 297 663 311 661 327 671 335}]
504
+ set xy(2) [scl {
505
+ 686 331 704 322 688 300 678 283 678 283 674 298 666 309 660 324
506
+ 672 336
507
+ }]
508
+
509
+ if {$step >= [llength $stages]} {
510
+ $w.c delete I2
511
+ return 0
512
+ }
513
+
514
+ if {$step == 0} { ;# Rotate the match
515
+ set beta 20
516
+ lassign [Anchor $w I2_0 s] Ox Oy ;# Where to pivot
517
+ for {set i 0} {[$w.c find withtag I2_$i] ne ""} {incr i} {
518
+ RotateItem $w I2_$i $Ox $Oy $beta
519
+ }
520
+ $w.c create poly -tag I2 -smooth 1 -fill $::C(2) ;# For the flame
521
+ return 1
522
+ }
523
+ $w.c coords I2 $xy([lindex $stages $step])
524
+ return [expr {$step == 7 ? 3 : 1}]
525
+ }
526
+
527
+ # Weight and pulleys
528
+ proc Draw3 {w} {
529
+ set color $::C(3a)
530
+ set color2 $::C(3b)
531
+
532
+ set xy {602 296 577 174 518 174}
533
+ foreach {x y} $xy { ;# 3 Pulleys
534
+ $w.c create oval [box $x $y 13] -fill $color -outline $::C(fg) \
535
+ -width 2.25p
536
+ $w.c create oval [box $x $y 2] -fill $::C(fg) -outline $::C(fg)
537
+ }
538
+
539
+ set xy {750 309 670 309} ;# Wall to flame
540
+ $w.c create line $xy -tag I3_s -width 2.25p -fill $::C(fg) -smooth 1
541
+ set xy {670 309 650 309} ;# Flame to pulley 1
542
+ $w.c create line $xy -tag I3_0 -width 2.25p -fill $::C(fg)
543
+ set xy {650 309 600 309} ;# Flame to pulley 1
544
+ $w.c create line $xy -tag I3_1 -width 2.25p -fill $::C(fg)
545
+ set xy {589 296 589 235} ;# Pulley 1 half way to 2
546
+ $w.c create line $xy -tag I3_2 -width 2.25p -fill $::C(fg)
547
+ set xy {589 235 589 174} ;# Pulley 1 other half to 2
548
+ $w.c create line $xy -width 2.25p -fill $::C(fg)
549
+ set xy {577 161 518 161} ;# Across the top
550
+ $w.c create line $xy -width 2.25p -fill $::C(fg)
551
+ set xy {505 174 505 205} ;# Down to weight
552
+ $w.c create line $xy -tag I3_w -width 2.25p -fill $::C(fg)
553
+
554
+ # Draw the weight as 2 circles, two rectangles and 1 rounded rectangle
555
+ set xy {515 207 495 207}
556
+ foreach {x1 y1 x2 y2} $xy {
557
+ $w.c create oval [box $x1 $y1 6] -tag I3_ -fill $color2 \
558
+ -outline $color2
559
+ $w.c create oval [box $x2 $y2 6] -tag I3_ -fill $color2 \
560
+ -outline $color2
561
+ incr y1 -6; incr y2 6
562
+ $w.c create rect $x1 $y1 $x2 $y2 -tag I3_ -fill $color2 \
563
+ -outline $color2
564
+ }
565
+ set xy {492 220 518 263}
566
+ set xy [RoundRect $w $xy 15]
567
+ $w.c create poly $xy -smooth 1 -tag I3_ -fill $color2 -outline $color2
568
+ set xy {500 217 511 217}
569
+ $w.c create line $xy -tag I3_ -fill $color2 -width 7.5p
570
+
571
+ set xy {502 393 522 393 522 465} ;# Bottom weight target
572
+ $w.c create line $xy -tag I3__ -fill $::C(fg) -join miter -width 7.5p
573
+ }
574
+ proc Move3 {w {step {}}} {
575
+ set step [GetStep 3 $step]
576
+
577
+ set pos [scl {{505 247} {505 297} {505 386.5} {505 386.5}}]
578
+ set rope(0) [scl {750 309 729 301 711 324 690 300}]
579
+ set rope(1) [scl {750 309 737 292 736 335 717 315 712 320}]
580
+ set rope(2) [scl {750 309 737 309 740 343 736 351 725 340}]
581
+ set rope(3) [scl {750 309 738 321 746 345 742 356}]
582
+
583
+ if {$step >= [llength $pos]} {
584
+ return 0
585
+ }
586
+
587
+ $w.c delete "I3_$step" ;# Delete part of the rope
588
+ MoveAbs $w I3_ [lindex $pos $step] ;# Move weight down
589
+ $w.c coords I3_s $rope($step) ;# Flapping rope end
590
+ $w.c coords I3_w [concat [scl {505 174}] [lindex $pos $step]]
591
+ if {$step == 2} {
592
+ $w.c move I3__ 0 30
593
+ return 2
594
+ }
595
+ return 1
596
+ }
597
+
598
+ # Cage and door
599
+ proc Draw4 {w} {
600
+ set color $::C(4)
601
+ lassign {527 356 611 464} x0 y0 x1 y1
602
+
603
+ for {set y $y0} {$y <= $y1} {incr y 12} { ;# Horizontal bars
604
+ $w.c create line $x0 $y $x1 $y -fill $color -width 0.75p
605
+ }
606
+ for {set x $x0} {$x <= $x1} {incr x 12} { ;# Vertical bars
607
+ $w.c create line $x $y0 $x $y1 -fill $color -width 0.75p
608
+ }
609
+
610
+ set xy {518 464 518 428} ;# Swing gate
611
+ $w.c create line $xy -tag I4 -fill $color -width 2.25p
612
+ }
613
+ proc Move4 {w {step {}}} {
614
+ set step [GetStep 4 $step]
615
+
616
+ set angles {-10 -20 -30 -30}
617
+ if {$step >= [llength $angles]} {
618
+ return 0
619
+ }
620
+ RotateItem $w I4 [scl 518] [scl 464] [lindex $angles $step]
621
+ $w.c raise I4
622
+ return [expr {$step == 3 ? 3 : 1}]
623
+ }
624
+
625
+ # Mouse
626
+ proc Draw5 {w} {
627
+ set color $::C(5a)
628
+ set color2 $::C(5b)
629
+ set xy {377 248 410 248 410 465 518 465} ;# Mouse course
630
+ lappend xy 518 428 451 428 451 212 377 212
631
+ $w.c create poly $xy -fill $color2 -outline $::C(fg) -width 2.25p
632
+
633
+ set xy {
634
+ 534.5 445.5 541 440 552 436 560 436 569 440 574 446 575 452 574 454
635
+ 566 456 554 456 545 456 537 454 530 452
636
+ }
637
+ $w.c create poly $xy -tag {I5 I5_0} -fill $color
638
+ set xy {573 452 592 458 601 460 613 456} ;# Tail
639
+ $w.c create line $xy -tag {I5 I5_1} -fill $color -smooth 1 -width 2.25p
640
+ set xy [box 540 446 2] ;# Eye
641
+ set xy {540 444 541 445 541 447 540 448 538 447 538 445}
642
+ #.c create oval $xy -tag {I5 I5_2} -fill $::C(bg) -outline {}
643
+ $w.c create poly $xy -tag {I5 I5_2} -fill $::C(bg) -outline {} -smooth 1
644
+ set xy {538 454 535 461} ;# Front leg
645
+ $w.c create line $xy -tag {I5 I5_3} -fill $color -width 1.5p
646
+ set xy {566 455 569 462} ;# Back leg
647
+ $w.c create line $xy -tag {I5 I5_4} -fill $color -width 1.5p
648
+ set xy {544 455 545 460} ;# 2nd front leg
649
+ $w.c create line $xy -tag {I5 I5_5} -fill $color -width 1.5p
650
+ set xy {560 455 558 460} ;# 2nd back leg
651
+ $w.c create line $xy -tag {I5 I5_6} -fill $color -width 1.5p
652
+ }
653
+ proc Move5 {w {step {}}} {
654
+ set step [GetStep 5 $step]
655
+
656
+ set pos [scl {
657
+ {553 452} {533 452} {513 452} {493 452} {473 452}
658
+ {463 442 30} {445.5 441.5 30} {425.5 434.5 30} {422 414} {422 394}
659
+ {422 374} {422 354} {422 334} {422 314} {422 294}
660
+ {422 274 -30} {422 260.5 -30 x} {422.5 248.5 -28} {425 237}
661
+ }]
662
+ if {$step >= [llength $pos]} {
663
+ return 0
664
+ }
665
+
666
+ lassign [lindex $pos $step] x y beta next
667
+ MoveAbs $w I5 [list $x $y]
668
+ if {$beta ne ""} {
669
+ lassign [Centroid $w I5_0] Ox Oy
670
+ foreach id {0 1 2 3 4 5 6} {
671
+ RotateItem $w I5_$id $Ox $Oy $beta
672
+ }
673
+ }
674
+ if {$next eq "x"} {
675
+ return 3
676
+ }
677
+ return 1
678
+ }
679
+
680
+ # Dropping gumballs
681
+ array set XY6 {
682
+ -1 {366 207} -2 {349 204} -3 {359 193} -4 {375 192} -5 {340 190}
683
+ -6 {349 177} -7 {366 177} -8 {380 176} -9 {332 172} -10 {342 161}
684
+ -11 {357 164} -12 {372 163} -13 {381 149} -14 {364 151} -15 {349 146}
685
+ -16 {333 148} 0 {357 219}
686
+ 1 {359 261} 2 {359 291} 3 {359 318} 4 {361 324} 5 {365 329} 6 {367 334}
687
+ 7 {367 340} 8 {366 346} 9 {364 350} 10 {361 355} 11 {359 370} 12 {359 391}
688
+ 13,0 {360 456} 13,1 {376 456} 13,2 {346 456} 13,3 {330 456}
689
+ 13,4 {353 444} 13,5 {368 443} 13,6 {339 442} 13,7 {359 431}
690
+ 13,8 {380 437} 13,9 {345 428} 13,10 {328 434} 13,11 {373 424}
691
+ 13,12 {331 420} 13,13 {360 417} 13,14 {345 412} 13,15 {376 410}
692
+ 13,16 {360 403}
693
+ }
694
+ proc Draw6 {w} {
695
+ set color $::C(6)
696
+ set xy {324 130 391 204} ;# Ball holder
697
+ set xy [RoundRect $w $xy 10]
698
+ $w.c create poly $xy -smooth 1 -outline $::C(fg) -width 2.25p -fill $color
699
+ set xy {339 204 376 253} ;# Below the ball holder
700
+ $w.c create rect $xy -fill {} -outline $::C(fg) -width 2.25p -fill $color \
701
+ -tag I6c
702
+ set xy [box 346 339 28]
703
+ $w.c create oval $xy -fill $color -outline {} ;# Rotor
704
+ $w.c create arc $xy -outline $::C(fg) -width 1.5p -style arc \
705
+ -start 80 -extent 205
706
+ $w.c create arc $xy -outline $::C(fg) -width 1.5p -style arc \
707
+ -start -41 -extent 85
708
+
709
+ set xy [box 346 339 15] ;# Center of rotor
710
+ $w.c create oval $xy -outline $::C(fg) -fill $::C(fg) -tag I6m
711
+ set xy {352 312 352 254 368 254 368 322} ;# Top drop to rotor
712
+ $w.c create poly $xy -fill $color -outline {}
713
+ $w.c create line $xy -fill $::C(fg) -width 1.5p
714
+
715
+ set xy {353 240 367 300} ;# Poke bottom hole
716
+ $w.c create rect $xy -fill $color -outline {}
717
+ set xy {341 190 375 210} ;# Poke another hole
718
+ $w.c create rect $xy -fill $color -outline {}
719
+
720
+ set xy {368 356 368 403 389 403 389 464 320 464 320 403 352 403 352 366}
721
+ $w.c create poly $xy -fill $color -outline {} -width 1.5p ;# Below rotor
722
+ $w.c create line $xy -fill $::C(fg) -width 1.5p
723
+ set xy [box 275 342 7] ;# On/off rotor
724
+ $w.c create oval $xy -outline $::C(fg) -fill $::C(fg)
725
+ set xy {276 334 342 325} ;# Fan belt top
726
+ $w.c create line $xy -fill $::C(fg) -width 2.25p
727
+ set xy {276 349 342 353} ;# Fan belt bottom
728
+ $w.c create line $xy -fill $::C(fg) -width 2.25p
729
+
730
+ set xy {337 212 337 247} ;# What the mouse pushes
731
+ $w.c create line $xy -fill $::C(fg) -width 2.25p -tag I6_
732
+ set xy {392 212 392 247}
733
+ $w.c create line $xy -fill $::C(fg) -width 2.25p -tag I6_
734
+ set xy {337 230 392 230}
735
+ $w.c create line $xy -fill $::C(fg) -width 5.25p -tag I6_
736
+
737
+ set who -1 ;# All the balls
738
+ set colors {red cyan orange green blue darkblue}
739
+ lappend colors {*}$colors {*}$colors
740
+
741
+ for {set i 0} {$i < 17} {incr i} {
742
+ set loc [expr {-1 * $i}]
743
+ set color [lindex $colors $i]
744
+ $w.c create oval [box {*}$::XY6($loc) 5] -fill $color \
745
+ -outline $color -tag I6_b$i
746
+ }
747
+ Draw6a $w 12 ;# The wheel
748
+ }
749
+ proc Draw6a {w beta {scale 0}} {
750
+ $w.c delete I6_0
751
+ if {$scale} {
752
+ lassign [scl {346 339}] Ox Oy
753
+ } else {
754
+ lassign {346 339} Ox Oy
755
+ }
756
+ for {set i 0} {$i < 4} {incr i} {
757
+ set b [expr {$beta + $i * 45}]
758
+ if {$scale} {
759
+ lassign [RotateC [scl 28] 0 0 0 $b] x y
760
+ } else {
761
+ lassign [RotateC 28 0 0 0 $b] x y
762
+ }
763
+ set xy [list [expr {$Ox+$x}] [expr {$Oy+$y}] \
764
+ [expr {$Ox-$x}] [expr {$Oy-$y}]]
765
+ $w.c create line $xy -tag I6_0 -fill $::C(fg) -width 1.5p
766
+ }
767
+ }
768
+ proc Move6 {w {step {}}} {
769
+ set step [GetStep 6 $step]
770
+ if {$step > 62} {
771
+ return 0
772
+ }
773
+
774
+ if {$step < 2} { ;# Open gate for balls to drop
775
+ $w.c move I6_ -5.25p 0
776
+ if {$step == 1} { ;# Poke a hole
777
+ set xy [scl {348 226 365 240}]
778
+ $w.c create rect $xy -fill [$w.c itemcget I6c -fill] -outline {}
779
+ }
780
+ return 1
781
+ }
782
+
783
+ set s [expr {$step - 1}] ;# Do the gumball drop dance
784
+ for {set i 0} {$i <= int(($s-1) / 3)} {incr i} {
785
+ set tag "I6_b$i"
786
+ if {[$w.c find withtag $tag] eq ""} break
787
+ set loc [expr {$s - 3 * $i}]
788
+
789
+ if {[info exists ::XY6($loc,$i)]} {
790
+ MoveAbs $w $tag [scl $::XY6($loc,$i)]
791
+ } elseif {[info exists ::XY6($loc)]} {
792
+ MoveAbs $w $tag [scl $::XY6($loc)]
793
+ }
794
+ }
795
+ if {($s % 3) == 1} {
796
+ set first [expr {($s + 2) / 3}]
797
+ for {set i $first} {1} {incr i} {
798
+ set tag "I6_b$i"
799
+ if {[$w.c find withtag $tag] eq ""} break
800
+ set loc [expr {$first - $i}]
801
+ MoveAbs $w $tag [scl $::XY6($loc)]
802
+ }
803
+ }
804
+ if {$s >= 3} { ;# Rotate the motor
805
+ set idx [expr {$s % 3}]
806
+ #Draw6a $w [lindex {12 35 64} $idx]
807
+ Draw6a $w [expr {12 + $s * 15}] 1
808
+ }
809
+ return [expr {$s == 3 ? 3 : 1}]
810
+ }
811
+
812
+ # On/off switch
813
+ proc Draw7 {w} {
814
+ set color $::C(7)
815
+ set xy {198 306 277 374} ;# Box
816
+ $w.c create rect $xy -outline $::C(fg) -width 1.5p -fill $color -tag I7z
817
+ $w.c lower I7z
818
+ set xy {275 343 230 349}
819
+ $w.c create line $xy -tag I7 -fill $::C(fg) -arrow last \
820
+ -arrowshape {17.25p 17.25p 6p} -width 4.5p
821
+ set xy {225 324} ;# On button
822
+ $w.c create oval [box {*}$xy 3] -fill $::C(fg) -outline $::C(fg)
823
+ set xy {218 323} ;# On text
824
+ set font {Times 8}
825
+ $w.c create text $xy -text "on" -anchor e -fill $::C(fg) -font $font
826
+ set xy {225 350} ;# Off button
827
+ $w.c create oval [box {*}$xy 3] -fill $::C(fg) -outline $::C(fg)
828
+ set xy {218 349} ;# Off button
829
+ $w.c create text $xy -text "off" -anchor e -fill $::C(fg) -font $font
830
+ }
831
+ proc Move7 {w {step {}}} {
832
+ set step [GetStep 7 $step]
833
+ set numsteps 30
834
+ if {$step > $numsteps} {
835
+ return 0
836
+ }
837
+ set beta [expr {30.0 / $numsteps}]
838
+ RotateItem $w I7 [scl 275] [scl 343] $beta
839
+
840
+ return [expr {$step == $numsteps ? 3 : 1}]
841
+ }
842
+
843
+ # Electricity to the fan
844
+ proc Draw8 {w} {
845
+ Sine $w 271 248 271 306 5 8 -tag I8_s -fill $::C(8) -width 2.25p
846
+ }
847
+ proc Move8 {w {step {}}} {
848
+ set step [GetStep 8 $step]
849
+
850
+ if {$step > 3} {
851
+ return 0
852
+ }
853
+ if {$step == 0} {
854
+ Sparkle $w [Anchor $w I8_s s] I8
855
+ return 1
856
+
857
+ } elseif {$step == 1} {
858
+ MoveAbs $w I8 [Anchor $w I8_s c]
859
+ } elseif {$step == 2} {
860
+ MoveAbs $w I8 [Anchor $w I8_s n]
861
+ } else {
862
+ $w.c delete I8
863
+ }
864
+ return [expr {$step == 2 ? 3 : 1}]
865
+ }
866
+
867
+ # Fan
868
+ proc Draw9 {w} {
869
+ set color $::C(9)
870
+ set xy {266 194 310 220}
871
+ $w.c create oval $xy -outline $color -fill $color
872
+ set xy {280 209 296 248}
873
+ $w.c create oval $xy -outline $color -fill $color
874
+ set xy {288 249 252 249 260 240 280 234 296 234 316 240 324 249 288 249}
875
+ $w.c create poly $xy -fill $color -smooth 1
876
+
877
+ set xy {248 205 265 214 264 205 265 196} ;# Spinner
878
+ $w.c create poly $xy -fill $color
879
+
880
+ set xy {255 206 265 234} ;# Fan blades
881
+ $w.c create oval $xy -fill {} -outline $::C(fg) -width 2.25p -tag I9_0
882
+ set xy {255 176 265 204}
883
+ $w.c create oval $xy -fill {} -outline $::C(fg) -width 2.25p -tag I9_0
884
+ set xy {255 206 265 220}
885
+ $w.c create oval $xy -fill {} -outline $::C(fg) -width 0.75p -tag I9_1
886
+ set xy {255 190 265 204}
887
+ $w.c create oval $xy -fill {} -outline $::C(fg) -width 0.75p -tag I9_1
888
+ }
889
+ proc Move9 {w {step {}}} {
890
+ set step [GetStep 9 $step]
891
+
892
+ if {$step & 1} {
893
+ $w.c itemconfig I9_0 -width 3p
894
+ $w.c itemconfig I9_1 -width 0.75p
895
+ $w.c lower I9_1 I9_0
896
+ } else {
897
+ $w.c itemconfig I9_0 -width 0.75p
898
+ $w.c itemconfig I9_1 -width 3p
899
+ $w.c lower I9_0 I9_1
900
+ }
901
+ if {$step == 0} {
902
+ return 3
903
+ }
904
+ return 1
905
+ }
906
+
907
+ # Boat
908
+ proc Draw10 {w} {
909
+ set color $::C(10a)
910
+ set color2 $::C(10b)
911
+ set xy {191 230 233 230 233 178 191 178} ;# Sail
912
+ $w.c create poly $xy -fill $color -width 2.25p -outline $::C(fg) -tag I10
913
+ set xy [box 209 204 31] ;# Front
914
+ $w.c create arc $xy -outline {} -fill $color -style pie \
915
+ -start 120 -extent 120 -tag I10
916
+ $w.c create arc $xy -outline $::C(fg) -width 2.25p -style arc \
917
+ -start 120 -extent 120 -tag I10
918
+ set xy [box 249 204 31] ;# Back
919
+ $w.c create arc $xy -outline {} -fill $::C(bg) -width 2.25p -style pie \
920
+ -start 120 -extent 120 -tag I10
921
+ $w.c create arc $xy -outline $::C(fg) -width 2.25p -style arc \
922
+ -start 120 -extent 120 -tag I10
923
+
924
+ set xy {200 171 200 249} ;# Mast
925
+ $w.c create line $xy -fill $::C(fg) -width 2.25p -tag I10
926
+ set xy {159 234 182 234} ;# Bow sprit
927
+ $w.c create line $xy -fill $::C(fg) -width 2.25p -tag I10
928
+ set xy {180 234 180 251 220 251} ;# Hull
929
+ $w.c create line $xy -fill $::C(fg) -width 4.5p -tag I10
930
+
931
+ set xy {92 255 221 255} ;# Waves
932
+ Sine $w {*}$xy 2 25 -fill $color2 -width 0.75p -tag I10w
933
+
934
+ set xy [lrange [$w.c coords I10w] 4 end-4] ;# Water
935
+ set xy [concat $xy 222 266 222 277 99 277]
936
+ $w.c create poly $xy -fill $color2 -outline $color2
937
+ set xy {222 266 222 277 97 277 97 266} ;# Water bottom
938
+ $w.c create line $xy -fill $::C(fg) -width 2.25p
939
+
940
+ set xy [box 239 262 17]
941
+ $w.c create arc $xy -outline $::C(fg) -width 2.25p -style arc \
942
+ -start 95 -extent 103
943
+ set xy [box 76 266 21]
944
+ $w.c create arc $xy -outline $::C(fg) -width 2.25p -style arc -extent 190
945
+ }
946
+ proc Move10 {w {step {}}} {
947
+ set step [GetStep 10 $step]
948
+ set pos [scl {
949
+ {195 212} {193 212} {190 212} {186 212} {181 212} {176 212}
950
+ {171 212} {166 212} {161 212} {156 212} {151 212} {147 212} {142 212}
951
+ {137 212} {132 212 x} {127 212} {121 212} {116 212} {111 212}
952
+ }]
953
+
954
+ if {$step >= [llength $pos]} {
955
+ return 0
956
+ }
957
+ set where [lindex $pos $step]
958
+ MoveAbs $w I10 $where
959
+
960
+ if {[lindex $where 2] eq "x"} {
961
+ return 3
962
+ }
963
+ return 1
964
+ }
965
+
966
+ # 2nd ball drop
967
+ proc Draw11 {w} {
968
+ set color $::C(11a)
969
+ set color2 $::C(11b)
970
+ set xy {23 264 55 591} ;# Color the down tube
971
+ $w.c create rect $xy -fill $color -outline {}
972
+ set xy [box 71 460 48] ;# Color the outer loop
973
+ $w.c create oval $xy -fill $color -outline {}
974
+
975
+ set xy {55 264 55 458} ;# Top right side
976
+ $w.c create line $xy -fill $::C(fg) -width 2.25p
977
+ set xy {55 504 55 591} ;# Bottom right side
978
+ $w.c create line $xy -fill $::C(fg) -width 2.25p
979
+ set xy [box 71 460 48] ;# Outer loop
980
+ $w.c create arc $xy -outline $::C(fg) -width 2.25p -style arc \
981
+ -start 110 -extent -290 -tag I11i
982
+ set xy [box 71 460 16] ;# Inner loop
983
+ $w.c create oval $xy -outline $::C(fg) -fill {} -width 2.25p -tag I11i
984
+ $w.c create oval $xy -outline $::C(fg) -fill $::C(bg) -width 2.25p
985
+
986
+ set xy {23 264 23 591} ;# Left side
987
+ $w.c create line $xy -fill $::C(fg) -width 2.25p
988
+ set xy [box 1 266 23] ;# Top left curve
989
+ $w.c create arc $xy -outline $::C(fg) -width 2.25p -style arc -extent 90
990
+
991
+ set xy [box 75 235 9] ;# The ball
992
+ $w.c create oval $xy -fill $color2 -outline {} -width 2.25p -tag I11
993
+ }
994
+ proc Move11 {w {step {}}} {
995
+ set step [GetStep 11 $step]
996
+ set pos [scl {
997
+ {75 235} {70 235} {65 237} {56 240} {46 247} {38 266} {38 296}
998
+ {38 333} {38 399} {38 475} {74 496} {105 472} {100 437} {65 423}
999
+ {-100 -100} {38 505} {38 527 x} {38 591}
1000
+ }]
1001
+
1002
+ if {$step >= [llength $pos]} {
1003
+ return 0
1004
+ }
1005
+ set where [lindex $pos $step]
1006
+ MoveAbs $w I11 $where
1007
+ if {[lindex $where 2] eq "x"} {
1008
+ return 3
1009
+ }
1010
+ return 1
1011
+ }
1012
+
1013
+ # Hand
1014
+ proc Draw12 {w} {
1015
+ set xy {20 637 20 617 20 610 20 590 40 590 40 590 60 590 60 610 60 610}
1016
+ lappend xy 60 610 65 620 60 631 ;# Thumb
1017
+ lappend xy 60 631 60 637 60 662 60 669 52 669 56 669 50 669 50 662 50 637
1018
+
1019
+ set y0 637 ;# Bumps for fingers
1020
+ set y1 645
1021
+ for {set x 50} {$x > 20} {incr x -10} {
1022
+ set x1 [expr {$x - 5}]
1023
+ set x2 [expr {$x - 10}]
1024
+ lappend xy $x $y0 $x1 $y1 $x2 $y0
1025
+ }
1026
+ $w.c create poly $xy -fill $::C(12) -outline $::C(fg) -smooth 1 -tag I12 \
1027
+ -width 2.25p
1028
+ }
1029
+ proc Move12 {w {step {}}} {
1030
+ set step [GetStep 12 $step]
1031
+ set pos [scl {{42 641 x}}]
1032
+ if {$step >= [llength $pos]} {
1033
+ return 0
1034
+ }
1035
+
1036
+ set where [lindex $pos $step]
1037
+ MoveAbs $w I12 $where
1038
+ if {[lindex $where 2] eq "x"} {
1039
+ return 3
1040
+ }
1041
+ return 1
1042
+ }
1043
+
1044
+ # Fax
1045
+ proc Draw13 {w} {
1046
+ set color $::C(13a)
1047
+ set xy {86 663 149 663 149 704 50 704 50 681 64 681 86 671}
1048
+ set xy2 {784 663 721 663 721 704 820 704 820 681 806 681 784 671}
1049
+ set radii {2 9 9 8 5 5 2}
1050
+
1051
+ RoundPoly $w.c $xy $radii -width 2.25p -outline $::C(fg) -fill $color
1052
+ RoundPoly $w.c $xy2 $radii -width 2.25p -outline $::C(fg) -fill $color
1053
+
1054
+ set xy {56 677}
1055
+ $w.c create rect [box {*}$xy 4] -fill {} -outline $::C(fg) -width 2.25p \
1056
+ -tag I13
1057
+ set xy {809 677}
1058
+ $w.c create rect [box {*}$xy 4] -fill {} -outline $::C(fg) -width 2.25p \
1059
+ -tag I13R
1060
+
1061
+ set xy {112 687} ;# Label
1062
+ $w.c create text $xy -text "FAX" -fill $::C(fg) -font {Times 12 bold}
1063
+ set xy {762 687}
1064
+ $w.c create text $xy -text "FAX" -fill $::C(fg) -font {Times 12 bold}
1065
+
1066
+ set xy {138 663 148 636 178 636} ;# Paper guide
1067
+ $w.c create line $xy -smooth 1 -fill $::C(fg) -width 2.25p
1068
+ set xy {732 663 722 636 692 636}
1069
+ $w.c create line $xy -smooth 1 -fill $::C(fg) -width 2.25p
1070
+
1071
+ Sine $w 149 688 720 688 5 15 -tag I13_s -fill $::C(fg) -width 2.25p
1072
+ }
1073
+ proc Move13 {w {step {}}} {
1074
+ set step [GetStep 13 $step]
1075
+ set numsteps 7
1076
+
1077
+ if {$step == $numsteps+2} {
1078
+ MoveAbs $w I13_star {-100 -100}
1079
+ $w.c itemconfig I13R -fill $::C(13b) -width 1.5p
1080
+ return 2
1081
+ }
1082
+ if {$step == 0} { ;# Button down
1083
+ $w.c delete I13
1084
+ Sparkle $w {-100 -100} I13_star ;# Create off screen
1085
+ return 1
1086
+ }
1087
+ lassign [Anchor $w I13_s w] x0 y0
1088
+ lassign [Anchor $w I13_s e] x1 y1
1089
+ set x [expr {$x0 + ($x1-$x0) * ($step - 1) / double($numsteps)}]
1090
+ MoveAbs $w I13_star [list $x $y0]
1091
+ return 1
1092
+ }
1093
+
1094
+ # Paper in fax
1095
+ proc Draw14 {w} {
1096
+ set color $::C(14)
1097
+ set xy {102 661 113 632 130 618} ;# Left paper edge
1098
+ $w.c create line $xy -smooth 1 -fill $color -width 2.25p -tag I14L_0
1099
+ set xy {148 629 125 640 124 662} ;# Right paper edge
1100
+ $w.c create line $xy -smooth 1 -fill $color -width 2.25p -tag I14L_1
1101
+ Draw14a $w L
1102
+
1103
+ set xy {
1104
+ 768.0 662.5 767.991316225 662.433786215 767.926187912 662.396880171
1105
+ }
1106
+ $w.c create line $xy -smooth 1 -fill $color -width 2.25p -tag I14R_0
1107
+ $w.c lower I14R_0
1108
+ # NB. these numbers are VERY sensitive, you must start with final size
1109
+ # and shrink down to get the values
1110
+ set xy {
1111
+ 745.947897349 662.428358855 745.997829056 662.452239237 746.0 662.5
1112
+ }
1113
+ $w.c create line $xy -smooth 1 -fill $color -width 2.25p -tag I14R_1
1114
+ $w.c lower I14R_1
1115
+ }
1116
+ proc Draw14a {w side} {
1117
+ set color $::C(14)
1118
+ set xy [$w.c coords I14${side}_0]
1119
+ set xy2 [$w.c coords I14${side}_1]
1120
+ lassign $xy x0 y0 x1 y1 x2 y2
1121
+ lassign $xy2 x3 y3 x4 y4 x5 y5
1122
+ set zz [concat \
1123
+ $x0 $y0 $x0 $y0 $xy $x2 $y2 $x2 $y2 \
1124
+ $x3 $y3 $x3 $y3 $xy2 $x5 $y5 $x5 $y5]
1125
+ $w.c delete I14$side
1126
+ $w.c create poly $zz -tag I14$side -smooth 1 -fill $color -outline $color \
1127
+ -width 2.25p
1128
+ $w.c lower I14$side
1129
+ }
1130
+ proc Move14 {w {step {}}} {
1131
+ set step [GetStep 14 $step]
1132
+
1133
+ # Paper going down
1134
+ set sc [expr {.9 - .05*$step}]
1135
+ if {$sc < .3} {
1136
+ $w.c delete I14L
1137
+ return 0
1138
+ }
1139
+
1140
+ lassign [$w.c coords I14L_0] Ox Oy
1141
+ $w.c scale I14L_0 $Ox $Oy $sc $sc
1142
+ lassign [lrange [$w.c coords I14L_1] end-1 end] Ox Oy
1143
+ $w.c scale I14L_1 $Ox $Oy $sc $sc
1144
+ Draw14a $w L
1145
+
1146
+ # Paper going up
1147
+ set sc [expr {.35 + .05*$step}]
1148
+ set sc [expr {1 / $sc}]
1149
+
1150
+ lassign [$w.c coords I14R_0] Ox Oy
1151
+ $w.c scale I14R_0 $Ox $Oy $sc $sc
1152
+ lassign [lrange [$w.c coords I14R_1] end-1 end] Ox Oy
1153
+ $w.c scale I14R_1 $Ox $Oy $sc $sc
1154
+ Draw14a $w R
1155
+
1156
+ return [expr {$step == 10 ? 3 : 1}]
1157
+ }
1158
+
1159
+ # Light beam
1160
+ proc Draw15 {w} {
1161
+ set color $::C(15a)
1162
+ set xy {824 599 824 585 820 585 829 585}
1163
+ $w.c create line $xy -fill $::C(fg) -width 2.25p -tag I15a
1164
+ set xy {789 599 836 643}
1165
+ $w.c create rect $xy -fill $color -outline $::C(fg) -width 2.25p
1166
+ set xy {778 610 788 632}
1167
+ $w.c create rect $xy -fill $color -outline $::C(fg) -width 2.25p
1168
+ set xy {766 617 776 625}
1169
+ $w.c create rect $xy -fill $color -outline $::C(fg) -width 2.25p
1170
+
1171
+ set xy {633 600 681 640}
1172
+ $w.c create rect $xy -fill $color -outline $::C(fg) -width 2.25p
1173
+ set xy {635 567 657 599}
1174
+ $w.c create rect $xy -fill $color -outline $::C(fg) -width 2.25p
1175
+ set xy {765 557 784 583}
1176
+ $w.c create rect $xy -fill $color -outline $::C(fg) -width 2.25p
1177
+
1178
+ Sine $w 658 580 765 580 3 15 -tag I15_s -fill $::C(fg) -width 2.25p
1179
+ }
1180
+ proc Move15a {w} {
1181
+ set color $::C(15b)
1182
+ $w.c scale I15a [scl 824] [scl 599] 1 .3 ;# Button down
1183
+ set xy [scl {765 621 681 621}]
1184
+ $w.c create line $xy -dash "-" -width 2.25p -fill $color -tag I15
1185
+ }
1186
+ proc Move15 {w {step {}}} {
1187
+ set step [GetStep 15 $step]
1188
+ set numsteps 6
1189
+
1190
+ if {$step == $numsteps+2} {
1191
+ MoveAbs $w I15_star {-100 -100}
1192
+ return 2
1193
+ }
1194
+ if {$step == 0} { ;# Break the light beam
1195
+ Sparkle $w {-100 -100} I15_star
1196
+ set xy [scl {765 621 745 621}]
1197
+ $w.c coords I15 $xy
1198
+ return 1
1199
+ }
1200
+ lassign [Anchor $w I15_s w] x0 y0
1201
+ lassign [Anchor $w I15_s e] x1 y1
1202
+ set x [expr {$x0 + ($x1-$x0) * ($step - 1) / double($numsteps)}]
1203
+ MoveAbs $w I15_star [list $x $y0]
1204
+ return 1
1205
+ }
1206
+
1207
+ # Bell
1208
+ proc Draw16 {w} {
1209
+ set color $::C(16)
1210
+ set xy {722 485 791 556}
1211
+ $w.c create rect $xy -fill {} -outline $::C(fg) -width 2.25p
1212
+ set xy [box 752 515 25] ;# Bell
1213
+ $w.c create oval $xy -fill $color -outline black -tag I16b -width 1.5p
1214
+ set xy [box 752 515 5] ;# Bell button
1215
+ $w.c create oval $xy -fill black -outline black -tag I16b
1216
+
1217
+ set xy {784 523 764 549} ;# Clapper
1218
+ $w.c create line $xy -width 2.25p -tag I16c -fill $::C(fg)
1219
+ set xy [box 784 523 4]
1220
+ $w.c create oval $xy -fill $::C(fg) -outline $::C(fg) -tag I16d
1221
+ }
1222
+ proc Move16 {w {step {}}} {
1223
+ set step [GetStep 16 $step]
1224
+
1225
+ # Note: we never stop
1226
+ lassign [scl {760 553}] Ox Oy
1227
+ if {$step & 1} {
1228
+ set beta 12
1229
+ $w.c move I16b 2.25p 0
1230
+ } else {
1231
+ set beta -12
1232
+ $w.c move I16b -2.25p 0
1233
+ }
1234
+ RotateItem $w I16c $Ox $Oy $beta
1235
+ RotateItem $w I16d $Ox $Oy $beta
1236
+
1237
+ return [expr {$step == 1 ? 3 : 1}]
1238
+ }
1239
+
1240
+ # Cat
1241
+ proc Draw17 {w} {
1242
+ set color $::C(17)
1243
+
1244
+ set xy {584 556 722 556}
1245
+ $w.c create line $xy -fill $::C(fg) -width 2.25p
1246
+ set xy {584 485 722 485}
1247
+ $w.c create line $xy -fill $::C(fg) -width 2.25p
1248
+
1249
+ set xy {664 523 717 549} ;# Body
1250
+ $w.c create arc $xy -outline $::C(fg) -fill $color -width 2.25p \
1251
+ -style chord -start 128 -extent -260 -tag I17
1252
+
1253
+ set xy {709 554 690 543} ;# Paw
1254
+ $w.c create oval $xy -outline $::C(fg) -fill $color -width 2.25p -tag I17
1255
+ set xy {657 544 676 555}
1256
+ $w.c create oval $xy -outline $::C(fg) -fill $color -width 2.25p -tag I17
1257
+
1258
+ set xy [box 660 535 15] ;# Lower face
1259
+ $w.c create arc $xy -outline $::C(fg) -width 2.25p -style arc \
1260
+ -start 150 -extent 240 -tag I17_
1261
+ $w.c create arc $xy -outline {} -fill $color -width 0.75p -style chord \
1262
+ -start 150 -extent 240 -tag I17_
1263
+ set xy {674 529 670 513 662 521 658 521 650 513 647 529} ;# Ears
1264
+ $w.c create line $xy -fill $::C(fg) -width 2.25p -tag I17_
1265
+ $w.c create poly $xy -fill $color -outline {} -width 0.75p -tag {I17_ I17_c}
1266
+ set xy {652 542 628 539} ;# Whiskers
1267
+ $w.c create line $xy -fill $::C(fg) -width 2.25p -tag I17_
1268
+ set xy {652 543 632 545}
1269
+ $w.c create line $xy -fill $::C(fg) -width 2.25p -tag I17_
1270
+ set xy {652 546 632 552}
1271
+ $w.c create line $xy -fill $::C(fg) -width 2.25p -tag I17_
1272
+
1273
+ set xy {668 543 687 538}
1274
+ $w.c create line $xy -fill $::C(fg) -width 2.25p -tag {I17_ I17w}
1275
+ set xy {668 544 688 546}
1276
+ $w.c create line $xy -fill $::C(fg) -width 2.25p -tag {I17_ I17w}
1277
+ set xy {668 547 688 553}
1278
+ $w.c create line $xy -fill $::C(fg) -width 2.25p -tag {I17_ I17w}
1279
+
1280
+ set xy {649 530 654 538 659 530} ;# Left eye
1281
+ $w.c create line $xy -fill $::C(fg) -width 1.5p -smooth 1 -tag I17
1282
+ set xy {671 530 666 538 661 530} ;# Right eye
1283
+ $w.c create line $xy -fill $::C(fg) -width 1.5p -smooth 1 -tag I17
1284
+ set xy {655 543 660 551 665 543} ;# Mouth
1285
+ $w.c create line $xy -fill $::C(fg) -width 1.5p -smooth 1 -tag I17
1286
+ }
1287
+ proc Move17 {w {step {}}} {
1288
+ set step [GetStep 17 $step]
1289
+
1290
+ if {$step == 0} {
1291
+ $w.c delete I17 ;# Delete most of the cat
1292
+ set xy [scl {655 543 660 535 665 543}] ;# Mouth
1293
+ $w.c create line $xy -fill $::C(fg) -width 2.25p -smooth 1 -tag I17_
1294
+ set xy [box [scl 654] [scl 530] [scl 4]] ;# Left eye
1295
+ $w.c create oval $xy -outline $::C(fg) -width 2.25p -fill {} -tag I17_
1296
+ set xy [box [scl 666] [scl 530] [scl 4]] ;# Right eye
1297
+ $w.c create oval $xy -outline $::C(fg) -width 2.25p -fill {} -tag I17_
1298
+
1299
+ $w.c move I17_ 0 -15p ;# Move face up
1300
+ set xy [scl {652 528 652 554}] ;# Front leg
1301
+ $w.c create line $xy -fill $::C(fg) -width 2.25p -tag I17_
1302
+ set xy [scl {670 528 670 554}] ;# 2nd front leg
1303
+ $w.c create line $xy -fill $::C(fg) -width 2.25p -tag I17_
1304
+
1305
+ set xy [scl {
1306
+ 675 506 694 489 715 513 715 513 715 513 716 525 716 525 716 525
1307
+ 706 530 695 530 679 535 668 527 668 527 668 527 675 522 676 517
1308
+ 677 512
1309
+ }] ;# Body
1310
+ $w.c create poly $xy -fill [$w.c itemcget I17_c -fill] \
1311
+ -outline $::C(fg) -width 2.25p -smooth 1 -tag I17_
1312
+ set xy [scl {716 514 716 554}] ;# Back leg
1313
+ $w.c create line $xy -fill $::C(fg) -width 2.25p -tag I17_
1314
+ set xy [scl {694 532 694 554}] ;# 2nd back leg
1315
+ $w.c create line $xy -fill $::C(fg) -width 2.25p -tag I17_
1316
+ set xy [scl {715 514 718 506 719 495 716 488}] ;# Tail
1317
+ $w.c create line $xy -fill $::C(fg) -width 2.25p -smooth 1 -tag I17_
1318
+
1319
+ $w.c raise I17w ;# Make whiskers visible
1320
+ $w.c move I17_ -3.75p 0 ;# Move away from wall a bit
1321
+ return 2
1322
+ }
1323
+ return 0
1324
+ }
1325
+
1326
+ # Sling shot
1327
+ proc Draw18 {w} {
1328
+ set color $::C(18)
1329
+ set xy {721 506 627 506} ;# Sling hold
1330
+ $w.c create line $xy -width 3p -fill $::C(fg) -tag I18
1331
+
1332
+ set xy {607 500 628 513} ;# Sling rock
1333
+ $w.c create oval $xy -fill $color -outline {} -tag I18a
1334
+
1335
+ set xy {526 513 606 507 494 502} ;# Sling band
1336
+ $w.c create line $xy -fill $::C(fg) -width 3p -tag I18b
1337
+ set xy { 485 490 510 540 510 575 510 540 535 491 } ;# Sling
1338
+ $w.c create line $xy -fill $::C(fg) -width 4.5p
1339
+ }
1340
+ proc Move18 {w {step {}}} {
1341
+ set step [GetStep 18 $step]
1342
+
1343
+ set pos [scl {
1344
+ {587 506} {537 506} {466 506} {376 506} {266 506 x} {136 506}
1345
+ {16 506} {-100 -100}
1346
+ }]
1347
+
1348
+ set b(0) [scl {490 502 719 507 524 512}] ;# Band collapsing
1349
+ set b(1) [scl {
1350
+ 491 503 524 557 563 505 559 496 546 506 551 525 553 536 538 534
1351
+ 532 519 529 499
1352
+ }]
1353
+ set b(2) [scl {491 503 508 563 542 533 551 526 561 539 549 550 530 500}]
1354
+ set b(3) [scl {491 503 508 563 530 554 541 562 525 568 519 544 530 501}]
1355
+
1356
+ if {$step >= [llength $pos]} {
1357
+ return 0
1358
+ }
1359
+
1360
+ if {$step == 0} {
1361
+ $w.c delete I18
1362
+ $w.c itemconfig I18b -smooth 1
1363
+ }
1364
+ if {[info exists b($step)]} {
1365
+ $w.c coords I18b $b($step)
1366
+ }
1367
+
1368
+ set where [lindex $pos $step]
1369
+ MoveAbs $w I18a $where
1370
+ if {[lindex $where 2] eq "x"} {
1371
+ return 3
1372
+ }
1373
+ return 1
1374
+ }
1375
+
1376
+ # Water pipe
1377
+ proc Draw19 {w} {
1378
+ set color $::C(19)
1379
+ set xx {249 181 155 118 86 55 22 0}
1380
+ foreach {x1 x2} $xx {
1381
+ $w.c create rect $x1 453 $x2 467 -fill $color -outline {} -tag I19
1382
+ $w.c create line $x1 453 $x2 453 -fill $::C(fg) -width 0.75p;# Pipe top
1383
+ $w.c create line $x1 467 $x2 467 -fill $::C(fg) -width 0.75p;# Pipe btm
1384
+ }
1385
+ $w.c raise I11i
1386
+
1387
+ set xy [box 168 460 16] ;# Bulge by the joint
1388
+ $w.c create oval $xy -fill $color -outline {}
1389
+ $w.c create arc $xy -outline $::C(fg) -width 0.75p -style arc \
1390
+ -start 21 -extent 136
1391
+ $w.c create arc $xy -outline $::C(fg) -width 0.75p -style arc \
1392
+ -start -21 -extent -130
1393
+
1394
+ set xy {249 447 255 473} ;# First joint 26x6
1395
+ $w.c create rect $xy -fill $color -outline $::C(fg) -width 0.75p
1396
+
1397
+ set xy [box 257 433 34] ;# Bend up
1398
+ $w.c create arc $xy -outline {} -fill $color -width 0.75p \
1399
+ -style pie -start 0 -extent -91
1400
+ $w.c create arc $xy -outline $::C(fg) -width 0.75p \
1401
+ -style arc -start 0 -extent -90
1402
+ set xy [box 257 433 20]
1403
+ $w.c create arc $xy -outline {} -fill $::C(bg) -width 1 \
1404
+ -style pie -start 0 -extent -92
1405
+ $w.c create arc $xy -outline $::C(fg) -width 0.75p \
1406
+ -style arc -start 0 -extent -90
1407
+ set xy [box 257 421 34] ;# Bend left
1408
+ $w.c create arc $xy -outline {} -fill $color -width 0.75p \
1409
+ -style pie -start 1 -extent 91
1410
+ $w.c create arc $xy -outline $::C(fg) -width 0.75p \
1411
+ -style arc -start 0 -extent 90
1412
+ set xy [box 257 421 20]
1413
+ $w.c create arc $xy -outline {} -fill $::C(bg) -width 0.75p \
1414
+ -style pie -start 0 -extent 90
1415
+ $w.c create arc $xy -outline $::C(fg) -width 0.75p \
1416
+ -style arc -start 0 -extent 90
1417
+ set xy [box 243 421 34] ;# Bend down
1418
+ $w.c create arc $xy -outline {} -fill $color -width 0.75p \
1419
+ -style pie -start 90 -extent 90
1420
+ $w.c create arc $xy -outline $::C(fg) -width 0.75p \
1421
+ -style arc -start 90 -extent 90
1422
+ set xy [box 243 421 20]
1423
+ $w.c create arc $xy -outline {} -fill $::C(bg) -width 0.75p \
1424
+ -style pie -start 90 -extent 90
1425
+ $w.c create arc $xy -outline $::C(fg) -width 0.75p \
1426
+ -style arc -start 90 -extent 90
1427
+
1428
+ set xy {270 427 296 433} ;# 2nd joint bottom
1429
+ $w.c create rect $xy -fill $color -outline $::C(fg) -width 0.75p
1430
+ set xy {270 421 296 427} ;# 2nd joint top
1431
+ $w.c create rect $xy -fill $color -outline $::C(fg) -width 0.75p
1432
+ set xy {249 382 255 408} ;# Third joint right
1433
+ $w.c create rect $xy -fill $color -outline $::C(fg) -width 0.75p
1434
+ set xy {243 382 249 408} ;# Third joint left
1435
+ $w.c create rect $xy -fill $color -outline $::C(fg) -width 0.75p
1436
+ set xy {203 420 229 426} ;# Last joint
1437
+ $w.c create rect $xy -fill $color -outline $::C(fg) -width 0.75p
1438
+
1439
+ set xy [box 168 460 6] ;# Handle joint
1440
+ $w.c create oval $xy -fill $::C(fg) -outline {} -tag I19a
1441
+ set xy {168 460 168 512} ;# Handle bar
1442
+ $w.c create line $xy -fill $::C(fg) -width 3.75p -tag I19b
1443
+ }
1444
+ proc Move19 {w {step {}}} {
1445
+ set step [GetStep 19 $step]
1446
+
1447
+ set angles {30 30 30}
1448
+ if {$step == [llength $angles]} {
1449
+ return 2
1450
+ }
1451
+
1452
+ RotateItem $w I19b {*}[Centroid $w I19a] [lindex $angles $step]
1453
+ return 1
1454
+ }
1455
+
1456
+ # Water pouring
1457
+ proc Draw20 {w} {
1458
+ }
1459
+ proc Move20 {w {step {}}} {
1460
+ set step [GetStep 20 $step]
1461
+
1462
+ set pos [scl {451 462 473 484 496 504 513 523 532}]
1463
+ set freq {20 40 40 40 40 40 40 40 40}
1464
+ set pos [scl {
1465
+ {451 20} {462 40} {473 40} {484 40} {496 40} {504 40} {513 40}
1466
+ {523 40} {532 40 x}
1467
+ }]
1468
+ if {$step >= [llength $pos]} {
1469
+ return 0
1470
+ }
1471
+
1472
+ $w.c delete I20
1473
+ set where [lindex $pos $step]
1474
+ lassign $where y f
1475
+ H2O $w $y $f
1476
+ if {[lindex $where 2] eq "x"} {
1477
+ return 3
1478
+ }
1479
+ return 1
1480
+ }
1481
+ proc H2O {w y f} {
1482
+ set color $::C(20)
1483
+ $w.c delete I20
1484
+
1485
+ Sine $w [scl 208] [scl 428] [scl 208] $y 4 $f -tag {I20 I20s} \
1486
+ -width 2.25p -fill $color -smooth 1
1487
+ $w.c create line [$w.c coords I20s] -width 2.25p -fill $color -smooth 1 \
1488
+ -tag {I20 I20a}
1489
+ $w.c create line [$w.c coords I20s] -width 2.25p -fill $color -smooth 1 \
1490
+ -tag {I20 I20b}
1491
+ $w.c move I20a 6p 0
1492
+ $w.c move I20b 12p 0
1493
+ }
1494
+
1495
+ # Bucket
1496
+ proc Draw21 {w} {
1497
+ set color $::C(21)
1498
+ set xy {217 451 244 490} ;# Right handle
1499
+ $w.c create line $xy -fill $::C(fg) -width 1.5p -tag I21_a
1500
+ set xy {201 467 182 490} ;# Left handle
1501
+ $w.c create line $xy -fill $::C(fg) -width 1.5p -tag I21_a
1502
+
1503
+ set xy {245 490 237 535} ;# Right side
1504
+ set xy2 {189 535 181 490} ;# Left side
1505
+ $w.c create poly [concat $xy $xy2] -fill $color -outline {} \
1506
+ -tag {I21 I21f}
1507
+ $w.c create line $xy -fill $::C(fg) -width 1.5p -tag I21
1508
+ $w.c create line $xy2 -fill $::C(fg) -width 1.5p -tag I21
1509
+
1510
+ set xy {182 486 244 498} ;# Top
1511
+ $w.c create oval $xy -fill $color -outline {} -width 1.5p -tag {I21 I21f}
1512
+ $w.c create oval $xy -fill {} -outline $::C(fg) -width 1.5p -tag {I21 I21t}
1513
+ set xy {189 532 237 540} ;# Bottom
1514
+ $w.c create oval $xy -fill $color -outline $::C(fg) -width 1.5p \
1515
+ -tag {I21 I21b}
1516
+ }
1517
+ proc Move21 {w {step {}}} {
1518
+ set step [GetStep 21 $step]
1519
+
1520
+ set numsteps 30
1521
+ if {$step >= $numsteps} {
1522
+ return 0
1523
+ }
1524
+
1525
+ lassign [$w.c coords I21b] x1 y1 x2 y2
1526
+ #lassign [$w.c coords I21t] X1 Y1 X2 Y2
1527
+ lassign [scl {183 492 243 504}] X1 Y1 X2 Y2
1528
+
1529
+ set f [expr {$step / double($numsteps)}]
1530
+ set y2 [expr {$y2 - [scl 3]}]
1531
+ set xx1 [expr {$x1 + ($X1 - $x1) * $f}]
1532
+ set yy1 [expr {$y1 + ($Y1 - $y1) * $f}]
1533
+ set xx2 [expr {$x2 + ($X2 - $x2) * $f}]
1534
+ set yy2 [expr {$y2 + ($Y2 - $y2) * $f}]
1535
+ #H2O $w $yy1 40
1536
+
1537
+ $w.c itemconfig I21b -fill $::C(20)
1538
+ $w.c delete I21w
1539
+ $w.c create poly $x2 $y2 $x1 $y1 $xx1 $yy1 $xx2 $yy1 -tag {I21 I21w} \
1540
+ -outline {} -fill $::C(20)
1541
+ $w.c lower I21w I21
1542
+ $w.c raise I21b
1543
+ $w.c lower I21f
1544
+
1545
+ return [expr {$step == $numsteps-1 ? 3 : 1}]
1546
+ }
1547
+
1548
+ # Bucket drop
1549
+ proc Draw22 {w} {
1550
+ }
1551
+ proc Move22 {w {step {}}} {
1552
+ set step [GetStep 22 $step]
1553
+ set pos [scl {{213 513} {213 523} {213 543 x} {213 583} {213 593}}]
1554
+
1555
+ if {$step == 0} {$w.c itemconfig I21f -fill $::C(22)}
1556
+ if {$step >= [llength $pos]} {
1557
+ return 0
1558
+ }
1559
+ set where [lindex $pos $step]
1560
+ MoveAbs $w I21 $where
1561
+ H2O $w [lindex $where 1] 40
1562
+ $w.c delete I21_a ;# Delete handles
1563
+
1564
+ if {[lindex $where 2] eq "x"} {
1565
+ return 3
1566
+ }
1567
+ return 1
1568
+ }
1569
+
1570
+ # Blow dart
1571
+ proc Draw23 {w} {
1572
+ set color $::C(23a)
1573
+ set color2 $::C(23b)
1574
+ set color3 $::C(23c)
1575
+
1576
+ set xy {185 623 253 650} ;# Block
1577
+ $w.c create rect $xy -fill black -outline $::C(fg) -width 1.5p -tag I23a
1578
+ set xy {187 592 241 623} ;# Balloon
1579
+ $w.c create oval $xy -outline {} -fill $color -tag I23b
1580
+ $w.c create arc $xy -outline $::C(fg) -width 2.25p -tag I23b \
1581
+ -style arc -start 12 -extent 336
1582
+ set xy {239 604 258 589 258 625 239 610} ;# Balloon nozzle
1583
+ $w.c create poly $xy -outline {} -fill $color -tag I23b
1584
+ $w.c create line $xy -fill $::C(fg) -width 2.25p -tag I23b
1585
+
1586
+ set xy {285 611 250 603} ;# Dart body
1587
+ $w.c create oval $xy -fill $color2 -outline $::C(fg) -width 2.25p -tag I23d
1588
+ set xy {249 596 249 618 264 607 249 596} ;# Dart tail
1589
+ $w.c create poly $xy -fill $color3 -outline $::C(fg) -width 2.25p -tag I23d
1590
+ set xy {249 607 268 607} ;# Dart detail
1591
+ $w.c create line $xy -fill $::C(fg) -width 2.25p -tag I23d
1592
+ set xy {285 607 305 607} ;# Dart needle
1593
+ $w.c create line $xy -fill $::C(fg) -width 2.25p -tag I23d
1594
+ }
1595
+ proc Move23 {w {step {}}} {
1596
+ set step [GetStep 23 $step]
1597
+
1598
+ set pos [scl {
1599
+ {277 607} {287 607} {307 607 x} {347 607} {407 607} {487 607}
1600
+ {587 607} {687 607} {787 607} {-100 -100}
1601
+ }]
1602
+
1603
+ if {$step >= [llength $pos]} {
1604
+ return 0
1605
+ }
1606
+ if {$step <= 1} {
1607
+ $w.c scale I23b {*}[Anchor $w I23a n] .9 .5
1608
+ }
1609
+ set where [lindex $pos $step]
1610
+ MoveAbs $w I23d $where
1611
+
1612
+ if {[lindex $where 2] eq "x"} {
1613
+ return 3
1614
+ }
1615
+ return 1
1616
+ }
1617
+
1618
+ # Balloon
1619
+ proc Draw24 {w} {
1620
+ set color $::C(24a)
1621
+ set xy {366 518 462 665} ;# Balloon
1622
+ $w.c create oval $xy -fill $color -outline $::C(fg) -width 2.25p -tag I24
1623
+ set xy {414 666 414 729} ;# String
1624
+ $w.c create line $xy -fill $::C(fg) -width 2.25p -tag I24
1625
+ set xy {410 666 404 673 422 673 418 666} ;# Nozzle
1626
+ $w.c create poly $xy -fill $color -outline $::C(fg) -width 2.25p -tag I24
1627
+
1628
+ set xy {387 567 390 549 404 542} ;# Reflections
1629
+ $w.c create line $xy -fill $::C(fg) -smooth 1 -width 1.5p -tag I24
1630
+ set xy {395 568 399 554 413 547}
1631
+ $w.c create line $xy -fill $::C(fg) -smooth 1 -width 1.5p -tag I24
1632
+ set xy {403 570 396 555 381 553}
1633
+ $w.c create line $xy -fill $::C(fg) -smooth 1 -width 1.5p -tag I24
1634
+ set xy {408 564 402 547 386 545}
1635
+ $w.c create line $xy -fill $::C(fg) -smooth 1 -width 1.5p -tag I24
1636
+ }
1637
+ proc Move24 {w {step {}}} {
1638
+ global S Dims
1639
+ set step [GetStep 24 $step]
1640
+
1641
+ if {$step > 4} {
1642
+ return 0
1643
+ } elseif {$step == 4} {
1644
+ return 2
1645
+ }
1646
+
1647
+ if {$step == 0} {
1648
+ $w.c delete I24 ;# Exploding balloon
1649
+ set xy [scl {
1650
+ 347 465 361 557 271 503 272 503 342 574 259 594 259 593 362 626
1651
+ 320 737 320 740 398 691 436 738 436 739 476 679 528 701 527 702
1652
+ 494 627 548 613 548 613 480 574 577 473 577 473 474 538 445 508
1653
+ 431 441 431 440 400 502 347 465 347 465
1654
+ }]
1655
+ $w.c create poly $xy -tag I24 -fill $::C(24b) -outline $::C(24a) \
1656
+ -width 7.5p -smooth 1
1657
+ set msg [subst $S(message)]
1658
+ $w.c create text [Centroid $w I24] -text $msg -tag {I24 I24t} \
1659
+ -fill $::C(24c) -justify center -font {Times 18 bold}
1660
+ return 1
1661
+ }
1662
+
1663
+ $w.c itemconfig I24t -font [list Times [expr {18 + 6*$step}] bold]
1664
+ $w.c move I24 $Dims(MovX) $Dims(MovY)
1665
+ $w.c scale I24 {*}[Centroid $w I24] 1.25 1.25
1666
+ return 1
1667
+ }
1668
+
1669
+ # Displaying the message
1670
+ proc Move25 {w {step {}}} {
1671
+ global S
1672
+ set step [GetStep 25 $step]
1673
+ if {$step == 0} {
1674
+ set ::XY(25) [clock clicks -milliseconds]
1675
+ return 1
1676
+ }
1677
+ set elapsed [expr {[clock clicks -milliseconds] - $::XY(25)}]
1678
+ if {$elapsed < 5000} {
1679
+ return 1
1680
+ }
1681
+ return 2
1682
+ }
1683
+
1684
+ # Collapsing balloon
1685
+ proc Move26 {w {step {}}} {
1686
+ global S Dims
1687
+ set step [GetStep 26 $step]
1688
+
1689
+ if {$step >= 3} {
1690
+ $w.c delete I24 I26
1691
+ $w.c create text $Dims(MsgX) $Dims(MsgY) -anchor s -tag I26 \
1692
+ -fill $::C(26) -text "click to continue" -font {Times 24 bold}
1693
+ bind $w.c <Button-1> [list Reset $w]
1694
+ return 4
1695
+ }
1696
+
1697
+ $w.c scale I24 {*}[Centroid $w I24] .8 .8
1698
+ $w.c move I24 0 45p
1699
+ $w.c itemconfig I24t -font [list Times [expr {30 - 6*$step}] bold]
1700
+ return 1
1701
+ }
1702
+
1703
+ ################################################################
1704
+ #
1705
+ # Helper functions
1706
+ #
1707
+
1708
+ proc box {x y r} {
1709
+ return [list [expr {$x-$r}] [expr {$y-$r}] [expr {$x+$r}] [expr {$y+$r}]]
1710
+ }
1711
+
1712
+ proc MoveAbs {w item xy} {
1713
+ lassign $xy x y
1714
+ lassign [Centroid $w $item] Ox Oy
1715
+ set dx [expr {$x - $Ox}]
1716
+ set dy [expr {$y - $Oy}]
1717
+ $w.c move $item $dx $dy
1718
+ }
1719
+
1720
+ proc RotateItem {w item Ox Oy beta} {
1721
+ set xy [$w.c coords $item]
1722
+ set xy2 {}
1723
+ foreach {x y} $xy {
1724
+ lappend xy2 {*}[RotateC $x $y $Ox $Oy $beta]
1725
+ }
1726
+ $w.c coords $item $xy2
1727
+ }
1728
+
1729
+ proc RotateC {x y Ox Oy beta} {
1730
+ # rotates vector (Ox,Oy)->(x,y) by beta degrees clockwise
1731
+
1732
+ set x [expr {$x - $Ox}] ;# Shift to origin
1733
+ set y [expr {$y - $Oy}]
1734
+
1735
+ set beta [expr {$beta * atan(1) * 4 / 180.0}] ;# Radians
1736
+ set xx [expr {$x * cos($beta) - $y * sin($beta)}] ;# Rotate
1737
+ set yy [expr {$x * sin($beta) + $y * cos($beta)}]
1738
+
1739
+ set xx [expr {$xx + $Ox}] ;# Shift back
1740
+ set yy [expr {$yy + $Oy}]
1741
+
1742
+ return [list $xx $yy]
1743
+ }
1744
+
1745
+ proc Reset {w} {
1746
+ global S
1747
+ DrawAll $w
1748
+ bind $w.c <Button-1> {}
1749
+ set S(mode) $::MSTART
1750
+ set S(active) 0
1751
+ }
1752
+
1753
+ # Each Move## keeps its state info in STEP, this retrieves and increments it
1754
+ proc GetStep {who step} {
1755
+ global STEP
1756
+ if {$step ne ""} {
1757
+ set STEP($who) $step
1758
+ } elseif {![info exists STEP($who)] || $STEP($who) eq ""} {
1759
+ set STEP($who) 0
1760
+ } else {
1761
+ incr STEP($who)
1762
+ }
1763
+ return $STEP($who)
1764
+ }
1765
+
1766
+ proc ResetStep {} {
1767
+ global STEP
1768
+ set ::S(cnt) 0
1769
+ foreach a [array names STEP] {
1770
+ set STEP($a) ""
1771
+ }
1772
+ }
1773
+
1774
+ proc Sine {w x0 y0 x1 y1 amp freq args} {
1775
+ set PI [expr {4 * atan(1)}]
1776
+ set step 2
1777
+ set xy {}
1778
+ if {$y0 == $y1} { ;# Horizontal
1779
+ for {set x $x0} {$x <= $x1} {incr x $step} {
1780
+ set beta [expr {($x - $x0) * 2 * $PI / $freq}]
1781
+ set y [expr {$y0 + $amp * sin($beta)}]
1782
+ lappend xy $x $y
1783
+ }
1784
+ } else {
1785
+ for {set y $y0} {$y <= $y1} {incr y $step} {
1786
+ set beta [expr {($y - $y0) * 2 * $PI / $freq}]
1787
+ set x [expr {$x0 + $amp * sin($beta)}]
1788
+ lappend xy $x $y
1789
+ }
1790
+ }
1791
+ return [$w.c create line $xy {*}$args]
1792
+ }
1793
+
1794
+ proc RoundRect {w xy radius args} {
1795
+ lassign $xy x0 y0 x3 y3
1796
+ set r [winfo pixels $w.c $radius]
1797
+ set d [expr {2 * $r}]
1798
+
1799
+ # Make sure that the radius of the curve is less than 3/8 size of the box!
1800
+ set maxr 0.75
1801
+ if {$d > $maxr * ($x3 - $x0)} {
1802
+ set d [expr {$maxr * ($x3 - $x0)}]
1803
+ }
1804
+ if {$d > $maxr * ($y3 - $y0)} {
1805
+ set d [expr {$maxr * ($y3 - $y0)}]
1806
+ }
1807
+
1808
+ set x1 [expr { $x0 + $d }]
1809
+ set x2 [expr { $x3 - $d }]
1810
+ set y1 [expr { $y0 + $d }]
1811
+ set y2 [expr { $y3 - $d }]
1812
+
1813
+ set xy [list $x0 $y0 $x1 $y0 $x2 $y0 $x3 $y0 $x3 $y1 $x3 $y2]
1814
+ lappend xy $x3 $y3 $x2 $y3 $x1 $y3 $x0 $y3 $x0 $y2 $x0 $y1
1815
+ return $xy
1816
+ }
1817
+
1818
+ proc RoundPoly {canv xy radii args} {
1819
+ set lenXY [llength $xy]
1820
+ set lenR [llength $radii]
1821
+ if {$lenXY != 2*$lenR} {
1822
+ error "wrong number of vertices and radii"
1823
+ }
1824
+
1825
+ set knots {}
1826
+ lassign [lrange $xy end-1 end] x0 y0
1827
+ lassign $xy x1 y1
1828
+ lappend xy {*}[lrange $xy 0 1]
1829
+
1830
+ for {set i 0} {$i < $lenXY} {incr i 2} {
1831
+ set radius [lindex $radii [expr {$i/2}]]
1832
+ set r [winfo pixels $canv $radius]
1833
+
1834
+ lassign [lrange $xy [expr {$i + 2}] [expr {$i + 3}]] x2 y2
1835
+ set z [_RoundPoly2 $x0 $y0 $x1 $y1 $x2 $y2 $r]
1836
+ lappend knots {*}$z
1837
+
1838
+ lassign [list $x1 $y1] x0 y0
1839
+ lassign [list $x2 $y2] x1 y1
1840
+ }
1841
+ set n [$canv create polygon $knots -smooth 1 {*}$args]
1842
+ return $n
1843
+ }
1844
+
1845
+ proc _RoundPoly2 {x0 y0 x1 y1 x2 y2 radius} {
1846
+ set d [expr {2 * $radius}]
1847
+ set maxr 0.75
1848
+
1849
+ set v1x [expr {$x0 - $x1}]
1850
+ set v1y [expr {$y0 - $y1}]
1851
+ set v2x [expr {$x2 - $x1}]
1852
+ set v2y [expr {$y2 - $y1}]
1853
+
1854
+ set vlen1 [expr {sqrt($v1x*$v1x + $v1y*$v1y)}]
1855
+ set vlen2 [expr {sqrt($v2x*$v2x + $v2y*$v2y)}]
1856
+ if {$d > $maxr * $vlen1} {
1857
+ set d [expr {$maxr * $vlen1}]
1858
+ }
1859
+ if {$d > $maxr * $vlen2} {
1860
+ set d [expr {$maxr * $vlen2}]
1861
+ }
1862
+
1863
+ lappend xy [expr {$x1 + $d * $v1x/$vlen1}] [expr {$y1 + $d * $v1y/$vlen1}]
1864
+ lappend xy $x1 $y1
1865
+ lappend xy [expr {$x1 + $d * $v2x/$vlen2}] [expr {$y1 + $d * $v2y/$vlen2}]
1866
+
1867
+ return $xy
1868
+ }
1869
+
1870
+ proc Sparkle {w Oxy tag} {
1871
+ set xy {299 283 298 302 295 314 271 331 239 310 242 292 256 274 281 273}
1872
+ foreach {x y} $xy {
1873
+ $w.c create line 271 304 $x $y -fill white -width 3 -tag $tag
1874
+ }
1875
+ MoveAbs $w $tag $Oxy
1876
+ }
1877
+
1878
+ proc Centroid {w item} {
1879
+ return [Anchor $w $item c]
1880
+ }
1881
+
1882
+ proc Anchor {w item where} {
1883
+ lassign [$w.c bbox $item] x1 y1 x2 y2
1884
+ if {[string match *n* $where]} {
1885
+ set y $y1
1886
+ } elseif {[string match *s* $where]} {
1887
+ set y $y2
1888
+ } else {
1889
+ set y [expr {($y1 + $y2) / 2.0}]
1890
+ }
1891
+ if {[string match *w* $where]} {
1892
+ set x $x1
1893
+ } elseif {[string match *e* $where]} {
1894
+ set x $x2
1895
+ } else {
1896
+ set x [expr {($x1 + $x2) / 2.0}]
1897
+ }
1898
+ return [list $x $y]
1899
+ }
1900
+
1901
+ proc scl {lst} {
1902
+ global scaleFactor
1903
+ set lst2 {}
1904
+ foreach elem $lst {
1905
+ set elem2 {}
1906
+ set idx 0
1907
+ foreach val $elem {
1908
+ if {$idx < 2} {
1909
+ set val [expr {round($val * $scaleFactor)}]
1910
+ }
1911
+ lappend elem2 $val
1912
+ incr idx
1913
+ }
1914
+
1915
+ lappend lst2 $elem2
1916
+ }
1917
+
1918
+ return $lst2
1919
+ }
1920
+
1921
+ # Simple placed dialog - stacked dialogs are not allowed,
1922
+ # the command does nothing if another grab already exists.
1923
+
1924
+ proc PlacedDialog {w msg {labelFnt {Helvetica 10}}} {
1925
+ if {[grab current] ne {}} {
1926
+ return
1927
+ }
1928
+ destroy $w
1929
+
1930
+ frame $w -relief raised -bd 3p
1931
+ label $w.lab -font $labelFnt -wraplength 3i -justify left -text $msg
1932
+ ttk::button $w.but -text "OK" -underline 0 \
1933
+ -command [list ClosePlacedDialog $w]
1934
+
1935
+ foreach key {Escape Return o O} {
1936
+ bind $w.but "<KeyPress-${key}>" { ClosePlacedDialog [winfo parent %W] }
1937
+ }
1938
+ foreach child {{} .but .lab} {
1939
+ bind $w$child <<NextWindow>> break
1940
+ bind $w$child <<PrevWindow>> break
1941
+ }
1942
+
1943
+ pack $w.lab -padx 10p -pady {10p 5p}
1944
+ pack $w.but -padx 10p -pady {0p 10p}
1945
+ place $w -anchor center -relx 0.5 -rely 0.5
1946
+
1947
+ set tl [winfo toplevel $w]
1948
+ set ::PlacedDialogOldFocus [focus -lastfor $tl]
1949
+ focus $w.but
1950
+ grab set $w
1951
+ return
1952
+ }
1953
+
1954
+ proc ClosePlacedDialog {w} {
1955
+ set tl [winfo toplevel $w]
1956
+ if {![winfo exists $::PlacedDialogOldFocus]} {
1957
+ set ::PlacedDialogOldFocus $tl
1958
+ }
1959
+ focus $::PlacedDialogOldFocus
1960
+ set ::PlacedDialogOldFocus {}
1961
+ grab release $w
1962
+ destroy $w
1963
+ return
1964
+ }
1965
+
1966
+
1967
+ DoDisplay $w
1968
+ Reset $w
1969
+ Go $w ;# Start everything going
1970
+ StartMessage $w ;# Message box at startup